J2ME学习(三)——如何播放声音
一般手机支持的声音文件格式为wav、mid和mpg等。具体请查阅你的手机说明文档。
在声音处理中,有很多处理的方式,这里说一下最常用的情况,播放JAR文件中的wav文件。
播放声音文件的流程:
1、 按照一定的格式读取声音文件。
播放JAR文件中的声音文件一般是将声音文件处理成流的形式。示例代码:
InputStream is = this.getClass().getResourceAsStream("/Autorun.wav");
其中Autorun.wav文件位于JAR文件的根目录下,如果位于别的目录,需要加上目录名称,如/res /Autorun.wav。
2、 将读取到的内容传递给播放器。
将流信息传递给播放器,播放器按照一定的格式来进行解码操作,示例代码:
Player player = Manager.createPlayer(is,"audio/x-wav");
其中第一个参数为流对象,第二个参数为声音文件的格式。
3、 播放声音。
使用Player对象的start方法,可以将声音播放出来,示例代码:
player.start();
在播放声音时也可以设定声音播放的次数,可以使用Player类中的setLoopCount方法来实现,具体可查阅API文档。
下面是在NOKIA S60模拟器中测试通过。代码如下:
package sound;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.media.*;
import java.io.*;
public class SoundMIDlet extends MIDlet {
private Player player = null;
/** Constructor */
public SoundMIDlet() {
try{
InputStream is = this.getClass().getResourceAsStream("/Autorun.wav");
player = Manager.createPlayer(is,"audio/x-wav");
}catch(IOException e){
System.out.println("1:" + e);
}catch(MediaException e){
System.out.println("2:" + e);
}catch(Exception e){
System.out.println("3:" + e);
}
}
/** Main method */
public void startApp() {
if(player != null){
try{
player.start();
}catch(MediaException e){
System.out.println("4:" + e);
}
}
}
/** Handle pausing the MIDlet */
public void pauseApp() {
}
/** Handle destroying the MIDlet */
public void destroyApp(boolean unconditional) {
}
}
下一篇:学习J2ME编程需要掌握的七种技术 >>
相关文章:
- · j2me游戏引擎程序结构
- · j2me getProperty
- · J2ME开发环境安装指南
- · J2ME 2D小游戏入门之旅(七) 不足多多,你认为呢?
- · J2ME 2D小游戏入门之旅(六) 计时器和奖惩与评价
- · J2ME 2D小游戏入门之旅(五) 实现爆炸效果、并加入道具导弹
- · J2ME 2D小游戏入门之旅(四) 加入子弹群,实现碰撞运算
- · J2ME开发笔记-键盘响应
- · J2ME 2D小游戏入门之旅(三) 控制飞机的移动
- · J2ME 2D小游戏入门之旅(二)完善周边工具类
- · J2ME 2D小游戏入门之旅(一)游戏的框架
- · J2ME Read Cookies
- · 用EclipseME0.5.5创建一个简单的J2ME程序
- · 关于J2ME与C#通过HTTP进行通信时的乱码问题(源码)
- · J2ME HTTP POST
- · 在J2ME平台上构建你的邮件程序
- · J2me访问dotnetwerbservice
- · Java手机程序设计入门 电子书开放下载(转自CSDN)
- · Antenna 打包 J2ME 程序
- · 利用Java 编写手机应用程序--Motorola iDEN篇(1) (转)
- · 利用Java 编写手机应用程序--Motorola iDEN篇(2) (转)
- · 利用Java 编写手机应用程序(续)
- · 利用Java 编写手机应用程序(转)
- · 值得收藏的几个有用的Javascript脚本
- · Tomcat 的数据库连接池设置与应用
- · JavaScript[对象.属性]集锦之三
- · JavaScript[对象.属性]集锦之二
- · JavaScript[对象.属性]集锦之一
- · JavaScript精简学习4:表单
- · JavaScript精简学习3:图像
- · JavaScript精简学习2:浏览器输出
- · JavaScript精简学习1:基础知识
- · 全面理解Java中的String数据类型
- · Eclipse插件开发之FindBugs插件
- · 深入研究JScript语法——常量和变量
- · JavaScript脚本语言描述:document 文挡对象详解
- · JavaScript面向对象的支持(6)
- · JavaScript面向对象的支持(5)
