gir-files: Update to 1.17.2.1

This should be approximately the same as 1.17.90.

This is the version from gstreamer-sys 0.16 which merged the GL
platforms back into the main gir file for backwards compatibility.
This commit is contained in:
Sebastian Dröge 2020-08-11 10:47:58 +03:00
parent 512f5b52fc
commit afc4581ff8
10 changed files with 874 additions and 540 deletions

View file

@ -949,7 +949,7 @@ be created by clips.</doc-deprecated>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="priv" readable="0" private="1">
<type name="AudioUriSourcePrivate" c:type="GESAudioUriSourcePrivate*"/>
<type name="UriSource" c:type="GESUriSource*"/>
</field>
<field name="_ges_reserved" readable="0" private="1">
<array zero-terminated="0" fixed-size="4">
@ -6742,7 +6742,7 @@ after calling this.
</parameters>
</method>
<method name="set_render_settings" c:identifier="ges_pipeline_set_render_settings">
<doc xml:space="preserve">Specifies the encoding to be used by the pipeline to render its
<doc xml:space="preserve">Specifies encoding setting to be used by the pipeline to render its
#GESPipeline:timeline, and where the result should be written to.
This method **must** be called before setting the pipeline mode to
@ -6874,7 +6874,9 @@ forced decoding (the underlying #encodebin has its
<member name="smart_render" value="8" c:identifier="GES_PIPELINE_MODE_SMART_RENDER" glib:nick="smart_render">
<doc xml:space="preserve">Render the #GESPipeline:timeline,
avoiding decoding/reencoding (the underlying #encodebin has its
#encodebin:avoid-reencoding property set to %TRUE)</doc>
#encodebin:avoid-reencoding property set to %TRUE).
&gt; NOTE: Smart rendering can not work in tracks where #GESTrack:mixing
&gt; is enabled.</doc>
</member>
</bitfield>
<record name="PipelinePrivate" c:type="GESPipelinePrivate" disguised="1">
@ -6905,6 +6907,7 @@ is really not in good shape and is deprecated.</doc>
</field>
</class>
<record name="PitiviFormatterClass" c:type="GESPitiviFormatterClass" glib:is-gtype-struct-for="PitiviFormatter">
<attribute name="doc.skip" value="true"/>
<field name="parent_class" readable="0" private="1">
<type name="FormatterClass" c:type="GESFormatterClass"/>
@ -9547,6 +9550,25 @@ layers were created for the timeline.</doc>
</parameter>
</parameters>
</glib:signal>
<glib:signal name="select-element-track" when="last" version="1.18">
<doc xml:space="preserve">Simplified version of #GESTimeline::select-tracks-for-object which only
allows @track_element to be added to a single #GESTrack.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">A track to put @track_element into, or %NULL if
it should be discarded.</doc>
<type name="Track"/>
</return-value>
<parameters>
<parameter name="clip" transfer-ownership="none">
<doc xml:space="preserve">The clip that @track_element is being added to</doc>
<type name="Clip"/>
</parameter>
<parameter name="track_element" transfer-ownership="none">
<doc xml:space="preserve">The element being added</doc>
<type name="TrackElement"/>
</parameter>
</parameters>
</glib:signal>
<glib:signal name="select-tracks-for-object" when="last">
<doc xml:space="preserve">This will be emitted whenever the timeline needs to determine which
tracks a clip's children should be added to. The track element will
@ -12915,7 +12937,10 @@ function already set appropriately.</doc>
</parameters>
</method>
<method name="set_restriction_caps" c:identifier="ges_track_set_restriction_caps">
<doc xml:space="preserve">Sets the #GESTrack:restriction-caps for the track.</doc>
<doc xml:space="preserve">Sets the #GESTrack:restriction-caps for the track.
&gt; **NOTE**: Restriction caps are **not** taken into account when
&gt; using #GESPipeline:mode=#GES_PIPELINE_MODE_SMART_RENDER.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
@ -14869,6 +14894,10 @@ are different as those can be extended 'infinitely'.</doc>
</record>
<record name="UriClipPrivate" c:type="GESUriClipPrivate" disguised="1">
</record>
<record name="UriSource" c:type="GESUriSource" disguised="1">
<attribute name="doc.skip" value="true"/>
</record>
<class name="UriSourceAsset" c:symbol-prefix="uri_source_asset" c:type="GESUriSourceAsset" parent="TrackElementAsset" glib:type-name="GESUriSourceAsset" glib:get-type="ges_uri_source_asset_get_type" glib:type-struct="UriSourceAssetClass">
<doc xml:space="preserve">Asset to create a stream specific #GESSource for a media file.
@ -14959,6 +14988,22 @@ contains one frame)</doc>
<record name="UriSourceAssetPrivate" c:type="GESUriSourceAssetPrivate" disguised="1">
</record>
<constant name="VERSION_MAJOR" value="1" c:type="GES_VERSION_MAJOR">
<type name="gint" c:type="gint"/>
</constant>
<constant name="VERSION_MICRO" value="2" c:type="GES_VERSION_MICRO">
<type name="gint" c:type="gint"/>
</constant>
<constant name="VERSION_MINOR" value="17" c:type="GES_VERSION_MINOR">
<type name="gint" c:type="gint"/>
</constant>
<constant name="VERSION_NANO" value="1" c:type="GES_VERSION_NANO">
<type name="gint" c:type="gint"/>
</constant>
<class name="VideoSource" c:symbol-prefix="video_source" c:type="GESVideoSource" parent="Source" abstract="1" glib:type-name="GESVideoSource" glib:get-type="ges_video_source_get_type" glib:type-struct="VideoSourceClass">
<doc xml:space="preserve">Base class for video sources</doc>
@ -15665,7 +15710,7 @@ for later use.</doc>
<type name="utf8" c:type="gchar*"/>
</field>
<field name="priv" readable="0" private="1">
<type name="VideoUriSourcePrivate" c:type="GESVideoUriSourcePrivate*"/>
<type name="UriSource" c:type="GESUriSource*"/>
</field>
<field name="_ges_reserved" readable="0" private="1">
<array zero-terminated="0" fixed-size="4">

View file

@ -12081,7 +12081,11 @@ when devices are added or removed from the system.
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>
number of times.
After this function has been called, gst_device_provider_get_devices() will
return the same objects that have been received from the
#GST_MESSAGE_DEVICE_ADDED messages and will no longer probe.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE if the device providering could be started</doc>
@ -12203,7 +12207,10 @@ This is for use by subclasses.</doc>
</method>
<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
probe the hardware if the provider is not currently started.</doc>
probe the hardware if the provider is not currently started.
If the provider has been started, this will returned the same #GstDevice
objedcts that have been returned by the #GST_MESSAGE_DEVICE_ADDED messages.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">a #GList of
@ -12300,7 +12307,11 @@ when devices are added or removed from the system.
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>
number of times.
After this function has been called, gst_device_provider_get_devices() will
return the same objects that have been received from the
#GST_MESSAGE_DEVICE_ADDED messages and will no longer probe.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE if the device providering could be started</doc>
@ -18909,8 +18920,8 @@ element scope.</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
this error should post an error message with more
details.</doc>
this error should post an error message using
GST_ELEMENT_ERROR() with more details.</doc>
</member>
<member name="not_supported" value="-6" c:identifier="GST_FLOW_NOT_SUPPORTED" glib:nick="not-supported">
<doc xml:space="preserve">This operation is not supported.</doc>
@ -42339,7 +42350,7 @@ Free-function: gst_tag_list_unref</doc>
</parameter>
</parameters>
</method>
<method name="copy" c:identifier="gst_tag_list_copy" introspectable="0">
<method name="copy" c:identifier="gst_tag_list_copy">
<doc xml:space="preserve">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.
@ -46723,6 +46734,32 @@ cannot be parsed.</doc>
</parameter>
</parameters>
</function>
<function name="from_string_escaped" c:identifier="gst_uri_from_string_escaped" version="1.18">
<doc xml:space="preserve">Parses a URI string into a new #GstUri object. Will return NULL if the URI
cannot be parsed. This is identical to gst_uri_from_string() except that
the userinfo and fragment components of the URI will not be unescaped while
parsing.
Use this when you need to extract a username and password from the userinfo
such as https://user:password@example.com since either may contain
a URI-escaped ':' character. gst_uri_from_string() will unescape the entire
userinfo component, which will make it impossible to know which ':'
delineates the username and password.
The same applies to the fragment component of the URI, such as
https://example.com/path#fragment which may contain a URI-escaped '#'.</doc>
<return-value transfer-ownership="full" nullable="1">
<doc xml:space="preserve">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>
<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 "://"
are stripped from the URI, which means that the location returned includes
@ -47023,7 +47060,7 @@ determine a order for the two provided values.</doc>
<type name="gint" c:type="gint"/>
</constant>
<constant name="VERSION_NANO" value="0" c:type="GST_VERSION_NANO">
<constant name="VERSION_NANO" value="1" c:type="GST_VERSION_NANO">
<doc xml:space="preserve">The nano version of GStreamer at compile time:
Actual releases have 0, GIT versions have 1, prerelease versions have 2-...</doc>
@ -50952,6 +50989,32 @@ cannot be parsed.</doc>
</parameter>
</parameters>
</function>
<function name="uri_from_string_escaped" c:identifier="gst_uri_from_string_escaped" moved-to="Uri.from_string_escaped" version="1.18">
<doc xml:space="preserve">Parses a URI string into a new #GstUri object. Will return NULL if the URI
cannot be parsed. This is identical to gst_uri_from_string() except that
the userinfo and fragment components of the URI will not be unescaped while
parsing.
Use this when you need to extract a username and password from the userinfo
such as https://user:password@example.com since either may contain
a URI-escaped ':' character. gst_uri_from_string() will unescape the entire
userinfo component, which will make it impossible to know which ':'
delineates the username and password.
The same applies to the fragment component of the URI, such as
https://example.com/path#fragment which may contain a URI-escaped '#'.</doc>
<return-value transfer-ownership="full" nullable="1">
<doc xml:space="preserve">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>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</function>
<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 "://"
are stripped from the URI, which means that the location returned includes

View file

@ -1570,42 +1570,79 @@ A stream_type stream</doc>
</parameters>
</method>
<property name="block" writable="1" transfer-ownership="none">
<doc xml:space="preserve">When max-bytes are queued and after the enough-data signal has been emitted,
block any further push-buffer calls until the amount of queued bytes drops
below the max-bytes limit.</doc>
<type name="gboolean" c:type="gboolean"/>
</property>
<property name="caps" writable="1" transfer-ownership="none">
<doc xml:space="preserve">The GstCaps that will negotiated downstream and will be put
on outgoing buffers.</doc>
<type name="Gst.Caps"/>
</property>
<property name="current-level-bytes" transfer-ownership="none">
<property name="current-level-bytes" version="1.2" transfer-ownership="none">
<doc xml:space="preserve">The number of currently queued bytes inside appsrc.</doc>
<type name="guint64" c:type="guint64"/>
</property>
<property name="duration" writable="1" transfer-ownership="none">
<property name="duration" version="1.10" writable="1" transfer-ownership="none">
<doc xml:space="preserve">The total duration in nanoseconds of the data stream. If the total duration is known, it
is recommended to configure it with this property.</doc>
<type name="guint64" c:type="guint64"/>
</property>
<property name="emit-signals" writable="1" transfer-ownership="none">
<doc xml:space="preserve">Make appsrc emit the "need-data", "enough-data" and "seek-data" signals.
This option is by default enabled for backwards compatibility reasons but
can disabled when needed because signal emission is expensive.</doc>
<type name="gboolean" c:type="gboolean"/>
</property>
<property name="format" writable="1" transfer-ownership="none">
<doc xml:space="preserve">The format to use for segment events. When the source is producing
timestamped buffers this property should be set to GST_FORMAT_TIME.</doc>
<type name="Gst.Format"/>
</property>
<property name="handle-segment-change" version="1.18" writable="1" transfer-ownership="none">
<doc xml:space="preserve">When enabled, appsrc will check GstSegment in GstSample which was
pushed via gst_app_src_push_sample() or "push-sample" signal action.
If a GstSegment is changed, corresponding segment event will be followed
by next data flow.
FIXME: currently only GST_FORMAT_TIME format is supported and therefore
GstAppSrc::format should be time. However, possibly #GstAppSrc can support
other formats.</doc>
<type name="gboolean" c:type="gboolean"/>
</property>
<property name="is-live" writable="1" transfer-ownership="none">
<doc xml:space="preserve">Instruct the source to behave like a live source. This includes that it
will only push out buffers in the PLAYING state.</doc>
<type name="gboolean" c:type="gboolean"/>
</property>
<property name="max-bytes" writable="1" transfer-ownership="none">
<doc xml:space="preserve">The maximum amount of bytes that can be queued internally.
After the maximum amount of bytes are queued, appsrc will emit the
"enough-data" signal.</doc>
<type name="guint64" c:type="guint64"/>
</property>
<property name="max-latency" writable="1" transfer-ownership="none">
<type name="gint64" c:type="gint64"/>
</property>
<property name="min-latency" writable="1" transfer-ownership="none">
<doc xml:space="preserve">The minimum latency of the source. A value of -1 will use the default
latency calculations of #GstBaseSrc.</doc>
<type name="gint64" c:type="gint64"/>
</property>
<property name="min-percent" writable="1" transfer-ownership="none">
<doc xml:space="preserve">Make appsrc emit the "need-data" signal when the amount of bytes in the
queue drops below this percentage of max-bytes.</doc>
<type name="guint" c:type="guint"/>
</property>
<property name="size" writable="1" transfer-ownership="none">
<doc xml:space="preserve">The total size in bytes of the data stream. If the total size is known, it
is recommended to configure it with this property.</doc>
<type name="gint64" c:type="gint64"/>
</property>
<property name="stream-type" writable="1" transfer-ownership="none">
<doc xml:space="preserve">The type of stream that this source is producing. For seekable streams the
application should connect to the seek-data signal.</doc>
<type name="AppStreamType"/>
</property>
<field name="basesrc">
@ -1620,106 +1657,61 @@ A stream_type stream</doc>
</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>
<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
application stops calling push-buffer until the need-data signal is
emitted again to avoid excessive buffer queueing.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</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
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
pushed into @appsrc.
You can call push-buffer multiple times until the enough-data signal is
fired.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="length" transfer-ownership="none">
<doc xml:space="preserve">the amount of bytes needed.</doc>
<parameter name="object" transfer-ownership="none">
<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
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.
When the block property is TRUE, this function can block until free space
becomes available in the queue.</doc>
<return-value transfer-ownership="none">
<type name="Gst.FlowReturn"/>
</return-value>
<parameters>
<parameter name="buffer" transfer-ownership="none">
<doc xml:space="preserve">a buffer to push</doc>
<parameter name="object" transfer-ownership="none">
<type name="Gst.Buffer"/>
</parameter>
</parameters>
</glib:signal>
<glib:signal name="push-buffer-list" 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
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.
When the block property is TRUE, this function can block until free space
becomes available in the queue.</doc>
<glib:signal name="push-buffer-list" when="last" action="1">
<return-value transfer-ownership="none">
<type name="Gst.FlowReturn"/>
</return-value>
<parameters>
<parameter name="buffer_list" transfer-ownership="none">
<doc xml:space="preserve">a buffer list to push</doc>
<parameter name="object" transfer-ownership="none">
<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
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.
Only the caps and the buffer of the provided sample are used and not
for example the segment in the sample.
This function does not take ownership of the
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>
<glib:signal name="push-sample" when="last" action="1">
<return-value transfer-ownership="none">
<type name="Gst.FlowReturn"/>
</return-value>
<parameters>
<parameter name="sample" transfer-ownership="none">
<doc xml:space="preserve">a sample from which extract buffer to push</doc>
<parameter name="object" transfer-ownership="none">
<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
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>
<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>
<parameter name="object" transfer-ownership="none">
<type name="guint64" c:type="guint64"/>
</parameter>
</parameters>

View file

@ -1154,7 +1154,21 @@ caps.
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>
downstream specifies a range or a set of acceptable rates).
The #GstAggregator::samples-selected signal is provided with some
additional information about the output buffer:
- "offset" G_TYPE_UINT64 Offset in samples since segment start
for the position that is next to be filled in the output buffer.
- "frames" G_TYPE_UINT Number of frames per output buffer.
In addition the gst_aggregator_peek_next_sample() function returns
additional information in the info #GstStructure of the returned sample:
- "output-offset" G_TYPE_UINT64 Sample offset in output segment relative to
the output segment's start where the current position of this input
buffer would be placed
- "position" G_TYPE_UINT current position in the input buffer in samples
- "size" G_TYPE_UINT size of the input buffer in samples</doc>
<virtual-method name="aggregate_one_buffer">

