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.


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.

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.

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.