Estoy tratando de configurar un archivo cargado a través de un campo de entrada como fuente para una etiqueta de audio. Todo funciona bien excepto en iOS. Cuando ejecuto este código en el iPhone, el audio está configurado correctamente en la nueva fuente y puedo reproducirlo. Pero cuando muevo el control deslizante y presiono reproducir/pausar varias veces, el control deslizante se mueve sin reproducir sonido o no se mueve en absoluto, aunque se muestra el icono de pausa. Solo cuando el control deslizante se mueve completamente de regreso al principio, a veces vuelve a funcionar.
Es más probable que el problema ocurra con archivos de audio muy cortos (< 5 segundos). ¿Tal vez es un comportamiento extraño cuando se usa createObjectURL en iOS? Sin embargo, el problema no ocurre en el simulador de iOS bajo macOS.
Tal vez algunos de ustedes hayan tenido este problema antes y me puedan ayudar.
¡Gracias!
EDITAR: El problema también ocurre en el Simulador de iPhone en macOS, después de que lo actualicé a la última versión (15.4). Así que parece ser un problema con la última versión de iOS.
const input = document.querySelector('input'); const audio = document.querySelector('audio'); input.addEventListener('change', (e) => { audio.src = URL.createObjectURL(e.target.files[0]); }) <input type="file" accept="audio/*, .mp3" /> <audio controls />