W3cubDocs

/Godot 4.2

VideoStreamPlayer

Inherits: Control < CanvasItem < Node < Object

A control used for video playback.

Description

A control used for playback of VideoStream resources.

Supported video formats are Ogg Theora (.ogv, VideoStreamTheora) and any format exposed via a GDExtension plugin.

Warning: On Web, video playback will perform poorly due to missing architecture-specific assembly optimizations.

Tutorials

Properties

int

audio_track

0

bool

autoplay

false

int

buffering_msec

500

StringName

bus

&"Master"

bool

expand

false

bool

loop

false

bool

paused

false

VideoStream

stream

float

stream_position

float

volume

float

volume_db

0.0

Methods

float

get_stream_length ( ) const

String

get_stream_name ( ) const

Texture2D

get_video_texture ( ) const

bool

is_playing ( ) const

void

play ( )

void

stop ( )

Signals

finished ( )

Emitted when playback is finished.

Property Descriptions

int audio_track = 0

  • void set_audio_track ( int value )
  • int get_audio_track ( )

The embedded audio track to play.

bool autoplay = false

  • void set_autoplay ( bool value )
  • bool has_autoplay ( )

If true, playback starts when the scene loads.

int buffering_msec = 500

  • void set_buffering_msec ( int value )
  • int get_buffering_msec ( )

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

StringName bus = &"Master"

Audio bus to use for sound playback.

bool expand = false

  • void set_expand ( bool value )
  • bool 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 loop = false

  • void set_loop ( bool value )
  • bool has_loop ( )

If true, the video restarts when it reaches its end.

bool paused = false

  • void set_paused ( bool value )
  • bool is_paused ( )

If true, the video is paused.

VideoStream stream

The assigned video stream. See description for supported formats.

float stream_position

  • void set_stream_position ( float value )
  • float 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 GDExtension add-on.

float volume

  • void set_volume ( float value )
  • float get_volume ( )

Audio volume as a linear value.

float volume_db = 0.0

  • void set_volume_db ( float value )
  • float get_volume_db ( )

Audio volume in dB.

Method Descriptions

float get_stream_length ( ) const

The length of the current stream, in seconds.

Note: For VideoStreamTheora streams (the built-in format supported by Godot), this value will always be zero, as getting the stream length is not implemented yet. The feature may be supported by video formats implemented by a GDExtension add-on.

String get_stream_name ( ) const

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

Texture2D get_video_texture ( ) const

Returns the current frame as a Texture2D.

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–present Juan Linietsky, Ariel Manzur and the Godot community
Licensed under the Creative Commons Attribution Unported License v3.0.
https://docs.godotengine.org/en/4.2/classes/class_videostreamplayer.html