2012-06-30 29 views
29

Estoy tratando de desarrollar una aplicación basada en Android, que puede reproducir videos de una transmisión en vivo. Esta transmisión en vivo se produce utilizando Wowza Media Server.Reproducir transmisión RTSP en una aplicación de Android

El URL es:

rtsp://tv.hindiworldtv.com:1935/live/getpun 

He tratado siguiente código en ecliplse:

package com.kalloh.wpa; 

import android.app.Activity; 
import android.content.pm.ActivityInfo; 
import android.net.Uri; 
import android.os.Bundle; 
import android.view.Window; 
import android.widget.MediaController; 
import android.widget.VideoView; 


public class a extends Activity { 

    VideoView videoView; 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     requestWindowFeature(Window.FEATURE_NO_TITLE); 
     setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); 

     //Create a VideoView widget in the layout file 
     //use setContentView method to set content of the activity to the layout file which contains videoView 
     this.setContentView(R.layout.videoplayer); 

     videoView = (VideoView)this.findViewById(R.id.videoView); 

     //add controls to a MediaPlayer like play, pause. 
     MediaController mc = new MediaController(this); 
     videoView.setMediaController(mc); 

     //Set the path of Video or URI 
     videoView.setVideoURI(Uri.parse("rtsp://tv.hindiworldtv.com:1935/live/getpnj")); 
     // 

     //Set the focus 
     videoView.requestFocus(); 
    } 
} 

En un primer momento, que no estaba funcionando.

Ahora comenzó a funcionar, pero se detiene después de 20 a 30 segundos. ¿Como puedo solucionar este problema?

+0

Tengo el mismo problema al usar vlc, y encontré algo aquí (que no es una solución, pero es información útil): http://code.google.com/p/android/issues/detail?id=15229 – hungson175

+0

Ahora el La URL dada está funcionando en Android 4 y superior ... pero aún así el problema es que el audio no es continuo. Es algo así como 1 segundo de retraso después de 2 segundos de juego .. – SJSSoft

+4

¿Cómo resuelves este problema? –

Respuesta

1

Encontré la solución. La transmisión debe estar dentro de la configuración preferida de Android. Para obtener más información, consulte Supported Media Formats.

+4

¿Qué quiere decir con "La transmisión debe estar dentro de la configuración preffered de Android"? –

+0

significa "pre-amortiguado" tal vez. – Robert

+0

@SJSSoft ¿Qué quieres decir con esto? Cual es la solución ? – MSaudi

0

Tuve el mismo problema con Galaxy Note N7000 (ICS 4.0.3) y VLC 2.0.2 - el video muere después de 60   segundos. ¡Pero cuando uso VLC Media Player 1.1.4, todo funciona bien!

Por lo tanto, a veces depende del servidor de medios. Puede probar RTSP desde YouTube (vaya a m.youtube.com y luego haga clic con el botón secundario en algún video -> copiar enlace de ubicación -> ese es el enlace RTSP que necesita).

+0

Encontré la solución. La transmisión debe estar dentro de la configuración preffered de Android. para más detalles, por favor revise @ http://developer.android.com/guide/appendix/media-formats.html – SJSSoft

+0

La pila RTSP nativa puede no estar enviando GET_PARAMETER para mantener viva la conexión ... revise http: // net7mma.codeplex.com/ – Jay

7

También tuve el mismo problema en ICS 4.x. Además, puede verificar si su corriente URL funciona correctamente o no.

También verifique su código con this sample URL.

+1

¡Gracias por publicar un enlace a los medios que sabemos que funciona! Muy útil –

+0

No funciona para la transmisión de mp3, ¿has probado eso? También estoy usando el servidor Wowza –

11

Usar VideoView es una buena solución, pero también podemos usar el native player para reproducir RTSP. Este es un ejemplo:

if (movieurl.startsWith("rtsp://")) { 
    Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(movieurl)); 
    startActivity(intent); 
} 

Tenga en cuenta sus medios de comunicación deben ser creados con Android Supported Media Formats (codecs).

+0

sonido interesante .......... –

+2

no entiendo esto, ¿este código abrirá una aplicación instalada o su aplicación será la de visualización de video? – user1767754

+0

Estoy usando VideoView pero los controladores play \ pause no funcionan ... – andreasperelli

Cuestiones relacionadas