Regenerate everything with latest GIR

This commit is contained in:
Sebastian Dröge 2017-08-30 14:45:25 +03:00
parent f0935d7e1e
commit 52c013b834
60 changed files with 539 additions and 192 deletions

View file

@ -394,34 +394,28 @@ in the stream.
# Implements # Implements
[`PlayerAudioInfoExt`](trait.PlayerAudioInfoExt.html), [`PlayerStreamInfoExt`](trait.PlayerStreamInfoExt.html), [`ObjectExt`](trait.ObjectExt.html) [`PlayerStreamInfoExt`](trait.PlayerStreamInfoExt.html), [`ObjectExt`](trait.ObjectExt.html)
<!-- trait PlayerAudioInfoExt --> <!-- impl PlayerAudioInfo::fn get_bitrate -->
Trait containing all `PlayerAudioInfo` methods.
# Implementors
[`PlayerAudioInfo`](struct.PlayerAudioInfo.html)
<!-- trait PlayerAudioInfoExt::fn get_bitrate -->
# Returns # Returns
the audio bitrate in `PlayerAudioInfo`. the audio bitrate in `PlayerAudioInfo`.
<!-- trait PlayerAudioInfoExt::fn get_channels --> <!-- impl PlayerAudioInfo::fn get_channels -->
# Returns # Returns
the number of audio channels in `PlayerAudioInfo`. the number of audio channels in `PlayerAudioInfo`.
<!-- trait PlayerAudioInfoExt::fn get_language --> <!-- impl PlayerAudioInfo::fn get_language -->
# Returns # Returns
the language of the stream, or NULL if unknown. the language of the stream, or NULL if unknown.
<!-- trait PlayerAudioInfoExt::fn get_max_bitrate --> <!-- impl PlayerAudioInfo::fn get_max_bitrate -->
# Returns # Returns
the audio maximum bitrate in `PlayerAudioInfo`. the audio maximum bitrate in `PlayerAudioInfo`.
<!-- trait PlayerAudioInfoExt::fn get_sample_rate --> <!-- impl PlayerAudioInfo::fn get_sample_rate -->
# Returns # Returns
@ -444,13 +438,7 @@ generic error.
# Implements # Implements
[`PlayerGMainContextSignalDispatcherExt`](trait.PlayerGMainContextSignalDispatcherExt.html), [`ObjectExt`](trait.ObjectExt.html), [`PlayerSignalDispatcherExt`](trait.PlayerSignalDispatcherExt.html) [`ObjectExt`](trait.ObjectExt.html), [`PlayerSignalDispatcherExt`](trait.PlayerSignalDispatcherExt.html)
<!-- trait PlayerGMainContextSignalDispatcherExt -->
Trait containing all `PlayerGMainContextSignalDispatcher` methods.
# Implementors
[`PlayerGMainContextSignalDispatcher`](struct.PlayerGMainContextSignalDispatcher.html)
<!-- impl PlayerGMainContextSignalDispatcher::fn new --> <!-- impl PlayerGMainContextSignalDispatcher::fn new -->
Creates a new GstPlayerSignalDispatcher that uses `application_context`, Creates a new GstPlayerSignalDispatcher that uses `application_context`,
or the thread default one if `None` is used. See `gst_player_new_full`. or the thread default one if `None` is used. See `gst_player_new_full`.
@ -465,95 +453,89 @@ Structure containing the media information of a URI.
# Implements # Implements
[`PlayerMediaInfoExt`](trait.PlayerMediaInfoExt.html), [`ObjectExt`](trait.ObjectExt.html) [`ObjectExt`](trait.ObjectExt.html)
<!-- trait PlayerMediaInfoExt --> <!-- impl PlayerMediaInfo::fn get_audio_streams -->
Trait containing all `PlayerMediaInfo` methods.
# Implementors
[`PlayerMediaInfo`](struct.PlayerMediaInfo.html)
<!-- trait PlayerMediaInfoExt::fn get_audio_streams -->
# Returns # Returns
A `glib::List` of A `glib::List` of
matching `PlayerAudioInfo`. matching `PlayerAudioInfo`.
<!-- trait PlayerMediaInfoExt::fn get_container_format --> <!-- impl PlayerMediaInfo::fn get_container_format -->
# Returns # Returns
the container format. the container format.
<!-- trait PlayerMediaInfoExt::fn get_duration --> <!-- impl PlayerMediaInfo::fn get_duration -->
# Returns # Returns
duration of the media. duration of the media.
<!-- trait PlayerMediaInfoExt::fn get_image_sample --> <!-- impl PlayerMediaInfo::fn get_image_sample -->
Function to get the image (or preview-image) stored in taglist. Function to get the image (or preview-image) stored in taglist.
Application can use gst_sample_*`_` API's to get caps, buffer etc. Application can use gst_sample_*`_` API's to get caps, buffer etc.
# Returns # Returns
GstSample or NULL. GstSample or NULL.
<!-- trait PlayerMediaInfoExt::fn get_number_of_audio_streams --> <!-- impl PlayerMediaInfo::fn get_number_of_audio_streams -->
# Returns # Returns
number of audio streams. number of audio streams.
<!-- trait PlayerMediaInfoExt::fn get_number_of_streams --> <!-- impl PlayerMediaInfo::fn get_number_of_streams -->
# Returns # Returns
number of total streams. number of total streams.
<!-- trait PlayerMediaInfoExt::fn get_number_of_subtitle_streams --> <!-- impl PlayerMediaInfo::fn get_number_of_subtitle_streams -->
# Returns # Returns
number of subtitle streams. number of subtitle streams.
<!-- trait PlayerMediaInfoExt::fn get_number_of_video_streams --> <!-- impl PlayerMediaInfo::fn get_number_of_video_streams -->
# Returns # Returns
number of video streams. number of video streams.
<!-- trait PlayerMediaInfoExt::fn get_stream_list --> <!-- impl PlayerMediaInfo::fn get_stream_list -->
# Returns # Returns
A `glib::List` of A `glib::List` of
matching `PlayerStreamInfo`. matching `PlayerStreamInfo`.
<!-- trait PlayerMediaInfoExt::fn get_subtitle_streams --> <!-- impl PlayerMediaInfo::fn get_subtitle_streams -->
# Returns # Returns
A `glib::List` of A `glib::List` of
matching `PlayerSubtitleInfo`. matching `PlayerSubtitleInfo`.
<!-- trait PlayerMediaInfoExt::fn get_tags --> <!-- impl PlayerMediaInfo::fn get_tags -->
# Returns # Returns
the tags contained in media info. the tags contained in media info.
<!-- trait PlayerMediaInfoExt::fn get_title --> <!-- impl PlayerMediaInfo::fn get_title -->
# Returns # Returns
the media title. the media title.
<!-- trait PlayerMediaInfoExt::fn get_uri --> <!-- impl PlayerMediaInfo::fn get_uri -->
# Returns # Returns
the URI associated with `PlayerMediaInfo`. the URI associated with `PlayerMediaInfo`.
<!-- trait PlayerMediaInfoExt::fn get_video_streams --> <!-- impl PlayerMediaInfo::fn get_video_streams -->
# Returns # Returns
A `glib::List` of A `glib::List` of
matching `PlayerVideoInfo`. matching `PlayerVideoInfo`.
<!-- trait PlayerMediaInfoExt::fn is_live --> <!-- impl PlayerMediaInfo::fn is_live -->
# Returns # Returns
`true` if the media is live. `true` if the media is live.
<!-- trait PlayerMediaInfoExt::fn is_seekable --> <!-- impl PlayerMediaInfo::fn is_seekable -->
# Returns # Returns
@ -629,14 +611,8 @@ the tags contained in this stream.
# Implements # Implements
[`PlayerSubtitleInfoExt`](trait.PlayerSubtitleInfoExt.html), [`PlayerStreamInfoExt`](trait.PlayerStreamInfoExt.html), [`ObjectExt`](trait.ObjectExt.html) [`PlayerStreamInfoExt`](trait.PlayerStreamInfoExt.html), [`ObjectExt`](trait.ObjectExt.html)
<!-- trait PlayerSubtitleInfoExt --> <!-- impl PlayerSubtitleInfo::fn get_language -->
Trait containing all `PlayerSubtitleInfo` methods.
# Implementors
[`PlayerSubtitleInfo`](struct.PlayerSubtitleInfo.html)
<!-- trait PlayerSubtitleInfoExt::fn get_language -->
# Returns # Returns
@ -646,40 +622,34 @@ the language of the stream, or NULL if unknown.
# Implements # Implements
[`PlayerVideoInfoExt`](trait.PlayerVideoInfoExt.html), [`PlayerStreamInfoExt`](trait.PlayerStreamInfoExt.html), [`ObjectExt`](trait.ObjectExt.html) [`PlayerStreamInfoExt`](trait.PlayerStreamInfoExt.html), [`ObjectExt`](trait.ObjectExt.html)
<!-- trait PlayerVideoInfoExt --> <!-- impl PlayerVideoInfo::fn get_bitrate -->
Trait containing all `PlayerVideoInfo` methods.
# Implementors
[`PlayerVideoInfo`](struct.PlayerVideoInfo.html)
<!-- trait PlayerVideoInfoExt::fn get_bitrate -->
# Returns # Returns
the current bitrate of video in `PlayerVideoInfo`. the current bitrate of video in `PlayerVideoInfo`.
<!-- trait PlayerVideoInfoExt::fn get_framerate --> <!-- impl PlayerVideoInfo::fn get_framerate -->
## `fps_n` ## `fps_n`
Numerator of frame rate Numerator of frame rate
## `fps_d` ## `fps_d`
Denominator of frame rate Denominator of frame rate
<!-- trait PlayerVideoInfoExt::fn get_height --> <!-- impl PlayerVideoInfo::fn get_height -->
# Returns # Returns
the height of video in `PlayerVideoInfo`. the height of video in `PlayerVideoInfo`.
<!-- trait PlayerVideoInfoExt::fn get_max_bitrate --> <!-- impl PlayerVideoInfo::fn get_max_bitrate -->
# Returns # Returns
the maximum bitrate of video in `PlayerVideoInfo`. the maximum bitrate of video in `PlayerVideoInfo`.
<!-- trait PlayerVideoInfoExt::fn get_pixel_aspect_ratio --> <!-- impl PlayerVideoInfo::fn get_pixel_aspect_ratio -->
Returns the pixel aspect ratio in `par_n` and `par_d` Returns the pixel aspect ratio in `par_n` and `par_d`
## `par_n` ## `par_n`
numerator numerator
## `par_d` ## `par_d`
denominator denominator
<!-- trait PlayerVideoInfoExt::fn get_width --> <!-- impl PlayerVideoInfo::fn get_width -->
# Returns # Returns
@ -689,13 +659,7 @@ the width of video in `PlayerVideoInfo`.
# Implements # Implements
[`PlayerVideoOverlayVideoRendererExt`](trait.PlayerVideoOverlayVideoRendererExt.html), [`ObjectExt`](trait.ObjectExt.html), [`PlayerVideoRendererExt`](trait.PlayerVideoRendererExt.html) [`ObjectExt`](trait.ObjectExt.html), [`PlayerVideoRendererExt`](trait.PlayerVideoRendererExt.html)
<!-- trait PlayerVideoOverlayVideoRendererExt -->
Trait containing all `PlayerVideoOverlayVideoRenderer` methods.
# Implementors
[`PlayerVideoOverlayVideoRenderer`](struct.PlayerVideoOverlayVideoRenderer.html)
<!-- impl PlayerVideoOverlayVideoRenderer::fn new --> <!-- impl PlayerVideoOverlayVideoRenderer::fn new -->
## `window_handle` ## `window_handle`
Window handle to use or `None` Window handle to use or `None`
@ -710,11 +674,11 @@ the custom video_sink element to be set for the video renderer
Since 1.12 Since 1.12
<!-- trait PlayerVideoOverlayVideoRendererExt::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.
<!-- trait PlayerVideoOverlayVideoRendererExt::fn get_render_rectangle --> <!-- impl PlayerVideoOverlayVideoRenderer::fn get_render_rectangle -->
Return the currently configured render rectangle. See `PlayerVideoOverlayVideoRendererExt::set_render_rectangle` Return the currently configured render rectangle. See `PlayerVideoOverlayVideoRenderer::set_render_rectangle`
for details. for details.
## `x` ## `x`
the horizontal offset of the render area inside the window the horizontal offset of the render area inside the window
@ -724,19 +688,19 @@ the vertical offset of the render area inside the window
the width of the render area inside the window the width of the render area inside the window
## `height` ## `height`
the height of the render area inside the window the height of the render area inside the window
<!-- trait PlayerVideoOverlayVideoRendererExt::fn get_window_handle --> <!-- impl PlayerVideoOverlayVideoRenderer::fn get_window_handle -->
# Returns # Returns
The currently set, platform specific window The currently set, platform specific window
handle handle
<!-- trait PlayerVideoOverlayVideoRendererExt::fn set_render_rectangle --> <!-- impl PlayerVideoOverlayVideoRenderer::fn set_render_rectangle -->
Configure a subregion as a video target within the window set by Configure a subregion as a video target within the window set by
`PlayerVideoOverlayVideoRendererExt::set_window_handle`. If this is not `PlayerVideoOverlayVideoRenderer::set_window_handle`. If this is not
used or not supported the video will fill the area of the window set as the used or not supported the video will fill the area of the window set as the
overlay to 100%. By specifying the rectangle, the video can be overlaid to overlay to 100%. By specifying the rectangle, the video can be overlaid to
a specific region of that window only. After setting the new rectangle one a specific region of that window only. After setting the new rectangle one
should call `PlayerVideoOverlayVideoRendererExt::expose` to force a should call `PlayerVideoOverlayVideoRenderer::expose` to force a
redraw. To unset the region pass -1 for the `width` and `height` parameters. redraw. To unset the region pass -1 for the `width` and `height` parameters.
This method is needed for non fullscreen video overlay in UI toolkits that This method is needed for non fullscreen video overlay in UI toolkits that
@ -749,7 +713,7 @@ the vertical offset of the render area inside the window
the width of the render area inside the window the width of the render area inside the window
## `height` ## `height`
the height of the render area inside the window the height of the render area inside the window
<!-- trait PlayerVideoOverlayVideoRendererExt::fn set_window_handle --> <!-- impl PlayerVideoOverlayVideoRenderer::fn set_window_handle -->
Sets the platform specific window handle into which the video Sets the platform specific window handle into which the video
should be rendered should be rendered
## `window_handle` ## `window_handle`

