一、 概述
MMS彩信大家都看到过,或者都编辑过。在这里,利用一系列的文章来说明彩信的编辑、发送和接收的过程。首先这里,简单描述一下彩信的编辑过程。这是彩信的第一步。
二、 MMS的表述(presentation)语言——SMIL概述
MMS由一系列类似于“power point style”类型的slide组成,由这些slide来组织各种格式的文本、音频、视频信息。这些我们在发送或者接受彩信的时候都有切身的体会,就不说了。
为了把这些多媒体信息组织到一起,通过网络发送,并且这些信息在接收者那里能够保证按照发送者的样式进行播放。这里就需要采用一种技术,用于描述彩信的组织和播放方法。这种方法就是利用SMIL语言。看过这个语言的规范之后,我想大部分熟悉HTML和XML的人都会会心的笑了,的确,这就是SMIL语言。
MMS使用SMIL(Synchronized Multimedia Integration Language)的子集作为表述语言,SMIL是由W3C(world wide web consortium)制定的基于XML的表述语言标准(可以参见附录中之处的RFC文档)。相当于HTML之于web。SMIL语言可以控制多媒体对象的layout和timing(播放时间)。
在初期,MMS只使用了SMIL的简单基础子集,称作“MMS SMIL”。每个MMS信息都是由SMIL表述语言文件组成。在这个文件中所有的slide有相同的layout。每个slide至少包含两个region,一个包含文本,一个包含图像。事实上,每个slide都是一个frame,每个frame包含layout和指向内容(text、images、audio、video)的索引。每个slide的播放周期以秒计算,在每个slide的内部,文本和图像的播放时间可以单独设定。
由于每个移动设备的尺寸不尽相同,所以SMIL被设计成可以根据终端的不同表现形式作以重新安排。简单说来,SMIL具有下列特点:
§ 来自于W3C的规范定义
§ SMIL只是简单地限定了各种message元素在何时、在什么地方显式
§ SMIL文件以<smil>标记开始,接下来是head和body标记,最后以</smil>结束
§ Head标记元素限定了
§ Body标记元素限定了被插入内容的参考索引(references),并且限定了何时、何地播放以及每个元素播放的时间。
下面一段文字来自于IBM,说明了在MMS之外SMIL的广泛用途。
SMIL 2.0 是同步多媒体集成语言(Synchronized Multimedia Integration Language),它已开始成为将多媒体集成到 Web 内容的重要新方法。SMIL 提供基于 XML 的方法来控制多媒体元素的定时和表示,它已开始获得众多大的软件供应商和工具制作商的支持,这使得开发人员使用它变得越来越容易。 SMIL 支持已开始成为 Adobe、Microsoft 以及(也许是最重要的)媒体传递领先者 Real Networks 支持的技术之一。众多较小的供应商已开始提供 SMIL 创作工具和播放器。 在不久的将来,随着对当前 2.0 规范支持的增长,对于任何在工作中需要某种形式的多媒体资产控制的开发人员,使用 SMIL 将成为他们的标准策略。如果把正在增长的工具创建者的名单作为某种指示,那么用 SMIL 构建表示也会变得更简单。 |
为了使用任何 HTML+TIME 元素,开发人员必须在 HTML 标记中声明 XML 名称空间 t:
不同于上述这两个供应商,大多数创作工具和播放器开发人员主要分为两种, § 一种是只关注 SMIL 的完整台式机部署 § 另一种至少要关心一下用于占用资源较小的移动设备的基本 SMIL 2.0 子集。 此外,随着无线网络的发展,关注 MMS 部署的 SMIL 播放器应该对 SMIL 创作有新的考虑。
|
三、 SMIL简单示例
下面给出了一个MMS消息的SMIL示例:
<smil> <head> <meta name="title" content="vacation photos" /> <meta name="author" content="Danny Wyatt" /> <layout> <root-layout width="160" height="120"/> <region id="Image" width="100%" height="80" left="0" top="0" /> <region id="Text" width="100%" height="40" left="0" top="80" /> </layout> </head> <body> <par dur="8s"> <img src="FirstImage.jpg" region="Image" /> <text src="FirstText.txt" region="Text" /> <audio src="FirstSound.amr"/> </par> <par dur="7s"> <img src="SecondImage.jpg" region="Image" /> <text src="SecondText.txt" region="Text" /> <audio src="SecondSound.amr" /> </par> </body> </smil> |
具体的SMIL描述语言的解释可以参见附录的参考文档,那里给出了每种标记的解释说明。
至于在手机软件上实现,也不是很困难的事情。想想看。
利用结构数组,把所有的MMS中的slide存储到其中,最后,结合SMIL语言的规范,把彩信
打包成上述文件的格式,注意,这里,并不需要把具体的多媒体文件内容添加到smil文件中,只需要加在smil文件中,作为附件就可以了。具体的数据的加载,请看下一篇——MMS的打包部分吧!
参考资料:
Nokia:
[N1] How_To_Create_MMS_Services.pdf http://www.forum.nokia.com
[N2] MMSCenterAppDevGuide.pdf http://www.forum.nokia.com
OMA:
[O1] WAP-205-MMSArchOverview-20010425-a.pdf