Android reproduce sonidos después del retardo
Tengo que reproducir sonidos en eventos GUI, como hacer clic en los botones, etc. Para ello, llamo al siguiente código nativo de WebView:
MediaPlayer _SoundPlayer = new MediaPlayer(); private void playSound(String sound) { _SoundPlayer.reset(); try { AssetFileDescriptor afd = getAssets().openFd("sound/" + sound + ".mp3"); _SoundPlayer.setDataSource(afd.getFileDescriptor(), afd.getStartOffset(), afd.getLength()); _SoundPlayer.prepare(); _SoundPlayer.start(); } catch (Exception e) { } }
El problema es que hay un retardo ~ 500ms entre un evento y su sonido. ¿Puedo optimizar el sonido de reproducción de alguna manera, tal vez, la creación de una MediaPlayer dedicado instancias para todo tipo de sonido?
- Android 6.0 (Marshmallow): Cómo jugar notas de midi?
- Reproducir audio entre los puntos A y B
- La muerte global de AudioTrack
- Superpowered SDK: Implementación de SuperpoweredRecorder.h y configuración de rutas de grabación
- MediaCodec problemas de muxing de audio / video y Android
Saludos,
- Formato de música Android recomendado - mp3, ogg u otro?
- Código de error del complemento de medios: 1
- No hay sonido en la aplicación Android con Libgdx
- Mute Efecto de audio izquierdo / derecho usando sdk Superpowered
- Octetos PCM de Android
- Edición de audio en Android
- Jugar dos sonidos Simutaneosly
- Android: Necesidad de registrar la entrada de micrófono
Utilice SoundPool
para reproducción de medios de baja latencia, en lugar de MediaPlayer
.
Veo que esto ya tiene una respuesta aceptada, pero me gustaría añadir que no hay una solución completa en este momento: Android en la actualidad tiene latencia de audio muy grande. Los desarrolladores todavía están esperando una buena solución.
Este número se refiere al NDK, pero el problema es general:
- ImageView carga la imagen de alta resolución como muy mala calidad
- ¿Cómo puedo detectar si mi fondo de pantalla en vivo se está ejecutando en la actividad de vista previa / "Establecer papel tapiz" o en la pantalla de inicio