我正在尝试在我正在开发的应用程序中播放 mp4 视频,但是每当我在模拟器和某些设备上运行该应用程序时,我都会收到此错误:
ERROR/MemoryHeapBase(34): 打开/dev/pmem_adsp 时出错:没有那个文件或目录
我不知道这意味着什么,当我用谷歌搜索时,所有这些响应都与自定义构建操作系统有关,而我不想做,也根本不想做的事情。我只想在我的应用程序中播放 mp4 视频,有什么建议吗??顺便说一下,它在 Nexus one 上运行良好。
代码如下:
try {
AssetFileDescriptor fileDesc = getVideoFileDescriptor();
if (fileDesc != null) {
player.setDataSource(fileDesc.getFileDescriptor(), fileDesc.getStartOffset(), fileDesc.getLength());
fileDesc.close();
player.prepare();
player.setDisplay( holder );
player.setOnCompletionListener( this );
player.start();
}
}
catch (Exception e) {
Log.e( Constants.TAG, "Unable to play intro movie", e );
}
最佳答案
AFACT 它正在寻找驱动程序到控制高级数字信号处理器 (adsp) 的设备物理内存 (/dev/pmem_) 的文件系统映射。我想你使用的编解码器之一被传递给这个硬件组件进行解码,但它不存在于文件系统中,因为制造商没有为它编写驱动程序。
我的建议是找到最小的 MP4 文件来重现这个问题,并在 AOSP 错误跟踪器上报告它,连同示例文件确保命名有这个问题的设备。也向制造商报告。
如果可以选择使用软件解码器,那么这很可能会提供可行的解决方法。
关于android mediaplayer 问题播放 mp4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4120156/