Cómo separar / liberar la vista de superficie de android mediaplayer
Tengo una instancia mediaplayer ejecutándose en un servicio de fondo. En mi actividad principal tengo una vista de superficie.
Cuando se lanza la actividad y se crea la vista de superficie, me enlazo al servicio y establezco la superficie de visualización del reproductor multimedia en la vista de superficie de mi actividad principal. Hago esto con mPlayer.setSurface(sv.getHolder().getSurface());
- Error de MediaPlayer (-38, 0)
- Obtener la fecha actual en Http Live Streaming Android 3.0+
- Adición de un botón de reproducción de terminación mediante Android L Notification.MediaStyle
- Android: la transmisión de radio AAC + no funciona con MediaPlayer (enlaces Android 4.2.2 / Shoucast)
- Cómo obtener FPS del video reproducido por MediaPlayer cuando se utiliza un SurfaceView?
El video se muestra y todo funciona bien hasta ahora. Cuando se destruye mi vista superficial, en la devolución de llamada surfaceDestroyed()
intento separar la vista superficial del mediaplayer llamando a mPlayer.setSurface(null);
. El problema es que cuando hago esto obtengo un error del mediaplayer (código de error 1).
Así que mi pregunta es esta, después de haber configurado un objeto MediaPlayer y establecer la superficie con mPlayer.setSurface(sv.getHolder().getSurface());
¿Hay una manera de liberar o separar esa vista de superficie sin detener o reinicializar el objeto mediaplayer?
Gracias por adelantado.
- Biblioteca de reproductores multimedia de Android
- Android 2.2 MediaPlayer alternativa para HTTPS y transmisión en directo
- Exoplayer tocando archivos m3u8 en Android
- Android SurfaceView causando parpadeo de la pantalla
- ¿Cómo usar Wake Lock para android mediaplayer?
- Android: guarda una secuencia rtsp (h264) en un archivo mp4
- Error de MediaPlayer de Android (1, -38) y (-38, 0)
- MediaPlayer: No se pudo abrir el archivo en el lado del cliente; Error (-38,0) y más
Puede evitar la pausa de reproducción cuando el usuario navega lejos. Esto le ayudará a continuar la reproducción. Pero hay otro problema: cuando su actividad / fragmento separado de la ventana SurfaceView
se destruyó. Lo que significa que tienes que reinicializar el reproductor multimedia con la instancia recreada de SurfaceView
cuando el usuario vuelve a su aplicación.
- Imágenes borrosas en el navegador de Android y WebView
- Problemas con la previsualización de la cámara Android Distorsión / tamaño