Android:'无法播放此视频'; MediaPlayer和VideoView错误1 -38

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android:'无法播放此视频'; MediaPlayer和VideoView错误1 -38相关的知识,希望对你有一定的参考价值。

我尝试使用下面的代码播放视频。但是,我在运行时遇到了“无法播放此视频”弹出的经典错误。我在搜索android文献和查看其他人的问题时做了尽职调查,但我似乎无法找到问题a)因为在文档中我没有找到MediaPlayer的错误代码(1,-38)和b)我的视频符合Android媒体格式(h.264和MPEG-4)所需的规范。如果有人能帮我指出正确的方向,我真的很感激!谢谢

private void startVideo() {
    Log.v(TAG, "videoUrl = " + mVideoUrl);
    Uri uri = Uri.parse(mVideoUrl);
    mVideo = (VideoView) getView().findViewById(R.id.preview_videoView);
    MediaController mediaController = new MediaController(getActivity());
    mediaController.setAnchorView(mVideo);
    mVideo.setMediaController(mediaController);
    mVideo.setVideoURI(uri);
    mVideo.start();
}

这些是日志

10-07 21:08:38.529    9986-9986/com.trainwithtanya.hiitandroid V/﹕ videoUrl = http://files.parsetfss.com/2bb9a4a0-9f35-4124-a634-d2fa7f8b165e/tfss-ca535209-4b4c-4022-95b8-8f011ed41daf-High%20Knees.mp4
10-07 21:08:38.579   9986-10011/com.trainwithtanya.hiitandroid W/EGL_emulation﹕ eglSurfaceAttrib not implemented
10-07 21:08:38.579   9986-10011/com.trainwithtanya.hiitandroid W/OpenGLRenderer﹕ Failed to set EGL_SWAP_BEHAVIOR on surface 0xa5245c20, error=EGL_SUCCESS
10-07 21:08:38.609    9986-9986/com.trainwithtanya.hiitandroid D/MediaPlayer﹕ Couldn't open file on client side, trying server side
10-07 21:08:39.582    9986-9986/com.trainwithtanya.hiitandroid D/MediaPlayer﹕ getMetadata
10-07 21:08:39.637    9986-9999/com.trainwithtanya.hiitandroid E/MediaPlayer﹕ error (1, -38)
10-07 21:08:39.637    9986-9986/com.trainwithtanya.hiitandroid E/MediaPlayer﹕ Error (1,-38)
10-07 21:08:39.637    9986-9986/com.trainwithtanya.hiitandroid D/VideoView﹕ Error: 1,-38
10-07 21:08:39.650   9986-10000/com.trainwithtanya.hiitandroid E/MediaPlayer﹕ error (1, -38)
10-07 21:08:39.702    9986-9986/com.trainwithtanya.hiitandroid E/MediaPlayer﹕ Error (1,-38)
10-07 21:08:39.702    9986-9986/com.trainwithtanya.hiitandroid D/VideoView﹕ Error: 1,-38

这是视频格式http://i288.photobucket.com/albums/ll185/akhan007/mediaType_zpsjfvfdpto.png

答案

我想,你需要在mVideo.start();里面调用onPrepare

mVideo.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
  public void onPrepared(MediaPlayer mp) {
    mVideo.start();
  }
});
另一答案

重启设备后,此问题已解决。

以上是关于Android:'无法播放此视频'; MediaPlayer和VideoView错误1 -38的主要内容,如果未能解决你的问题,请参考以下文章

ios没有允许继续播放怎么办

无法在videoview android中播放来自url的视频

iOS中的直播格式

如何播放高清 Youtube 视频

Android VideoView 我随机收到“无法播放此视频”错误

如何在android webview中播放视频URL