楊勇,崇昊,袁東,仲亞琴,何燕,于琪
(1.南京地鐵建設有限責任公司;2.南京熊貓信息產業有限公司;3.普天信息技術有限公司,江蘇 南京 210000)
在城市軌道交通系統工程中,乘客信息系統(Passenger Information System,以下簡稱PIS)的一個重要功能是地鐵列車上的音視頻直播。要實現該功能,就需要將直播信號的音視頻編碼數據從PIS的控制中心可靠地傳輸到列車上。這需要通過該線路建設的1.8GHz頻段LTE車地無線網絡來實現。該無線網絡能夠提供的總數據帶寬大約為8Mbps,包括上下行,但是需要同時承載信號系統、視頻監控系統、PIS三個業務。音視頻編碼數據的特點是數據量很大,按照PIS的功能要求,列車音視頻直播的編碼碼率一般要求達到2~6Mbps。LTE車地無線網絡承載的三個業務中,除了信號系統的數據碼率較低外(Kbps量級),其他兩個業務都是音視頻業務,都要求較高的帶寬來傳輸。信號系統是列車行進控制的安全保障系統,在三個業務中優先級是最高的,視頻監控系統則是安防反恐的重要輔助手段,優先級次之,PIS業務是三個業務中優先級最低的。由于LTE的帶寬有限,以及PIS業務的低優先級設定,當瞬時數據帶寬超過LTE的帶寬時,LTE無線網絡將會優先丟棄PIS的音視頻直播數據,從而導致列車上的視音頻直播出現卡頓和馬賽克現象,影響到乘客的觀感體驗,數據丟的越多,卡頓和馬賽克現象就越嚴重。
在PIS中,控制中心有一臺音視頻信號的直播編碼器,該設備的作用是將來自視頻流服務器或者有線電視的直播信號按照DVB標準編碼成TS流,并封裝成UDP包輸出到PIS的以太網中。為了確保所有車站和車載的播放控制器都能夠接收到直播數據,音視頻編碼的UDP數據包通常采用組播的方式進入PIS網絡。車站或者車載的播放控制器只要加入到指定的組播組中就可以接收到直播數據。PIS傳輸示意圖如圖1。

圖1
PIS控制中心通過光纖與各個車站相連,構成星形千兆以太網,各個車站之間的軌道區間鋪設LTE漏纜天線,車載局域網與地面的PIS局域網通過車地LTE無線網絡實現互聯。根據以上的PIS傳輸示意圖,對于列車來說,直播音視頻數據包的傳輸流程如圖2。

圖2
從車載直播數據的傳輸鏈路來看,直播數據包從控制中心產生,然后經過有線網絡和LTE車地無線網絡,最終到達列車。有線網絡可以認為非常成熟穩定可靠,不會導致數據丟失,而LTE車地無線網絡由于無線容易受干擾,數據傳輸過程中會出現丟失的現象。本文正是針對此問題提出一個方法,用于在LTE車地無線網絡上可靠地傳輸音視頻直播數據。
對于車載音視頻直播功能來說,數據包帶來的后果就是解碼播放會出現卡頓和馬賽克現象,影響觀感體驗,要解決此問題,需要將丟失的數據包再找回來。由于直播數據流是實時產生的,一旦經過編碼器輸出,就成為歷史,無法回溯。因此,在后續的傳輸過程中出現丟失后要能夠補回來,首先需要對編碼器輸出的直播流進行緩沖,車載接收端發現數據包丟失后再從控制中心的數據緩沖中申請丟失的數據包。數據緩沖重傳需要客戶端和服務端配合實現。
服務端采用專門的直播服務器設備來實現,該設備從網絡接收來自編碼器的直播數據流,采用環形緩沖區緩沖約幾分鐘。如圖3所示。

圖3
環形緩沖區所有的寫和讀操作都是在一個固定的存儲空間內進行,寫滿緩沖區后又回到原始點重頭開始;對于讀操作,也是相同的處理方式。
寫操作的算法偽代碼如下:


車載直播客戶端運行后,通過組播方式接收來自直播服務端的緩沖數據,并根據數據包的標識判斷是否存在數據包丟失。如果存在,則向服務端發出指定數據包重傳的申請,之后直播服務端根據客戶端的請求將相應的數據包重新發送給指定的客戶端。由于每個車載客戶端丟失的數據包有可能是不一樣的,對于重傳的數據包,采用單播的方式進行傳輸,同時為了確保重傳數據包的可靠傳輸,需要建立一套數據傳輸和確認的機制。
數據接收和重傳申請的工作流程如圖4。

圖4
根據以上的方法所實現的直播服務端和客戶端在城市軌道運行中進行了實際測試,并與直接傳輸方式進行了對比。結果表明,如果未采用本文描述的方法來實現直播數據包的傳輸,列車上解碼播放的畫面經常能夠觀察到畫面的卡頓和馬賽克現象。而采用了本文描述的方法后,基本上觀察不到上述現象。