gstreamer-rs/docs/gstreamer-player/docs.md
2018-03-20 12:36:29 +02:00

20 KiB

Implements

gst::ObjectExt, glib::object::ObjectExt

Creates a new Player instance that uses signal_dispatcher to dispatch signals to some event loop system, or emits signals directly if NULL is passed. See PlayerGMainContextSignalDispatcher::new.

Video is going to be rendered by video_renderer, or if None is provided no special video set up will be done and some default handling will be performed.

video_renderer

GstPlayerVideoRenderer to use

signal_dispatcher

GstPlayerSignalDispatcher to use

Returns

a new Player instance

config

a Player configuration

Returns

current position update interval in milliseconds

Since 1.10

config

a Player configuration

Returns

true if accurate seeking is enabled

Since 1.12

Return the user agent which has been configured using Player::config_set_user_agent if any.

config

a Player configuration

Returns

the configured agent, or None Since 1.10

set interval in milliseconds between two position-updated signals. pass 0 to stop updating the position. Since 1.10

config

a Player configuration

interval

interval in ms

Enable or disable accurate seeking. When enabled, elements will try harder to seek as accurately as possible to the requested seek position. Generally it will be slower especially for formats that don't have any indexes or timestamp markers in the stream.

If accurate seeking is disabled, elements will seek as close as the request position without slowing down seeking too much.

Accurate seeking is disabled by default.

config

a Player configuration

accurate

accurate seek or not

Set the user agent to pass to the server if player needs to connect to a server during playback. This is typically used when playing HTTP or RTSP streams.

Since 1.10

config

a Player configuration

agent

the string to use as user agent

info

a PlayerMediaInfo

Returns

A glib::List of matching PlayerAudioInfo.

info

a PlayerMediaInfo

Returns

A glib::List of matching PlayerSubtitleInfo.

info

a PlayerMediaInfo

Returns

A glib::List of matching PlayerVideoInfo.

Frees a None terminated array of PlayerVisualization.

viss

a None terminated array of PlayerVisualization to free

Returns

a None terminated array containing all available visualizations. Use Player::visualizations_free after usage.

Retrieve the current value of audio-video-offset property

Returns

The current value of audio-video-offset in nanoseconds

Since 1.10

Retrieve the current value of the indicated type_.

type_

PlayerColorBalanceType

Returns

The current value of type_, between [0,1]. In case of error -1 is returned.

Get a copy of the current configuration of the player. This configuration can either be modified and used for the Player::set_config call or it must be freed after usage.

Returns

a copy of the current configuration of self. Use gst::Structure::free after usage or Player::set_config.

Since 1.10

A Function to get current audio PlayerAudioInfo instance.

Returns

current audio track.

The caller should free it with gobject::ObjectExt::unref

A Function to get current subtitle PlayerSubtitleInfo instance.

Returns

current subtitle track.

The caller should free it with gobject::ObjectExt::unref

A Function to get current video PlayerVideoInfo instance.

Returns

current video track.

The caller should free it with gobject::ObjectExt::unref

Returns

Name of the currently enabled visualization. g_free after usage.

Retrieves the duration of the media stream that self represents.

Returns

the duration of the currently-playing media stream, in nanoseconds.

A Function to get the current media info PlayerMediaInfo instance.

Returns

media info instance.

The caller should free it with gobject::ObjectExt::unref

Retrieve the current value of the indicated type_.

Returns

The current value of type_, Default: 0x00000000 "none

Retrieve the current value of the indicated type_.

Returns

The current value of type_, Default: -1 "none"

Returns

true if the currently-playing stream is muted.

Returns

The internal playbin instance

Returns

the absolute position time, in nanoseconds, of the currently-playing stream.

Returns

current playback rate

current subtitle URI

Returns

URI of the current external subtitle. g_free after usage.

Gets the URI of the currently-playing stream.

Returns

a string containing the URI of the currently-playing stream. g_free after usage.

