/Godot 3.2


Inherits: Control < CanvasItem < Node < Object

Control for playing video streams.


Control node for playing video streams using VideoStream resources.

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


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


String get_stream_name ( ) const
Texture get_video_texture ( ) const
bool is_playing ( ) const
void play ( )
void stop ( )


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.

bool autoplay

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.

String bus

Default "Master"
Setter set_bus(value)
Getter get_bus()

Audio bus to use for sound playback.

bool expand

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.

bool paused

Default false
Setter set_paused(value)
Getter is_paused()

If true, the video is paused.

VideoStream stream

Setter set_stream(value)
Getter get_stream()

The assigned video stream. See description for supported formats.

float stream_position

Setter set_stream_position(value)
Getter get_stream_position()

The current position of the stream, in seconds.

float volume

Setter set_volume(value)
Getter get_volume()

Audio volume as a linear value.

float volume_db

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.

© 2014–2020 Juan Linietsky, Ariel Manzur, Godot Engine contributors
Licensed under the MIT License.