張 弛
(渤海大學,遼寧 錦州 121013)
iOS平臺舞蹈教學直播系統設計與實現
張 弛
(渤海大學,遼寧 錦州 121013)
移動學習是借助移動終端在任何時間任何地點的在線學習,WiFi、3G網絡覆蓋以及移動智能終端普及,使移動學習成為新的學習方式。為了促進舞蹈普及教育,提高舞蹈教學信息化水平,針對iOS平臺設計教學直播系統。研究內容分4方面展開,基于HTTP方式的業務發現流程,通過7個步驟完成直播工作;由流媒體服務組件、內容分發組件和客戶端等3部分構成的直播系統結構;H.264的視頻編碼器工作原理及編碼過程;直播系統實現,包括HLS邏輯實現流程和HLS類實現方法。結果表明,iOS平臺基于HTTP流媒體傳輸協議,運用媒體數據實時傳輸機制,具有較強的網絡適應性,減輕了服務器和客戶端的工作負荷。
iOS平臺;舞蹈教學;直播系統;設計與實現
舞蹈是藝術審美中最具獨特美感的藝術表現形式,既可以傳情,又可以達美,將時間與空間揉和,表現出和諧的韻律,不僅是美化了人體動作的藝術,更是超越了肉體和靈魂的美的欣賞。舞蹈教育是通過審美方式展現藝術形象并潛移默化地感染人、啟發人和教育人。為提高人們的舞蹈欣賞能力,需要進行舞蹈普及教育。舞蹈普及教育主要是面向非舞蹈專業學生和業余舞蹈愛好者,培養他們在舞蹈審美、舞蹈訓練和基礎表演等方面的能力[1-2]。舞蹈教學使用肢體并配合音樂、服裝、道具、燈光等藝術手段,受時間和空間的影響,不可能大規模地開展。通過移動學習,運用視頻直播或轉播的方式為舞蹈普及教育提供了新的思路。
移動學習是借助移動終端在任何時間任何地點的在線學習。WiFi、3G網絡的覆蓋以及移動智能終端的全面普及,促進了移動學習的發展,改變了人們傳統的學習方式[3-4]。iOS是蘋果公司開發的移動操作系統,屬于類Unix的商業操作系統,用于蘋果公司移動產品上。iOS編程的接口、工具以及資源全部包含于iOS SDK,通過集成開發環境完成應用程序開發[5-6]。蘋果公司的iPad、iPhone、iPod touch等移動產品具有極高的市場占有率,文中基于iOS平臺設計與實現舞蹈教學直播系統具有廣闊的發展空間,對提高舞蹈普及教育水平具有重要意義。
直播系統業務發現流程包括三種,即基于WAP方式的業務發現流程、基于HTTP方式的業務發現流程和基于SMS方式的業務發現流程。iOS推薦使用HTTP方式,即客戶端發現直播內容的地址以及完成直播的相關附加信息的過程。HTTP方式業務發現流程如圖1所示。

