2012-06-30 83 views
29

我正在嘗試開發基於Android的應用程序,該應用程序可以從直播視頻播放視頻。此直播流使用Wowza Media Server製作。在Android應用程序中播放RTSP流媒體

的網址是:

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

我試圖按照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(); 
    } 
} 

起初,它不能正常工作。

現在開始工作,但在20到30秒後停止。我該如何解決這個問題?

+0

我有使用vlc相同的問題,並在這裏找到了一些東西(這不是解決方案,但有幫助的信息):http://code.google.com/p/android/issues/detail?id=15229 – hungson175

+0

現在給定的網址正在Android 4及以上..但仍然是問題是音頻不連續。這是2秒後播放延遲1秒.. – SJSSoft

+4

你如何解決這個問題? –

回答

1

我找到了解決方案。傳輸應該在Android的首選設置之內。欲瞭解更多詳情,請參閱Supported Media Formats

+4

你是什麼意思「傳輸應該在Android的優先設置」? –

+0

它的意思是「預緩衝」也許。 – Robert

+0

@SJSSoft你是什麼意思?什麼是解決方案? – MSaudi

0

我有與Galaxy Note N7000(ICS 4.0.3)和VLC 2.0.2相同的問題 - 視頻在60  秒後死亡。但是當我轉向VLC媒體播放器1.1.4時,一切都運行良好!

所以有時它取決於媒體服務器。您可以嘗試從YouTube上的RTSP(轉到m.youtube.com,然後右鍵點擊某個視頻 - >複製位置鏈接 - >這就是您需要的RTSP鏈接)。

+0

我找到了解決方案。傳輸應該在Android的優先設置之內。有關更多詳細信息,請參閱http://developer.android.com/guide/appendix/media-formats.html – SJSSoft

+0

本機RTSP堆棧可能未發送GET_PARAMETER以保持連接處於活動狀態......請檢查http:// net7mma.codeplex.com/ – Jay

7

我在ICS 4.x中也遇到同樣的問題。此外,你可以檢查你的流URL是否正常工作。

還請檢查您的代碼與this sample URL

+1

感謝您發佈我們認識的媒體鏈接!非常有幫助 –

+0

它不適用於mp3流,你有沒有試過。我也用Wowza服務器 –

11

使用VideoView是一個很好的解決方案,但我們也可以使用native player來播放RTSP。這是一個例子:

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

記住你的媒體必須Android Supported Media Formatscodecs)創建。

+0

聽起來有趣.......... –

+2

我不明白,這段代碼是否會打開已安裝的應用程序,或者是您的應用程序的視頻顯示應用程序? – user1767754

+0

我正在使用VideoView,但播放\暫停控制器不工作... – andreasperelli

相關問題