J2ME:预取错误 -5。媒体异常

Posted

技术标签:

【中文标题】J2ME:预取错误 -5。媒体异常【英文标题】:J2ME: Prefetch error -5. MediaException 【发布时间】:2009-07-16 17:44:09 【问题描述】:

在诺基亚 N73 上执行以下代码时出现 MediaException(预取错误:-5)。它在模拟器中运行良好,我之前在同一部手机上成功尝试过同样的事情。现在唯一的区别是我使用的是 NetBeans 而不是 Eclipse 来构建和部署。

inputPlayer = Manager.createPlayer("capture://audio?encoding=pcm&rate=4000&bits=16&channels=1");
inputPlayer.realize();
inputPlayer.prefetch();
inputPlayer.start();

我想知道它是否与安全相关,就像 Eclipse 一样,我总是在电话上收到安全提示。使用 NetBeans 我没有得到任何提示,只有异常。

【问题讨论】:

这个“capture://audio?encoding=pcm&rate=4000&bits=16&channels=1”是否可以在其他设备上使用?只是想知道 【参考方案1】:

-5 是 Symbian 错误代码 KErrNotSupported。

N73 基于 Symbian OS v9.1

当 JSR-135 实现找不到更好的方式来表达错误时,本机(来自 Symbian C++)错误代码有时会传播到 Java 异常中。

【讨论】:

【参考方案2】:

确保您没有持有任何其他玩家参考资料。也就是说,您没有尝试预取第二个播放器对象,而第一个播放器对象尚未释放/关闭。此外,尤其是在诺基亚上,尝试在单独的线程上释放它,因为已知在同一线程上关闭/释放播放器会导致一些问题。创作也一样。

【讨论】:

我找到了解决方法:使用“capture://audio”调用 c​​reateplayer 只能正常工作...

以上是关于J2ME:预取错误 -5。媒体异常的主要内容,如果未能解决你的问题,请参考以下文章

预取对齐内存

如何使用 UICollectionView 选择要预取的项目数?

如何以编程方式禁用硬件预取?

如何关闭windows中缓存的预取?

非临时负载和硬件预取器,它们可以一起工作吗?

非临时负载和硬件预取器,它们可以一起工作吗?