圖1 HTTP方式業務發現流程
圖1所示的流程由7個步驟組成,對各步驟簡要說明如下[7-8]:
(1)認證及登錄。通過HTTP方式訪問流媒體內容Portal并完成身份認證。為了實現身份認證與流媒體內容的物理統一,身份認證由Portal完成;
(2)返回錯誤信息。如果認證不成功或登錄不成功都將顯示錯誤信息并返回HTTP登錄界面;
(3)生成終端頁面。流媒體業務平臺Portal根據用戶終端類型將適合在該終端直播的節目分類表和推薦欄目生成頁面;
(4)收到查看頁面。流媒體業務平臺Portal向用戶端發送頁面,用戶收到頁面后通過瀏覽器查看內容;
(5)定位內容信息。用戶使用內容導航、搜索和分類檢索等功能,流媒體業務平臺Portal定位要直播的具體流媒體信息;
(6)動態生成地址。根據用戶操作選定的內容動態生成URL,除了包含流媒體地址信息外,Portal還將附加必要的內容信息和Hash加密信息;
(7)啟動直播進程。用戶收到流媒體業務平臺Portal的URL后完成發現過程,觸摸或單擊URL連接后即可啟動下載或直播進程。
URL包含必要的附加信息為:會話GUID(Global User ID),每個用戶每次使用服務對應唯一的GUID;用戶的MDN(Mobile Directory Number)號碼;用戶使用的PDSN(Packet Data Serving Node)IP地址;本次會話的有效時長;經過Hash算法加密的Token。
流媒體在網絡中使用流式傳輸技術傳輸的時基媒體數據流,包括音頻數據流和視頻數據流,播放前不需要下載整個文件,而是隨時下載隨時播放,節省了系統資源以及用戶等待時間,實現方式包括HPPT、WAP和消息等。HTTP流媒體傳輸協議(HTTP Live Streaming,HLS)基于HTTP協議實現。通過HTTP協議,將流媒體從Web服務器發送到iPhone、iPad、iPod touch和Apple TV以及裝有US X的蘋果計算機等iOS設備上,實現視頻直播和點播服務。目前HLS已被提交成為國際互聯網工程任務組(Internet Engineering Task Force,IETF)的Internet-Draft,未來將有更廣闊的發展空間?;贖LS的iOS直播系統由流媒體服務組件、內容分發組件和客戶端三部分構成,結構如圖2所示[9-10]。

圖2 iOS直播系統結構
(1)流媒體服務組件。流媒體服務組件負責把輸入的媒體流信息編碼數字化后封裝成符合用戶需要和網絡傳輸的格式,并轉發給內容分發組件。流媒體服務組件由媒體編碼器、流分割器和文件分割器構成。媒體編碼器通常是硬件設備,主要完成信息的壓縮與處理。為了實現較好的播放效果和通用性,要求媒體編碼器支持HDMI、SDI、VGA、CVBS等視頻源輸入,支持HDMI及SDI嵌入音頻輸入,支持H.264-HP、BP等多種模式編碼和高標清編碼,編碼延時小于200 ms;流分割器是將音頻視頻文件分割為以“ts”為后綴的一個個小片段文件,無需重新編碼就能播放。在直播過程中,媒體編碼器不斷地產生數據,流分割器不斷地將其分割成一個個小文件,分割的文件大小由系統動態設置,通常是10 s左右;內容服務器組件接收的輸入還可以是預編碼的流媒體文件,這時就需要文件分割器將其分割為以“ts”為后綴的小片段文件實現播放。
(2)內容分發組件。內容分發組件可以是標準的Web服務器,接受客戶端請求,預先準備好媒體數據及相關資源供客戶端下載直播。內容分發文件管理兩類文件,一類是由流分割器或文件分割器分割的以“ts”為后綴的小片段文件,另一類是為對“ts”文件進行管理而生成的索引文件?!皌s”文件為遵循MPEG-2標準的文件封裝格式,MPEG-2是MPEG組織制定的視頻和音頻有損壓縮標準之一,稱為“基于數字存儲媒體運動圖像和語音的壓縮標準”,是針對標準數字電視和高清晰電視在各種應用下的壓縮方案,與MPEG-1標準相比具有更高的圖像質量、更多的圖像格式和傳輸碼率;索引文件采用m3u8文件格式規范,主要包括文件開始標志、媒體序列號、下一個媒體文件的大致時間、每一段“ts”文件的時長及URL地址、文件結束標志等。在完成直播時索引文件需要及時更新。
(3)客戶端??蛻舳耸茄b有iOS系統的硬件設備,根據用戶操作,采用HTTP協議向Web服務器的內容分發組件提出請求,下載流媒體資源來實現直播??蛻舳耸紫仍L問Web服務器中的m3u8索引文件,解析識別其中的每一個“ts”文件以及解密密鑰等信息。然后按順序下載索引文件中的“ts”媒體文件,在每個連續的“ts”分段文件之間沒有暫停和遲延地連續播放這些文件??蛻舳瞬捎肏TTP協議向Web服務器提出請求。另外,客戶端還應具有處理外部事務的功能,即在舞蹈教學直播的過程中,如發生來電、短消息、QQ信息、微信等外部事件,客戶端要及時正確處理,以保證舞蹈直播教學的正常進行。
視頻編碼技術是流媒體直播的關鍵技術,只有高效的視頻編碼才能保證在網絡環境下的流媒體直播服務。視頻編碼技術發展的趨勢是標準化和專業化并存。H.264是由JVT(Joint Video Team)提出的高度壓縮數字視頻編解碼器標準,是新一代數字視頻壓縮格式。
編解碼流程主要包括幀間和幀內預測、變換和反變換、量化和反量化、環路濾波、熵編碼五個部分。編碼器是實現編碼的設備,將信號或數據進行編制、轉換為可用以通訊、傳輸和存儲的信號形式。H.264編碼器原理如圖3所示。

