我正在开发录制视频并保存到网络服务器的应用程序,由于录制的视频尺寸太大,我使用一些压缩技术GiraffeCompressor和SiliCompressor以减少原始视频的大小
应用压缩技术视频大小后,我也将压缩视频文件播放到我的VideoView
直到这里一切都运转良好
当我将压缩视频文件上传到服务器并尝试在VideoView中播放来自网址的视频时,它无法播放。
这是我在VideoView中通过网址播放视频的源代码。 我的VideoView代码非常适合播放另一个视频(来自网址),但它不能播放我的压缩视频文件。
从我的LocalHost服务器播放视频(完美运行)但无法播放Live Hosted Server中的视频。
我的代码有什么问题吗?请帮帮我。
VideoView vv = (VideoView)findViewById(R.id.vv);
vv.setZOrderOnTop(true);
try {
MediaController mediacontroller = new MediaController(this);
mediacontroller.setAnchorView(vv);
Uri uri = Uri.parse(_video_link);
vv.setMediaController(mediacontroller);
vv.setVideoURI(uri);
vv.seekTo(1);
} catch (Exception e) {
Log.e("Error", e.getMessage());
e.printStackTrace();
}
vv.requestFocus();
vv.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
public void onPrepared(MediaPlayer mp) {
mp.setLooping(true);
vv.start();
}
});
vv.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp)
{
vv.resume();
}
});
这是我的logcat
05-24 10:04:04.150 14581-14581/? D/MediaPlayerNative: getMetadata
05-24 10:04:04.151 14581-14581/? I/MediaPlayer: constructor
05-24 10:04:04.156 14581-14581/? I/MediaPlayer: start
05-24 10:04:04.157 14581-14581/? I/MediaPlayer: start
05-24 10:04:04.207 14581-14717/? W/MediaPlayerNative: info/warning (804, -2147479551)
05-24 10:04:04.211 14581-14717/? W/MediaPlayerNative: info/warning (804, -38)
05-24 10:04:04.229 14581-14717/? W/MediaPlayerNative: info/warning (3, 0)
05-24 10:04:04.267 14581-14581/? I/MediaPlayer: constructor
05-24 10:04:04.270 14581-14581/? I/MediaPlayer: setDataSource:http://www.selfilife.com/App/media/priteshvishwakarma/post_video/VIDEO_20180522_122801.mp4
05-24 10:04:04.271 14581-14581/? W/MediaPlayer: Couldn't open http://www.selfilife.com/App/media/priteshvishwakarma/post_video/VIDEO_20180522_122801.mp4: java.io.FileNotFoundException: No content provider: http://www.selfilife.com/App/media/priteshvishwakarma/post_video/VIDEO_20180522_122801.mp4
05-24 10:04:04.271 14581-14581/? I/MediaPlayer: setDataSource:http://www.selfilife.com/App/media/priteshvishwakarma/post_video/VIDEO_20180522_122801.mp4
答案 0 :(得分:0)
请尝试使用
mut
代替vv.setVideoPath(testVideoURL);
可能这可能是必须的。
我只是在猜测,但如果在后端使用自签名的https证书,可能会出现类似的问题。如果可能,请附上您的日志。
UPD。看起来您已经发现问题出在vv.setVideoURI(uri);
库https://github.com/Tourenathan-G5organisation/SiliCompressor/issues/36