RTSP en directo en Android
Trato de hacer una transmisión en vivo en Android. He intentado muchas maneras, pero ninguno de ellos funcionó. ¿Cómo puedo hacerlo?
Este es un ejemplo de RTSP:
- Android VideoView guardar RTSP secuencia
- Wowza .mp3 RTSP stream en android
- Cómo transmitir vídeo desde Http o RTSP Url en android
- reproducir streaming en VideoView, convertir url a rtsp
- Reduciendo el retraso en la aplicación de streaming de vídeo directo wifi
mMediaPlayer = new MediaPlayer(); mMediaPlayer.setDataSource(KralStream.getTvStreamUrl().toString()); mMediaPlayer.setDisplay(holder); mMediaPlayer.prepareAsync(); mMediaPlayer.setOnBufferingUpdateListener(this); mMediaPlayer.setOnCompletionListener(this); mMediaPlayer.setOnPreparedListener(this); mMediaPlayer.setOnVideoSizeChangedListener(this); mMediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); mMediaPlayer.setLooping(true);
Excepción: 05-26 10: 22: 46.186:
ERROR / MediaPlayerService (10157):
Crear PVPlayer 05-26 10: 23: 06.382:
ERROR / PlayerDriver (10157): Comando
PLAYER_INIT completado con un error o
Info -1 05-26 10: 23: 06.382:
ERROR / MediaPlayer (23800): error (1,
-1) 05-26 10: 23: 06.382: ERROR / MediaPlayer (23800): Error (1, -1)
RTSP:
VideoView videoView = (VideoView)findViewById(R.id.videoView1); Uri uri = Uri.parse("rtsp://strm-3.tr.medianova.tv/rkraltv/rkraltv"); videoView.setVideoURI(uri); videoView.start();
Da este mensaje:
"Lo siento, este video
No puede haber jugado. "Excepciones; 05-26
10: 40: 08.979:
ERROR / MediaPlayerService (10157):
Crear PVPlayer 05-26 10: 40: 09.188:
INFO / ActivityManager (10163): mostrado
actividad
Com.giantrabbit.nagare / .KralTvNow: 433
Ms (total 433 ms) 05 – 26 10: 40: 11,702:
WARN / PowerManagerService (10163): Temporizador
0x3-> 0x3 | 0x1 05-26 10: 40: 29.061:
WARN / MediaPlayer (24284): información / advertencia
(1, 26) 05 – 26 10: 40: 29,061:
INFO / MediaPlayer (24284): Información (1,26)
05-26 10: 40: 29.100:
ERROR / PlayerDriver (10157): Comando
PLAYER_INIT completado con un error o
Info -1 05-26 10: 40: 29.104:
ERROR / MediaPlayer (24284): error (1,
-1) 05-26 10: 40: 29.108: ERROR / MediaPlayer (24284): Error (1, -1)
RTSP:
mPreview = (SurfaceView) findViewById(R.id.surface); holder = mPreview.getHolder(); holder.addCallback(this); holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS); extras = getIntent().getExtras(); public void play() { try { Uri video = KralStream.getTvStreamUrl(); Toast.makeText(this, video.toString(), Toast.LENGTH_SHORT).show(); mMediaPlayer = new MediaPlayer(); mMediaPlayer.setDataSource(path); mMediaPlayer.setDisplay(holder); mMediaPlayer.prepare(); mMediaPlayer.setOnBufferingUpdateListener(this); mMediaPlayer.setOnCompletionListener(this); mMediaPlayer.setOnPreparedListener(this); mMediaPlayer.setOnVideoSizeChangedListener(this); mMediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); } catch (Exception e) { Log.e(TAG, "error: " + e.getMessage(), e); } }
Excepción:
05-26 10: 36: 57.589:
ERROR / MediaPlayerService (10157):
Crear PVPlayer 05-26 10: 37: 20.542:
ERROR / PlayerDriver (10157): Comando
PLAYER_INIT completado con un error o
Info -1 05-26 10: 37: 20.542:
ERROR / MediaPlayer (24240): error (1,
-1) 05-26 10: 37: 20.565: WARN / PlayerDriver (10157):
PVMFInfoErrorHandlingComplete 05-26
10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): error:
Error de preparación .: status = 0x1 05-26
10: 37: 20.682:
ERROR / MediaPlayerDemo (24240):
Java.io.IOException: Preparar falló .:
Estado = 0x1 05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Android.media.MediaPlayer.prepare (Nativo
Método) 05 – 26 10: 37: 20,682:
ERROR / MediaPlayerDemo (24240): en
Com.giantrabbit.nagare.KralTvNow.play (KralTvNow.java:162)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Es.wikipedia.org
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Android.view.SurfaceView.updateWindow (SurfaceView.java:536)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Android.view.SurfaceView.dispatchDraw (SurfaceView.java:339)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Android.view.ViewGroup.drawChild (ViewGroup.java:1638)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Android.view.ViewGroup.dispatchDraw (ViewGroup.java:1367)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Android.view.ViewGroup.drawChild (ViewGroup.java:1638)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Android.view.ViewGroup.dispatchDraw (ViewGroup.java:1367)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Android.view.View.draw (View.java:6796)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Android.widget.FrameLayout.draw (FrameLayout.java:352)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Android.view.ViewGroup.drawChild (ViewGroup.java:1640)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Android.view.ViewGroup.dispatchDraw (ViewGroup.java:1367)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Android.view.View.draw (View.java:6796)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Android.widget.FrameLayout.draw (FrameLayout.java:352)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Com.android.internal.policy.impl.PhoneWindow $ DecorView.draw (PhoneWindow.java:1894)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Android.view.ViewRoot.draw (ViewRoot.java:1407)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Android.view.ViewRoot.performTraversals (ViewRoot.java:1163)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Android.view.ViewRoot.handleMessage (ViewRoot.java:1727)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Android.os.Handler.dispatchMessage (Handler.java:99)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Android.os.Looper.loop (Looper.java:123)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Android.app.ActivityThread.main (ActivityThread.java:4627)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Java.lang.reflect.Method.invokeNative (Native
Método) 05 – 26 10: 37: 20,682:
ERROR / MediaPlayerDemo (24240): en
Java.lang.reflect.Method.invoke (Method.java:521)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:871)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Com.android.internal.os.ZygoteInit.main (ZygoteInit.java:629)
05-26 10: 37: 20.682:
ERROR / MediaPlayerDemo (24240): en
Dalvik.system.NativeStart.main (Nativo
Método) 05 – 26 10: 37: 20,737:
INFO / MediaPlayer (24240): Información (1,26)
05-26 10: 37: 20.737:
ERROR / MediaPlayer (24240): Error (1, -1)
05-26 10: 37: 20.868:
INFO / ActivityManager (10163): mostrado
actividad
Com.giantrabbit.nagare / .KralTvNow:
25864 ms (total 25864 ms) 05-26
10: 37: 23,777:
WARN / PowerManagerService (10163): Temporizador
0x3-> 0x3 | 0x1
Este es un ejemplo de HTTP:
mMediaPlayer = new MediaPlayer(); mMediaPlayer.setDataSource("http://ikral.garantisistem.com:1935/ikral/smil:kral.smil/playlist.m3u8"); mMediaPlayer.setDisplay(holder); mMediaPlayer.prepareAsync(); mMediaPlayer.setOnBufferingUpdateListener(this); mMediaPlayer.setOnCompletionListener(this); mMediaPlayer.setOnPreparedListener(this); mMediaPlayer.setOnVideoSizeChangedListener(this); mMediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); mMediaPlayer.setLooping(true);
Excepción:
05-26 10: 16: 24.276:
ERROR / MediaPlayerService (10157):
Crear PVPlayer 05-26 10: 16: 24.292:
ERROR / (10157): IIIIIII Interior
Constructor de
PVMFMemoryBufferWriteDataStreamImpl
05-26 10: 16: 24.346:
INFORMACIÓN / PlayerDriver (10157): buffering
(100) 05 – 26 10: 16: 24,346:
ERROR / (10157): IIIIIII Interior
Constructor de
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.346: ERROR / (10157):
IIIIIII Interior Constructor de
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.346: ERROR / (10157):
IIIIIII Interior Constructor de
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.346: ERROR / (10157):
IIIIIII Interior Constructor de
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.346: ERROR / (10157):
IIIIIII Interior Constructor de
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.346: ERROR / (10157):
IIIIIII Interior Constructor de
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.346: ERROR / (10157):
IIIIIII Interior Constructor de
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.346: ERROR / (10157):
IIIIIII Interior Constructor de
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.346: ERROR / (10157):
IIIIIII Interior Constructor de
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.346: ERROR / (10157):
IIIIIII Interior Constructor de
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.346: ERROR / (10157):
IIIIIII Interior Constructor de
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.346: ERROR / (10157):
IIIIIII Interior Constructor de
PVMFMemoryBufferReadDataStreamImpl
05-26 10: 16: 24.350:
WARN / MediaPlayer (23736): información / advertencia
(1, 26) 05 – 26 10: 16: 24,354:
ERROR / PlayerDriver (10157): Comando
PLAYER_INIT completado con un error o
Info -10 05-26 10: 16: 24.354:
ERROR / MediaPlayer (23736): error (-10,
-10) 05-26 10: 16: 24.354: WARN / PlayerDriver (10157):
PVMFInfoErrorHandlingComplete 05-26
10: 16: 24.393: INFO / MediaPlayer (23736):
Información (1,26) 05-26 10: 16: 24,393:
ERROR / MediaPlayer (23736): Error
(-10, -10)
HTTP:
VideoView videoView = (VideoView)findViewById(R.id.videoView1); Uri uri = Uri.parse("http://ikral.garantisistem.com:1935/ikral/smil:kral.smil/playlist.m3u8"); videoView.setVideoURI(uri); videoView.start();
Da el mensaje:
"Lo siento, este video no se puede reproducir."
- Android 4.1 - RTSP con VideoView y MediaController
- RTSP streaming con resultados de video HTML5 en el servidor murió error (100,0) en Android
- Libstreaming errores (búfer de decodificador no lo suficientemente grande, decodificador no decodificar nada)
- Servidor para transmitir vídeo RTSP a Android
- Reducir la memoria intermedia de vídeo
- En android, ¿cómo puedo guardar un flujo RTSP en un archivo mientras lo reproduzco?
- Webview de Android: vídeo en el área de pantalla personalizada como una superposición para el streaming de vídeo en vivo de rtsp
- ¿Android 4.x soporta streaming RTSP sobre TCP?
Agregue permiso de red en su archivo AndroidManifest.xml como este
<uses-permission android:name="android.permission.INTERNET" />
Android puede manejar corrientes RTSP sin flash. Intenta escribir la URL directamente en la barra de direcciones del navegador y el reproductor externo se abrirá automáticamente para reproducir la URL.
Si da un error, entonces tendrá que comprobar el formato de vídeo compatible con Android. Puede comprobar el ejemplo de URL de secuencia RTSP desde Wowza Media Server . Consulte la URL de la solución de problemas de flujo RTSP de Wowza Media Server: http://www.wowza.com/forums/content.php?62-RTSP-streaming-troubleshooting-guide-%28RTSP-RTP-playback%29 . Espero que esto ayude.
Es por el formato del video. Intenta convertirlo en 3GP .
- Patrón de diseño para capturar excepciones no controladas en AsyncTask
- Android – cómo forzar a que el niño reemplace el método padre que tiene código