[J2ME Q&A]MMAPI的Cannot parse this type of AMR异常之讨论

简介:

[J2ME] MMAPICannot parse this type of AMR异常之讨论

郑昀 草拟 20060417

[现象]

首先,我们假设遇到这种错误的人们了解如何使用MMAPI,从而排除代码使用不当问题。

那么在播放3gp媒体文件时遇到java.lang.Exception: Cannot parse this type of AMR的异常错误,如果怀疑是ffmpeg或者其他转换程序造成的话,那么你可以把Nokia手机自己拍摄的录像传到PC机上,这种文件格式就是3gp的,而且肯定是Nokia自己的手机程序能播放的。但是,不幸,我用mmapiNokia S60模拟器上播放这种文件时依然得到java.lang.Exception: Cannot parse this type of AMR错误,没有声音,只有视频。

      

我用下面的命令行:

Ffmpeg转换命令

ffmpeg -y -i test.mpeg -bitexact -vcodec h263 -b 128 -r 15 -s 176x144 -acodec aac -ac 2 -ar 22500 -ab 24 -f 3gp test.3gp

或者

ffmpeg -y -i test.mpeg -ac 1 -acodec amr_nb -ar 8000 -s 176x144 -b 128 -r 15 test.3gp

转换出来的3gp文件,都只能够在Nokia S60模拟器上播放视频,但没有声音,也得到了大量的java.lang.Exception: Cannot parse this type of AMR错误提示。

 

我为什么要怀疑仅仅是S60模拟器的问题呢。因为我把转换好的3gp文件放在我的服务器上,用

简单的播放代码

player = Manager.createPlayer(url);

player.realize();

player.prefetch();

      这种代码在Nokia7610真机上运行播放这个远端资源http://218.249.90.118/toodou/test.3gp ,结果完美无缺地播放了,有声音,有图像

所以说明Nokia 7610真机的MMAPI对于3gp文件中的音频解析是没问题的。出问题的是S60模拟器。

 

[小结]

综上所述,如果你遇到了"Cannot parse this type of AMR"的异常,那么请考虑你用来测试j2me程序的模拟器是不是有问题。不妨到真机上测试。

目录
相关文章
|
16天前
|
JSON JavaScript API
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) 错误分析
本文探讨了Python中处理JSON数据时遇到的`JSONDecodeError`,该错误通常由JSON格式错误或数据源问题引起。解决方法包括检查数据源、使用异常处理机制和调试日志记录。示例代码展示了如何从文件和API读取JSON并处理异常。注意事项涉及验证JSON规范、处理特殊字符和选择合适解析器。通过这些步骤,可以有效解决JSON解码错误,确保数据正确解析。
20 0
|
2月前
|
异构计算 Docker Python
ModelScope问题之加载模型时报错size mismatch如何解决
ModelScope镜像是指用于在ModelScope平台上创建和管理的容器镜像,这些镜像包含用于模型训练和推理的环境和依赖;本合集将说明如何使用ModelScope镜像以及管理镜像的技巧和注意事项。
48 0
|
7月前
|
JSON Kubernetes 算法
什么?修改 JSON 内容居然还有个 JSON PATCH 标准
什么?修改 JSON 内容居然还有个 JSON PATCH 标准
208 0
|
9月前
|
JSON PHP 计算机视觉
php百度人脸识别param[image_template] is null使用BASE64图片类型json_decode返回NULL的处理解决方案
php百度人脸识别param[image_template] is null使用BASE64图片类型json_decode返回NULL的处理解决方案
91 0
|
数据采集 Python
Python 文件上传:如何使用 multipart/form-data 编码和 requests 包
为 Python 标准库没有提供创建 multipart/form-data 编码类型请求的内置方法,这种编码类型允许发送二进制数据和其他表单字段。因此,在 Python 文件上传时,程序必须要么使用第三方库,要么手动构造请求体和头部。其中一个比较简单的方法是使用 requests 包(PyPI 链接),简单快捷的在 Python 3 中使用Requests 包,通过Multipart/Form-Data 编码并上传文件。
659 0
Python 文件上传:如何使用 multipart/form-data 编码和 requests 包
ts重点学习84-unknown类型笔记
ts重点学习84-unknown类型笔记
99 0
ts重点学习83-unknown类型
ts重点学习83-unknown类型
76 0
ts重点学习83-unknown类型
|
JavaScript 前端开发
使用 ABAP 手动解析包含二进制文件的 multipart/form-data 数据时遇到的问题
使用 ABAP 手动解析包含二进制文件的 multipart/form-data 数据时遇到的问题
200 0
使用 ABAP 手动解析包含二进制文件的 multipart/form-data 数据时遇到的问题
|
JavaScript 前端开发
如何使用 ABAP 手动解析 multipart/form-data 格式的数据
如何使用 ABAP 手动解析 multipart/form-data 格式的数据
240 0
如何使用 ABAP 手动解析 multipart/form-data 格式的数据
如何处理UI5一般性错误Cannot read property md of undefined
如何处理UI5一般性错误Cannot read property md of undefined
168 0
如何处理UI5一般性错误Cannot read property md of undefined