Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

AudioStreamPlayer

Hereda: Node < Object

Un nodo para la reproducción de audio.

Descripción

El nodo AudioStreamPlayer reproduce un flujo de audio de forma no posicional. Es ideal para interfaces de usuario, menús o música de fondo.

Para usar este nodo, la propiedad stream debe establecerse en un recurso válido de tipo AudioStream. También se admite reproducir más de un sonido al mismo tiempo; véase max_polyphony.

Si necesitas reproducir audio en una posición específica, utiliza AudioStreamPlayer2D o AudioStreamPlayer3D en su lugar.

Tutoriales

Propiedades

bool

autoplay

false

StringName

bus

&"Master"

int

max_polyphony

1

MixTarget

mix_target

0

float

pitch_scale

1.0

PlaybackType

playback_type

0

bool

playing

false

AudioStream

stream

bool

stream_paused

false

float

volume_db

0.0

float

volume_linear

Métodos

float

get_playback_position()

AudioStreamPlayback

get_stream_playback()

bool

has_stream_playback()

void

play(from_position: float = 0.0)

void

seek(to_position: float)

void

stop()


Señales

finished() 🔗

Emitida cuando un sonido termina de reproducirse sin interrupciones. Esta señal no se emite al llamar a stop(), o al salir del árbol mientras los sonidos se están reproduciendo.


Enumeraciones

enum MixTarget: 🔗

MixTarget MIX_TARGET_STEREO = 0

El audio se reproducirá solo en el primer canal. Este es el comportamiento predeterminado.

MixTarget MIX_TARGET_SURROUND = 1

El audio se reproducirá en todos los canales de sonido envolvente.

MixTarget MIX_TARGET_CENTER = 2

El audio se reproducirá en el segundo canal, que suele ser el del centro.


Descripciones de Propiedades

bool autoplay = false 🔗

  • void set_autoplay(value: bool)

  • bool is_autoplay_enabled()

If true, this node calls play() when entering the tree.


StringName bus = &"Master" 🔗

El nombre del bus de destino. Todos los sonidos de este nodo se reproducirán en este bus.

Nota: En tiempo de ejecución, si no existe un bus con el nombre indicado, todos los sonidos se reproducirán en "Master". Véase también AudioServer.get_bus_name().


int max_polyphony = 1 🔗

  • void set_max_polyphony(value: int)

  • int get_max_polyphony()

El número máximo de sonidos que este nodo puede reproducir simultáneamente. Al llamar a play() después de alcanzar este valor, se eliminarán los sonidos más antiguos.


MixTarget mix_target = 0 🔗

Los canales de destino de la mezcla. No tiene efecto cuando se detectan dos altavoces o menos (ver SpeakerMode).


float pitch_scale = 1.0 🔗

  • void set_pitch_scale(value: float)

  • float get_pitch_scale()

El tono y tempo del audio, como un multiplicador de la frecuencia de muestreo de stream. Un valor de 2.0 duplica el tono del audio, mientras que un valor de 0.5 lo reduce a la mitad.


PlaybackType playback_type = 0 🔗

Experimental: Esta propiedad podría ser modificada o eliminada en versiones futuras.

El tipo de reproducción del reproductor de flujo. Si se establece un valor distinto al predeterminado, se forzará ese tipo de reproducción.


bool playing = false 🔗

  • void set_playing(value: bool)

  • bool is_playing()

If true, this node is playing sounds. Setting this property has the same effect as play() and stop().


AudioStream stream 🔗

El recurso AudioStream que se reproducirá. Al configurar esta propiedad, se detendrán todos los sonidos que se estén reproduciendo. Si se deja vacía, AudioStreamPlayer no funcionará.


bool stream_paused = false 🔗

  • void set_stream_paused(value: bool)

  • bool get_stream_paused()

Si es true, los sonidos se pausan. Configurar stream_paused a false reanuda todos los sonidos.

Nota: Esta propiedad se modifica automáticamente al salir o entrar en el árbol, o cuando este nodo se pausa (ver Node.process_mode).


float volume_db = 0.0 🔗

  • void set_volume_db(value: float)

  • float get_volume_db()

Volumen del sonido, en decibeles. Esto es un desplazamiento respecto al volumen de stream.

Nota: Para convertir entre decibeles y energía lineal (como hacen la mayoría de los deslizadores de volumen), utiliza volume_linear, o @GlobalScope.db_to_linear() y @GlobalScope.linear_to_db().


float volume_linear 🔗

  • void set_volume_linear(value: float)

  • float get_volume_linear()

Volumen del sonido, como un valor lineal.

Nota: Este miembro modifica volume_db por conveniencia. El valor devuelto es equivalente al resultado de @GlobalScope.db_to_linear() sobre volume_db. Establecer este miembro es equivalente a establecer volume_db al resultado de @GlobalScope.linear_to_db() sobre un valor.


Descripciones de Métodos

float get_playback_position() 🔗

Devuelve la posición, en segundos, del último sonido reproducido en el AudioStream. Devuelve 0.0 si no se está reproduciendo ningún sonido.

Nota: La posición no siempre es precisa, ya que el AudioServer no mezcla el audio en cada frame procesado. Para obtener resultados más exactos, suma AudioServer.get_time_since_last_mix() a la posición devuelta.

Nota: Este método siempre devuelve 0.0 si stream es un AudioStreamInteractive, ya que puede tener varios clips reproduciéndose simultáneamente.


AudioStreamPlayback get_stream_playback() 🔗

Devuelve el AudioStreamPlayback más reciente de este nodo, generalmente el creado más recientemente por play(). Si no se está reproduciendo ningún sonido, este método falla y devuelve una instancia de reproducción vacía.


bool has_stream_playback() 🔗

Devuelve true si hay algún sonido activo, incluso si stream_paused está establecido en true. Consulte también playing y get_stream_playback().


void play(from_position: float = 0.0) 🔗

Reproduce un sonido desde el principio, o desde la from_position dada en segundos.


void seek(to_position: float) 🔗

Reinicia todos los sonidos que se reproducirán desde el to_position indicado, en segundos. No hace nada si no se reproduce ningún sonido.


void stop() 🔗

Stops all sounds from this node.