Get a snapshot of the currently selected video stream, if any. The format can be selected with format and optional configuration is possible with config Currently supported settings are:

  • width, height of type G_TYPE_INT
  • pixel-aspect-ratio of type GST_TYPE_FRACTION Except for GST_PLAYER_THUMBNAIL_RAW_NATIVE format, if no config is set, pixel-aspect-ratio would be 1/1

format

output format of the video snapshot

config

Additional configuration

Returns

Current video snapshot sample or None on failure

Since 1.12

Returns the current volume level, as a percentage between 0 and 1.

Returns

the volume as percentage between 0 and 1.

Checks whether the self has color balance support available.

Returns

true if self has color balance support. Otherwise, false.

Pauses the current stream.

Request to play the loaded stream.

Seeks the currently-playing stream to the absolute position time in nanoseconds.

position

position to seek in nanoseconds

stream_index

stream index

Returns

true or false

Sets the audio track stream_idex.

Enable or disable the current audio track.

enabled

TRUE or FALSE

Sets audio-video-offset property by value of offset

Since 1.10

offset

gint64 in nanoseconds

Sets the current value of the indicated channel type_ to the passed value.

type_

PlayerColorBalanceType

value

The new value for the type_, ranged [0,1]

Set the configuration of the player. If the player is already configured, and the configuration haven't change, this function will return true. If the player is not in the GST_PLAYER_STATE_STOPPED, this method will return false and active configuration will remain.

config is a gst::Structure that contains the configuration parameters for the player.

This function takes ownership of config.

config

a gst::Structure

Returns

true when the configuration could be set. Since 1.10

Sets the current value of the indicated mode type_ to the passed value.

flags

The new value for the type_

Sets the current value of the indicated mode type_ to the passed value.

mode

The new value for the type_

true if the currently-playing stream should be muted.

val

Mute state the should be set

Playback at specified rate

rate

playback rate

stream_index

stream index

Returns

true or false

Sets the subtitle strack stream_index.

Enable or disable the current subtitle track.

enabled

TRUE or FALSE

Sets the external subtitle URI. This should be combined with a call to gst_player_set_subtitle_track_enabled(self, TRUE) so the subtitles are actually rendered.

uri

subtitle URI

Sets the next URI to play.

uri

next URI to play.

stream_index

stream index

Returns

true or false

Sets the video track stream_index.

Enable or disable the current video track.

enabled

TRUE or FALSE

name

visualization element obtained from Player::visualizations_get()

Returns

true if the visualizations was set correctly. Otherwise, false.

Enable or disable the visualization.

enabled

TRUE or FALSE

Sets the volume level of the stream as a percentage between 0 and 1.

val

the new volume level, as a percentage between 0 and 1

Stops playing the current stream and resets to the first position in the stream.

PlayerStreamInfo specific to audio streams.

Implements

PlayerStreamInfoExt, glib::object::ObjectExt

Returns

the audio bitrate in PlayerAudioInfo.

Returns

the number of audio channels in PlayerAudioInfo.

Returns

the language of the stream, or NULL if unknown.

Returns

the audio maximum bitrate in PlayerAudioInfo.

Returns

the audio sample rate in PlayerAudioInfo.

hue or color balance.

brightness or black level.

color saturation or chroma gain.

contrast or luma gain.

generic error.

Implements

glib::object::ObjectExt, PlayerSignalDispatcherExt

Creates a new GstPlayerSignalDispatcher that uses application_context, or the thread default one if None is used. See gst_player_new_full.

application_context

GMainContext to use or None

Returns

the new GstPlayerSignalDispatcher

Structure containing the media information of a URI.

Implements

glib::object::ObjectExt

Returns

A glib::List of matching PlayerAudioInfo.

Returns

the container format.

Returns

duration of the media.

Function to get the image (or preview-image) stored in taglist. Application can use gst_sample_*_ API's to get caps, buffer etc.

