在我的应用程序中,我想显示来自服务器URI路径的视频,在这里,第一次播放视频,当我想第二次播放视频时,视频没有播放,并显示一个弹出窗口,如无法播放此视频
下面是我的错误
E/MediaPlayer: setDataSource: IOException! uri=https://www.merastories.com/VideoFiles/a81d1e5c-3e23-418a-9ba8-fca601d1a966-VID_20180322_152225.mp4
java.io.FileNotFoundException: No content provider: https://www.merastories.com/VideoFiles/a81d1e5c-3e23-418a-9ba8-fca601d1a966-VID_20180322_152225.mp4
at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:1123)
at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:958)
at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:881)
at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1018)
at android.widget.VideoView.openVideo(VideoView.java:437)
at android.widget.VideoView$7.surfaceCreated(VideoView.java:742)
at android.view.SurfaceView.updateWindow(SurfaceView.java:676)
at android.view.SurfaceView$3.onPreDraw(SurfaceView.java:203)
at android.view.ViewTreeObserver.dispatchOnPreDraw(ViewTreeObserver.java:944)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2417)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1321)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6708)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:894)
at android.view.Choreographer.doCallbacks(Choreographer.java:696)
at android.view.Choreographer.doFrame(Choreographer.java:631)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:880)
at android.os.Handler.handleCallback(Handler.java:822)
at android.os.Handler.dispatchMessage(Handler.java:104)
at android.os.Looper.loop(Looper.java:207)
at android.app.ActivityThread.main(ActivityThread.java:5811)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:681)
提前谢谢。
使用ExoPlayer显示来自任意地点的视频“编译'com.google.android.ExoPlayer:ExoPlayer:r2.5.2'”
使用Exoplayer的代码
if (videoUri != null) {
shouldAutoPlay = true;
bandwidthMeter = new DefaultBandwidthMeter();
mediaDataSourceFactory = new DefaultDataSourceFactory(this, Util.getUserAgent(this, MyApplication.getApplication().getResources().getString(R.string.app_name)), (TransferListener<? super DataSource>) bandwidthMeter);
window = new Timeline.Window();
initializePlayer(videoUrl);
}
private void initializePlayer(Uri iVideoUri) {
simpleExoPlayerView = (SimpleExoPlayerView) findViewById(R.id.video_view);
simpleExoPlayerView.requestFocus();
TrackSelection.Factory videoTrackSelectionFactory =
new AdaptiveTrackSelection.Factory(bandwidthMeter);
trackSelector = new DefaultTrackSelector(videoTrackSelectionFactory);
player = ExoPlayerFactory.newSimpleInstance(this, trackSelector);
simpleExoPlayerView.setPlayer(player);
player.setPlayWhenReady(shouldAutoPlay);
DefaultExtractorsFactory extractorsFactory = new DefaultExtractorsFactory();
MediaSource mediaSource = new ExtractorMediaSource(iVideoUri,
mediaDataSourceFactory, extractorsFactory, null, null);
player.prepare(mediaSource);
}
private void releasePlayer() {
if (player != null) {
shouldAutoPlay = player.getPlayWhenReady();
player.release();
player = null;
trackSelector = null;
}
试试这个
String path="https://www.merastories.com/VideoFiles/a81d1e5c-3e23-418a-9ba8-fca601d1a966-VID_20180322_152225.mp4";
Uri uri=Uri.parse(path1);
VideoView videoview=findViewById(R.id.videoview);
video.setVideoURI(uri);
video.start();
问题内容: 无法播放此视频错误… !! 看到图片 截屏 怎么办?按下播放按钮后,它说不能播放此视频。需要解决这个问题。 问题答案: 您好,前天我遇到了同样的问题,几乎尝试了所有方法,但都没有成功。之后,我使用了这个库,并且运行良好。只需遵循几个步骤: 第1步。 将其添加到您的gradle 第2步。 将其添加为xml布局中的视频播放。 第3步。 从此处检查如何在您的班级中使用此库, 我这边还有另外一
问题内容: 我遵循了一些有关结合JavaFX与Swing(JFrame)来播放视频的教程,但是我得到的只是一个黑屏,该视频应该没有任何实际的内容播放,也没有报错。 我在这里做错什么,为什么不播放视频? 我尝试了几个.flv视频,但都不会开始播放(当我在浏览器中打开它们时,它们会播放) 我在装有K-lite完整编解码器包的Windows 8.1 N Pro上运行jre7和jdk1.7.0_45 编辑
用 AVPlayer 类写的简易视频播放器,可以播放来自互联网的视频,支持手势缩放视频。只能播放iPhone支持的视频格式。 目前有两点不足:一是无法调节音量;二是手势放大缩小之后滑动快进快退也不太正常。希望有其他开发者在此基础上继续改进。 [Code4App.com]
下面是我的代码以及报错信息,不知道是哪里错了,这个url地址我测试过也是可以的,在这里先谢谢各位大哥们的解答,小弟感激不尽!!
是否可以从webview播放youtube视频,就像我从浏览器访问youtube网站时视频开始播放时一样,它在全屏播放视频。 以下是我到目前为止的代码: