forked from mirrors/gstreamer-rs
Update docs
This commit is contained in:
parent
ca8b8f6a38
commit
d2467b4b65
10 changed files with 1403 additions and 37 deletions
|
@ -619,6 +619,18 @@ handler with `GST_PAD_SET_ACCEPT_INTERSECT` and
|
|||
`GST_PAD_SET_ACCEPT_TEMPLATE`
|
||||
## `use_`
|
||||
if the default pad accept-caps query handling should be used
|
||||
<!-- trait AudioDecoderExt::fn get_property_max_errors -->
|
||||
Maximum number of tolerated consecutive decode errors. See
|
||||
`AudioDecoderExt::set_max_errors` for more details.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
<!-- trait AudioDecoderExt::fn set_property_max_errors -->
|
||||
Maximum number of tolerated consecutive decode errors. See
|
||||
`AudioDecoderExt::set_max_errors` for more details.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
<!-- struct AudioEncoder -->
|
||||
This base class is for audio encoders turning raw audio samples into
|
||||
encoded audio data.
|
||||
|
@ -969,6 +981,13 @@ Configures encoder audio jitter tolerance threshold.
|
|||
MT safe.
|
||||
## `tolerance`
|
||||
new tolerance
|
||||
<!-- struct AudioFlags -->
|
||||
Extra audio flags
|
||||
<!-- struct AudioFlags::const NONE -->
|
||||
no valid flag
|
||||
<!-- struct AudioFlags::const UNPOSITIONED -->
|
||||
the position array explicitly
|
||||
contains unpositioned channels.
|
||||
<!-- enum AudioFormat -->
|
||||
Enum value describing the most common audio formats.
|
||||
<!-- enum AudioFormat::variant Unknown -->
|
||||
|
@ -1063,6 +1082,19 @@ encoded audio format
|
|||
32-bit floating point samples, native endianness
|
||||
<!-- enum AudioFormat::variant F64 -->
|
||||
64-bit floating point samples, native endianness
|
||||
<!-- struct AudioFormatFlags -->
|
||||
The different audio flags that a format info can have.
|
||||
<!-- struct AudioFormatFlags::const INTEGER -->
|
||||
integer samples
|
||||
<!-- struct AudioFormatFlags::const FLOAT -->
|
||||
float samples
|
||||
<!-- struct AudioFormatFlags::const SIGNED -->
|
||||
signed samples
|
||||
<!-- struct AudioFormatFlags::const COMPLEX -->
|
||||
complex layout
|
||||
<!-- struct AudioFormatFlags::const UNPACK -->
|
||||
the format can be used in
|
||||
`GstAudioFormatUnpack` and `GstAudioFormatPack` functions
|
||||
<!-- struct AudioInfo -->
|
||||
Information describing audio properties. This information can be filled
|
||||
in from GstCaps with `AudioInfo::from_caps`.
|
||||
|
@ -1144,6 +1176,16 @@ Layout of the audio samples for the different channels.
|
|||
interleaved audio
|
||||
<!-- enum AudioLayout::variant NonInterleaved -->
|
||||
non-interleaved audio
|
||||
<!-- struct AudioPackFlags -->
|
||||
The different flags that can be used when packing and unpacking.
|
||||
<!-- struct AudioPackFlags::const NONE -->
|
||||
No flag
|
||||
<!-- struct AudioPackFlags::const TRUNCATE_RANGE -->
|
||||
When the source has a smaller depth
|
||||
than the target format, set the least significant bits of the target
|
||||
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.
|
||||
<!-- enum AudioRingBufferFormatType -->
|
||||
The format of the samples in the ringbuffer.
|
||||
<!-- enum AudioRingBufferFormatType::variant Raw -->
|
||||
|
|
|
@ -156,6 +156,20 @@ the number of bytes to copy
|
|||
# Returns
|
||||
|
||||
A new `glib::Bytes` structure containing the copied data.
|
||||
<!-- impl Adapter::fn distance_from_discont -->
|
||||
Get the distance in bytes since the last buffer with the
|
||||
`gst::BufferFlags::Discont` flag.
|
||||
|
||||
The distance will be reset to 0 for all buffers with
|
||||
`gst::BufferFlags::Discont` on them, and then calculated for all other
|
||||
following buffers based on their size.
|
||||
|
||||
Feature: `v1_10`
|
||||
|
||||
|
||||
# Returns
|
||||
|
||||
The offset. Can be `GST_BUFFER_OFFSET_NONE`.
|
||||
<!-- impl Adapter::fn dts_at_discont -->
|
||||
Get the DTS that was on the last buffer with the GST_BUFFER_FLAG_DISCONT
|
||||
flag, or GST_CLOCK_TIME_NONE.
|
||||
|
@ -790,6 +804,18 @@ Enables the emission of signals such as `AggregatorPad::buffer-consumed`
|
|||
|
||||
Feature: `v1_16`
|
||||
|
||||
<!-- enum AggregatorStartTimeSelection -->
|
||||
<!-- enum AggregatorStartTimeSelection::variant Zero -->
|
||||
Start at running time 0.
|
||||
<!-- enum AggregatorStartTimeSelection::variant First -->
|
||||
Start at the running time of
|
||||
the first buffer that is received.
|
||||
<!-- enum AggregatorStartTimeSelection::variant Set -->
|
||||
Start at the running time
|
||||
selected by the `start-time` property.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
<!-- struct BaseParse -->
|
||||
This base class is for parser elements that process data and splits it
|
||||
into separate audio/video/whatever frames.
|
||||
|
@ -1157,6 +1183,9 @@ a newly-allocated `BaseParseFrame`. Free with
|
|||
<!-- impl BaseParseFrame::fn copy -->
|
||||
Copies a `BaseParseFrame`.
|
||||
|
||||
Feature: `v1_12_1`
|
||||
|
||||
|
||||
# Returns
|
||||
|
||||
A copy of `self`
|
||||
|
@ -1168,6 +1197,30 @@ all public fields are zero-ed and a private flag is set to make
|
|||
sure `BaseParseFrame::free` only frees the contents but not
|
||||
the actual frame. Use this function to initialise a `BaseParseFrame`
|
||||
allocated on the stack.
|
||||
<!-- struct BaseParseFrameFlags -->
|
||||
Flags to be used in a `BaseParseFrame`.
|
||||
<!-- struct BaseParseFrameFlags::const NONE -->
|
||||
no flag
|
||||
<!-- struct BaseParseFrameFlags::const NEW_FRAME -->
|
||||
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).
|
||||
<!-- struct BaseParseFrameFlags::const NO_FRAME -->
|
||||
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.
|
||||
<!-- struct BaseParseFrameFlags::const CLIP -->
|
||||
`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).
|
||||
<!-- struct BaseParseFrameFlags::const DROP -->
|
||||
indicates to `finish_frame` that the
|
||||
the frame should be dropped (and might be handled internally by subclass)
|
||||
<!-- struct BaseParseFrameFlags::const QUEUE -->
|
||||
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
|
||||
<!-- struct BaseSink -->
|
||||
`BaseSink` is the base class for sink elements in GStreamer, such as
|
||||
xvimagesink or filesink. It is a layer on top of `gst::Element` that provides a
|
||||
|
|
|
@ -187,8 +187,7 @@ call `glib::MainContext::push_thread_default` in a new thread before
|
|||
calling `ges_init`.
|
||||
|
||||
Example of an asynchronous asset request:
|
||||
|
||||
```text
|
||||
``` c
|
||||
// The request callback
|
||||
static void
|
||||
asset_loaded_cb (GESAsset * source, GAsyncResult * res, gpointer user_data)
|
||||
|
@ -198,14 +197,14 @@ asset_loaded_cb (GESAsset * source, GAsyncResult * res, gpointer user_data)
|
|||
|
||||
asset = ges_asset_request_finish (res, &error);
|
||||
if (asset) {
|
||||
g_print ("The file: %s is usable as a FileSource",
|
||||
g_print ("The file: %s is usable as a GESUriClip",
|
||||
ges_asset_get_id (asset));
|
||||
} else {
|
||||
g_print ("The file: %s is *not* usable as a FileSource because: %s",
|
||||
g_print ("The file: %s is *not* usable as a GESUriClip because: %s",
|
||||
ges_asset_get_id (source), error->message);
|
||||
}
|
||||
|
||||
gst_object_unref (mfs);
|
||||
gst_object_unref (asset);
|
||||
}
|
||||
|
||||
// The request:
|
||||
|
@ -728,6 +727,9 @@ This method can also fail if the adding the track element to the track
|
|||
would break a configuration rule of the corresponding `Timeline`,
|
||||
such as causing three sources to overlap at a single time, or causing
|
||||
a source to completely overlap another in the same track.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
## `child`
|
||||
A child of `self`
|
||||
## `track`
|
||||
|
@ -935,6 +937,9 @@ using this position to trim the end of a clip.
|
|||
See `ClipExt::get_internal_time_from_timeline_time`, which performs the
|
||||
reverse, or `ClipExt::get_timeline_time_from_source_frame` which does
|
||||
the same conversion, but using frame numbers.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
## `child`
|
||||
An `TrackElement:active` child of `self` with a
|
||||
`TrackElement:track`
|
||||
|
@ -1122,6 +1127,9 @@ If the duration-limit would ever go below the current
|
|||
`TimelineElement:duration` of the clip due to a change in the above
|
||||
variables, its `TimelineElement:duration` will be set to the new
|
||||
limit.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
<!-- trait ClipExt::fn get_property_layer -->
|
||||
The layer this clip lies in.
|
||||
|
||||
|
@ -1437,9 +1445,14 @@ The element is edited in slide mode (not yet
|
|||
(`Edge::Start` and `Edge::End`) is not defined. The element can
|
||||
not shift layers under this mode.
|
||||
<!-- struct Effect -->
|
||||
Currently we only support effects with 1 sinkpad and 1 sourcepad
|
||||
with the exception of `gesaudiomixer` and `gescompositor` which
|
||||
can be used as effects.
|
||||
Currently we only support effects with N sinkpads and one single srcpad.
|
||||
Apart from `gesaudiomixer` and `gescompositor` which can be used as effects
|
||||
and where sinkpads will be requested as needed based on the timeline topology
|
||||
GES will always request at most one sinkpad per effect (when required).
|
||||
|
||||
> Note: GES always adds converters (`audioconvert ! audioresample !
|
||||
> audioconvert` for audio effects and `videoconvert` for video effects) to
|
||||
> make it simpler for end users.
|
||||
|
||||
# Implements
|
||||
|
||||
|
@ -1742,6 +1755,9 @@ if `self` refused to add `clip`.
|
|||
<!-- trait LayerExt::fn get_active_for_track -->
|
||||
Gets whether the layer is active for the given track. See
|
||||
`LayerExt::set_active_for_tracks`.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
## `track`
|
||||
The `Track` to check if `self` is currently active for
|
||||
|
||||
|
@ -1823,6 +1839,9 @@ active in the track, regardless of their individual
|
|||
|
||||
Note that by default a layer will be active for all of its
|
||||
timeline's tracks.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
## `active`
|
||||
Whether elements in `tracks` should be active or not
|
||||
## `tracks`
|
||||
|
@ -1856,6 +1875,9 @@ The priority to set
|
|||
<!-- trait LayerExt::fn connect_active_changed -->
|
||||
Will be emitted whenever the layer is activated or deactivated
|
||||
for some `Track`. See `LayerExt::set_active_for_tracks`.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
## `active`
|
||||
Whether `layer` has been made active or de-active in the `tracks`
|
||||
## `tracks`
|
||||
|
@ -2022,9 +2044,14 @@ to `location` using the given `format`, `height` and `width`.
|
|||
<!-- trait GESPipelineExt::fn set_mode -->
|
||||
Sets the `Pipeline:mode` of the pipeline.
|
||||
|
||||
Note that the pipeline will be set to `gst::State::Null` during this call
|
||||
to perform the necessary changes. You will need to set the state again
|
||||
yourself after calling this.
|
||||
Note that the pipeline will be set to `gst::State::Null` during this call to
|
||||
perform the necessary changes. You will need to set the state again yourself
|
||||
after calling this.
|
||||
|
||||
> **NOTE**: [Rendering settings](ges_pipeline_set_render_settings) need to be
|
||||
> set before setting `mode` to `PipelineFlags::Render` or
|
||||
> `PipelineFlags::SmartRender`, the call to this method will fail
|
||||
> otherwise.
|
||||
## `mode`
|
||||
The mode to set for `self`
|
||||
|
||||
|
@ -2109,6 +2136,25 @@ The video sink used for preview. This exposes the
|
|||
<!-- trait GESPipelineExt::fn set_property_video_sink -->
|
||||
The video sink used for preview. This exposes the
|
||||
`playsink:video-sink` property of the internal `playsink`.
|
||||
<!-- struct PipelineFlags -->
|
||||
The various modes a `Pipeline` can be configured to.
|
||||
<!-- struct PipelineFlags::const AUDIO_PREVIEW -->
|
||||
Output the `Pipeline:timeline`'s
|
||||
audio to the soundcard
|
||||
<!-- struct PipelineFlags::const VIDEO_PREVIEW -->
|
||||
Output the `Pipeline:timeline`'s
|
||||
video to the screen
|
||||
<!-- struct PipelineFlags::const FULL_PREVIEW -->
|
||||
Output both the `Pipeline:timeline`'s
|
||||
audio and video to the soundcard and screen (default)
|
||||
<!-- struct PipelineFlags::const RENDER -->
|
||||
Render the `Pipeline:timeline` with
|
||||
forced decoding (the underlying `encodebin` has its
|
||||
`encodebin:avoid-reencoding` property set to `false`)
|
||||
<!-- struct PipelineFlags::const SMART_RENDER -->
|
||||
Render the `Pipeline:timeline`,
|
||||
avoiding decoding/reencoding (the underlying `encodebin` has its
|
||||
`encodebin:avoid-reencoding` property set to `true`)
|
||||
<!-- struct Project -->
|
||||
The `Project` is used to control a set of `Asset` and is a
|
||||
`Asset` with `GES_TYPE_TIMELINE` as `extractable_type` itself. That
|
||||
|
@ -2613,6 +2659,9 @@ with the given `name`, or `None` if it was not found.
|
|||
<!-- trait TimelineExt::fn get_frame_at -->
|
||||
This method allows you to convert a timeline `gst::ClockTime` into its
|
||||
corresponding `FrameNumber` in the timeline's output.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
## `timestamp`
|
||||
The timestamp to get the corresponding frame number of
|
||||
|
||||
|
@ -2624,6 +2673,9 @@ This method allows you to convert a timeline output frame number into a
|
|||
timeline `gst::ClockTime`. For example, this time could be used to seek to a
|
||||
particular frame in the timeline's output, or as the edit position for
|
||||
an element within the timeline.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
## `frame_number`
|
||||
The frame number to get the corresponding timestamp of in the
|
||||
timeline coordinates
|
||||
|
@ -3624,6 +3676,9 @@ Emitted when the element has a new child property registered. See
|
|||
Note that some GES elements will be automatically created with
|
||||
pre-registered children properties. You can use
|
||||
`TimelineElementExt::list_children_properties` to list these.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
## `prop_object`
|
||||
The child whose property has been registered
|
||||
## `prop`
|
||||
|
@ -3631,6 +3686,9 @@ The specification for the property that has been registered
|
|||
<!-- trait TimelineElementExt::fn connect_child_property_removed -->
|
||||
Emitted when the element has a child property unregistered. See
|
||||
`TimelineElementExt::remove_child_property`.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
## `prop_object`
|
||||
The child whose property has been unregistered
|
||||
## `prop`
|
||||
|
@ -3979,7 +4037,7 @@ The element that was removed
|
|||
The capabilities used to choose the output of the `Track`'s
|
||||
elements. Internally, this is used to select output streams when
|
||||
several may be available, by determining whether its `gst::Pad` is
|
||||
compatible (see `nlecomposition:caps` for `nlecomposition`). As such,
|
||||
compatible (see `NleObject:caps` for `nlecomposition`). As such,
|
||||
this is used as a weaker indication of the desired output type of the
|
||||
track, **before** the `Track:restriction-caps` is applied.
|
||||
Therefore, this should be set to a *generic* superset of the
|
||||
|
@ -3997,7 +4055,7 @@ Default value: `GST_CAPS_ANY`.
|
|||
The capabilities used to choose the output of the `Track`'s
|
||||
elements. Internally, this is used to select output streams when
|
||||
several may be available, by determining whether its `gst::Pad` is
|
||||
compatible (see `nlecomposition:caps` for `nlecomposition`). As such,
|
||||
compatible (see `NleObject:caps` for `nlecomposition`). As such,
|
||||
this is used as a weaker indication of the desired output type of the
|
||||
track, **before** the `Track:restriction-caps` is applied.
|
||||
Therefore, this should be set to a *generic* superset of the
|
||||
|
@ -4226,7 +4284,7 @@ be initialized if it is initialized with 0
|
|||
|
||||
# Returns
|
||||
|
||||
`true` if the property was found, `false` otherwize.
|
||||
`true` if the property was found, `false` otherwise.
|
||||
<!-- trait TrackElementExt::fn get_child_property_by_pspec -->
|
||||
Gets a property of a child of `self`.
|
||||
|
||||
|
@ -4306,6 +4364,9 @@ The track-type of `self`.
|
|||
<!-- trait TrackElementExt::fn has_internal_source -->
|
||||
Gets `TrackElement:has-internal-source` for the element.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
|
||||
# Returns
|
||||
|
||||
`true` if `self` can have its 'internal time' properties set.
|
||||
|
@ -4436,7 +4497,7 @@ The value
|
|||
|
||||
# Returns
|
||||
|
||||
`true` if the property was set, `false` otherwize.
|
||||
`true` if the property was set, `false` otherwise.
|
||||
<!-- trait TrackElementExt::fn set_child_property_by_pspec -->
|
||||
Sets a property of a child of `self`.
|
||||
|
||||
|
@ -4488,9 +4549,17 @@ Sets `TrackElement:has-internal-source` for the element. If this is
|
|||
set to `false`, this method will also set the
|
||||
`TimelineElement:in-point` of the element to 0 and its
|
||||
`TimelineElement:max-duration` to `GST_CLOCK_TIME_NONE`.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
## `has_internal_source`
|
||||
Whether the `self` should be allowed to have its
|
||||
'internal time' properties set.
|
||||
|
||||
# Returns
|
||||
|
||||
`false` if `has_internal_source` is forbidden for `self` and
|
||||
`true` in any other case.
|
||||
<!-- trait TrackElementExt::fn set_track_type -->
|
||||
Sets the `TrackElement:track-type` for the element.
|
||||
## `type_`
|
||||
|
@ -4523,6 +4592,9 @@ See `TrackElementExt::clamp_control_source` for how this is done
|
|||
per control source.
|
||||
|
||||
Default value: `true`
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
<!-- trait TrackElementExt::fn set_property_auto_clamp_control_sources -->
|
||||
Whether the control sources on the element (see
|
||||
`TrackElementExt::set_control_source`) will be automatically
|
||||
|
@ -4533,6 +4605,9 @@ See `TrackElementExt::clamp_control_source` for how this is done
|
|||
per control source.
|
||||
|
||||
Default value: `true`
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
<!-- trait TrackElementExt::fn get_property_has_internal_source -->
|
||||
This property is used to determine whether the 'internal time'
|
||||
properties of the element have any meaning. In particular, unless
|
||||
|
@ -4568,6 +4643,9 @@ time at which the subtitle file runs out of data.
|
|||
Note that GES can not support track elements that have both internal
|
||||
content and manipulate the timing of their data streams (time
|
||||
effects).
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
<!-- trait TrackElementExt::fn set_property_has_internal_source -->
|
||||
This property is used to determine whether the 'internal time'
|
||||
properties of the element have any meaning. In particular, unless
|
||||
|
@ -4603,6 +4681,9 @@ time at which the subtitle file runs out of data.
|
|||
Note that GES can not support track elements that have both internal
|
||||
content and manipulate the timing of their data streams (time
|
||||
effects).
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
<!-- trait TrackElementExt::fn get_property_track -->
|
||||
The track that this element belongs to, or `None` if it does not
|
||||
belong to a track.
|
||||
|
@ -4616,6 +4697,23 @@ The track type of the element, which determines the type of track the
|
|||
element can be added to (see `Track:track-type`). This should
|
||||
correspond to the type of data that the element can produce or
|
||||
process.
|
||||
<!-- struct TrackType -->
|
||||
Types of content handled by a track. If the content is not one of
|
||||
`TrackType::Audio`, `TrackType::Video` or `TrackType::Text`,
|
||||
the user of the `Track` must set the type to `TrackType::Custom`.
|
||||
|
||||
`TrackType::Unknown` is for internal purposes and should not be used
|
||||
by users
|
||||
<!-- struct TrackType::const UNKNOWN -->
|
||||
A track of unknown type (i.e. invalid)
|
||||
<!-- struct TrackType::const AUDIO -->
|
||||
An audio track
|
||||
<!-- struct TrackType::const VIDEO -->
|
||||
A video track
|
||||
<!-- struct TrackType::const TEXT -->
|
||||
A text (subtitle) track
|
||||
<!-- struct TrackType::const CUSTOM -->
|
||||
A custom-content track
|
||||
<!-- struct UriClip -->
|
||||
Represents all the output streams from a particular uri. It is assumed that
|
||||
the URI points to a file of some type.
|
||||
|
@ -4631,6 +4729,11 @@ Trait containing all `UriClip` methods.
|
|||
[`UriClip`](struct.UriClip.html)
|
||||
<!-- impl UriClip::fn new -->
|
||||
Creates a new `UriClip` for the provided `uri`.
|
||||
|
||||
> **WARNING**: This function might 'discover` @uri **synchrounously**, it is
|
||||
> an IO and processing intensive task that you probably don't want to run in
|
||||
> an application mainloop. Have a look at #ges_asset_request_async to see how
|
||||
> to make that operation happen **asynchronously**.
|
||||
## `uri`
|
||||
the URI the source should control
|
||||
|
||||
|
@ -4784,6 +4887,9 @@ a
|
|||
<!-- trait UriClipAssetExt::fn is_image -->
|
||||
Gets Whether the file represented by `self` is an image or not
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
|
||||
# Returns
|
||||
|
||||
Whether the file represented by `self` is an image or not
|
||||
|
@ -4826,6 +4932,9 @@ a `UriClipAsset`
|
|||
<!-- trait UriSourceAssetExt::fn is_image -->
|
||||
Check if `self` contains a single image
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
|
||||
# Returns
|
||||
|
||||
`true` if the video stream corresponds to an image (i.e. only
|
||||
|
|
|
@ -1,4 +1,18 @@
|
|||
<!-- file * -->
|
||||
<!-- struct GLAPI -->
|
||||
<!-- struct GLAPI::const NONE -->
|
||||
no API
|
||||
<!-- struct GLAPI::const OPENGL -->
|
||||
Desktop OpenGL up to and including 3.1. The
|
||||
compatibility profile when the OpenGL version is >= 3.2
|
||||
<!-- struct GLAPI::const OPENGL3 -->
|
||||
Desktop OpenGL >= 3.2 core profile
|
||||
<!-- struct GLAPI::const GLES1 -->
|
||||
OpenGL ES 1.x
|
||||
<!-- struct GLAPI::const GLES2 -->
|
||||
OpenGL ES 2.x and 3.x
|
||||
<!-- struct GLAPI::const ANY -->
|
||||
Any OpenGL API
|
||||
<!-- struct GLBaseFilter -->
|
||||
`GLBaseFilter` handles the nitty gritty details of retrieving an OpenGL
|
||||
context. It also provided some wrappers around `gst_base::BaseTransform`'s
|
||||
|
@ -623,6 +637,29 @@ pointer to a display (or 0)
|
|||
# Returns
|
||||
|
||||
A `EGLDisplay` or `EGL_NO_DISPLAY`
|
||||
<!-- struct GLDisplayType -->
|
||||
<!-- struct GLDisplayType::const NONE -->
|
||||
no display type
|
||||
<!-- struct GLDisplayType::const X11 -->
|
||||
X11 display
|
||||
<!-- struct GLDisplayType::const WAYLAND -->
|
||||
Wayland display
|
||||
<!-- struct GLDisplayType::const COCOA -->
|
||||
Cocoa display
|
||||
<!-- struct GLDisplayType::const WIN32 -->
|
||||
Win32 display
|
||||
<!-- struct GLDisplayType::const DISPMANX -->
|
||||
Dispmanx display
|
||||
<!-- struct GLDisplayType::const EGL -->
|
||||
EGL display
|
||||
<!-- struct GLDisplayType::const VIV_FB -->
|
||||
Vivante Framebuffer display
|
||||
<!-- struct GLDisplayType::const GBM -->
|
||||
Mesa3D GBM display
|
||||
<!-- struct GLDisplayType::const EGL_DEVICE -->
|
||||
EGLDevice display (Since: 1.18)
|
||||
<!-- struct GLDisplayType::const ANY -->
|
||||
any display type
|
||||
<!-- struct GLDisplayWayland -->
|
||||
the contents of a `GLDisplayWayland` are private and should only be accessed
|
||||
through the provided API
|
||||
|
@ -794,6 +831,22 @@ Opaque `GLOverlayCompositor` object
|
|||
# Implements
|
||||
|
||||
[`gst::ObjectExt`](../gst/trait.ObjectExt.html), [`glib::object::ObjectExt`](../glib/object/trait.ObjectExt.html)
|
||||
<!-- struct GLPlatform -->
|
||||
<!-- struct GLPlatform::const NONE -->
|
||||
no platform
|
||||
<!-- struct GLPlatform::const EGL -->
|
||||
the EGL platform used primarily with the X11, wayland
|
||||
and android window systems as well as on embedded Linux
|
||||
<!-- struct GLPlatform::const GLX -->
|
||||
the GLX platform used primarily with the X11 window system
|
||||
<!-- struct GLPlatform::const WGL -->
|
||||
the WGL platform used primarily on Windows
|
||||
<!-- struct GLPlatform::const CGL -->
|
||||
the CGL platform used primarily on OS X
|
||||
<!-- struct GLPlatform::const EAGL -->
|
||||
the EAGL platform used primarily on iOS
|
||||
<!-- struct GLPlatform::const ANY -->
|
||||
any OpenGL platform
|
||||
<!-- enum GLQueryType -->
|
||||
<!-- enum GLQueryType::variant None -->
|
||||
no query
|
||||
|
@ -809,6 +862,18 @@ Compilation error occurred
|
|||
Link error occurred
|
||||
<!-- enum GLSLError::variant Program -->
|
||||
General program error occurred
|
||||
<!-- struct GLSLProfile -->
|
||||
GLSL profiles
|
||||
<!-- struct GLSLProfile::const NONE -->
|
||||
no profile supported/available
|
||||
<!-- struct GLSLProfile::const ES -->
|
||||
OpenGL|ES profile
|
||||
<!-- struct GLSLProfile::const CORE -->
|
||||
OpenGL core profile
|
||||
<!-- struct GLSLProfile::const COMPATIBILITY -->
|
||||
OpenGL compatibility profile
|
||||
<!-- struct GLSLProfile::const ANY -->
|
||||
any OpenGL/OpenGL|ES profile
|
||||
<!-- struct GLSLStage -->
|
||||
`GLSLStage` holds and represents a single OpenGL shader stage.
|
||||
|
||||
|
|
|
@ -331,6 +331,21 @@ the discovery timed-out
|
|||
the discoverer was already discovering a file
|
||||
<!-- enum DiscovererResult::variant MissingPlugins -->
|
||||
Some plugins are missing for full discovery
|
||||
<!-- struct DiscovererSerializeFlags -->
|
||||
You can use these flags to control what is serialized by
|
||||
`DiscovererInfo::to_variant`
|
||||
<!-- struct DiscovererSerializeFlags::const BASIC -->
|
||||
Serialize only basic information, excluding
|
||||
caps, tags and miscellaneous information
|
||||
<!-- struct DiscovererSerializeFlags::const CAPS -->
|
||||
Serialize the caps for each stream
|
||||
<!-- struct DiscovererSerializeFlags::const TAGS -->
|
||||
Serialize the tags for each stream
|
||||
<!-- struct DiscovererSerializeFlags::const MISC -->
|
||||
Serialize miscellaneous information for each stream
|
||||
<!-- struct DiscovererSerializeFlags::const ALL -->
|
||||
Serialize all the available info, including
|
||||
caps, tags and miscellaneous information
|
||||
<!-- struct DiscovererStreamInfo -->
|
||||
Base structure for information concerning a media stream. Depending on the
|
||||
stream type, one can find more media-specific information in
|
||||
|
@ -836,6 +851,14 @@ The description of the `self`.
|
|||
# Returns
|
||||
|
||||
The name of the `self`.
|
||||
<!-- impl EncodingTarget::fn get_path -->
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
|
||||
# Returns
|
||||
|
||||
The path to the `self` file.
|
||||
<!-- impl EncodingTarget::fn get_profile -->
|
||||
## `name`
|
||||
the name of the profile to retrieve
|
||||
|
|
|
@ -93,6 +93,33 @@ VoIP Metrics Report Block
|
|||
|
||||
Feature: `v1_16`
|
||||
|
||||
<!-- struct RTPBufferFlags -->
|
||||
Additional RTP buffer flags. These flags can potentially be used on any
|
||||
buffers carrying RTP packets.
|
||||
|
||||
Note that these are only valid for `gst::Caps` of type: application/x-rtp (x-rtcp).
|
||||
They can conflict with other extended buffer flags.
|
||||
<!-- struct RTPBufferFlags::const RETRANSMISSION -->
|
||||
The `gst::Buffer` was once wrapped
|
||||
in a retransmitted packet as specified by RFC 4588.
|
||||
<!-- struct RTPBufferFlags::const REDUNDANT -->
|
||||
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
|
||||
<!-- struct RTPBufferFlags::const LAST -->
|
||||
Offset to define more flags.
|
||||
|
||||
Feature: `v1_10`
|
||||
|
||||
<!-- struct RTPBufferMapFlags -->
|
||||
Additional mapping flags for `RTPBuffer::map`.
|
||||
<!-- struct RTPBufferMapFlags::const SKIP_PADDING -->
|
||||
Skip mapping and validation of RTP
|
||||
padding and RTP pad count when present. Useful for buffers where
|
||||
the padding may be encrypted.
|
||||
<!-- struct RTPBufferMapFlags::const LAST -->
|
||||
Offset to define more flags
|
||||
<!-- enum RTPPayload -->
|
||||
Standard predefined fixed payload types.
|
||||
|
||||
|
|
|
@ -10,6 +10,20 @@ a copy of `self`.
|
|||
<!-- impl RTSPAddress::fn free -->
|
||||
Free `self` and releasing it back into the pool when owned by a
|
||||
pool.
|
||||
<!-- struct RTSPAddressFlags -->
|
||||
Flags used to control allocation of addresses
|
||||
<!-- struct RTSPAddressFlags::const NONE -->
|
||||
no flags
|
||||
<!-- struct RTSPAddressFlags::const IPV4 -->
|
||||
an IPv4 address
|
||||
<!-- struct RTSPAddressFlags::const IPV6 -->
|
||||
and IPv6 address
|
||||
<!-- struct RTSPAddressFlags::const EVEN_PORT -->
|
||||
address with an even port
|
||||
<!-- struct RTSPAddressFlags::const MULTICAST -->
|
||||
a multicast address
|
||||
<!-- struct RTSPAddressFlags::const UNICAST -->
|
||||
a unicast address
|
||||
<!-- struct RTSPAddressPool -->
|
||||
An address pool, all member are private
|
||||
|
||||
|
@ -3319,3 +3333,9 @@ pointer becomes invalid when you free the token. This function checks if
|
|||
`self` is writable and will never return `None`.
|
||||
|
||||
MT safe.
|
||||
<!-- struct RTSPTransportMode -->
|
||||
The supported modes of the media.
|
||||
<!-- struct RTSPTransportMode::const PLAY -->
|
||||
Transport supports PLAY mode
|
||||
<!-- struct RTSPTransportMode::const RECORD -->
|
||||
Transport supports RECORD mode
|
||||
|
|
|
@ -11,6 +11,12 @@ digest authentication
|
|||
RTSP Authentication parameter
|
||||
|
||||
Feature: `v1_12`
|
||||
<!-- struct RTSPEvent -->
|
||||
The possible events for the connection.
|
||||
<!-- struct RTSPEvent::const READ -->
|
||||
connection is readable
|
||||
<!-- struct RTSPEvent::const WRITE -->
|
||||
connection is writable
|
||||
<!-- enum RTSPFamily -->
|
||||
The possible network families.
|
||||
<!-- enum RTSPFamily::variant None -->
|
||||
|
@ -21,6 +27,50 @@ internet
|
|||
internet V6
|
||||
<!-- enum RTSPHeaderField -->
|
||||
Enumeration of rtsp header fields
|
||||
<!-- struct RTSPLowerTrans -->
|
||||
The different transport methods.
|
||||
<!-- struct RTSPLowerTrans::const UNKNOWN -->
|
||||
invalid transport flag
|
||||
<!-- struct RTSPLowerTrans::const UDP -->
|
||||
stream data over UDP
|
||||
<!-- struct RTSPLowerTrans::const UDP_MCAST -->
|
||||
stream data over UDP multicast
|
||||
<!-- struct RTSPLowerTrans::const TCP -->
|
||||
stream data over TCP
|
||||
<!-- struct RTSPLowerTrans::const HTTP -->
|
||||
stream data tunneled over HTTP.
|
||||
<!-- struct RTSPLowerTrans::const TLS -->
|
||||
encrypt TCP and HTTP with TLS
|
||||
<!-- struct RTSPMethod -->
|
||||
The different supported RTSP methods.
|
||||
<!-- struct RTSPMethod::const INVALID -->
|
||||
invalid method
|
||||
<!-- struct RTSPMethod::const DESCRIBE -->
|
||||
the DESCRIBE method
|
||||
<!-- struct RTSPMethod::const ANNOUNCE -->
|
||||
the ANNOUNCE method
|
||||
<!-- struct RTSPMethod::const GET_PARAMETER -->
|
||||
the GET_PARAMETER method
|
||||
<!-- struct RTSPMethod::const OPTIONS -->
|
||||
the OPTIONS method
|
||||
<!-- struct RTSPMethod::const PAUSE -->
|
||||
the PAUSE method
|
||||
<!-- struct RTSPMethod::const PLAY -->
|
||||
the PLAY method
|
||||
<!-- struct RTSPMethod::const RECORD -->
|
||||
the RECORD method
|
||||
<!-- struct RTSPMethod::const REDIRECT -->
|
||||
the REDIRECT method
|
||||
<!-- struct RTSPMethod::const SETUP -->
|
||||
the SETUP method
|
||||
<!-- struct RTSPMethod::const SET_PARAMETER -->
|
||||
the SET_PARAMETER method
|
||||
<!-- struct RTSPMethod::const TEARDOWN -->
|
||||
the TEARDOWN method
|
||||
<!-- struct RTSPMethod::const GET -->
|
||||
the GET method (HTTP).
|
||||
<!-- struct RTSPMethod::const POST -->
|
||||
the POST method (HTTP).
|
||||
<!-- enum RTSPMsgType -->
|
||||
The type of a message.
|
||||
<!-- enum RTSPMsgType::variant Invalid -->
|
||||
|
@ -35,6 +85,18 @@ HTTP request message.
|
|||
HTTP response message.
|
||||
<!-- enum RTSPMsgType::variant Data -->
|
||||
data message
|
||||
<!-- struct RTSPProfile -->
|
||||
The transfer profile to use.
|
||||
<!-- struct RTSPProfile::const UNKNOWN -->
|
||||
invalid profile
|
||||
<!-- struct RTSPProfile::const AVP -->
|
||||
the Audio/Visual profile (RFC 3551)
|
||||
<!-- struct RTSPProfile::const SAVP -->
|
||||
the secure Audio/Visual profile (RFC 3711)
|
||||
<!-- struct RTSPProfile::const AVPF -->
|
||||
the Audio/Visual profile with feedback (RFC 4585)
|
||||
<!-- struct RTSPProfile::const SAVPF -->
|
||||
the secure Audio/Visual profile with feedback (RFC 5124)
|
||||
<!-- enum RTSPRangeUnit -->
|
||||
Different possible time range units.
|
||||
<!-- enum RTSPRangeUnit::variant Smpte -->
|
||||
|
@ -113,6 +175,14 @@ end
|
|||
frames and subframes
|
||||
<!-- enum RTSPTimeType::variant Utc -->
|
||||
UTC time
|
||||
<!-- struct RTSPTransMode -->
|
||||
The transfer mode to use.
|
||||
<!-- struct RTSPTransMode::const UNKNOWN -->
|
||||
invalid tansport mode
|
||||
<!-- struct RTSPTransMode::const RTP -->
|
||||
transfer RTP data
|
||||
<!-- struct RTSPTransMode::const RDT -->
|
||||
transfer RDT (RealMedia) data
|
||||
<!-- struct RTSPUrl -->
|
||||
Provides helper functions to handle RTSP urls.
|
||||
<!-- impl RTSPUrl::fn copy -->
|
||||
|
|
|
@ -105,6 +105,54 @@ 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`
|
||||
<!-- struct VideoBufferFlags -->
|
||||
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 `gst::Caps` of type: video/... and caption/...
|
||||
They can conflict with other extended buffer flags.
|
||||
<!-- struct VideoBufferFlags::const INTERLACED -->
|
||||
If the `gst::Buffer` is interlaced. In mixed
|
||||
interlace-mode, this flags specifies if the frame is
|
||||
interlaced or progressive.
|
||||
<!-- struct VideoBufferFlags::const TFF -->
|
||||
If the `gst::Buffer` is interlaced, then the first field
|
||||
in the video frame is the top field. If unset, the
|
||||
bottom field is first.
|
||||
<!-- struct VideoBufferFlags::const RFF -->
|
||||
If the `gst::Buffer` is interlaced, then the first field
|
||||
(as defined by the `VideoBufferFlags::Tff` flag setting)
|
||||
is repeated.
|
||||
<!-- struct VideoBufferFlags::const ONEFIELD -->
|
||||
If the `gst::Buffer` is interlaced, then only the
|
||||
first field (as defined by the `VideoBufferFlags::Tff`
|
||||
flag setting) is to be displayed (Since: 1.16).
|
||||
<!-- struct VideoBufferFlags::const MULTIPLE_VIEW -->
|
||||
The `gst::Buffer` 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 absence of the flag marks
|
||||
mono buffers.
|
||||
<!-- struct VideoBufferFlags::const FIRST_IN_BUNDLE -->
|
||||
When conveying stereo/multiview content with
|
||||
frame-by-frame methods, this flag marks the first buffer
|
||||
in a bundle of frames that belong together.
|
||||
<!-- struct VideoBufferFlags::const TOP_FIELD -->
|
||||
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).
|
||||
Use GST_VIDEO_BUFFER_IS_TOP_FIELD() to check for this flag.
|
||||
<!-- struct VideoBufferFlags::const BOTTOM_FIELD -->
|
||||
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).
|
||||
Use GST_VIDEO_BUFFER_IS_BOTTOM_FIELD() to check for this flag.
|
||||
<!-- struct VideoBufferFlags::const MARKER -->
|
||||
The `gst::Buffer` contains the end of a video field or frame
|
||||
boundary such as the last subframe or packet (Since: 1.18).
|
||||
<!-- struct VideoBufferFlags::const LAST -->
|
||||
Offset to define more flags
|
||||
<!-- struct VideoBufferPool -->
|
||||
|
||||
|
||||
|
@ -160,6 +208,26 @@ only perform chroma upsampling
|
|||
only perform chroma downsampling
|
||||
<!-- enum VideoChromaMode::variant None -->
|
||||
disable chroma resampling
|
||||
<!-- struct VideoChromaSite -->
|
||||
Various Chroma sitings.
|
||||
<!-- struct VideoChromaSite::const UNKNOWN -->
|
||||
unknown cositing
|
||||
<!-- struct VideoChromaSite::const NONE -->
|
||||
no cositing
|
||||
<!-- struct VideoChromaSite::const H_COSITED -->
|
||||
chroma is horizontally cosited
|
||||
<!-- struct VideoChromaSite::const V_COSITED -->
|
||||
chroma is vertically cosited
|
||||
<!-- struct VideoChromaSite::const ALT_LINE -->
|
||||
choma samples are sited on alternate lines
|
||||
<!-- struct VideoChromaSite::const COSITED -->
|
||||
chroma samples cosited with luma samples
|
||||
<!-- struct VideoChromaSite::const JPEG -->
|
||||
jpeg style cositing, also for mpeg1 and mjpeg
|
||||
<!-- struct VideoChromaSite::const MPEG2 -->
|
||||
mpeg2 style cositing
|
||||
<!-- struct VideoChromaSite::const DV -->
|
||||
DV style cositing
|
||||
<!-- struct VideoCodecFrame -->
|
||||
A `VideoCodecFrame` represents a video frame both in raw and
|
||||
encoded form.
|
||||
|
@ -189,6 +257,16 @@ a `GDestroyNotify`
|
|||
<!-- impl VideoCodecFrame::fn unref -->
|
||||
Decreases the refcount of the frame. If the refcount reaches 0, the frame
|
||||
will be freed.
|
||||
<!-- struct VideoCodecFrameFlags -->
|
||||
Flags for `VideoCodecFrame`
|
||||
<!-- struct VideoCodecFrameFlags::const DECODE_ONLY -->
|
||||
is the frame only meant to be decoded
|
||||
<!-- struct VideoCodecFrameFlags::const SYNC_POINT -->
|
||||
is the frame a synchronization point (keyframe)
|
||||
<!-- struct VideoCodecFrameFlags::const FORCE_KEYFRAME -->
|
||||
should the output frame be made a keyframe
|
||||
<!-- struct VideoCodecFrameFlags::const FORCE_KEYFRAME_HEADERS -->
|
||||
should the encoder output stream headers
|
||||
<!-- struct VideoCodecState -->
|
||||
Structure representing the state of an incoming or outgoing video
|
||||
stream for encoders and decoders.
|
||||
|
@ -681,6 +759,18 @@ handler with `GST_PAD_SET_ACCEPT_INTERSECT` and
|
|||
`GST_PAD_SET_ACCEPT_TEMPLATE`
|
||||
## `use_`
|
||||
if the default pad accept-caps query handling should be used
|
||||
<!-- trait VideoDecoderExt::fn get_property_max_errors -->
|
||||
Maximum number of tolerated consecutive decode errors. See
|
||||
`VideoDecoderExt::set_max_errors` for more details.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
<!-- trait VideoDecoderExt::fn set_property_max_errors -->
|
||||
Maximum number of tolerated consecutive decode errors. See
|
||||
`VideoDecoderExt::set_max_errors` for more details.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
<!-- trait VideoDecoderExt::fn get_property_qos -->
|
||||
If set to `true` the decoder will handle QoS events received
|
||||
from downstream elements.
|
||||
|
@ -888,6 +978,16 @@ a `VideoCodecFrame`
|
|||
# Returns
|
||||
|
||||
max decoding time.
|
||||
<!-- trait VideoEncoderExt::fn get_min_force_key_unit_interval -->
|
||||
Returns the minimum force-keyunit interval, see `VideoEncoderExt::set_min_force_key_unit_interval`
|
||||
for more details.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
|
||||
# Returns
|
||||
|
||||
the minimum force-keyunit interval
|
||||
<!-- trait VideoEncoderExt::fn get_oldest_frame -->
|
||||
Get the oldest unfinished pending `VideoCodecFrame`
|
||||
|
||||
|
@ -954,6 +1054,15 @@ Informs baseclass of encoding latency.
|
|||
minimum latency
|
||||
## `max_latency`
|
||||
maximum latency
|
||||
<!-- trait VideoEncoderExt::fn set_min_force_key_unit_interval -->
|
||||
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.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
## `interval`
|
||||
minimum interval
|
||||
<!-- trait VideoEncoderExt::fn set_min_pts -->
|
||||
Request minimal value for PTS passed to handle_frame.
|
||||
|
||||
|
@ -995,6 +1104,18 @@ Feature: `v1_14`
|
|||
|
||||
## `enabled`
|
||||
the new qos value.
|
||||
<!-- trait VideoEncoderExt::fn get_property_min_force_key_unit_interval -->
|
||||
Minimum interval between force-keyunit requests in nanoseconds. See
|
||||
`VideoEncoderExt::set_min_force_key_unit_interval` for more details.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
<!-- trait VideoEncoderExt::fn set_property_min_force_key_unit_interval -->
|
||||
Minimum interval between force-keyunit requests in nanoseconds. See
|
||||
`VideoEncoderExt::set_min_force_key_unit_interval` for more details.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
<!-- enum VideoFieldOrder -->
|
||||
Field order of interlaced content. This is only valid for
|
||||
interlace-mode=interleaved and not interlace-mode=mixed. In the case of
|
||||
|
@ -1019,6 +1140,16 @@ to implement frame dropping.
|
|||
# Implements
|
||||
|
||||
[`gst_base::BaseTransformExt`](../gst_base/trait.BaseTransformExt.html), [`gst::ElementExt`](../gst/trait.ElementExt.html), [`gst::ObjectExt`](../gst/trait.ObjectExt.html), [`glib::object::ObjectExt`](../glib/object/trait.ObjectExt.html)
|
||||
<!-- struct VideoFlags -->
|
||||
Extra video flags
|
||||
<!-- struct VideoFlags::const NONE -->
|
||||
no flags
|
||||
<!-- struct VideoFlags::const VARIABLE_FPS -->
|
||||
a variable fps is selected, fps_n and fps_d
|
||||
denote the maximum fps of the video
|
||||
<!-- struct VideoFlags::const PREMULTIPLIED_ALPHA -->
|
||||
Each color has been scaled by the alpha
|
||||
value.
|
||||
<!-- enum VideoFormat -->
|
||||
Enum value describing the most common video formats.
|
||||
|
||||
|
@ -1221,6 +1352,63 @@ packed 4:2:2 YUV, 12 bits per channel (Y-U-Y-V) (Since: 1.18)
|
|||
packed 4:4:4:4 YUV, 12 bits per channel(U-Y-V-A...) (Since: 1.18)
|
||||
<!-- enum VideoFormat::variant Y412Le -->
|
||||
packed 4:4:4:4 YUV, 12 bits per channel(U-Y-V-A...) (Since: 1.18)
|
||||
<!-- struct VideoFormatFlags -->
|
||||
The different video flags that a format info can have.
|
||||
<!-- struct VideoFormatFlags::const YUV -->
|
||||
The video format is YUV, components are numbered
|
||||
0=Y, 1=U, 2=V.
|
||||
<!-- struct VideoFormatFlags::const RGB -->
|
||||
The video format is RGB, components are numbered
|
||||
0=R, 1=G, 2=B.
|
||||
<!-- struct VideoFormatFlags::const GRAY -->
|
||||
The video is gray, there is one gray component
|
||||
with index 0.
|
||||
<!-- struct VideoFormatFlags::const ALPHA -->
|
||||
The video format has an alpha components with
|
||||
the number 3.
|
||||
<!-- struct VideoFormatFlags::const LE -->
|
||||
The video format has data stored in little
|
||||
endianness.
|
||||
<!-- struct VideoFormatFlags::const PALETTE -->
|
||||
The video format has a palette. The palette
|
||||
is stored in the second plane and indexes are stored in the first plane.
|
||||
<!-- struct VideoFormatFlags::const COMPLEX -->
|
||||
The video format has a complex layout that
|
||||
can't be described with the usual information in the `VideoFormatInfo`.
|
||||
<!-- struct VideoFormatFlags::const UNPACK -->
|
||||
This format can be used in a
|
||||
`GstVideoFormatUnpack` and `GstVideoFormatPack` function.
|
||||
<!-- struct VideoFormatFlags::const TILED -->
|
||||
The format is tiled, there is tiling information
|
||||
in the last plane.
|
||||
<!-- struct VideoFrameFlags -->
|
||||
Extra video frame flags
|
||||
<!-- struct VideoFrameFlags::const NONE -->
|
||||
no flags
|
||||
<!-- struct VideoFrameFlags::const INTERLACED -->
|
||||
The video frame is interlaced. In mixed
|
||||
interlace-mode, this flag specifies if the frame is interlaced or
|
||||
progressive.
|
||||
<!-- struct VideoFrameFlags::const TFF -->
|
||||
The video frame has the top field first
|
||||
<!-- struct VideoFrameFlags::const RFF -->
|
||||
The video frame has the repeat flag
|
||||
<!-- struct VideoFrameFlags::const ONEFIELD -->
|
||||
The video frame has one field
|
||||
<!-- struct VideoFrameFlags::const MULTIPLE_VIEW -->
|
||||
The video contains one or
|
||||
more non-mono views
|
||||
<!-- struct VideoFrameFlags::const FIRST_IN_BUNDLE -->
|
||||
The video frame is the first
|
||||
in a set of corresponding views provided as sequential frames.
|
||||
<!-- struct VideoFrameFlags::const TOP_FIELD -->
|
||||
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).
|
||||
<!-- struct VideoFrameFlags::const BOTTOM_FIELD -->
|
||||
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).
|
||||
<!-- enum VideoGammaMode -->
|
||||
<!-- enum VideoGammaMode::variant None -->
|
||||
disable gamma handling
|
||||
|
@ -1396,6 +1584,42 @@ use the output color matrix to convert
|
|||
to and from R'G'B
|
||||
<!-- enum VideoMatrixMode::variant None -->
|
||||
disable color matrix conversion.
|
||||
<!-- struct VideoMultiviewFlags -->
|
||||
GstVideoMultiviewFlags are used to indicate extra properties of a
|
||||
stereo/multiview stream beyond the frame layout and buffer mapping
|
||||
that is conveyed in the `VideoMultiviewMode`.
|
||||
<!-- struct VideoMultiviewFlags::const NONE -->
|
||||
No flags
|
||||
<!-- struct VideoMultiviewFlags::const RIGHT_VIEW_FIRST -->
|
||||
For stereo streams, the
|
||||
normal arrangement of left and right views is reversed.
|
||||
<!-- struct VideoMultiviewFlags::const LEFT_FLIPPED -->
|
||||
The left view is vertically
|
||||
mirrored.
|
||||
<!-- struct VideoMultiviewFlags::const LEFT_FLOPPED -->
|
||||
The left view is horizontally
|
||||
mirrored.
|
||||
<!-- struct VideoMultiviewFlags::const RIGHT_FLIPPED -->
|
||||
The right view is
|
||||
vertically mirrored.
|
||||
<!-- struct VideoMultiviewFlags::const RIGHT_FLOPPED -->
|
||||
The right view is
|
||||
horizontally mirrored.
|
||||
<!-- struct VideoMultiviewFlags::const HALF_ASPECT -->
|
||||
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
|
||||
is used for overriding input layout interpretation
|
||||
by adjusting pixel-aspect-ratio.
|
||||
For side-by-side, column interleaved or checkerboard packings, the
|
||||
pixel width will be doubled. For row interleaved and top-bottom
|
||||
encodings, pixel height will be doubled.
|
||||
<!-- struct VideoMultiviewFlags::const MIXED_MONO -->
|
||||
The video stream contains both
|
||||
mono and multiview portions, signalled on each buffer by the
|
||||
absence or presence of the `VideoBufferFlags::MultipleView`
|
||||
buffer flag.
|
||||
<!-- enum VideoMultiviewFramePacking -->
|
||||
`VideoMultiviewFramePacking` represents the subset of `VideoMultiviewMode`
|
||||
values that can be applied to any video frame without needing extra metadata.
|
||||
|
@ -1694,13 +1918,13 @@ main (int argc, char **argv)
|
|||
|
||||
|
||||
```text
|
||||
#include <glib.h>
|
||||
#include <gst/gst.h>
|
||||
#include <gst/video/videooverlay.h>
|
||||
#include <glib.h>;
|
||||
#include <gst/gst.h>;
|
||||
#include <gst/video/videooverlay.h>;
|
||||
|
||||
#include <QApplication>
|
||||
#include <QTimer>
|
||||
#include <QWidget>
|
||||
#include <QApplication>;
|
||||
#include <QTimer>;
|
||||
#include <QWidget>;
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
|
@ -1844,6 +2068,28 @@ 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.
|
||||
## `handle`
|
||||
a handle referencing the window.
|
||||
<!-- struct VideoOverlayFormatFlags -->
|
||||
Overlay format flags.
|
||||
<!-- struct VideoOverlayFormatFlags::const NONE -->
|
||||
no flags
|
||||
<!-- struct VideoOverlayFormatFlags::const PREMULTIPLIED_ALPHA -->
|
||||
RGB are premultiplied by A/255.
|
||||
<!-- struct VideoOverlayFormatFlags::const GLOBAL_ALPHA -->
|
||||
a global-alpha value != 1 is set.
|
||||
<!-- struct VideoPackFlags -->
|
||||
The different flags that can be used when packing and unpacking.
|
||||
<!-- struct VideoPackFlags::const NONE -->
|
||||
No flag
|
||||
<!-- struct VideoPackFlags::const TRUNCATE_RANGE -->
|
||||
When the source has a smaller depth
|
||||
than the target format, set the least significant bits of the target
|
||||
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.
|
||||
<!-- struct VideoPackFlags::const INTERLACED -->
|
||||
The source is interlaced. The unpacked
|
||||
format will be interlaced as well with each line containing
|
||||
information from alternating fields. (Since: 1.2)
|
||||
<!-- enum VideoPrimariesMode -->
|
||||
Different primaries conversion modes
|
||||
<!-- enum VideoPrimariesMode::variant None -->
|
||||
|
@ -2200,6 +2446,18 @@ field 2
|
|||
':' for non-drop-frame, non-interlaced content and for non-drop-frame
|
||||
interlaced field 2
|
||||
'.' for non-drop-frame interlaced field 1
|
||||
<!-- struct VideoTimeCodeFlags -->
|
||||
Flags related to the time code information.
|
||||
For drop frame, only 30000/1001 and 60000/1001 frame rates are supported.
|
||||
<!-- struct VideoTimeCodeFlags::const NONE -->
|
||||
No flags
|
||||
<!-- struct VideoTimeCodeFlags::const DROP_FRAME -->
|
||||
Whether we have drop frame rate
|
||||
<!-- struct VideoTimeCodeFlags::const INTERLACED -->
|
||||
Whether we have interlaced video
|
||||
|
||||
Feature: `v1_10`
|
||||
|
||||
<!-- struct VideoTimeCodeInterval -->
|
||||
A representation of a difference between two `VideoTimeCode` instances.
|
||||
Will not necessarily correspond to a real timecode (e.g. 00:00:10;00)
|
||||
|
|
|
@ -485,6 +485,20 @@ The messages are converted to an ELEMENT message with the bin as the
|
|||
source. The structure of the message is named 'GstBinForwarded' and contains
|
||||
a field named 'message' of type GST_TYPE_MESSAGE that contains the original
|
||||
forwarded message.
|
||||
<!-- struct BinFlags -->
|
||||
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 ().
|
||||
<!-- struct BinFlags::const NO_RESYNC -->
|
||||
don't resync a state change when elements are
|
||||
added or linked in the bin (Since: 1.0.5)
|
||||
<!-- struct BinFlags::const STREAMS_AWARE -->
|
||||
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)
|
||||
<!-- struct BinFlags::const LAST -->
|
||||
the last enum in the series of flags for bins.
|
||||
Derived classes can use this as first value in a list of flags.
|
||||
<!-- struct Buffer -->
|
||||
Buffers are the basic unit of data transfer in GStreamer. They contain the
|
||||
timing and offset along with other arbitrary metadata that is associated
|
||||
|
@ -1000,6 +1014,17 @@ a pointer to the maxsize
|
|||
# Returns
|
||||
|
||||
total size of `length` memory blocks starting at `idx` in `self`.
|
||||
<!-- impl Buffer::fn has_flags -->
|
||||
Gives the status of a specific flag on a buffer.
|
||||
|
||||
Feature: `v1_10`
|
||||
|
||||
## `flags`
|
||||
the `BufferFlags` flag to check.
|
||||
|
||||
# Returns
|
||||
|
||||
`true` if all flags in `flags` are found on `self`.
|
||||
<!-- impl Buffer::fn insert_memory -->
|
||||
Insert the memory block `mem` to `self` at `idx`. This function takes ownership
|
||||
of `mem` and thus doesn't increase its refcount.
|
||||
|
@ -1303,6 +1328,82 @@ pointer to a `Buffer` that will
|
|||
# Returns
|
||||
|
||||
`true` when `obuf` was different from `nbuf`.
|
||||
<!-- struct BufferCopyFlags -->
|
||||
A set of flags that can be provided to the `Buffer::copy_into`
|
||||
function to specify which items should be copied.
|
||||
<!-- struct BufferCopyFlags::const NONE -->
|
||||
copy nothing
|
||||
<!-- struct BufferCopyFlags::const FLAGS -->
|
||||
flag indicating that buffer flags should be copied
|
||||
<!-- struct BufferCopyFlags::const TIMESTAMPS -->
|
||||
flag indicating that buffer pts, dts,
|
||||
duration, offset and offset_end should be copied
|
||||
<!-- struct BufferCopyFlags::const META -->
|
||||
flag indicating that buffer meta should be
|
||||
copied
|
||||
<!-- struct BufferCopyFlags::const MEMORY -->
|
||||
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 `BufferCopyFlags::Deep` to force a real copy.
|
||||
<!-- struct BufferCopyFlags::const MERGE -->
|
||||
flag indicating that buffer memory should be
|
||||
merged
|
||||
<!-- struct BufferCopyFlags::const DEEP -->
|
||||
flag indicating that memory should always be
|
||||
copied instead of reffed (Since: 1.2)
|
||||
<!-- struct BufferFlags -->
|
||||
A set of buffer flags used to describe properties of a `Buffer`.
|
||||
<!-- struct BufferFlags::const LIVE -->
|
||||
the buffer is live data and should be discarded in
|
||||
the PAUSED state.
|
||||
<!-- struct BufferFlags::const DECODE_ONLY -->
|
||||
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.
|
||||
<!-- struct BufferFlags::const DISCONT -->
|
||||
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.
|
||||
<!-- struct BufferFlags::const RESYNC -->
|
||||
the buffer timestamps might have a discontinuity
|
||||
and this buffer is a good point to resynchronize.
|
||||
<!-- struct BufferFlags::const CORRUPTED -->
|
||||
the buffer data is corrupted.
|
||||
<!-- struct BufferFlags::const MARKER -->
|
||||
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.
|
||||
<!-- struct BufferFlags::const HEADER -->
|
||||
the buffer contains header information that is
|
||||
needed to decode the following data.
|
||||
<!-- struct BufferFlags::const GAP -->
|
||||
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).
|
||||
<!-- struct BufferFlags::const DROPPABLE -->
|
||||
the buffer can be dropped without breaking the
|
||||
stream, for example to reduce bandwidth.
|
||||
<!-- struct BufferFlags::const DELTA_UNIT -->
|
||||
this unit cannot be decoded independently.
|
||||
<!-- struct BufferFlags::const TAG_MEMORY -->
|
||||
this flag is set when memory of the buffer
|
||||
is added/removed
|
||||
<!-- struct BufferFlags::const SYNC_AFTER -->
|
||||
Elements which write to disk or permanent
|
||||
storage should ensure the data is synced after
|
||||
writing the contents of this buffer. (Since: 1.6)
|
||||
<!-- struct BufferFlags::const NON_DROPPABLE -->
|
||||
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)
|
||||
<!-- struct BufferFlags::const LAST -->
|
||||
additional media specific flags can be added starting from
|
||||
this flag.
|
||||
<!-- struct BufferList -->
|
||||
Buffer lists are an object containing a list of buffers.
|
||||
|
||||
|
@ -1716,6 +1817,21 @@ Enable or disable the flushing state of a `self` without freeing or
|
|||
allocating buffers.
|
||||
## `flushing`
|
||||
whether to start or stop flushing
|
||||
<!-- struct BufferPoolAcquireFlags -->
|
||||
Additional flags to control the allocation of a buffer
|
||||
<!-- struct BufferPoolAcquireFlags::const NONE -->
|
||||
no flags
|
||||
<!-- struct BufferPoolAcquireFlags::const KEY_UNIT -->
|
||||
buffer is keyframe
|
||||
<!-- struct BufferPoolAcquireFlags::const DONTWAIT -->
|
||||
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 `FlowReturn::Eos` instead of blocking.
|
||||
<!-- struct BufferPoolAcquireFlags::const DISCONT -->
|
||||
buffer is discont
|
||||
<!-- struct BufferPoolAcquireFlags::const LAST -->
|
||||
last flag, subclasses can use private flags
|
||||
starting from this value.
|
||||
<!-- enum BufferingMode -->
|
||||
The different types of buffering methods.
|
||||
<!-- enum BufferingMode::variant Stream -->
|
||||
|
@ -3443,6 +3559,25 @@ The type of the clock entry
|
|||
a single shot timeout
|
||||
<!-- enum ClockEntryType::variant Periodic -->
|
||||
a periodic timeout request
|
||||
<!-- struct ClockFlags -->
|
||||
The capabilities of this clock
|
||||
<!-- struct ClockFlags::const CAN_DO_SINGLE_SYNC -->
|
||||
clock can do a single sync timeout request
|
||||
<!-- struct ClockFlags::const CAN_DO_SINGLE_ASYNC -->
|
||||
clock can do a single async timeout request
|
||||
<!-- struct ClockFlags::const CAN_DO_PERIODIC_SYNC -->
|
||||
clock can do sync periodic timeout requests
|
||||
<!-- struct ClockFlags::const CAN_DO_PERIODIC_ASYNC -->
|
||||
clock can do async periodic timeout callbacks
|
||||
<!-- struct ClockFlags::const CAN_SET_RESOLUTION -->
|
||||
clock's resolution can be changed
|
||||
<!-- struct ClockFlags::const CAN_SET_MASTER -->
|
||||
clock can be slaved to a master clock
|
||||
<!-- struct ClockFlags::const NEEDS_STARTUP_SYNC -->
|
||||
clock needs to be synced before it can be used
|
||||
(Since: 1.6)
|
||||
<!-- struct ClockFlags::const LAST -->
|
||||
subclasses can add additional flags starting from this flag
|
||||
<!-- enum ClockReturn -->
|
||||
The return value of a clock operation.
|
||||
<!-- enum ClockReturn::variant Ok -->
|
||||
|
@ -3926,6 +4061,65 @@ a newly allocated string formatted according
|
|||
<!-- impl DateTime::fn unref -->
|
||||
Atomically decrements the reference count of `self` by one. When the
|
||||
reference count reaches zero, the structure is freed.
|
||||
<!-- struct DebugColorFlags -->
|
||||
These are some terminal style flags you can use when creating your
|
||||
debugging categories to make them stand out in debugging output.
|
||||
<!-- struct DebugColorFlags::const FG_BLACK -->
|
||||
Use black as foreground color.
|
||||
<!-- struct DebugColorFlags::const FG_RED -->
|
||||
Use red as foreground color.
|
||||
<!-- struct DebugColorFlags::const FG_GREEN -->
|
||||
Use green as foreground color.
|
||||
<!-- struct DebugColorFlags::const FG_YELLOW -->
|
||||
Use yellow as foreground color.
|
||||
<!-- struct DebugColorFlags::const FG_BLUE -->
|
||||
Use blue as foreground color.
|
||||
<!-- struct DebugColorFlags::const FG_MAGENTA -->
|
||||
Use magenta as foreground color.
|
||||
<!-- struct DebugColorFlags::const FG_CYAN -->
|
||||
Use cyan as foreground color.
|
||||
<!-- struct DebugColorFlags::const FG_WHITE -->
|
||||
Use white as foreground color.
|
||||
<!-- struct DebugColorFlags::const BG_BLACK -->
|
||||
Use black as background color.
|
||||
<!-- struct DebugColorFlags::const BG_RED -->
|
||||
Use red as background color.
|
||||
<!-- struct DebugColorFlags::const BG_GREEN -->
|
||||
Use green as background color.
|
||||
<!-- struct DebugColorFlags::const BG_YELLOW -->
|
||||
Use yellow as background color.
|
||||
<!-- struct DebugColorFlags::const BG_BLUE -->
|
||||
Use blue as background color.
|
||||
<!-- struct DebugColorFlags::const BG_MAGENTA -->
|
||||
Use magenta as background color.
|
||||
<!-- struct DebugColorFlags::const BG_CYAN -->
|
||||
Use cyan as background color.
|
||||
<!-- struct DebugColorFlags::const BG_WHITE -->
|
||||
Use white as background color.
|
||||
<!-- struct DebugColorFlags::const BOLD -->
|
||||
Make the output bold.
|
||||
<!-- struct DebugColorFlags::const UNDERLINE -->
|
||||
Underline the output.
|
||||
<!-- struct DebugGraphDetails -->
|
||||
Available details for pipeline graphs produced by GST_DEBUG_BIN_TO_DOT_FILE()
|
||||
and GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS().
|
||||
<!-- struct DebugGraphDetails::const MEDIA_TYPE -->
|
||||
show caps-name on edges
|
||||
<!-- struct DebugGraphDetails::const CAPS_DETAILS -->
|
||||
show caps-details on edges
|
||||
<!-- struct DebugGraphDetails::const NON_DEFAULT_PARAMS -->
|
||||
show modified parameters on
|
||||
elements
|
||||
<!-- struct DebugGraphDetails::const STATES -->
|
||||
show element states
|
||||
<!-- struct DebugGraphDetails::const FULL_PARAMS -->
|
||||
show full element parameter values even
|
||||
if they are very long
|
||||
<!-- struct DebugGraphDetails::const ALL -->
|
||||
show all the typical details that one might want
|
||||
<!-- struct DebugGraphDetails::const VERBOSE -->
|
||||
show all details regardless of how large or
|
||||
verbose they make the resulting output
|
||||
<!-- enum DebugLevel -->
|
||||
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.
|
||||
|
@ -5761,6 +5955,22 @@ a `ElementFactoryListType`
|
|||
# Returns
|
||||
|
||||
`true` if `self` is of `type_`.
|
||||
<!-- struct ElementFlags -->
|
||||
The standard flags that an element may have.
|
||||
<!-- struct ElementFlags::const LOCKED_STATE -->
|
||||
ignore state changes from parent
|
||||
<!-- struct ElementFlags::const SINK -->
|
||||
the element is a sink
|
||||
<!-- struct ElementFlags::const SOURCE -->
|
||||
the element is a source.
|
||||
<!-- struct ElementFlags::const PROVIDE_CLOCK -->
|
||||
the element can provide a clock
|
||||
<!-- struct ElementFlags::const REQUIRE_CLOCK -->
|
||||
the element requires a clock
|
||||
<!-- struct ElementFlags::const INDEXABLE -->
|
||||
the element can use an index
|
||||
<!-- struct ElementFlags::const LAST -->
|
||||
offset to define more flags
|
||||
<!-- struct Event -->
|
||||
The event class provides factory methods to construct events for sending
|
||||
and functions to query (parse) received events.
|
||||
|
@ -7021,6 +7231,11 @@ This function is most useful in language bindings and when subclassing
|
|||
function. Call this function directly after a call to g_object_new
|
||||
(GST_TYPE_GHOST_PAD, "direction", `dir`, ..., NULL).
|
||||
|
||||
# Deprecated
|
||||
|
||||
This function is deprecated since 1.18 and does nothing
|
||||
anymore.
|
||||
|
||||
# Returns
|
||||
|
||||
`true` if the construction succeeds, `false` otherwise.
|
||||
|
@ -7062,6 +7277,24 @@ used when the library doesn't accept settings.
|
|||
used when the library generated an encoding error.
|
||||
<!-- enum LibraryError::variant NumErrors -->
|
||||
the number of library error types.
|
||||
<!-- struct MemoryFlags -->
|
||||
Flags for wrapped memory.
|
||||
<!-- struct MemoryFlags::const READONLY -->
|
||||
memory is readonly. It is not allowed to map the
|
||||
memory with `MapFlags::Write`.
|
||||
<!-- struct MemoryFlags::const NO_SHARE -->
|
||||
memory must not be shared. Copies will have to be
|
||||
made when this memory needs to be shared between buffers.
|
||||
<!-- struct MemoryFlags::const ZERO_PREFIXED -->
|
||||
the memory prefix is filled with 0 bytes
|
||||
<!-- struct MemoryFlags::const ZERO_PADDED -->
|
||||
the memory padding is filled with 0 bytes
|
||||
<!-- struct MemoryFlags::const PHYSICALLY_CONTIGUOUS -->
|
||||
the memory is physically contiguous. (Since: 1.2)
|
||||
<!-- struct MemoryFlags::const NOT_MAPPABLE -->
|
||||
the memory can't be mapped via `Memory::map` without any preconditions. (Since: 1.2)
|
||||
<!-- struct MemoryFlags::const LAST -->
|
||||
first flag that can be used for custom purposes
|
||||
<!-- struct Message -->
|
||||
Messages are implemented as a subclass of `MiniObject` with a generic
|
||||
`Structure` as the content. This allows for writing custom messages without
|
||||
|
@ -7078,7 +7311,7 @@ The basic use pattern of posting a message on a `Bus` is as follows:
|
|||
```
|
||||
|
||||
A `Element` usually posts messages on the bus provided by the parent
|
||||
container using `ElementExt::post_message`.
|
||||
container using `Element::post_message`.
|
||||
<!-- impl Message::fn new_application -->
|
||||
Create a new application-typed message. GStreamer will never create these
|
||||
messages; they are a gift from us to you. Enjoy.
|
||||
|
@ -8487,7 +8720,7 @@ floating reference. Be aware that functions such as `GstBinExt::add` and
|
|||
`ElementExt::add_pad` take ownership of the floating reference.
|
||||
|
||||
In contrast to `gobject::Object` instances, `Object` adds a name property. The functions
|
||||
`GstObjectExt::set_name` and `GstObjectExt::get_name` are used to set/get the name
|
||||
`Object::set_name` and `GstObjectExt::get_name` are used to set/get the name
|
||||
of the object.
|
||||
|
||||
## controlled properties
|
||||
|
@ -8908,6 +9141,14 @@ property, we don't emit `gobject::Object::notify` and `Object::deep-notify`
|
|||
signals due to locking issues. In some cases one can use
|
||||
`Bin::element-added` or `Bin::element-removed` signals on the parent to
|
||||
achieve a similar effect.
|
||||
<!-- struct ObjectFlags -->
|
||||
The standard flags that an gstobject may have.
|
||||
<!-- struct ObjectFlags::const MAY_BE_LEAKED -->
|
||||
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)
|
||||
<!-- struct ObjectFlags::const LAST -->
|
||||
subclasses can add additional flags starting from this flag
|
||||
<!-- struct Pad -->
|
||||
A `Element` is linked to other elements via "pads", which are extremely
|
||||
light-weight generic link points.
|
||||
|
@ -10138,6 +10379,81 @@ direction is unknown.
|
|||
the pad is a source pad.
|
||||
<!-- enum PadDirection::variant Sink -->
|
||||
the pad is a sink pad.
|
||||
<!-- struct PadFlags -->
|
||||
Pad state flags
|
||||
<!-- struct PadFlags::const BLOCKED -->
|
||||
is dataflow on a pad blocked
|
||||
<!-- struct PadFlags::const FLUSHING -->
|
||||
is pad flushing
|
||||
<!-- struct PadFlags::const EOS -->
|
||||
is pad in EOS state
|
||||
<!-- struct PadFlags::const BLOCKING -->
|
||||
is pad currently blocking on a buffer or event
|
||||
<!-- struct PadFlags::const NEED_PARENT -->
|
||||
ensure that there is a parent object before calling
|
||||
into the pad callbacks.
|
||||
<!-- struct PadFlags::const NEED_RECONFIGURE -->
|
||||
the pad should be reconfigured/renegotiated.
|
||||
The flag has to be unset manually after
|
||||
reconfiguration happened.
|
||||
<!-- struct PadFlags::const PENDING_EVENTS -->
|
||||
the pad has pending events
|
||||
<!-- struct PadFlags::const FIXED_CAPS -->
|
||||
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.
|
||||
<!-- struct PadFlags::const PROXY_CAPS -->
|
||||
the default event and query handler will forward
|
||||
all events and queries to the internally linked pads
|
||||
instead of discarding them.
|
||||
<!-- struct PadFlags::const PROXY_ALLOCATION -->
|
||||
the default query handler will forward
|
||||
allocation queries to the internally linked pads
|
||||
instead of discarding them.
|
||||
<!-- struct PadFlags::const PROXY_SCHEDULING -->
|
||||
the default query handler will forward
|
||||
scheduling queries to the internally linked pads
|
||||
instead of discarding them.
|
||||
<!-- struct PadFlags::const ACCEPT_INTERSECT -->
|
||||
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.
|
||||
<!-- struct PadFlags::const ACCEPT_TEMPLATE -->
|
||||
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 `PadFlags::AcceptIntersect`. (Since: 1.6)
|
||||
<!-- struct PadFlags::const LAST -->
|
||||
offset to define more flags
|
||||
<!-- struct PadLinkCheck -->
|
||||
The amount of checking to be done when linking pads. `PadLinkCheck::Caps`
|
||||
and `PadLinkCheck::TemplateCaps` are mutually exclusive. If both are
|
||||
specified, expensive but safe `PadLinkCheck::Caps` are performed.
|
||||
|
||||
> Only disable some of the checks if you are 100% certain you know the link
|
||||
> will not fail because of hierarchy/caps compatibility failures. If uncertain,
|
||||
> use the default checks (`PadLinkCheck::Default`) or the regular methods
|
||||
> for linking the pads.
|
||||
<!-- struct PadLinkCheck::const NOTHING -->
|
||||
Don't check hierarchy or caps compatibility.
|
||||
<!-- struct PadLinkCheck::const HIERARCHY -->
|
||||
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.
|
||||
<!-- struct PadLinkCheck::const TEMPLATE_CAPS -->
|
||||
Check if the pads are compatible by using
|
||||
their template caps. This is much faster than `PadLinkCheck::Caps`, but
|
||||
would be unsafe e.g. if one pad has `GST_CAPS_ANY`.
|
||||
<!-- struct PadLinkCheck::const CAPS -->
|
||||
Check if the pads are compatible by comparing the
|
||||
caps returned by `PadExt::query_caps`.
|
||||
<!-- struct PadLinkCheck::const NO_RECONFIGURE -->
|
||||
Disables pushing a reconfigure event when pads are
|
||||
linked.
|
||||
<!-- struct PadLinkCheck::const DEFAULT -->
|
||||
The default checks done when linking
|
||||
pads (i.e. the ones used by `Pad::link`).
|
||||
<!-- enum PadLinkReturn -->
|
||||
Result values from gst_pad_link and friends.
|
||||
<!-- enum PadLinkReturn::variant Ok -->
|
||||
|
@ -10201,6 +10517,57 @@ Data has been handled in the probe and will not be
|
|||
`GST_PAD_PROBE_INFO_FLOW_RETURN`() accessor.
|
||||
Note that the resulting query must contain valid entries.
|
||||
Since: 1.6
|
||||
<!-- struct PadProbeType -->
|
||||
The different probing types that can occur. When either one of
|
||||
`PadProbeType::Idle` or `PadProbeType::Block` is used, the probe will be a
|
||||
blocking probe.
|
||||
<!-- struct PadProbeType::const INVALID -->
|
||||
invalid probe type
|
||||
<!-- struct PadProbeType::const IDLE -->
|
||||
probe idle pads and block while the callback is called
|
||||
<!-- struct PadProbeType::const BLOCK -->
|
||||
probe and block pads
|
||||
<!-- struct PadProbeType::const BUFFER -->
|
||||
probe buffers
|
||||
<!-- struct PadProbeType::const BUFFER_LIST -->
|
||||
probe buffer lists
|
||||
<!-- struct PadProbeType::const EVENT_DOWNSTREAM -->
|
||||
probe downstream events
|
||||
<!-- struct PadProbeType::const EVENT_UPSTREAM -->
|
||||
probe upstream events
|
||||
<!-- struct PadProbeType::const EVENT_FLUSH -->
|
||||
probe flush events. This probe has to be
|
||||
explicitly enabled and is not included in the
|
||||
@`PadProbeType::EventDownstream` or
|
||||
@`PadProbeType::EventUpstream` probe types.
|
||||
<!-- struct PadProbeType::const QUERY_DOWNSTREAM -->
|
||||
probe downstream queries
|
||||
<!-- struct PadProbeType::const QUERY_UPSTREAM -->
|
||||
probe upstream queries
|
||||
<!-- struct PadProbeType::const PUSH -->
|
||||
probe push
|
||||
<!-- struct PadProbeType::const PULL -->
|
||||
probe pull
|
||||
<!-- struct PadProbeType::const BLOCKING -->
|
||||
probe and block at the next opportunity, at data flow or when idle
|
||||
<!-- struct PadProbeType::const DATA_DOWNSTREAM -->
|
||||
probe downstream data (buffers, buffer lists, and events)
|
||||
<!-- struct PadProbeType::const DATA_UPSTREAM -->
|
||||
probe upstream data (events)
|
||||
<!-- struct PadProbeType::const DATA_BOTH -->
|
||||
probe upstream and downstream data (buffers, buffer lists, and events)
|
||||
<!-- struct PadProbeType::const BLOCK_DOWNSTREAM -->
|
||||
probe and block downstream data (buffers, buffer lists, and events)
|
||||
<!-- struct PadProbeType::const BLOCK_UPSTREAM -->
|
||||
probe and block upstream data (events)
|
||||
<!-- struct PadProbeType::const EVENT_BOTH -->
|
||||
probe upstream and downstream events
|
||||
<!-- struct PadProbeType::const QUERY_BOTH -->
|
||||
probe upstream and downstream queries
|
||||
<!-- struct PadProbeType::const ALL_BOTH -->
|
||||
probe upstream events and queries and downstream buffers, buffer lists, events and queries
|
||||
<!-- struct PadProbeType::const SCHEDULING -->
|
||||
probe push and pull
|
||||
<!-- struct PadTemplate -->
|
||||
Padtemplates describe the possible media types a pad or an elementfactory can
|
||||
handle. This allows for both inspection of handled types before loading the
|
||||
|
@ -10323,10 +10690,30 @@ Gets the capabilities of the pad template.
|
|||
|
||||
the `Caps` of the pad template.
|
||||
Unref after usage.
|
||||
<!-- impl PadTemplate::fn get_documentation_caps -->
|
||||
See `PadTemplate::set_documentation_caps`.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
|
||||
# Returns
|
||||
|
||||
The caps to document. For convenience, this will return
|
||||
`PadTemplate::get_caps` when no documentation caps were set.
|
||||
<!-- impl PadTemplate::fn pad_created -->
|
||||
Emit the pad-created signal for this template when created by this pad.
|
||||
## `pad`
|
||||
the `Pad` that created it
|
||||
<!-- impl PadTemplate::fn set_documentation_caps -->
|
||||
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.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
## `caps`
|
||||
the documented capabilities
|
||||
<!-- impl PadTemplate::fn connect_pad_created -->
|
||||
This signal is fired when an element creates a pad from this template.
|
||||
## `pad`
|
||||
|
@ -10372,6 +10759,9 @@ a newly-allocated parse context. Free
|
|||
<!-- impl ParseContext::fn copy -->
|
||||
Copies the `self`.
|
||||
|
||||
Feature: `v1_12_1`
|
||||
|
||||
|
||||
# Returns
|
||||
|
||||
A copied `ParseContext`
|
||||
|
@ -10405,6 +10795,21 @@ An empty bin was specified.
|
|||
An empty description was specified
|
||||
<!-- enum ParseError::variant DelayedLink -->
|
||||
A delayed link did not get resolved.
|
||||
<!-- struct ParseFlags -->
|
||||
Parsing options.
|
||||
<!-- struct ParseFlags::const NONE -->
|
||||
Do not use any special parsing options.
|
||||
<!-- struct ParseFlags::const FATAL_ERRORS -->
|
||||
Always return `None` when an error occurs
|
||||
(default behaviour is to return partially constructed bins or elements
|
||||
in some cases)
|
||||
<!-- struct ParseFlags::const NO_SINGLE_ELEMENT_BINS -->
|
||||
If a bin only has a single element,
|
||||
just return the element.
|
||||
<!-- struct ParseFlags::const PLACE_IN_BIN -->
|
||||
If more than one toplevel element is described
|
||||
by the pipeline description string, put them in a `Bin` instead of a
|
||||
`Pipeline`. (Since: 1.10)
|
||||
<!-- struct Pipeline -->
|
||||
A `Pipeline` is a special `Bin` used as the toplevel container for
|
||||
the filter graph. The `Pipeline` will manage the selection and
|
||||
|
@ -10618,6 +11023,12 @@ see `PipelineExt::set_delay` for more information on this option.
|
|||
Latency to configure on the pipeline. See `PipelineExt::set_latency`.
|
||||
<!-- trait PipelineExt::fn set_property_latency -->
|
||||
Latency to configure on the pipeline. See `PipelineExt::set_latency`.
|
||||
<!-- struct PipelineFlags -->
|
||||
Pipeline flags
|
||||
<!-- struct PipelineFlags::const FIXED_CLOCK -->
|
||||
this pipeline works with a fixed clock
|
||||
<!-- struct PipelineFlags::const LAST -->
|
||||
offset to define more flags
|
||||
<!-- struct Plugin -->
|
||||
GStreamer is extensible, so `Element` instances can be loaded at runtime.
|
||||
A plugin system can provide one or more of the basic GStreamer
|
||||
|
@ -10895,6 +11306,35 @@ the `self`.
|
|||
The cache is flushed every time the registry is rebuilt.
|
||||
## `cache_data`
|
||||
a structure containing the data to cache
|
||||
<!-- struct PluginAPIFlags -->
|
||||
<!-- struct PluginAPIFlags::const MEMBERS -->
|
||||
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.
|
||||
|
||||
Feature: `v1_18`
|
||||
|
||||
<!-- struct PluginDependencyFlags -->
|
||||
Flags used in connection with `Plugin::add_dependency`.
|
||||
<!-- struct PluginDependencyFlags::const NONE -->
|
||||
no special flags
|
||||
<!-- struct PluginDependencyFlags::const RECURSE -->
|
||||
recurse into subdirectories
|
||||
<!-- struct PluginDependencyFlags::const PATHS_ARE_DEFAULT_ONLY -->
|
||||
use paths
|
||||
argument only if none of the environment variables is set
|
||||
<!-- struct PluginDependencyFlags::const FILE_NAME_IS_SUFFIX -->
|
||||
interpret
|
||||
filename argument as filter suffix and check all matching files in
|
||||
the directory
|
||||
<!-- struct PluginDependencyFlags::const FILE_NAME_IS_PREFIX -->
|
||||
interpret
|
||||
filename argument as filter prefix and check all matching files in
|
||||
the directory. Since: 1.8.
|
||||
<!-- struct PluginDependencyFlags::const PATHS_ARE_RELATIVE_TO_EXE -->
|
||||
interpret
|
||||
non-absolute paths as relative to the main executable directory. Since
|
||||
1.14.
|
||||
<!-- enum PluginError -->
|
||||
The plugin loading errors
|
||||
<!-- enum PluginError::variant Module -->
|
||||
|
@ -11010,6 +11450,12 @@ Specifies a rank for a plugin feature, so that autoplugging uses
|
|||
the most appropriate feature.
|
||||
## `rank`
|
||||
rank value - higher number means more priority rank
|
||||
<!-- struct PluginFlags -->
|
||||
The plugin loading state
|
||||
<!-- struct PluginFlags::const CACHED -->
|
||||
Temporarily loaded plugins
|
||||
<!-- struct PluginFlags::const BLACKLISTED -->
|
||||
The plugin won't be scanned (again)
|
||||
<!-- struct Preset -->
|
||||
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.
|
||||
|
@ -12661,6 +13107,118 @@ A `Segment`
|
|||
<!-- impl Sample::fn unref -->
|
||||
Decreases the refcount of the sample. If the refcount reaches 0, the
|
||||
sample will be freed.
|
||||
<!-- struct SchedulingFlags -->
|
||||
The different scheduling flags.
|
||||
<!-- struct SchedulingFlags::const SEEKABLE -->
|
||||
if seeking is possible
|
||||
<!-- struct SchedulingFlags::const SEQUENTIAL -->
|
||||
if sequential access is recommended
|
||||
<!-- struct SchedulingFlags::const BANDWIDTH_LIMITED -->
|
||||
if bandwidth is limited and buffering possible (since 1.2)
|
||||
<!-- struct SeekFlags -->
|
||||
Flags to be used with `Element::seek` or `Event::new_seek`. All flags
|
||||
can be used together.
|
||||
|
||||
A non flushing seek might take some time to perform as the currently
|
||||
playing data in the pipeline will not be cleared.
|
||||
|
||||
An accurate seek might be slower for formats that don't have any indexes
|
||||
or timestamp markers in the stream. Specifying this flag might require a
|
||||
complete scan of the file in those cases.
|
||||
|
||||
When performing a segment seek: after the playback of the segment completes,
|
||||
no EOS will be emitted by the element that performed the seek, but a
|
||||
`MessageType::SegmentDone` message will be posted on the bus by the element.
|
||||
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
|
||||
`SeekFlags::InstantRateChange` 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 > 1.0) or fast reverse (rate < -1.0) trickmode
|
||||
playback, the `SeekFlags::Trickmode` flag can be used to instruct decoders
|
||||
and demuxers to adjust the playback rate by skipping frames. This can improve
|
||||
performance and decrease CPU usage because not all frames need to be decoded.
|
||||
|
||||
Beyond that, the `SeekFlags::TrickmodeKeyUnits` flag can be used to
|
||||
request that decoders skip all frames except key units, and
|
||||
`SeekFlags::TrickmodeNoAudio` flags can be used to request that audio
|
||||
decoders do no decoding at all, and simple output silence.
|
||||
|
||||
The `SeekFlags::SnapBefore` flag can be used to snap to the previous
|
||||
relevant location, and the `SeekFlags::SnapAfter` flag can be used to
|
||||
select the next relevant location. If `SeekFlags::KeyUnit` is specified,
|
||||
the relevant location is a keyframe. If both flags are specified, the nearest
|
||||
of these locations will be selected. If none are specified, the implementation is
|
||||
free to select whichever it wants.
|
||||
|
||||
The before and after here are in running time, so when playing backwards,
|
||||
the next location refers to the one that will played in next, and not the
|
||||
one that is located after in the actual source stream.
|
||||
|
||||
Also see part-seeking.txt in the GStreamer design documentation for more
|
||||
details on the meaning of these flags and the behaviour expected of
|
||||
elements that handle them.
|
||||
<!-- struct SeekFlags::const NONE -->
|
||||
no flag
|
||||
<!-- struct SeekFlags::const FLUSH -->
|
||||
flush pipeline
|
||||
<!-- struct SeekFlags::const ACCURATE -->
|
||||
accurate position is requested, this might
|
||||
be considerably slower for some formats.
|
||||
<!-- struct SeekFlags::const KEY_UNIT -->
|
||||
seek to the nearest keyframe. This might be
|
||||
faster but less accurate.
|
||||
<!-- struct SeekFlags::const SEGMENT -->
|
||||
perform a segment seek.
|
||||
<!-- struct SeekFlags::const TRICKMODE -->
|
||||
when doing fast forward or fast reverse playback, allow
|
||||
elements to skip frames instead of generating all
|
||||
frames. (Since: 1.6)
|
||||
<!-- struct SeekFlags::const SKIP -->
|
||||
Deprecated backward compatibility flag, replaced
|
||||
by `SeekFlags::Trickmode`
|
||||
<!-- struct SeekFlags::const SNAP_BEFORE -->
|
||||
go to a location before the requested position,
|
||||
if `SeekFlags::KeyUnit` this means the keyframe at or before
|
||||
the requested position the one at or before the seek target.
|
||||
<!-- struct SeekFlags::const SNAP_AFTER -->
|
||||
go to a location after the requested position,
|
||||
if `SeekFlags::KeyUnit` this means the keyframe at of after the
|
||||
requested position.
|
||||
<!-- struct SeekFlags::const SNAP_NEAREST -->
|
||||
go to a position near the requested position,
|
||||
if `SeekFlags::KeyUnit` this means the keyframe closest
|
||||
to the requested position, if both keyframes are at an equal
|
||||
distance, behaves like `SeekFlags::SnapBefore`.
|
||||
<!-- struct SeekFlags::const TRICKMODE_KEY_UNITS -->
|
||||
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)
|
||||
<!-- struct SeekFlags::const TRICKMODE_NO_AUDIO -->
|
||||
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)
|
||||
<!-- struct SeekFlags::const TRICKMODE_FORWARD_PREDICTED -->
|
||||
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)
|
||||
<!-- struct SeekFlags::const INSTANT_RATE_CHANGE -->
|
||||
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)
|
||||
<!-- enum SeekType -->
|
||||
The different types of seek events. When constructing a seek event with
|
||||
`Event::new_seek` or when doing gst_segment_do_seek ().
|
||||
|
@ -13043,6 +13601,42 @@ result stream-time
|
|||
# Returns
|
||||
|
||||
a 1 or -1 on success, 0 on failure.
|
||||
<!-- struct SegmentFlags -->
|
||||
Flags for the GstSegment structure. Currently mapped to the corresponding
|
||||
values of the seek flags.
|
||||
<!-- struct SegmentFlags::const NONE -->
|
||||
no flags
|
||||
<!-- struct SegmentFlags::const RESET -->
|
||||
reset the pipeline running_time to the segment
|
||||
running_time
|
||||
<!-- struct SegmentFlags::const TRICKMODE -->
|
||||
perform skip playback (Since: 1.6)
|
||||
<!-- struct SegmentFlags::const SKIP -->
|
||||
Deprecated backward compatibility flag, replaced
|
||||
by `SegmentFlags::Trickmode`
|
||||
<!-- struct SegmentFlags::const SEGMENT -->
|
||||
send SEGMENT_DONE instead of EOS
|
||||
<!-- struct SegmentFlags::const TRICKMODE_KEY_UNITS -->
|
||||
Decode only keyframes, where
|
||||
possible (Since: 1.6)
|
||||
<!-- struct SegmentFlags::const TRICKMODE_FORWARD_PREDICTED -->
|
||||
Decode only keyframes or forward
|
||||
predicted frames, where possible (Since: 1.18)
|
||||
<!-- struct SegmentFlags::const TRICKMODE_NO_AUDIO -->
|
||||
Do not decode any audio, where
|
||||
possible (Since: 1.6)
|
||||
<!-- struct StackTraceFlags -->
|
||||
<!-- struct StackTraceFlags::const NONE -->
|
||||
Try to retrieve the minimum information
|
||||
available, which may be none on some platforms
|
||||
(Since: 1.18)
|
||||
<!-- struct StackTraceFlags::const FULL -->
|
||||
Try to retrieve as much information as possible,
|
||||
including source information when getting the
|
||||
stack trace
|
||||
|
||||
Feature: `v1_12`
|
||||
|
||||
<!-- enum State -->
|
||||
The possible states an element can be in. States can be changed using
|
||||
`Element::set_state` and checked using `Element::get_state`.
|
||||
|
@ -13395,6 +13989,23 @@ used when the stream is encrypted and
|
|||
can't be decrypted because no suitable key is available.
|
||||
<!-- enum StreamError::variant NumErrors -->
|
||||
the number of stream error types.
|
||||
<!-- struct StreamFlags -->
|
||||
<!-- struct StreamFlags::const NONE -->
|
||||
This stream has no special attributes
|
||||
<!-- struct StreamFlags::const SPARSE -->
|
||||
This stream is a sparse stream (e.g. a subtitle
|
||||
stream), data may flow only in irregular intervals with large gaps in
|
||||
between.
|
||||
<!-- struct StreamFlags::const SELECT -->
|
||||
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.
|
||||
<!-- struct StreamFlags::const UNSELECT -->
|
||||
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
|
||||
a director's commentary track).
|
||||
<!-- enum StreamStatusType -->
|
||||
The type of a `MessageType::StreamStatus`. The stream status messages inform the
|
||||
application of new streaming threads and their status.
|
||||
|
@ -13412,23 +14023,44 @@ a thread is started
|
|||
a thread is paused
|
||||
<!-- enum StreamStatusType::variant Stop -->
|
||||
a thread is stopped
|
||||
<!-- struct StreamType -->
|
||||
`StreamType` describes a high level classification set for
|
||||
flows of data in `Stream` objects.
|
||||
|
||||
Note that this is a flag, and therefore users should not assume it
|
||||
will be a single value. Do not use the equality operator for checking
|
||||
whether a stream is of a certain type.
|
||||
<!-- struct StreamType::const UNKNOWN -->
|
||||
The stream is of unknown (unclassified) type.
|
||||
<!-- struct StreamType::const AUDIO -->
|
||||
The stream is of audio data
|
||||
<!-- struct StreamType::const VIDEO -->
|
||||
The stream carries video data
|
||||
<!-- struct StreamType::const CONTAINER -->
|
||||
The stream is a muxed container type
|
||||
<!-- struct StreamType::const TEXT -->
|
||||
The stream contains subtitle / subpicture data.
|
||||
|
||||
Feature: `v1_10`
|
||||
|
||||
<!-- struct Structure -->
|
||||
A `Structure` is a collection of key/value pairs. The keys are expressed
|
||||
as GQuarks and the values can be of any GType.
|
||||
A `Structure` 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 `Structure` 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
|
||||
"/-_.:".
|
||||
|
||||
`Structure` is used by various GStreamer subsystems to store information
|
||||
in a flexible and extensible way. A `Structure` does not have a refcount
|
||||
`Structure` is used by various GStreamer subsystems to store information in
|
||||
a flexible and extensible way. A `Structure` does not have a refcount
|
||||
because it usually is part of a higher level object such as `Caps`,
|
||||
`Message`, `Event`, `Query`. It provides a means to enforce mutability
|
||||
using the refcount of the parent with the `Structure::set_parent_refcount`
|
||||
method.
|
||||
|
||||
A `Structure` can be created with `Structure::new_empty` or
|
||||
`Structure::new`, which both take a name and an optional set of
|
||||
key/value pairs along with the types of the values.
|
||||
`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 `Structure::set_value` or
|
||||
`Structure::set`.
|
||||
|
@ -13439,14 +14071,78 @@ convenient gst_structure_get_*() functions.
|
|||
Fields can be removed with `Structure::remove_field` or
|
||||
`Structure::remove_fields`.
|
||||
|
||||
Strings in structures must be ASCII or UTF-8 encoded. Other encodings are
|
||||
not allowed. Strings may be `None` however.
|
||||
Strings in structures must be ASCII or UTF-8 encoded. Other encodings are not
|
||||
allowed. Strings may be `None` however.
|
||||
|
||||
Be aware that the current `Caps` / `Structure` serialization into string
|
||||
has limited support for nested `Caps` / `Structure` fields. It can only
|
||||
support one level of nesting. Using more levels will lead to unexpected
|
||||
behavior when using serialization features, such as `Caps::to_string` or
|
||||
`gst_value_serialize` and their counterparts.
|
||||
## 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 `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" (`<` and
|
||||
`>`). For example `a-structure, list=<1, 2, 3>
|
||||
|
||||
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"
|
||||
```
|
||||
|
||||
> *Note*: 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.
|
||||
<!-- impl Structure::fn from_string -->
|
||||
Creates a `Structure` from a string representation.
|
||||
If end is not `None`, a pointer to the place inside the given string
|
||||
|
@ -13687,6 +14383,9 @@ This is useful in language bindings where unknown `gobject::Value` types are not
|
|||
supported. This function will convert the `GST_TYPE_ARRAY` into a newly
|
||||
allocated `gobject::ValueArray` and return it through `array`. Be aware that this is
|
||||
slower then getting the `gobject::Value` directly.
|
||||
|
||||
Feature: `v1_12`
|
||||
|
||||
## `fieldname`
|
||||
the name of a field
|
||||
## `array`
|
||||
|
|
Loading…
Reference in a new issue