View file

@ -3061,6 +3061,56 @@ a newly allocated string formatted according
<!-- impl DateTime::fn unref --> <!-- impl DateTime::fn unref -->
Atomically decrements the reference count of `self` by one. When the Atomically decrements the reference count of `self` by one. When the
reference count reaches zero, the structure is freed. reference count reaches zero, the structure is freed.
<!-- enum DebugLevel -->
The level defines the importance of a debugging message. The more important a
message is, the greater the probability that the debugging system outputs it.
<!-- enum DebugLevel::variant None -->
No debugging level specified or desired. Used to deactivate
debugging output.
<!-- enum DebugLevel::variant Error -->
Error messages are to be used only when an error occurred
that stops the application from keeping working correctly.
An examples is gst_element_error, which outputs a message with this priority.
It does not mean that the application is terminating as with g_error.
<!-- enum DebugLevel::variant Warning -->
Warning messages are to inform about abnormal behaviour
that could lead to problems or weird behaviour later on. An example of this
would be clocking issues ("your computer is pretty slow") or broken input
data ("Can't synchronize to stream.")
<!-- enum DebugLevel::variant Fixme -->
Fixme messages are messages that indicate that something
in the executed code path is not fully implemented or handled yet. Note
that this does not replace proper error handling in any way, the purpose
of this message is to make it easier to spot incomplete/unfinished pieces
of code when reading the debug log.
<!-- enum DebugLevel::variant Info -->
Informational messages should be used to keep the developer
updated about what is happening.
Examples where this should be used are when a typefind function has
successfully determined the type of the stream or when an mp3 plugin detects
the format to be used. ("This file has mono sound.")
<!-- enum DebugLevel::variant Debug -->
Debugging messages should be used when something common
happens that is not the expected default behavior, or something that's
useful to know but doesn't happen all the time (ie. per loop iteration or
buffer processed or event handled).
An example would be notifications about state changes or receiving/sending
of events.
<!-- enum DebugLevel::variant Log -->
Log messages are messages that are very common but might be
useful to know. As a rule of thumb a pipeline that is running as expected
should never output anything else but LOG messages whilst processing data.
Use this log level to log recurring information in chain functions and
loop functions, for example.
<!-- enum DebugLevel::variant Trace -->
Tracing-related messages.
Examples for this are referencing/dereferencing of objects.
<!-- enum DebugLevel::variant Memdump -->
memory dump messages are used to log (small) chunks of
data as memory dumps in the log. They will be displayed as hexdump with
ASCII characters.
<!-- enum DebugLevel::variant Count -->
The number of defined debugging levels.
<!-- struct Device --> <!-- struct Device -->
`Device` are objects representing a device, they contain `Device` are objects representing a device, they contain
relevant metadata about the device, such as its class and the `Caps` relevant metadata about the device, such as its class and the `Caps`
@ -3423,19 +3473,13 @@ GstDeviceProviderfactory can be added to a `Plugin` as it is also a
`PluginFeature`. `PluginFeature`.
Use the `DeviceProviderFactory::find` and Use the `DeviceProviderFactory::find` and
`DeviceProviderFactoryExt::get` functions to create device `DeviceProviderFactory::get` functions to create device
provider instances or use `DeviceProviderFactory::get_by_name` as a provider instances or use `DeviceProviderFactory::get_by_name` as a
convenient shortcut. convenient shortcut.
# Implements # Implements
[`DeviceProviderFactoryExt`](trait.DeviceProviderFactoryExt.html), [`ObjectExt`](trait.ObjectExt.html), [`ObjectExt`](trait.ObjectExt.html) [`ObjectExt`](trait.ObjectExt.html), [`ObjectExt`](trait.ObjectExt.html)
<!-- trait DeviceProviderFactoryExt -->
Trait containing all `DeviceProviderFactory` methods.
# Implementors
[`DeviceProviderFactory`](struct.DeviceProviderFactory.html)
<!-- impl DeviceProviderFactory::fn find --> <!-- impl DeviceProviderFactory::fn find -->
Search for an device provider factory of the given name. Refs the returned Search for an device provider factory of the given name. Refs the returned
device provider factory; caller is responsible for unreffing. device provider factory; caller is responsible for unreffing.
@ -3467,7 +3511,7 @@ Minimum rank
a `glib::List` of `DeviceProviderFactory` device providers. Use a `glib::List` of `DeviceProviderFactory` device providers. Use
`PluginFeature::list_free` after usage. `PluginFeature::list_free` after usage.
<!-- trait DeviceProviderFactoryExt::fn get --> <!-- impl DeviceProviderFactory::fn get -->
Returns the device provider of the type defined by the given device Returns the device provider of the type defined by the given device
providerfactory. providerfactory.
@ -3475,7 +3519,7 @@ providerfactory.
the `DeviceProvider` or `None` the `DeviceProvider` or `None`
if the device provider couldn't be created if the device provider couldn't be created
<!-- trait DeviceProviderFactoryExt::fn get_device_provider_type --> <!-- impl DeviceProviderFactory::fn get_device_provider_type -->
Get the `glib::Type` for device providers managed by this factory. The type can Get the `glib::Type` for device providers managed by this factory. The type can
only be retrieved if the device provider factory is loaded, which can be only be retrieved if the device provider factory is loaded, which can be
assured with `PluginFeature::load`. assured with `PluginFeature::load`.
@ -3483,7 +3527,7 @@ assured with `PluginFeature::load`.
# Returns # Returns
the `glib::Type` for device providers managed by this factory. the `glib::Type` for device providers managed by this factory.
<!-- trait DeviceProviderFactoryExt::fn get_metadata --> <!-- impl DeviceProviderFactory::fn get_metadata -->
Get the metadata on `self` with `key`. Get the metadata on `self` with `key`.
## `key` ## `key`
a key a key
@ -3492,7 +3536,7 @@ a key
the metadata with `key` on `self` or `None` the metadata with `key` on `self` or `None`
when there was no metadata with the given `key`. when there was no metadata with the given `key`.
<!-- trait DeviceProviderFactoryExt::fn get_metadata_keys --> <!-- impl DeviceProviderFactory::fn get_metadata_keys -->
Get the available keys for the metadata on `self`. Get the available keys for the metadata on `self`.
# Returns # Returns
@ -3500,7 +3544,7 @@ Get the available keys for the metadata on `self`.
a `None`-terminated array of key strings, or `None` when there is no a `None`-terminated array of key strings, or `None` when there is no
metadata. Free with `g_strfreev` when no longer needed. metadata. Free with `g_strfreev` when no longer needed.
<!-- trait DeviceProviderFactoryExt::fn has_classes --> <!-- impl DeviceProviderFactory::fn has_classes -->
Check if `self` matches all of the given `classes` Check if `self` matches all of the given `classes`
## `classes` ## `classes`
a "/" separate list of classes to match, only match a "/" separate list of classes to match, only match
@ -3509,7 +3553,7 @@ a "/" separate list of classes to match, only match
# Returns # Returns
`true` if `self` matches or if `classes` is `None`. `true` if `self` matches or if `classes` is `None`.
<!-- trait DeviceProviderFactoryExt::fn has_classesv --> <!-- impl DeviceProviderFactory::fn has_classesv -->
Check if `self` matches all of the given classes Check if `self` matches all of the given classes
## `classes` ## `classes`
a `None` terminated array a `None` terminated array
@ -9079,7 +9123,7 @@ element plugin as well as identifying pads on elements that are not yet
created (request or sometimes pads). created (request or sometimes pads).
Pad and PadTemplates have `Caps` attached to it to describe the media type Pad and PadTemplates have `Caps` attached to it to describe the media type
they are capable of dealing with. `PadTemplateExt::get_caps` or they are capable of dealing with. `PadTemplate::get_caps` or
GST_PAD_TEMPLATE_CAPS() are used to get the caps of a padtemplate. It's not GST_PAD_TEMPLATE_CAPS() are used to get the caps of a padtemplate. It's not
possible to modify the caps of a padtemplate after creation. possible to modify the caps of a padtemplate after creation.
@ -9138,13 +9182,7 @@ element class, this is usually done in the class_init of the class:
# Implements # Implements
[`PadTemplateExt`](trait.PadTemplateExt.html), [`ObjectExt`](trait.ObjectExt.html), [`ObjectExt`](trait.ObjectExt.html) [`ObjectExt`](trait.ObjectExt.html), [`ObjectExt`](trait.ObjectExt.html)
<!-- trait PadTemplateExt -->
Trait containing all `PadTemplate` methods.
# Implementors
[`PadTemplate`](struct.PadTemplate.html)
<!-- impl PadTemplate::fn new --> <!-- impl PadTemplate::fn new -->
Creates a new pad template with a name according to the given template Creates a new pad template with a name according to the given template
and with the given arguments. and with the given arguments.
@ -9160,17 +9198,47 @@ a `Caps` set for the template.
# Returns # Returns
a new `PadTemplate`. a new `PadTemplate`.
<!-- trait PadTemplateExt::fn get_caps --> <!-- impl PadTemplate::fn get_caps -->
Gets the capabilities of the pad template. Gets the capabilities of the pad template.
# Returns # Returns
the `Caps` of the pad template. the `Caps` of the pad template.
Unref after usage. Unref after usage.
<!-- trait PadTemplateExt::fn pad_created --> <!-- impl PadTemplate::fn pad_created -->
Emit the pad-created signal for this template when created by this pad. Emit the pad-created signal for this template when created by this pad.
## `pad` ## `pad`
the `Pad` that created it the `Pad` that created it
<!-- struct ParseContext -->
Opaque structure.
<!-- impl ParseContext::fn new -->
Allocates a parse context for use with `gst_parse_launch_full` or
`gst_parse_launchv_full`.
Free-function: gst_parse_context_free
# Returns
a newly-allocated parse context. Free with
`ParseContext::free` when no longer needed.
<!-- impl ParseContext::fn copy -->
Copies the `self`.
# Returns
A copied `ParseContext`
<!-- impl ParseContext::fn free -->
Frees a parse context previously allocated with `ParseContext::new`.
<!-- impl ParseContext::fn get_missing_elements -->
Retrieve missing elements from a previous run of `gst_parse_launch_full`
or `gst_parse_launchv_full`. Will only return results if an error code
of `ParseError::NoSuchElement` was returned.
# Returns
a
`None`-terminated array of element factory name strings of missing
elements. Free with `g_strfreev` when no longer needed.
<!-- enum ParseError --> <!-- enum ParseError -->
The different parsing errors that can occur. The different parsing errors that can occur.
<!-- enum ParseError::variant Syntax --> <!-- enum ParseError::variant Syntax -->
@ -11211,15 +11279,7 @@ Feature: `v1_10`
# Implements # Implements
[`StreamExt`](trait.StreamExt.html), [`ObjectExt`](trait.ObjectExt.html), [`ObjectExt`](trait.ObjectExt.html) [`ObjectExt`](trait.ObjectExt.html), [`ObjectExt`](trait.ObjectExt.html)
<!-- trait StreamExt -->
Trait containing all `Stream` methods.
Feature: `v1_10`
# Implementors
[`Stream`](struct.Stream.html)
<!-- impl Stream::fn new --> <!-- impl Stream::fn new -->
Create a new `Stream` for the given `stream_id`, `caps`, `type_` Create a new `Stream` for the given `stream_id`, `caps`, `type_`
and `flags` and `flags`
@ -11239,7 +11299,7 @@ the `StreamFlags` of the stream
# Returns # Returns
The new `Stream` The new `Stream`
<!-- trait StreamExt::fn get_caps --> <!-- impl Stream::fn get_caps -->
Retrieve the caps for `self`, if any Retrieve the caps for `self`, if any
Feature: `v1_10` Feature: `v1_10`
@ -11248,7 +11308,7 @@ Feature: `v1_10`
# Returns # Returns
The `Caps` for `self` The `Caps` for `self`
<!-- trait StreamExt::fn get_stream_flags --> <!-- impl Stream::fn get_stream_flags -->
Retrieve the current stream flags for `self` Retrieve the current stream flags for `self`
Feature: `v1_10` Feature: `v1_10`
@ -11257,7 +11317,7 @@ Feature: `v1_10`
# Returns # Returns
The `StreamFlags` for `self` The `StreamFlags` for `self`
<!-- trait StreamExt::fn get_stream_id --> <!-- impl Stream::fn get_stream_id -->
Returns the stream ID of `self`. Returns the stream ID of `self`.
Feature: `v1_10` Feature: `v1_10`
@ -11267,7 +11327,7 @@ Feature: `v1_10`
the stream ID of `self`. Only valid the stream ID of `self`. Only valid
during the lifetime of `self`. during the lifetime of `self`.
<!-- trait StreamExt::fn get_stream_type --> <!-- impl Stream::fn get_stream_type -->
Retrieve the stream type for `self` Retrieve the stream type for `self`
Feature: `v1_10` Feature: `v1_10`
@ -11276,7 +11336,7 @@ Feature: `v1_10`
# Returns # Returns
The `StreamType` for `self` The `StreamType` for `self`
<!-- trait StreamExt::fn get_tags --> <!-- impl Stream::fn get_tags -->
Retrieve the tags for `self`, if any Retrieve the tags for `self`, if any
Feature: `v1_10` Feature: `v1_10`
@ -11285,28 +11345,28 @@ Feature: `v1_10`
# Returns # Returns
The `TagList` for `self` The `TagList` for `self`
<!-- trait StreamExt::fn set_caps --> <!-- impl Stream::fn set_caps -->
Set the caps for the `Stream` Set the caps for the `Stream`
Feature: `v1_10` Feature: `v1_10`
## `caps` ## `caps`
a `Caps` a `Caps`
<!-- trait StreamExt::fn set_stream_flags --> <!-- impl Stream::fn set_stream_flags -->
Set the `flags` for the `self`. Set the `flags` for the `self`.
Feature: `v1_10` Feature: `v1_10`
## `flags` ## `flags`
the flags to set on `self` the flags to set on `self`
<!-- trait StreamExt::fn set_stream_type --> <!-- impl Stream::fn set_stream_type -->
Set the stream type of `self` Set the stream type of `self`
Feature: `v1_10` Feature: `v1_10`
## `stream_type` ## `stream_type`
the type to set on `self` the type to set on `self`
<!-- trait StreamExt::fn set_tags --> <!-- impl Stream::fn set_tags -->
Set the tags for the `Stream` Set the tags for the `Stream`
Feature: `v1_10` Feature: `v1_10`
@ -11318,7 +11378,7 @@ A collection of `Stream` that are available.
A `StreamCollection` will be provided by elements that can make those A `StreamCollection` will be provided by elements that can make those
streams available. Applications can use the collection to show the user streams available. Applications can use the collection to show the user
what streams are available by using `StreamCollectionExt::get_stream`() what streams are available by using `StreamCollection::get_stream`()
Once posted, a `StreamCollection` is immutable. Updates are made by sending Once posted, a `StreamCollection` is immutable. Updates are made by sending
a new `StreamCollection` message, which may or may not share some of a new `StreamCollection` message, which may or may not share some of
@ -11335,15 +11395,7 @@ Feature: `v1_10`
# Implements # Implements
[`StreamCollectionExt`](trait.StreamCollectionExt.html), [`ObjectExt`](trait.ObjectExt.html), [`ObjectExt`](trait.ObjectExt.html) [`ObjectExt`](trait.ObjectExt.html), [`ObjectExt`](trait.ObjectExt.html)
<!-- trait StreamCollectionExt -->
Trait containing all `StreamCollection` methods.
Feature: `v1_10`
# Implementors
[`StreamCollection`](struct.StreamCollection.html)
<!-- impl StreamCollection::fn new --> <!-- impl StreamCollection::fn new -->
Create a new `StreamCollection`. Create a new `StreamCollection`.
@ -11355,7 +11407,7 @@ The stream id of the parent stream
# Returns # Returns
The new `StreamCollection`. The new `StreamCollection`.
<!-- trait StreamCollectionExt::fn add_stream --> <!-- impl StreamCollection::fn add_stream -->
Add the given `stream` to the `self`. Add the given `stream` to the `self`.
Feature: `v1_10` Feature: `v1_10`
@ -11366,7 +11418,7 @@ the `Stream` to add
# Returns # Returns
`true` if the `stream` was properly added, else `false` `true` if the `stream` was properly added, else `false`
<!-- trait StreamCollectionExt::fn get_size --> <!-- impl StreamCollection::fn get_size -->
Get the number of streams this collection contains Get the number of streams this collection contains
Feature: `v1_10` Feature: `v1_10`
@ -11375,7 +11427,7 @@ Feature: `v1_10`
# Returns # Returns
The number of streams that `self` contains The number of streams that `self` contains
<!-- trait StreamCollectionExt::fn get_stream --> <!-- impl StreamCollection::fn get_stream -->
Retrieve the `Stream` with index `index` from the collection. Retrieve the `Stream` with index `index` from the collection.
The caller should not modify the returned `Stream` The caller should not modify the returned `Stream`
@ -11388,7 +11440,7 @@ Index of the stream to retrieve
# Returns # Returns
A `Stream` A `Stream`
<!-- trait StreamCollectionExt::fn get_upstream_id --> <!-- impl StreamCollection::fn get_upstream_id -->
Returns the upstream id of the `self`. Returns the upstream id of the `self`.
Feature: `v1_10` Feature: `v1_10`

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ffi; use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use AppStreamType; use AppStreamType;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ffi; use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ffi; use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
mod app_sink; mod app_sink;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ffi; use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ffi; use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
mod stream_volume; mod stream_volume;

