閻庚耀
(黑龍江工商學院,黑龍江 哈爾濱 150000)
面對移動增值用戶規模的不斷拓展,移動終端種類及數量的不斷增加,我國移動增值服務市場規模呈現出良好的發展前景。在這一背景下,傳媒產業發展環境進一步優化,針對平面媒體的政策逐步放寬,廣電媒體市場空間逐步擴大的同時科技含量也不斷提升,傳媒業逐步向產業化方向發展。TD-SCDMA是一種成本低、幅射小、頻譜利用率高的新技術,在TD-SCDMA 技術標準基礎上誕生的G3 服務品牌可在廣告終端這一載體的基礎上實現在線的廣告發布與遠程的廣告發布管理,可為廣告傳媒的信息化發展與有效控制提供支持。
G3 傳媒系統共包含兩部分框架結構,一是G3 傳媒平臺,二是G3 傳媒廣告終端。G3 傳媒系統的終端與平臺采用的是http、ftp 兩種格式的下載接口,以HTTP 與XML作為通信接口,而資源管理程序與通信接口程序、用戶界面程序之間均采用的是DBUS消息接口。G3 傳媒系統的通信接口程序主要任務是與平臺之間共享信息,接收平臺發布的任務并負責任務執行。資源管理程序是資源文件下載的主要程序,負責升級終端軟件、維護管理終端素材與文件,且具備磁盤空間維護功能。播放界面程序是播放布局展現的主體,布局區域播放控制、用戶之間的信息交互均由其控制。視頻播放程序除了負責視頻播放控制以外,還擔負播放時間進度及中止控制等其他基本控制任務。G3 傳媒系統的架構圖示詳見圖1。
G3 終端系統應用的是跨平臺C++圖形用戶界面應用程序開發框架——Qt。其由三部分組成,一是跨平臺類庫,二是集成開發工具,三是跨平臺集成開發環境。Qt 框架支持下,G3 終端系統的終端設計得以實現。環境搭建時,應用qt-opensource-src-4.5.2.tar.gz程序獲取qvfb 工具,在此軟件支持下分別完成x86 平臺編譯及arm 開發板的交叉編譯,前者編譯完成后可在qvfb 支持下進行運行效果監查,后者則可為開發板創建Qt 動態鏈接庫,進而確保Qt 程序交叉編譯的有效實現。qvfb 工具的獲取需要安裝X11 版QT,需在/home/username/qtedev 目錄之下放置開發環境搭建、交叉編譯的Qt,并預先建設tools 目錄,且需在/home/username/software 目錄設置源碼安裝包。qvfb 工具獲取過程如下:
qt-xll-opensource-src-4.5.2.tar.gz 軟件下載體完成后在目錄software 下解壓:
獲取到解壓軟件目錄后,再編譯與安裝此軟件:
編譯與安裝操作執行后,在qt-xll-opensource-src-4.5.2/bin 下會生成qvfb,需將此工具及相關文件復制到/home/username/qtedev/tools 目錄之下:
此步驟完成后,便完成了qvfb 工具的獲取。而后再在工具支持下,分別對86 平臺與arm平臺分別進行一次編譯即可。
傳媒系統終端界面模板布局時,以TLD作為描述協議的組織方式,在TLD 支持下,對終端屏幕布局進行描述并完成布局內容相關屬性表達。基于模板編輯組織的內容即為節目,節目描述文件可分別定義節目ID、模板ID、播放列表。各布局區域與播放列表描述文件一一對應,且播放內容與順序均由此文件定義,以分段組織播放時間段作為時間線,各時間段能夠完成起始播放時間及時間跨度的靈活定義。列表發布時可將相對應的資源同步發布到多個時間段,并按順序循環播放相同時間段的內容。
由于相同時段及不同時段的內容是基于布局及時間表線播放列表的組織實現播放的,需在G3 終端的解析與控制功能支持下將平臺上時間線播放列表解析出來,并按播放列表的順序控制內容播放。G3 終端依據以SMIL文本格式構建的MPL文本格式,以XML形式完成播放文件描述,由此實現對多媒體播放功能的控制。同時,此終端的資源文件描述也是基于XML形式完成的,播放文件MPL格式及資源文件格式分別見表1 與表2 所示。
G3 終端顯示及播放功能的實現需要以Framelauncher框架調用程序為支持。此框架程序涵蓋三種類型的widget程序:一是幻燈片播放程序slideshow,二是馬燈文字程序scrollintext,三是視頻播放程序movieplayer。播放框架調用程序在完成XML布局文件解析之后,便可實現widget 布局參數的定義。G3 終端預先設置了部分媒體資源,終端首次啟動及首次資源下載時,預置的媒體會自動播放,資源下載完成后便會自動播放最后下載的媒體。
2.5.1 終端播放。G3 終端的內容播放需要以任務優先級策略為依據,對各個播放任務流程進行執行。首先要對最高優先級播放任務進行檢查而后執行此任務,執行播放時會實時檢測優先級任務是否更新,檢測任務開始時間,若有更高優先級產生則會暫停當前播放任務,轉為執行新更新的最高優先級任務,執行的同時繼續檢測優先級更新情況。如果沒有新的最高優先級產生則會繼續執行當前任務直至內容播放完成。之后再回到初始環節,對當前最高優先級播放任務進行檢查。終端播放的具體流程詳見圖2。
2.5.2 終端下載素材。G3 終端在接收到播放任務后,會按照任務要求下載相關素材,執行時,首先會對播放任務進行編輯,而后自動分配素材URL 下載地址,并向終端下達播放任務,而后由終端負責播放任務解析,并以UID為依據對播放任務相關素材列表進行檢查,此素材內容存在則下載流程結束,若本機無此內容繼續后續下載。即在播放任務指定的URL地址下載相關素材,下載成功繼續執行其他流程,若URL 對應服務器無此素材,則自動跳轉至其他服務器下載,內容下載成功后繼續其他流程。素材下載完成后會將下載報告上傳至G3 平臺,至此素材下載流程執行結束。
2.5.3 播放異常處理流程。(1)播放內容缺失的處理。播放任務時,終端先對播放任務為依據檢查內容的齊全性,若內容缺失,由終端重新獲取,獲取成功正常播放,若未成功獲取,則播放其他有效任務,并定期下載缺失內容,下載成功后再繼續播放。若多次重試下載都不成功,會發出預警,由人工排查流程,故障解決后再繼續播放。具體處理流程見圖3 所示。(2)播放內容錯誤的處理。播放內容錯誤異常的處理時,首先由終端檢查內容的完整性、來源的合法性。而后結合檢查結果按照圖4 所示流程進行播放內容錯誤異常的處理。
3.1.1 單屏布局播放列表測試。單屏布局播放列表測試時,需準備一套分屏布局模板,要求此模板只涵蓋一種類型的播放列表,分別在播放列表中只有圖片或視頻一種素材,或同時涵蓋兩種素材時對其進行測試。若program 中有圖片或視頻素材時終端屏幕顯示及圖片切換均正常,能夠按順序、無遺漏的切換或顯示播放列表中的圖片,說明測試結果正常。同時,還可準備一套涵蓋不合法xml 文件格式的播放列表進行測試,以了解其觀察播放調度情況。若可越過不合法播放列表正常進行其他合法播放列表播放,視為合格。
3.1.2 多分屏布局播放列表測試。檢測時,需準備一套兩分屏布局模板,其中涵蓋全屏視頻、圖片、滾動文字三種播放列表,播放列表中的一個surface 同時涵蓋視頻與圖片program,另一個surface 包含一個或多個文本,包含無文本素材或素材文件異常情況,檢查后所有視頻及圖片均可正常播放,各文本素材能按順序、無遺漏切換滾動,素材不存在或文件異常時無滾動文本顯示且全屏視頻、圖片均可正常播放視為正常。還可準備三分屏布局模板或四分屏布局模板,對包含三個或四個surface 時各分屏播放與顯示是否正常進行檢查。
3.2.1 基本播放調度策略測試。播放調度測試包含優先級調度測試、時間調度測試、播放列表到期后向其他播放列表切換的調度測試、播放列表未到期但有更高優先級進入有效時間的調度測度多個測試內容。以時間調試測試為例,需準備四個及以上模板播放列表,各播放列表為同一優先級,其中有三個播放列表不在測試時間段內,另一個播放列表的有效涵蓋包含在測試時間段內,終端播放的是屬于測試時段間的播放列表即表示時間調度測試結果合格。其他播放調度測試均可按此方法進行。
3.2.2 播放任務控制測試。播放任務控制測試主是要在終端播放列表進行時,由平臺編制一個有效時間段包含在測試時間段內的更高優先級播放任務,在任務發布完成之后,若終端可實時完成向更高優先級播放任務的切換,新播放任務立即開始播放,視為播放任務控制合格。也可按照同樣方法推送一個更低優先級播放任務進行測試,若任務發布后未對新推送任務切換與播放即可測試合格。
G3 終端是一種內部預先安裝了TD/DSM通訊模塊及觸摸屏的播放平臺,可實現在線內容發布及終端遠程管理,內容發布及時性更高,內容投放更加精細與準確。本文介紹了G3 終端的總體系統結構,從配置開放環境、設置終端界面布局描述協議、G3 終端播放與資源描述協議設計、播放框架調用程序選擇、G3 終端業務處理流程處理五個方面對終端顯示及播放的設計與實現進行了闡述,并介紹了終端與平臺的單屏、多屏播放控制測試、播放調度及任務控制測試等調度測試方法,以此驗證G3 終端與平臺播放功能的優越性。