View file

@ -982,16 +982,17 @@ Control is given to the subclass when all pads have data.
* When data is queued on all pads, the aggregate vmethod is called.
* One can peek at the data on any given GstAggregatorPad with the
gst_aggregator_pad_peek_buffer () method, and remove it from the pad
gst_aggregator_pad_peek_buffer() method, and remove it from the pad
with the gst_aggregator_pad_pop_buffer () method. When a buffer
has been taken with pop_buffer (), a new buffer can be queued
on that pad.
* If the subclass wishes to push a buffer downstream in its aggregate
implementation, it should do so through the
gst_aggregator_finish_buffer () method. This method will take care
gst_aggregator_finish_buffer() method. This method will take care
of sending and ordering mandatory events such as stream start, caps
and segment.
and segment. Buffer lists can also be pushed out with
gst_aggregator_finish_buffer_list().
* Same goes for EOS events, which should not be pushed directly by the
subclass, it should instead return GST_FLOW_EOS in its aggregate
@ -1092,6 +1093,25 @@ sent before pushing the buffer.</doc>
</parameter>
</parameters>
</virtual-method>
<virtual-method name="finish_buffer_list" invoker="finish_buffer_list" version="1.18">
<doc xml:space="preserve">This method will push the provided output buffer list downstream. If needed,
mandatory events such as stream-start, caps, and segment events will be
sent before pushing the buffer.</doc>
<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>
<type name="Aggregator" c:type="GstAggregator*"/>
</instance-parameter>
<parameter name="bufferlist" transfer-ownership="full">
<doc xml:space="preserve">the #GstBufferList to push.</doc>
<type name="Gst.BufferList" c:type="GstBufferList*"/>
</parameter>
</parameters>
</virtual-method>
<virtual-method name="fixate_src_caps">
<return-value transfer-ownership="full">
@ -1158,6 +1178,28 @@ if #GstAggregatorClass.negotiate() fails.</doc>
</parameter>
</parameters>
</virtual-method>
<virtual-method name="peek_next_sample" invoker="peek_next_sample" version="1.18">
<doc xml:space="preserve">Use this function to determine what input buffers will be aggregated
to produce the next output buffer. This should only be called from
a #GstAggregator::samples-selected handler, and can be used to precisely
control aggregating parameters for a given set of input samples.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">The sample that is about to be aggregated. It may hold a #GstBuffer
or a #GstBufferList. The contents of its info structure is subclass-dependent,
and documented on a subclass basis. The buffers held by the sample are
not writable.</doc>
<type name="Gst.Sample" c:type="GstSample*"/>
</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>
</parameters>
</virtual-method>
<virtual-method name="propose_allocation">
<return-value transfer-ownership="none">
@ -1349,6 +1391,25 @@ sent before pushing the buffer.</doc>
</parameter>
</parameters>
</method>
<method name="finish_buffer_list" c:identifier="gst_aggregator_finish_buffer_list" version="1.18">
<doc xml:space="preserve">This method will push the provided output buffer list downstream. If needed,
mandatory events such as stream-start, caps, and segment events will be
sent before pushing the buffer.</doc>
<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>
<type name="Aggregator" c:type="GstAggregator*"/>
</instance-parameter>
<parameter name="bufferlist" transfer-ownership="full">
<doc xml:space="preserve">the #GstBufferList to push.</doc>
<type name="Gst.BufferList" c:type="GstBufferList*"/>
</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
acquired by the base class and its @params.
@ -1423,6 +1484,63 @@ if #GstAggregatorClass.negotiate() fails.</doc>
</instance-parameter>
</parameters>
</method>
<method name="peek_next_sample" c:identifier="gst_aggregator_peek_next_sample" version="1.18">
<doc xml:space="preserve">Use this function to determine what input buffers will be aggregated
to produce the next output buffer. This should only be called from
a #GstAggregator::samples-selected handler, and can be used to precisely
control aggregating parameters for a given set of input samples.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">The sample that is about to be aggregated. It may hold a #GstBuffer
or a #GstBufferList. The contents of its info structure is subclass-dependent,
and documented on a subclass basis. The buffers held by the sample are
not writable.</doc>
<type name="Gst.Sample" c:type="GstSample*"/>
</return-value>
<parameters>
<instance-parameter name="self" transfer-ownership="none">
<type name="Aggregator" c:type="GstAggregator*"/>
</instance-parameter>
<parameter name="pad" transfer-ownership="none">
<type name="AggregatorPad" c:type="GstAggregatorPad*"/>
</parameter>
</parameters>
</method>
<method name="selected_samples" c:identifier="gst_aggregator_selected_samples" version="1.18">
<doc xml:space="preserve">Subclasses should call this when they have prepared the
buffers they will aggregate for each of their sink pads, but
before using any of the properties of the pads that govern
*how* aggregation should be performed, for example z-index
for video aggregators.
If gst_aggregator_update_segment() is used by the subclass,
it MUST be called before gst_aggregator_selected_samples().</doc>
<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="pts" transfer-ownership="none">
<doc xml:space="preserve">The presentation timestamp of the next output buffer</doc>
<type name="Gst.ClockTime" c:type="GstClockTime"/>
</parameter>
<parameter name="dts" transfer-ownership="none">
<doc xml:space="preserve">The decoding timestamp of the next output buffer</doc>
<type name="Gst.ClockTime" c:type="GstClockTime"/>
</parameter>
<parameter name="duration" transfer-ownership="none">
<doc xml:space="preserve">The duration of the next output buffer</doc>
<type name="Gst.ClockTime" c:type="GstClockTime"/>
</parameter>
<parameter name="info" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve">a #GstStructure containing additional information</doc>
<type name="Gst.Structure" c:type="GstStructure*"/>
</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
latency is. Will also post a LATENCY message on the bus so the pipeline
@ -1485,7 +1603,10 @@ and you have a dead line based aggregator subclass.</doc>
<method name="update_segment" c:identifier="gst_aggregator_update_segment" version="1.18">
<doc xml:space="preserve">Subclasses should use this to update the segment on their
source pad, instead of directly pushing new segment events
downstream.</doc>
downstream.
Subclasses MUST call this before gst_aggregator_selected_samples(),
if it is used at all.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
@ -1499,6 +1620,10 @@ downstream.</doc>
</parameter>
</parameters>
</method>
<property name="emit-signals" version="1.18" writable="1" transfer-ownership="none">
<doc xml:space="preserve">Enables the emission of signals such as #GstAggregator::samples-selected</doc>
<type name="gboolean" c:type="gboolean"/>
</property>
<property name="latency" writable="1" transfer-ownership="none">
<type name="guint64" c:type="guint64"/>
</property>
@ -1531,6 +1656,31 @@ account when larger than the actually reported minimum latency.</doc>
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
<glib:signal name="samples-selected" when="first" version="1.18">
<doc xml:space="preserve">Signals that the #GstAggregator subclass has selected the next set
of input samples it will aggregate. Handlers may call
gst_aggregator_peek_next_sample() at that point.</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
</return-value>
<parameters>
<parameter name="object" transfer-ownership="none">
<type name="Gst.Segment"/>
</parameter>
<parameter name="p0" transfer-ownership="none">
<type name="guint64" c:type="guint64"/>
</parameter>
<parameter name="p1" transfer-ownership="none">
<type name="guint64" c:type="guint64"/>
</parameter>
<parameter name="p2" transfer-ownership="none">
<type name="guint64" c:type="guint64"/>
</parameter>
<parameter name="p3" transfer-ownership="none">
<type name="Gst.Structure"/>
</parameter>
</parameters>
</glib:signal>
</class>
<record name="AggregatorClass" c:type="GstAggregatorClass" glib:is-gtype-struct-for="Aggregator" version="1.14">
<doc xml:space="preserve">The aggregator base class will handle in a thread-safe way all manners of
@ -1904,8 +2054,46 @@ _finish_buffer from inside that function.</doc>
</parameters>
</callback>
</field>
<field name="finish_buffer_list">
<callback name="finish_buffer_list">
<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>
<type name="Aggregator" c:type="GstAggregator*"/>
</parameter>
<parameter name="bufferlist" transfer-ownership="full">
<doc xml:space="preserve">the #GstBufferList to push.</doc>
<type name="Gst.BufferList" c:type="GstBufferList*"/>
</parameter>
</parameters>
</callback>
</field>
<field name="peek_next_sample">
<callback name="peek_next_sample">
<return-value transfer-ownership="full">
<doc xml:space="preserve">The sample that is about to be aggregated. It may hold a #GstBuffer
or a #GstBufferList. The contents of its info structure is subclass-dependent,
and documented on a subclass basis. The buffers held by the sample are
not writable.</doc>
<type name="Gst.Sample" c:type="GstSample*"/>
</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>
</parameters>
</callback>
</field>
<field name="_gst_reserved" readable="0" private="1">
<array zero-terminated="0" fixed-size="17">
<array zero-terminated="0" fixed-size="15">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
@ -5549,13 +5737,14 @@ buffer is allocated.</doc>
</instance-parameter>
</parameters>
</method>
<method name="new_seamless_segment" c:identifier="gst_base_src_new_seamless_segment">
<method name="new_seamless_segment" c:identifier="gst_base_src_new_seamless_segment" deprecated="1" deprecated-version="1.18">
<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 #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>
<doc-deprecated xml:space="preserve">Use gst_base_src_new_segment()</doc-deprecated>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE if preparation of the seamless segment succeeded.</doc>
@ -5580,6 +5769,32 @@ configured with gst_base_src_set_format()</doc>
</parameter>
</parameters>
</method>
<method name="new_segment" c:identifier="gst_base_src_new_segment" version="1.18">
<doc xml:space="preserve">Prepare a new 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 @segment must be identical with the current format
of the source, as configured with gst_base_src_set_format().
The format of @src must not be %GST_FORMAT_UNDEFINED and the format
should be configured via gst_base_src_set_format() before calling this method.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">%TRUE if preparation of new segment succeeded.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="src" transfer-ownership="none">
<doc xml:space="preserve">a #GstBaseSrc</doc>
<type name="BaseSrc" c:type="GstBaseSrc*"/>
</instance-parameter>
<parameter name="segment" transfer-ownership="none">
<doc xml:space="preserve">a pointer to a #GstSegment</doc>
<type name="Gst.Segment" c:type="const GstSegment*"/>
</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
configured as a live source. @min_latency and @max_latency will be set

