首页 | 互联网 | IT动态 | IT培训 | Cisco | Windows | Linux | Java | .Net | Oracle | 软件测试 | C/C++ | 嵌入式开发 | 存储世界 | 服务器
网络设备 | IDC | 安全 | 求职招聘 | 数字网校 | 网页设计 | 平面设计 | 技术专题 | 电子书下载 | 教学视频 | 源码下载 | 搜索 | 博客 | 论坛
中国IT实验室Linux频道
中国IT教育
Google
首页 资讯动态 认证考试 新手入门 核心技术 高级技术 J2EE J2ME Java&XML 开源技术 其他技术 RSS订阅 论坛 专题
您现在的位置: 中国IT实验室 >> Java >> 核心技术 >> JavaMedia >> 正文

使用J2ME MMAPI开发移动多媒体应用技术

  四、播放常见媒体的方法

  1、播放单音与序列音

  如果要播放一个单音一次,可使用:

  Manager.playTone(note,duration,volume);

  如果要播放序列音,则必须使用ToneControl.使用一个特别的定位器来创建一个Player对象,获得ToneControl,设置其命令序列,然后启动播放器,如:

Player p = Manager.createPlayer(Manger.TONE_DEVICE_LOCATOR);
p.realize();
ToneControl tc = (ToneControl)(player.getControl("ToneControl"));
tc.setSequence(new byte[] {ToneControl.C4,8
ToneControl.C4+2,8});
p.start();

  2、播放声讯和MIDI

  声讯是指如WAV这样的声音格式,在这种格式中,数据是各种声讯样本的一个流,它代表着该声讯每一秒钟的片断。MIDI则是一系列的命令,用作多乐器的某种“虚拟合成器”。

  如要播放一段能够通过HTTP访问的声音文件,请使用:

  Player p = Manager.createPlayer("http://something.com/somefile.wav");

  p.start();

  如要播放一段已经被置于MIDlet的JAR文件中的声音文件,需要先了解其MIME类型(如“audio/x-wav”),然后,使用:

  InputStream is = getClass()。getResourceAsStream("/somefile.wav");

  Player p = Manager.createPlayer(is,"audio/x-wav");

  p.start();

  如要播放一段置于RMS中的声音文件,请使用:

RecordStore rs = RecordStore.open("name");
byte[] data = rs.getRecord(id);
ByteArrayInputStream is = new ByteArrayInputStream(data);
Player p = Manager.createPlayer(is,"audio/x-wav");
p.start(); 

  3、播放视频

  播放视频类似于音频播放。然而,需要告诉视频播放器在哪里显示视频信号,因此,需要从视频播放器处得到一个“视频控件”,然后在Form或Canvas中显示视频内容。下面展示一个从Canvas中显示视频的例子:

InputStream is = getClass().getResourceAsStream("/somefile.avi");
Player p = Manager.createPlayer(is,"video/avi");
p.realize();
VideoControl vc = (VideoControl)p.getControl("VideoControl);
if( vc != null )
{
vc.initDisplayMode(VideoControl.USE_DIRECT_VIDEO,cav); //cav为Canvas对象。
vc.setVisible(true);
p.start();
}

上一页  [1] [2] [3] 

【责编:John】

中国IT教育

相关产品和培训
文章评论
 友情推荐链接
 认证培训
 专题推荐

 ·关于Java框架技术专题
 ·XML全攻略技术专题
 ·JAVA开源技术介绍专题
 ·Java嵌入式开发之J2ME技术专题
 ·超前体验 Oracle 11g的5个新特性…
 ·揭密使用VB.NET的五个实用技巧
 ·Oracle和SQL Server常用函数对比专题…
 ·展现C#世界 C#程序设计专题…
 ·Java入门 Tomcat的配置技巧精华专题…
 ·Oracle RMAN物理备份技术详解…
 今日更新
 社区讨论
 博客论点
 频道精选
 Java 频道导航