乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      Android

       jemeen 2012-03-30
       一、概述

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

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

      MMS由一系列類似于“power point style”類型的slide組成,由這些slide來組織各種格式的文本、音頻、視頻信息。這些我們在發(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之于web。SMIL語言可以控制多媒體對象的layouttiming(播放時(shí)間)。

      在初期,MMS只使用了SMIL的簡單基礎(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)容(text、images、audio、video)的索引。每個(gè)slide的播放周期以秒計(jì)算,在每個(gè)slide的內(nèi)部,文本和圖像的播放時(shí)間可以單獨(dú)設(shè)定。

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

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

      §SMIL只是簡單地限定了各種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)作工具和播放器。

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

       

      正如前面提到的那樣,最廣泛的 SMIL 2.0 實(shí)現(xiàn)可能來自 Real Networks。RealOne 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 頁面添加媒體變得簡單。

      為了使用任何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)該對 SMIL 創(chuàng)作有新的考慮。

       

       

      三、          SMIL簡單示例

      下面給出了一個(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ù)的加載,請看下一篇——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

      對于使用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)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多