[英]How to stream a live video from a URL?
我想将此链接嵌入到我的android应用程序中。 我尝试这样做,但是视频无法加载。 我还收到错误java.io.FileNotFoundException:没有内容提供者:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view = inflater.inflate(R.layout.fragment_cctv, container, false);
try {
String cctv = "http://121.58.202.110:8080/jpeg?cam=4";
VideoView videoView = getView().findViewById(R.id.cctvfragment);
MediaController mediaController = new MediaController(getActivity());
mediaController.setAnchorView(videoView);
Uri video = Uri.parse(cctv);
videoView.setMediaController(null);
videoView.setVideoURI(video);
videoView.start();
videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
}
});
} catch (Exception e) {
// TODO: handle exception
Log.d("CctvDebug", "ERROR LOADING VIDEO");
}
return view;
}
在这个问题上,当涉及到较新且不再更新的URL时,本机视频视图非常有限。 尝试改用Vitamio视频播放器。 这对于各种流功能非常有用。
<io.vov.vitamio.widget.VideoView
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:id="@+id/VideoView"/>
另外,请勿立即调用start()
方法。 仅在OnPreparedListener()
回调上调用它。
Vitamio.isInitialized(getApplicationContext());
mVideoView.setVideoPath(path);
mVideoView.setMediaController(new MediaController(this));
mVideoView.requestFocus();
mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mediaPlayer) {
// optional need Vitamio 4.0
mediaPlayer.setPlaybackSpeed(1.0f);
}
});
或者,您也可以使用KickFlip 。 设置非常容易,
Kickflip.initWithApiKey(API_KEY, API_SECRET);
Kickflip.startBroadcastActivity(this, mBroadcastListener);
编辑:
因此,从昨天开始,我就尝试在视频流上工作。 我无法在vitamio上解决它(不幸的是)。 尽管尝试使用您提供的网址,并通过vlc应用将其流式传输。 尽管我还没有尝试过,但是您也许可以使用LibVLC 。 我最终使用了webview并进行了一些设置,以使其看起来不像使用webview。
webView = findViewById(R.id.wvWebview);
webView.loadUrl("http://121.58.202.110:8080/jpeg?cam=4");
webView.getSettings().setLoadWithOverviewMode(true);
webView.getSettings().setUseWideViewPort(true);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.