Buenas tengo una consulta, estoy haciendo un proyecto donde muestro unos videos por medio de blueprint widget, cuando presento el video y a la hora de dar click atrás el audio del video sigue produciéndose el audio, por ello lo que hice como solucion por el momento es crear una animacion que cuando termine el video aparezcan los botos atras y salir pero no es lo optimo y quisiera saber como puedo detener el audio cuando doy click atras o salir.
lo mejor es spawnear el sonido y guardarlo en una variable para poder controlarlo desde ahi…cuando usas spawn sound asegurate que el auto destroy no este tickeado porque si pones stop el sonido se destruye.
en resumen: spawn sound → guardar en una variable —> play (creo que al spawnear el sonido ya hace play solo)
para detenerlo:
variable del spawn —> stop (o pause o lo que quieras ya que lo puedes controlar)
Por lo que se ve de tu código, estas tratando de iniciar el video antes de abrirlo.
El orden que yo veo es el siguiente: Creas el widget-> lo agregas al viewport->Inicias el video-> y después una secuencia, donde lo primero que haces es cargar el video.
El orden en el que estás realizando todo, no me convence.
Yo creo el widget, hago un chequeo de validación para asegurarme que el widget está activo, sino entro en un loop cada 0.2 seg hasta que se validó.
Luego abro la fuente del video con “Open Source Latent” y ahí defino varias opciones, como por ejemplo no iniciar el video inmediatamente. Luego hago un Seek para buscar el inicio del video, luego una validacion del video y solo después que pude conformar todo, corro el nodo de Play.
¿Si? te armo una lista:
- Creas el widget y lo validás.
- Cargas la fuente del video con opciones (deteniendo el “autoplay”) y validás
- Buscas el inicio del video con Seek y validás
- Haces un ultimo chequeo para asegurarte que el video esté listo.
- Ejecutas el video
Acá tenés un screen capture de mi proyector.
Yo llamo al evento desde otro blueprint, pero creo que se entiende con lo que puse.
Con las referencias del player ahí podes apagar el video y el audio.
Si eso no te funciona, podes poner un componente de audio en el nivel que usas para cargar el widget, y desde ahí podes controlarlo.
Haces un BP, que tiene un componente de “Media Sound”, ahí seteas el video player y de paso pones que si querés que se active automáticamente, o si querés activarlo desde otro blueprint.
Ese blueprint lo ubicás en tu nivel, cuando cambies de nivel se va a cortar el audio (porque ese blueprint no es persistente y desaparece cuando cambias el nivel).
Si necesitas mantener el nivel, pero cerrar el audio, solo tenés que llamar a ese blueprint y acceder al "Media Sound Component para poder apagarlo.