在Android应用程序中播放RTSPstream媒体

我正试图开发一个基于Android的应用程序,它可以从一个实时stream播放video。 这个直播stream是使用Wowza Media Server制作的。

url是:

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秒后停止。 我该如何解决这个问题?

Solutions Collecting From Web of "在Android应用程序中播放RTSPstream媒体"

使用VideoView是一个很好的解决scheme,但我们也可以使用native player来播放RTSP。 这是一个例子:

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

请记住,您的媒体必须使用Android支持的媒体格式 ( 编解码器 )创build。

我在ICS 4.x中也遇到同样的问题。 此外,您可以检查您的streamurl是否正常工作。

还请使用此示例url检查您的代码。

我find了解决scheme。 传输应该在Android的首选设置之内。 有关更多详细信息,请参阅支持的媒体格式

我有与Galaxy Note N7000(ICS 4.0.3)和VLC 2.0.2相同的问题 – video在60秒后死亡。 但是当我转向VLC媒体播放器1.1.4,一切正常!

所以有时候取决于媒体服务器。 你可以尝试从YouTube的RTSP(去m.youtube.com,然后右键点击一些video – >复制位置链接 – >这是你需要的RTSP链接)。