S40使用J2ME录音

需要使用J2ME的javax.microedition.media里的类。

首先要定义一个Player对象和一个RemoteControl对象

Player p;
RecordControl rc;

开始录音:

try {
	p = Manager.createPlayer("capture://audio");//初始化player,说明是捕捉音频。Manager是javax.microedition.media.Manager类。
	p.realize();
	rc = (RecordControl)p.getControl("RecordControl");
	output = new ByteArrayOutputStream();//将录音的内容输出到流
	rc.setRecordStream(output);
	rc.startRecord();
	p.start();
} catch (IOException e) {
	e.printStackTrace();
} catch (MediaException e) {
	e.printStackTrace();
}

结束录音:

        p.stop();
	rc.stopRecord();
	rc.commit();
	p.close();
也可以将录音的内容直接输出到文件,使用RemoteControl的setRecordLocation()方法。

一些网上的文章说在createPlayer()的参数里,可以填一些例如声音类型、码率之类的参数,但是实际在机器上操作的时候似乎不可以,会报错。不知道是否与机器有关。


关于该API的简单功能可参考文章:http://www.qqread.com/j2ee/u220823.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值