# Arranque del sonido en v19

La música se solicita al abrir el HTML. `index.html` carga `sonido.js`,
`sonido-interfaz.js` e `inicio-sonido.js` después del marcado de la página y antes
de las librerías, datos y escena 3D. Así la solicitud no espera a que se cargue o
construya WebGL. La reproducción todavía necesita cargar los datos del MP3 y puede
ser bloqueada por la política de reproducción automática del navegador.

## Instancia y ciclo de vida

`window.SolarRuntime` contiene el estado mínimo compartido del arranque:

- `audioBootstrapped`: impide crear otro panel si se incluye de nuevo el archivo.
- `soundPanel`: única instancia de `SolarAudioPanel`, o `null` si falló o se cerró.

El constructor existente del panel solicita autoplay sin esperar un gesto. El
arranque conserva su propio `try/catch`, independiente del arranque 3D. Al crear
la barra inmersiva, `principal.js` asigna su contenedor al panel ya existente y
conecta los efectos de navegación. El cierre definitivo (`pagehide` sin
`persisted`) destruye el panel una sola vez. Una entrada en bfcache conserva la
instancia; el motor existente gestiona la pausa y reanudación según visibilidad.

Los ajustes guardados de silencio, canales y volúmenes siguen respetándose.
La vista inicial es Tierra; la restauración posterior de una URL compartida puede
sustituirla por la vista de esa escena.

## Permisos normales del navegador

Este cambio reduce la espera de arranque; no concede permisos de audio. No se
modifican preferencias, políticas ni flags del navegador. Tampoco se simulan
clics. Si `play()` devuelve `NotAllowedError`, se conserva el mensaje del panel y
la recuperación mediante interacción real o el botón Reproducir música.

- [MDN: `HTMLMediaElement.play()`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement/play)
  confirma que la política también se aplica a llamadas hechas desde JavaScript.
- [Chrome: política de autoplay](https://developer.chrome.com/blog/autoplay/)
  documenta las condiciones para permitir reproducción automática con sonido.
- [Edge: gestionar autoplay](https://www.microsoft.com/en-us/edge/learning-center/manage-autoplay)
  describe el ajuste normal de reproducción automática multimedia **Permitir**.
- [Firefox: permitir o bloquear autoplay](https://support.mozilla.org/en-US/kb/block-autoplay)
  describe **Permitir audio y vídeo** en los permisos por página o como ajuste
  general. El soporte para permisos de páginas locales `file://` se añadió en
  [Firefox 76, incidencia 1622730](https://bugzilla.mozilla.org/show_bug.cgi?id=1622730).

El doble clic en el Explorador abre la página; no constituye un gesto recibido
por su documento. El HTML por sí solo no puede garantizar sonido al abrir en
todos los navegadores y perfiles. La reproducción automática requiere que el
navegador la permita y que la pestaña, el equipo y el panel no estén silenciados.

Fuentes consultadas el 20 de septiembre de 2026. No se han cambiado permisos.
