標籤:
DLNA 架構在機頂盒上播放雲端儲存檔案的實現
摘要: 隨著越來越多的數位裝置,音像裝置等對 UPNP 協議的支援和普及,業界對多媒體內容提供服務的需求越越來越強烈,為了實現遵循 UPNP 協議和 DLNA 架構來對多媒體內容提供服務,多媒體伺服器 DMS 就成了唯一能夠擔當該需求的裝置。本文著重介紹如何基於 DLNA 架構,來實現雲端媒體檔案在機頂盒上的播放。
關鍵詞: DLNA , UPNP , DMS ,雲端儲存, fuse
1 、 DLNA 簡介
數字生活網路聯盟 Digital Living Network Alliance (DLNA) 是一個由消費量類電子、行動電話,以及電腦廠商組成的聯盟組織。該組織的目標在於建立一套可以使得各廠商的產品互相串連,互相適應的工業標準,從而為消費者實現數字化生活。目前同盟成員包括飛利浦,三星,松下,惠普,索尼,微軟,英特爾和諾基亞在內的眾多業界領袖。
2 、 DMS 簡介
Digital Media Server ( DMS )數位媒體伺服器,提供了媒體檔案的擷取、錄製、儲存以及作為源頭的能力。當然,有需要的話,多媒體檔案的著作權保護機制也可以被包含在內。 DMS 將會提供多媒體檔案伺服的能力,提供諸如多種數位媒體播放裝置的直接擷取內容以及播放能力。這類型的裝置包含了機頂盒、錄放影機、具有多媒體伺服器功能的個人電腦、內含硬碟的家庭劇院、廣播接收器、影像擷取裝置等嵌入式裝置。
3 、 UPNP 簡介
UPnP 全名是 Universal Plug and Play ,主要是微軟在推行的一個標準。簡單的來說, UPnP 最大的願景就是希望任何裝置 ( 注意,是 ” 任何裝置 ” ,像是電視,電腦,音響,冰箱,鬧鐘,電燈 ….等 ) 只要一接上網路,所有在網路上的裝置馬上就能知道有“新裝置加入”,這些裝置彼此之間能互相溝通,更能直接使用或控制它,一切都不需要設定,完全的 Plug and Play 。舉個例子來說: 以前如果家中買了一台印表機,當你想要讓這台印表機在家中的電腦都能用的時候,你需要先安裝印表機,然後需要設定印表機共用,然後在去其他台電腦安裝這台網際網路共用印表機,是不是很麻煩?如果你有 10 台電腦,想想看每台都要去設定的話,是不是很恐怖呢。現在,有了 UPnP 後,只要你家的電腦跟印表機都支援 UPnP ,當你一將新買的印表機接上去的時候,所有在網路上的電腦都會發現有一台印表機可用,一切的設定都不需要,馬上就能直接用了,完全 Plug and Play !聽起來是不是很棒,這就是 UPnP 希望打造的環境,讓一切簡化,提升我們的生活品質,因此 UPnP 主要的訴求是打造“家庭網路 (Home Network) ”的設定自動化。
4 、雲端儲存簡介
雲端儲存是在雲端運算 (cloud computing) 概念上延伸和發展出來的一個新的概念,是指通過叢集應用、網格技術或Distributed File System等功能,將網路中大量各種不同類型的存放裝置通過應用軟體集合起來協同工作,共同對外提供資料存放區和業務訪問功能的一個系統。 當雲端運算系統運算和處理的核心是大量資料的儲存和管理時,雲端運算系統中就需要配置大量的存放裝置,那麼雲端運算系統就轉變成為一個雲端儲存系統,所以雲端儲存是一個以資料存放區和管理為核心的雲端運算系統。
5 、DLNA 的資料轉送機制
DLNA 標準是基於原有網路架構上的中界層,主要是能讓支援此層定義的裝置可以相互溝通,而不需另外做其他的設定動作,以1.0 版的DLNA 標準來說,就支援了Ethernet(IEEE803.3u) 與Wi-Fi(802.11 a/b/g) ,作為DLNA標準裝置,網路的支援算是必備的。
至於在各裝置之間的相互偵測,則是採用UPnP 標準。DMP 裝置通過UPNP 機制來搜尋網路上可相互匹配的DMS 裝置,成功串連之後便可以進行後續的播放或傳輸動作。這個動作是全自動的,因此使用者無須進行任何幹涉。而在媒體內容的發現方面,也同樣是採用UPnP 機制。而在傳輸上,目前仍僅止於支援HTTP 標準協議,隨後的版本才會將RTP(Real-time Transport Protocol) 傳輸協議加入。
而在可傳輸的多媒體格式上,則分為必備支援以及可自選支援兩方面,在必備支援方面,圖形檔案格式為JPG、音效格式為LPCM ,影片格式為 MPEG-2 。而在可選擇格式方面,圖形檔案為PNG 、GIF 與TIFF ,音效壓縮格式則是AAC 、AC-3 、ATRAC3Plus 、MP3 、WMA9 等等,至於在影片壓縮格式上,則是包含了MPEG-1、MPEG-4 、AVC 以及WMV9 等等,由於目前網路傳輸速度還有待突破,因此廠商大多也偏向於支援 高壓縮比的壓縮格式。
至於在產品測試認證上,DLNA 提供了標準的規範,以及可供廠商自行測試的軟體工具,初步確認過可以正常執行以後,再送往DLNA 認證機構進行認證,認證之後便可獲頒DLNA 標章。
DLNA 的遠景相當被看好,目前用於解決裝置溝通的方式也相當合宜,只是目前DLNA 在標準規範方面還有些許不足,比如說在多媒體檔案的數字著作權保護機制上仍相當缺乏,而DLNA 網路也缺乏安全防護能力,也容易讓駭客或病毒、木馬等入侵,造成整個DLNA 環境的隱憂。加上網路架構對於即 時影音播放方面的能力還有待加強,即使加入了QoS 機制,但是在總體頻寬未有突破之前( 比如說新的802.11n 標準通過) ,同時進行多方的高畫質影音播 放,仍是相當難以達成的。
6 、 DLNA 必須具備的功能
6.1 播放多媒體檔案
6.2 把多媒體資料上傳到伺服器
6.3 把多媒體資料從伺服器複製到當前裝置
6.4 把當前裝置上的媒體資源共用給其他裝置
7 、 DLNA 與雲端儲存系統的嫁接
DLNA 架構設計的目標是在同一個區域網路中實現裝置的隨插即用和共用,目前的傳輸協議為 Wi-Fi(802.11 a/b/g) ,基於 HTTP 進行傳輸,還不支援 RTP 。而雲端儲存系統是基於互連網的,要讓互連網上的檔案可以通過 DLNA 在本地進行發現和播放,需要相應的技術實現,本文通過 fuse 把雲端的檔案對應為本地系統檔案。 DMS 通過掃描映射過來的本地系統檔案來發現雲端的檔案,然後才能共用出來被其他裝置發現。其播放過程也是與本地檔案播放機制一致。 DMS 不知道其掃描的目錄檔案是在雲端的檔案。這就造成了 DMS 掃描媒體檔案資訊的時間較長,給使用者體驗帶來問題。
8 、 DMS 擷取媒體檔案的機制
DMS 啟動時,會掃描本地系統目錄,遍曆所有的檔案,然後挨個讀取檔案資訊,判斷其媒體格式,目前 DMS 支援的媒體格式如下所示:
媒體類型 |
必須支援的格式 |
可選支援的格式 |
Image |
JPEG |
PNG, GIF, TIFF |
Audio |
LPCM |
AC3, AAC, MP3,WMA9, ATRAC3plus |
Video |
MPEG2 |
MPEG1, MPEG4,VC1, MPV1 |
DMS 為了擷取所有的媒體檔案,必須讀取檔案,判斷其檔案格式,另外還得根據檔案格式讀取特定的資訊,比如著作權資訊,作者,如果是MP3 檔案還要讀取歌詞等,如果是TS 檔案還要讀取檔案的主要畫面格,以便產生可以快進快退的索引檔案。通過上面DMS 掃描檔案的機制可以看出,當這些操作是在本地檔案上的話,時間延遲可以在接受的範圍內,如果是互連網上的檔案,則使用者體驗會直線下降,因為DMS 擷取這些資訊的同時會造成從雲端下載整個檔案,這個時候,網路成為了瓶頸。針對這個問題,我們必須詳細分析其原理,找到解決網路成為瓶頸的問題。
9 、通過機頂盒播放雲端檔案存在的問題
目前在機頂盒上,由於受到網路的局限,播放雲端的檔案延遲時間較長。眾所周知,IPTV 已經普及,IPTV 也是播放互連網上的視頻,在網路速度達到2Mbps/ 秒的情況下也可以做到流暢播放,這證明可以通過改進DMS 處理檔案的機制,做到流暢播放雲端的檔案。從目前在機頂盒上測試的情況來看,除了掃描媒體檔案的時間過長外,播放媒體檔案的速度相當流暢,而掃描過程造成對雲端檔案的下載是一個瓶頸,如果DMS 只擷取檔案的基本資料,針對雲端儲存檔案進行一些特殊的處理,我們完全可以做到提高使用者體驗,流暢播放雲端儲存檔案的目的。
10 、最佳化改進方法
1 、DMS 掃描目錄時,只擷取檔案的基本資料,比如檔案大小,檔案名稱,檔案建立時間,檔案尾碼名等。而不擷取檔案的內容資訊,盡量減少掃描過程耗費的時間。
2 、由播放器來識別媒體檔案的格式,可播放則播放,不可播放則提示使用者。
這樣處理後,可以把DMS 掃描媒體檔案的時間限制在一個很小的範圍內,播放器播放時在正式的讀取檔案內容資訊進行播放處理。
http://blog.csdn.net/langeldep/article/details/6462489
DLNA架構在機頂盒上播放雲端儲存檔案的實現