forked from mirrors/gstreamer-rs
Update documentation
This commit is contained in:
parent
0f6850d6a9
commit
7feadd2f32
4 changed files with 1222 additions and 750 deletions
|
@ -779,7 +779,7 @@ Subclasses that synchronise on the clock in the `BaseSinkClass.render`()
|
||||||
method are supported as well. These classes typically receive a buffer in
|
method are supported as well. These classes typically receive a buffer in
|
||||||
the render method and can then potentially block on the clock while
|
the render method and can then potentially block on the clock while
|
||||||
rendering. A typical example is an audiosink.
|
rendering. A typical example is an audiosink.
|
||||||
These subclasses can use `BaseSinkExt::wait_preroll` to perform the
|
These subclasses can use `BaseSink::wait_preroll` to perform the
|
||||||
blocking wait.
|
blocking wait.
|
||||||
|
|
||||||
Upon receiving the EOS event in the PLAYING state, `BaseSink` will wait
|
Upon receiving the EOS event in the PLAYING state, `BaseSink` will wait
|
||||||
|
@ -1245,7 +1245,7 @@ can only produce data in the PLAYING state, when the clock is actually
|
||||||
distributed and running.
|
distributed and running.
|
||||||
|
|
||||||
Live sources that synchronize and block on the clock (an audio source, for
|
Live sources that synchronize and block on the clock (an audio source, for
|
||||||
example) can use `BaseSrcExt::wait_playing` when the
|
example) can use `BaseSrc::wait_playing` when the
|
||||||
`BaseSrcClass.create`() function was interrupted by a state change to
|
`BaseSrcClass.create`() function was interrupted by a state change to
|
||||||
PAUSED.
|
PAUSED.
|
||||||
|
|
||||||
|
@ -1451,7 +1451,7 @@ be GST_STATE_CHANGE_NO_PREROLL.
|
||||||
new live-mode
|
new live-mode
|
||||||
<!-- trait BaseSrcExt::fn start_complete -->
|
<!-- trait BaseSrcExt::fn start_complete -->
|
||||||
Complete an asynchronous start operation. When the subclass overrides the
|
Complete an asynchronous start operation. When the subclass overrides the
|
||||||
start method, it should call `BaseSrcExt::start_complete` when the start
|
start method, it should call `BaseSrc::start_complete` when the start
|
||||||
operation completes either from the same thread or from an asynchronous
|
operation completes either from the same thread or from an asynchronous
|
||||||
helper thread.
|
helper thread.
|
||||||
## `ret`
|
## `ret`
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -941,6 +941,307 @@ Every four adjacent blocks - two
|
||||||
horizontally and two vertically are grouped together and are located
|
horizontally and two vertically are grouped together and are located
|
||||||
in memory in Z or flipped Z order. In case of odd rows, the last row
|
in memory in Z or flipped Z order. In case of odd rows, the last row
|
||||||
of blocks is arranged in linear order.
|
of blocks is arranged in linear order.
|
||||||
|
<!-- struct VideoTimeCode -->
|
||||||
|
`field_count` must be 0 for progressive video and 1 or 2 for interlaced.
|
||||||
|
|
||||||
|
A representation of a SMPTE time code.
|
||||||
|
|
||||||
|
`hours` must be positive and less than 24. Will wrap around otherwise.
|
||||||
|
`minutes` and `seconds` must be positive and less than 60.
|
||||||
|
`frames` must be less than or equal to `config.fps_n` / `config.fps_d`
|
||||||
|
These values are *NOT* automatically normalized.
|
||||||
|
|
||||||
|
Feature: `v1_10`
|
||||||
|
<!-- impl VideoTimeCode::fn new -->
|
||||||
|
`field_count` is 0 for progressive, 1 or 2 for interlaced.
|
||||||
|
`latest_daiy_jam` reference is stolen from caller.
|
||||||
|
|
||||||
|
Feature: `v1_10`
|
||||||
|
|
||||||
|
## `fps_n`
|
||||||
|
Numerator of the frame rate
|
||||||
|
## `fps_d`
|
||||||
|
Denominator of the frame rate
|
||||||
|
## `latest_daily_jam`
|
||||||
|
The latest daily jam of the `VideoTimeCode`
|
||||||
|
## `flags`
|
||||||
|
`VideoTimeCodeFlags`
|
||||||
|
## `hours`
|
||||||
|
the hours field of `VideoTimeCode`
|
||||||
|
## `minutes`
|
||||||
|
the minutes field of `VideoTimeCode`
|
||||||
|
## `seconds`
|
||||||
|
the seconds field of `VideoTimeCode`
|
||||||
|
## `frames`
|
||||||
|
the frames field of `VideoTimeCode`
|
||||||
|
## `field_count`
|
||||||
|
Interlaced video field count
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a new `VideoTimeCode` with the given values.
|
||||||
|
The values are not checked for being in a valid range. To see if your
|
||||||
|
timecode actually has valid content, use `VideoTimeCode::is_valid`.
|
||||||
|
<!-- impl VideoTimeCode::fn new_empty -->
|
||||||
|
|
||||||
|
Feature: `v1_10`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a new empty `VideoTimeCode`
|
||||||
|
<!-- impl VideoTimeCode::fn new_from_date_time -->
|
||||||
|
The resulting config->latest_daily_jam is set to
|
||||||
|
midnight, and timecode is set to the given time.
|
||||||
|
|
||||||
|
Feature: `v1_12`
|
||||||
|
|
||||||
|
## `fps_n`
|
||||||
|
Numerator of the frame rate
|
||||||
|
## `fps_d`
|
||||||
|
Denominator of the frame rate
|
||||||
|
## `dt`
|
||||||
|
`glib::DateTime` to convert
|
||||||
|
## `flags`
|
||||||
|
`VideoTimeCodeFlags`
|
||||||
|
## `field_count`
|
||||||
|
Interlaced video field count
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
the `GVideoTimeCode` representation of `dt`.
|
||||||
|
<!-- impl VideoTimeCode::fn new_from_string -->
|
||||||
|
|
||||||
|
Feature: `v1_12`
|
||||||
|
|
||||||
|
## `tc_str`
|
||||||
|
The string that represents the `VideoTimeCode`
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a new `VideoTimeCode` from the given string
|
||||||
|
<!-- impl VideoTimeCode::fn add_frames -->
|
||||||
|
Adds or subtracts `frames` amount of frames to `self`. tc needs to
|
||||||
|
contain valid data, as verified by `VideoTimeCode::is_valid`.
|
||||||
|
|
||||||
|
Feature: `v1_10`
|
||||||
|
|
||||||
|
## `frames`
|
||||||
|
How many frames to add or subtract
|
||||||
|
<!-- impl VideoTimeCode::fn add_interval -->
|
||||||
|
This makes a component-wise addition of `tc_inter` to `self`. For example,
|
||||||
|
adding ("01:02:03:04", "00:01:00:00") will return "01:03:03:04".
|
||||||
|
When it comes to drop-frame timecodes,
|
||||||
|
adding ("00:00:00;00", "00:01:00:00") will return "00:01:00;02"
|
||||||
|
because of drop-frame oddities. However,
|
||||||
|
adding ("00:09:00;02", "00:01:00:00") will return "00:10:00;00"
|
||||||
|
because this time we can have an exact minute.
|
||||||
|
|
||||||
|
Feature: `v1_12`
|
||||||
|
|
||||||
|
## `tc_inter`
|
||||||
|
The `VideoTimeCodeInterval` to add to `self`.
|
||||||
|
The interval must contain valid values, except that for drop-frame
|
||||||
|
timecode, it may also contain timecodes which would normally
|
||||||
|
be dropped. These are then corrected to the next reasonable timecode.
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
A new `VideoTimeCode` with `tc_inter` added.
|
||||||
|
<!-- impl VideoTimeCode::fn clear -->
|
||||||
|
Initializes `self` with empty/zero/NULL values.
|
||||||
|
|
||||||
|
Feature: `v1_10`
|
||||||
|
|
||||||
|
<!-- impl VideoTimeCode::fn compare -->
|
||||||
|
Compares `self` and `tc2` . If both have latest daily jam information, it is
|
||||||
|
taken into account. Otherwise, it is assumed that the daily jam of both
|
||||||
|
`self` and `tc2` was at the same time. Both time codes must be valid.
|
||||||
|
|
||||||
|
Feature: `v1_10`
|
||||||
|
|
||||||
|
## `tc2`
|
||||||
|
another `VideoTimeCode`
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
1 if `self` is after `tc2`, -1 if `self` is before `tc2`, 0 otherwise.
|
||||||
|
<!-- impl VideoTimeCode::fn copy -->
|
||||||
|
|
||||||
|
Feature: `v1_10`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a new `VideoTimeCode` with the same values as `self` .
|
||||||
|
<!-- impl VideoTimeCode::fn frames_since_daily_jam -->
|
||||||
|
|
||||||
|
Feature: `v1_10`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
how many frames have passed since the daily jam of `self` .
|
||||||
|
<!-- impl VideoTimeCode::fn free -->
|
||||||
|
Frees `self` .
|
||||||
|
|
||||||
|
Feature: `v1_10`
|
||||||
|
|
||||||
|
<!-- impl VideoTimeCode::fn increment_frame -->
|
||||||
|
Adds one frame to `self` .
|
||||||
|
|
||||||
|
Feature: `v1_10`
|
||||||
|
|
||||||
|
<!-- impl VideoTimeCode::fn init -->
|
||||||
|
`field_count` is 0 for progressive, 1 or 2 for interlaced.
|
||||||
|
`latest_daiy_jam` reference is stolen from caller.
|
||||||
|
|
||||||
|
Initializes `self` with the given values.
|
||||||
|
The values are not checked for being in a valid range. To see if your
|
||||||
|
timecode actually has valid content, use `VideoTimeCode::is_valid`.
|
||||||
|
|
||||||
|
Feature: `v1_10`
|
||||||
|
|
||||||
|
## `fps_n`
|
||||||
|
Numerator of the frame rate
|
||||||
|
## `fps_d`
|
||||||
|
Denominator of the frame rate
|
||||||
|
## `latest_daily_jam`
|
||||||
|
The latest daily jam of the `VideoTimeCode`
|
||||||
|
## `flags`
|
||||||
|
`VideoTimeCodeFlags`
|
||||||
|
## `hours`
|
||||||
|
the hours field of `VideoTimeCode`
|
||||||
|
## `minutes`
|
||||||
|
the minutes field of `VideoTimeCode`
|
||||||
|
## `seconds`
|
||||||
|
the seconds field of `VideoTimeCode`
|
||||||
|
## `frames`
|
||||||
|
the frames field of `VideoTimeCode`
|
||||||
|
## `field_count`
|
||||||
|
Interlaced video field count
|
||||||
|
<!-- impl VideoTimeCode::fn init_from_date_time -->
|
||||||
|
The resulting config->latest_daily_jam is set to
|
||||||
|
midnight, and timecode is set to the given time.
|
||||||
|
|
||||||
|
Feature: `v1_12`
|
||||||
|
|
||||||
|
## `fps_n`
|
||||||
|
Numerator of the frame rate
|
||||||
|
## `fps_d`
|
||||||
|
Denominator of the frame rate
|
||||||
|
## `dt`
|
||||||
|
`glib::DateTime` to convert
|
||||||
|
## `flags`
|
||||||
|
`VideoTimeCodeFlags`
|
||||||
|
## `field_count`
|
||||||
|
Interlaced video field count
|
||||||
|
<!-- impl VideoTimeCode::fn is_valid -->
|
||||||
|
|
||||||
|
Feature: `v1_10`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
whether `self` is a valid timecode (supported frame rate,
|
||||||
|
hours/minutes/seconds/frames not overflowing)
|
||||||
|
<!-- impl VideoTimeCode::fn nsec_since_daily_jam -->
|
||||||
|
|
||||||
|
Feature: `v1_10`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
how many nsec have passed since the daily jam of `self` .
|
||||||
|
<!-- impl VideoTimeCode::fn to_date_time -->
|
||||||
|
The `self.config`->latest_daily_jam is required to be non-NULL.
|
||||||
|
|
||||||
|
Feature: `v1_10`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
the `glib::DateTime` representation of `self`.
|
||||||
|
<!-- impl VideoTimeCode::fn to_string -->
|
||||||
|
|
||||||
|
Feature: `v1_10`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
the SMPTE ST 2059-1:2015 string representation of `self`. That will
|
||||||
|
take the form hh:mm:ss:ff . The last separator (between seconds and frames)
|
||||||
|
may vary:
|
||||||
|
|
||||||
|
';' for drop-frame, non-interlaced content and for drop-frame interlaced
|
||||||
|
field 2
|
||||||
|
',' for drop-frame interlaced field 1
|
||||||
|
':' for non-drop-frame, non-interlaced content and for non-drop-frame
|
||||||
|
interlaced field 2
|
||||||
|
'.' for non-drop-frame interlaced field 1
|
||||||
|
<!-- struct VideoTimeCodeInterval -->
|
||||||
|
A representation of a difference between two `VideoTimeCode` instances.
|
||||||
|
Will not necessarily correspond to a real timecode (e.g. 00:00:10;00)
|
||||||
|
|
||||||
|
Feature: `v1_12`
|
||||||
|
<!-- impl VideoTimeCodeInterval::fn new -->
|
||||||
|
|
||||||
|
Feature: `v1_12`
|
||||||
|
|
||||||
|
## `hours`
|
||||||
|
the hours field of `VideoTimeCodeInterval`
|
||||||
|
## `minutes`
|
||||||
|
the minutes field of `VideoTimeCodeInterval`
|
||||||
|
## `seconds`
|
||||||
|
the seconds field of `VideoTimeCodeInterval`
|
||||||
|
## `frames`
|
||||||
|
the frames field of `VideoTimeCodeInterval`
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a new `VideoTimeCodeInterval` with the given values.
|
||||||
|
<!-- impl VideoTimeCodeInterval::fn new_from_string -->
|
||||||
|
`tc_inter_str` must only have ":" as separators.
|
||||||
|
|
||||||
|
Feature: `v1_12`
|
||||||
|
|
||||||
|
## `tc_inter_str`
|
||||||
|
The string that represents the `VideoTimeCodeInterval`
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a new `VideoTimeCodeInterval` from the given string
|
||||||
|
<!-- impl VideoTimeCodeInterval::fn clear -->
|
||||||
|
Initializes `self` with empty/zero/NULL values.
|
||||||
|
|
||||||
|
Feature: `v1_12`
|
||||||
|
|
||||||
|
<!-- impl VideoTimeCodeInterval::fn copy -->
|
||||||
|
|
||||||
|
Feature: `v1_12`
|
||||||
|
|
||||||
|
|
||||||
|
# Returns
|
||||||
|
|
||||||
|
a new `VideoTimeCodeInterval` with the same values as `self` .
|
||||||
|
<!-- impl VideoTimeCodeInterval::fn free -->
|
||||||
|
Frees `self` .
|
||||||
|
|
||||||
|
Feature: `v1_12`
|
||||||
|
|
||||||
|
<!-- impl VideoTimeCodeInterval::fn init -->
|
||||||
|
Initializes `self` with the given values.
|
||||||
|
|
||||||
|
Feature: `v1_12`
|
||||||
|
|
||||||
|
## `hours`
|
||||||
|
the hours field of `VideoTimeCodeInterval`
|
||||||
|
## `minutes`
|
||||||
|
the minutes field of `VideoTimeCodeInterval`
|
||||||
|
## `seconds`
|
||||||
|
the seconds field of `VideoTimeCodeInterval`
|
||||||
|
## `frames`
|
||||||
|
the frames field of `VideoTimeCodeInterval`
|
||||||
<!-- enum VideoTransferFunction -->
|
<!-- enum VideoTransferFunction -->
|
||||||
The video transfer function defines the formula for converting between
|
The video transfer function defines the formula for converting between
|
||||||
non-linear RGB (R'G'B') and linear RGB
|
non-linear RGB (R'G'B') and linear RGB
|
||||||
|
|
|
@ -11,15 +11,15 @@ want to create a toplevel bin because a normal bin doesn't have a bus or
|
||||||
handle clock distribution of its own.
|
handle clock distribution of its own.
|
||||||
|
|
||||||
After the bin has been created you will typically add elements to it with
|
After the bin has been created you will typically add elements to it with
|
||||||
`BinExt::add`. You can remove elements with `BinExt::remove`.
|
`GstBinExt::add`. You can remove elements with `GstBinExt::remove`.
|
||||||
|
|
||||||
An element can be retrieved from a bin with `BinExt::get_by_name`, using the
|
An element can be retrieved from a bin with `GstBinExt::get_by_name`, using the
|
||||||
elements name. `BinExt::get_by_name_recurse_up` is mainly used for internal
|
elements name. `GstBinExt::get_by_name_recurse_up` is mainly used for internal
|
||||||
purposes and will query the parent bins when the element is not found in the
|
purposes and will query the parent bins when the element is not found in the
|
||||||
current bin.
|
current bin.
|
||||||
|
|
||||||
An iterator of elements in a bin can be retrieved with
|
An iterator of elements in a bin can be retrieved with
|
||||||
`BinExt::iterate_elements`. Various other iterators exist to retrieve the
|
`GstBinExt::iterate_elements`. Various other iterators exist to retrieve the
|
||||||
elements in a bin.
|
elements in a bin.
|
||||||
|
|
||||||
`GstObjectExt::unref` is used to drop your reference to the bin.
|
`GstObjectExt::unref` is used to drop your reference to the bin.
|
||||||
|
@ -99,8 +99,8 @@ handler will return `true`.
|
||||||
|
|
||||||
# Implements
|
# Implements
|
||||||
|
|
||||||
[`BinExt`](trait.BinExt.html), [`ElementExt`](trait.ElementExt.html), [`GstObjectExt`](trait.GstObjectExt.html), [`glib::object::ObjectExt`](../glib/object/trait.ObjectExt.html), [`ChildProxyExt`](trait.ChildProxyExt.html)
|
[`GstBinExt`](trait.GstBinExt.html), [`ElementExt`](trait.ElementExt.html), [`GstObjectExt`](trait.GstObjectExt.html), [`glib::object::ObjectExt`](../glib/object/trait.ObjectExt.html), [`ChildProxyExt`](trait.ChildProxyExt.html)
|
||||||
<!-- trait BinExt -->
|
<!-- trait GstBinExt -->
|
||||||
Trait containing all `Bin` methods.
|
Trait containing all `Bin` methods.
|
||||||
|
|
||||||
# Implementors
|
# Implementors
|
||||||
|
@ -114,7 +114,7 @@ the name of the new bin
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
a new `Bin`
|
a new `Bin`
|
||||||
<!-- trait BinExt::fn add -->
|
<!-- trait GstBinExt::fn add -->
|
||||||
Adds the given element to the bin. Sets the element's parent, and thus
|
Adds the given element to the bin. Sets the element's parent, and thus
|
||||||
takes ownership of the element. An element can only be added to one bin.
|
takes ownership of the element. An element can only be added to one bin.
|
||||||
|
|
||||||
|
@ -124,7 +124,7 @@ before the element is added to the bin.
|
||||||
> When you add an element to an already-running pipeline, you will have to
|
> When you add an element to an already-running pipeline, you will have to
|
||||||
> take care to set the state of the newly-added element to the desired
|
> take care to set the state of the newly-added element to the desired
|
||||||
> state (usually PLAYING or PAUSED, same you set the pipeline to originally)
|
> state (usually PLAYING or PAUSED, same you set the pipeline to originally)
|
||||||
> with `ElementExt::set_state`, or use `ElementExt::sync_state_with_parent`.
|
> with `Element::set_state`, or use `ElementExt::sync_state_with_parent`.
|
||||||
> The bin or pipeline will not take care of this for you.
|
> The bin or pipeline will not take care of this for you.
|
||||||
|
|
||||||
MT safe.
|
MT safe.
|
||||||
|
@ -135,13 +135,13 @@ the `Element` to add
|
||||||
|
|
||||||
`true` if the element could be added, `false` if
|
`true` if the element could be added, `false` if
|
||||||
the bin does not want to accept the element.
|
the bin does not want to accept the element.
|
||||||
<!-- trait BinExt::fn add_many -->
|
<!-- trait GstBinExt::fn add_many -->
|
||||||
Adds a `None`-terminated list of elements to a bin. This function is
|
Adds a `None`-terminated list of elements to a bin. This function is
|
||||||
equivalent to calling `BinExt::add` for each member of the list. The return
|
equivalent to calling `GstBinExt::add` for each member of the list. The return
|
||||||
value of each `BinExt::add` is ignored.
|
value of each `GstBinExt::add` is ignored.
|
||||||
## `element_1`
|
## `element_1`
|
||||||
the `Element` element to add to the bin
|
the `Element` element to add to the bin
|
||||||
<!-- trait BinExt::fn find_unlinked_pad -->
|
<!-- trait GstBinExt::fn find_unlinked_pad -->
|
||||||
Recursively looks for elements with an unlinked pad of the given
|
Recursively looks for elements with an unlinked pad of the given
|
||||||
direction within the specified bin and returns an unlinked pad
|
direction within the specified bin and returns an unlinked pad
|
||||||
if one is found, or `None` otherwise. If a pad is found, the caller
|
if one is found, or `None` otherwise. If a pad is found, the caller
|
||||||
|
@ -154,12 +154,12 @@ whether to look for an unlinked source or sink pad
|
||||||
|
|
||||||
unlinked pad of the given
|
unlinked pad of the given
|
||||||
direction, `None`.
|
direction, `None`.
|
||||||
<!-- trait BinExt::fn get_by_interface -->
|
<!-- trait GstBinExt::fn get_by_interface -->
|
||||||
Looks for an element inside the bin that implements the given
|
Looks for an element inside the bin that implements the given
|
||||||
interface. If such an element is found, it returns the element.
|
interface. If such an element is found, it returns the element.
|
||||||
You can cast this element to the given interface afterwards. If you want
|
You can cast this element to the given interface afterwards. If you want
|
||||||
all elements that implement the interface, use
|
all elements that implement the interface, use
|
||||||
`BinExt::iterate_all_by_interface`. This function recurses into child bins.
|
`GstBinExt::iterate_all_by_interface`. This function recurses into child bins.
|
||||||
|
|
||||||
MT safe. Caller owns returned reference.
|
MT safe. Caller owns returned reference.
|
||||||
## `iface`
|
## `iface`
|
||||||
|
@ -169,7 +169,7 @@ the `glib::Type` of an interface
|
||||||
|
|
||||||
A `Element` inside the bin
|
A `Element` inside the bin
|
||||||
implementing the interface
|
implementing the interface
|
||||||
<!-- trait BinExt::fn get_by_name -->
|
<!-- trait GstBinExt::fn get_by_name -->
|
||||||
Gets the element with the given name from a bin. This
|
Gets the element with the given name from a bin. This
|
||||||
function recurses into child bins.
|
function recurses into child bins.
|
||||||
|
|
||||||
|
@ -183,7 +183,7 @@ the element name to search for
|
||||||
|
|
||||||
the `Element` with the given
|
the `Element` with the given
|
||||||
name, or `None`
|
name, or `None`
|
||||||
<!-- trait BinExt::fn get_by_name_recurse_up -->
|
<!-- trait GstBinExt::fn get_by_name_recurse_up -->
|
||||||
Gets the element with the given name from this bin. If the
|
Gets the element with the given name from this bin. If the
|
||||||
element is not found, a recursion is performed on the parent bin.
|
element is not found, a recursion is performed on the parent bin.
|
||||||
|
|
||||||
|
@ -198,7 +198,7 @@ the element name to search for
|
||||||
|
|
||||||
the `Element` with the given
|
the `Element` with the given
|
||||||
name, or `None`
|
name, or `None`
|
||||||
<!-- trait BinExt::fn get_suppressed_flags -->
|
<!-- trait GstBinExt::fn get_suppressed_flags -->
|
||||||
Return the suppressed flags of the bin.
|
Return the suppressed flags of the bin.
|
||||||
|
|
||||||
MT safe.
|
MT safe.
|
||||||
|
@ -209,7 +209,7 @@ Feature: `v1_10`
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
the bin's suppressed `ElementFlags`.
|
the bin's suppressed `ElementFlags`.
|
||||||
<!-- trait BinExt::fn iterate_all_by_interface -->
|
<!-- trait GstBinExt::fn iterate_all_by_interface -->
|
||||||
Looks for all elements inside the bin that implements the given
|
Looks for all elements inside the bin that implements the given
|
||||||
interface. You can safely cast all returned elements to the given interface.
|
interface. You can safely cast all returned elements to the given interface.
|
||||||
The function recurses inside child bins. The iterator will yield a series
|
The function recurses inside child bins. The iterator will yield a series
|
||||||
|
@ -224,7 +224,7 @@ the `glib::Type` of an interface
|
||||||
a `Iterator` of `Element`
|
a `Iterator` of `Element`
|
||||||
for all elements in the bin implementing the given interface,
|
for all elements in the bin implementing the given interface,
|
||||||
or `None`
|
or `None`
|
||||||
<!-- trait BinExt::fn iterate_elements -->
|
<!-- trait GstBinExt::fn iterate_elements -->
|
||||||
Gets an iterator for the elements in this bin.
|
Gets an iterator for the elements in this bin.
|
||||||
|
|
||||||
MT safe. Caller owns returned value.
|
MT safe. Caller owns returned value.
|
||||||
|
@ -233,7 +233,7 @@ MT safe. Caller owns returned value.
|
||||||
|
|
||||||
a `Iterator` of `Element`,
|
a `Iterator` of `Element`,
|
||||||
or `None`
|
or `None`
|
||||||
<!-- trait BinExt::fn iterate_recurse -->
|
<!-- trait GstBinExt::fn iterate_recurse -->
|
||||||
Gets an iterator for the elements in this bin.
|
Gets an iterator for the elements in this bin.
|
||||||
This iterator recurses into GstBin children.
|
This iterator recurses into GstBin children.
|
||||||
|
|
||||||
|
@ -243,7 +243,7 @@ MT safe. Caller owns returned value.
|
||||||
|
|
||||||
a `Iterator` of `Element`,
|
a `Iterator` of `Element`,
|
||||||
or `None`
|
or `None`
|
||||||
<!-- trait BinExt::fn iterate_sinks -->
|
<!-- trait GstBinExt::fn iterate_sinks -->
|
||||||
Gets an iterator for all elements in the bin that have the
|
Gets an iterator for all elements in the bin that have the
|
||||||
`ElementFlags::Sink` flag set.
|
`ElementFlags::Sink` flag set.
|
||||||
|
|
||||||
|
@ -253,7 +253,7 @@ MT safe. Caller owns returned value.
|
||||||
|
|
||||||
a `Iterator` of `Element`,
|
a `Iterator` of `Element`,
|
||||||
or `None`
|
or `None`
|
||||||
<!-- trait BinExt::fn iterate_sorted -->
|
<!-- trait GstBinExt::fn iterate_sorted -->
|
||||||
Gets an iterator for the elements in this bin in topologically
|
Gets an iterator for the elements in this bin in topologically
|
||||||
sorted order. This means that the elements are returned from
|
sorted order. This means that the elements are returned from
|
||||||
the most downstream elements (sinks) to the sources.
|
the most downstream elements (sinks) to the sources.
|
||||||
|
@ -267,7 +267,7 @@ MT safe. Caller owns returned value.
|
||||||
|
|
||||||
a `Iterator` of `Element`,
|
a `Iterator` of `Element`,
|
||||||
or `None`
|
or `None`
|
||||||
<!-- trait BinExt::fn iterate_sources -->
|
<!-- trait GstBinExt::fn iterate_sources -->
|
||||||
Gets an iterator for all elements in the bin that have the
|
Gets an iterator for all elements in the bin that have the
|
||||||
`ElementFlags::Source` flag set.
|
`ElementFlags::Source` flag set.
|
||||||
|
|
||||||
|
@ -277,7 +277,7 @@ MT safe. Caller owns returned value.
|
||||||
|
|
||||||
a `Iterator` of `Element`,
|
a `Iterator` of `Element`,
|
||||||
or `None`
|
or `None`
|
||||||
<!-- trait BinExt::fn recalculate_latency -->
|
<!-- trait GstBinExt::fn recalculate_latency -->
|
||||||
Query `self` for the current latency using and reconfigures this latency to all the
|
Query `self` for the current latency using and reconfigures this latency to all the
|
||||||
elements with a LATENCY event.
|
elements with a LATENCY event.
|
||||||
|
|
||||||
|
@ -290,7 +290,7 @@ calculations will be performed.
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
`true` if the latency could be queried and reconfigured.
|
`true` if the latency could be queried and reconfigured.
|
||||||
<!-- trait BinExt::fn remove -->
|
<!-- trait GstBinExt::fn remove -->
|
||||||
Removes the element from the bin, unparenting it as well.
|
Removes the element from the bin, unparenting it as well.
|
||||||
Unparenting the element means that the element will be dereferenced,
|
Unparenting the element means that the element will be dereferenced,
|
||||||
so if the bin holds the only reference to the element, the element
|
so if the bin holds the only reference to the element, the element
|
||||||
|
@ -309,12 +309,12 @@ the `Element` to remove
|
||||||
|
|
||||||
`true` if the element could be removed, `false` if
|
`true` if the element could be removed, `false` if
|
||||||
the bin does not want to remove the element.
|
the bin does not want to remove the element.
|
||||||
<!-- trait BinExt::fn remove_many -->
|
<!-- trait GstBinExt::fn remove_many -->
|
||||||
Remove a list of elements from a bin. This function is equivalent
|
Remove a list of elements from a bin. This function is equivalent
|
||||||
to calling `BinExt::remove` with each member of the list.
|
to calling `GstBinExt::remove` with each member of the list.
|
||||||
## `element_1`
|
## `element_1`
|
||||||
the first `Element` to remove from the bin
|
the first `Element` to remove from the bin
|
||||||
<!-- trait BinExt::fn set_suppressed_flags -->
|
<!-- trait GstBinExt::fn set_suppressed_flags -->
|
||||||
Suppress the given flags on the bin. `ElementFlags` of a
|
Suppress the given flags on the bin. `ElementFlags` of a
|
||||||
child element are propagated when it is added to the bin.
|
child element are propagated when it is added to the bin.
|
||||||
When suppressed flags are set, those specified flags will
|
When suppressed flags are set, those specified flags will
|
||||||
|
@ -326,7 +326,7 @@ Feature: `v1_10`
|
||||||
|
|
||||||
## `flags`
|
## `flags`
|
||||||
the `ElementFlags` to suppress
|
the `ElementFlags` to suppress
|
||||||
<!-- trait BinExt::fn sync_children_states -->
|
<!-- trait GstBinExt::fn sync_children_states -->
|
||||||
Synchronizes the state of every child of `self` with the state
|
Synchronizes the state of every child of `self` with the state
|
||||||
of `self`. See also `ElementExt::sync_state_with_parent`.
|
of `self`. See also `ElementExt::sync_state_with_parent`.
|
||||||
|
|
||||||
|
@ -334,7 +334,7 @@ of `self`. See also `ElementExt::sync_state_with_parent`.
|
||||||
|
|
||||||
`true` if syncing the state was successful for all children,
|
`true` if syncing the state was successful for all children,
|
||||||
otherwise `false`.
|
otherwise `false`.
|
||||||
<!-- trait BinExt::fn connect_deep_element_added -->
|
<!-- trait GstBinExt::fn connect_deep_element_added -->
|
||||||
Will be emitted after the element was added to sub_bin.
|
Will be emitted after the element was added to sub_bin.
|
||||||
|
|
||||||
Feature: `v1_10`
|
Feature: `v1_10`
|
||||||
|
@ -343,7 +343,7 @@ Feature: `v1_10`
|
||||||
the `Bin` the element was added to
|
the `Bin` the element was added to
|
||||||
## `element`
|
## `element`
|
||||||
the `Element` that was added to `sub_bin`
|
the `Element` that was added to `sub_bin`
|
||||||
<!-- trait BinExt::fn connect_deep_element_removed -->
|
<!-- trait GstBinExt::fn connect_deep_element_removed -->
|
||||||
Will be emitted after the element was removed from sub_bin.
|
Will be emitted after the element was removed from sub_bin.
|
||||||
|
|
||||||
Feature: `v1_10`
|
Feature: `v1_10`
|
||||||
|
@ -352,7 +352,7 @@ Feature: `v1_10`
|
||||||
the `Bin` the element was removed from
|
the `Bin` the element was removed from
|
||||||
## `element`
|
## `element`
|
||||||
the `Element` that was removed from `sub_bin`
|
the `Element` that was removed from `sub_bin`
|
||||||
<!-- trait BinExt::fn connect_do_latency -->
|
<!-- trait GstBinExt::fn connect_do_latency -->
|
||||||
Will be emitted when the bin needs to perform latency calculations. This
|
Will be emitted when the bin needs to perform latency calculations. This
|
||||||
signal is only emitted for toplevel bins or when async-handling is
|
signal is only emitted for toplevel bins or when async-handling is
|
||||||
enabled.
|
enabled.
|
||||||
|
@ -364,23 +364,23 @@ possible latency to all sinks.
|
||||||
Connect to this signal if the default latency calculations are not
|
Connect to this signal if the default latency calculations are not
|
||||||
sufficient, like when you need different latencies for different sinks in
|
sufficient, like when you need different latencies for different sinks in
|
||||||
the same pipeline.
|
the same pipeline.
|
||||||
<!-- trait BinExt::fn connect_element_added -->
|
<!-- trait GstBinExt::fn connect_element_added -->
|
||||||
Will be emitted after the element was added to the bin.
|
Will be emitted after the element was added to the bin.
|
||||||
## `element`
|
## `element`
|
||||||
the `Element` that was added to the bin
|
the `Element` that was added to the bin
|
||||||
<!-- trait BinExt::fn connect_element_removed -->
|
<!-- trait GstBinExt::fn connect_element_removed -->
|
||||||
Will be emitted after the element was removed from the bin.
|
Will be emitted after the element was removed from the bin.
|
||||||
## `element`
|
## `element`
|
||||||
the `Element` that was removed from the bin
|
the `Element` that was removed from the bin
|
||||||
<!-- trait BinExt::fn get_property_async-handling -->
|
<!-- trait GstBinExt::fn get_property_async-handling -->
|
||||||
If set to `true`, the bin will handle asynchronous state changes.
|
If set to `true`, the bin will handle asynchronous state changes.
|
||||||
This should be used only if the bin subclass is modifying the state
|
This should be used only if the bin subclass is modifying the state
|
||||||
of its children on its own.
|
of its children on its own.
|
||||||
<!-- trait BinExt::fn set_property_async-handling -->
|
<!-- trait GstBinExt::fn set_property_async-handling -->
|
||||||
If set to `true`, the bin will handle asynchronous state changes.
|
If set to `true`, the bin will handle asynchronous state changes.
|
||||||
This should be used only if the bin subclass is modifying the state
|
This should be used only if the bin subclass is modifying the state
|
||||||
of its children on its own.
|
of its children on its own.
|
||||||
<!-- trait BinExt::fn get_property_message-forward -->
|
<!-- trait GstBinExt::fn get_property_message-forward -->
|
||||||
Forward all children messages, even those that would normally be filtered by
|
Forward all children messages, even those that would normally be filtered by
|
||||||
the bin. This can be interesting when one wants to be notified of the EOS
|
the bin. This can be interesting when one wants to be notified of the EOS
|
||||||
state of individual elements, for example.
|
state of individual elements, for example.
|
||||||
|
@ -389,7 +389,7 @@ The messages are converted to an ELEMENT message with the bin as the
|
||||||
source. The structure of the message is named 'GstBinForwarded' and contains
|
source. The structure of the message is named 'GstBinForwarded' and contains
|
||||||
a field named 'message' of type GST_TYPE_MESSAGE that contains the original
|
a field named 'message' of type GST_TYPE_MESSAGE that contains the original
|
||||||
forwarded message.
|
forwarded message.
|
||||||
<!-- trait BinExt::fn set_property_message-forward -->
|
<!-- trait GstBinExt::fn set_property_message-forward -->
|
||||||
Forward all children messages, even those that would normally be filtered by
|
Forward all children messages, even those that would normally be filtered by
|
||||||
the bin. This can be interesting when one wants to be notified of the EOS
|
the bin. This can be interesting when one wants to be notified of the EOS
|
||||||
state of individual elements, for example.
|
state of individual elements, for example.
|
||||||
|
@ -3887,7 +3887,7 @@ providers.
|
||||||
`true` when all devices will be shown.
|
`true` when all devices will be shown.
|
||||||
<!-- trait DeviceMonitorExt::fn remove_filter -->
|
<!-- trait DeviceMonitorExt::fn remove_filter -->
|
||||||
Removes a filter from the `DeviceMonitor` using the id that was returned
|
Removes a filter from the `DeviceMonitor` using the id that was returned
|
||||||
by `DeviceMonitorExt::add_filter`.
|
by `DeviceMonitor::add_filter`.
|
||||||
## `filter_id`
|
## `filter_id`
|
||||||
the id of the filter
|
the id of the filter
|
||||||
|
|
||||||
|
@ -4165,7 +4165,7 @@ For finer control, use `ElementExt::link_pads` and
|
||||||
each element by name.
|
each element by name.
|
||||||
|
|
||||||
Each element has a state (see `State`). You can get and set the state
|
Each element has a state (see `State`). You can get and set the state
|
||||||
of an element with `ElementExt::get_state` and `ElementExt::set_state`.
|
of an element with `Element::get_state` and `Element::set_state`.
|
||||||
Setting a state triggers a `StateChange`. To get a string representation
|
Setting a state triggers a `StateChange`. To get a string representation
|
||||||
of a `State`, use `Element::state_get_name`.
|
of a `State`, use `Element::state_get_name`.
|
||||||
|
|
||||||
|
@ -4298,7 +4298,7 @@ a watch id, which can be used in connection with
|
||||||
<!-- trait ElementExt::fn call_async -->
|
<!-- trait ElementExt::fn call_async -->
|
||||||
Calls `func` from another thread and passes `user_data` to it. This is to be
|
Calls `func` from another thread and passes `user_data` to it. This is to be
|
||||||
used for cases when a state change has to be performed from a streaming
|
used for cases when a state change has to be performed from a streaming
|
||||||
thread, directly via `ElementExt::set_state` or indirectly e.g. via SEEK
|
thread, directly via `Element::set_state` or indirectly e.g. via SEEK
|
||||||
events.
|
events.
|
||||||
|
|
||||||
Calling those functions directly from the streaming thread will cause
|
Calling those functions directly from the streaming thread will cause
|
||||||
|
@ -4570,7 +4570,7 @@ the start time of the element.
|
||||||
Gets the state of the element.
|
Gets the state of the element.
|
||||||
|
|
||||||
For elements that performed an ASYNC state change, as reported by
|
For elements that performed an ASYNC state change, as reported by
|
||||||
`ElementExt::set_state`, this function will block up to the
|
`Element::set_state`, this function will block up to the
|
||||||
specified timeout value for the state change to complete.
|
specified timeout value for the state change to complete.
|
||||||
If the element completes the state change or goes into
|
If the element completes the state change or goes into
|
||||||
an error, this function returns immediately with a return value of
|
an error, this function returns immediately with a return value of
|
||||||
|
@ -4672,7 +4672,7 @@ Such pads need to be released manually when unlinking.
|
||||||
If multiple links are possible, only one is established.
|
If multiple links are possible, only one is established.
|
||||||
|
|
||||||
Make sure you have added your elements to a bin or pipeline with
|
Make sure you have added your elements to a bin or pipeline with
|
||||||
`BinExt::add` before trying to link them.
|
`GstBinExt::add` before trying to link them.
|
||||||
## `dest`
|
## `dest`
|
||||||
the `Element` containing the destination pad.
|
the `Element` containing the destination pad.
|
||||||
|
|
||||||
|
@ -4687,7 +4687,7 @@ existing pads that aren't linked yet. It will request new pads if necessary.
|
||||||
If multiple links are possible, only one is established.
|
If multiple links are possible, only one is established.
|
||||||
|
|
||||||
Make sure you have added your elements to a bin or pipeline with
|
Make sure you have added your elements to a bin or pipeline with
|
||||||
`BinExt::add` before trying to link them.
|
`GstBinExt::add` before trying to link them.
|
||||||
## `dest`
|
## `dest`
|
||||||
the `Element` containing the destination pad.
|
the `Element` containing the destination pad.
|
||||||
## `filter`
|
## `filter`
|
||||||
|
@ -4700,7 +4700,7 @@ the `Caps` to filter the link,
|
||||||
<!-- trait ElementExt::fn link_many -->
|
<!-- trait ElementExt::fn link_many -->
|
||||||
Chain together a series of elements. Uses `ElementExt::link`.
|
Chain together a series of elements. Uses `ElementExt::link`.
|
||||||
Make sure you have added your elements to a bin or pipeline with
|
Make sure you have added your elements to a bin or pipeline with
|
||||||
`BinExt::add` before trying to link them.
|
`GstBinExt::add` before trying to link them.
|
||||||
## `element_2`
|
## `element_2`
|
||||||
the second `Element` in the link chain.
|
the second `Element` in the link chain.
|
||||||
|
|
||||||
|
@ -4754,7 +4754,7 @@ Calling `ElementExt::link_pads_full` with `flags` == `PadLinkCheck::Default`
|
||||||
is the same as calling `ElementExt::link_pads` and the recommended way of
|
is the same as calling `ElementExt::link_pads` and the recommended way of
|
||||||
linking pads with safety checks applied.
|
linking pads with safety checks applied.
|
||||||
|
|
||||||
This is a convenience function for `PadExt::link_full`.
|
This is a convenience function for `Pad::link_full`.
|
||||||
## `srcpadname`
|
## `srcpadname`
|
||||||
the name of the `Pad` in source element
|
the name of the `Pad` in source element
|
||||||
or `None` for any pad.
|
or `None` for any pad.
|
||||||
|
@ -4772,7 +4772,7 @@ the `PadLinkCheck` to be performed when linking pads.
|
||||||
<!-- trait ElementExt::fn lost_state -->
|
<!-- trait ElementExt::fn lost_state -->
|
||||||
Brings the element to the lost state. The current state of the
|
Brings the element to the lost state. The current state of the
|
||||||
element is copied to the pending state so that any call to
|
element is copied to the pending state so that any call to
|
||||||
`ElementExt::get_state` will return `StateChangeReturn::Async`.
|
`Element::get_state` will return `StateChangeReturn::Async`.
|
||||||
|
|
||||||
An ASYNC_START message is posted. If the element was PLAYING, it will
|
An ASYNC_START message is posted. If the element was PLAYING, it will
|
||||||
go to PAUSED. The element will be restored to its PLAYING state by
|
go to PAUSED. The element will be restored to its PLAYING state by
|
||||||
|
@ -5144,7 +5144,7 @@ the class's state change function for each.
|
||||||
This function can return `StateChangeReturn::Async`, in which case the
|
This function can return `StateChangeReturn::Async`, in which case the
|
||||||
element will perform the remainder of the state change asynchronously in
|
element will perform the remainder of the state change asynchronously in
|
||||||
another thread.
|
another thread.
|
||||||
An application can use `ElementExt::get_state` to wait for the completion
|
An application can use `Element::get_state` to wait for the completion
|
||||||
of the state change or it can wait for a `MessageType::AsyncDone` or
|
of the state change or it can wait for a `MessageType::AsyncDone` or
|
||||||
`MessageType::StateChanged` on the bus.
|
`MessageType::StateChanged` on the bus.
|
||||||
|
|
||||||
|
@ -5198,7 +5198,7 @@ a new `Pad` has been added to the element. Note that this signal will
|
||||||
usually be emitted from the context of the streaming thread. Also keep in
|
usually be emitted from the context of the streaming thread. Also keep in
|
||||||
mind that if you add new elements to the pipeline in the signal handler
|
mind that if you add new elements to the pipeline in the signal handler
|
||||||
you will need to set them to the desired target state with
|
you will need to set them to the desired target state with
|
||||||
`ElementExt::set_state` or `ElementExt::sync_state_with_parent`.
|
`Element::set_state` or `ElementExt::sync_state_with_parent`.
|
||||||
## `new_pad`
|
## `new_pad`
|
||||||
the pad that has been added
|
the pad that has been added
|
||||||
<!-- trait ElementExt::fn connect_pad_removed -->
|
<!-- trait ElementExt::fn connect_pad_removed -->
|
||||||
|
@ -7883,7 +7883,7 @@ found under the same name in the base class of `Object` which is `gobject::Objec
|
||||||
(e.g. `gobject::ObjectExt::ref` becomes `GstObjectExt::ref`).
|
(e.g. `gobject::ObjectExt::ref` becomes `GstObjectExt::ref`).
|
||||||
|
|
||||||
Since `Object` derives from `gobject::InitiallyUnowned`, it also inherits the
|
Since `Object` derives from `gobject::InitiallyUnowned`, it also inherits the
|
||||||
floating reference. Be aware that functions such as `BinExt::add` and
|
floating reference. Be aware that functions such as `GstBinExt::add` and
|
||||||
`ElementExt::add_pad` take ownership of the floating reference.
|
`ElementExt::add_pad` take ownership of the floating reference.
|
||||||
|
|
||||||
In contrast to `gobject::Object` instances, `Object` adds a name property. The functions
|
In contrast to `gobject::Object` instances, `Object` adds a name property. The functions
|
||||||
|
@ -8332,7 +8332,7 @@ dataflow on the pads.
|
||||||
`gst_pad_get_parent` will retrieve the `Element` that owns the pad.
|
`gst_pad_get_parent` will retrieve the `Element` that owns the pad.
|
||||||
|
|
||||||
After two pads are retrieved from an element by `ElementExt::get_static_pad`,
|
After two pads are retrieved from an element by `ElementExt::get_static_pad`,
|
||||||
the pads can be linked with `PadExt::link`. (For quick links,
|
the pads can be linked with `Pad::link`. (For quick links,
|
||||||
you can also use `ElementExt::link`, which will make the obvious
|
you can also use `ElementExt::link`, which will make the obvious
|
||||||
link for you if it's straightforward.). Pads can be unlinked again with
|
link for you if it's straightforward.). Pads can be unlinked again with
|
||||||
`PadExt::unlink`. `PadExt::get_peer` can be used to check what the pad is
|
`PadExt::unlink`. `PadExt::get_peer` can be used to check what the pad is
|
||||||
|
@ -8347,7 +8347,7 @@ properties of the pad and the stream.
|
||||||
To send a `Event` on a pad, use `Pad::send_event` and
|
To send a `Event` on a pad, use `Pad::send_event` and
|
||||||
`Pad::push_event`. Some events will be sticky on the pad, meaning that
|
`Pad::push_event`. Some events will be sticky on the pad, meaning that
|
||||||
after they pass on the pad they can be queried later with
|
after they pass on the pad they can be queried later with
|
||||||
`PadExt::get_sticky_event` and `PadExt::sticky_events_foreach`.
|
`PadExt::get_sticky_event` and `Pad::sticky_events_foreach`.
|
||||||
`PadExt::get_current_caps` and `PadExt::has_current_caps` are convenience
|
`PadExt::get_current_caps` and `PadExt::has_current_caps` are convenience
|
||||||
functions to query the current sticky CAPS event on a pad.
|
functions to query the current sticky CAPS event on a pad.
|
||||||
|
|
||||||
|
@ -8355,7 +8355,7 @@ GstElements will use `Pad::push` and `Pad::pull_range` to push out
|
||||||
or pull in a buffer.
|
or pull in a buffer.
|
||||||
|
|
||||||
The dataflow, events and queries that happen on a pad can be monitored with
|
The dataflow, events and queries that happen on a pad can be monitored with
|
||||||
probes that can be installed with `PadExt::add_probe`. `PadExt::is_blocked`
|
probes that can be installed with `Pad::add_probe`. `PadExt::is_blocked`
|
||||||
can be used to check if a block probe is installed on the pad.
|
can be used to check if a block probe is installed on the pad.
|
||||||
`PadExt::is_blocking` checks if the blocking probe is currently blocking the
|
`PadExt::is_blocking` checks if the blocking probe is currently blocking the
|
||||||
pad. `Pad::remove_probe` is used to remove a previously installed probe
|
pad. `Pad::remove_probe` is used to remove a previously installed probe
|
||||||
|
@ -8366,7 +8366,7 @@ offset will be applied to the running_time of all data passing over the pad.
|
||||||
`PadExt::set_offset` can be used to change the offset.
|
`PadExt::set_offset` can be used to change the offset.
|
||||||
|
|
||||||
Convenience functions exist to start, pause and stop the task on a pad with
|
Convenience functions exist to start, pause and stop the task on a pad with
|
||||||
`PadExt::start_task`, `PadExt::pause_task` and `PadExt::stop_task`
|
`Pad::start_task`, `PadExt::pause_task` and `PadExt::stop_task`
|
||||||
respectively.
|
respectively.
|
||||||
|
|
||||||
# Implements
|
# Implements
|
||||||
|
@ -8390,8 +8390,7 @@ the `PadDirection` of the pad.
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
a new `Pad`, or `None` in
|
a new `Pad`.
|
||||||
case of an error.
|
|
||||||
|
|
||||||
MT safe.
|
MT safe.
|
||||||
<!-- impl Pad::fn new_from_static_template -->
|
<!-- impl Pad::fn new_from_static_template -->
|
||||||
|
@ -8406,8 +8405,7 @@ the name of the pad
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
a new `Pad`, or `None` in
|
a new `Pad`.
|
||||||
case of an error.
|
|
||||||
<!-- impl Pad::fn new_from_template -->
|
<!-- impl Pad::fn new_from_template -->
|
||||||
Creates a new pad with the given name from the given template.
|
Creates a new pad with the given name from the given template.
|
||||||
If name is `None`, a guaranteed unique name (across all pads)
|
If name is `None`, a guaranteed unique name (across all pads)
|
||||||
|
@ -8420,8 +8418,7 @@ the name of the pad
|
||||||
|
|
||||||
# Returns
|
# Returns
|
||||||
|
|
||||||
a new `Pad`, or `None` in
|
a new `Pad`.
|
||||||
case of an error.
|
|
||||||
<!-- impl Pad::fn link_get_name -->
|
<!-- impl Pad::fn link_get_name -->
|
||||||
Gets a string representing the given pad-link return.
|
Gets a string representing the given pad-link return.
|
||||||
## `ret`
|
## `ret`
|
||||||
|
@ -8452,7 +8449,7 @@ every state that matches `mask`.
|
||||||
Probes are called in groups: First GST_PAD_PROBE_TYPE_BLOCK probes are
|
Probes are called in groups: First GST_PAD_PROBE_TYPE_BLOCK probes are
|
||||||
called, then others, then finally GST_PAD_PROBE_TYPE_IDLE. The only
|
called, then others, then finally GST_PAD_PROBE_TYPE_IDLE. The only
|
||||||
exception here are GST_PAD_PROBE_TYPE_IDLE probes that are called
|
exception here are GST_PAD_PROBE_TYPE_IDLE probes that are called
|
||||||
immediately if the pad is already idle while calling `PadExt::add_probe`.
|
immediately if the pad is already idle while calling `Pad::add_probe`.
|
||||||
In each of the groups, probes are called in the order in which they were
|
In each of the groups, probes are called in the order in which they were
|
||||||
added.
|
added.
|
||||||
## `mask`
|
## `mask`
|
||||||
|
@ -8899,7 +8896,7 @@ MT Safe.
|
||||||
<!-- trait PadExt::fn link_full -->
|
<!-- trait PadExt::fn link_full -->
|
||||||
Links the source pad and the sink pad.
|
Links the source pad and the sink pad.
|
||||||
|
|
||||||
This variant of `PadExt::link` provides a more granular control on the
|
This variant of `Pad::link` provides a more granular control on the
|
||||||
checks being done when linking. While providing some considerable speedups
|
checks being done when linking. While providing some considerable speedups
|
||||||
the caller of this method must be aware that wrong usage of those flags
|
the caller of this method must be aware that wrong usage of those flags
|
||||||
can cause severe issues. Refer to the documentation of `PadLinkCheck`
|
can cause severe issues. Refer to the documentation of `PadLinkCheck`
|
||||||
|
@ -9803,7 +9800,7 @@ the pipeline, use `GstObjectExt::unref` to free its resources including all
|
||||||
added `Element` objects (if not otherwise referenced).
|
added `Element` objects (if not otherwise referenced).
|
||||||
|
|
||||||
Elements are added and removed from the pipeline using the `Bin`
|
Elements are added and removed from the pipeline using the `Bin`
|
||||||
methods like `BinExt::add` and `BinExt::remove` (see `Bin`).
|
methods like `GstBinExt::add` and `GstBinExt::remove` (see `Bin`).
|
||||||
|
|
||||||
Before changing the state of the `Pipeline` (see `Element`) a `Bus`
|
Before changing the state of the `Pipeline` (see `Element`) a `Bus`
|
||||||
can be retrieved with `Pipeline::get_bus`. This bus can then be
|
can be retrieved with `Pipeline::get_bus`. This bus can then be
|
||||||
|
@ -9818,7 +9815,7 @@ When the `Pipeline` performs the PAUSED to PLAYING state change it will
|
||||||
select a clock for the elements. The clock selection algorithm will by
|
select a clock for the elements. The clock selection algorithm will by
|
||||||
default select a clock provided by an element that is most upstream
|
default select a clock provided by an element that is most upstream
|
||||||
(closest to the source). For live pipelines (ones that return
|
(closest to the source). For live pipelines (ones that return
|
||||||
`StateChangeReturn::NoPreroll` from the `ElementExt::set_state` call) this
|
`StateChangeReturn::NoPreroll` from the `Element::set_state` call) this
|
||||||
will select the clock provided by the live source. For normal pipelines
|
will select the clock provided by the live source. For normal pipelines
|
||||||
this will select a clock provided by the sinks (most likely the audio
|
this will select a clock provided by the sinks (most likely the audio
|
||||||
sink). If no element provides a clock, a default `SystemClock` is used.
|
sink). If no element provides a clock, a default `SystemClock` is used.
|
||||||
|
@ -9841,7 +9838,7 @@ in the PLAYING state. This default behaviour can be changed with the
|
||||||
|
|
||||||
# Implements
|
# Implements
|
||||||
|
|
||||||
[`PipelineExt`](trait.PipelineExt.html), [`BinExt`](trait.BinExt.html), [`ElementExt`](trait.ElementExt.html), [`GstObjectExt`](trait.GstObjectExt.html), [`glib::object::ObjectExt`](../glib/object/trait.ObjectExt.html), [`ChildProxyExt`](trait.ChildProxyExt.html)
|
[`PipelineExt`](trait.PipelineExt.html), [`GstBinExt`](trait.GstBinExt.html), [`ElementExt`](trait.ElementExt.html), [`GstObjectExt`](trait.GstObjectExt.html), [`glib::object::ObjectExt`](../glib/object/trait.ObjectExt.html), [`ChildProxyExt`](trait.ChildProxyExt.html)
|
||||||
<!-- trait PipelineExt -->
|
<!-- trait PipelineExt -->
|
||||||
Trait containing all `Pipeline` methods.
|
Trait containing all `Pipeline` methods.
|
||||||
|
|
||||||
|
@ -12330,7 +12327,7 @@ result stream-time
|
||||||
a 1 or -1 on success, 0 on failure.
|
a 1 or -1 on success, 0 on failure.
|
||||||
<!-- enum State -->
|
<!-- enum State -->
|
||||||
The possible states an element can be in. States can be changed using
|
The possible states an element can be in. States can be changed using
|
||||||
`ElementExt::set_state` and checked using `ElementExt::get_state`.
|
`Element::set_state` and checked using `Element::get_state`.
|
||||||
<!-- enum State::variant VoidPending -->
|
<!-- enum State::variant VoidPending -->
|
||||||
no pending state.
|
no pending state.
|
||||||
<!-- enum State::variant Null -->
|
<!-- enum State::variant Null -->
|
||||||
|
@ -12422,7 +12419,7 @@ they should make sure to go back to real 'PAUSED' state (prerolling for example)
|
||||||
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
|
||||||
`ElementExt::set_state`. Only `StateChangeReturn::Failure` is a real failure.
|
`Element::set_state`. Only `StateChangeReturn::Failure` is a real failure.
|
||||||
<!-- enum StateChangeReturn::variant Failure -->
|
<!-- enum StateChangeReturn::variant Failure -->
|
||||||
the state change failed
|
the state change failed
|
||||||
<!-- enum StateChangeReturn::variant Success -->
|
<!-- enum StateChangeReturn::variant Success -->
|
||||||
|
@ -13595,6 +13592,18 @@ clock.
|
||||||
MT safe.
|
MT safe.
|
||||||
## `new_clock`
|
## `new_clock`
|
||||||
a `Clock`
|
a `Clock`
|
||||||
|
<!-- enum TagFlag -->
|
||||||
|
Extra tag flags used when registering tags.
|
||||||
|
<!-- enum TagFlag::variant Undefined -->
|
||||||
|
undefined flag
|
||||||
|
<!-- enum TagFlag::variant Meta -->
|
||||||
|
tag is meta data
|
||||||
|
<!-- enum TagFlag::variant Encoded -->
|
||||||
|
tag is encoded
|
||||||
|
<!-- enum TagFlag::variant Decoded -->
|
||||||
|
tag is decoded
|
||||||
|
<!-- enum TagFlag::variant Count -->
|
||||||
|
number of tag flags
|
||||||
<!-- struct TagList -->
|
<!-- struct TagList -->
|
||||||
List of tags and values used to describe media metadata.
|
List of tags and values used to describe media metadata.
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue