日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

Android

 jemeen 2012-03-30
 一、概述

MMS彩信大家都看到過,或者都編輯過。在這里,利用一系列的文章來說明彩信的編輯、發(fā)送和接收的過程。首先這里,簡(jiǎn)單描述一下彩信的編輯過程。這是彩信的第一步。

二、MMS的表述(presentation)語言——SMIL概述

MMS由一系列類似于“power point style”類型的slide組成,由這些slide來組織各種格式的文本、音頻、視頻信息。這些我們?cè)诎l(fā)送或者接受彩信的時(shí)候都有切身的體會(huì),就不說了。

為了把這些多媒體信息組織到一起,通過網(wǎng)絡(luò)發(fā)送,并且這些信息在接收者那里能夠保證按照發(fā)送者的樣式進(jìn)行播放。這里就需要采用一種技術(shù),用于描述彩信的組織和播放方法。這種方法就是利用SMIL語言。看過這個(gè)語言的規(guī)范之后,我想大部分熟悉HTMLXML的人都會(huì)會(huì)心的笑了,的確,這就是SMIL語言。

MMS使用SMILSynchronized Multimedia Integration Language)的子集作為表述語言,SMIL是由W3Cworld wide web consortium)制定的基于XML的表述語言標(biāo)準(zhǔn)(可以參見附錄中之處的RFC文檔)。相當(dāng)于HTML之于webSMIL語言可以控制多媒體對(duì)象的layouttiming(播放時(shí)間)。

在初期,MMS只使用了SMIL的簡(jiǎn)單基礎(chǔ)子集,稱作“MMS SMIL”。每個(gè)MMS信息都是由SMIL表述語言文件組成。在這個(gè)文件中所有的slide有相同的layout。每個(gè)slide至少包含兩個(gè)region,一個(gè)包含文本,一個(gè)包含圖像。事實(shí)上,每個(gè)slide都是一個(gè)frame,每個(gè)frame包含layout和指向內(nèi)容(textimages、audio、video)的索引。每個(gè)slide的播放周期以秒計(jì)算,在每個(gè)slide的內(nèi)部,文本和圖像的播放時(shí)間可以單獨(dú)設(shè)定。

由于每個(gè)移動(dòng)設(shè)備的尺寸不盡相同,所以SMIL被設(shè)計(jì)成可以根據(jù)終端的不同表現(xiàn)形式作以重新安排。簡(jiǎn)單說來,SMIL具有下列特點(diǎn):

§來自于W3C的規(guī)范定義

§SMIL只是簡(jiǎn)單地限定了各種message元素在何時(shí)、在什么地方顯式

§SMIL文件以<smil>標(biāo)記開始,接下來是headbody標(biāo)記,最后以</smil>結(jié)束

§Head標(biāo)記元素限定了

§Body標(biāo)記元素限定了被插入內(nèi)容的參考索引(references),并且限定了何時(shí)、何地播放以及每個(gè)元素播放的時(shí)間。

下面一段文字來自于IBM,說明了在MMS之外SMIL的廣泛用途。

SMIL 2.0是同步多媒體集成語言(Synchronized Multimedia Integration Language),它已開始成為將多媒體集成到Web 內(nèi)容的重要新方法。SMIL 提供基于 XML 的方法來控制多媒體元素的定時(shí)和表示,它已開始獲得眾多大的軟件供應(yīng)商和工具制作商的支持,這使得開發(fā)人員使用它變得越來越容易。

SMIL支持已開始成為 Adobe、Microsoft以及(也許是最重要的)媒體傳遞領(lǐng)先者 Real Networks 支持的技術(shù)之一。眾多較小的供應(yīng)商已開始提供SMIL 創(chuàng)作工具和播放器。

在不久的將來,隨著對(duì)當(dāng)前2.0 規(guī)范支持的增長(zhǎng),對(duì)于任何在工作中需要某種形式的多媒體資產(chǎn)控制的開發(fā)人員,使用 SMIL將成為他們的標(biāo)準(zhǔn)策略。如果把正在增長(zhǎng)的工具創(chuàng)建者的名單作為某種指示,那么用SMIL 構(gòu)建表示也會(huì)變得更簡(jiǎn)單。

 

正如前面提到的那樣,最廣泛的 SMIL 2.0 實(shí)現(xiàn)可能來自 Real NetworksRealOne Player支持 SMIL 2.0 語言概要文件(SMIL 2.0 Language Profile),它結(jié)合了SMIL 支持的大多數(shù)(盡管不是全部)模塊。除了支持大多數(shù)標(biāo)準(zhǔn) SMIL 模塊以外,RealNetworks 還開發(fā)了自己的幾個(gè) SMIL 擴(kuò)展。要使用這些擴(kuò)展,開發(fā)人員必須遵守標(biāo)準(zhǔn) XML 聲明.

通過使用少量的一系列基于 SMIL XML 元素和屬性,Microsoft HTML+TIME HTML 頁面添加了定時(shí)和多媒體支持。為了給 HTML 文檔添加定時(shí),開發(fā)人員要向現(xiàn)有的 HTML 元素添加新屬性。創(chuàng)建新元素是為了使向HTML 頁面添加媒體變得簡(jiǎn)單。

為了使用任何HTML+TIME 元素,開發(fā)人員必須在 HTML 標(biāo)記中聲明 XML 名稱空間 t

 

 

不同于上述這兩個(gè)供應(yīng)商,大多數(shù)創(chuàng)作工具和播放器開發(fā)人員主要分為兩種,

§           一種是只關(guān)注 SMIL 的完整臺(tái)式機(jī)部署

§           另一種至少要關(guān)心一下用于占用資源較小的移動(dòng)設(shè)備的基本SMIL 2.0 子集。

此外,隨著無線網(wǎng)絡(luò)的發(fā)展,關(guān)注MMS 部署的 SMIL 播放器應(yīng)該對(duì) SMIL 創(chuàng)作有新的考慮。

 

 

三、          SMIL簡(jiǎn)單示例

下面給出了一個(gè)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描述語言的解釋可以參見附錄的參考文檔,那里給出了每種標(biāo)記的解釋說明。

至于在手機(jī)軟件上實(shí)現(xiàn),也不是很困難的事情。想想看。

利用結(jié)構(gòu)數(shù)組,把所有的MMS中的slide存儲(chǔ)到其中,最后,結(jié)合SMIL語言的規(guī)范,把彩信

打包成上述文件的格式,注意,這里,并不需要把具體的多媒體文件內(nèi)容添加到smil文件中,只需要加在smil文件中,作為附件就可以了。具體的數(shù)據(jù)的加載,請(qǐng)看下一篇——MMS的打包部分吧!

 

參考資料:

Nokia:

       [N1] How_To_Create_MMS_Services.pdf http://www.forum./

       [N2] MMSCenterAppDevGuide.pdf  http://www.forum./

OMA:

      [O1] WAP-205-MMSArchOverview-20010425-a.pdf



一、MMS的封裝(Encapsulation)——MIME

對(duì)于使用SMIL語言描述的MMS,在通過無線網(wǎng)絡(luò)發(fā)送的時(shí)候,我們必須通過某種方式把SMIL和附屬的內(nèi)容包裝在一起,一邊能夠以一個(gè)unit(整體)的形式發(fā)送出去,以便SMIL文件各個(gè)部分內(nèi)容的reference變得有效。

這個(gè)解決的辦法就是MIMEMultipart Internet Mail Extensions)規(guī)范,這個(gè)規(guī)范的最初作用是在emailplain text的主體中加入不同的內(nèi)容。比如說,發(fā)送帶有附件的email,這個(gè)時(shí)候你就使用了MIME的規(guī)范。MIME負(fù)責(zé)把所有的獨(dú)立的文本、圖像、聲音、視頻內(nèi)容以及SMIL文件本身捆綁在一起,這個(gè)規(guī)范稱為MIME Encapsulation Aggregate Documents,用于告訴接受的終端這個(gè)MMS的內(nèi)容是相互相關(guān)(related to one another)并且相互參考的(referenced to one another)。

1.       MIME封裝示例

下面是根據(jù)RFC文檔給出的MIME的封裝示例:

Content-Type: multipart/related; boundary="boundary-example";

       type="text/html"

 

 

--boundary-example

 

 

Content-Type: text/html; charset="US-ASCII"

 

 

... ... <IMG SRC="fiction1/fiction2"> ... ...

... ... <IMG SRC="cid:97116092811xyz@foo.bar.net"> ... ...

 

 

--boundary-example

 

 

Content-Type: image/gif

Content-ID: <97116092511xyz@foo.bar.net>

Content-Location: fiction1/fiction2

--boundary-example

Content-Type: image/gif

Content-ID: <97116092811xyz@foo.bar.net>

Content-Location: fiction1/fiction3

 

 

--boundary-example--

 

§Content-type

位于信息頭部的content-type用于通知接收的終端消息的各個(gè)不同部分的內(nèi)容是相互關(guān)聯(lián)的、并且可能是相互索引的(refer to one another)。

§Boundary

Boundary用于分割各個(gè)不同的消息part。第一個(gè)部分是一個(gè)html類型的消息,這里只是取得了相關(guān)的部分。第二和第三部分省略了實(shí)際的images圖像的實(shí)體。

§Location and ID

HTML文本部分我們可以看到,我們可以利用兩種方式來索引消息內(nèi)容的不同部分。這兩種不同的方式是content-ID content – Location。

如果一部分的消息體想通過content-ID指向(refer to)另外一部分的消息體,可以使用“CID”.

關(guān)于MIME的部分的信息可以參考附錄中列出的RFC文檔(RFC2387RFC2357)。

2.       利用MIME封裝MMS的示例

下面給出一個(gè)利用MIME封裝MMS的示例:

Content-Type: multipart/related;

Type="application/smil"; Start="<AAAA>";boundary="----=_Part_24362_271418.1110357304160"

 

 

------=_Part_24362_271418.1110357304160

content-type: text/x-vCalendar;Charset=UTF-8;Name="slide1.vcs"

content-id: <slide1.vcs>

content-location: slide1.vcs

Content-Transfer-Encoding: base64

 

 

QkVHSU46VkNBTEVOREFSDQpWRVJTSU9OOjEuMA0KQkVHSU46VkVWRU5UDQpEVFNUQVJUOjIwMDUw

MzA4VDA5MDAwMFoNCkRURU5EOjIwMDUwMzA4VDEwMDAwMFoNClNVTU1BUlk7Q0hBUlNFVD1VVEYt

ODtFTkNPRElORz1RVU9URUQtUFJJTlRBQkxFOuaYr+WQpg0KQ0FURUdPUklFUztDSEFSU0VUPVVU

Ri04O0VOQ09ESU5HPVFVT1RFRC1QUklOVEFCTEU6QVBQT0lOVE1FTlRTDQpFTkQ6VkVWRU5UDQpF

TkQ6VkNBTEVOREFSDQo=

 

 

 

 

------=_Part_24362_271418.1110357304160

content-type: application/smil;Charset=UTF-8;Name="20050309163706.smil"

content-id: <AAAA>

Content-Transfer-Encoding: base64

 

 

PHNtaWw+PGhlYWQ+PGxheW91dD48cm9vdC1sYXlvdXQgd2lkdGg9IjE3NiIgaGVpZ2h0PSIxNzQi

Lz48cmVnaW9uIGlkPSJmdWxsIiB3aWR0aD0iMTc2IiBoZWlnaHQ9IjE3NCIgbGVmdD0iMCIgdG9w

PSIwIiAvPjwvbGF5b3V0PjwvaGVhZD48Ym9keT48cGFyIGR1cj0iNXMiPjx0ZXh0IHNyYz0ic2xp

ZGUxLnZjcyIgcmVnaW9uPSJmdWxsIiAvPjwvcGFyPjwvYm9keT48L3NtaWw+

 

 

------=_Part_24362_271418.1110357304160--

下圖給出的圖示說明各個(gè)部分之間的關(guān)系:

 

3.       一個(gè)完整的MIME封裝MMS示例

下表給出了一個(gè)完整的MIME封裝MMS的示例:

MIME Object

Date:Fri, 14 Dec 2001 15:13:21-0500 (EST)

X-Mms-Expiry: Thu,20 Dec 2001 21:52:25-0500 (EST)

X-Mms-Delivery-Time:Wed, 19 Dec 2001 21:52:25-0800 (PST)

X-Mms-Priority:Normal

X-Mms-Sender-visibility: Show

X-Mms-Message-Class: Personal

X-Mms-Delivery-report: yes

X-Mms-3GPP-MM3-Version: 4.3.0

From: mms-email-sample@sample-email.ericsson.com

To: +12345@mmc.sample-mms.ericsson.com

Subject: Sample SMIL

Mime-Version: 1.0

Content-Type: multipart/related; boundary="----

=_MIME_Boundary_MMS_Reference_Sample_001"

MIME Headers

"----=_MIME_Boundary_MMS_Reference_Sample_001"

MIME Start boundary

Content-ID: <index.smil>

Content-Type: application/smil; charset="US-ASCII"; name=index.smil

<smil>

<head>

<layout><root-layout/>

<region id="region1_2" top="0" left="0" height="100%" width="100%"/>

<region id="region1_1" top="0" left="0" height="100%" width="100%"/>

</layout>

</head>

<body>

<par dur="2000ms">

<text src="Cid:image" region="region1_2"/>

</par>

<par dur="2000ms">

<img src="Cid:txt" region="region1_1" fit="fill"/>

</par>

</body>

</smil>

SMIL document

"----=_MIME_Boundary_MMS_Reference_Sample_001"

MIME boundary

Content-Type: text/plain; name=mms.txt

Content-Transfer-Encoding: 7bit

Content-ID: <txt>

Content-Disposition: attachment; filename=mms.txt

This is a sample MMS message, for use as a reference.

Text Document

"----=_MIME_Boundary_MMS_Reference_Sample_001"

MIME boundary

Content-Type: image/gif; name=sample.gif

Content-Transfer-Encoding: base64

Content-ID: <image>

Content-Disposition: attachment; filename=sample.gif

 

 

R0lGODlhZQBQAPcAAOYeAClUpyAtb/XNjlo8RqoUFHSa2ZCKjHiCWrzf/2iQ1J

m66Yeq4cXm/6ys

 

 

<entire encoded image not shown for the sake of brevity>

kBiJkjiJlFiJlniJmJiJmriJnNiJnviJoBiKogh5AQEAOw==

Image

"----=_MIME_Boundary_MMS_Reference_Sample_001"

MIME boundary

 

二、MMSMIME結(jié)構(gòu)

綜述來說,每個(gè)MMS信息按照MIME規(guī)范的基本結(jié)構(gòu)如下圖所示:

 

從圖示看出,每個(gè)MMS都是由MMS HeaderMMS Body組成,MMS Header根據(jù)WAP-209協(xié)議和RFC2387的規(guī)定,由一系列的域組成,下表列出了部分的域(給出的示范的內(nèi)容表示),其中有些是強(qiáng)制必須實(shí)現(xiàn)的(用黑體表示)。

X-Mms-Message-Type

m-send-req

X-Mms-Transaction-ID

1234

X-Mms-MMS-Version

1.0

Date

星期五, 18三月 2005 06:43:40 GMT

From

mms-editor@toolkit

To

33333333333333

Cc

33333333333333

Bcc

 

 

Subject

test

X-Mms-Message-Class

Personal

X-Mms-Expiry

星期六, 19三月 2005 06:43:40 GMT

X-Mms-Delivery-Time

星期五, 18三月 2005 06:43:40 GMT

X-Mms-Priority

low

X-Mms-Sender-Visibility

Show

X-Mms-Delivery-Report

No

X-Mms-Read-Reply

No

Content-Type

application/vnd.wap.multipart.related; start="<presentation-part>" type="application/smil"

1. MMS承載的內(nèi)容elements

MMS只是用于發(fā)送消息的載體,根據(jù)規(guī)范,我們可以發(fā)送各種不同類型的內(nèi)容元素。這些內(nèi)容元素組成MMS中各個(gè)不同的部分。根據(jù)元素類型的不容,每個(gè)part Header部分的content-type也不盡相同。下面給以示例:

文本:
文本包含很多類型,普通文本的類型可以表示為——text/plain,而vcard類型的文本表示為text/x-vCard。 
靜態(tài)圖像:靜態(tài)圖像存在各種不同的類型,根據(jù)不同的編碼方式由不同的后綴名表示。如image/gifimage/jpeg。

音效是什么呢?沒有介紹,應(yīng)該是audio/mid 吧.. 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多