2012-04-13 8 views
4

Ich versuche, eine sehr einfache Anwendung zu schreiben, die einfach versucht, ein Video abzuspielen, das von einem RTSP-Server gestreamt wird. Ich hatte irgendwo gelesen, dass die VideoView-Komponente RTSP Streams verarbeiten kann. Also habe ich den Code auf folgende Weise geschrieben.RTSP-Stream in VideoView in Android-Anwendung

vv = (VideoView) findViewById(R.id.videoView1); 
    mc = new MediaController(getApplicationContext()); 
    vv.setVideoURI(Uri.parse(url)); 
    vv.setMediaController(mc); 
    vv.requestFocus(); 

    vv.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { 

     public void onPrepared(MediaPlayer mp) { 
      vv.start(); 

     } 
    }); 

Die URL String ist aus folgendem Format rtsp: //192.168.1.136: 8554/mercykilling.mkv

Mein Problem ist, dass ich einen Fehler halten, wie unten

V bekommen/MediaPlayer (16501): Nachricht empfangen msg = 100, ext 1 = 1, ext2 = -18

Kann jemand irgendwelche Hinweise zu diesem Thema geben?

Antwort

0

MKV unterstützt nur ab Version 4.0+ Take a look

Und eine Sache immer im Kopf behalten, dass RTSP-Streaming zu unterstützen, müssen Sie RTSP-Server starten. Andernfalls können Sie diese Datei nicht starten.

2

vorherige FAQ

vorherige background

General Comment - RTSP/RTP unterstützt die Aufnahme einer sehr großen Anzahl von zugrunde liegenden Kodierungen und Spezifikationen für die Verpackung von innen Paketen Medienspur und im nicht sicher, dass der Standard-Android libStageFright libs unterstützen es tatsächlich in all seinen Permutationen.

ich im ICS Proben in der sdk unter API/media/Video sah ...

ApiDemos \ src \ com \ Beispiel \ android \ api \ medien \ MediaPlayerDemo_Video.java

einen Blick in Ihrem SDK und auf die Kommentare in dem obigen Beispiel ...

 case STREAM_VIDEO: 
      /* 
      * TODO: Set path variable to progressive streamable mp4 or 
      * 3gpp format URL. Http protocol should be used. 
      * Mediaplayer can only play "progressive streamable 
      * contents" which basically means: 1. the movie atom has to 
      * precede all the media data atoms. 2. The clip has to be 
      * reasonably interleaved. 
      * 
      */ 

Diese Kommentare tun NICHT Unterstützung, dass die Idee des android 4.0 Mediaplayer von RTSP-Streams spielen.

Wenn Sie einen generischen RTSP-Stream testen möchten, würde ich vorschlagen, dass Sie einen Feed von Youtube greifen und versuchen, die URL für den format = 1-Stream abzuspielen, der das RTSP-Protokoll sein wird. Beispiel here

0

Sie die Bibliothek @http://net7mma.codeplex.com/ verwenden können (von denen ich bin der Autor)

es eine einfache Art und Weise in Android zu ermöglichen, die Wiedergabe von Rtsp oder Rtp Medien zur Verfügung stellen kann.