View file

@ -17,13 +17,6 @@ and/or use gtk-doc annotations. -->
</parameter>
</parameters>
</function-macro>
<function-macro name="CHECK_MAIN" c:identifier="GST_CHECK_MAIN" introspectable="0">
<parameters>
<parameter name="name">
</parameter>
</parameters>
</function-macro>
@ -2091,15 +2084,6 @@ MT safe.</doc>
</parameter>
</parameters>
</function-macro>
<function-macro name="START_TEST" c:identifier="GST_START_TEST" introspectable="0">
<doc xml:space="preserve">wrapper for checks START_TEST</doc>
<parameters>
<parameter name="__testname">
<doc xml:space="preserve">test function name</doc>
</parameter>
</parameters>
</function-macro>
<record name="StreamConsistency" c:type="GstStreamConsistency" disguised="1">
<doc xml:space="preserve">Opaque consistency checker handle.</doc>

View file

@ -40,10 +40,6 @@ synchronization metadata on buffers from the pool.</doc>
<type name="utf8" c:type="gchar*"/>
</constant>
<bitfield name="GLAPI" glib:type-name="GstGLAPI" glib:get-type="gst_gl_api_get_type" c:type="GstGLAPI">
<member name="none" value="0" c:identifier="GST_GL_API_NONE" glib:nick="none">
<doc xml:space="preserve">no API</doc>
@ -2660,19 +2656,6 @@ platform and window system specific functionality.
</instance-parameter>
</parameters>
</virtual-method>
<virtual-method name="get_foreign_display" invoker="get_foreign_display" version="1.18">
<return-value transfer-ownership="none">
<doc xml:space="preserve">whether the context belongs to a foreign display</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve">a #GstGLDisplay</doc>
<type name="GLDisplay" c:type="GstGLDisplay*"/>
</instance-parameter>
</parameters>
</virtual-method>
<virtual-method name="get_handle" invoker="get_handle" version="1.4">
<return-value transfer-ownership="none">
@ -2741,7 +2724,6 @@ Must be called with the object lock held.</doc>
</instance-parameter>
</parameters>
</method>
<method name="filter_gl_api" c:identifier="gst_gl_display_filter_gl_api">
<doc xml:space="preserve">limit the use of OpenGL to the requested @gl_api. This is intended to allow
application and elements to request a specific set of OpenGL API's based on
@ -2789,19 +2771,6 @@ second argument is @data.</doc>
</parameter>
</parameters>
</method>
<method name="get_foreign_display" c:identifier="gst_gl_display_get_foreign_display" version="1.18">
<return-value transfer-ownership="none">
<doc xml:space="preserve">whether the context belongs to a foreign display</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<instance-parameter name="display" transfer-ownership="none">
<doc xml:space="preserve">a #GstGLDisplay</doc>
<type name="GLDisplay" c:type="GstGLDisplay*"/>
</instance-parameter>
</parameters>
</method>
<method name="get_gl_api" c:identifier="gst_gl_display_get_gl_api">
<doc xml:space="preserve">see gst_gl_display_filter_gl_api() for what the returned value represents</doc>
@ -3005,98 +2974,12 @@ display's object lock held.</doc>
</parameters>
</callback>
</field>
<field name="get_foreign_display">
<callback name="get_foreign_display">
<return-value transfer-ownership="none">
<doc xml:space="preserve">whether the context belongs to a foreign display</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<parameter name="display" transfer-ownership="none">
<doc xml:space="preserve">a #GstGLDisplay</doc>
<type name="GLDisplay" c:type="GstGLDisplay*"/>
</parameter>
</parameters>
</callback>
</field>
<field name="_padding" readable="0" private="1">
<array zero-terminated="0" fixed-size="3">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
</record>
<class name="GLDisplayEGL" c:symbol-prefix="gl_display_egl" c:type="GstGLDisplayEGL" parent="GLDisplay" glib:type-name="GstGLDisplayEGL" glib:get-type="gst_gl_display_egl_get_type" glib:type-struct="GLDisplayEGLClass">
<doc xml:space="preserve">the contents of a #GstGLDisplayEGL are private and should only be accessed
through the provided API</doc>
<constructor name="new" c:identifier="gst_gl_display_egl_new">
<doc xml:space="preserve">Create a new #GstGLDisplayEGL using the default EGL_DEFAULT_DISPLAY.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">a new #GstGLDisplayEGL or %NULL</doc>
<type name="GLDisplayEGL" c:type="GstGLDisplayEGL*"/>
</return-value>
</constructor>
<constructor name="new_with_egl_display" c:identifier="gst_gl_display_egl_new_with_egl_display">
<return-value transfer-ownership="none">
<type name="GLDisplayEGL" c:type="GstGLDisplayEGL*"/>
</return-value>
<parameters>
<parameter name="display" transfer-ownership="none" nullable="1" allow-none="1">
<type name="gpointer" c:type="gpointer"/>
</parameter>
</parameters>
</constructor>
<function name="get_from_native" c:identifier="gst_gl_display_egl_get_from_native" version="1.12">
<doc xml:space="preserve">Attempts to create a new `EGLDisplay` from @display. If @type is
%GST_GL_DISPLAY_TYPE_ANY, then @display must be 0. @type must not be
%GST_GL_DISPLAY_TYPE_NONE.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve">A `EGLDisplay` or `EGL_NO_DISPLAY`</doc>
<type name="gpointer" c:type="gpointer"/>
</return-value>
<parameters>
<parameter name="type" transfer-ownership="none">
<doc xml:space="preserve">a #GstGLDisplayType</doc>
<type name="GLDisplayType" c:type="GstGLDisplayType"/>
</parameter>
<parameter name="display" transfer-ownership="none">
<doc xml:space="preserve">pointer to a display (or 0)</doc>
<type name="guintptr" c:type="guintptr"/>
</parameter>
</parameters>
</function>
<field name="parent">
<type name="GLDisplay" c:type="GstGLDisplay"/>
</field>
<field name="display" readable="0" private="1">
<type name="gpointer" c:type="gpointer"/>
</field>
<field name="foreign_display" readable="0" private="1">
<type name="gboolean" c:type="gboolean"/>
</field>
<field name="_padding" readable="0" private="1">
<array zero-terminated="0" fixed-size="4">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
</class>
<record name="GLDisplayEGLClass" c:type="GstGLDisplayEGLClass" glib:is-gtype-struct-for="GLDisplayEGL">
<field name="object_class">
<type name="GLDisplayClass" c:type="GstGLDisplayClass"/>
</field>
<field name="_padding">
<array zero-terminated="0" fixed-size="4">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
</record>
<record name="GLDisplayPrivate" c:type="GstGLDisplayPrivate" disguised="1">
</record>
@ -3135,142 +3018,6 @@ through the provided API</doc>
<doc xml:space="preserve">any display type</doc>
</member>
</bitfield>
<class name="GLDisplayWayland" c:symbol-prefix="gl_display_wayland" c:type="GstGLDisplayWayland" parent="GLDisplay" glib:type-name="GstGLDisplayWayland" glib:get-type="gst_gl_display_wayland_get_type" glib:type-struct="GLDisplayWaylandClass">
<doc xml:space="preserve">the contents of a #GstGLDisplayWayland are private and should only be accessed
through the provided API</doc>
<constructor name="new" c:identifier="gst_gl_display_wayland_new">
<doc xml:space="preserve">Create a new #GstGLDisplayWayland from the wayland display name. See `wl_display_connect`()
for details on what is a valid name.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">a new #GstGLDisplayWayland or %NULL</doc>
<type name="GLDisplayWayland" c:type="GstGLDisplayWayland*"/>
</return-value>
<parameters>
<parameter name="name" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve">a display name</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</constructor>
<constructor name="new_with_display" c:identifier="gst_gl_display_wayland_new_with_display">
<doc xml:space="preserve">Creates a new display connection from a wl_display Display.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">a new #GstGLDisplayWayland</doc>
<type name="GLDisplayWayland" c:type="GstGLDisplayWayland*"/>
</return-value>
<parameters>
<parameter name="display" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve">an existing, wayland display</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
</parameters>
</constructor>
<field name="parent">
<type name="GLDisplay" c:type="GstGLDisplay"/>
</field>
<field name="display">
<type name="gpointer" c:type="gpointer"/>
</field>
<field name="registry">
<type name="gpointer" c:type="gpointer"/>
</field>
<field name="compositor">
<type name="gpointer" c:type="gpointer"/>
</field>
<field name="subcompositor">
<type name="gpointer" c:type="gpointer"/>
</field>
<field name="shell">
<type name="gpointer" c:type="gpointer"/>
</field>
<field name="foreign_display" readable="0" private="1">
<type name="gboolean" c:type="gboolean"/>
</field>
<field name="_padding" readable="0" private="1">
<array zero-terminated="0" fixed-size="4">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
</class>
<record name="GLDisplayWaylandClass" c:type="GstGLDisplayWaylandClass" glib:is-gtype-struct-for="GLDisplayWayland">
<field name="object_class">
<type name="GLDisplayClass" c:type="GstGLDisplayClass"/>
</field>
<field name="_padding">
<array zero-terminated="0" fixed-size="4">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
</record>
<class name="GLDisplayX11" c:symbol-prefix="gl_display_x11" c:type="GstGLDisplayX11" parent="GLDisplay" glib:type-name="GstGLDisplayX11" glib:get-type="gst_gl_display_x11_get_type" glib:type-struct="GLDisplayX11Class">
<doc xml:space="preserve">the contents of a #GstGLDisplayX11 are private and should only be accessed
through the provided API</doc>
<constructor name="new" c:identifier="gst_gl_display_x11_new">
<doc xml:space="preserve">Create a new #GstGLDisplayX11 from the x11 display name. See `XOpenDisplay`()
for details on what is a valid name.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">a new #GstGLDisplayX11 or %NULL</doc>
<type name="GLDisplayX11" c:type="GstGLDisplayX11*"/>
</return-value>
<parameters>
<parameter name="name" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve">a display name</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</constructor>
<constructor name="new_with_display" c:identifier="gst_gl_display_x11_new_with_display" introspectable="0">
<doc xml:space="preserve">Creates a new display connection from a X11 Display.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">a new #GstGLDisplayX11</doc>
<type name="GLDisplayX11" c:type="GstGLDisplayX11*"/>
</return-value>
<parameters>
<parameter name="display" transfer-ownership="none">
<doc xml:space="preserve">an existing, x11 display</doc>
<type c:type="gpointer" name="gpointer"/>
</parameter>
</parameters>
</constructor>
<field name="parent" readable="0" private="1">
<type name="GLDisplay" c:type="GstGLDisplay"/>
</field>
<field name="name" readable="0" private="1">
<type name="utf8" c:type="gchar*"/>
</field>
<field name="display" introspectable="0" readable="0" private="1">
<type c:type="gpointer" name="gpointer"/>
</field>
<field name="xcb_connection" introspectable="0" readable="0" private="1">
<type c:type="gpointer" name="gpointer"/>
</field>
<field name="foreign_display" readable="0" private="1">
<type name="gboolean" c:type="gboolean"/>
</field>
<field name="_padding" readable="0" private="1">
<array zero-terminated="0" fixed-size="4">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
</class>
<record name="GLDisplayX11Class" c:type="GstGLDisplayX11Class" glib:is-gtype-struct-for="GLDisplayX11">
<field name="object_class">
<type name="GLDisplayClass" c:type="GstGLDisplayClass"/>
</field>
<field name="_padding">
<array zero-terminated="0" fixed-size="4">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
</record>
<class name="GLFilter" c:symbol-prefix="gl_filter" c:type="GstGLFilter" parent="GLBaseFilter" glib:type-name="GstGLFilter" glib:get-type="gst_gl_filter_get_type" glib:type-struct="GLFilterClass">
<doc xml:space="preserve">#GstGLFilter helps to implement simple OpenGL filter elements taking a
single input and producing a single output with a #GstGLFramebuffer</doc>
@ -4390,9 +4137,6 @@ multiple times. This must be called before any other GstGLMemory operation.</do
</array>
</field>
</record>
<record name="GLMemoryPBO" c:type="GstGLMemoryPBO">
<doc xml:space="preserve">#GstGLMemoryPBO is created or wrapped through gst_gl_base_memory_alloc()
with #GstGLVideoAllocationParams.
@ -9270,52 +9014,6 @@ user-defined purposes.</doc>
<type name="utf8" c:type="gchar*"/>
</constant>
<function-macro name="GL_DISPLAY_EGL" c:identifier="GST_GL_DISPLAY_EGL" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="GL_DISPLAY_EGL_CAST" c:identifier="GST_GL_DISPLAY_EGL_CAST" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="GL_DISPLAY_EGL_CLASS" c:identifier="GST_GL_DISPLAY_EGL_CLASS" introspectable="0">
<parameters>
<parameter name="klass">
</parameter>
</parameters>
</function-macro>
<function-macro name="GL_DISPLAY_EGL_DEVICE" c:identifier="GST_GL_DISPLAY_EGL_DEVICE" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="GL_DISPLAY_EGL_DEVICE_CAST" c:identifier="GST_GL_DISPLAY_EGL_DEVICE_CAST" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="GL_DISPLAY_EGL_DEVICE_CLASS" c:identifier="GST_GL_DISPLAY_EGL_DEVICE_CLASS" introspectable="0">
<parameters>
<parameter name="klass">
</parameter>
</parameters>
</function-macro>
<constant name="GL_DISPLAY_EGL_NAME" value="gst.gl.display.egl" c:type="GST_GL_DISPLAY_EGL_NAME">
<type name="utf8" c:type="gchar*"/>
</constant>
<function-macro name="GL_DISPLAY_GET_CLASS" c:identifier="GST_GL_DISPLAY_GET_CLASS" introspectable="0">
<parameters>
@ -9323,48 +9021,6 @@ user-defined purposes.</doc>
</parameter>
</parameters>
</function-macro>
<function-macro name="GL_DISPLAY_WAYLAND" c:identifier="GST_GL_DISPLAY_WAYLAND" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="GL_DISPLAY_WAYLAND_CAST" c:identifier="GST_GL_DISPLAY_WAYLAND_CAST" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="GL_DISPLAY_WAYLAND_CLASS" c:identifier="GST_GL_DISPLAY_WAYLAND_CLASS" introspectable="0">
<parameters>
<parameter name="klass">
</parameter>
</parameters>
</function-macro>
<function-macro name="GL_DISPLAY_X11" c:identifier="GST_GL_DISPLAY_X11" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="GL_DISPLAY_X11_CAST" c:identifier="GST_GL_DISPLAY_X11_CAST" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="GL_DISPLAY_X11_CLASS" c:identifier="GST_GL_DISPLAY_X11_CLASS" introspectable="0">
<parameters>
<parameter name="klass">
</parameter>
</parameters>
</function-macro>
<function-macro name="GL_FILTER" c:identifier="GST_GL_FILTER" introspectable="0">
<parameters>
@ -9447,11 +9103,6 @@ user-defined purposes.</doc>
</parameter>
</parameters>
</function-macro>
<function-macro name="GL_MEMORY_PBO_ALLOCATOR" c:identifier="GST_GL_MEMORY_PBO_ALLOCATOR" introspectable="0">
<parameters>
@ -9693,7 +9344,6 @@ user-defined purposes.</doc>
</parameter>
</parameters>
</function-macro>
<function-macro name="IS_GLSL_STAGE" c:identifier="GST_IS_GLSL_STAGE" introspectable="0">
<parameters>
@ -9813,62 +9463,6 @@ user-defined purposes.</doc>
</parameter>
</parameters>
</function-macro>
<function-macro name="IS_GL_DISPLAY_EGL" c:identifier="GST_IS_GL_DISPLAY_EGL" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="IS_GL_DISPLAY_EGL_CLASS" c:identifier="GST_IS_GL_DISPLAY_EGL_CLASS" introspectable="0">
<parameters>
<parameter name="klass">
</parameter>
</parameters>
</function-macro>
<function-macro name="IS_GL_DISPLAY_EGL_DEVICE" c:identifier="GST_IS_GL_DISPLAY_EGL_DEVICE" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="IS_GL_DISPLAY_EGL_DEVICE_CLASS" c:identifier="GST_IS_GL_DISPLAY_EGL_DEVICE_CLASS" introspectable="0">
<parameters>
<parameter name="klass">
</parameter>
</parameters>
</function-macro>
<function-macro name="IS_GL_DISPLAY_WAYLAND" c:identifier="GST_IS_GL_DISPLAY_WAYLAND" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="IS_GL_DISPLAY_WAYLAND_CLASS" c:identifier="GST_IS_GL_DISPLAY_WAYLAND_CLASS" introspectable="0">
<parameters>
<parameter name="klass">
</parameter>
</parameters>
</function-macro>
<function-macro name="IS_GL_DISPLAY_X11" c:identifier="GST_IS_GL_DISPLAY_X11" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="IS_GL_DISPLAY_X11_CLASS" c:identifier="GST_IS_GL_DISPLAY_X11_CLASS" introspectable="0">
<parameters>
<parameter name="klass">
</parameter>
</parameters>
</function-macro>
<function-macro name="IS_GL_FILTER" c:identifier="GST_IS_GL_FILTER" introspectable="0">
<parameters>
@ -9911,8 +9505,6 @@ user-defined purposes.</doc>
</parameter>
</parameters>
</function-macro>
<function-macro name="IS_GL_MEMORY_PBO_ALLOCATOR" c:identifier="GST_IS_GL_MEMORY_PBO_ALLOCATOR" introspectable="0">
<parameters>
@ -10129,11 +9721,6 @@ you are writing to OpenGL. Conversely, combining #GST_MAP_GL with
</parameter>
</parameters>
</function>
<function name="gl_api_from_string" c:identifier="gst_gl_api_from_string" moved-to="GLAPI.from_string">
<return-value transfer-ownership="none">
@ -10499,7 +10086,6 @@ debug category to be at least %GST_LEVEL_FIXME.</doc>
</parameter>
</parameters>
</function>
<function name="gl_memory_init_once" c:identifier="gst_gl_memory_init_once" moved-to="GLMemory.init_once" version="1.4">
<doc xml:space="preserve">Initializes the GL Base Texture allocator. It is safe to call this function
multiple times. This must be called before any other GstGLMemory operation.</doc>
@ -11009,7 +10595,6 @@ or a valid GLSL version and/or profile.</doc>
</parameter>
</parameters>
</function>
<function name="is_gl_memory_pbo" c:identifier="gst_is_gl_memory_pbo" version="1.8">
<return-value transfer-ownership="none">
@ -11036,5 +10621,386 @@ or a valid GLSL version and/or profile.</doc>
</parameter>
</parameters>
</function>
<class name="GLDisplayEGL" c:symbol-prefix="gl_display_egl" c:type="GstGLDisplayEGL" parent="GstGL.GLDisplay" glib:type-name="GstGLDisplayEGL" glib:get-type="gst_gl_display_egl_get_type" glib:type-struct="GLDisplayEGLClass">
<doc xml:space="preserve">the contents of a #GstGLDisplayEGL are private and should only be accessed
through the provided API</doc>
<constructor name="new" c:identifier="gst_gl_display_egl_new">
<doc xml:space="preserve">Create a new #GstGLDisplayEGL using the default EGL_DEFAULT_DISPLAY.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">a new #GstGLDisplayEGL or %NULL</doc>
<type name="GLDisplayEGL" c:type="GstGLDisplayEGL*"/>
</return-value>
</constructor>
<constructor name="new_with_egl_display" c:identifier="gst_gl_display_egl_new_with_egl_display">
<return-value transfer-ownership="none">
<type name="GLDisplayEGL" c:type="GstGLDisplayEGL*"/>
</return-value>
<parameters>
<parameter name="display" transfer-ownership="none" nullable="1" allow-none="1">
<type name="gpointer" c:type="gpointer"/>
</parameter>
</parameters>
</constructor>
<function name="from_gl_display" c:identifier="gst_gl_display_egl_from_gl_display" version="1.12">
<doc xml:space="preserve">Creates a EGL display connection from a native Display.
This function will return the same value for multiple calls with the same
@display.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">a new #GstGLDisplayEGL</doc>
<type name="GLDisplayEGL" c:type="GstGLDisplayEGL*"/>
</return-value>
<parameters>
<parameter name="display" transfer-ownership="none">
<doc xml:space="preserve">an existing #GstGLDisplay</doc>
<type name="GstGL.GLDisplay" c:type="GstGLDisplay*"/>
</parameter>
</parameters>
</function>
<function name="get_from_native" c:identifier="gst_gl_display_egl_get_from_native" version="1.12">
<doc xml:space="preserve">Attempts to create a new `EGLDisplay` from @display. If @type is
%GST_GL_DISPLAY_TYPE_ANY, then @display must be 0. @type must not be
%GST_GL_DISPLAY_TYPE_NONE.</doc>
<return-value transfer-ownership="none" nullable="1">
<doc xml:space="preserve">A `EGLDisplay` or `EGL_NO_DISPLAY`</doc>
<type name="gpointer" c:type="gpointer"/>
</return-value>
<parameters>
<parameter name="type" transfer-ownership="none">
<doc xml:space="preserve">a #GstGLDisplayType</doc>
<type name="GstGL.GLDisplayType" c:type="GstGLDisplayType"/>
</parameter>
<parameter name="display" transfer-ownership="none">
<doc xml:space="preserve">pointer to a display (or 0)</doc>
<type name="guintptr" c:type="guintptr"/>
</parameter>
</parameters>
</function>
<field name="parent">
<type name="GstGL.GLDisplay" c:type="GstGLDisplay"/>
</field>
<field name="display" readable="0" private="1">
<type name="gpointer" c:type="gpointer"/>
</field>
<field name="foreign_display" readable="0" private="1">
<type name="gboolean" c:type="gboolean"/>
</field>
<field name="_padding" readable="0" private="1">
<array zero-terminated="0" fixed-size="4">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
</class>
<record name="GLDisplayEGLClass" c:type="GstGLDisplayEGLClass" glib:is-gtype-struct-for="GLDisplayEGL">
<field name="object_class">
<type name="GstGL.GLDisplayClass" c:type="GstGLDisplayClass"/>
</field>
<field name="_padding">
<array zero-terminated="0" fixed-size="4">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
</record>
<function-macro name="GL_DISPLAY_EGL" c:identifier="GST_GL_DISPLAY_EGL" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="GL_DISPLAY_EGL_CAST" c:identifier="GST_GL_DISPLAY_EGL_CAST" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="GL_DISPLAY_EGL_CLASS" c:identifier="GST_GL_DISPLAY_EGL_CLASS" introspectable="0">
<parameters>
<parameter name="klass">
</parameter>
</parameters>
</function-macro>
<function-macro name="GL_DISPLAY_EGL_DEVICE" c:identifier="GST_GL_DISPLAY_EGL_DEVICE" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="GL_DISPLAY_EGL_DEVICE_CAST" c:identifier="GST_GL_DISPLAY_EGL_DEVICE_CAST" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="GL_DISPLAY_EGL_DEVICE_CLASS" c:identifier="GST_GL_DISPLAY_EGL_DEVICE_CLASS" introspectable="0">
<parameters>
<parameter name="klass">
</parameter>
</parameters>
</function-macro>
<constant name="GL_DISPLAY_EGL_NAME" value="gst.gl.display.egl" c:type="GST_GL_DISPLAY_EGL_NAME">
<type name="utf8" c:type="gchar*"/>
</constant>
<function-macro name="IS_GL_DISPLAY_EGL" c:identifier="GST_IS_GL_DISPLAY_EGL" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="IS_GL_DISPLAY_EGL_CLASS" c:identifier="GST_IS_GL_DISPLAY_EGL_CLASS" introspectable="0">
<parameters>
<parameter name="klass">
</parameter>
</parameters>
</function-macro>
<function-macro name="IS_GL_DISPLAY_EGL_DEVICE" c:identifier="GST_IS_GL_DISPLAY_EGL_DEVICE" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="IS_GL_DISPLAY_EGL_DEVICE_CLASS" c:identifier="GST_IS_GL_DISPLAY_EGL_DEVICE_CLASS" introspectable="0">
<parameters>
<parameter name="klass">
</parameter>
</parameters>
</function-macro>
<class name="GLDisplayWayland" c:symbol-prefix="gl_display_wayland" c:type="GstGLDisplayWayland" parent="GstGL.GLDisplay" glib:type-name="GstGLDisplayWayland" glib:get-type="gst_gl_display_wayland_get_type" glib:type-struct="GLDisplayWaylandClass">
<doc xml:space="preserve">the contents of a #GstGLDisplayWayland are private and should only be accessed
through the provided API</doc>
<constructor name="new" c:identifier="gst_gl_display_wayland_new">
<doc xml:space="preserve">Create a new #GstGLDisplayWayland from the wayland display name. See `wl_display_connect`()
for details on what is a valid name.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">a new #GstGLDisplayWayland or %NULL</doc>
<type name="GLDisplayWayland" c:type="GstGLDisplayWayland*"/>
</return-value>
<parameters>
<parameter name="name" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve">a display name</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</constructor>
<constructor name="new_with_display" c:identifier="gst_gl_display_wayland_new_with_display">
<doc xml:space="preserve">Creates a new display connection from a wl_display Display.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">a new #GstGLDisplayWayland</doc>
<type name="GLDisplayWayland" c:type="GstGLDisplayWayland*"/>
</return-value>
<parameters>
<parameter name="display" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve">an existing, wayland display</doc>
<type name="gpointer" c:type="gpointer"/>
</parameter>
</parameters>
</constructor>
<field name="parent">
<type name="GstGL.GLDisplay" c:type="GstGLDisplay"/>
</field>
<field name="display">
<type name="gpointer" c:type="gpointer"/>
</field>
<field name="registry">
<type name="gpointer" c:type="gpointer"/>
</field>
<field name="compositor">
<type name="gpointer" c:type="gpointer"/>
</field>
<field name="subcompositor">
<type name="gpointer" c:type="gpointer"/>
</field>
<field name="shell">
<type name="gpointer" c:type="gpointer"/>
</field>
<field name="foreign_display" readable="0" private="1">
<type name="gboolean" c:type="gboolean"/>
</field>
<field name="_padding" readable="0" private="1">
<array zero-terminated="0" fixed-size="4">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
</class>
<record name="GLDisplayWaylandClass" c:type="GstGLDisplayWaylandClass" glib:is-gtype-struct-for="GLDisplayWayland">
<field name="object_class">
<type name="GstGL.GLDisplayClass" c:type="GstGLDisplayClass"/>
</field>
<field name="_padding">
<array zero-terminated="0" fixed-size="4">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
</record>
<function-macro name="GL_DISPLAY_WAYLAND" c:identifier="GST_GL_DISPLAY_WAYLAND" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="GL_DISPLAY_WAYLAND_CAST" c:identifier="GST_GL_DISPLAY_WAYLAND_CAST" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="GL_DISPLAY_WAYLAND_CLASS" c:identifier="GST_GL_DISPLAY_WAYLAND_CLASS" introspectable="0">
<parameters>
<parameter name="klass">
</parameter>
</parameters>
</function-macro>
<function-macro name="IS_GL_DISPLAY_WAYLAND" c:identifier="GST_IS_GL_DISPLAY_WAYLAND" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="IS_GL_DISPLAY_WAYLAND_CLASS" c:identifier="GST_IS_GL_DISPLAY_WAYLAND_CLASS" introspectable="0">
<parameters>
<parameter name="klass">
</parameter>
</parameters>
</function-macro>
<class name="GLDisplayX11" c:symbol-prefix="gl_display_x11" c:type="GstGLDisplayX11" parent="GstGL.GLDisplay" glib:type-name="GstGLDisplayX11" glib:get-type="gst_gl_display_x11_get_type" glib:type-struct="GLDisplayX11Class">
<doc xml:space="preserve">the contents of a #GstGLDisplayX11 are private and should only be accessed
through the provided API</doc>
<constructor name="new" c:identifier="gst_gl_display_x11_new">
<doc xml:space="preserve">Create a new #GstGLDisplayX11 from the x11 display name. See `XOpenDisplay`()
for details on what is a valid name.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">a new #GstGLDisplayX11 or %NULL</doc>
<type name="GLDisplayX11" c:type="GstGLDisplayX11*"/>
</return-value>
<parameters>
<parameter name="name" transfer-ownership="none" nullable="1" allow-none="1">
<doc xml:space="preserve">a display name</doc>
<type name="utf8" c:type="const gchar*"/>
</parameter>
</parameters>
</constructor>
<constructor name="new_with_display" c:identifier="gst_gl_display_x11_new_with_display" introspectable="0">
<doc xml:space="preserve">Creates a new display connection from a X11 Display.</doc>
<return-value transfer-ownership="full">
<doc xml:space="preserve">a new #GstGLDisplayX11</doc>
<type name="GLDisplayX11" c:type="GstGLDisplayX11*"/>
</return-value>
<parameters>
<parameter name="display" transfer-ownership="none">
<doc xml:space="preserve">an existing, x11 display</doc>
<type c:type="gpointer" name="gpointer"/>
</parameter>
</parameters>
</constructor>
<field name="parent" readable="0" private="1">
<type name="GstGL.GLDisplay" c:type="GstGLDisplay"/>
</field>
<field name="name" readable="0" private="1">
<type name="utf8" c:type="gchar*"/>
</field>
<field name="display" introspectable="0" readable="0" private="1">
<type c:type="gpointer" name="gpointer"/>
</field>
<field name="xcb_connection" introspectable="0" readable="0" private="1">
<type c:type="gpointer" name="gpointer"/>
</field>
<field name="foreign_display" readable="0" private="1">
<type name="gboolean" c:type="gboolean"/>
</field>
<field name="_padding" readable="0" private="1">
<array zero-terminated="0" fixed-size="4">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
</class>
<record name="GLDisplayX11Class" c:type="GstGLDisplayX11Class" glib:is-gtype-struct-for="GLDisplayX11">
<field name="object_class">
<type name="GstGL.GLDisplayClass" c:type="GstGLDisplayClass"/>
</field>
<field name="_padding">
<array zero-terminated="0" fixed-size="4">
<type name="gpointer" c:type="gpointer"/>
</array>
</field>
</record>
<function-macro name="GL_DISPLAY_X11" c:identifier="GST_GL_DISPLAY_X11" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="GL_DISPLAY_X11_CAST" c:identifier="GST_GL_DISPLAY_X11_CAST" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="GL_DISPLAY_X11_CLASS" c:identifier="GST_GL_DISPLAY_X11_CLASS" introspectable="0">
<parameters>
<parameter name="klass">
</parameter>
</parameters>
</function-macro>
<function-macro name="IS_GL_DISPLAY_X11" c:identifier="GST_IS_GL_DISPLAY_X11" introspectable="0">
<parameters>
<parameter name="obj">
</parameter>
</parameters>
</function-macro>
<function-macro name="IS_GL_DISPLAY_X11_CLASS" c:identifier="GST_IS_GL_DISPLAY_X11_CLASS" introspectable="0">
<parameters>
<parameter name="klass">
</parameter>
</parameters>
</function-macro>
</namespace>
</repository>

