VideoPlayer

Inherits: Control < CanvasItem < Node < Object

Control for playing video streams.

Description

Control node for playing video streams using VideoStream resources.

Supported video formats are WebM (.webm, VideoStreamWebm), Ogg Theora (.ogv, VideoStreamTheora), and any format exposed via a GDNative plugin using VideoStreamGDNative.

Note: Due to a bug, VideoPlayer does not support localization remapping yet.

Warning: On HTML5, video playback will perform poorly due to missing architecture-specific assembly optimizations, especially for VP8/VP9.

Properties

int

audio_track

0

bool

autoplay

false

int

buffering_msec

500

String

bus

“Master”

bool

expand

true

bool

paused

false

VideoStream

stream

float

stream_position

float

volume

float

volume_db

0.0

Methods

String

get_stream_name ( ) const

Texture

get_video_texture ( ) const

bool

is_playing ( ) const

void

play ( )

void

stop ( )

Signals

  • finished ( )

Emitted when playback is finished.

Property Descriptions

  • int audio_track

Default

0

Setter

set_audio_track(value)

Getter

get_audio_track()

The embedded audio track to play.


Default

false

Setter

set_autoplay(value)

Getter

has_autoplay()

If true, playback starts when the scene loads.


  • int buffering_msec

Default

500

Setter

set_buffering_msec(value)

Getter

get_buffering_msec()

Amount of time in milliseconds to store in buffer while playing.


Default

“Master”

Setter

set_bus(value)

Getter

get_bus()

Audio bus to use for sound playback.


Default

true

Setter

set_expand(value)

Getter

has_expand()

If true, the video scales to the control size. Otherwise, the control minimum size will be automatically adjusted to match the video stream’s dimensions.


Default

false

Setter

set_paused(value)

Getter

is_paused()

If true, the video is paused.


Setter

set_stream(value)

Getter

get_stream()

The assigned video stream. See description for supported formats.


Setter

set_stream_position(value)

Getter

get_stream_position()

The current position of the stream, in seconds.

Note: Changing this value won’t have any effect as seeking is not implemented yet, except in video formats implemented by a GDNative add-on.


Setter

set_volume(value)

Getter

get_volume()

Audio volume as a linear value.


Default

0.0

Setter

set_volume_db(value)

Getter

get_volume_db()

Audio volume in dB.

Method Descriptions

  • String get_stream_name ( ) const

Returns the video stream’s name, or "<No Stream>" if no video stream is assigned.


  • Texture get_video_texture ( ) const

Returns the current frame as a Texture.


  • bool is_playing ( ) const

Returns true if the video is playing.

Note: The video is still considered playing if paused during playback.


  • void play ( )

Starts the video playback from the beginning. If the video is paused, this will not unpause the video.


  • void stop ( )

Stops the video playback and sets the stream position to 0.

Note: Although the stream position will be set to 0, the first frame of the video stream won’t become the current frame.