快速业务通道

使用J2ME MMAPI开发移动多媒体应用技术 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-18

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

时间:2011-03-06

一、引言

在当前世面上存在着大量的不同媒体格式,并且还有许多新的媒体格式即将被建立。为了存储和传输这些不同的媒体格式,存在着了许多不同格式的存储设备和传输协议,例如大家常使用的媒体存储设备(如CD、VCD以及DVD),有线传输协议(如UDP、HTTP),无线传输协议(如WAP)。

为了使移动装置能够访问这些不同格式的媒体数据,必需为其设计一个规范化的、强大的和可扩充的应用接口。J2ME中就提供了一套为规范的播放和录制音频或视频接口,即Mobile Media API (MMAPI)。

二、MMAPI体系结构

一般情况下,可以将媒体处理过程分解为两个过程:

● 处理媒体数据的传输协议的过程。

● 处理媒体数据内容的过程。

1、处理媒体数据的传输协议的过程

处理传输协议的过程是指从数据源(如一个文件、一个捕获装置或一个流服务)上读取媒体数据内容后,将其传送到媒体数据内容处理的过程。

MMAPI使用Data Source来处理媒体数据的传输协议的过程。一个Data Source知道如何从它的原始位置读取媒体数据并传送给媒体数据处理(Player)。媒体数据可以被保存在不同的位置,从远程服务器到资源文件或者RMS数据库。媒体数据可以从原始位置通过HTTP,像RTP一样的流式传输协议,或者其他机制传输到媒体数据处理(Player)。图一展示了Data Source的工作过程。

使用J2ME MMAPI开发移动多媒体应用技术 - 编程入门网

图一:Data Source工作过程

javax.microedition.media.protocol.DataSource提供了MMAPI的Data Source的支持。

2、处理媒体数据内容的过程

处理媒体数据内容的过程通常需要对媒体数据进行解释和解码,并且还需要认别该媒体的输出设置的类型,如是音频设置或者视频设置。举个例子,当DataSource从某媒体数据源上获取一MP3媒体数据,并将其传送给处理媒体数据内容过程,此过程首先对这个MP3媒体数据进行解析和解码,同时检测该MP3媒体为音频数据,打开装置的音频设备,将解析和解码后的媒体数据直接传送到装置的音频设备缓冲中,由该音频设备根据缓冲区中的数据内容产生音频信号。

MMAPI使用Player来处理媒体数据内容。一个Player是javax.microedition.media.Player接口的一个实现实例,它从Data Source中读取媒体数据、解析和解码数据以及识别媒体输出设备和传送媒体数据到输出设备等。Player提供了一套方法去控制媒体的重放和同步。

MMAPI还提供了一个或多个Controls来调整player的行为,可以在player从媒体转换数据的时候从一个player实例取得并且使用Controls。我们可以通过Player中提供的一些特殊的Controls访问一些特殊的媒体类型。Controls由javax.microedition.media.Control接口实现。

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

时间:2011-03-06

3、Manager

J2ME为了实现对DataSource和Player有效管理,使用了工厂机制,由Manager来负责创建Player和DataSource。这样的机制在JAVA中到处可见,如JDBC中的DriverManager,这里我就不对这种机制进行介绍了。Manager不仅可以从DataSource中创建Player,而且还可以从本地或InputStream中创建Player。图二展示了MMAPI整体结构图。

使用J2ME MMAPI开发移动多媒体应用技术 - 编程入门网

图二:MMAPI整体结构图

三、使用MMAPI

MMAPI提供的类和接口都在javax.microedition.media中,在程序中使用MMAPI时,首先应该引用这些包,否则程序无法编译。

每个MMAPI程序都需要创建一个Player对象,前面我们已经介绍过,MMAPI使用Manager的CreatePlayer函数来创建Player对象,该函数有三个版本,其格式如下:

public static Player createPlayer(String locator) throws IOException, MediaException public static Player createPlayer(DataSource source) throws IOException, MediaException public static Play

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号