Transmisión de audio

Reproduce streams de audio en vivo en tu escena.

Puedes reproducir audio en streaming desde una URL. Esto es útil para reproducir música directamente desde una radio por internet, o transmitir una conferencia dentro de tu escena.

circle-info

💡 Tip: En el Scene Editor in Creator Hub, puedes usar un Transmisión de audio Smart Item para una forma sin código de lograr esto.

El audio en la fuente debe estar en uno de los siguientes formatos: .mp3, ogg, o aac. La fuente también debe ser un https URL (http No se admiten URLs), y la fuente debería tener políticas CORS (Cross Origin Resource Sharing)arrow-up-right que permitan acceder externamente a ella. Si este no es el caso, es posible que necesites configurar un servidor que actúe como proxy y exponga la transmisión de una manera válida.

circle-exclamation

Para agregar una transmisión de audio a tu escena, simplemente agrega un AudioStream componente a una entidad:

const streamEntity = engine.addEntity()

AudioStream.create(streamEntity, {
	url: 'https://icecast.ravepartyradio.org/ravepartyradio-192.mp3',
	playing: true,
	volume: 0.8,
})
circle-exclamation

Establece el volumen del AudioStream componente cambiando su volume propiedad.

Activa o desactiva el AudioStream componente estableciendo su playing propiedad a true o false.

circle-info

📔 Nota: No todos los servicios de streaming permiten reproducir su audio fuera de su sitio. A continuación hay algunos ejemplos que funcionan en Decentraland:

DELTA = "https://cdn.instream.audio/:9069/stream?_=171cd6c2b6e"
GRAFFITI = "https://n07.radiojar.com/2qm1fc5kb.m4a?1617129761=&rj-tok=AAABeIR7VqwAilDFeUM39SDjmw&rj-ttl=5"
ISLA NEGRA = "https://radioislanegra.org/listen/up/basic.aac"

Estado de la transmisión

Consulta el estado de una transmisión de audio usando la función AudioStream.getAudioState(), pasando la entidad que posee el AudioStream component.

El estado devuelto es un valor del MediaState enum. Este enum tiene los siguientes valores posibles:

  • MS_BUFFERING

  • MS_ERROR

  • MS_LOADING

  • MS_NONE

  • MS_PAUSED

  • MS_PLAYING

  • MS_READY

  • MS_SEEKING

El siguiente ejemplo verifica el estado de una transmisión y registra cuando hay un cambio.

Audio espacial

Por defecto, el audio de una AudioStream componente es global, lo que significa que se escuchará a un volumen consistente en toda tu escena. Si un jugador sale de la escena, no escuchará la transmisión en absoluto.

Para hacer el audio espacial, establece el spatial propiedad a true.

El audio ahora se escuchará desde la posición de la entidad que posee el AudioStream componente, y será más fuerte a medida que el jugador se acerque.

Controla el audio espacial con las siguientes propiedades:

  • spatialMinDistance: La distancia mínima a la que el audio se vuelve espacial. Si el jugador está más cerca, el audio se escuchará a volumen completo. 0 por defecto.

  • spatialMaxDistance: La distancia máxima a la que se escucha el audio. Si el jugador está más lejos, el audio se escuchará a volumen 0. 60 por defecto

circle-exclamation

Última actualización