圖3 H.264編碼器原理
在圖3中,編碼器有兩條主要的數據流路徑,“上→下”編碼和“下→上”重建。原理描述如下[11-13]:以宏塊為單位,對輸入視頻第n幀Fn進行編碼;運動估計函數從參考幀中尋找當前宏塊的匹配區域,該區域和當前宏塊的位置偏移即為運動矢量MV;根據MV生成運動補償的預測P;用當前宏塊減去P生成當前幀的殘差宏塊Dn;將Dn分割為8×8或4×4的子塊,分別進行DCT變換;子塊量化(X);子塊的DCT系數重排序,再進行run-level游程編碼(在一個非零的DCT系數前連續為零的系數的數目被稱為“游”,而非零DCT系數的絕對值被稱為“程”);編碼后的系數、運動矢量和相關宏塊頭信息經過熵編碼后生成壓縮比特率。
直播系統實現涉及在前文研究的采集視頻源和音頻源的數據,對原始數據進行H264編碼和AAC編碼,視頻和音頻數據封裝為MPEG-TS包,HLS分段生成策略及m3u8索引文件,HTTP傳輸協議5項關鍵技術,本節研究HLS的2項相關技術。
(1)HLS邏輯流程。以視頻直播為例,實現HLSLiveEncoder編碼器邏輯流程如圖4所示。基本過程是分別開啟音頻與視頻編碼線程,通過DirectShow技術來實現音視頻采集,然后分別調用libx264和libfaac進行視頻和音頻編碼。兩個編碼線程實時編碼音視頻數據后,根據自定義的分片策略,存儲在某個MPEG-TS格式分段文件中,當完成一個分段文件的存儲后,更新m3u8索引文件。
(2)HLS類實現。HLS實現類如圖5所示[14]。其中,CHLSServer,進行Socket偵聽,管理所得客戶端HLS請求;CHLSClient,實現HTTP的請求響應,根據客戶端請求的HLS內容,交給CHLSSource進行處理;CHLSSourceManager,所有HLS源管理器,HLS源可以是本地的文件,也可以是來自網絡或設備的實時數據源;CHLSSource,實現具體的HLS請求,包括m3u8文件獲取和TS片段的獲取。

圖4 HLS邏輯流程

