在 CDC 设备 j2me 上播放音频

Posted

技术标签:

【中文标题】在 CDC 设备 j2me 上播放音频【英文标题】:Playing audio on CDC device j2me 【发布时间】:2011-11-16 11:43:47 【问题描述】:

我有一个为 CDC 设备构建的 j2me 应用程序。我已经使用个人资料来显示 UI。 但是现在我需要播放音频。 j2me 中的 AFAIK 我只能通过 J2me MMAPI 播放音频,即 JSR135。 但是在我的设备上我没有这个。那么有人可以为我提供输入,我应该如何在我的设备上移植这个 jsr。它是一个基于 linux 的 ARM 设备。我自己建立和编译了 cdc 和个人资料,并移植到了设备上。但现在我找不到移动媒体 api 的源代码。

或者除了 MMAPI 之外,您还有其他播放音频的选项吗?

【问题讨论】:

【参考方案1】:

我找不到移动媒体 api 的源代码

据我所知,以上内容可在一个开源项目 PhoneME 中使用。 Player、Manager、Control 等 MMAPI 类显示在下面的 SVN 代码库链接中:

svn / components / jsr135 / trunk / src / share / core / javax / microedition / media

【讨论】:

感谢您的回复。我确实下载了代码,编译 n 构建了我需要的 cvm。现在我正在尝试编写一个播放音频的 cdc 应用程序。每次我尝试运行它抛出的应用程序时,java.lang.NoClassDefFoundError: javax.microedition.media.Player 这是在我的 x86 机器上,甚至不在目标设备上!我什至将 jsr135.jar 添加到项目的 j2me 平台集!不知道它为什么会这样:( 有趣。您提到您已经构建并编译了 cdc 和个人资料 - 您之前是否碰巧看到过类似的错误? 是的,但是只有当我的任何库都没有到位时才会出现此类错误。 我明白了。那个jsr135.jar你已经建好了,你检查过它的内容吗?里面有文件夹 javax/microedition/media 吗?里面有Player.class文件吗? 抱歉!忙于客户端演示。因为您怀疑个人资料中的某些文件丢失。尝试再次构建。失败。我的 GNUMakefile: J2ME_CLASSLIB=basis QT_TARGET_DIR=/ home/pavan/Desktop/24-9 QTEMBEDDED=true USE_QT_FB=false USE_JUMP=true J​​DK_HOME=/usr/lib/jvm/java-6-sun CVM_PRELOAD_LIB=true CVM_COMPILER_INCOMPATIBLE=false CVM_DEFINES += -DAAPCS CVM_DEBUG=true CVM_TERSEOUTPUT=true USE_JSR135 =true J​​SR_DIR=//pathtojsr135 但是,我在构建个人配置文件时出现以下错误 /linux-arm-generic/./btclasses/java/awt/Button.class 依赖缺失!

以上是关于在 CDC 设备 j2me 上播放音频的主要内容,如果未能解决你的问题,请参考以下文章

如何通过 J2ME 中的扬声器播放音频

音频无法在所有 iOS 设备上播放

通过 SIP 连接的 J2ME 音频流

录制的音频无法在设备上播放,但不能在 iOS 模拟器上播放

修改 SpeakHere 以录制设备上播放的音频

我可以让我的设备(闹钟)在 Google 家庭音响上播放音频文件吗