mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer-rs.git
synced 2024-11-25 11:01:10 +00:00
Update documentation
This commit is contained in:
parent
fe93089bb9
commit
be0075647a
13 changed files with 2421 additions and 697 deletions
|
@ -532,6 +532,9 @@ buffers that the appsrc element will push to its source pad. Any
|
||||||
previous caps that were set on appsrc will be replaced by the caps
|
previous caps that were set on appsrc will be replaced by the caps
|
||||||
associated with the sample if not equal.
|
associated with the sample if not equal.
|
||||||
|
|
||||||
|
This function does not take ownership of the
|
||||||
|
sample so the sample needs to be unreffed after calling this function.
|
||||||
|
|
||||||
When the block property is TRUE, this function can block until free
|
When the block property is TRUE, this function can block until free
|
||||||
space becomes available in the queue.
|
space becomes available in the queue.
|
||||||
## `sample`
|
## `sample`
|
||||||
|
|
|
@ -278,7 +278,7 @@ Feature: `v1_14`
|
||||||
<!-- impl AudioStreamAlign::fn new -->
|
<!-- impl AudioStreamAlign::fn new -->
|
||||||
Allocate a new `AudioStreamAlign` with the given configuration. All
|
Allocate a new `AudioStreamAlign` with the given configuration. All
|
||||||
processing happens according to sample rate `rate`, until
|
processing happens according to sample rate `rate`, until
|
||||||
`gst_audio_discont_wait_set_rate` is called with a new `rate`.
|
`AudioStreamAlign::set_rate` is called with a new `rate`.
|
||||||
A negative rate can be used for reverse playback.
|
A negative rate can be used for reverse playback.
|
||||||
|
|
||||||
`alignment_threshold` gives the tolerance in nanoseconds after which a
|
`alignment_threshold` gives the tolerance in nanoseconds after which a
|
||||||
|
@ -315,6 +315,33 @@ or `AudioStreamAlign::copy`.
|
||||||
|
|
||||||
Feature: `v1_14`
|
Feature: `v1_14`
|
||||||
|
|
||||||
|
<!-- impl AudioStreamAlign::fn get_alignment_threshold -->
|
||||||
|
Gets the currently configured alignment threshold.
|
||||||
|
|
||||||
|
Feature: `v1_14`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
The currently configured alignment threshold
|
||||||
|
<!-- impl AudioStreamAlign::fn get_discont_wait -->
|
||||||
|
Gets the currently configured discont wait.
|
||||||
|
|
||||||
|
Feature: `v1_14`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
The currently configured discont wait
|
||||||
|
<!-- impl AudioStreamAlign::fn get_rate -->
|
||||||
|
Gets the currently configured sample rate.
|
||||||
|
|
||||||
|
Feature: `v1_14`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
The currently configured sample rate
|
||||||
<!-- impl AudioStreamAlign::fn get_samples_since_discont -->
|
<!-- impl AudioStreamAlign::fn get_samples_since_discont -->
|
||||||
Returns the number of samples that were processed since the last
|
Returns the number of samples that were processed since the last
|
||||||
discontinuity was detected.
|
discontinuity was detected.
|
||||||
|
@ -376,6 +403,28 @@ output sample position of the start of the data
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
`true` if a discontinuity was detected, `false` otherwise.
|
`true` if a discontinuity was detected, `false` otherwise.
|
||||||
|
<!-- impl AudioStreamAlign::fn set_alignment_threshold -->
|
||||||
|
Sets `alignment_treshold` as new alignment threshold for the following processing.
|
||||||
|
|
||||||
|
Feature: `v1_14`
|
||||||
|
|
||||||
|
## `alignment_threshold`
|
||||||
|
a new alignment threshold
|
||||||
|
<!-- impl AudioStreamAlign::fn set_discont_wait -->
|
||||||
|
Sets `alignment_treshold` as new discont wait for the following processing.
|
||||||
|
|
||||||
|
Feature: `v1_14`
|
||||||
|
|
||||||
|
## `discont_wait`
|
||||||
|
a new discont wait
|
||||||
|
<!-- impl AudioStreamAlign::fn set_rate -->
|
||||||
|
Sets `rate` as new sample rate for the following processing. If the sample
|
||||||
|
rate differs this implicitely marks the next data as discontinuous.
|
||||||
|
|
||||||
|
Feature: `v1_14`
|
||||||
|
|
||||||
|
## `rate`
|
||||||
|
a new sample rate
|
||||||
<!-- struct StreamVolume -->
|
<!-- struct StreamVolume -->
|
||||||
This interface is implemented by elements that provide a stream volume. Examples for
|
This interface is implemented by elements that provide a stream volume. Examples for
|
||||||
such elements are `volume` and `playbin`.
|
such elements are `volume` and `playbin`.
|
||||||
|
|
|
@ -664,6 +664,38 @@ Feature: `v1_14`
|
||||||
|
|
||||||
## `caps`
|
## `caps`
|
||||||
The `gst::Caps` to set on the src pad.
|
The `gst::Caps` to set on the src pad.
|
||||||
|
<!-- trait AggregatorExt::fn simple_get_next_time -->
|
||||||
|
This is a simple `Aggregator::get_next_time` implementation that
|
||||||
|
just looks at the `gst::Segment` on the srcpad of the aggregator and bases
|
||||||
|
the next time on the running time there.
|
||||||
|
|
||||||
|
This is the desired behaviour in most cases where you have a live source
|
||||||
|
and you have a dead line based aggregator subclass.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
The running time based on the position
|
||||||
|
<!-- trait AggregatorExt::fn get_property_min-upstream-latency -->
|
||||||
|
Force minimum upstream latency (in nanoseconds). When sources with a
|
||||||
|
higher latency are expected to be plugged in dynamically after the
|
||||||
|
aggregator has started playing, this allows overriding the minimum
|
||||||
|
latency reported by the initial source(s). This is only taken into
|
||||||
|
account when larger than the actually reported minimum latency.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
<!-- trait AggregatorExt::fn set_property_min-upstream-latency -->
|
||||||
|
Force minimum upstream latency (in nanoseconds). When sources with a
|
||||||
|
higher latency are expected to be plugged in dynamically after the
|
||||||
|
aggregator has started playing, this allows overriding the minimum
|
||||||
|
latency reported by the initial source(s). This is only taken into
|
||||||
|
account when larger than the actually reported minimum latency.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
<!-- struct AggregatorPad -->
|
<!-- struct AggregatorPad -->
|
||||||
Pads managed by a `GstAggregor` subclass.
|
Pads managed by a `GstAggregor` subclass.
|
||||||
|
|
||||||
|
@ -692,6 +724,9 @@ Feature: `v1_14`
|
||||||
|
|
||||||
TRUE if there was a buffer queued in `self`, or FALSE if not.
|
TRUE if there was a buffer queued in `self`, or FALSE if not.
|
||||||
<!-- trait AggregatorPadExt::fn has_buffer -->
|
<!-- trait AggregatorPadExt::fn has_buffer -->
|
||||||
|
This checks if a pad has a buffer available that will be returned by
|
||||||
|
a call to `AggregatorPadExt::peek_buffer` or
|
||||||
|
`AggregatorPadExt::pop_buffer`.
|
||||||
|
|
||||||
Feature: `v1_14_1`
|
Feature: `v1_14_1`
|
||||||
|
|
||||||
|
@ -727,6 +762,394 @@ Feature: `v1_14`
|
||||||
|
|
||||||
The buffer in `self` or NULL if no buffer was
|
The buffer in `self` or NULL if no buffer was
|
||||||
queued. You should unref the buffer after usage.
|
queued. You should unref the buffer after usage.
|
||||||
|
<!-- trait AggregatorPadExt::fn get_property_emit-signals -->
|
||||||
|
Enables the emission of signals such as `AggregatorPad::buffer-consumed`
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
<!-- trait AggregatorPadExt::fn set_property_emit-signals -->
|
||||||
|
Enables the emission of signals such as `AggregatorPad::buffer-consumed`
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
<!-- struct BaseParse -->
|
||||||
|
This base class is for parser elements that process data and splits it
|
||||||
|
into separate audio/video/whatever frames.
|
||||||
|
|
||||||
|
It provides for:
|
||||||
|
|
||||||
|
* provides one sink pad and one source pad
|
||||||
|
* handles state changes
|
||||||
|
* can operate in pull mode or push mode
|
||||||
|
* handles seeking in both modes
|
||||||
|
* handles events (SEGMENT/EOS/FLUSH)
|
||||||
|
* handles queries (POSITION/DURATION/SEEKING/FORMAT/CONVERT)
|
||||||
|
* handles flushing
|
||||||
|
|
||||||
|
The purpose of this base class is to provide the basic functionality of
|
||||||
|
a parser and share a lot of rather complex code.
|
||||||
|
|
||||||
|
# Description of the parsing mechanism:
|
||||||
|
|
||||||
|
## Set-up phase
|
||||||
|
|
||||||
|
* `BaseParse` calls `BaseParseClass.start`() to inform subclass
|
||||||
|
that data processing is about to start now.
|
||||||
|
|
||||||
|
* `BaseParse` class calls `BaseParseClass.set_sink_caps`() to
|
||||||
|
inform the subclass about incoming sinkpad caps. Subclass could
|
||||||
|
already set the srcpad caps accordingly, but this might be delayed
|
||||||
|
until calling `BaseParse::finish_frame` with a non-queued frame.
|
||||||
|
|
||||||
|
* At least at this point subclass needs to tell the `BaseParse` class
|
||||||
|
how big data chunks it wants to receive (minimum frame size ). It can
|
||||||
|
do this with `BaseParseExt::set_min_frame_size`.
|
||||||
|
|
||||||
|
* `BaseParse` class sets up appropriate data passing mode (pull/push)
|
||||||
|
and starts to process the data.
|
||||||
|
|
||||||
|
## Parsing phase
|
||||||
|
|
||||||
|
* `BaseParse` gathers at least min_frame_size bytes of data either
|
||||||
|
by pulling it from upstream or collecting buffers in an internal
|
||||||
|
`Adapter`.
|
||||||
|
|
||||||
|
* A buffer of (at least) min_frame_size bytes is passed to subclass
|
||||||
|
with `BaseParseClass.handle_frame`(). Subclass checks the contents
|
||||||
|
and can optionally return `gst::FlowReturn::Ok` along with an amount of data
|
||||||
|
to be skipped to find a valid frame (which will result in a
|
||||||
|
subsequent DISCONT). If, otherwise, the buffer does not hold a
|
||||||
|
complete frame, `BaseParseClass.handle_frame`() can merely return
|
||||||
|
and will be called again when additional data is available. In push
|
||||||
|
mode this amounts to an additional input buffer (thus minimal
|
||||||
|
additional latency), in pull mode this amounts to some arbitrary
|
||||||
|
reasonable buffer size increase.
|
||||||
|
|
||||||
|
Of course, `BaseParseExt::set_min_frame_size` could also be used if
|
||||||
|
a very specific known amount of additional data is required. If,
|
||||||
|
however, the buffer holds a complete valid frame, it can pass the
|
||||||
|
size of this frame to `BaseParse::finish_frame`.
|
||||||
|
|
||||||
|
If acting as a converter, it can also merely indicate consumed input
|
||||||
|
data while simultaneously providing custom output data. Note that
|
||||||
|
baseclass performs some processing (such as tracking overall consumed
|
||||||
|
data rate versus duration) for each finished frame, but other state
|
||||||
|
is only updated upon each call to `BaseParseClass.handle_frame`()
|
||||||
|
(such as tracking upstream input timestamp).
|
||||||
|
|
||||||
|
Subclass is also responsible for setting the buffer metadata
|
||||||
|
(e.g. buffer timestamp and duration, or keyframe if applicable).
|
||||||
|
(although the latter can also be done by `BaseParse` if it is
|
||||||
|
appropriately configured, see below). Frame is provided with
|
||||||
|
timestamp derived from upstream (as much as generally possible),
|
||||||
|
duration obtained from configuration (see below), and offset
|
||||||
|
if meaningful (in pull mode).
|
||||||
|
|
||||||
|
Note that `BaseParseClass.handle_frame`() might receive any small
|
||||||
|
amount of input data when leftover data is being drained (e.g. at
|
||||||
|
EOS).
|
||||||
|
|
||||||
|
* As part of finish frame processing, just prior to actually pushing
|
||||||
|
the buffer in question, it is passed to
|
||||||
|
`BaseParseClass.pre_push_frame`() which gives subclass yet one last
|
||||||
|
chance to examine buffer metadata, or to send some custom (tag)
|
||||||
|
events, or to perform custom (segment) filtering.
|
||||||
|
|
||||||
|
* During the parsing process `BaseParseClass` will handle both srcpad
|
||||||
|
and sinkpad events. They will be passed to subclass if
|
||||||
|
`BaseParseClass.event`() or `BaseParseClass.src_event`()
|
||||||
|
implementations have been provided.
|
||||||
|
|
||||||
|
## Shutdown phase
|
||||||
|
|
||||||
|
* `BaseParse` class calls `BaseParseClass.stop`() to inform the
|
||||||
|
subclass that data parsing will be stopped.
|
||||||
|
|
||||||
|
Subclass is responsible for providing pad template caps for source and
|
||||||
|
sink pads. The pads need to be named "sink" and "src". It also needs to
|
||||||
|
set the fixed caps on srcpad, when the format is ensured (e.g. when
|
||||||
|
base class calls subclass' `BaseParseClass.set_sink_caps`() function).
|
||||||
|
|
||||||
|
This base class uses `gst::Format::Default` as a meaning of frames. So,
|
||||||
|
subclass conversion routine needs to know that conversion from
|
||||||
|
`gst::Format::Time` to `gst::Format::Default` must return the
|
||||||
|
frame number that can be found from the given byte position.
|
||||||
|
|
||||||
|
`BaseParse` uses subclasses conversion methods also for seeking (or
|
||||||
|
otherwise uses its own default one, see also below).
|
||||||
|
|
||||||
|
Subclass `start` and `stop` functions will be called to inform the beginning
|
||||||
|
and end of data processing.
|
||||||
|
|
||||||
|
Things that subclass need to take care of:
|
||||||
|
|
||||||
|
* Provide pad templates
|
||||||
|
* Fixate the source pad caps when appropriate
|
||||||
|
* Inform base class how big data chunks should be retrieved. This is
|
||||||
|
done with `BaseParseExt::set_min_frame_size` function.
|
||||||
|
* Examine data chunks passed to subclass with
|
||||||
|
`BaseParseClass.handle_frame`() and pass proper frame(s) to
|
||||||
|
`BaseParse::finish_frame`, and setting src pad caps and timestamps
|
||||||
|
on frame.
|
||||||
|
* Provide conversion functions
|
||||||
|
* Update the duration information with `BaseParse::set_duration`
|
||||||
|
* Optionally passthrough using `BaseParseExt::set_passthrough`
|
||||||
|
* Configure various baseparse parameters using
|
||||||
|
`BaseParseExt::set_average_bitrate`, `BaseParseExt::set_syncable`
|
||||||
|
and `BaseParse::set_frame_rate`.
|
||||||
|
|
||||||
|
* In particular, if subclass is unable to determine a duration, but
|
||||||
|
parsing (or specs) yields a frames per seconds rate, then this can be
|
||||||
|
provided to `BaseParse` to enable it to cater for buffer time
|
||||||
|
metadata (which will be taken from upstream as much as
|
||||||
|
possible). Internally keeping track of frame durations and respective
|
||||||
|
sizes that have been pushed provides `BaseParse` with an estimated
|
||||||
|
bitrate. A default `BaseParseClass.convert`() (used if not
|
||||||
|
overridden) will then use these rates to perform obvious conversions.
|
||||||
|
These rates are also used to update (estimated) duration at regular
|
||||||
|
frame intervals.
|
||||||
|
|
||||||
|
# Implements
|
||||||
|
|
||||||
|
[`BaseParseExt`](trait.BaseParseExt.html), [`gst::ElementExt`](../gst/trait.ElementExt.html), [`gst::ObjectExt`](../gst/trait.ObjectExt.html), [`glib::object::ObjectExt`](../glib/object/trait.ObjectExt.html)
|
||||||
|
<!-- trait BaseParseExt -->
|
||||||
|
Trait containing all `BaseParse` methods.
|
||||||
|
|
||||||
|
# Implementors
|
||||||
|
|
||||||
|
[`BaseParse`](struct.BaseParse.html)
|
||||||
|
<!-- trait BaseParseExt::fn add_index_entry -->
|
||||||
|
Adds an entry to the index associating `offset` to `ts`. It is recommended
|
||||||
|
to only add keyframe entries. `force` allows to bypass checks, such as
|
||||||
|
whether the stream is (upstream) seekable, another entry is already "close"
|
||||||
|
to the new entry, etc.
|
||||||
|
## `offset`
|
||||||
|
offset of entry
|
||||||
|
## `ts`
|
||||||
|
timestamp associated with offset
|
||||||
|
## `key`
|
||||||
|
whether entry refers to keyframe
|
||||||
|
## `force`
|
||||||
|
add entry disregarding sanity checks
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
`gboolean` indicating whether entry was added
|
||||||
|
<!-- trait BaseParseExt::fn convert_default -->
|
||||||
|
Default implementation of `BaseParseClass.convert`().
|
||||||
|
## `src_format`
|
||||||
|
`gst::Format` describing the source format.
|
||||||
|
## `src_value`
|
||||||
|
Source value to be converted.
|
||||||
|
## `dest_format`
|
||||||
|
`gst::Format` defining the converted format.
|
||||||
|
## `dest_value`
|
||||||
|
Pointer where the conversion result will be put.
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
`true` if conversion was successful.
|
||||||
|
<!-- trait BaseParseExt::fn drain -->
|
||||||
|
Drains the adapter until it is empty. It decreases the min_frame_size to
|
||||||
|
match the current adapter size and calls chain method until the adapter
|
||||||
|
is emptied or chain returns with error.
|
||||||
|
|
||||||
|
Feature: `v1_12`
|
||||||
|
|
||||||
|
<!-- trait BaseParseExt::fn finish_frame -->
|
||||||
|
Collects parsed data and pushes this downstream.
|
||||||
|
Source pad caps must be set when this is called.
|
||||||
|
|
||||||
|
If `frame`'s out_buffer is set, that will be used as subsequent frame data.
|
||||||
|
Otherwise, `size` samples will be taken from the input and used for output,
|
||||||
|
and the output's metadata (timestamps etc) will be taken as (optionally)
|
||||||
|
set by the subclass on `frame`'s (input) buffer (which is otherwise
|
||||||
|
ignored for any but the above purpose/information).
|
||||||
|
|
||||||
|
Note that the latter buffer is invalidated by this call, whereas the
|
||||||
|
caller retains ownership of `frame`.
|
||||||
|
## `frame`
|
||||||
|
a `BaseParseFrame`
|
||||||
|
## `size`
|
||||||
|
consumed input data represented by frame
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a `gst::FlowReturn` that should be escalated to caller (of caller)
|
||||||
|
<!-- trait BaseParseExt::fn merge_tags -->
|
||||||
|
Sets the parser subclass's tags and how they should be merged with any
|
||||||
|
upstream stream tags. This will override any tags previously-set
|
||||||
|
with `BaseParseExt::merge_tags`.
|
||||||
|
|
||||||
|
Note that this is provided for convenience, and the subclass is
|
||||||
|
not required to use this and can still do tag handling on its own.
|
||||||
|
## `tags`
|
||||||
|
a `gst::TagList` to merge, or NULL to unset
|
||||||
|
previously-set tags
|
||||||
|
## `mode`
|
||||||
|
the `gst::TagMergeMode` to use, usually `gst::TagMergeMode::Replace`
|
||||||
|
<!-- trait BaseParseExt::fn push_frame -->
|
||||||
|
Pushes the frame's buffer downstream, sends any pending events and
|
||||||
|
does some timestamp and segment handling. Takes ownership of
|
||||||
|
frame's buffer, though caller retains ownership of `frame`.
|
||||||
|
|
||||||
|
This must be called with sinkpad STREAM_LOCK held.
|
||||||
|
## `frame`
|
||||||
|
a `BaseParseFrame`
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
`gst::FlowReturn`
|
||||||
|
<!-- trait BaseParseExt::fn set_average_bitrate -->
|
||||||
|
Optionally sets the average bitrate detected in media (if non-zero),
|
||||||
|
e.g. based on metadata, as it will be posted to the application.
|
||||||
|
|
||||||
|
By default, announced average bitrate is estimated. The average bitrate
|
||||||
|
is used to estimate the total duration of the stream and to estimate
|
||||||
|
a seek position, if there's no index and the format is syncable
|
||||||
|
(see `BaseParseExt::set_syncable`).
|
||||||
|
## `bitrate`
|
||||||
|
average bitrate in bits/second
|
||||||
|
<!-- trait BaseParseExt::fn set_duration -->
|
||||||
|
Sets the duration of the currently playing media. Subclass can use this
|
||||||
|
when it is able to determine duration and/or notices a change in the media
|
||||||
|
duration. Alternatively, if `interval` is non-zero (default), then stream
|
||||||
|
duration is determined based on estimated bitrate, and updated every `interval`
|
||||||
|
frames.
|
||||||
|
## `fmt`
|
||||||
|
`gst::Format`.
|
||||||
|
## `duration`
|
||||||
|
duration value.
|
||||||
|
## `interval`
|
||||||
|
how often to update the duration estimate based on bitrate, or 0.
|
||||||
|
<!-- trait BaseParseExt::fn set_frame_rate -->
|
||||||
|
If frames per second is configured, parser can take care of buffer duration
|
||||||
|
and timestamping. When performing segment clipping, or seeking to a specific
|
||||||
|
location, a corresponding decoder might need an initial `lead_in` and a
|
||||||
|
following `lead_out` number of frames to ensure the desired segment is
|
||||||
|
entirely filled upon decoding.
|
||||||
|
## `fps_num`
|
||||||
|
frames per second (numerator).
|
||||||
|
## `fps_den`
|
||||||
|
frames per second (denominator).
|
||||||
|
## `lead_in`
|
||||||
|
frames needed before a segment for subsequent decode
|
||||||
|
## `lead_out`
|
||||||
|
frames needed after a segment
|
||||||
|
<!-- trait BaseParseExt::fn set_has_timing_info -->
|
||||||
|
Set if frames carry timing information which the subclass can (generally)
|
||||||
|
parse and provide. In particular, intrinsic (rather than estimated) time
|
||||||
|
can be obtained following a seek.
|
||||||
|
## `has_timing`
|
||||||
|
whether frames carry timing information
|
||||||
|
<!-- trait BaseParseExt::fn set_infer_ts -->
|
||||||
|
By default, the base class might try to infer PTS from DTS and vice
|
||||||
|
versa. While this is generally correct for audio data, it may not
|
||||||
|
be otherwise. Sub-classes implementing such formats should disable
|
||||||
|
timestamp inferring.
|
||||||
|
## `infer_ts`
|
||||||
|
`true` if parser should infer DTS/PTS from each other
|
||||||
|
<!-- trait BaseParseExt::fn set_latency -->
|
||||||
|
Sets the minimum and maximum (which may likely be equal) latency introduced
|
||||||
|
by the parsing process. If there is such a latency, which depends on the
|
||||||
|
particular parsing of the format, it typically corresponds to 1 frame duration.
|
||||||
|
## `min_latency`
|
||||||
|
minimum parse latency
|
||||||
|
## `max_latency`
|
||||||
|
maximum parse latency
|
||||||
|
<!-- trait BaseParseExt::fn set_min_frame_size -->
|
||||||
|
Subclass can use this function to tell the base class that it needs to
|
||||||
|
be given buffers of at least `min_size` bytes.
|
||||||
|
## `min_size`
|
||||||
|
Minimum size in bytes of the data that this base class should
|
||||||
|
give to subclass.
|
||||||
|
<!-- trait BaseParseExt::fn set_passthrough -->
|
||||||
|
Set if the nature of the format or configuration does not allow (much)
|
||||||
|
parsing, and the parser should operate in passthrough mode (which only
|
||||||
|
applies when operating in push mode). That is, incoming buffers are
|
||||||
|
pushed through unmodified, i.e. no `BaseParseClass.handle_frame`()
|
||||||
|
will be invoked, but `BaseParseClass.pre_push_frame`() will still be
|
||||||
|
invoked, so subclass can perform as much or as little is appropriate for
|
||||||
|
passthrough semantics in `BaseParseClass.pre_push_frame`().
|
||||||
|
## `passthrough`
|
||||||
|
`true` if parser should run in passthrough mode
|
||||||
|
<!-- trait BaseParseExt::fn set_pts_interpolation -->
|
||||||
|
By default, the base class will guess PTS timestamps using a simple
|
||||||
|
interpolation (previous timestamp + duration), which is incorrect for
|
||||||
|
data streams with reordering, where PTS can go backward. Sub-classes
|
||||||
|
implementing such formats should disable PTS interpolation.
|
||||||
|
## `pts_interpolate`
|
||||||
|
`true` if parser should interpolate PTS timestamps
|
||||||
|
<!-- trait BaseParseExt::fn set_syncable -->
|
||||||
|
Set if frame starts can be identified. This is set by default and
|
||||||
|
determines whether seeking based on bitrate averages
|
||||||
|
is possible for a format/stream.
|
||||||
|
## `syncable`
|
||||||
|
set if frame starts can be identified
|
||||||
|
<!-- trait BaseParseExt::fn set_ts_at_offset -->
|
||||||
|
This function should only be called from a `handle_frame` implementation.
|
||||||
|
|
||||||
|
`BaseParse` creates initial timestamps for frames by using the last
|
||||||
|
timestamp seen in the stream before the frame starts. In certain
|
||||||
|
cases, the correct timestamps will occur in the stream after the
|
||||||
|
start of the frame, but before the start of the actual picture data.
|
||||||
|
This function can be used to set the timestamps based on the offset
|
||||||
|
into the frame data that the picture starts.
|
||||||
|
## `offset`
|
||||||
|
offset into current buffer
|
||||||
|
<!-- trait BaseParseExt::fn get_property_disable-passthrough -->
|
||||||
|
If set to `true`, baseparse will unconditionally force parsing of the
|
||||||
|
incoming data. This can be required in the rare cases where the incoming
|
||||||
|
side-data (caps, pts, dts, ...) is not trusted by the user and wants to
|
||||||
|
force validation and parsing of the incoming data.
|
||||||
|
If set to `false`, decision of whether to parse the data or not is up to
|
||||||
|
the implementation (standard behaviour).
|
||||||
|
<!-- trait BaseParseExt::fn set_property_disable-passthrough -->
|
||||||
|
If set to `true`, baseparse will unconditionally force parsing of the
|
||||||
|
incoming data. This can be required in the rare cases where the incoming
|
||||||
|
side-data (caps, pts, dts, ...) is not trusted by the user and wants to
|
||||||
|
force validation and parsing of the incoming data.
|
||||||
|
If set to `false`, decision of whether to parse the data or not is up to
|
||||||
|
the implementation (standard behaviour).
|
||||||
|
<!-- struct BaseParseFrame -->
|
||||||
|
Frame (context) data passed to each frame parsing virtual methods. In
|
||||||
|
addition to providing the data to be checked for a valid frame or an already
|
||||||
|
identified frame, it conveys additional metadata or control information
|
||||||
|
from and to the subclass w.r.t. the particular frame in question (rather
|
||||||
|
than global parameters). Some of these may apply to each parsing stage, others
|
||||||
|
only to some a particular one. These parameters are effectively zeroed at start
|
||||||
|
of each frame's processing, i.e. parsing virtual method invocation sequence.
|
||||||
|
<!-- impl BaseParseFrame::fn new -->
|
||||||
|
Allocates a new `BaseParseFrame`. This function is mainly for bindings,
|
||||||
|
elements written in C should usually allocate the frame on the stack and
|
||||||
|
then use `BaseParseFrame::init` to initialise it.
|
||||||
|
## `buffer`
|
||||||
|
a `gst::Buffer`
|
||||||
|
## `flags`
|
||||||
|
the flags
|
||||||
|
## `overhead`
|
||||||
|
number of bytes in this frame which should be counted as
|
||||||
|
metadata overhead, ie. not used to calculate the average bitrate.
|
||||||
|
Set to -1 to mark the entire frame as metadata. If in doubt, set to 0.
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a newly-allocated `BaseParseFrame`. Free with
|
||||||
|
`BaseParseFrame::free` when no longer needed.
|
||||||
|
<!-- impl BaseParseFrame::fn copy -->
|
||||||
|
Copies a `BaseParseFrame`.
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
A copy of `self`
|
||||||
|
<!-- impl BaseParseFrame::fn free -->
|
||||||
|
Frees the provided `self`.
|
||||||
|
<!-- impl BaseParseFrame::fn init -->
|
||||||
|
Sets a `BaseParseFrame` to initial state. Currently this means
|
||||||
|
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 BaseSink -->
|
<!-- struct BaseSink -->
|
||||||
`BaseSink` is the base class for sink elements in GStreamer, such as
|
`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
|
xvimagesink or filesink. It is a layer on top of `gst::Element` that provides a
|
||||||
|
@ -918,6 +1341,17 @@ more details.
|
||||||
The maximum time in nanoseconds that a buffer can be late
|
The maximum time in nanoseconds that a buffer can be late
|
||||||
before it is dropped and not rendered. A value of -1 means an
|
before it is dropped and not rendered. A value of -1 means an
|
||||||
unlimited time.
|
unlimited time.
|
||||||
|
<!-- trait BaseSinkExt::fn get_processing_deadline -->
|
||||||
|
Get the processing deadline of `self`. see
|
||||||
|
`BaseSinkExt::set_processing_deadline` for more information about
|
||||||
|
the processing deadline.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
the processing deadline
|
||||||
<!-- trait BaseSinkExt::fn get_render_delay -->
|
<!-- trait BaseSinkExt::fn get_render_delay -->
|
||||||
Get the render delay of `self`. see `BaseSinkExt::set_render_delay` for more
|
Get the render delay of `self`. see `BaseSinkExt::set_render_delay` for more
|
||||||
information about the render delay.
|
information about the render delay.
|
||||||
|
@ -1025,6 +1459,17 @@ buffer timestamp and the current clock time. A value of -1 means
|
||||||
an unlimited time.
|
an unlimited time.
|
||||||
## `max_lateness`
|
## `max_lateness`
|
||||||
the new max lateness value.
|
the new max lateness value.
|
||||||
|
<!-- trait BaseSinkExt::fn set_processing_deadline -->
|
||||||
|
Maximum amount of time (in nanoseconds) that the pipeline can take
|
||||||
|
for processing the buffer. This is added to the latency of live
|
||||||
|
pipelines.
|
||||||
|
|
||||||
|
This function is usually called by subclasses.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `processing_deadline`
|
||||||
|
the new processing deadline in nanoseconds.
|
||||||
<!-- trait BaseSinkExt::fn set_qos_enabled -->
|
<!-- trait BaseSinkExt::fn set_qos_enabled -->
|
||||||
Configures `self` to send Quality-of-Service events upstream.
|
Configures `self` to send Quality-of-Service events upstream.
|
||||||
## `enabled`
|
## `enabled`
|
||||||
|
@ -1166,6 +1611,20 @@ rendering of the buffers when it would exceed to max-bitrate.
|
||||||
Control the maximum amount of bits that will be rendered per second.
|
Control the maximum amount of bits that will be rendered per second.
|
||||||
Setting this property to a value bigger than 0 will make the sink delay
|
Setting this property to a value bigger than 0 will make the sink delay
|
||||||
rendering of the buffers when it would exceed to max-bitrate.
|
rendering of the buffers when it would exceed to max-bitrate.
|
||||||
|
<!-- trait BaseSinkExt::fn get_property_processing-deadline -->
|
||||||
|
Maximum amount of time (in nanoseconds) that the pipeline can take
|
||||||
|
for processing the buffer. This is added to the latency of live
|
||||||
|
pipelines.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
<!-- trait BaseSinkExt::fn set_property_processing-deadline -->
|
||||||
|
Maximum amount of time (in nanoseconds) that the pipeline can take
|
||||||
|
for processing the buffer. This is added to the latency of live
|
||||||
|
pipelines.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
<!-- trait BaseSinkExt::fn get_property_render-delay -->
|
<!-- trait BaseSinkExt::fn get_property_render-delay -->
|
||||||
The additional delay between synchronisation and actual rendering of the
|
The additional delay between synchronisation and actual rendering of the
|
||||||
media. This property will add additional latency to the device in order to
|
media. This property will add additional latency to the device in order to
|
||||||
|
@ -1401,6 +1860,12 @@ If `automatic_eos` is `true`, `self` will automatically go EOS if a buffer
|
||||||
after the total size is returned. By default this is `true` but sources
|
after the total size is returned. By default this is `true` but sources
|
||||||
that can't return an authoritative size and only know that they're EOS
|
that can't return an authoritative size and only know that they're EOS
|
||||||
when trying to read more should set this to `false`.
|
when trying to read more should set this to `false`.
|
||||||
|
|
||||||
|
When `self` operates in `gst::Format::Time`, `BaseSrc` will send an EOS
|
||||||
|
when a buffer outside of the currently configured segment is pushed if
|
||||||
|
`automatic_eos` is `true`. Since 1.16, if `automatic_eos` is `false` an
|
||||||
|
EOS will be pushed only when the `BaseSrc.create` implementation
|
||||||
|
returns `gst::FlowReturn::Eos`.
|
||||||
## `automatic_eos`
|
## `automatic_eos`
|
||||||
automatic eos
|
automatic eos
|
||||||
<!-- trait BaseSrcExt::fn set_blocksize -->
|
<!-- trait BaseSrcExt::fn set_blocksize -->
|
||||||
|
@ -1730,8 +2195,8 @@ running_time.
|
||||||
<!-- trait BaseTransformExt::fn update_src_caps -->
|
<!-- trait BaseTransformExt::fn update_src_caps -->
|
||||||
Updates the srcpad caps and send the caps downstream. This function
|
Updates the srcpad caps and send the caps downstream. This function
|
||||||
can be used by subclasses when they have already negotiated their caps
|
can be used by subclasses when they have already negotiated their caps
|
||||||
but found a change in them (or computed new informations). This way,
|
but found a change in them (or computed new information). This way,
|
||||||
they can notify downstream about that change without loosing any
|
they can notify downstream about that change without losing any
|
||||||
buffer.
|
buffer.
|
||||||
## `updated_caps`
|
## `updated_caps`
|
||||||
An updated version of the srcpad caps to be pushed
|
An updated version of the srcpad caps to be pushed
|
||||||
|
@ -1771,7 +2236,7 @@ These rules are:
|
||||||
* `gst::FlowReturn::Ok`: otherwise
|
* `gst::FlowReturn::Ok`: otherwise
|
||||||
|
|
||||||
`gst::FlowReturn::Error` or below, GST_FLOW_NOT_NEGOTIATED and GST_FLOW_FLUSHING are
|
`gst::FlowReturn::Error` or below, GST_FLOW_NOT_NEGOTIATED and GST_FLOW_FLUSHING are
|
||||||
returned immediatelly from the `FlowCombiner::update_flow` function.
|
returned immediately from the `FlowCombiner::update_flow` function.
|
||||||
<!-- impl FlowCombiner::fn new -->
|
<!-- impl FlowCombiner::fn new -->
|
||||||
Creates a new `FlowCombiner`, use `FlowCombiner::free` to free it.
|
Creates a new `FlowCombiner`, use `FlowCombiner::free` to free it.
|
||||||
|
|
||||||
|
|
|
@ -876,7 +876,7 @@ a `guint` describing how many seconds to wait for `waits` to be true
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
a `gboolean` `true` if the waits have been registered, `false` if not.
|
a `gboolean` `true` if the waits have been registered, `false` if not.
|
||||||
(Could be that it timed out waiting or that more waits then waits was found)
|
(Could be that it timed out waiting or that more waits than waits was found)
|
||||||
<!-- impl Harness::fn new -->
|
<!-- impl Harness::fn new -->
|
||||||
Creates a new harness. Works like `Harness::new_with_padnames`, except it
|
Creates a new harness. Works like `Harness::new_with_padnames`, except it
|
||||||
assumes the `gst::Element` sinkpad is named "sink" and srcpad is named "src"
|
assumes the `gst::Element` sinkpad is named "sink" and srcpad is named "src"
|
||||||
|
@ -1266,6 +1266,27 @@ which is earlier or equal to the time of the clock as given by
|
||||||
MT safe.
|
MT safe.
|
||||||
## `new_time`
|
## `new_time`
|
||||||
a `gst::ClockTime` later than that returned by `gst::ClockExt::get_time`
|
a `gst::ClockTime` later than that returned by `gst::ClockExt::get_time`
|
||||||
|
<!-- impl TestClock::fn timed_wait_for_multiple_pending_ids -->
|
||||||
|
Blocks until at least `count` clock notifications have been requested from
|
||||||
|
`self`, or the timeout expires.
|
||||||
|
|
||||||
|
MT safe.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `count`
|
||||||
|
the number of pending clock notifications to wait for
|
||||||
|
## `timeout_ms`
|
||||||
|
the timeout in milliseconds
|
||||||
|
## `pending_list`
|
||||||
|
Address
|
||||||
|
of a `glib::List` pointer variable to store the list of pending `GstClockIDs`
|
||||||
|
that expired, or `None`
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a `gboolean` `true` if the waits have been registered, `false` if not.
|
||||||
|
(Could be that it timed out waiting or that more waits than waits was found)
|
||||||
<!-- impl TestClock::fn wait_for_multiple_pending_ids -->
|
<!-- impl TestClock::fn wait_for_multiple_pending_ids -->
|
||||||
Blocks until at least `count` clock notifications have been requested from
|
Blocks until at least `count` clock notifications have been requested from
|
||||||
`self`. There is no timeout for this wait, see the main description of
|
`self`. There is no timeout for this wait, see the main description of
|
||||||
|
|
|
@ -105,6 +105,14 @@ The Identifier or `None`
|
||||||
|
|
||||||
A reference to the wanted `Asset` or `None`
|
A reference to the wanted `Asset` or `None`
|
||||||
<!-- impl Asset::fn request_async -->
|
<!-- impl Asset::fn request_async -->
|
||||||
|
The `callback` will be called from a running `glib::MainLoop` which is iterating a `glib::MainContext`.
|
||||||
|
Note that, users should ensure the `glib::MainContext`, since this method will notify
|
||||||
|
`callback` from the thread which was associated with a thread default
|
||||||
|
`glib::MainContext` at calling `ges_init`.
|
||||||
|
For example, if a user wants non-default `glib::MainContext` to be associated
|
||||||
|
with `callback`, `ges_init` must be called after g_main_context_push_thread_default ()
|
||||||
|
with custom `glib::MainContext`.
|
||||||
|
|
||||||
Request a new `Asset` asyncronously, `callback` will be called when the materail is
|
Request a new `Asset` asyncronously, `callback` will be called when the materail is
|
||||||
ready to be used or if an error occured.
|
ready to be used or if an error occured.
|
||||||
|
|
||||||
|
@ -1163,7 +1171,7 @@ Informs you that a `Asset` could not be created. In case of
|
||||||
missing GStreamer plugins, the error will be set to `GST_CORE_ERROR`
|
missing GStreamer plugins, the error will be set to `GST_CORE_ERROR`
|
||||||
`gst::CoreError::MissingPlugin`
|
`gst::CoreError::MissingPlugin`
|
||||||
## `error`
|
## `error`
|
||||||
The `glib::Error` defining the error that accured, might be `None`
|
The `glib::Error` defining the error that occured, might be `None`
|
||||||
## `id`
|
## `id`
|
||||||
The `id` of the asset that failed loading
|
The `id` of the asset that failed loading
|
||||||
## `extractable_type`
|
## `extractable_type`
|
||||||
|
@ -1515,6 +1523,22 @@ The `TrackElement` for which to choose the tracks it should land into
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
a `glib::PtrArray` of `Track`-s where that object should be added
|
a `glib::PtrArray` of `Track`-s where that object should be added
|
||||||
|
<!-- trait TimelineExt::fn connect_snapping_ended -->
|
||||||
|
Will be emitted when the 2 `TrackElement` ended to snap
|
||||||
|
## `obj1`
|
||||||
|
the first `TrackElement` that was snapping.
|
||||||
|
## `obj2`
|
||||||
|
the second `TrackElement` that was snapping.
|
||||||
|
## `position`
|
||||||
|
the position where the two objects finally snapping.
|
||||||
|
<!-- trait TimelineExt::fn connect_snapping_started -->
|
||||||
|
Will be emitted when the 2 `TrackElement` first snapped
|
||||||
|
## `obj1`
|
||||||
|
the first `TrackElement` that was snapping.
|
||||||
|
## `obj2`
|
||||||
|
the second `TrackElement` that was snapping.
|
||||||
|
## `position`
|
||||||
|
the position where the two objects finally snapping.
|
||||||
<!-- trait TimelineExt::fn connect_track_added -->
|
<!-- trait TimelineExt::fn connect_track_added -->
|
||||||
Will be emitted after the track was added to the timeline.
|
Will be emitted after the track was added to the timeline.
|
||||||
## `track`
|
## `track`
|
||||||
|
@ -1606,6 +1630,13 @@ The `duration` of `self`
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
The `inpoint` of `self`
|
The `inpoint` of `self`
|
||||||
|
<!-- trait TimelineElementExt::fn get_layer_priority -->
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
The priority of the first layer the element is in (note that only
|
||||||
|
groups can span over several layers). `GES_TIMELINE_ELEMENT_NO_LAYER_PRIORITY`
|
||||||
|
means that the element is not in a layer.
|
||||||
<!-- trait TimelineElementExt::fn get_max_duration -->
|
<!-- trait TimelineElementExt::fn get_max_duration -->
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
@ -1787,15 +1818,27 @@ Note that if the timeline snap-distance property of the timeline containing
|
||||||
`self` is set, `self` will properly snap to its neighboors.
|
`self` is set, `self` will properly snap to its neighboors.
|
||||||
## `duration`
|
## `duration`
|
||||||
the duration in `gst::ClockTime`
|
the duration in `gst::ClockTime`
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
`true` if `duration` could be set.
|
||||||
<!-- trait TimelineElementExt::fn set_inpoint -->
|
<!-- trait TimelineElementExt::fn set_inpoint -->
|
||||||
Set the in-point, that is the moment at which the `self` will start
|
Set the in-point, that is the moment at which the `self` will start
|
||||||
outputting data from its contents.
|
outputting data from its contents.
|
||||||
## `inpoint`
|
## `inpoint`
|
||||||
the in-point in `gst::ClockTime`
|
the in-point in `gst::ClockTime`
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
`true` if `inpoint` could be set.
|
||||||
<!-- trait TimelineElementExt::fn set_max_duration -->
|
<!-- trait TimelineElementExt::fn set_max_duration -->
|
||||||
Set the maximun duration of the object
|
Set the maximun duration of the object
|
||||||
## `maxduration`
|
## `maxduration`
|
||||||
the maximum duration in `gst::ClockTime`
|
the maximum duration in `gst::ClockTime`
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
`true` if `maxduration` could be set.
|
||||||
<!-- trait TimelineElementExt::fn set_name -->
|
<!-- trait TimelineElementExt::fn set_name -->
|
||||||
Sets the name of object, or gives `self` a guaranteed unique name (if name is NULL).
|
Sets the name of object, or gives `self` a guaranteed unique name (if name is NULL).
|
||||||
This function makes a copy of the provided name, so the caller retains ownership
|
This function makes a copy of the provided name, so the caller retains ownership
|
||||||
|
@ -1822,6 +1865,10 @@ To set `Effect` priorities `ClipExt::set_top_effect_index` should
|
||||||
be used.
|
be used.
|
||||||
## `priority`
|
## `priority`
|
||||||
the priority
|
the priority
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
`true` if `priority` could be set.
|
||||||
<!-- trait TimelineElementExt::fn set_start -->
|
<!-- trait TimelineElementExt::fn set_start -->
|
||||||
Set the position of the object in its containing layer.
|
Set the position of the object in its containing layer.
|
||||||
|
|
||||||
|
@ -1829,6 +1876,10 @@ Note that if the snapping-distance property of the timeline containing
|
||||||
`self` is set, `self` will properly snap to the edges around `start`.
|
`self` is set, `self` will properly snap to the edges around `start`.
|
||||||
## `start`
|
## `start`
|
||||||
the position in `gst::ClockTime`
|
the position in `gst::ClockTime`
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
`true` if `start` could be set.
|
||||||
<!-- trait TimelineElementExt::fn set_timeline -->
|
<!-- trait TimelineElementExt::fn set_timeline -->
|
||||||
Sets the timeline of `self` to `timeline`.
|
Sets the timeline of `self` to `timeline`.
|
||||||
## `timeline`
|
## `timeline`
|
||||||
|
@ -2358,7 +2409,9 @@ the `gst::ControlSource` to set on the binding.
|
||||||
## `property_name`
|
## `property_name`
|
||||||
The name of the property to control.
|
The name of the property to control.
|
||||||
## `binding_type`
|
## `binding_type`
|
||||||
The type of binding to create. Only "direct" is available for now.
|
The type of binding to create. Currently the following values are valid:
|
||||||
|
- "direct": See `gst_direct_control_binding_new`
|
||||||
|
- "direct-absolute": See `gst_direct_control_binding_new_absolute`
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
|
@ -2446,7 +2499,7 @@ The location of the file/resource to use.
|
||||||
The `UriClipAsset` is a special `Asset` that lets you handle
|
The `UriClipAsset` is a special `Asset` that lets you handle
|
||||||
the media file to use inside the GStreamer Editing Services. It has APIs that
|
the media file to use inside the GStreamer Editing Services. It has APIs that
|
||||||
let you get information about the medias. Also, the tags found in the media file are
|
let you get information about the medias. Also, the tags found in the media file are
|
||||||
set as Metadatas of the Asser.
|
set as Metadata of the Asset.
|
||||||
|
|
||||||
# Implements
|
# Implements
|
||||||
|
|
||||||
|
@ -2457,6 +2510,14 @@ Trait containing all `UriClipAsset` methods.
|
||||||
# Implementors
|
# Implementors
|
||||||
|
|
||||||
[`UriClipAsset`](struct.UriClipAsset.html)
|
[`UriClipAsset`](struct.UriClipAsset.html)
|
||||||
|
<!-- impl UriClipAsset::fn finish -->
|
||||||
|
Finalize the request of an async `UriClipAsset`
|
||||||
|
## `res`
|
||||||
|
The `gio::AsyncResult` from which to get the newly created `UriClipAsset`
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
The `UriClipAsset` previously requested
|
||||||
<!-- impl UriClipAsset::fn new -->
|
<!-- impl UriClipAsset::fn new -->
|
||||||
Creates a `UriClipAsset` for `uri`
|
Creates a `UriClipAsset` for `uri`
|
||||||
|
|
||||||
|
@ -2470,7 +2531,7 @@ filesource_asset_loaded_cb (GESAsset * source, GAsyncResult * res, gpointer user
|
||||||
GError *error = NULL;
|
GError *error = NULL;
|
||||||
GESUriClipAsset *filesource_asset;
|
GESUriClipAsset *filesource_asset;
|
||||||
|
|
||||||
filesource_asset = GES_URI_CLIP_ASSET (ges_asset_request_finish (res, &error));
|
filesource_asset = ges_uri_clip_asset_finish (res, &error);
|
||||||
if (filesource_asset) {
|
if (filesource_asset) {
|
||||||
g_print ("The file: %s is usable as a FileSource, it is%s an image and lasts %" GST_TIME_FORMAT,
|
g_print ("The file: %s is usable as a FileSource, it is%s an image and lasts %" GST_TIME_FORMAT,
|
||||||
ges_asset_get_id (GES_ASSET (filesource_asset))
|
ges_asset_get_id (GES_ASSET (filesource_asset))
|
||||||
|
@ -2504,8 +2565,8 @@ You can also use multi file uris for `MultiFileSource`.
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
A reference to the requested asset or
|
A reference to the requested asset or `None` if
|
||||||
`None` if an error happened
|
an error happened
|
||||||
<!-- trait UriClipAssetExt::fn get_duration -->
|
<!-- trait UriClipAssetExt::fn get_duration -->
|
||||||
Gets duration of the file represented by `self`
|
Gets duration of the file represented by `self`
|
||||||
|
|
||||||
|
|
|
@ -5,15 +5,27 @@ context. It also provided some wrappers around `gst_base::BaseTransform`'s
|
||||||
`start`, `stop` and `set_caps` virtual methods that ensure an OpenGL context
|
`start`, `stop` and `set_caps` virtual methods that ensure an OpenGL context
|
||||||
is available and current in the calling thread.
|
is available and current in the calling thread.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
# Implements
|
# Implements
|
||||||
|
|
||||||
[`GLBaseFilterExt`](trait.GLBaseFilterExt.html), [`gst::ObjectExt`](../gst/trait.ObjectExt.html), [`glib::object::ObjectExt`](../glib/object/trait.ObjectExt.html)
|
[`GLBaseFilterExt`](trait.GLBaseFilterExt.html), [`gst::ObjectExt`](../gst/trait.ObjectExt.html), [`glib::object::ObjectExt`](../glib/object/trait.ObjectExt.html)
|
||||||
<!-- trait GLBaseFilterExt -->
|
<!-- trait GLBaseFilterExt -->
|
||||||
Trait containing all `GLBaseFilter` methods.
|
Trait containing all `GLBaseFilter` methods.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
# Implementors
|
# Implementors
|
||||||
|
|
||||||
[`GLBaseFilter`](struct.GLBaseFilter.html)
|
[`GLBaseFilter`](struct.GLBaseFilter.html)
|
||||||
|
<!-- trait GLBaseFilterExt::fn find_gl_context -->
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
Whether an OpenGL context could be retrieved or created successfully
|
||||||
<!-- struct GLBuffer -->
|
<!-- struct GLBuffer -->
|
||||||
GstGLBuffer is a `gst::Memory` subclass providing support for the mapping of
|
GstGLBuffer is a `gst::Memory` subclass providing support for the mapping of
|
||||||
GL buffers.
|
GL buffers.
|
||||||
|
@ -44,7 +56,7 @@ a `GLContext`
|
||||||
|
|
||||||
a new `GLColorConvert` object
|
a new `GLColorConvert` object
|
||||||
<!-- impl GLColorConvert::fn fixate_caps -->
|
<!-- impl GLColorConvert::fn fixate_caps -->
|
||||||
Provides an implementation of `gst_base::BaseTransformClass::fixate_caps`()
|
Provides an implementation of `gst_base::BaseTransformClass.fixate_caps`()
|
||||||
## `context`
|
## `context`
|
||||||
a `GLContext` to use for transforming `caps`
|
a `GLContext` to use for transforming `caps`
|
||||||
## `direction`
|
## `direction`
|
||||||
|
@ -58,7 +70,7 @@ the `gst::Caps` to fixate
|
||||||
|
|
||||||
the fixated `gst::Caps`
|
the fixated `gst::Caps`
|
||||||
<!-- impl GLColorConvert::fn transform_caps -->
|
<!-- impl GLColorConvert::fn transform_caps -->
|
||||||
Provides an implementation of `gst_base::BaseTransformClass::transform_caps`()
|
Provides an implementation of `gst_base::BaseTransformClass.transform_caps`()
|
||||||
## `context`
|
## `context`
|
||||||
a `GLContext` to use for transforming `caps`
|
a `GLContext` to use for transforming `caps`
|
||||||
## `direction`
|
## `direction`
|
||||||
|
@ -72,7 +84,7 @@ a set of filter `gst::Caps`
|
||||||
|
|
||||||
the converted `gst::Caps`
|
the converted `gst::Caps`
|
||||||
<!-- impl GLColorConvert::fn decide_allocation -->
|
<!-- impl GLColorConvert::fn decide_allocation -->
|
||||||
Provides an implementation of `GstBaseTransfromClass::decide_allocation`()
|
Provides an implementation of `gst_base::BaseTransformClass.decide_allocation`()
|
||||||
## `query`
|
## `query`
|
||||||
a completed ALLOCATION `gst::Query`
|
a completed ALLOCATION `gst::Query`
|
||||||
|
|
||||||
|
@ -299,7 +311,7 @@ Gets the OpenGL platform that used by `self`.
|
||||||
The platform specific backing OpenGL context
|
The platform specific backing OpenGL context
|
||||||
<!-- trait GLContextExt::fn get_gl_platform_version -->
|
<!-- trait GLContextExt::fn get_gl_platform_version -->
|
||||||
Get the version of the OpenGL platform (GLX, EGL, etc) used. Only valid
|
Get the version of the OpenGL platform (GLX, EGL, etc) used. Only valid
|
||||||
after a call to `gst_gl_context_create_context`.
|
after a call to `GLContextExt::create`.
|
||||||
## `major`
|
## `major`
|
||||||
return for the major version
|
return for the major version
|
||||||
## `minor`
|
## `minor`
|
||||||
|
@ -377,6 +389,30 @@ a `GLSLProfile`
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
Whether `self` supports the combination of `version` with `profile`
|
Whether `self` supports the combination of `version` with `profile`
|
||||||
|
<!-- trait GLContextExt::fn supports_precision -->
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `version`
|
||||||
|
a `GLSLVersion`
|
||||||
|
## `profile`
|
||||||
|
a `GLSLProfile`
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
whether `self` supports the 'precision' specifier in GLSL shaders
|
||||||
|
<!-- trait GLContextExt::fn supports_precision_highp -->
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `version`
|
||||||
|
a `GLSLVersion`
|
||||||
|
## `profile`
|
||||||
|
a `GLSLProfile`
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
whether `self` supports the 'precision highp' specifier in GLSL shaders
|
||||||
<!-- trait GLContextExt::fn swap_buffers -->
|
<!-- trait GLContextExt::fn swap_buffers -->
|
||||||
Swap the front and back buffers on the window attached to `self`.
|
Swap the front and back buffers on the window attached to `self`.
|
||||||
This will display the frame on the next refresh cycle.
|
This will display the frame on the next refresh cycle.
|
||||||
|
@ -432,7 +468,7 @@ Trait containing all `GLDisplay` methods.
|
||||||
|
|
||||||
# Implementors
|
# Implementors
|
||||||
|
|
||||||
[`GLDisplayEGL`](struct.GLDisplayEGL.html), [`GLDisplay`](struct.GLDisplay.html)
|
[`GLDisplayEGL`](struct.GLDisplayEGL.html), [`GLDisplayWayland`](struct.GLDisplayWayland.html), [`GLDisplayX11`](struct.GLDisplayX11.html), [`GLDisplay`](struct.GLDisplay.html)
|
||||||
<!-- impl GLDisplay::fn new -->
|
<!-- impl GLDisplay::fn new -->
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
@ -551,6 +587,54 @@ pointer to a display (or 0)
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
A `EGLDisplay` or `EGL_NO_DISPLAY`
|
A `EGLDisplay` or `EGL_NO_DISPLAY`
|
||||||
|
<!-- struct GLDisplayWayland -->
|
||||||
|
the contents of a `GLDisplayWayland` are private and should only be accessed
|
||||||
|
through the provided API
|
||||||
|
|
||||||
|
# Implements
|
||||||
|
|
||||||
|
[`GLDisplayExt`](trait.GLDisplayExt.html), [`gst::ObjectExt`](../gst/trait.ObjectExt.html), [`glib::object::ObjectExt`](../glib/object/trait.ObjectExt.html)
|
||||||
|
<!-- impl GLDisplayWayland::fn new -->
|
||||||
|
Create a new `GLDisplayWayland` from the wayland display name. See `wl_display_connect`
|
||||||
|
for details on what is a valid name.
|
||||||
|
## `name`
|
||||||
|
a display name
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a new `GLDisplayWayland` or `None`
|
||||||
|
<!-- impl GLDisplayWayland::fn new_with_display -->
|
||||||
|
Creates a new display connection from a wl_display Display.
|
||||||
|
## `display`
|
||||||
|
an existing, wayland display
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a new `GLDisplayWayland`
|
||||||
|
<!-- struct GLDisplayX11 -->
|
||||||
|
the contents of a `GLDisplayX11` are private and should only be accessed
|
||||||
|
through the provided API
|
||||||
|
|
||||||
|
# Implements
|
||||||
|
|
||||||
|
[`GLDisplayExt`](trait.GLDisplayExt.html), [`gst::ObjectExt`](../gst/trait.ObjectExt.html), [`glib::object::ObjectExt`](../glib/object/trait.ObjectExt.html)
|
||||||
|
<!-- impl GLDisplayX11::fn new -->
|
||||||
|
Create a new `GLDisplayX11` from the x11 display name. See XOpenDisplay()
|
||||||
|
for details on what is a valid name.
|
||||||
|
## `name`
|
||||||
|
a display name
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a new `GLDisplayX11` or `None`
|
||||||
|
<!-- impl GLDisplayX11::fn new_with_display -->
|
||||||
|
Creates a new display connection from a X11 Display.
|
||||||
|
## `display`
|
||||||
|
an existing, x11 display
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a new `GLDisplayX11`
|
||||||
<!-- enum GLFormat -->
|
<!-- enum GLFormat -->
|
||||||
<!-- enum GLFormat::variant Luminance -->
|
<!-- enum GLFormat::variant Luminance -->
|
||||||
Single component replicated across R, G, and B textures
|
Single component replicated across R, G, and B textures
|
||||||
|
@ -575,12 +659,18 @@ Three 8-bit components stored in the R, G, and B
|
||||||
<!-- enum GLFormat::variant Rgb565 -->
|
<!-- enum GLFormat::variant Rgb565 -->
|
||||||
Three components of bit depth 5, 6 and 5 stored in the R, G,
|
Three components of bit depth 5, 6 and 5 stored in the R, G,
|
||||||
and B texture components respectively.
|
and B texture components respectively.
|
||||||
|
<!-- enum GLFormat::variant Rgb16 -->
|
||||||
|
Three 16-bit components stored in the R, G, and B
|
||||||
|
texture components
|
||||||
<!-- enum GLFormat::variant Rgba -->
|
<!-- enum GLFormat::variant Rgba -->
|
||||||
Four components stored in the R, G, B, and A texture
|
Four components stored in the R, G, B, and A texture
|
||||||
components respectively.
|
components respectively.
|
||||||
<!-- enum GLFormat::variant Rgba8 -->
|
<!-- enum GLFormat::variant Rgba8 -->
|
||||||
Four 8-bit components stored in the R, G, B, and A texture
|
Four 8-bit components stored in the R, G, B, and A texture
|
||||||
components respectively.
|
components respectively.
|
||||||
|
<!-- enum GLFormat::variant Rgba16 -->
|
||||||
|
Four 16-bit components stored in the R, G, B, and A texture
|
||||||
|
components respectively.
|
||||||
<!-- enum GLFormat::variant DepthComponent16 -->
|
<!-- enum GLFormat::variant DepthComponent16 -->
|
||||||
A single 16-bit component for depth information.
|
A single 16-bit component for depth information.
|
||||||
<!-- enum GLFormat::variant Depth24Stencil8 -->
|
<!-- enum GLFormat::variant Depth24Stencil8 -->
|
||||||
|
@ -895,6 +985,58 @@ a `glib::Error`
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
a new `shader` with the specified stages.
|
a new `shader` with the specified stages.
|
||||||
|
<!-- impl GLShader::fn string_fragment_external_oes_get_default -->
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `context`
|
||||||
|
a `GLContext`
|
||||||
|
## `version`
|
||||||
|
a `GLSLVersion`
|
||||||
|
## `profile`
|
||||||
|
a `GLSLProfile`
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a passthrough shader string for copying an input external-oes
|
||||||
|
texture to the output
|
||||||
|
<!-- impl GLShader::fn string_fragment_get_default -->
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `context`
|
||||||
|
a `GLContext`
|
||||||
|
## `version`
|
||||||
|
a `GLSLVersion`
|
||||||
|
## `profile`
|
||||||
|
a `GLSLProfile`
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a passthrough shader string for copying an input texture to
|
||||||
|
the output
|
||||||
|
<!-- impl GLShader::fn string_get_highest_precision -->
|
||||||
|
Generates a shader string that defines the precision of float types in
|
||||||
|
GLSL shaders. This is particularly needed for fragment shaders in a
|
||||||
|
GLSL ES context where there is no default precision specified.
|
||||||
|
|
||||||
|
Practically, this will return the string 'precision mediump float'
|
||||||
|
or 'precision highp float' depending on if high precision floats are
|
||||||
|
determined to be supported.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `context`
|
||||||
|
a `GLContext`
|
||||||
|
## `version`
|
||||||
|
a `GLSLVersion`
|
||||||
|
## `profile`
|
||||||
|
a `GLSLProfile`
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a shader string defining the precision of float types based on
|
||||||
|
`context`, `version` and `profile`
|
||||||
<!-- impl GLShader::fn attach -->
|
<!-- impl GLShader::fn attach -->
|
||||||
Attaches `stage` to `self`. `stage` must have been successfully compiled
|
Attaches `stage` to `self`. `stage` must have been successfully compiled
|
||||||
with `GLSLStage::compile`.
|
with `GLSLStage::compile`.
|
||||||
|
@ -1221,6 +1363,12 @@ Mark's `self` as being used for the next GL draw command.
|
||||||
Note: must be called in the GL thread and `self` must have been linked.
|
Note: must be called in the GL thread and `self` must have been linked.
|
||||||
<!-- enum GLStereoDownmix -->
|
<!-- enum GLStereoDownmix -->
|
||||||
Output anaglyph type to generate when downmixing to mono
|
Output anaglyph type to generate when downmixing to mono
|
||||||
|
<!-- enum GLStereoDownmix::variant GreenMagentaDubois -->
|
||||||
|
Dubois optimised Green-Magenta anaglyph
|
||||||
|
<!-- enum GLStereoDownmix::variant RedCyanDubois -->
|
||||||
|
Dubois optimised Red-Cyan anaglyph
|
||||||
|
<!-- enum GLStereoDownmix::variant AmberBlueDubois -->
|
||||||
|
Dubois optimised Amber-Blue anaglyph
|
||||||
<!-- enum GLTextureTarget -->
|
<!-- enum GLTextureTarget -->
|
||||||
<!-- enum GLTextureTarget::variant None -->
|
<!-- enum GLTextureTarget::variant None -->
|
||||||
no texture target
|
no texture target
|
||||||
|
@ -1298,7 +1446,7 @@ Convert stereoscopic/multiview video using fragment shaders.
|
||||||
|
|
||||||
a new `GLViewConvert`
|
a new `GLViewConvert`
|
||||||
<!-- impl GLViewConvert::fn fixate_caps -->
|
<!-- impl GLViewConvert::fn fixate_caps -->
|
||||||
Provides an implementation of `gst_base::BaseTransformClass::fixate_caps`()
|
Provides an implementation of `gst_base::BaseTransformClass.fixate_caps`()
|
||||||
## `direction`
|
## `direction`
|
||||||
a `gst::PadDirection`
|
a `gst::PadDirection`
|
||||||
## `caps`
|
## `caps`
|
||||||
|
@ -1350,7 +1498,7 @@ a `gst::Buffer`
|
||||||
|
|
||||||
a `gst::FlowReturn`
|
a `gst::FlowReturn`
|
||||||
<!-- impl GLViewConvert::fn transform_caps -->
|
<!-- impl GLViewConvert::fn transform_caps -->
|
||||||
Provides an implementation of `gst_base::BaseTransformClass::transform_caps`()
|
Provides an implementation of `gst_base::BaseTransformClass.transform_caps`()
|
||||||
## `direction`
|
## `direction`
|
||||||
a `gst::PadDirection`
|
a `gst::PadDirection`
|
||||||
## `caps`
|
## `caps`
|
||||||
|
@ -1381,6 +1529,15 @@ a `GLDisplay`
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
a new `GLWindow` using `display`'s connection
|
a new `GLWindow` using `display`'s connection
|
||||||
|
<!-- trait GLWindowExt::fn controls_viewport -->
|
||||||
|
Checks if `self` controls the GL viewport.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
`true` if `self` controls the GL viewport, otherwise `false`
|
||||||
<!-- trait GLWindowExt::fn draw -->
|
<!-- trait GLWindowExt::fn draw -->
|
||||||
Redraw the window contents. Implementations should invoke the draw callback.
|
Redraw the window contents. Implementations should invoke the draw callback.
|
||||||
<!-- trait GLWindowExt::fn get_context -->
|
<!-- trait GLWindowExt::fn get_context -->
|
||||||
|
@ -1411,8 +1568,16 @@ for them. This method allows you to disable events handling completely
|
||||||
from the `self`.
|
from the `self`.
|
||||||
## `handle_events`
|
## `handle_events`
|
||||||
a `gboolean` indicating if events should be handled or not.
|
a `gboolean` indicating if events should be handled or not.
|
||||||
|
<!-- trait GLWindowExt::fn queue_resize -->
|
||||||
|
Queue resizing of `self`.
|
||||||
<!-- trait GLWindowExt::fn quit -->
|
<!-- trait GLWindowExt::fn quit -->
|
||||||
Quit the runloop's execution.
|
Quit the runloop's execution.
|
||||||
|
<!-- trait GLWindowExt::fn resize -->
|
||||||
|
Resize `self` to the given `width` and `height`.
|
||||||
|
## `width`
|
||||||
|
new width
|
||||||
|
## `height`
|
||||||
|
new height
|
||||||
<!-- trait GLWindowExt::fn run -->
|
<!-- trait GLWindowExt::fn run -->
|
||||||
Start the execution of the runloop.
|
Start the execution of the runloop.
|
||||||
<!-- trait GLWindowExt::fn send_message -->
|
<!-- trait GLWindowExt::fn send_message -->
|
||||||
|
|
|
@ -522,13 +522,7 @@ Encoding profiles for containers. Keeps track of a list of `EncodingProfile`
|
||||||
|
|
||||||
# Implements
|
# Implements
|
||||||
|
|
||||||
[`EncodingContainerProfileExt`](trait.EncodingContainerProfileExt.html), [`EncodingProfileExt`](trait.EncodingProfileExt.html), [`glib::object::ObjectExt`](../glib/object/trait.ObjectExt.html)
|
[`EncodingProfileExt`](trait.EncodingProfileExt.html), [`glib::object::ObjectExt`](../glib/object/trait.ObjectExt.html)
|
||||||
<!-- trait EncodingContainerProfileExt -->
|
|
||||||
Trait containing all `EncodingContainerProfile` methods.
|
|
||||||
|
|
||||||
# Implementors
|
|
||||||
|
|
||||||
[`EncodingContainerProfile`](struct.EncodingContainerProfile.html)
|
|
||||||
<!-- impl EncodingContainerProfile::fn new -->
|
<!-- impl EncodingContainerProfile::fn new -->
|
||||||
Creates a new `EncodingContainerProfile`.
|
Creates a new `EncodingContainerProfile`.
|
||||||
## `name`
|
## `name`
|
||||||
|
@ -544,7 +538,7 @@ The preset to use for this profile.
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
The newly created `EncodingContainerProfile`.
|
The newly created `EncodingContainerProfile`.
|
||||||
<!-- trait EncodingContainerProfileExt::fn add_profile -->
|
<!-- impl EncodingContainerProfile::fn add_profile -->
|
||||||
Add a `EncodingProfile` to the list of profiles handled by `self`.
|
Add a `EncodingProfile` to the list of profiles handled by `self`.
|
||||||
|
|
||||||
No copy of `profile` will be made, if you wish to use it elsewhere after this
|
No copy of `profile` will be made, if you wish to use it elsewhere after this
|
||||||
|
@ -555,7 +549,7 @@ the `EncodingProfile` to add.
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
`true` if the `stream` was properly added, else `false`.
|
`true` if the `stream` was properly added, else `false`.
|
||||||
<!-- trait EncodingContainerProfileExt::fn contains_profile -->
|
<!-- impl EncodingContainerProfile::fn contains_profile -->
|
||||||
Checks if `self` contains a `EncodingProfile` identical to
|
Checks if `self` contains a `EncodingProfile` identical to
|
||||||
`profile`.
|
`profile`.
|
||||||
## `profile`
|
## `profile`
|
||||||
|
@ -565,7 +559,7 @@ a `EncodingProfile`
|
||||||
|
|
||||||
`true` if `self` contains a `EncodingProfile` identical
|
`true` if `self` contains a `EncodingProfile` identical
|
||||||
to `profile`, else `false`.
|
to `profile`, else `false`.
|
||||||
<!-- trait EncodingContainerProfileExt::fn get_profiles -->
|
<!-- impl EncodingContainerProfile::fn get_profiles -->
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
|
@ -610,11 +604,12 @@ The new `EncodingProfile` or `None`.
|
||||||
<!-- trait EncodingProfileExt::fn copy -->
|
<!-- trait EncodingProfileExt::fn copy -->
|
||||||
Makes a deep copy of `self`
|
Makes a deep copy of `self`
|
||||||
|
|
||||||
|
Feature: `v1_12`
|
||||||
|
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
The copy of `self`
|
The copy of `self`
|
||||||
|
|
||||||
Since 1.12
|
|
||||||
<!-- trait EncodingProfileExt::fn get_allow_dynamic_output -->
|
<!-- trait EncodingProfileExt::fn get_allow_dynamic_output -->
|
||||||
Get whether the format that has been negotiated in at some point can be renegotiated
|
Get whether the format that has been negotiated in at some point can be renegotiated
|
||||||
later during the encoding.
|
later during the encoding.
|
||||||
|
@ -699,8 +694,6 @@ Set `description` as the given description for the `self`. A copy of
|
||||||
the description to set on the profile
|
the description to set on the profile
|
||||||
<!-- trait EncodingProfileExt::fn set_enabled -->
|
<!-- trait EncodingProfileExt::fn set_enabled -->
|
||||||
Set whether the profile should be used or not.
|
Set whether the profile should be used or not.
|
||||||
|
|
||||||
Since 1.6
|
|
||||||
## `enabled`
|
## `enabled`
|
||||||
`false` to disable `profile`, `true` to enable it
|
`false` to disable `profile`, `true` to enable it
|
||||||
<!-- trait EncodingProfileExt::fn set_format -->
|
<!-- trait EncodingProfileExt::fn set_format -->
|
||||||
|
|
|
@ -28,8 +28,6 @@ a `Player` configuration
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
current position update interval in milliseconds
|
current position update interval in milliseconds
|
||||||
|
|
||||||
Since 1.10
|
|
||||||
<!-- impl Player::fn config_get_seek_accurate -->
|
<!-- impl Player::fn config_get_seek_accurate -->
|
||||||
## `config`
|
## `config`
|
||||||
a `Player` configuration
|
a `Player` configuration
|
||||||
|
@ -37,8 +35,6 @@ a `Player` configuration
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
`true` if accurate seeking is enabled
|
`true` if accurate seeking is enabled
|
||||||
|
|
||||||
Since 1.12
|
|
||||||
<!-- impl Player::fn config_get_user_agent -->
|
<!-- impl Player::fn config_get_user_agent -->
|
||||||
Return the user agent which has been configured using
|
Return the user agent which has been configured using
|
||||||
`Player::config_set_user_agent` if any.
|
`Player::config_set_user_agent` if any.
|
||||||
|
@ -48,11 +44,9 @@ a `Player` configuration
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
the configured agent, or `None`
|
the configured agent, or `None`
|
||||||
Since 1.10
|
|
||||||
<!-- impl Player::fn config_set_position_update_interval -->
|
<!-- impl Player::fn config_set_position_update_interval -->
|
||||||
set interval in milliseconds between two position-updated signals.
|
set interval in milliseconds between two position-updated signals.
|
||||||
pass 0 to stop updating the position.
|
pass 0 to stop updating the position.
|
||||||
Since 1.10
|
|
||||||
## `config`
|
## `config`
|
||||||
a `Player` configuration
|
a `Player` configuration
|
||||||
## `interval`
|
## `interval`
|
||||||
|
@ -75,8 +69,6 @@ accurate seek or not
|
||||||
Set the user agent to pass to the server if `player` needs to connect
|
Set the user agent to pass to the server if `player` needs to connect
|
||||||
to a server during playback. This is typically used when playing HTTP
|
to a server during playback. This is typically used when playing HTTP
|
||||||
or RTSP streams.
|
or RTSP streams.
|
||||||
|
|
||||||
Since 1.10
|
|
||||||
## `config`
|
## `config`
|
||||||
a `Player` configuration
|
a `Player` configuration
|
||||||
## `agent`
|
## `agent`
|
||||||
|
@ -123,8 +115,6 @@ Retrieve the current value of audio-video-offset property
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
The current value of audio-video-offset in nanoseconds
|
The current value of audio-video-offset in nanoseconds
|
||||||
|
|
||||||
Since 1.10
|
|
||||||
<!-- impl Player::fn get_color_balance -->
|
<!-- impl Player::fn get_color_balance -->
|
||||||
Retrieve the current value of the indicated `type_`.
|
Retrieve the current value of the indicated `type_`.
|
||||||
## `type_`
|
## `type_`
|
||||||
|
@ -143,8 +133,6 @@ or it must be freed after usage.
|
||||||
|
|
||||||
a copy of the current configuration of `self`. Use
|
a copy of the current configuration of `self`. Use
|
||||||
`gst::Structure::free` after usage or `Player::set_config`.
|
`gst::Structure::free` after usage or `Player::set_config`.
|
||||||
|
|
||||||
Since 1.10
|
|
||||||
<!-- impl Player::fn get_current_audio_track -->
|
<!-- impl Player::fn get_current_audio_track -->
|
||||||
A Function to get current audio `PlayerAudioInfo` instance.
|
A Function to get current audio `PlayerAudioInfo` instance.
|
||||||
|
|
||||||
|
@ -230,6 +218,15 @@ current subtitle URI
|
||||||
|
|
||||||
URI of the current external subtitle.
|
URI of the current external subtitle.
|
||||||
`g_free` after usage.
|
`g_free` after usage.
|
||||||
|
<!-- impl Player::fn get_subtitle_video_offset -->
|
||||||
|
Retrieve the current value of subtitle-video-offset property
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
The current value of subtitle-video-offset in nanoseconds
|
||||||
<!-- impl Player::fn get_uri -->
|
<!-- impl Player::fn get_uri -->
|
||||||
Gets the URI of the currently-playing stream.
|
Gets the URI of the currently-playing stream.
|
||||||
|
|
||||||
|
@ -252,8 +249,6 @@ Additional configuration
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
Current video snapshot sample or `None` on failure
|
Current video snapshot sample or `None` on failure
|
||||||
|
|
||||||
Since 1.12
|
|
||||||
<!-- impl Player::fn get_volume -->
|
<!-- impl Player::fn get_volume -->
|
||||||
Returns the current volume level, as a percentage between 0 and 1.
|
Returns the current volume level, as a percentage between 0 and 1.
|
||||||
|
|
||||||
|
@ -291,8 +286,6 @@ Enable or disable the current audio track.
|
||||||
TRUE or FALSE
|
TRUE or FALSE
|
||||||
<!-- impl Player::fn set_audio_video_offset -->
|
<!-- impl Player::fn set_audio_video_offset -->
|
||||||
Sets audio-video-offset property by value of `offset`
|
Sets audio-video-offset property by value of `offset`
|
||||||
|
|
||||||
Since 1.10
|
|
||||||
## `offset`
|
## `offset`
|
||||||
`gint64` in nanoseconds
|
`gint64` in nanoseconds
|
||||||
<!-- impl Player::fn set_color_balance -->
|
<!-- impl Player::fn set_color_balance -->
|
||||||
|
@ -318,7 +311,6 @@ a `gst::Structure`
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
`true` when the configuration could be set.
|
`true` when the configuration could be set.
|
||||||
Since 1.10
|
|
||||||
<!-- impl Player::fn set_multiview_flags -->
|
<!-- impl Player::fn set_multiview_flags -->
|
||||||
Sets the current value of the indicated mode `type_` to the passed
|
Sets the current value of the indicated mode `type_` to the passed
|
||||||
value.
|
value.
|
||||||
|
@ -356,6 +348,13 @@ gst_player_set_subtitle_track_enabled(`self`, TRUE) so the subtitles are actuall
|
||||||
rendered.
|
rendered.
|
||||||
## `uri`
|
## `uri`
|
||||||
subtitle URI
|
subtitle URI
|
||||||
|
<!-- impl Player::fn set_subtitle_video_offset -->
|
||||||
|
Sets subtitle-video-offset property by value of `offset`
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `offset`
|
||||||
|
`gint64` in nanoseconds
|
||||||
<!-- impl Player::fn set_uri -->
|
<!-- impl Player::fn set_uri -->
|
||||||
Sets the next URI to play.
|
Sets the next URI to play.
|
||||||
## `uri`
|
## `uri`
|
||||||
|
@ -672,12 +671,6 @@ Window handle to use or `None`
|
||||||
Window handle to use or `None`
|
Window handle to use or `None`
|
||||||
## `video_sink`
|
## `video_sink`
|
||||||
the custom video_sink element to be set for the video renderer
|
the custom video_sink element to be set for the video renderer
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Since 1.12
|
|
||||||
<!-- impl PlayerVideoOverlayVideoRenderer::fn expose -->
|
<!-- impl PlayerVideoOverlayVideoRenderer::fn expose -->
|
||||||
Tell an overlay that it has been exposed. This will redraw the current frame
|
Tell an overlay that it has been exposed. This will redraw the current frame
|
||||||
in the drawable even if the pipeline is PAUSED.
|
in the drawable even if the pipeline is PAUSED.
|
||||||
|
|
|
@ -177,6 +177,14 @@ users.
|
||||||
|
|
||||||
the `RTSPToken` of `self`. `gst_rtsp_token_unref` after
|
the `RTSPToken` of `self`. `gst_rtsp_token_unref` after
|
||||||
usage.
|
usage.
|
||||||
|
<!-- trait RTSPAuthExt::fn get_realm -->
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
the `realm` of `self`
|
||||||
<!-- trait RTSPAuthExt::fn get_supported_methods -->
|
<!-- trait RTSPAuthExt::fn get_supported_methods -->
|
||||||
Gets the supported authentication methods of `self`.
|
Gets the supported authentication methods of `self`.
|
||||||
|
|
||||||
|
@ -206,6 +214,24 @@ Get the `gio::TlsDatabase` used for verifying client certificate.
|
||||||
|
|
||||||
the `gio::TlsDatabase` of `self`. `gobject::ObjectExt::unref` after
|
the `gio::TlsDatabase` of `self`. `gobject::ObjectExt::unref` after
|
||||||
usage.
|
usage.
|
||||||
|
<!-- trait RTSPAuthExt::fn parse_htdigest -->
|
||||||
|
Parse the contents of the file at `path` and enable the privileges
|
||||||
|
listed in `token` for the users it describes.
|
||||||
|
|
||||||
|
The format of the file is expected to match the format described by
|
||||||
|
<https://en.wikipedia.org/wiki/Digest_access_authentication`The_.htdigest_file`>,
|
||||||
|
as output by the `htdigest` command.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `path`
|
||||||
|
Path to the htdigest file
|
||||||
|
## `token`
|
||||||
|
authorisation token
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
`true` if the file was successfully parsed, `false` otherwise.
|
||||||
<!-- trait RTSPAuthExt::fn remove_basic -->
|
<!-- trait RTSPAuthExt::fn remove_basic -->
|
||||||
Removes `basic` authentication token.
|
Removes `basic` authentication token.
|
||||||
## `basic`
|
## `basic`
|
||||||
|
@ -222,6 +248,11 @@ Set the default `RTSPToken` to `token` in `self`. The default token will
|
||||||
be used for unauthenticated users.
|
be used for unauthenticated users.
|
||||||
## `token`
|
## `token`
|
||||||
a `RTSPToken`
|
a `RTSPToken`
|
||||||
|
<!-- trait RTSPAuthExt::fn set_realm -->
|
||||||
|
Set the `realm` of `self`
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
<!-- trait RTSPAuthExt::fn set_supported_methods -->
|
<!-- trait RTSPAuthExt::fn set_supported_methods -->
|
||||||
Sets the supported authentication `methods` for `self`.
|
Sets the supported authentication `methods` for `self`.
|
||||||
|
|
||||||
|
@ -244,8 +275,6 @@ a `gio::TlsCertificate`
|
||||||
Sets the certificate database that is used to verify peer certificates.
|
Sets the certificate database that is used to verify peer certificates.
|
||||||
If set to `None` (the default), then peer certificate validation will always
|
If set to `None` (the default), then peer certificate validation will always
|
||||||
set the `gio::TlsCertificateFlags::UnknownCa` error.
|
set the `gio::TlsCertificateFlags::UnknownCa` error.
|
||||||
|
|
||||||
Since 1.6
|
|
||||||
## `database`
|
## `database`
|
||||||
a `gio::TlsDatabase`
|
a `gio::TlsDatabase`
|
||||||
<!-- trait RTSPAuthExt::fn connect_accept_certificate -->
|
<!-- trait RTSPAuthExt::fn connect_accept_certificate -->
|
||||||
|
@ -397,12 +426,34 @@ sent to the client. `user_data` is passed to `func` and `notify` is called when
|
||||||
|
|
||||||
By default, the client will send the messages on the `gst_rtsp::RTSPConnection` that
|
By default, the client will send the messages on the `gst_rtsp::RTSPConnection` that
|
||||||
was configured with `RTSPClient::attach` was called.
|
was configured with `RTSPClient::attach` was called.
|
||||||
|
|
||||||
|
It is only allowed to set either a `send_func` or a `send_messages_func`
|
||||||
|
but not both at the same time.
|
||||||
## `func`
|
## `func`
|
||||||
a `GstRTSPClientSendFunc`
|
a `GstRTSPClientSendFunc`
|
||||||
## `user_data`
|
## `user_data`
|
||||||
user data passed to `func`
|
user data passed to `func`
|
||||||
## `notify`
|
## `notify`
|
||||||
called when `user_data` is no longer in use
|
called when `user_data` is no longer in use
|
||||||
|
<!-- trait RTSPClientExt::fn set_send_messages_func -->
|
||||||
|
Set `func` as the callback that will be called when new messages needs to be
|
||||||
|
sent to the client. `user_data` is passed to `func` and `notify` is called when
|
||||||
|
`user_data` is no longer in use.
|
||||||
|
|
||||||
|
By default, the client will send the messages on the `gst_rtsp::RTSPConnection` that
|
||||||
|
was configured with `RTSPClient::attach` was called.
|
||||||
|
|
||||||
|
It is only allowed to set either a `send_func` or a `send_messages_func`
|
||||||
|
but not both at the same time.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `func`
|
||||||
|
a `GstRTSPClientSendMessagesFunc`
|
||||||
|
## `user_data`
|
||||||
|
user data passed to `func`
|
||||||
|
## `notify`
|
||||||
|
called when `user_data` is no longer in use
|
||||||
<!-- trait RTSPClientExt::fn set_session_pool -->
|
<!-- trait RTSPClientExt::fn set_session_pool -->
|
||||||
Set `pool` as the sessionpool for `self` which it will use to find
|
Set `pool` as the sessionpool for `self` which it will use to find
|
||||||
or allocate sessions. the sessionpool is usually inherited from the server
|
or allocate sessions. the sessionpool is usually inherited from the server
|
||||||
|
@ -587,6 +638,14 @@ current thread that is handling the request for a client.
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
a `RTSPContext`
|
a `RTSPContext`
|
||||||
|
<!-- enum RTSPFilterResult -->
|
||||||
|
Possible return values for `RTSPSessionPoolExt::filter`.
|
||||||
|
<!-- enum RTSPFilterResult::variant Remove -->
|
||||||
|
Remove session
|
||||||
|
<!-- enum RTSPFilterResult::variant Keep -->
|
||||||
|
Keep session in the pool
|
||||||
|
<!-- enum RTSPFilterResult::variant Ref -->
|
||||||
|
Ref session in the result list
|
||||||
<!-- struct RTSPMedia -->
|
<!-- struct RTSPMedia -->
|
||||||
A class that contains the GStreamer element along with a list of
|
A class that contains the GStreamer element along with a list of
|
||||||
`RTSPStream` objects that can produce data.
|
`RTSPStream` objects that can produce data.
|
||||||
|
@ -627,6 +686,9 @@ element of `self`, and create `GstRTSPStreams` for them.
|
||||||
<!-- trait RTSPMediaExt::fn complete_pipeline -->
|
<!-- trait RTSPMediaExt::fn complete_pipeline -->
|
||||||
Add a receiver and sender parts to the pipeline based on the transport from
|
Add a receiver and sender parts to the pipeline based on the transport from
|
||||||
SETUP.
|
SETUP.
|
||||||
|
|
||||||
|
Feature: `v1_14`
|
||||||
|
|
||||||
## `transports`
|
## `transports`
|
||||||
a list of `gst_rtsp::RTSPTransport`
|
a list of `gst_rtsp::RTSPTransport`
|
||||||
|
|
||||||
|
@ -684,6 +746,14 @@ Get the clock that is used by the pipeline in `self`.
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
the `gst::Clock` used by `self`. unref after usage.
|
the `gst::Clock` used by `self`. unref after usage.
|
||||||
|
<!-- trait RTSPMediaExt::fn get_do_retransmission -->
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
Whether retransmission requests will be sent
|
||||||
<!-- trait RTSPMediaExt::fn get_element -->
|
<!-- trait RTSPMediaExt::fn get_element -->
|
||||||
Get the element that was used when constructing `self`.
|
Get the element that was used when constructing `self`.
|
||||||
|
|
||||||
|
@ -696,6 +766,15 @@ Get the latency that is used for receiving media.
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
latency in milliseconds
|
latency in milliseconds
|
||||||
|
<!-- trait RTSPMediaExt::fn get_max_mcast_ttl -->
|
||||||
|
Get the the maximum time-to-live value of outgoing multicast packets.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
the maximum time-to-live value of outgoing multicast packets.
|
||||||
<!-- trait RTSPMediaExt::fn get_multicast_iface -->
|
<!-- trait RTSPMediaExt::fn get_multicast_iface -->
|
||||||
Get the multicast interface used for `self`.
|
Get the multicast interface used for `self`.
|
||||||
|
|
||||||
|
@ -791,6 +870,15 @@ a `gst_sdp::SDPMessage`
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
TRUE on success.
|
TRUE on success.
|
||||||
|
<!-- trait RTSPMediaExt::fn is_bind_mcast_address -->
|
||||||
|
Check if multicast sockets are configured to be bound to multicast addresses.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
`true` if multicast sockets are configured to be bound to multicast addresses.
|
||||||
<!-- trait RTSPMediaExt::fn is_eos_shutdown -->
|
<!-- trait RTSPMediaExt::fn is_eos_shutdown -->
|
||||||
Check if the pipeline for `self` will send an EOS down the pipeline before
|
Check if the pipeline for `self` will send an EOS down the pipeline before
|
||||||
unpreparing.
|
unpreparing.
|
||||||
|
@ -857,7 +945,11 @@ a `gst_rtsp::RTSPTimeRange`
|
||||||
`true` on success.
|
`true` on success.
|
||||||
<!-- trait RTSPMediaExt::fn seek_full -->
|
<!-- trait RTSPMediaExt::fn seek_full -->
|
||||||
Seek the pipeline of `self` to `range`. `self` must be prepared with
|
Seek the pipeline of `self` to `range`. `self` must be prepared with
|
||||||
`RTSPMediaExt::prepare`.
|
`RTSPMediaExt::prepare`. In order to perform the seek operation,
|
||||||
|
the pipeline must contain all needed transport parts (transport sinks).
|
||||||
|
|
||||||
|
Feature: `v1_14`
|
||||||
|
|
||||||
## `range`
|
## `range`
|
||||||
a `gst_rtsp::RTSPTimeRange`
|
a `gst_rtsp::RTSPTimeRange`
|
||||||
## `flags`
|
## `flags`
|
||||||
|
@ -866,10 +958,30 @@ The minimal set of `gst::SeekFlags` to use
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
`true` on success.
|
`true` on success.
|
||||||
|
<!-- trait RTSPMediaExt::fn seekable -->
|
||||||
|
Check if the pipeline for `self` seek and up to what point in time,
|
||||||
|
it can seek.
|
||||||
|
|
||||||
|
Feature: `v1_14`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
-1 if the stream is not seekable, 0 if seekable only to the beginning
|
||||||
|
and > 0 to indicate the longest duration between any two random access points.
|
||||||
|
`G_MAXINT64` means any value is possible.
|
||||||
<!-- trait RTSPMediaExt::fn set_address_pool -->
|
<!-- trait RTSPMediaExt::fn set_address_pool -->
|
||||||
configure `pool` to be used as the address pool of `self`.
|
configure `pool` to be used as the address pool of `self`.
|
||||||
## `pool`
|
## `pool`
|
||||||
a `RTSPAddressPool`
|
a `RTSPAddressPool`
|
||||||
|
<!-- trait RTSPMediaExt::fn set_bind_mcast_address -->
|
||||||
|
Decide whether the multicast socket should be bound to a multicast address or
|
||||||
|
INADDR_ANY.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `bind_mcast_addr`
|
||||||
|
the new value
|
||||||
<!-- trait RTSPMediaExt::fn set_buffer_size -->
|
<!-- trait RTSPMediaExt::fn set_buffer_size -->
|
||||||
Set the kernel UDP buffer size.
|
Set the kernel UDP buffer size.
|
||||||
## `size`
|
## `size`
|
||||||
|
@ -878,6 +990,11 @@ the new value
|
||||||
Configure the clock used for the media.
|
Configure the clock used for the media.
|
||||||
## `clock`
|
## `clock`
|
||||||
`gst::Clock` to be used
|
`gst::Clock` to be used
|
||||||
|
<!-- trait RTSPMediaExt::fn set_do_retransmission -->
|
||||||
|
Set whether retransmission requests will be sent
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
<!-- trait RTSPMediaExt::fn set_eos_shutdown -->
|
<!-- trait RTSPMediaExt::fn set_eos_shutdown -->
|
||||||
Set or unset if an EOS event will be sent to the pipeline for `self` before
|
Set or unset if an EOS event will be sent to the pipeline for `self` before
|
||||||
it is unprepared.
|
it is unprepared.
|
||||||
|
@ -887,6 +1004,17 @@ the new value
|
||||||
Configure the latency used for receiving media.
|
Configure the latency used for receiving media.
|
||||||
## `latency`
|
## `latency`
|
||||||
latency in milliseconds
|
latency in milliseconds
|
||||||
|
<!-- trait RTSPMediaExt::fn set_max_mcast_ttl -->
|
||||||
|
Set the maximum time-to-live value of outgoing multicast packets.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `ttl`
|
||||||
|
the new multicast ttl value
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
`true` if the requested ttl has been set successfully.
|
||||||
<!-- trait RTSPMediaExt::fn set_multicast_iface -->
|
<!-- trait RTSPMediaExt::fn set_multicast_iface -->
|
||||||
configure `multicast_iface` to be used for `self`.
|
configure `multicast_iface` to be used for `self`.
|
||||||
## `multicast_iface`
|
## `multicast_iface`
|
||||||
|
@ -1083,6 +1211,14 @@ of all medias created from this factory.
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
The GstClock
|
The GstClock
|
||||||
|
<!-- trait RTSPMediaFactoryExt::fn get_do_retransmission -->
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
Whether retransmission requests will be sent for receiving media
|
||||||
<!-- trait RTSPMediaFactoryExt::fn get_latency -->
|
<!-- trait RTSPMediaFactoryExt::fn get_latency -->
|
||||||
Get the latency that is used for receiving media
|
Get the latency that is used for receiving media
|
||||||
|
|
||||||
|
@ -1097,6 +1233,15 @@ default prepare vmethod.
|
||||||
|
|
||||||
the configured launch description. `g_free` after
|
the configured launch description. `g_free` after
|
||||||
usage.
|
usage.
|
||||||
|
<!-- trait RTSPMediaFactoryExt::fn get_max_mcast_ttl -->
|
||||||
|
Get the the maximum time-to-live value of outgoing multicast packets.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
the maximum time-to-live value of outgoing multicast packets.
|
||||||
<!-- trait RTSPMediaFactoryExt::fn get_media_gtype -->
|
<!-- trait RTSPMediaFactoryExt::fn get_media_gtype -->
|
||||||
Return the GType of the GstRTSPMedia subclass this
|
Return the GType of the GstRTSPMedia subclass this
|
||||||
factory will create.
|
factory will create.
|
||||||
|
@ -1150,6 +1295,15 @@ methods.
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
The transport mode.
|
The transport mode.
|
||||||
|
<!-- trait RTSPMediaFactoryExt::fn is_bind_mcast_address -->
|
||||||
|
Check if multicast sockets are configured to be bound to multicast addresses.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
`true` if multicast sockets are configured to be bound to multicast addresses.
|
||||||
<!-- trait RTSPMediaFactoryExt::fn is_eos_shutdown -->
|
<!-- trait RTSPMediaFactoryExt::fn is_eos_shutdown -->
|
||||||
Get if media created from this factory will have an EOS event sent to the
|
Get if media created from this factory will have an EOS event sent to the
|
||||||
pipeline before shutdown.
|
pipeline before shutdown.
|
||||||
|
@ -1167,6 +1321,14 @@ Get if media created from this factory can be shared between clients.
|
||||||
configure `pool` to be used as the address pool of `self`.
|
configure `pool` to be used as the address pool of `self`.
|
||||||
## `pool`
|
## `pool`
|
||||||
a `RTSPAddressPool`
|
a `RTSPAddressPool`
|
||||||
|
<!-- trait RTSPMediaFactoryExt::fn set_bind_mcast_address -->
|
||||||
|
Decide whether the multicast socket should be bound to a multicast address or
|
||||||
|
INADDR_ANY.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `bind_mcast_addr`
|
||||||
|
the new value
|
||||||
<!-- trait RTSPMediaFactoryExt::fn set_buffer_size -->
|
<!-- trait RTSPMediaFactoryExt::fn set_buffer_size -->
|
||||||
Set the kernel UDP buffer size.
|
Set the kernel UDP buffer size.
|
||||||
## `size`
|
## `size`
|
||||||
|
@ -1176,6 +1338,12 @@ Configures a specific clock to be used by the pipelines
|
||||||
of all medias created from this factory.
|
of all medias created from this factory.
|
||||||
## `clock`
|
## `clock`
|
||||||
the clock to be used by the media factory
|
the clock to be used by the media factory
|
||||||
|
<!-- trait RTSPMediaFactoryExt::fn set_do_retransmission -->
|
||||||
|
Set whether retransmission requests will be sent for
|
||||||
|
receiving media
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
<!-- trait RTSPMediaFactoryExt::fn set_eos_shutdown -->
|
<!-- trait RTSPMediaFactoryExt::fn set_eos_shutdown -->
|
||||||
Configure if media created from this factory will have an EOS sent to the
|
Configure if media created from this factory will have an EOS sent to the
|
||||||
pipeline before shutdown.
|
pipeline before shutdown.
|
||||||
|
@ -1197,6 +1365,17 @@ The description should return a pipeline with payloaders named pay0, pay1,
|
||||||
etc.. Each of the payloaders will result in a stream.
|
etc.. Each of the payloaders will result in a stream.
|
||||||
## `launch`
|
## `launch`
|
||||||
the launch description
|
the launch description
|
||||||
|
<!-- trait RTSPMediaFactoryExt::fn set_max_mcast_ttl -->
|
||||||
|
Set the maximum time-to-live value of outgoing multicast packets.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `ttl`
|
||||||
|
the new multicast ttl value
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
`true` if the requested ttl has been set successfully.
|
||||||
<!-- trait RTSPMediaFactoryExt::fn set_media_gtype -->
|
<!-- trait RTSPMediaFactoryExt::fn set_media_gtype -->
|
||||||
Configure the GType of the GstRTSPMedia subclass to
|
Configure the GType of the GstRTSPMedia subclass to
|
||||||
create (by default, overridden construct vmethods
|
create (by default, overridden construct vmethods
|
||||||
|
@ -1787,6 +1966,9 @@ valid until the session of `self` is unreffed.
|
||||||
<!-- trait RTSPSessionMediaExt::fn get_transports -->
|
<!-- trait RTSPSessionMediaExt::fn get_transports -->
|
||||||
Get a list of all available `RTSPStreamTransport` in this session.
|
Get a list of all available `RTSPStreamTransport` in this session.
|
||||||
|
|
||||||
|
Feature: `v1_14`
|
||||||
|
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
a
|
a
|
||||||
|
@ -1952,6 +2134,25 @@ a `gst::Pad`
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
a new `RTSPStream`
|
a new `RTSPStream`
|
||||||
|
<!-- trait RTSPStreamExt::fn add_multicast_client_address -->
|
||||||
|
Add multicast client address to stream. At this point, the sockets that
|
||||||
|
will stream RTP and RTCP data to `destination` are supposed to be
|
||||||
|
allocated.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `destination`
|
||||||
|
a multicast address to add
|
||||||
|
## `rtp_port`
|
||||||
|
RTP port
|
||||||
|
## `rtcp_port`
|
||||||
|
RTCP port
|
||||||
|
## `family`
|
||||||
|
socket family
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
`true` if `destination` can be addedd and handled by `self`.
|
||||||
<!-- trait RTSPStreamExt::fn add_transport -->
|
<!-- trait RTSPStreamExt::fn add_transport -->
|
||||||
Add the transport in `trans` to `self`. The media of `self` will
|
Add the transport in `trans` to `self`. The media of `self` will
|
||||||
then also be send to the values configured in `trans`.
|
then also be send to the values configured in `trans`.
|
||||||
|
@ -1980,6 +2181,9 @@ Whether to use client settings or not
|
||||||
<!-- trait RTSPStreamExt::fn complete_stream -->
|
<!-- trait RTSPStreamExt::fn complete_stream -->
|
||||||
Add a receiver and sender part to the pipeline based on the transport from
|
Add a receiver and sender part to the pipeline based on the transport from
|
||||||
SETUP.
|
SETUP.
|
||||||
|
|
||||||
|
Feature: `v1_14`
|
||||||
|
|
||||||
## `transport`
|
## `transport`
|
||||||
a `gst_rtsp::RTSPTransport`
|
a `gst_rtsp::RTSPTransport`
|
||||||
|
|
||||||
|
@ -2030,6 +2234,15 @@ Get the previous joined bin with `RTSPStreamExt::join_bin` or NULL.
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
the joined bin or NULL.
|
the joined bin or NULL.
|
||||||
|
<!-- trait RTSPStreamExt::fn get_max_mcast_ttl -->
|
||||||
|
Get the the maximum time-to-live value of outgoing multicast packets.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
the maximum time-to-live value of outgoing multicast packets.
|
||||||
<!-- trait RTSPStreamExt::fn get_mtu -->
|
<!-- trait RTSPStreamExt::fn get_mtu -->
|
||||||
Get the configured MTU in the payloader of `self`.
|
Get the configured MTU in the payloader of `self`.
|
||||||
|
|
||||||
|
@ -2048,6 +2261,15 @@ the `gio::SocketFamily`
|
||||||
the `RTSPAddress` of `self`
|
the `RTSPAddress` of `self`
|
||||||
or `None` when no address could be allocated. `RTSPAddress::free`
|
or `None` when no address could be allocated. `RTSPAddress::free`
|
||||||
after usage.
|
after usage.
|
||||||
|
<!-- trait RTSPStreamExt::fn get_multicast_client_addresses -->
|
||||||
|
Get all multicast client addresses that RTP data will be sent to
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
A comma separated list of host:port pairs with destinations
|
||||||
<!-- trait RTSPStreamExt::fn get_multicast_iface -->
|
<!-- trait RTSPStreamExt::fn get_multicast_iface -->
|
||||||
Get the multicast interface used for `self`.
|
Get the multicast interface used for `self`.
|
||||||
|
|
||||||
|
@ -2093,6 +2315,9 @@ Get the amount of time to store retransmission data.
|
||||||
the amount of time to store retransmission data.
|
the amount of time to store retransmission data.
|
||||||
<!-- trait RTSPStreamExt::fn get_rtcp_multicast_socket -->
|
<!-- trait RTSPStreamExt::fn get_rtcp_multicast_socket -->
|
||||||
Get the multicast RTCP socket from `self` for a `family`.
|
Get the multicast RTCP socket from `self` for a `family`.
|
||||||
|
|
||||||
|
Feature: `v1_14`
|
||||||
|
|
||||||
## `family`
|
## `family`
|
||||||
the socket family
|
the socket family
|
||||||
|
|
||||||
|
@ -2119,6 +2344,7 @@ the socket family
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
the multicast RTP socket or `None` if no
|
the multicast RTP socket or `None` if no
|
||||||
|
|
||||||
socket could be allocated for `family`. Unref after usage
|
socket could be allocated for `family`. Unref after usage
|
||||||
<!-- trait RTSPStreamExt::fn get_rtp_socket -->
|
<!-- trait RTSPStreamExt::fn get_rtp_socket -->
|
||||||
Get the RTP socket from `self` for a `family`.
|
Get the RTP socket from `self` for a `family`.
|
||||||
|
@ -2182,6 +2408,30 @@ Get the SSRC used by the RTP session of this stream. This function can only
|
||||||
be called when `self` has been joined.
|
be called when `self` has been joined.
|
||||||
## `ssrc`
|
## `ssrc`
|
||||||
result ssrc
|
result ssrc
|
||||||
|
<!-- trait RTSPStreamExt::fn get_ulpfec_percentage -->
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
the amount of redundancy applied when creating ULPFEC
|
||||||
|
protection packets.
|
||||||
|
<!-- trait RTSPStreamExt::fn get_ulpfec_pt -->
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
the payload type used for ULPFEC protection packets
|
||||||
|
<!-- trait RTSPStreamExt::fn handle_keymgmt -->
|
||||||
|
Parse and handle a KeyMgmt header.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `keymgmt`
|
||||||
|
a keymgmt header
|
||||||
<!-- trait RTSPStreamExt::fn has_control -->
|
<!-- trait RTSPStreamExt::fn has_control -->
|
||||||
Check if `self` has the control string `control`.
|
Check if `self` has the control string `control`.
|
||||||
## `control`
|
## `control`
|
||||||
|
@ -2190,6 +2440,15 @@ a control string
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
`true` is `self` has `control` as the control string
|
`true` is `self` has `control` as the control string
|
||||||
|
<!-- trait RTSPStreamExt::fn is_bind_mcast_address -->
|
||||||
|
Check if multicast sockets are configured to be bound to multicast addresses.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
`true` if multicast sockets are configured to be bound to multicast addresses.
|
||||||
<!-- trait RTSPStreamExt::fn is_blocking -->
|
<!-- trait RTSPStreamExt::fn is_blocking -->
|
||||||
Check if `self` is blocking on a `gst::Buffer`.
|
Check if `self` is blocking on a `gst::Buffer`.
|
||||||
|
|
||||||
|
@ -2207,18 +2466,27 @@ Checks whether the stream is complete, contains the receiver and the sender
|
||||||
parts. As the stream contains sink(s) element(s), it's possible to perform
|
parts. As the stream contains sink(s) element(s), it's possible to perform
|
||||||
seek operations on it.
|
seek operations on it.
|
||||||
|
|
||||||
|
Feature: `v1_14`
|
||||||
|
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
`true` if the stream contains at least one sink element.
|
`true` if the stream contains at least one sink element.
|
||||||
<!-- trait RTSPStreamExt::fn is_receiver -->
|
<!-- trait RTSPStreamExt::fn is_receiver -->
|
||||||
Checks whether the stream is a receiver.
|
Checks whether the stream is a receiver.
|
||||||
|
|
||||||
|
Feature: `v1_14`
|
||||||
|
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
`true` if the stream is a receiver and `false` otherwise.
|
`true` if the stream is a receiver and `false` otherwise.
|
||||||
<!-- trait RTSPStreamExt::fn is_sender -->
|
<!-- trait RTSPStreamExt::fn is_sender -->
|
||||||
Checks whether the stream is a sender.
|
Checks whether the stream is a sender.
|
||||||
|
|
||||||
|
Feature: `v1_14`
|
||||||
|
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
`true` if the stream is a sender and `false` otherwise.
|
`true` if the stream is a sender and `false` otherwise.
|
||||||
|
@ -2308,11 +2576,40 @@ a `RTSPStreamTransport`
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
`true` if `trans` was removed
|
`true` if `trans` was removed
|
||||||
|
<!-- trait RTSPStreamExt::fn request_aux_receiver -->
|
||||||
|
Creating a rtxreceive bin
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `sessid`
|
||||||
|
the session id
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a `gst::Element`.
|
||||||
<!-- trait RTSPStreamExt::fn request_aux_sender -->
|
<!-- trait RTSPStreamExt::fn request_aux_sender -->
|
||||||
Creating a rtxsend bin
|
Creating a rtxsend bin
|
||||||
## `sessid`
|
## `sessid`
|
||||||
the session id
|
the session id
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a `gst::Element`.
|
||||||
|
<!-- trait RTSPStreamExt::fn request_ulpfec_decoder -->
|
||||||
|
Creating a rtpulpfecdec element
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a `gst::Element`.
|
||||||
|
<!-- trait RTSPStreamExt::fn request_ulpfec_encoder -->
|
||||||
|
Creating a rtpulpfecenc element
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
a `gst::Element`.
|
a `gst::Element`.
|
||||||
|
@ -2332,10 +2629,14 @@ a TTL
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
the `RTSPAddress` of `self` or `None` when
|
the `RTSPAddress` of `self` or `None` when
|
||||||
the address could be reserved. `RTSPAddress::free` after usage.
|
the address could not be reserved. `RTSPAddress::free` after
|
||||||
|
usage.
|
||||||
<!-- trait RTSPStreamExt::fn seekable -->
|
<!-- trait RTSPStreamExt::fn seekable -->
|
||||||
Checks whether the individual `self` is seekable.
|
Checks whether the individual `self` is seekable.
|
||||||
|
|
||||||
|
Feature: `v1_14`
|
||||||
|
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
`true` if `self` is seekable, else `false`.
|
`true` if `self` is seekable, else `false`.
|
||||||
|
@ -2343,6 +2644,14 @@ Checks whether the individual `self` is seekable.
|
||||||
configure `pool` to be used as the address pool of `self`.
|
configure `pool` to be used as the address pool of `self`.
|
||||||
## `pool`
|
## `pool`
|
||||||
a `RTSPAddressPool`
|
a `RTSPAddressPool`
|
||||||
|
<!-- trait RTSPStreamExt::fn set_bind_mcast_address -->
|
||||||
|
Decide whether the multicast socket should be bound to a multicast address or
|
||||||
|
INADDR_ANY.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `bind_mcast_addr`
|
||||||
|
the new value
|
||||||
<!-- trait RTSPStreamExt::fn set_blocked -->
|
<!-- trait RTSPStreamExt::fn set_blocked -->
|
||||||
Blocks or unblocks the dataflow on `self`.
|
Blocks or unblocks the dataflow on `self`.
|
||||||
## `blocked`
|
## `blocked`
|
||||||
|
@ -2373,6 +2682,17 @@ a control string
|
||||||
Configure the dscp qos of the outgoing sockets to `dscp_qos`.
|
Configure the dscp qos of the outgoing sockets to `dscp_qos`.
|
||||||
## `dscp_qos`
|
## `dscp_qos`
|
||||||
a new dscp qos value (0-63, or -1 to disable)
|
a new dscp qos value (0-63, or -1 to disable)
|
||||||
|
<!-- trait RTSPStreamExt::fn set_max_mcast_ttl -->
|
||||||
|
Set the maximum time-to-live value of outgoing multicast packets.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `ttl`
|
||||||
|
the new multicast ttl value
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
`true` if the requested ttl has been set successfully.
|
||||||
<!-- trait RTSPStreamExt::fn set_mtu -->
|
<!-- trait RTSPStreamExt::fn set_mtu -->
|
||||||
Configure the mtu in the payloader of `self` to `mtu`.
|
Configure the mtu in the payloader of `self` to `mtu`.
|
||||||
## `mtu`
|
## `mtu`
|
||||||
|
@ -2407,6 +2727,17 @@ a `guint`
|
||||||
Set the amount of time to store retransmission packets.
|
Set the amount of time to store retransmission packets.
|
||||||
## `time`
|
## `time`
|
||||||
a `gst::ClockTime`
|
a `gst::ClockTime`
|
||||||
|
<!-- trait RTSPStreamExt::fn set_ulpfec_percentage -->
|
||||||
|
Sets the amount of redundancy to apply when creating ULPFEC
|
||||||
|
protection packets.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
<!-- trait RTSPStreamExt::fn set_ulpfec_pt -->
|
||||||
|
Set the payload type to be used for ULPFEC protection packets
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
<!-- trait RTSPStreamExt::fn transport_filter -->
|
<!-- trait RTSPStreamExt::fn transport_filter -->
|
||||||
Call `func` for each transport managed by `self`. The result value of `func`
|
Call `func` for each transport managed by `self`. The result value of `func`
|
||||||
determines what happens to the transport. `func` will be called with `self`
|
determines what happens to the transport. `func` will be called with `self`
|
||||||
|
@ -2445,6 +2776,17 @@ a `gst::Caps` with crypto info
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
`true` if `crypto` could be updated
|
`true` if `crypto` could be updated
|
||||||
|
<!-- trait RTSPStreamExt::fn verify_mcast_ttl -->
|
||||||
|
Check if the requested multicast ttl value is allowed.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `ttl`
|
||||||
|
a requested multicast ttl
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
TRUE if the requested ttl value is allowed.
|
||||||
<!-- struct RTSPStreamTransport -->
|
<!-- struct RTSPStreamTransport -->
|
||||||
A Transport description for a stream
|
A Transport description for a stream
|
||||||
|
|
||||||
|
@ -2506,6 +2848,11 @@ Check if `self` is timed out.
|
||||||
`true` if `self` timed out.
|
`true` if `self` timed out.
|
||||||
<!-- trait RTSPStreamTransportExt::fn keep_alive -->
|
<!-- trait RTSPStreamTransportExt::fn keep_alive -->
|
||||||
Signal the installed keep_alive callback for `self`.
|
Signal the installed keep_alive callback for `self`.
|
||||||
|
<!-- trait RTSPStreamTransportExt::fn message_sent -->
|
||||||
|
Signal the installed message_sent callback for `self`.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
<!-- trait RTSPStreamTransportExt::fn recv_data -->
|
<!-- trait RTSPStreamTransportExt::fn recv_data -->
|
||||||
Receive `buffer` on `channel` `self`.
|
Receive `buffer` on `channel` `self`.
|
||||||
## `channel`
|
## `channel`
|
||||||
|
@ -2524,6 +2871,17 @@ a `gst::Buffer`
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
|
`true` on success
|
||||||
|
<!-- trait RTSPStreamTransportExt::fn send_rtcp_list -->
|
||||||
|
Send `buffer_list` to the installed RTCP callback for `self`.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `buffer_list`
|
||||||
|
a `gst::Buffer`
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
`true` on success
|
`true` on success
|
||||||
<!-- trait RTSPStreamTransportExt::fn send_rtp -->
|
<!-- trait RTSPStreamTransportExt::fn send_rtp -->
|
||||||
Send `buffer` to the installed RTP callback for `self`.
|
Send `buffer` to the installed RTP callback for `self`.
|
||||||
|
@ -2532,6 +2890,17 @@ a `gst::Buffer`
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
|
`true` on success
|
||||||
|
<!-- trait RTSPStreamTransportExt::fn send_rtp_list -->
|
||||||
|
Send `buffer_list` to the installed RTP callback for `self`.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `buffer_list`
|
||||||
|
a `gst::BufferList`
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
`true` on success
|
`true` on success
|
||||||
<!-- trait RTSPStreamTransportExt::fn set_active -->
|
<!-- trait RTSPStreamTransportExt::fn set_active -->
|
||||||
Activate or deactivate datatransfer configured in `self`.
|
Activate or deactivate datatransfer configured in `self`.
|
||||||
|
@ -2561,6 +2930,28 @@ a callback called when the receiver is active
|
||||||
user data passed to callback
|
user data passed to callback
|
||||||
## `notify`
|
## `notify`
|
||||||
called with the user_data when no longer needed.
|
called with the user_data when no longer needed.
|
||||||
|
<!-- trait RTSPStreamTransportExt::fn set_list_callbacks -->
|
||||||
|
Install callbacks that will be called when data for a stream should be sent
|
||||||
|
to a client. This is usually used when sending RTP/RTCP over TCP.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `send_rtp_list`
|
||||||
|
a callback called when RTP should be sent
|
||||||
|
## `send_rtcp_list`
|
||||||
|
a callback called when RTCP should be sent
|
||||||
|
## `user_data`
|
||||||
|
user data passed to callbacks
|
||||||
|
## `notify`
|
||||||
|
called with the user_data when no longer needed.
|
||||||
|
<!-- trait RTSPStreamTransportExt::fn set_message_sent -->
|
||||||
|
Install a callback that will be called when a message has been sent on `self`.
|
||||||
|
## `message_sent`
|
||||||
|
a callback called when a message has been sent
|
||||||
|
## `user_data`
|
||||||
|
user data passed to callback
|
||||||
|
## `notify`
|
||||||
|
called with the user_data when no longer needed
|
||||||
<!-- trait RTSPStreamTransportExt::fn set_timed_out -->
|
<!-- trait RTSPStreamTransportExt::fn set_timed_out -->
|
||||||
Set the timed out state of `self` to `timedout`
|
Set the timed out state of `self` to `timedout`
|
||||||
## `timedout`
|
## `timedout`
|
||||||
|
|
|
@ -8,6 +8,7 @@ basic authentication
|
||||||
<!-- enum RTSPAuthMethod::variant Digest -->
|
<!-- enum RTSPAuthMethod::variant Digest -->
|
||||||
digest authentication
|
digest authentication
|
||||||
<!-- struct RTSPAuthParam -->
|
<!-- struct RTSPAuthParam -->
|
||||||
|
RTSP Authentication parameter
|
||||||
<!-- enum RTSPFamily -->
|
<!-- enum RTSPFamily -->
|
||||||
The possible network families.
|
The possible network families.
|
||||||
<!-- enum RTSPFamily::variant None -->
|
<!-- enum RTSPFamily::variant None -->
|
||||||
|
|
|
@ -1,565 +1 @@
|
||||||
<!-- file * -->
|
<!-- file * -->
|
||||||
<!-- enum MIKEYCacheType -->
|
|
||||||
The different cache types
|
|
||||||
<!-- enum MIKEYCacheType::variant None -->
|
|
||||||
The envelope key MUST NOT be cached
|
|
||||||
<!-- enum MIKEYCacheType::variant Always -->
|
|
||||||
The envelope key MUST be cached
|
|
||||||
<!-- enum MIKEYCacheType::variant ForCsb -->
|
|
||||||
The envelope key MUST be cached, but only
|
|
||||||
to be used for the specific CSB.
|
|
||||||
<!-- enum MIKEYEncAlg -->
|
|
||||||
The encryption algorithm used to encrypt the Encr data field
|
|
||||||
<!-- enum MIKEYEncAlg::variant Null -->
|
|
||||||
no encryption
|
|
||||||
<!-- enum MIKEYEncAlg::variant AesCm128 -->
|
|
||||||
AES-CM using a 128-bit key
|
|
||||||
<!-- enum MIKEYEncAlg::variant AesKw128 -->
|
|
||||||
AES Key Wrap using a 128-bit key
|
|
||||||
<!-- enum MIKEYKVType -->
|
|
||||||
The key validity type
|
|
||||||
<!-- enum MIKEYKVType::variant Null -->
|
|
||||||
No specific usage rule
|
|
||||||
<!-- enum MIKEYKVType::variant Spi -->
|
|
||||||
The key is associated with the SPI/MKI
|
|
||||||
<!-- enum MIKEYKVType::variant Interval -->
|
|
||||||
The key has a start and expiration time
|
|
||||||
<!-- enum MIKEYKeyDataType -->
|
|
||||||
The type of key.
|
|
||||||
<!-- enum MIKEYKeyDataType::variant Tgk -->
|
|
||||||
a TEK Generation Key
|
|
||||||
<!-- enum MIKEYKeyDataType::variant Tek -->
|
|
||||||
Traffic-Encrypting Key
|
|
||||||
<!-- enum MIKEYMacAlg -->
|
|
||||||
Specifies the authentication algorithm used
|
|
||||||
<!-- enum MIKEYMacAlg::variant Null -->
|
|
||||||
no authentication
|
|
||||||
<!-- enum MIKEYMacAlg::variant HmacSha1160 -->
|
|
||||||
HMAC-SHA-1-160
|
|
||||||
<!-- enum MIKEYMapType -->
|
|
||||||
Specifies the method of uniquely mapping Crypto Sessions to the security
|
|
||||||
protocol sessions.
|
|
||||||
<!-- struct MIKEYMessage -->
|
|
||||||
Structure holding the information of the MIKEY message
|
|
||||||
<!-- impl MIKEYMessage::fn new -->
|
|
||||||
Make a new MIKEY message.
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
a new `MIKEYMessage` on success
|
|
||||||
<!-- impl MIKEYMessage::fn new_from_bytes -->
|
|
||||||
Make a new `MIKEYMessage` from `bytes`.
|
|
||||||
## `bytes`
|
|
||||||
a `glib::Bytes`
|
|
||||||
## `info`
|
|
||||||
a `MIKEYDecryptInfo`
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
a new `MIKEYMessage`
|
|
||||||
<!-- impl MIKEYMessage::fn new_from_caps -->
|
|
||||||
Makes mikey message including:
|
|
||||||
- Security Policy Payload
|
|
||||||
- Key Data Transport Payload
|
|
||||||
- Key Data Sub-Payload
|
|
||||||
## `caps`
|
|
||||||
a `gst::Caps`, including SRTP parameters (srtp/srtcp cipher, authorization, key data)
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
a `MIKEYMessage`,
|
|
||||||
or `None` if there is no srtp information in the caps.
|
|
||||||
<!-- impl MIKEYMessage::fn new_from_data -->
|
|
||||||
Parse `size` bytes from `data` into a `MIKEYMessage`. `info` contains the
|
|
||||||
parameters to decrypt and verify the data.
|
|
||||||
## `data`
|
|
||||||
bytes to read
|
|
||||||
## `size`
|
|
||||||
length of `data`
|
|
||||||
## `info`
|
|
||||||
`MIKEYDecryptInfo`
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
a `MIKEYMessage` on success or `None` when parsing failed and
|
|
||||||
`error` will be set.
|
|
||||||
<!-- impl MIKEYMessage::fn add_cs_srtp -->
|
|
||||||
Add a Crypto policy for SRTP to `self`.
|
|
||||||
## `policy`
|
|
||||||
The security policy applied for the stream with `ssrc`
|
|
||||||
## `ssrc`
|
|
||||||
the SSRC that must be used for the stream
|
|
||||||
## `roc`
|
|
||||||
current rollover counter
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYMessage::fn add_payload -->
|
|
||||||
Add a new payload to `self`.
|
|
||||||
## `payload`
|
|
||||||
a `MIKEYPayload`
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYMessage::fn add_pke -->
|
|
||||||
Add a new PKE payload to `self` with the given parameters.
|
|
||||||
## `C`
|
|
||||||
envelope key cache indicator
|
|
||||||
## `data_len`
|
|
||||||
the length of `data`
|
|
||||||
## `data`
|
|
||||||
the encrypted envelope key
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYMessage::fn add_rand -->
|
|
||||||
Add a new RAND payload to `self` with the given parameters.
|
|
||||||
## `len`
|
|
||||||
the length of `rand`
|
|
||||||
## `rand`
|
|
||||||
random data
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYMessage::fn add_rand_len -->
|
|
||||||
Add a new RAND payload to `self` with `len` random bytes.
|
|
||||||
## `len`
|
|
||||||
length
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYMessage::fn add_t -->
|
|
||||||
Add a new T payload to `self` with the given parameters.
|
|
||||||
## `type_`
|
|
||||||
specifies the timestamp type used
|
|
||||||
## `ts_value`
|
|
||||||
The timestamp value of the specified `type_`
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYMessage::fn add_t_now_ntp_utc -->
|
|
||||||
Add a new T payload to `self` that contains the current time
|
|
||||||
in NTP-UTC format.
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYMessage::fn base64_encode -->
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
a `gchar`, base64-encoded data
|
|
||||||
<!-- impl MIKEYMessage::fn find_payload -->
|
|
||||||
Find the `nth` occurence of the payload with `type_` in `self`.
|
|
||||||
## `type_`
|
|
||||||
a `MIKEYPayloadType`
|
|
||||||
## `nth`
|
|
||||||
payload to find
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
the `nth` `MIKEYPayload` of `type_`.
|
|
||||||
<!-- impl MIKEYMessage::fn get_cs_srtp -->
|
|
||||||
Get the policy information of `self` at `idx`.
|
|
||||||
## `idx`
|
|
||||||
an index
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
a `MIKEYMapSRTP`
|
|
||||||
<!-- impl MIKEYMessage::fn get_n_cs -->
|
|
||||||
Get the number of crypto sessions in `self`.
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
the number of crypto sessions
|
|
||||||
<!-- impl MIKEYMessage::fn get_n_payloads -->
|
|
||||||
Get the number of payloads in `self`.
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
the number of payloads in `self`
|
|
||||||
<!-- impl MIKEYMessage::fn get_payload -->
|
|
||||||
Get the `MIKEYPayload` at `idx` in `self`
|
|
||||||
## `idx`
|
|
||||||
an index
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
the `MIKEYPayload` at `idx`. The payload
|
|
||||||
remains valid for as long as it is part of `self`.
|
|
||||||
<!-- impl MIKEYMessage::fn insert_cs_srtp -->
|
|
||||||
Insert a Crypto Session map for SRTP in `self` at `idx`
|
|
||||||
|
|
||||||
When `idx` is -1, the policy will be appended.
|
|
||||||
## `idx`
|
|
||||||
the index to insert at
|
|
||||||
## `map`
|
|
||||||
the map info
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYMessage::fn insert_payload -->
|
|
||||||
Insert the `payload` at index `idx` in `self`. If `idx` is -1, the payload
|
|
||||||
will be appended to `self`.
|
|
||||||
## `idx`
|
|
||||||
an index
|
|
||||||
## `payload`
|
|
||||||
a `MIKEYPayload`
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYMessage::fn remove_cs_srtp -->
|
|
||||||
Remove the SRTP policy at `idx`.
|
|
||||||
## `idx`
|
|
||||||
the index to remove
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYMessage::fn remove_payload -->
|
|
||||||
Remove the payload in `self` at `idx`
|
|
||||||
## `idx`
|
|
||||||
an index
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYMessage::fn replace_cs_srtp -->
|
|
||||||
Replace a Crypto Session map for SRTP in `self` at `idx` with `map`.
|
|
||||||
## `idx`
|
|
||||||
the index to insert at
|
|
||||||
## `map`
|
|
||||||
the map info
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYMessage::fn replace_payload -->
|
|
||||||
Replace the payload at `idx` in `self` with `payload`.
|
|
||||||
## `idx`
|
|
||||||
an index
|
|
||||||
## `payload`
|
|
||||||
a `MIKEYPayload`
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYMessage::fn set_info -->
|
|
||||||
Set the information in `self`.
|
|
||||||
## `version`
|
|
||||||
a version
|
|
||||||
## `type_`
|
|
||||||
a `MIKEYType`
|
|
||||||
## `V`
|
|
||||||
verify flag
|
|
||||||
## `prf_func`
|
|
||||||
the `MIKEYPRFFunc` function to use
|
|
||||||
## `CSB_id`
|
|
||||||
the Crypto Session Bundle id
|
|
||||||
## `map_type`
|
|
||||||
the `GstMIKEYCSIDMapType`
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYMessage::fn to_bytes -->
|
|
||||||
Convert `self` to a `glib::Bytes`.
|
|
||||||
## `info`
|
|
||||||
a `MIKEYEncryptInfo`
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
a new `glib::Bytes` for `self`.
|
|
||||||
<!-- impl MIKEYMessage::fn to_caps -->
|
|
||||||
|
|
||||||
Feature: `v1_8_1`
|
|
||||||
|
|
||||||
## `caps`
|
|
||||||
a `gst::Caps` to be filled with SRTP parameters (srtp/srtcp cipher, authorization, key data)
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- enum MIKEYPRFFunc -->
|
|
||||||
The PRF function that has been/will be used for key derivation
|
|
||||||
<!-- enum MIKEYPRFFunc::variant MikeyPrfMikey1 -->
|
|
||||||
MIKEY-1 PRF function
|
|
||||||
<!-- struct MIKEYPayload -->
|
|
||||||
Hold the common fields for all payloads
|
|
||||||
<!-- impl MIKEYPayload::fn new -->
|
|
||||||
Make a new `MIKEYPayload` with `type_`.
|
|
||||||
## `type_`
|
|
||||||
a `MIKEYPayloadType`
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
a new `MIKEYPayload` or `None` on failure.
|
|
||||||
<!-- impl MIKEYPayload::fn kemac_add_sub -->
|
|
||||||
Add a new sub payload to `self`.
|
|
||||||
## `newpay`
|
|
||||||
a `MIKEYPayload` to add
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success.
|
|
||||||
<!-- impl MIKEYPayload::fn kemac_get_n_sub -->
|
|
||||||
Get the number of sub payloads of `self`. `self` should be of type
|
|
||||||
`MIKEYPayloadType::Kemac`.
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
the number of sub payloads in `self`
|
|
||||||
<!-- impl MIKEYPayload::fn kemac_get_sub -->
|
|
||||||
Get the sub payload of `self` at `idx`. `self` should be of type
|
|
||||||
`MIKEYPayloadType::Kemac`.
|
|
||||||
## `idx`
|
|
||||||
an index
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
the `MIKEYPayload` at `idx`.
|
|
||||||
<!-- impl MIKEYPayload::fn kemac_remove_sub -->
|
|
||||||
Remove the sub payload at `idx` in `self`.
|
|
||||||
## `idx`
|
|
||||||
the index to remove
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success.
|
|
||||||
<!-- impl MIKEYPayload::fn kemac_set -->
|
|
||||||
Set the KEMAC parameters. `self` should point to a `MIKEYPayloadType::Kemac`
|
|
||||||
payload.
|
|
||||||
## `enc_alg`
|
|
||||||
the `MIKEYEncAlg`
|
|
||||||
## `mac_alg`
|
|
||||||
a `MIKEYMacAlg`
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYPayload::fn key_data_set_interval -->
|
|
||||||
Set the key validity period in the `MIKEYPayloadType::KeyData` `self`.
|
|
||||||
## `vf_len`
|
|
||||||
the length of `vf_data`
|
|
||||||
## `vf_data`
|
|
||||||
the Valid From data
|
|
||||||
## `vt_len`
|
|
||||||
the length of `vt_data`
|
|
||||||
## `vt_data`
|
|
||||||
the Valid To data
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYPayload::fn key_data_set_key -->
|
|
||||||
Set `key_len` bytes of `key_data` of type `key_type` as the key for the
|
|
||||||
`MIKEYPayloadType::KeyData` `self`.
|
|
||||||
## `key_type`
|
|
||||||
a `MIKEYKeyDataType`
|
|
||||||
## `key_len`
|
|
||||||
the length of `key_data`
|
|
||||||
## `key_data`
|
|
||||||
the key of type `key_type`
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYPayload::fn key_data_set_salt -->
|
|
||||||
Set the salt key data. If `salt_len` is 0 and `salt_data` is `None`, the
|
|
||||||
salt data will be removed.
|
|
||||||
## `salt_len`
|
|
||||||
the length of `salt_data`
|
|
||||||
## `salt_data`
|
|
||||||
the salt
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYPayload::fn key_data_set_spi -->
|
|
||||||
Set the SPI/MKI validity in the `MIKEYPayloadType::KeyData` `self`.
|
|
||||||
## `spi_len`
|
|
||||||
the length of `spi_data`
|
|
||||||
## `spi_data`
|
|
||||||
the SPI/MKI data
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYPayload::fn pke_set -->
|
|
||||||
Set the PKE values in `self`. `self` must be of type
|
|
||||||
`MIKEYPayloadType::Pke`.
|
|
||||||
## `C`
|
|
||||||
envelope key cache indicator
|
|
||||||
## `data_len`
|
|
||||||
the length of `data`
|
|
||||||
## `data`
|
|
||||||
the encrypted envelope key
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYPayload::fn rand_set -->
|
|
||||||
Set the random values in a `MIKEYPayloadType::Rand` `self`.
|
|
||||||
## `len`
|
|
||||||
the length of `rand`
|
|
||||||
## `rand`
|
|
||||||
random values
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYPayload::fn sp_add_param -->
|
|
||||||
Add a new parameter to the `MIKEYPayloadType::Sp` `self` with `type_`, `len`
|
|
||||||
and `val`.
|
|
||||||
## `type_`
|
|
||||||
a type
|
|
||||||
## `len`
|
|
||||||
a length
|
|
||||||
## `val`
|
|
||||||
`len` bytes of data
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYPayload::fn sp_get_n_params -->
|
|
||||||
Get the number of security policy parameters in a `MIKEYPayloadType::Sp`
|
|
||||||
`self`.
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
the number of parameters in `self`
|
|
||||||
<!-- impl MIKEYPayload::fn sp_get_param -->
|
|
||||||
Get the Security Policy parameter in a `MIKEYPayloadType::Sp` `self`
|
|
||||||
at `idx`.
|
|
||||||
## `idx`
|
|
||||||
an index
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
the `MIKEYPayloadSPParam` at `idx` in `self`
|
|
||||||
<!-- impl MIKEYPayload::fn sp_remove_param -->
|
|
||||||
Remove the Security Policy parameters from a `MIKEYPayloadType::Sp`
|
|
||||||
`self` at `idx`.
|
|
||||||
## `idx`
|
|
||||||
an index
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYPayload::fn sp_set -->
|
|
||||||
Set the Security Policy parameters for `self`.
|
|
||||||
## `policy`
|
|
||||||
the policy number
|
|
||||||
## `proto`
|
|
||||||
a `MIKEYSecProto`
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- impl MIKEYPayload::fn t_set -->
|
|
||||||
Set the timestamp in a `MIKEYPayloadType::T` `self`.
|
|
||||||
## `type_`
|
|
||||||
the `MIKEYTSType`
|
|
||||||
## `ts_value`
|
|
||||||
the timestamp value
|
|
||||||
|
|
||||||
# Returns
|
|
||||||
|
|
||||||
`true` on success
|
|
||||||
<!-- enum MIKEYPayloadType -->
|
|
||||||
Different MIKEY Payload types.
|
|
||||||
<!-- enum MIKEYPayloadType::variant Last -->
|
|
||||||
Last payload
|
|
||||||
<!-- enum MIKEYPayloadType::variant Kemac -->
|
|
||||||
Key data transport payload
|
|
||||||
<!-- enum MIKEYPayloadType::variant Pke -->
|
|
||||||
Envelope data payload
|
|
||||||
<!-- enum MIKEYPayloadType::variant Dh -->
|
|
||||||
DH data payload
|
|
||||||
<!-- enum MIKEYPayloadType::variant Sign -->
|
|
||||||
Signature payload
|
|
||||||
<!-- enum MIKEYPayloadType::variant T -->
|
|
||||||
Timestamp payload
|
|
||||||
<!-- enum MIKEYPayloadType::variant Id -->
|
|
||||||
ID payload
|
|
||||||
<!-- enum MIKEYPayloadType::variant Cert -->
|
|
||||||
Certificate Payload
|
|
||||||
<!-- enum MIKEYPayloadType::variant Chash -->
|
|
||||||
Cert hash payload
|
|
||||||
<!-- enum MIKEYPayloadType::variant V -->
|
|
||||||
Verfication message payload
|
|
||||||
<!-- enum MIKEYPayloadType::variant Sp -->
|
|
||||||
Security Policy payload
|
|
||||||
<!-- enum MIKEYPayloadType::variant Rand -->
|
|
||||||
RAND payload
|
|
||||||
<!-- enum MIKEYPayloadType::variant Err -->
|
|
||||||
Error payload
|
|
||||||
<!-- enum MIKEYPayloadType::variant KeyData -->
|
|
||||||
Key data sub-payload
|
|
||||||
<!-- enum MIKEYPayloadType::variant GenExt -->
|
|
||||||
General Extension Payload
|
|
||||||
<!-- enum MIKEYSecProto -->
|
|
||||||
Specifies the security protocol
|
|
||||||
<!-- enum MIKEYSecSRTP -->
|
|
||||||
This policy specifies the parameters for SRTP and SRTCP
|
|
||||||
<!-- enum MIKEYSecSRTP::variant EncAlg -->
|
|
||||||
Encryption algorithm
|
|
||||||
<!-- enum MIKEYSecSRTP::variant EncKeyLen -->
|
|
||||||
Session Encr. key length
|
|
||||||
<!-- enum MIKEYSecSRTP::variant AuthAlg -->
|
|
||||||
Authentication algorithm
|
|
||||||
<!-- enum MIKEYSecSRTP::variant AuthKeyLen -->
|
|
||||||
Session Auth. key length
|
|
||||||
<!-- enum MIKEYSecSRTP::variant SaltKeyLen -->
|
|
||||||
Session Salt key length
|
|
||||||
<!-- enum MIKEYSecSRTP::variant Prf -->
|
|
||||||
SRTP Pseudo Random Function
|
|
||||||
<!-- enum MIKEYSecSRTP::variant KeyDerivRate -->
|
|
||||||
Key derivation rate
|
|
||||||
<!-- enum MIKEYSecSRTP::variant SrtpEnc -->
|
|
||||||
SRTP encryption off/on, 0 if off, 1 if on
|
|
||||||
<!-- enum MIKEYSecSRTP::variant SrtcpEnc -->
|
|
||||||
SRTCP encryption off/on, 0 if off, 1 if on
|
|
||||||
<!-- enum MIKEYSecSRTP::variant FecOrder -->
|
|
||||||
sender's FEC order
|
|
||||||
<!-- enum MIKEYSecSRTP::variant SrtpAuth -->
|
|
||||||
SRTP authentication off/on, 0 if off, 1 if on
|
|
||||||
<!-- enum MIKEYSecSRTP::variant AuthTagLen -->
|
|
||||||
Authentication tag length
|
|
||||||
<!-- enum MIKEYSecSRTP::variant SrtpPrefixLen -->
|
|
||||||
SRTP prefix length
|
|
||||||
<!-- enum MIKEYTSType -->
|
|
||||||
Specifies the timestamp type.
|
|
||||||
<!-- enum MIKEYTSType::variant NtpUtc -->
|
|
||||||
an NTP time in UTC timezone
|
|
||||||
<!-- enum MIKEYTSType::variant Ntp -->
|
|
||||||
an NTP time
|
|
||||||
<!-- enum MIKEYTSType::variant Counter -->
|
|
||||||
a counter
|
|
||||||
<!-- enum MIKEYType -->
|
|
||||||
Different MIKEY data types.
|
|
||||||
<!-- enum MIKEYType::variant Invalid -->
|
|
||||||
Invalid type
|
|
||||||
<!-- enum MIKEYType::variant PskInit -->
|
|
||||||
Initiator's pre-shared key message
|
|
||||||
<!-- enum MIKEYType::variant PskVerify -->
|
|
||||||
Verification message of a Pre-shared key message
|
|
||||||
<!-- enum MIKEYType::variant PkInit -->
|
|
||||||
Initiator's public-key transport message
|
|
||||||
<!-- enum MIKEYType::variant PkVerify -->
|
|
||||||
Verification message of a public-key message
|
|
||||||
<!-- enum MIKEYType::variant DhInit -->
|
|
||||||
Initiator's DH exchange message
|
|
||||||
<!-- enum MIKEYType::variant DhResp -->
|
|
||||||
Responder's DH exchange message
|
|
||||||
<!-- enum MIKEYType::variant Error -->
|
|
||||||
Error message
|
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,4 +1,74 @@
|
||||||
<!-- file * -->
|
<!-- file * -->
|
||||||
|
<!-- struct Allocator -->
|
||||||
|
Memory is usually created by allocators with a `AllocatorExt::alloc`
|
||||||
|
method call. When `None` is used as the allocator, the default allocator will
|
||||||
|
be used.
|
||||||
|
|
||||||
|
New allocators can be registered with `Allocator::register`.
|
||||||
|
Allocators are identified by name and can be retrieved with
|
||||||
|
`Allocator::find`. `AllocatorExt::set_default` can be used to change the
|
||||||
|
default allocator.
|
||||||
|
|
||||||
|
New memory can be created with `Memory::new_wrapped` that wraps the memory
|
||||||
|
allocated elsewhere.
|
||||||
|
|
||||||
|
# Implements
|
||||||
|
|
||||||
|
[`AllocatorExt`](trait.AllocatorExt.html), [`GstObjectExt`](trait.GstObjectExt.html), [`glib::object::ObjectExt`](../glib/object/trait.ObjectExt.html)
|
||||||
|
<!-- trait AllocatorExt -->
|
||||||
|
Trait containing all `Allocator` methods.
|
||||||
|
|
||||||
|
# Implementors
|
||||||
|
|
||||||
|
[`Allocator`](struct.Allocator.html)
|
||||||
|
<!-- impl Allocator::fn find -->
|
||||||
|
Find a previously registered allocator with `name`. When `name` is `None`, the
|
||||||
|
default allocator will be returned.
|
||||||
|
## `name`
|
||||||
|
the name of the allocator
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a `Allocator` or `None` when
|
||||||
|
the allocator with `name` was not registered. Use `GstObjectExt::unref`
|
||||||
|
to release the allocator after usage.
|
||||||
|
<!-- impl Allocator::fn register -->
|
||||||
|
Registers the memory `allocator` with `name`. This function takes ownership of
|
||||||
|
`allocator`.
|
||||||
|
## `name`
|
||||||
|
the name of the allocator
|
||||||
|
## `allocator`
|
||||||
|
`Allocator`
|
||||||
|
<!-- trait AllocatorExt::fn alloc -->
|
||||||
|
Use `self` to allocate a new memory block with memory that is at least
|
||||||
|
`size` big.
|
||||||
|
|
||||||
|
The optional `params` can specify the prefix and padding for the memory. If
|
||||||
|
`None` is passed, no flags, no extra prefix/padding and a default alignment is
|
||||||
|
used.
|
||||||
|
|
||||||
|
The prefix/padding will be filled with 0 if flags contains
|
||||||
|
`MemoryFlags::ZeroPrefixed` and `MemoryFlags::ZeroPadded` respectively.
|
||||||
|
|
||||||
|
When `self` is `None`, the default allocator will be used.
|
||||||
|
|
||||||
|
The alignment in `params` is given as a bitmask so that `align` + 1 equals
|
||||||
|
the amount of bytes to align to. For example, to align to 8 bytes,
|
||||||
|
use an alignment of 7.
|
||||||
|
## `size`
|
||||||
|
size of the visible memory area
|
||||||
|
## `params`
|
||||||
|
optional parameters
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a new `Memory`.
|
||||||
|
<!-- trait AllocatorExt::fn free -->
|
||||||
|
Free `memory` that was previously allocated with `AllocatorExt::alloc`.
|
||||||
|
## `memory`
|
||||||
|
the memory to free
|
||||||
|
<!-- trait AllocatorExt::fn set_default -->
|
||||||
|
Set the default allocator. This function takes ownership of `self`.
|
||||||
<!-- struct Bin -->
|
<!-- struct Bin -->
|
||||||
`Bin` is an element that can contain other `Element`, allowing them to be
|
`Bin` is an element that can contain other `Element`, allowing them to be
|
||||||
managed as a group.
|
managed as a group.
|
||||||
|
@ -487,7 +557,7 @@ to hold a reference to another buffer that is only released when the child
|
||||||
Typically, `ParentBufferMeta` is used when the child buffer is directly
|
Typically, `ParentBufferMeta` is used when the child buffer is directly
|
||||||
using the `Memory` of the parent buffer, and wants to prevent the parent
|
using the `Memory` of the parent buffer, and wants to prevent the parent
|
||||||
buffer from being returned to a buffer pool until the `Memory` is available
|
buffer from being returned to a buffer pool until the `Memory` is available
|
||||||
for re-use. (Since 1.6)
|
for re-use. (Since: 1.6)
|
||||||
<!-- impl Buffer::fn new -->
|
<!-- impl Buffer::fn new -->
|
||||||
Creates a newly allocated buffer without any data.
|
Creates a newly allocated buffer without any data.
|
||||||
|
|
||||||
|
@ -531,6 +601,20 @@ allocated size of `data`
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
a new `Buffer`
|
a new `Buffer`
|
||||||
|
<!-- impl Buffer::fn new_wrapped_bytes -->
|
||||||
|
Creates a new `Buffer` that wraps the given `bytes`. The data inside
|
||||||
|
`bytes` cannot be `None` and the resulting buffer will be marked as read only.
|
||||||
|
|
||||||
|
MT safe.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `bytes`
|
||||||
|
a `glib::Bytes` to wrap
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a new `Buffer` wrapping `bytes`
|
||||||
<!-- impl Buffer::fn new_wrapped_full -->
|
<!-- impl Buffer::fn new_wrapped_full -->
|
||||||
Allocate a new buffer that wraps the given memory. `data` must point to
|
Allocate a new buffer that wraps the given memory. `data` must point to
|
||||||
`maxsize` of memory, the wrapped buffer will have the region from `offset` and
|
`maxsize` of memory, the wrapped buffer will have the region from `offset` and
|
||||||
|
@ -2111,9 +2195,25 @@ a `Caps` to intersect
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
`true` if intersection would be not empty
|
`true` if intersection would be not empty
|
||||||
|
<!-- impl Caps::fn copy -->
|
||||||
|
Creates a new `Caps` as a copy of the old `self`. The new caps will have a
|
||||||
|
refcount of 1, owned by the caller. The structures are copied as well.
|
||||||
|
|
||||||
|
Note that this function is the semantic equivalent of a `gst_caps_ref`
|
||||||
|
followed by a `gst_caps_make_writable`. If you only want to hold on to a
|
||||||
|
reference to the data, you should use `gst_caps_ref`.
|
||||||
|
|
||||||
|
When you are finished with the caps, call `gst_caps_unref` on it.
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
the new `Caps`
|
||||||
<!-- impl Caps::fn copy_nth -->
|
<!-- impl Caps::fn copy_nth -->
|
||||||
Creates a new `Caps` and appends a copy of the nth structure
|
Creates a new `Caps` and appends a copy of the nth structure
|
||||||
contained in `self`.
|
contained in `self`.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
## `nth`
|
## `nth`
|
||||||
the nth structure to copy
|
the nth structure to copy
|
||||||
|
|
||||||
|
@ -2373,6 +2473,13 @@ Index of the structure to remove
|
||||||
Sets the `CapsFeatures` `features` for the structure at `index`.
|
Sets the `CapsFeatures` `features` for the structure at `index`.
|
||||||
## `index`
|
## `index`
|
||||||
the index of the structure
|
the index of the structure
|
||||||
|
## `features`
|
||||||
|
the `CapsFeatures` to set
|
||||||
|
<!-- impl Caps::fn set_features_simple -->
|
||||||
|
Sets the `CapsFeatures` `features` for all the structures of `self`.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
## `features`
|
## `features`
|
||||||
the `CapsFeatures` to set
|
the `CapsFeatures` to set
|
||||||
<!-- impl Caps::fn set_simple -->
|
<!-- impl Caps::fn set_simple -->
|
||||||
|
@ -2722,6 +2829,20 @@ A `ClockID` to compare with
|
||||||
|
|
||||||
negative value if a < b; zero if a = b; positive value if a > b
|
negative value if a < b; zero if a = b; positive value if a > b
|
||||||
|
|
||||||
|
MT safe.
|
||||||
|
<!-- impl Clock::fn id_get_clock -->
|
||||||
|
This function returns the underlying clock.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `id`
|
||||||
|
a `ClockID`
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a `Clock` or `None` when the
|
||||||
|
underlying clock has been freed. Unref after usage.
|
||||||
|
|
||||||
MT safe.
|
MT safe.
|
||||||
<!-- impl Clock::fn id_get_time -->
|
<!-- impl Clock::fn id_get_time -->
|
||||||
Get the time of the clock ID
|
Get the time of the clock ID
|
||||||
|
@ -2759,6 +2880,24 @@ async notifications, you need to create a new `ClockID`.
|
||||||
MT safe.
|
MT safe.
|
||||||
## `id`
|
## `id`
|
||||||
The id to unschedule
|
The id to unschedule
|
||||||
|
<!-- impl Clock::fn id_uses_clock -->
|
||||||
|
This function returns whether `id` uses `clock` as the underlying clock.
|
||||||
|
`clock` can be NULL, in which case the return value indicates whether
|
||||||
|
the underlying clock has been freed. If this is the case, the `id` is
|
||||||
|
no longer usable and should be freed.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `id`
|
||||||
|
a `ClockID` to check
|
||||||
|
## `clock`
|
||||||
|
a `Clock` to compare against
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
whether the clock `id` uses the same underlying `Clock` `clock`.
|
||||||
|
|
||||||
|
MT safe.
|
||||||
<!-- impl Clock::fn id_wait -->
|
<!-- impl Clock::fn id_wait -->
|
||||||
Perform a blocking wait on `id`.
|
Perform a blocking wait on `id`.
|
||||||
`id` should have been created with `ClockExt::new_single_shot_id`
|
`id` should have been created with `ClockExt::new_single_shot_id`
|
||||||
|
@ -3186,7 +3325,7 @@ time since Epoch
|
||||||
monotonic time since some unspecified starting
|
monotonic time since some unspecified starting
|
||||||
point
|
point
|
||||||
<!-- enum ClockType::variant Other -->
|
<!-- enum ClockType::variant Other -->
|
||||||
some other time source is used (Since 1.0.5)
|
some other time source is used (Since: 1.0.5)
|
||||||
<!-- struct Context -->
|
<!-- struct Context -->
|
||||||
`Context` is a container object used to store contexts like a device
|
`Context` is a container object used to store contexts like a device
|
||||||
context, a display server connection and similar concepts that should
|
context, a display server connection and similar concepts that should
|
||||||
|
@ -3501,7 +3640,7 @@ the day of the gregorian month
|
||||||
the newly created `DateTime`
|
the newly created `DateTime`
|
||||||
<!-- impl DateTime::fn get_day -->
|
<!-- impl DateTime::fn get_day -->
|
||||||
Returns the day of the month of this `DateTime`.
|
Returns the day of the month of this `DateTime`.
|
||||||
Call gst_date_time_has_day before, to avoid warnings.
|
Call `DateTime::has_day` before, to avoid warnings.
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
|
@ -3509,7 +3648,7 @@ The day of this `DateTime`
|
||||||
<!-- impl DateTime::fn get_hour -->
|
<!-- impl DateTime::fn get_hour -->
|
||||||
Retrieves the hour of the day represented by `self` in the gregorian
|
Retrieves the hour of the day represented by `self` in the gregorian
|
||||||
calendar. The return is in the range of 0 to 23.
|
calendar. The return is in the range of 0 to 23.
|
||||||
Call gst_date_time_has_haur before, to avoid warnings.
|
Call `DateTime::has_time` before, to avoid warnings.
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
|
@ -3524,14 +3663,14 @@ the microsecond of the second
|
||||||
<!-- impl DateTime::fn get_minute -->
|
<!-- impl DateTime::fn get_minute -->
|
||||||
Retrieves the minute of the hour represented by `self` in the gregorian
|
Retrieves the minute of the hour represented by `self` in the gregorian
|
||||||
calendar.
|
calendar.
|
||||||
Call gst_date_time_has_minute before, to avoid warnings.
|
Call `DateTime::has_time` before, to avoid warnings.
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
the minute of the hour
|
the minute of the hour
|
||||||
<!-- impl DateTime::fn get_month -->
|
<!-- impl DateTime::fn get_month -->
|
||||||
Returns the month of this `DateTime`. January is 1, February is 2, etc..
|
Returns the month of this `DateTime`. January is 1, February is 2, etc..
|
||||||
Call gst_date_time_has_month before, to avoid warnings.
|
Call `DateTime::has_month` before, to avoid warnings.
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
|
@ -3539,7 +3678,7 @@ The month of this `DateTime`
|
||||||
<!-- impl DateTime::fn get_second -->
|
<!-- impl DateTime::fn get_second -->
|
||||||
Retrieves the second of the minute represented by `self` in the gregorian
|
Retrieves the second of the minute represented by `self` in the gregorian
|
||||||
calendar.
|
calendar.
|
||||||
Call gst_date_time_has_second before, to avoid warnings.
|
Call `DateTime::has_time` before, to avoid warnings.
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
|
@ -3555,7 +3694,7 @@ If `self` represents UTC time, then the offset is zero.
|
||||||
the offset from UTC in hours
|
the offset from UTC in hours
|
||||||
<!-- impl DateTime::fn get_year -->
|
<!-- impl DateTime::fn get_year -->
|
||||||
Returns the year of this `DateTime`
|
Returns the year of this `DateTime`
|
||||||
Call gst_date_time_has_year before, to avoid warnings.
|
Call `DateTime::has_year` before, to avoid warnings.
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
|
@ -3911,7 +4050,7 @@ will be emitted on the bus when the list of devices changes.
|
||||||
Stops monitoring the devices.
|
Stops monitoring the devices.
|
||||||
<!-- struct DeviceProvider -->
|
<!-- struct DeviceProvider -->
|
||||||
A `DeviceProvider` subclass is provided by a plugin that handles devices
|
A `DeviceProvider` subclass is provided by a plugin that handles devices
|
||||||
if there is a way to programatically list connected devices. It can also
|
if there is a way to programmatically list connected devices. It can also
|
||||||
optionally provide updates to the list of connected devices.
|
optionally provide updates to the list of connected devices.
|
||||||
|
|
||||||
Each `DeviceProvider` subclass is a singleton, a plugin should
|
Each `DeviceProvider` subclass is a singleton, a plugin should
|
||||||
|
@ -3955,6 +4094,19 @@ This is for use by subclasses.
|
||||||
will be removed (see `Object::ref_sink`).
|
will be removed (see `Object::ref_sink`).
|
||||||
## `device`
|
## `device`
|
||||||
a `Device` that has been added
|
a `Device` that has been added
|
||||||
|
<!-- trait DeviceProviderExt::fn device_changed -->
|
||||||
|
This function is used when `changed_device` was modified into its new form
|
||||||
|
`device`. This will post a `DEVICE_CHANGED` message on the bus to let
|
||||||
|
the application know that the device was modified. `Device` is immutable
|
||||||
|
for MT. safety purposes so this is an "atomic" way of letting the application
|
||||||
|
know when a device was modified.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `device`
|
||||||
|
the new version of `changed_device`
|
||||||
|
## `changed_device`
|
||||||
|
the old version of the device that has been udpated
|
||||||
<!-- trait DeviceProviderExt::fn device_remove -->
|
<!-- trait DeviceProviderExt::fn device_remove -->
|
||||||
Posts a message on the provider's `Bus` to inform applications that
|
Posts a message on the provider's `Bus` to inform applications that
|
||||||
a device has been removed.
|
a device has been removed.
|
||||||
|
@ -4250,9 +4402,8 @@ MT safe.
|
||||||
Adds a pad (link point) to `self`. `pad`'s parent will be set to `self`;
|
Adds a pad (link point) to `self`. `pad`'s parent will be set to `self`;
|
||||||
see `GstObjectExt::set_parent` for refcounting information.
|
see `GstObjectExt::set_parent` for refcounting information.
|
||||||
|
|
||||||
Pads are not automatically activated so elements should perform the needed
|
Pads are automatically activated when added in the PAUSED or PLAYING
|
||||||
steps to activate the pad in case this pad is added in the PAUSED or PLAYING
|
state.
|
||||||
state. See `PadExt::set_active` for more information about activating pads.
|
|
||||||
|
|
||||||
The pad and the element should be unlocked when calling this function.
|
The pad and the element should be unlocked when calling this function.
|
||||||
|
|
||||||
|
@ -4503,7 +4654,7 @@ Retrieves the factory that was used to create this element.
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
the `ElementFactory` used for creating this
|
the `ElementFactory` used for creating this
|
||||||
element. no refcounting is needed.
|
element or `None` if element has not been registered (static element). no refcounting is needed.
|
||||||
<!-- trait ElementExt::fn get_metadata -->
|
<!-- trait ElementExt::fn get_metadata -->
|
||||||
Get metadata with `key` in `klass`.
|
Get metadata with `key` in `klass`.
|
||||||
|
|
||||||
|
@ -5113,6 +5264,10 @@ the `Context` to set.
|
||||||
Locks the state of an element, so state changes of the parent don't affect
|
Locks the state of an element, so state changes of the parent don't affect
|
||||||
this element anymore.
|
this element anymore.
|
||||||
|
|
||||||
|
Note that this is racy if the state lock of the parent bin is not taken.
|
||||||
|
The parent bin might've just checked the flag in another thread and as the
|
||||||
|
next step proceed to change the child element's state.
|
||||||
|
|
||||||
MT safe.
|
MT safe.
|
||||||
## `locked_state`
|
## `locked_state`
|
||||||
`true` to lock the element's state
|
`true` to lock the element's state
|
||||||
|
@ -6106,6 +6261,12 @@ result location for the start position expressed in `format`
|
||||||
result location for the `SeekType` of the stop position
|
result location for the `SeekType` of the stop position
|
||||||
## `stop`
|
## `stop`
|
||||||
result location for the stop position expressed in `format`
|
result location for the stop position expressed in `format`
|
||||||
|
<!-- impl Event::fn parse_seek_trickmode_interval -->
|
||||||
|
Retrieve the trickmode interval that may have been set on a
|
||||||
|
seek event with `Event::set_seek_trickmode_interval`.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
<!-- impl Event::fn parse_segment -->
|
<!-- impl Event::fn parse_segment -->
|
||||||
Parses a segment `self` and stores the result in the given `segment` location.
|
Parses a segment `self` and stores the result in the given `segment` location.
|
||||||
`segment` remains valid only until the `self` is freed. Don't modify the segment
|
`segment` remains valid only until the `self` is freed. Don't modify the segment
|
||||||
|
@ -6148,7 +6309,7 @@ Parse a stream-start `self` and extract the `Stream` from it.
|
||||||
Feature: `v1_10`
|
Feature: `v1_10`
|
||||||
|
|
||||||
## `stream`
|
## `stream`
|
||||||
adress of variable to store the stream
|
address of variable to store the stream
|
||||||
<!-- impl Event::fn parse_stream_collection -->
|
<!-- impl Event::fn parse_stream_collection -->
|
||||||
Retrieve new `StreamCollection` from STREAM_COLLECTION event `self`.
|
Retrieve new `StreamCollection` from STREAM_COLLECTION event `self`.
|
||||||
|
|
||||||
|
@ -6208,6 +6369,13 @@ Set the running time offset of a event. See
|
||||||
MT safe.
|
MT safe.
|
||||||
## `offset`
|
## `offset`
|
||||||
A the new running time offset
|
A the new running time offset
|
||||||
|
<!-- impl Event::fn set_seek_trickmode_interval -->
|
||||||
|
Sets a trickmode interval on a (writable) seek event. Elements
|
||||||
|
that support TRICKMODE_KEY_UNITS seeks SHOULD use this as the minimal
|
||||||
|
interval between each frame they may output.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
<!-- impl Event::fn set_seqnum -->
|
<!-- impl Event::fn set_seqnum -->
|
||||||
Set the sequence number of a event.
|
Set the sequence number of a event.
|
||||||
|
|
||||||
|
@ -6268,7 +6436,7 @@ A new media segment follows in the dataflow. The
|
||||||
converting buffer timestamps to running-time and
|
converting buffer timestamps to running-time and
|
||||||
stream-time.
|
stream-time.
|
||||||
<!-- enum EventType::variant StreamCollection -->
|
<!-- enum EventType::variant StreamCollection -->
|
||||||
A new `StreamCollection` is available (Since 1.10)
|
A new `StreamCollection` is available (Since: 1.10)
|
||||||
<!-- enum EventType::variant Tag -->
|
<!-- enum EventType::variant Tag -->
|
||||||
A new set of metadata tags has been found in the stream.
|
A new set of metadata tags has been found in the stream.
|
||||||
<!-- enum EventType::variant Buffersize -->
|
<!-- enum EventType::variant Buffersize -->
|
||||||
|
@ -6281,7 +6449,7 @@ An event that sinks turn into a message. Used to
|
||||||
<!-- enum EventType::variant StreamGroupDone -->
|
<!-- enum EventType::variant StreamGroupDone -->
|
||||||
Indicates that there is no more data for
|
Indicates that there is no more data for
|
||||||
the stream group ID in the message. Sent before EOS
|
the stream group ID in the message. Sent before EOS
|
||||||
in some instances and should be handled mostly the same. (Since 1.10)
|
in some instances and should be handled mostly the same. (Since: 1.10)
|
||||||
<!-- enum EventType::variant Eos -->
|
<!-- enum EventType::variant Eos -->
|
||||||
End-Of-Stream. No more data is to be expected to follow
|
End-Of-Stream. No more data is to be expected to follow
|
||||||
without either a STREAM_START event, or a FLUSH_STOP and a SEGMENT
|
without either a STREAM_START event, or a FLUSH_STOP and a SEGMENT
|
||||||
|
@ -6318,7 +6486,7 @@ A request for upstream renegotiating caps and reconfiguring.
|
||||||
A request for a new playback position based on TOC
|
A request for a new playback position based on TOC
|
||||||
entry's UID.
|
entry's UID.
|
||||||
<!-- enum EventType::variant SelectStreams -->
|
<!-- enum EventType::variant SelectStreams -->
|
||||||
A request to select one or more streams (Since 1.10)
|
A request to select one or more streams (Since: 1.10)
|
||||||
<!-- enum EventType::variant CustomUpstream -->
|
<!-- enum EventType::variant CustomUpstream -->
|
||||||
Upstream custom event
|
Upstream custom event
|
||||||
<!-- enum EventType::variant CustomDownstream -->
|
<!-- enum EventType::variant CustomDownstream -->
|
||||||
|
@ -6693,6 +6861,22 @@ The new `Device`
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
|
a newly allocated `Message`
|
||||||
|
<!-- impl Message::fn new_device_changed -->
|
||||||
|
Creates a new device-changed message. The device-changed message is produced
|
||||||
|
by `DeviceProvider` or a `DeviceMonitor`. They announce that a device
|
||||||
|
properties has changed and `device` represent the new modified version of `changed_device`.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `src`
|
||||||
|
The `Object` that created the message
|
||||||
|
## `device`
|
||||||
|
The newly created device representing `replaced_device`
|
||||||
|
with its new configuration.
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
a newly allocated `Message`
|
a newly allocated `Message`
|
||||||
<!-- impl Message::fn new_device_removed -->
|
<!-- impl Message::fn new_device_removed -->
|
||||||
Creates a new device-removed message. The device-removed message is produced
|
Creates a new device-removed message. The device-removed message is produced
|
||||||
|
@ -6779,7 +6963,7 @@ The GError for this message.
|
||||||
## `debug`
|
## `debug`
|
||||||
A debugging string.
|
A debugging string.
|
||||||
## `details`
|
## `details`
|
||||||
(allow-none): A GstStructure with details
|
A GstStructure with details
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
|
@ -6824,7 +7008,7 @@ The GError for this message.
|
||||||
## `debug`
|
## `debug`
|
||||||
A debugging string.
|
A debugging string.
|
||||||
## `details`
|
## `details`
|
||||||
(allow-none): A GstStructure with details
|
A GstStructure with details
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
|
@ -7258,7 +7442,7 @@ The GError for this message.
|
||||||
## `debug`
|
## `debug`
|
||||||
A debugging string.
|
A debugging string.
|
||||||
## `details`
|
## `details`
|
||||||
(allow-none): A GstStructure with details
|
A GstStructure with details
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
|
@ -7388,6 +7572,20 @@ of monitored devices.
|
||||||
## `device`
|
## `device`
|
||||||
A location where to store a
|
A location where to store a
|
||||||
pointer to the new `Device`, or `None`
|
pointer to the new `Device`, or `None`
|
||||||
|
<!-- impl Message::fn parse_device_changed -->
|
||||||
|
Parses a device-changed message. The device-changed message is produced by
|
||||||
|
`DeviceProvider` or a `DeviceMonitor`. It announces the
|
||||||
|
disappearance of monitored devices. * It announce that a device properties has
|
||||||
|
changed and `device` represents the new modified version of `changed_device`.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `device`
|
||||||
|
A location where to store a
|
||||||
|
pointer to the updated version of the `Device`, or `None`
|
||||||
|
## `changed_device`
|
||||||
|
A location where to store a
|
||||||
|
pointer to the old version of the `Device`, or `None`
|
||||||
<!-- impl Message::fn parse_device_removed -->
|
<!-- impl Message::fn parse_device_removed -->
|
||||||
Parses a device-removed message. The device-removed message is produced by
|
Parses a device-removed message. The device-removed message is produced by
|
||||||
`DeviceProvider` or a `DeviceMonitor`. It announces the
|
`DeviceProvider` or a `DeviceMonitor`. It announces the
|
||||||
|
@ -7931,7 +8129,7 @@ Trait containing all `Object` methods.
|
||||||
|
|
||||||
# Implementors
|
# Implementors
|
||||||
|
|
||||||
[`BufferPool`](struct.BufferPool.html), [`Bus`](struct.Bus.html), [`Clock`](struct.Clock.html), [`DeviceMonitor`](struct.DeviceMonitor.html), [`DeviceProvider`](struct.DeviceProvider.html), [`Device`](struct.Device.html), [`Element`](struct.Element.html), [`Object`](struct.Object.html), [`PadTemplate`](struct.PadTemplate.html), [`Pad`](struct.Pad.html), [`PluginFeature`](struct.PluginFeature.html), [`Plugin`](struct.Plugin.html), [`Registry`](struct.Registry.html), [`StreamCollection`](struct.StreamCollection.html), [`Stream`](struct.Stream.html)
|
[`Allocator`](struct.Allocator.html), [`BufferPool`](struct.BufferPool.html), [`Bus`](struct.Bus.html), [`Clock`](struct.Clock.html), [`DeviceMonitor`](struct.DeviceMonitor.html), [`DeviceProvider`](struct.DeviceProvider.html), [`Device`](struct.Device.html), [`Element`](struct.Element.html), [`Object`](struct.Object.html), [`PadTemplate`](struct.PadTemplate.html), [`Pad`](struct.Pad.html), [`PluginFeature`](struct.PluginFeature.html), [`Plugin`](struct.Plugin.html), [`Registry`](struct.Registry.html), [`StreamCollection`](struct.StreamCollection.html), [`Stream`](struct.Stream.html)
|
||||||
<!-- impl Object::fn check_uniqueness -->
|
<!-- impl Object::fn check_uniqueness -->
|
||||||
Checks to see if there is any object named `name` in `list`. This function
|
Checks to see if there is any object named `name` in `list`. This function
|
||||||
does not do any locking of any kind. You might want to protect the
|
does not do any locking of any kind. You might want to protect the
|
||||||
|
@ -8012,7 +8210,7 @@ the `ControlBinding` that should be used
|
||||||
has been setup for a non suitable property, `true` otherwise.
|
has been setup for a non suitable property, `true` otherwise.
|
||||||
<!-- trait GstObjectExt::fn default_error -->
|
<!-- trait GstObjectExt::fn default_error -->
|
||||||
A default error function that uses `g_printerr` to display the error message
|
A default error function that uses `g_printerr` to display the error message
|
||||||
and the optional debug sting..
|
and the optional debug string..
|
||||||
|
|
||||||
The default handler will simply print the error string using g_print.
|
The default handler will simply print the error string using g_print.
|
||||||
## `error`
|
## `error`
|
||||||
|
@ -8032,7 +8230,7 @@ the `ControlBinding` for
|
||||||
<!-- trait GstObjectExt::fn get_control_rate -->
|
<!-- trait GstObjectExt::fn get_control_rate -->
|
||||||
Obtain the control-rate for this `self`. Audio processing `Element`
|
Obtain the control-rate for this `self`. Audio processing `Element`
|
||||||
objects will use this rate to sub-divide their processing loop and call
|
objects will use this rate to sub-divide their processing loop and call
|
||||||
`GstObjectExt::sync_values` inbetween. The length of the processing segment
|
`GstObjectExt::sync_values` in between. The length of the processing segment
|
||||||
should be up to `control`-rate nanoseconds.
|
should be up to `control`-rate nanoseconds.
|
||||||
|
|
||||||
If the `self` is not under property control, this will return
|
If the `self` is not under property control, this will return
|
||||||
|
@ -8221,7 +8419,7 @@ or not.
|
||||||
<!-- trait GstObjectExt::fn set_control_rate -->
|
<!-- trait GstObjectExt::fn set_control_rate -->
|
||||||
Change the control-rate for this `self`. Audio processing `Element`
|
Change the control-rate for this `self`. Audio processing `Element`
|
||||||
objects will use this rate to sub-divide their processing loop and call
|
objects will use this rate to sub-divide their processing loop and call
|
||||||
`GstObjectExt::sync_values` inbetween. The length of the processing segment
|
`GstObjectExt::sync_values` in between. The length of the processing segment
|
||||||
should be up to `control`-rate nanoseconds.
|
should be up to `control`-rate nanoseconds.
|
||||||
|
|
||||||
The control-rate should not change if the element is in `State::Paused` or
|
The control-rate should not change if the element is in `State::Paused` or
|
||||||
|
@ -9430,6 +9628,10 @@ notify called when `query` will not be used anymore.
|
||||||
<!-- trait PadExt::fn set_unlink_function_full -->
|
<!-- trait PadExt::fn set_unlink_function_full -->
|
||||||
Sets the given unlink function for the pad. It will be called
|
Sets the given unlink function for the pad. It will be called
|
||||||
when the pad is unlinked.
|
when the pad is unlinked.
|
||||||
|
|
||||||
|
Note that the pad's lock is already held when the unlink
|
||||||
|
function is called, so most pad functions cannot be called
|
||||||
|
from within the callback.
|
||||||
## `unlink`
|
## `unlink`
|
||||||
the `GstPadUnlinkFunction` to set.
|
the `GstPadUnlinkFunction` to set.
|
||||||
## `user_data`
|
## `user_data`
|
||||||
|
@ -10417,7 +10619,7 @@ a list of presets individual presets are read and overlaid in 1) system,
|
||||||
2) application and 3) user order. Whenever an earlier entry is newer, the
|
2) application and 3) user order. Whenever an earlier entry is newer, the
|
||||||
later entries will be updated. Since 1.8 you can also provide extra paths
|
later entries will be updated. Since 1.8 you can also provide extra paths
|
||||||
where to find presets through the GST_PRESET_PATH environment variable.
|
where to find presets through the GST_PRESET_PATH environment variable.
|
||||||
Presets found in those paths will be concidered as "app presets".
|
Presets found in those paths will be considered as "app presets".
|
||||||
|
|
||||||
# Implements
|
# Implements
|
||||||
|
|
||||||
|
@ -10822,6 +11024,17 @@ the negotiated caps
|
||||||
## `need_pool`
|
## `need_pool`
|
||||||
return a pool
|
return a pool
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a new `Query`
|
||||||
|
<!-- impl Query::fn new_bitrate -->
|
||||||
|
Constructs a new query object for querying the bitrate.
|
||||||
|
|
||||||
|
Free-function: `gst_query_unref`
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
a new `Query`
|
a new `Query`
|
||||||
|
@ -11138,6 +11351,13 @@ Pool details can be retrieved using `Query::get_n_allocation_pools` and
|
||||||
The `Caps`
|
The `Caps`
|
||||||
## `need_pool`
|
## `need_pool`
|
||||||
Whether a `BufferPool` is needed
|
Whether a `BufferPool` is needed
|
||||||
|
<!-- impl Query::fn parse_bitrate -->
|
||||||
|
Get the results of a bitrate query. See also `Query::set_bitrate`.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `nominal_bitrate`
|
||||||
|
The resulting bitrate in bits per second
|
||||||
<!-- impl Query::fn parse_buffering_percent -->
|
<!-- impl Query::fn parse_buffering_percent -->
|
||||||
Get the percentage of buffered data. This is a value between 0 and 100.
|
Get the percentage of buffered data. This is a value between 0 and 100.
|
||||||
The `busy` indicator is `true` when the buffering is in progress.
|
The `busy` indicator is `true` when the buffering is in progress.
|
||||||
|
@ -11374,6 +11594,15 @@ position in the allocation pool array to remove
|
||||||
Set `result` as the result for the `self`.
|
Set `result` as the result for the `self`.
|
||||||
## `result`
|
## `result`
|
||||||
the result to set
|
the result to set
|
||||||
|
<!-- impl Query::fn set_bitrate -->
|
||||||
|
Set the results of a bitrate query. The nominal bitrate is the average
|
||||||
|
bitrate expected over the length of the stream as advertised in file
|
||||||
|
headers (or similar).
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `nominal_bitrate`
|
||||||
|
the nominal bitrate in bits per second
|
||||||
<!-- impl Query::fn set_buffering_percent -->
|
<!-- impl Query::fn set_buffering_percent -->
|
||||||
Set the percentage of buffered data. This is a value between 0 and 100.
|
Set the percentage of buffered data. This is a value between 0 and 100.
|
||||||
The `busy` indicator is `true` when the buffering is in progress.
|
The `busy` indicator is `true` when the buffering is in progress.
|
||||||
|
@ -11875,7 +12104,7 @@ used when the resource has no space left.
|
||||||
<!-- enum ResourceError::variant NotAuthorized -->
|
<!-- enum ResourceError::variant NotAuthorized -->
|
||||||
used when the resource can't be opened
|
used when the resource can't be opened
|
||||||
due to missing authorization.
|
due to missing authorization.
|
||||||
(Since 1.2.4)
|
(Since: 1.2.4)
|
||||||
<!-- enum ResourceError::variant NumErrors -->
|
<!-- enum ResourceError::variant NumErrors -->
|
||||||
the number of resource error types.
|
the number of resource error types.
|
||||||
<!-- struct Sample -->
|
<!-- struct Sample -->
|
||||||
|
@ -11939,10 +12168,39 @@ Get the segment associated with `self`
|
||||||
|
|
||||||
the segment of `self`.
|
the segment of `self`.
|
||||||
The segment remains valid as long as `self` is valid.
|
The segment remains valid as long as `self` is valid.
|
||||||
|
<!-- impl Sample::fn set_buffer -->
|
||||||
|
Set the buffer associated with `self`. `self` must be writable.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `buffer`
|
||||||
|
A `Buffer`
|
||||||
<!-- impl Sample::fn set_buffer_list -->
|
<!-- impl Sample::fn set_buffer_list -->
|
||||||
Set the buffer list associated with `self`
|
Set the buffer list associated with `self`. `self` must be writable.
|
||||||
## `buffer_list`
|
## `buffer_list`
|
||||||
a `BufferList`
|
a `BufferList`
|
||||||
|
<!-- impl Sample::fn set_caps -->
|
||||||
|
Set the caps associated with `self`. `self` must be writable.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `caps`
|
||||||
|
A `Caps`
|
||||||
|
<!-- impl Sample::fn set_info -->
|
||||||
|
Set the info structure associated with `self`. `self` must be writable,
|
||||||
|
and `info` must not have a parent set already.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `info`
|
||||||
|
A `Structure`
|
||||||
|
<!-- impl Sample::fn set_segment -->
|
||||||
|
Set the segment associated with `self`. `self` must be writable.
|
||||||
|
|
||||||
|
Feature: `v1_16`
|
||||||
|
|
||||||
|
## `segment`
|
||||||
|
A `Segment`
|
||||||
<!-- enum SeekType -->
|
<!-- enum SeekType -->
|
||||||
The different types of seek events. When constructing a seek event with
|
The different types of seek events. When constructing a seek event with
|
||||||
`Event::new_seek` or when doing gst_segment_do_seek ().
|
`Event::new_seek` or when doing gst_segment_do_seek ().
|
||||||
|
@ -12259,7 +12517,7 @@ segment. Compared to `Segment::to_running_time` this function can return
|
||||||
negative running-time.
|
negative running-time.
|
||||||
|
|
||||||
This function is typically used by elements that need to synchronize buffers
|
This function is typically used by elements that need to synchronize buffers
|
||||||
against the clock or eachother.
|
against the clock or each other.
|
||||||
|
|
||||||
`position` can be any value and the result of this function for values outside
|
`position` can be any value and the result of this function for values outside
|
||||||
of the segment is extrapolated.
|
of the segment is extrapolated.
|
||||||
|
@ -12305,7 +12563,7 @@ segment. Compared to `Segment::to_stream_time` this function can return
|
||||||
negative stream-time.
|
negative stream-time.
|
||||||
|
|
||||||
This function is typically used by elements that need to synchronize buffers
|
This function is typically used by elements that need to synchronize buffers
|
||||||
against the clock or eachother.
|
against the clock or each other.
|
||||||
|
|
||||||
`position` can be any value and the result of this function for values outside
|
`position` can be any value and the result of this function for values outside
|
||||||
of the segment is extrapolated.
|
of the segment is extrapolated.
|
||||||
|
@ -12406,17 +12664,17 @@ state change from READY to NULL.
|
||||||
* Elements close devices
|
* Elements close devices
|
||||||
* Elements reset any internal state.
|
* Elements reset any internal state.
|
||||||
<!-- enum StateChange::variant NullToNull -->
|
<!-- enum StateChange::variant NullToNull -->
|
||||||
state change from NULL to NULL. (Since 1.14)
|
state change from NULL to NULL. (Since: 1.14)
|
||||||
<!-- enum StateChange::variant ReadyToReady -->
|
<!-- enum StateChange::variant ReadyToReady -->
|
||||||
state change from READY to READY,
|
state change from READY to READY,
|
||||||
This might happen when going to PAUSED asynchronously failed, in that case
|
This might happen when going to PAUSED asynchronously failed, in that case
|
||||||
elements should make sure they are in a proper, coherent READY state. (Since 1.14)
|
elements should make sure they are in a proper, coherent READY state. (Since: 1.14)
|
||||||
<!-- enum StateChange::variant PausedToPaused -->
|
<!-- enum StateChange::variant PausedToPaused -->
|
||||||
state change from PAUSED to PAUSED.
|
state change from PAUSED to PAUSED.
|
||||||
This might happen when elements were in PLAYING state and 'lost state',
|
This might happen when elements were in PLAYING state and 'lost state',
|
||||||
they should make sure to go back to real 'PAUSED' state (prerolling for example). (Since 1.14)
|
they should make sure to go back to real 'PAUSED' state (prerolling for example). (Since: 1.14)
|
||||||
<!-- enum StateChange::variant PlayingToPlaying -->
|
<!-- enum StateChange::variant PlayingToPlaying -->
|
||||||
state change from PLAYING to PLAYING. (Since 1.14)
|
state change from PLAYING to PLAYING. (Since: 1.14)
|
||||||
<!-- enum StateChangeReturn -->
|
<!-- enum StateChangeReturn -->
|
||||||
The possible return values from a state change function such as
|
The possible return values from a state change function such as
|
||||||
`Element::set_state`. Only `StateChangeReturn::Failure` is a real failure.
|
`Element::set_state`. Only `StateChangeReturn::Failure` is a real failure.
|
||||||
|
@ -12982,9 +13240,9 @@ the name of the first field to read
|
||||||
than the type specified), otherwise `true`.
|
than the type specified), otherwise `true`.
|
||||||
<!-- impl Structure::fn get_array -->
|
<!-- impl Structure::fn get_array -->
|
||||||
This is useful in language bindings where unknown `gobject::Value` types are not
|
This is useful in language bindings where unknown `gobject::Value` types are not
|
||||||
supported. This function will convert the `GST_TYPE_ARRAY` and
|
supported. This function will convert the `GST_TYPE_ARRAY` into a newly
|
||||||
`GST_TYPE_LIST` into a newly allocated `gobject::ValueArray` and return it through
|
allocated `gobject::ValueArray` and return it through `array`. Be aware that this is
|
||||||
`array`. Be aware that this is slower then getting the `gobject::Value` directly.
|
slower then getting the `gobject::Value` directly.
|
||||||
## `fieldname`
|
## `fieldname`
|
||||||
the name of a field
|
the name of a field
|
||||||
## `array`
|
## `array`
|
||||||
|
@ -12993,8 +13251,8 @@ a pointer to a `gobject::ValueArray`
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
`true` if the value could be set correctly. If there was no field
|
`true` if the value could be set correctly. If there was no field
|
||||||
with `fieldname` or the existing field did not contain an int, this function
|
with `fieldname` or the existing field did not contain a `GST_TYPE_ARRAY`,
|
||||||
returns `false`.
|
this function returns `false`.
|
||||||
<!-- impl Structure::fn get_boolean -->
|
<!-- impl Structure::fn get_boolean -->
|
||||||
Sets the boolean pointed to by `value` corresponding to the value of the
|
Sets the boolean pointed to by `value` corresponding to the value of the
|
||||||
given field. Caller is responsible for making sure the field exists
|
given field. Caller is responsible for making sure the field exists
|
||||||
|
@ -13162,9 +13420,12 @@ with `fieldname` or the existing field did not contain a `gint64`, this function
|
||||||
returns `false`.
|
returns `false`.
|
||||||
<!-- impl Structure::fn get_list -->
|
<!-- impl Structure::fn get_list -->
|
||||||
This is useful in language bindings where unknown `gobject::Value` types are not
|
This is useful in language bindings where unknown `gobject::Value` types are not
|
||||||
supported. This function will convert the `GST_TYPE_ARRAY` and
|
supported. This function will convert the `GST_TYPE_LIST` into a newly
|
||||||
`GST_TYPE_LIST` into a newly allocated GValueArray and return it through
|
allocated GValueArray and return it through `array`. Be aware that this is
|
||||||
`array`. Be aware that this is slower then getting the `gobject::Value` directly.
|
slower then getting the `gobject::Value` directly.
|
||||||
|
|
||||||
|
Feature: `v1_12`
|
||||||
|
|
||||||
## `fieldname`
|
## `fieldname`
|
||||||
the name of a field
|
the name of a field
|
||||||
## `array`
|
## `array`
|
||||||
|
@ -13173,10 +13434,8 @@ a pointer to a `gobject::ValueArray`
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
`true` if the value could be set correctly. If there was no field
|
`true` if the value could be set correctly. If there was no field
|
||||||
with `fieldname` or the existing field did not contain an int, this function
|
with `fieldname` or the existing field did not contain a `GST_TYPE_LIST`, this
|
||||||
returns `false`.
|
function returns `false`.
|
||||||
|
|
||||||
Since 1.12
|
|
||||||
<!-- impl Structure::fn get_name -->
|
<!-- impl Structure::fn get_name -->
|
||||||
Get the name of `self` as a string.
|
Get the name of `self` as a string.
|
||||||
|
|
||||||
|
@ -13455,18 +13714,20 @@ supported. This function will convert a `array` to `GST_TYPE_ARRAY` and set
|
||||||
the field specified by `fieldname`. Be aware that this is slower then using
|
the field specified by `fieldname`. Be aware that this is slower then using
|
||||||
`GST_TYPE_ARRAY` in a `gobject::Value` directly.
|
`GST_TYPE_ARRAY` in a `gobject::Value` directly.
|
||||||
|
|
||||||
Since 1.12
|
Feature: `v1_12`
|
||||||
|
|
||||||
## `fieldname`
|
## `fieldname`
|
||||||
the name of a field
|
the name of a field
|
||||||
## `array`
|
## `array`
|
||||||
a pointer to a `gobject::ValueArray`
|
a pointer to a `gobject::ValueArray`
|
||||||
<!-- impl Structure::fn set_list -->
|
<!-- impl Structure::fn set_list -->
|
||||||
This is useful in language bindings where unknown GValue types are not
|
This is useful in language bindings where unknown GValue types are not
|
||||||
supported. This function will convert a `array` to `GST_TYPE_ARRAY` and set
|
supported. This function will convert a `array` to `GST_TYPE_LIST` and set
|
||||||
the field specified by `fieldname`. Be aware that this is slower then using
|
the field specified by `fieldname`. Be aware that this is slower then using
|
||||||
`GST_TYPE_ARRAY` in a `gobject::Value` directly.
|
`GST_TYPE_LIST` in a `gobject::Value` directly.
|
||||||
|
|
||||||
|
Feature: `v1_12`
|
||||||
|
|
||||||
Since 1.12
|
|
||||||
## `fieldname`
|
## `fieldname`
|
||||||
the name of a field
|
the name of a field
|
||||||
## `array`
|
## `array`
|
||||||
|
@ -14263,6 +14524,13 @@ keep existing tags
|
||||||
keep all existing tags
|
keep all existing tags
|
||||||
<!-- enum TagMergeMode::variant Count -->
|
<!-- enum TagMergeMode::variant Count -->
|
||||||
the number of merge modes
|
the number of merge modes
|
||||||
|
<!-- enum TagScope -->
|
||||||
|
GstTagScope specifies if a taglist applies to the complete
|
||||||
|
medium or only to one single stream.
|
||||||
|
<!-- enum TagScope::variant Stream -->
|
||||||
|
tags specific to this single stream
|
||||||
|
<!-- enum TagScope::variant Global -->
|
||||||
|
global tags for the complete medium
|
||||||
<!-- struct TagSetter -->
|
<!-- struct TagSetter -->
|
||||||
Element interface that allows setting of media metadata.
|
Element interface that allows setting of media metadata.
|
||||||
|
|
||||||
|
@ -14685,7 +14953,7 @@ unreffed before setting a new one.
|
||||||
## `toc`
|
## `toc`
|
||||||
a `Toc` to set.
|
a `Toc` to set.
|
||||||
<!-- struct TypeFindFactory -->
|
<!-- struct TypeFindFactory -->
|
||||||
These functions allow querying informations about registered typefind
|
These functions allow querying information about registered typefind
|
||||||
functions. How to create and register these functions is described in
|
functions. How to create and register these functions is described in
|
||||||
the section <link linkend="gstreamer-Writing-typefind-functions">
|
the section <link linkend="gstreamer-Writing-typefind-functions">
|
||||||
"Writing typefind functions"`</link>`.
|
"Writing typefind functions"`</link>`.
|
||||||
|
|
Loading…
Reference in a new issue