尝试使用媒体播放器播放视频时,我收到此错误:
Unable to to create media player
D/MediaPlayer(13157): create failed:
D/MediaPlayer(13157): java.io.IOException: setDataSourceFD failed.: status=0x80000000
任何人都可以在这里建议问题是什么?
答案 0 :(得分:1)
AssetFileDescriptor afd = this.getAssets().openFd(mediaElementArray.getInteger.valueOf(index)));
myMediaplayer.setDataSource(afd.getFileDescriptor(),afd.getStartOffset(),afd.getLength());
这个工作..实际上在资产文件夹中你存储的是一个大的压缩块,所以你需要分配afd.getStartOffset(),afd.getLength()
也。因为它将告诉你请求开始的源的位置和它的长度是什么,这有助于它计算那个大块中有效的请求文件。
或者其他原因可能是..您引用的文件格式不正确或可能已损坏
答案 1 :(得分:0)
@onsurfaceCreate
使用以下代码播放视频,现在我认为问题有点不同,因为相同的代码适用于低分辨率视频,但对于高分辨率视频,它会提示我错误...“
holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
mediaPlayer = MediaPlayer.create(getApplicationContext(),
R.raw.livewallpaper); mediaPlayer.setDisplay(new
VideoSurfaceHolder(holder));
mediaPlayer.start();