圖5 HLS實現類圖
素質教育是指一種以提高受教育者綜合素質為目標的教育模式,舞蹈教育是推進素質教育的有效途徑之一。運用視頻直播方式實現舞蹈教學普及教育,能提高廣大學生和人民大眾的藝術素質、審美情趣、心理素質和美學素養[15]。
iOS平臺運用HTTP流媒體傳輸協議,運用媒體數據實時傳輸機制,減輕了服務器和客戶端的工作負荷[16]。同時,大部分防火墻都允許HTTP協議穿透,具有較強的網絡適應性。但開發時要注意分片間隔、視頻碼率、分辨率、網絡環境等因素,以此避免HLS在時間延遲方面的缺陷,提高直播效果。
[1] 冮 毅.舞蹈藝術內涵研究[D].哈爾濱:哈爾濱師范大學,2013.
[2] 孫衍輝.試論如何培養大學生舞蹈欣賞能力[J].音樂大觀,2014,10(3):172-172.
[3] 曾垂鑫,王加俊,申麗萍,等.基于IOS的移動學習直播互動平臺[J].計算機工程,2013,39(7):314-317.
[4] 付 鵬.基于oRTP庫的無線語音視頻直播系統的設計[J].計算機技術與發展,2013,23(2):188-191.
[5]SinghC,RoyAJ,Roy-ChowdhuriS.Image-basedcytopathologyreferenceApponiOSplatform[J].JournaloftheAmericanSocietyofCytopathology,2014,38(7):11-12.
[6] 李 蕾,李曉麗.基于iOS手持終端的移動學習資源設計研究[J].中國電化教育,2014,35(12):93-97.
[7] 盧官明.移動流媒體技術[M].北京:電子工業出版社,2010.
[8]YuanXQ,MinGY,DingY,etal.AdaptiveresourcemanagementforP2Plivestreamingsystems[J].FutureGenerationComputerSystems,2013,29(6):1573-1582.
[9] 李光大.基于HTTP直播的移動流媒體系統的設計與實現[D].武漢:華中科技大學,2011.
[10]JinXin,KwokYu-Kwong.CoercionbuildscooperationindynamicandheterogeneousP2Plivestreamingnetworks[J].ComputerNetworks,2014,81:1-18.
[11]JhaMK,RoySD,LallB.DEMD-basedvideocodingfortexturedvideosinanH.264/MPEGframework[J].PatternRecognitionLetters,2015,51(1):30-36.
[12]WuYD,SunY,FengZD,etal.AnoveltotalvariationbasedframelayerratecontrolalgorithmforH.264/AVC[J].JournalofVisualCommunicationandImageRepresentation,2014,25(5):879-890.
[13]XuDW,WangRD,ShiYQ.Animprovedreversibledatahiding-basedapproachforintra-frameerrorconcealmentinH.264/AVC[J].JournalofVisualCommunicationandImageRepresentation,2014,25(2):410-422.
[14] 武愛敏.Wutong_login的專欄:HLS協議實現[EB/OL].2015-06-01.http://blog.csdn.net/wutong_login/article/details/9673255.
[15] 于 彬.高校舞蹈教學與大學生藝術素質教育探析[J].教育與職業,2014(3):183-183.
[16] 鄭藝芳.基于HTTP的P2P流媒體直播系統構建[J].長沙大學學報,2012,26(2):43-46.
Design and Implementation on Dance Teaching Live System for iOS Platform
ZHANG Chi
(Bohai University,Jinzhou 121013,China)
Mobile learning is the online learning by use of mobile terminals at any time anywhere.With the popularity of WiFi,3G network coverage and mobile intelligent terminal,mobile learning becomes a new way of learning.In order to promote the popularization of the dance education and improve the level of dance teaching information,the teaching live system of the iOS platform is designed.Research content is divided into four aspects,containing the business discovery process based on the HTTP mode,through 7 steps to complete the live work,the live system structure consists of three parts,including streaming media service components,content distribution components and client,H.264 video encoder working principle and encoding process and live system implementation,including HLS logic implementation process and HLS class implementation methods.The results show iOS platform is based on HTTP streaming media transfer protocol,using real-time transfer mechanism of media data,with strong network adaptability,reducing the workload of the server and the client.
iOS platform;dance teaching;live system;design and implementation
2015-06-03
2015-09-04
時間:2016-02-18
遼寧省社會科學基金(L12DWJ018)
張 弛(1989-),男,講師,碩士,研究方向為舞蹈教育與現代教育技術。
http://www.cnki.net/kcms/detail/61.1450.TP.20160218.1619.020.html
TP311
A
1673-629X(2016)03-0154-04
10.3969/j.issn.1673-629X.2016.03.036