我正在开发 android 应用程序来流式传输在线视频频道。现在,我想从中流式传输,rtsp://62.220.122.4/tv1
并使用以下代码从该链接流式传输:
import java.io.IOException;
import android.widget.MediaController;
import android.widget.VideoView;
import android.app.Activity;
import android.content.res.Configuration;
import android.media.MediaPlayer;
import android.net.Uri;
import android.os.Bundle;
public class TVStreamerActivity extends Activity {
private VideoView mVideoView = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.videoview);
mVideoView = (VideoView) findViewById(R.id.surface_view);
MediaController mediaController = new MediaController(this);
mediaController.setAnchorView(mVideoView);
mVideoView.setVideoURI(Uri.parse("rtsp://62.220.122.4/tv1"));
mVideoView.setMediaController(mediaController);
mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer arg0) {
mVideoView.start();
Log.e("Runnbale Thread : Run MediaPlayer",
"MediaPlayer Prepared");
}
});
mVideoView.requestFocus();
}
}
在videoview.xml
是:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<android.widget.VideoView
android:id="@+id/surface_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true" />
</RelativeLayout>
一切都很好,但是当我运行应用程序时,过了一会儿我看到了Error (1, -16)
inLogCat
并且消息Sorry, this media cannot be played
显示在 android 设备中。
任何人都可以给我一个解决这个问题的解决方案吗?
编辑:在清单中我设置了android:minSdkVersion="10"
,并且我已经对其进行了测试Galaxy Ace S5830 (Android 2.3.6)
提前致谢 :)