Returns

GstSample or NULL.

Returns

number of audio streams.

Returns

number of total streams.

Returns

number of subtitle streams.

Returns

number of video streams.

Returns

A glib::List of matching PlayerStreamInfo.

Returns

A glib::List of matching PlayerSubtitleInfo.

Returns

the tags contained in media info.

Returns

the media title.

Returns

the URI associated with PlayerMediaInfo.

Returns

A glib::List of matching PlayerVideoInfo.

Returns

true if the media is live.

Returns

true if the media is seekable.

Implements

PlayerSignalDispatcherExt

Trait containing all PlayerSignalDispatcher methods.

Implementors

PlayerGMainContextSignalDispatcher, PlayerSignalDispatcher

the player is stopped.

the player is buffering.

the player is paused.

the player is currently playing a stream.

Base structure for information concering a media stream. Depending on the stream type, one can find more media-specific information in PlayerVideoInfo, PlayerAudioInfo, PlayerSubtitleInfo.

Implements

PlayerStreamInfoExt, glib::object::ObjectExt

Trait containing all PlayerStreamInfo methods.

Implementors

PlayerAudioInfo, PlayerStreamInfo, PlayerSubtitleInfo, PlayerVideoInfo

Returns

the gst::Caps of the stream.

A string describing codec used in PlayerStreamInfo.

Returns

codec string or NULL on unknown.

Function to get stream index from PlayerStreamInfo instance.

Returns

the stream index of this stream.

Function to return human readable name for the stream type of the given self (ex: "audio", "video", "subtitle")

Returns

a human readable name

Returns

the tags contained in this stream.

PlayerStreamInfo specific to subtitle streams.

Implements

PlayerStreamInfoExt, glib::object::ObjectExt

Returns

the language of the stream, or NULL if unknown.

PlayerStreamInfo specific to video streams.

Implements

PlayerStreamInfoExt, glib::object::ObjectExt

Returns

the current bitrate of video in PlayerVideoInfo.

fps_n

Numerator of frame rate

fps_d

Denominator of frame rate

Returns

the height of video in PlayerVideoInfo.

Returns

the maximum bitrate of video in PlayerVideoInfo.

Returns the pixel aspect ratio in par_n and par_d

par_n

numerator

par_d

denominator

Returns

the width of video in PlayerVideoInfo.

Implements

glib::object::ObjectExt, PlayerVideoRendererExt

window_handle

Window handle to use or None

window_handle

Window handle to use or None

video_sink

the custom video_sink element to be set for the video renderer

Returns

Since 1.12

Tell an overlay that it has been exposed. This will redraw the current frame in the drawable even if the pipeline is PAUSED.

Return the currently configured render rectangle. See PlayerVideoOverlayVideoRenderer::set_render_rectangle for details.

x

the horizontal offset of the render area inside the window

y

the vertical offset of the render area inside the window

width

the width of the render area inside the window

height

the height of the render area inside the window

Returns

The currently set, platform specific window handle

Configure a subregion as a video target within the window set by PlayerVideoOverlayVideoRenderer::set_window_handle. If this is not 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 a specific region of that window only. After setting the new rectangle one should call PlayerVideoOverlayVideoRenderer::expose to force a 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 do not support subwindows.

x

the horizontal offset of the render area inside the window

y

the vertical offset of the render area inside the window

width

the width of the render area inside the window

height

the height of the render area inside the window

Sets the platform specific window handle into which the video should be rendered

window_handle

handle referencing to the platform specific window

Implements

PlayerVideoRendererExt

Trait containing all PlayerVideoRenderer methods.

Implementors

PlayerVideoOverlayVideoRenderer, PlayerVideoRenderer

A PlayerVisualization descriptor.

Makes a copy of the PlayerVisualization. The result must be freed using PlayerVisualization::free.

Returns

an allocated copy of self.

Frees a PlayerVisualization.