首页
JAVA
.NET
PHP
Ruby
JavaScript
交流论坛
MIDP 2.0 Media API为游戏增加音效
介绍
几乎是MIDP(Mobile Information Device Profile)1.0一出来的时候,基于它的一个简单的
视频
播放器(第三方厂商开发)就同时发布了。 这个播放器只支持MPEG格式,而且也并不复杂,但它展示了观看和使用媒体(本例是
视频
)的能力,这一点大大激发了程序员们的兴趣。不过这个早期的
视频
播放器并不是为程序员设计,所以要想在软件中使用播放
视频
的功能,必须要么拷贝所有代码(这样做可能有道德上的存疑)要么自己写所有的相关代码。由此看出对播放各类媒体的API的需求显然是存在的,但仅仅为播放
视频
开发API并不能实现开发API的所有用途。于是当移动媒体API(MMAPI)专家委员会开始致力于明确移动媒体概念的时候,他们首先需要为各种移动设备,范围从简单的蜂窝电话到PDA以及平板式电脑,提供可供参考的媒体种类。最终他们完成了两类不同的API设置:
• 移动媒体API(MMAPI),为拥有高级声音和多媒体性能的移动设备设计。
• 媒体API(MIDP2.0),适用于有限的移动设备(仅仅提供音频)。
经过以上的发展历程,令人感到奇怪的是API的第一个版本似乎并不支持
视频
,不过为此有个很好的解释:一些MIDP设备的内存和处理器性能太有限。事实上对MIDP2.0媒体API的需求很容易勾勒,它必须提供对以下功能的支持:
• 音阶的产生
• “开始播放”、“停止”、“暂停”之类基础的控制
• 媒体特效控制,比如音量
• 内容数量查询
MIDP2.0媒体API赋予你创建、播放简单旋律(只有音节)和音频的功能。提到声音首先进入我们脑海的手机铃声,但其实API和MIDP涉及的全部相关概念有相同的限制条件:它只能在Java的环境下使用,所以你不能为你的手机创作新的铃声。但是除此以外对于其他需要比铃声更复杂声音的游戏或者应用,API就提供了巨大的好处。
通用架构
API由三个部分:Manager,Player和Control,和两个包:javax.microedition.media,javax.microedition.media.control构成。Media包中包含Manager和可能用到的Players,control包中包含了所有的Controls。
API中最重要的类是Manager。Manager的用处包括,创建各种不同类型的Players(用于播放音频,
视频
等等),获得各种支持协议和内容格式,播放简单的曲调。Player类用来播放各类格式的多媒体内容。Control是一个用来控制Players的接口,Control控制诸如音量、音色、音调之类的东西。
图1 Manager, Player, Control东西类间调用关系说明
创建一个播放器与创建一个网络连接类似,根据不同情况,需要调用Manager中的一或两个方法完成。
以下代码根据Internet上的音频文件创建了一个Player,然后播放该音频:
try {
Player audioPlayer = Manager.createPlayer
("http://www.nullplace.com/music.wav");
audioPlayer.start();
} catch (IOException ioe) {
} catch (MediaException me) { }
相关主题
开发实例:JSP中实现全文检索
用WebWork、JSP、Velocity建立注册页面
小窗口大学问--玩转弹出窗口
JSP连接mysql数据库攻略
JSP程序员成长全计划
用xmlhttp和Java session监听改善站内消息系统
解决MVC下分页显示的问题
新手入门经典:Jsp环境配置
WIN2000 + PHP + MYSQL + TOMCAT + JSP 完全整合安装手册
JSP入门讲座
JSP由浅入深(1)熟悉JSP服务器
JSP编程进度条设计实例
ASP与JSP的比较
JDBC数据库访问例子
JSP与Servlet
WebLogic的初步研究(2):结构篇
JSP由浅入深——目录
JAVA/JSP学习系列之十四(JavaScript改变Applet状态)(译)
JAVA/JSP学习系列之十三(Applet调用JavaScript函数)(译)
JAVA/JSP学习系列之十二(JSP生成jpeg图片用于投票)
精彩推荐