programacion - Cuál es la diferencia entre MediaPlayer y VideoView en Android
manual de programacion android pdf (4)
El VideoPlayer es un envoltorio para MediaPlayer y SurfaceView, es más fácil de implementar un reproductor de video con VideoView que con un MediaPlayer, si los archivos de video se almacenan en el almacenamiento interno de la aplicación usan el proveedor de contenido o los guardan como legibles, de lo contrario lo hará no trabajo
Me preguntaba si hay una diferencia entre ellos cuando se trata de transmitir videos.
Sé que VideoView
se puede usar para transmitir y para qué sirve Mediaplayer
. Por lo que sé, MediaPlayer
puede hacer lo mismo que VideoView
¿verdad?
¿Alguien puede darme la respuesta?
Y si quiero transmitir video desde el servidor usando RTSP a Android, ¿con cuál debo comenzar? VideoView
o MediaPlayer
?
¿Cualquier sugerencia?
Estaba haciendo la misma pregunta y, como entendí por lo que Mark (CommonsWare) advised sobre numerosos hilos aquí, VideoView es un contenedor (200 cientos de líneas de código) para MediaPlayer y SurfaceView para proporcionar controles incrustados.
También amablemente compartió algunos ejemplos:
https://github.com/commonsguy/vidtry/blob/master/src/com/commonsware/android/vidtry/Player.java
y ejemplo de sdk de Android http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/media/MediaPlayerDemo.html
Además, algunas personas tenían problemas para reproducir video en el emulador, así que asegúrese de probarlo en el dispositivo real si tiene problemas.
Lea el enlace a continuación, lo ayudará y resolverá su pregunta.
VideoView es esencialmente una Vista que está vinculada a un MediaPlayer para que sea mucho más fácil implementar videos en su aplicación. Si no está haciendo mucho trabajo personalizado, VideoView es el camino a seguir.
Dicho esto, también puede pasar el enlace RTSP al sistema para usar la aplicación más adecuada para reproducir el video, lo que es aún más fácil de hacer:
String url = "rtsp://yourrtsplink.com/blah";
Uri uri = Uri.parse(url);
startActivity(new Intent(Intent.ACTION_VIEW, uri));
El video debe probarse en un dispositivo, ya que la reproducción del emulador es deficiente, y también debe tener en cuenta que RTSP requiere que se abra un puerto adicional, que está bloqueado por algunos firewalls.