AudioTrack flush () que provoca estática
Estoy usando una instancia de AudioTrack para reproducir música. Cuando el usuario cambia canciones o busca dentro de la canción, quiero limpiar el búfer antes de reproducir los nuevos datos. La documentación de stop () parece guiarme hacia algo como:
audioTrack.pause(); audioTrack.flush(); audioTrack.play(); audioTrack.write(newData, ...);
Sin embargo, esto a menudo produce una ligera estática. He intentado algunas soluciones. Uno que funciona (como en deshacerse de la estática) en mi dispositivo de prueba es Thread.sleep (10, 0) después de la descarga (). Pero se siente muy hackish y arbitrario, ¿y si no funciona en algún otro dispositivo? También me gustaría no bloquear un nanosec más de lo necesario.
- AudioTrack - ¿Cómo saber cuándo empieza o termina un sonido?
- ExoPlayer AudioTrack Tartamudez
- Conversión de frames a milisegundos en android
- Cómo convertir archivos .pcm a .wav o .mp3?
- Emitir codificación y decodificación de una grabación de audio al formato G711 (PCMU - uLaw)
¿Cuál es la manera correcta de abordar esto?
- Biblioteca de audio 3D para Android
- AudioTrack Android reproduce sonidos de la carpeta raw
- AudioTrack muestra inconsistencias
- Android Audiotrack haciendo clic en el ruido desde Android 4 ICS
- Android AudioTrack no reproduce todas las muestras
- Android ¿Cómo mezclar dos archivos de audio a un archivo de audio?
- attachAuxEffect y OpenSL ES
- Error SoundPool: no hay más nombres de pista disponibles
- Interrupción del botón de inicio en android
- Cookie no está siendo fijado con phonegap filetransfer upload Response