View file

@ -2027,8 +2027,11 @@ for more about restrictions. Does not apply to #GstEncodingContainerProfile.</do
</parameters>
</method>
<method name="set_single_segment" c:identifier="gst_encoding_profile_set_single_segment" version="1.18">
<doc xml:space="preserve">If using a single segment, buffers will be retimestamped
and segments will be eat so as to appear as one segment.</doc>
<doc xml:space="preserve">If using a single segment, buffers will be retimestamped and segments will be
eat so as to appear as one segment.
&gt; *NOTE*: Single segment is not property supported when using
&gt; #encodebin:avoid-reencoding</doc>
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
@ -2039,8 +2042,8 @@ and segments will be eat so as to appear as one segment.</doc>
<type name="EncodingProfile" c:type="GstEncodingProfile*"/>
</instance-parameter>
<parameter name="single_segment" transfer-ownership="none">
<doc xml:space="preserve">#TRUE if the stream represented by @profile should use a single
segment before the encoder #FALSE otherwise.</doc>
<doc xml:space="preserve">#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>
@ -2336,6 +2339,8 @@ not a multi-pass profile</doc>
</parameters>
</method>
<method name="get_variableframerate" c:identifier="gst_encoding_video_profile_get_variableframerate">
<doc xml:space="preserve">&gt; *NOTE*: Fixed framerate won't be enforced when #encodebin:avoid-reencoding
&gt; is set.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">Whether non-constant video framerate is allowed for encoding.</doc>
@ -2766,7 +2771,7 @@ in debugging.</doc>
<type name="gint" c:type="gint"/>
</constant>
<constant name="PLUGINS_BASE_VERSION_NANO" value="0" c:type="GST_PLUGINS_BASE_VERSION_NANO">
<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.
Actual releases have 0, GIT versions have 1, prerelease versions have 2-...</doc>