View file

@ -1,13 +1,18 @@
// This file was generated by gir (cf27827) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use StreamVolumeFormat; use StreamVolumeFormat;
use ffi; use ffi;
use glib;
use glib::object::Downcast;
use glib::object::IsA; use glib::object::IsA;
use glib::signal::connect;
use glib::translate::*; use glib::translate::*;
use glib_ffi; use glib_ffi;
use gobject_ffi; use gobject_ffi;
use std::boxed::Box as Box_;
use std::mem; use std::mem;
use std::mem::transmute;
use std::ptr; use std::ptr;
glib_wrapper! { glib_wrapper! {
@ -38,9 +43,13 @@ pub trait StreamVolumeExt {
fn set_mute(&self, mute: bool); fn set_mute(&self, mute: bool);
fn set_volume(&self, format: StreamVolumeFormat, val: f64); fn set_volume(&self, format: StreamVolumeFormat, val: f64);
fn connect_property_mute_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> u64;
fn connect_property_volume_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> u64;
} }
impl<O: IsA<StreamVolume>> StreamVolumeExt for O { impl<O: IsA<StreamVolume> + IsA<glib::object::Object>> StreamVolumeExt for O {
fn get_mute(&self) -> bool { fn get_mute(&self) -> bool {
unsafe { unsafe {
from_glib(ffi::gst_stream_volume_get_mute(self.to_glib_none().0)) from_glib(ffi::gst_stream_volume_get_mute(self.to_glib_none().0))
@ -64,4 +73,34 @@ impl<O: IsA<StreamVolume>> StreamVolumeExt for O {
ffi::gst_stream_volume_set_volume(self.to_glib_none().0, format.to_glib(), val); ffi::gst_stream_volume_set_volume(self.to_glib_none().0, format.to_glib(), val);
} }
} }
fn connect_property_mute_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&Self) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "notify::mute",
transmute(notify_mute_trampoline::<Self> as usize), Box_::into_raw(f) as *mut _)
}
}
fn connect_property_volume_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&Self) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "notify::volume",
transmute(notify_volume_trampoline::<Self> as usize), Box_::into_raw(f) as *mut _)
}
}
}
unsafe extern "C" fn notify_mute_trampoline<P>(this: *mut ffi::GstStreamVolume, _param_spec: glib_ffi::gpointer, f: glib_ffi::gpointer)
where P: IsA<StreamVolume> {
callback_guard!();
let f: &&(Fn(&P) + Send + Sync + 'static) = transmute(f);
f(&StreamVolume::from_glib_none(this).downcast_unchecked())
}
unsafe extern "C" fn notify_volume_trampoline<P>(this: *mut ffi::GstStreamVolume, _param_spec: glib_ffi::gpointer, f: glib_ffi::gpointer)
where P: IsA<StreamVolume> {
callback_guard!();
let f: &&(Fn(&P) + Send + Sync + 'static) = transmute(f);
f(&StreamVolume::from_glib_none(this).downcast_unchecked())
} }

View file

@ -19,6 +19,12 @@ extern crate gstreamer as gst;
#[macro_use] #[macro_use]
extern crate glib; extern crate glib;
macro_rules! callback_guard {
() => (
let _guard = ::glib::CallbackGuard::new();
)
}
macro_rules! assert_initialized_main_thread { macro_rules! assert_initialized_main_thread {
() => ( () => (
if unsafe {::gst_ffi::gst_is_initialized()} != ::glib_ffi::GTRUE { if unsafe {::gst_ffi::gst_is_initialized()} != ::glib_ffi::GTRUE {

View file

@ -1,4 +1,4 @@
// This file was generated by gir (651da6e) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ffi; use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (651da6e) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ffi; use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (651da6e) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
mod player; mod player;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (651da6e) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use Error; use Error;
@ -488,6 +488,142 @@ impl Player {
transmute(warning_trampoline as usize), Box_::into_raw(f) as *mut _) transmute(warning_trampoline as usize), Box_::into_raw(f) as *mut _)
} }
} }
pub fn connect_property_audio_video_offset_notify<F: Fn(&Player) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&Player) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "notify::audio-video-offset",
transmute(notify_audio_video_offset_trampoline as usize), Box_::into_raw(f) as *mut _)
}
}
pub fn connect_property_current_audio_track_notify<F: Fn(&Player) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&Player) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "notify::current-audio-track",
transmute(notify_current_audio_track_trampoline as usize), Box_::into_raw(f) as *mut _)
}
}
pub fn connect_property_current_subtitle_track_notify<F: Fn(&Player) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&Player) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "notify::current-subtitle-track",
transmute(notify_current_subtitle_track_trampoline as usize), Box_::into_raw(f) as *mut _)
}
}
pub fn connect_property_current_video_track_notify<F: Fn(&Player) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&Player) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "notify::current-video-track",
transmute(notify_current_video_track_trampoline as usize), Box_::into_raw(f) as *mut _)
}
}
pub fn connect_property_duration_notify<F: Fn(&Player) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&Player) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "notify::duration",
transmute(notify_duration_trampoline as usize), Box_::into_raw(f) as *mut _)
}
}
pub fn connect_property_media_info_notify<F: Fn(&Player) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&Player) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "notify::media-info",
transmute(notify_media_info_trampoline as usize), Box_::into_raw(f) as *mut _)
}
}
pub fn connect_property_mute_notify<F: Fn(&Player) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&Player) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "notify::mute",
transmute(notify_mute_trampoline as usize), Box_::into_raw(f) as *mut _)
}
}
pub fn connect_property_pipeline_notify<F: Fn(&Player) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&Player) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "notify::pipeline",
transmute(notify_pipeline_trampoline as usize), Box_::into_raw(f) as *mut _)
}
}
pub fn connect_property_position_notify<F: Fn(&Player) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&Player) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "notify::position",
transmute(notify_position_trampoline as usize), Box_::into_raw(f) as *mut _)
}
}
pub fn connect_property_rate_notify<F: Fn(&Player) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&Player) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "notify::rate",
transmute(notify_rate_trampoline as usize), Box_::into_raw(f) as *mut _)
}
}
pub fn connect_property_signal_dispatcher_notify<F: Fn(&Player) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&Player) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "notify::signal-dispatcher",
transmute(notify_signal_dispatcher_trampoline as usize), Box_::into_raw(f) as *mut _)
}
}
pub fn connect_property_suburi_notify<F: Fn(&Player) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&Player) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "notify::suburi",
transmute(notify_suburi_trampoline as usize), Box_::into_raw(f) as *mut _)
}
}
pub fn connect_property_uri_notify<F: Fn(&Player) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&Player) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "notify::uri",
transmute(notify_uri_trampoline as usize), Box_::into_raw(f) as *mut _)
}
}
pub fn connect_property_video_multiview_flags_notify<F: Fn(&Player) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&Player) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "notify::video-multiview-flags",
transmute(notify_video_multiview_flags_trampoline as usize), Box_::into_raw(f) as *mut _)
}
}
pub fn connect_property_video_multiview_mode_notify<F: Fn(&Player) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&Player) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "notify::video-multiview-mode",
transmute(notify_video_multiview_mode_trampoline as usize), Box_::into_raw(f) as *mut _)
}
}
pub fn connect_property_video_renderer_notify<F: Fn(&Player) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&Player) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "notify::video-renderer",
transmute(notify_video_renderer_trampoline as usize), Box_::into_raw(f) as *mut _)
}
}
pub fn connect_property_volume_notify<F: Fn(&Player) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&Player) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "notify::volume",
transmute(notify_volume_trampoline as usize), Box_::into_raw(f) as *mut _)
}
}
} }
unsafe impl Send for Player {} unsafe impl Send for Player {}
@ -570,3 +706,105 @@ unsafe extern "C" fn warning_trampoline(this: *mut ffi::GstPlayer, object: *mut
let f: &&(Fn(&Player, &Error) + Send + 'static) = transmute(f); let f: &&(Fn(&Player, &Error) + Send + 'static) = transmute(f);
f(&from_glib_none(this), &from_glib_none(object)) f(&from_glib_none(this), &from_glib_none(object))
} }
unsafe extern "C" fn notify_audio_video_offset_trampoline(this: *mut ffi::GstPlayer, _param_spec: glib_ffi::gpointer, f: glib_ffi::gpointer) {
callback_guard!();
let f: &&(Fn(&Player) + Send + Sync + 'static) = transmute(f);
f(&from_glib_none(this))
}
unsafe extern "C" fn notify_current_audio_track_trampoline(this: *mut ffi::GstPlayer, _param_spec: glib_ffi::gpointer, f: glib_ffi::gpointer) {
callback_guard!();
let f: &&(Fn(&Player) + Send + Sync + 'static) = transmute(f);
f(&from_glib_none(this))
}
unsafe extern "C" fn notify_current_subtitle_track_trampoline(this: *mut ffi::GstPlayer, _param_spec: glib_ffi::gpointer, f: glib_ffi::gpointer) {
callback_guard!();
let f: &&(Fn(&Player) + Send + Sync + 'static) = transmute(f);
f(&from_glib_none(this))
}
unsafe extern "C" fn notify_current_video_track_trampoline(this: *mut ffi::GstPlayer, _param_spec: glib_ffi::gpointer, f: glib_ffi::gpointer) {
callback_guard!();
let f: &&(Fn(&Player) + Send + Sync + 'static) = transmute(f);
f(&from_glib_none(this))
}
unsafe extern "C" fn notify_duration_trampoline(this: *mut ffi::GstPlayer, _param_spec: glib_ffi::gpointer, f: glib_ffi::gpointer) {
callback_guard!();
let f: &&(Fn(&Player) + Send + Sync + 'static) = transmute(f);
f(&from_glib_none(this))
}
unsafe extern "C" fn notify_media_info_trampoline(this: *mut ffi::GstPlayer, _param_spec: glib_ffi::gpointer, f: glib_ffi::gpointer) {
callback_guard!();
let f: &&(Fn(&Player) + Send + Sync + 'static) = transmute(f);
f(&from_glib_none(this))
}
unsafe extern "C" fn notify_mute_trampoline(this: *mut ffi::GstPlayer, _param_spec: glib_ffi::gpointer, f: glib_ffi::gpointer) {
callback_guard!();
let f: &&(Fn(&Player) + Send + Sync + 'static) = transmute(f);
f(&from_glib_none(this))
}
unsafe extern "C" fn notify_pipeline_trampoline(this: *mut ffi::GstPlayer, _param_spec: glib_ffi::gpointer, f: glib_ffi::gpointer) {
callback_guard!();
let f: &&(Fn(&Player) + Send + Sync + 'static) = transmute(f);
f(&from_glib_none(this))
}
unsafe extern "C" fn notify_position_trampoline(this: *mut ffi::GstPlayer, _param_spec: glib_ffi::gpointer, f: glib_ffi::gpointer) {
callback_guard!();
let f: &&(Fn(&Player) + Send + Sync + 'static) = transmute(f);
f(&from_glib_none(this))
}
unsafe extern "C" fn notify_rate_trampoline(this: *mut ffi::GstPlayer, _param_spec: glib_ffi::gpointer, f: glib_ffi::gpointer) {
callback_guard!();
let f: &&(Fn(&Player) + Send + Sync + 'static) = transmute(f);
f(&from_glib_none(this))
}
unsafe extern "C" fn notify_signal_dispatcher_trampoline(this: *mut ffi::GstPlayer, _param_spec: glib_ffi::gpointer, f: glib_ffi::gpointer) {
callback_guard!();
let f: &&(Fn(&Player) + Send + Sync + 'static) = transmute(f);
f(&from_glib_none(this))
}
unsafe extern "C" fn notify_suburi_trampoline(this: *mut ffi::GstPlayer, _param_spec: glib_ffi::gpointer, f: glib_ffi::gpointer) {
callback_guard!();
let f: &&(Fn(&Player) + Send + Sync + 'static) = transmute(f);
f(&from_glib_none(this))
}
unsafe extern "C" fn notify_uri_trampoline(this: *mut ffi::GstPlayer, _param_spec: glib_ffi::gpointer, f: glib_ffi::gpointer) {
callback_guard!();
let f: &&(Fn(&Player) + Send + Sync + 'static) = transmute(f);
f(&from_glib_none(this))
}
unsafe extern "C" fn notify_video_multiview_flags_trampoline(this: *mut ffi::GstPlayer, _param_spec: glib_ffi::gpointer, f: glib_ffi::gpointer) {
callback_guard!();
let f: &&(Fn(&Player) + Send + Sync + 'static) = transmute(f);
f(&from_glib_none(this))
}
unsafe extern "C" fn notify_video_multiview_mode_trampoline(this: *mut ffi::GstPlayer, _param_spec: glib_ffi::gpointer, f: glib_ffi::gpointer) {
callback_guard!();
let f: &&(Fn(&Player) + Send + Sync + 'static) = transmute(f);
f(&from_glib_none(this))
}
unsafe extern "C" fn notify_video_renderer_trampoline(this: *mut ffi::GstPlayer, _param_spec: glib_ffi::gpointer, f: glib_ffi::gpointer) {
callback_guard!();
let f: &&(Fn(&Player) + Send + Sync + 'static) = transmute(f);
f(&from_glib_none(this))
}
unsafe extern "C" fn notify_volume_trampoline(this: *mut ffi::GstPlayer, _param_spec: glib_ffi::gpointer, f: glib_ffi::gpointer) {
callback_guard!();
let f: &&(Fn(&Player) + Send + Sync + 'static) = transmute(f);
f(&from_glib_none(this))
}

View file

@ -1,4 +1,4 @@
// This file was generated by gir (651da6e) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use PlayerStreamInfo; use PlayerStreamInfo;

View file

@ -1,14 +1,17 @@
// This file was generated by gir (651da6e) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use PlayerSignalDispatcher; use PlayerSignalDispatcher;
use ffi; use ffi;
use glib; use glib;
use glib::Value; use glib::Value;
use glib::signal::connect;
use glib::translate::*; use glib::translate::*;
use glib_ffi; use glib_ffi;
use gobject_ffi; use gobject_ffi;
use std::boxed::Box as Box_;
use std::mem; use std::mem;
use std::mem::transmute;
use std::ptr; use std::ptr;
glib_wrapper! { glib_wrapper! {
@ -36,7 +39,21 @@ impl PlayerGMainContextSignalDispatcher {
from_glib_full(ffi::gst_player_g_main_context_signal_dispatcher_new(application_context.0)) from_glib_full(ffi::gst_player_g_main_context_signal_dispatcher_new(application_context.0))
} }
} }
pub fn connect_property_application_context_notify<F: Fn(&PlayerGMainContextSignalDispatcher) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&PlayerGMainContextSignalDispatcher) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "notify::application-context",
transmute(notify_application_context_trampoline as usize), Box_::into_raw(f) as *mut _)
}
}
} }
unsafe impl Send for PlayerGMainContextSignalDispatcher {} unsafe impl Send for PlayerGMainContextSignalDispatcher {}
unsafe impl Sync for PlayerGMainContextSignalDispatcher {} unsafe impl Sync for PlayerGMainContextSignalDispatcher {}
unsafe extern "C" fn notify_application_context_trampoline(this: *mut ffi::GstPlayerGMainContextSignalDispatcher, _param_spec: glib_ffi::gpointer, f: glib_ffi::gpointer) {
callback_guard!();
let f: &&(Fn(&PlayerGMainContextSignalDispatcher) + Send + Sync + 'static) = transmute(f);
f(&from_glib_none(this))
}

View file

@ -1,4 +1,4 @@
// This file was generated by gir (651da6e) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use PlayerAudioInfo; use PlayerAudioInfo;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (651da6e) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ffi; use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (651da6e) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ffi; use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (651da6e) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use PlayerStreamInfo; use PlayerStreamInfo;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (651da6e) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use PlayerStreamInfo; use PlayerStreamInfo;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (651da6e) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use PlayerVideoRenderer; use PlayerVideoRenderer;
@ -6,11 +6,14 @@ use ffi;
use glib; use glib;
use glib::Value; use glib::Value;
use glib::object::IsA; use glib::object::IsA;
use glib::signal::connect;
use glib::translate::*; use glib::translate::*;
use glib_ffi; use glib_ffi;
use gobject_ffi; use gobject_ffi;
use gst; use gst;
use std::boxed::Box as Box_;
use std::mem; use std::mem;
use std::mem::transmute;
use std::ptr; use std::ptr;
glib_wrapper! { glib_wrapper! {
@ -74,7 +77,35 @@ impl PlayerVideoOverlayVideoRenderer {
//pub fn new_with_sink<P: Into<Option</*Unimplemented*/Fundamental: Pointer>>, Q: IsA<gst::Element>>(window_handle: P, video_sink: &Q) -> Option<PlayerVideoRenderer> { //pub fn new_with_sink<P: Into<Option</*Unimplemented*/Fundamental: Pointer>>, Q: IsA<gst::Element>>(window_handle: P, video_sink: &Q) -> Option<PlayerVideoRenderer> {
// unsafe { TODO: call ffi::gst_player_video_overlay_video_renderer_new_with_sink() } // unsafe { TODO: call ffi::gst_player_video_overlay_video_renderer_new_with_sink() }
//} //}
pub fn connect_property_video_sink_notify<F: Fn(&PlayerVideoOverlayVideoRenderer) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&PlayerVideoOverlayVideoRenderer) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "notify::video-sink",
transmute(notify_video_sink_trampoline as usize), Box_::into_raw(f) as *mut _)
}
}
pub fn connect_property_window_handle_notify<F: Fn(&PlayerVideoOverlayVideoRenderer) + Send + Sync + 'static>(&self, f: F) -> u64 {
unsafe {
let f: Box_<Box_<Fn(&PlayerVideoOverlayVideoRenderer) + Send + Sync + 'static>> = Box_::new(Box_::new(f));
connect(self.to_glib_none().0, "notify::window-handle",
transmute(notify_window_handle_trampoline as usize), Box_::into_raw(f) as *mut _)
}
}
} }
unsafe impl Send for PlayerVideoOverlayVideoRenderer {} unsafe impl Send for PlayerVideoOverlayVideoRenderer {}
unsafe impl Sync for PlayerVideoOverlayVideoRenderer {} unsafe impl Sync for PlayerVideoOverlayVideoRenderer {}
unsafe extern "C" fn notify_video_sink_trampoline(this: *mut ffi::GstPlayerVideoOverlayVideoRenderer, _param_spec: glib_ffi::gpointer, f: glib_ffi::gpointer) {
callback_guard!();
let f: &&(Fn(&PlayerVideoOverlayVideoRenderer) + Send + Sync + 'static) = transmute(f);
f(&from_glib_none(this))
}
unsafe extern "C" fn notify_window_handle_trampoline(this: *mut ffi::GstPlayerVideoOverlayVideoRenderer, _param_spec: glib_ffi::gpointer, f: glib_ffi::gpointer) {
callback_guard!();
let f: &&(Fn(&PlayerVideoOverlayVideoRenderer) + Send + Sync + 'static) = transmute(f);
f(&from_glib_none(this))
}

View file

@ -1,4 +1,4 @@
// This file was generated by gir (651da6e) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ffi; use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (651da6e) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ffi; use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ffi; use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ffi; use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
mod video_overlay; mod video_overlay;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cf27827) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ffi; use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
#[allow(unused_imports)] #[allow(unused_imports)]

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ChildProxy; use ChildProxy;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ClockTime; use ClockTime;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ffi; use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ClockTime; use ClockTime;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ffi; use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use Caps; use Caps;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use Bus; use Bus;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use Bus; use Bus;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use DeviceProvider; use DeviceProvider;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use Bus; use Bus;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use Caps; use Caps;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ffi; use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ffi; use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use Bin; use Bin;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use Object; use Object;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
mod bin; mod bin;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ClockTime; use ClockTime;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use Caps; use Caps;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use Caps; use Caps;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use Bin; use Bin;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use Error; use Error;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use ffi; use ffi;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use Iterator; use Iterator;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use Caps; use Caps;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use Object; use Object;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use Clock; use Clock;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use Element; use Element;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use Element; use Element;

View file

@ -1,4 +1,4 @@
// This file was generated by gir (cfd99ec+) from gir-files (???) // This file was generated by gir (e43d6c3) from gir-files (???)
// DO NOT EDIT // DO NOT EDIT
use Error; use Error;