View file

@ -2988,16 +2988,6 @@ 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">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>

View file

@ -2317,7 +2317,7 @@ return to upstream/caller (indicating either GST_FLOW_ERROR or GST_FLOW_OK).</do
</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">
<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, NV12_4L4, NV12_32L32, 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">List of all video formats, for use in template caps strings.
Formats are sorted by decreasing "quality", using these criteria by priority:
@ -4878,16 +4878,18 @@ non-linear RGB (R'G'B')</doc>
<doc xml:space="preserve">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">identity matrix. Order of coefficients is
actually GBR, also IEC 61966-2-1 (sRGB)</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">FCC Title 47 Code of Federal Regulations 73.682 (a)(20)</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">ITU-R BT.709 color matrix, also ITU-R BT1361
/ IEC 61966-2-4 xvYCC709 / SMPTE RP177 Annex B</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">ITU-R BT.601 color matrix, also SMPTE170M / ITU-R BT1358 525 / ITU-R BT1700 NTSC</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>
@ -4984,40 +4986,49 @@ the CIE XYZ colorspace.</doc>
<doc xml:space="preserve">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">BT709 primaries, also ITU-R BT1361 / IEC
61966-2-4 / SMPTE RP177 Annex B</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">BT470M primaries, also FCC Title 47 Code
of Federal Regulations 73.682 (a)(20)</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">BT470BG primaries, also ITU-R BT601-6
625 / ITU-R BT1358 625 / ITU-R BT1700 625 PAL &amp; SECAM</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">SMPTE170M primaries, also ITU-R
BT601-6 525 / ITU-R BT1358 525 / ITU-R BT1700 NTSC</doc>
</member>
<member name="smpte240m" value="5" c:identifier="GST_VIDEO_COLOR_PRIMARIES_SMPTE240M" glib:nick="smpte240m">
<doc xml:space="preserve">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">Generic film (colour filters using
Illuminant C)</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">ITU-R 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>
</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">SMPTE ST 428 primaries (CIE 1931
XYZ). 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">SMPTE RP 431 primaries (ST 431-2
(2011) / DCI P3). 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">SMPTE EG 432 primaries (ST 432-1
(2010) / P3 D65). 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>
<doc xml:space="preserve">EBU 3213 primaries (JEDEC P22
phosphors). Since: 1.16</doc>
</member>
<function name="from_iso" c:identifier="gst_video_color_primaries_from_iso" version="1.18">
<doc xml:space="preserve">Converts the @value to the #GstVideoColorPrimaries
@ -8666,6 +8677,12 @@ for details about the layout and packing of these formats in memory.</doc>
<member name="y412_le" value="96" c:identifier="GST_VIDEO_FORMAT_Y412_LE" glib:nick="y412-le">
<doc xml:space="preserve">packed 4:4:4:4 YUV, 12 bits per channel(U-Y-V-A...) (Since: 1.18)</doc>
</member>
<member name="nv12_4l4" value="97" c:identifier="GST_VIDEO_FORMAT_NV12_4L4" glib:nick="nv12-4l4">
<doc xml:space="preserve">NV12 with 4x4 tiles in linear order (Since: 1.18)</doc>
</member>
<member name="nv12_32l32" value="98" c:identifier="GST_VIDEO_FORMAT_NV12_32L32" glib:nick="nv12-32l32">
<doc xml:space="preserve">NV12 with 32x32 tiles in linear order (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.
If the FOURCC cannot be represented by #GstVideoFormat,
@ -9139,7 +9156,10 @@ separate step after unpacking.</doc>
</array>
</field>
<method name="copy" c:identifier="gst_video_frame_copy">
<doc xml:space="preserve">Copy the contents from @src to @dest.</doc>
<doc xml:space="preserve">Copy the contents from @src to @dest.
Note: Since: 1.18, @dest dimensions are allowed to be
smaller than @src dimensions.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">TRUE if the contents could be copied.</doc>
@ -12822,6 +12842,9 @@ frames will only be rendered in PLAYING state.</doc>
in memory in Z or flipped Z order. In case of odd rows, the last row
of blocks is arranged in linear order.</doc>
</member>
<member name="linear" value="131072" c:identifier="GST_VIDEO_TILE_MODE_LINEAR" glib:nick="linear">
<doc xml:space="preserve">Tiles are in row order. (Since: 1.18)</doc>
</member>
</enumeration>
<enumeration name="VideoTileType" 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>
@ -13532,7 +13555,8 @@ non-linear RGB (R'G'B') and linear RGB</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
range</doc>
range, also ITU-R BT470M / ITU-R BT1700 625 PAL &amp;
SECAM / ITU-R BT1361</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
@ -13540,10 +13564,10 @@ non-linear RGB (R'G'B') and linear RGB</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
range</doc>
range. IEC 61966-2-1 (sRGB or sYCC)</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">Gamma 2.8 curve, also ITU-R BT470BG</doc>
</member>
<member name="log100" value="9" c:identifier="GST_VIDEO_TRANSFER_LOG100" glib:nick="log100">
<doc xml:space="preserve">Logarithmic transfer characteristic
@ -13551,7 +13575,7 @@ non-linear RGB (R'G'B') and linear RGB</doc>
</member>
<member name="log316" value="10" c:identifier="GST_VIDEO_TRANSFER_LOG316" glib:nick="log316">
<doc xml:space="preserve">Logarithmic transfer characteristic
316.22777:1 range</doc>
316.22777:1 range (100 * sqrt(10) : 1)</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
@ -13564,7 +13588,7 @@ non-linear RGB (R'G'B') and linear RGB</doc>
<member name="bt2020_10" value="13" c:identifier="GST_VIDEO_TRANSFER_BT2020_10" glib:nick="bt2020-10">
<doc xml:space="preserve">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).
GST_VIDEO_TRANSFER_BT709 and GST_VIDEO_TRANSFER_BT601).
Since: 1.18</doc>
</member>
<member name="smpte2084" value="14" c:identifier="GST_VIDEO_TRANSFER_SMPTE2084" glib:nick="smpte2084">
@ -13577,6 +13601,12 @@ non-linear RGB (R'G'B') and linear RGB</doc>
STD-B67 and Rec. ITU-R BT.2100-1 hybrid loggamma (HLG) system
Since: 1.18</doc>
</member>
<member name="bt601" value="16" c:identifier="GST_VIDEO_TRANSFER_BT601" glib:nick="bt601">
<doc xml:space="preserve">also known as SMPTE170M / ITU-R BT1358 525 or 625 / ITU-R BT1700 NTSC
Functionally the same as the values
GST_VIDEO_TRANSFER_BT709, and GST_VIDEO_TRANSFER_BT2020_10.
Since: 1.18</doc>
</member>
</enumeration>
<record name="VideoVBIEncoder" c:type="GstVideoVBIEncoder" version="1.16" 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
@ -15360,6 +15390,36 @@ and "ITU-T H.273 Table 3".
</parameter>
</parameters>
</function>
<function name="video_color_transfer_is_equivalent" c:identifier="gst_video_color_transfer_is_equivalent" version="1.18">
<doc xml:space="preserve">Returns whether @from_func and @to_func are equivalent. There are cases
(e.g. BT601, BT709, and BT2020_10) where several functions are functionally
identical. In these cases, when doing conversion, we should consider them
as equivalent. Also, BT2020_12 is the same as the aforementioned three for
less than 12 bits per pixel.</doc>
<return-value transfer-ownership="none">
<doc xml:space="preserve">TRUE if @from_func and @to_func can be considered equivalent.</doc>
<type name="gboolean" c:type="gboolean"/>
</return-value>
<parameters>
<parameter name="from_func" transfer-ownership="none">
<doc xml:space="preserve">#GstVideoTransferFunction to convert from</doc>
<type name="VideoTransferFunction" c:type="GstVideoTransferFunction"/>
</parameter>
<parameter name="from_bpp" transfer-ownership="none">
<doc xml:space="preserve">bits per pixel to convert from</doc>
<type name="guint" c:type="guint"/>
</parameter>
<parameter name="to_func" transfer-ownership="none">
<doc xml:space="preserve">#GstVideoTransferFunction to convert into</doc>
<type name="VideoTransferFunction" c:type="GstVideoTransferFunction"/>
</parameter>
<parameter name="to_bpp" transfer-ownership="none">
<doc xml:space="preserve">bits per pixel to convert into</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">Converts #GstVideoTransferFunction to the "transfer characteristics"
(TransferCharacteristics) value defined by "ISO/IEC 23001-8 Section 7.2 Table 3"