趙向前,張 潔
(貴州廣播電視信息網(wǎng)絡(luò)股份有限公司 播控傳輸部,貴州 貴陽550003)
隨著貴陽市城鎮(zhèn)社區(qū)和縣鄉(xiāng)農(nóng)村遠(yuǎn)程教育站點(diǎn)數(shù)量的不斷增多,不少的社區(qū)站點(diǎn)希望貴陽市黨員干部遠(yuǎn)程教育平臺(tái)考慮站點(diǎn)的黨員干部及社區(qū)群眾的文化生活需要,增加相應(yīng)的電視節(jié)目。特別對(duì)于大多數(shù)沒有配置數(shù)字電視機(jī)頂盒的社區(qū),如果平臺(tái)能播出一定數(shù)量的電視節(jié)目,將具有非常實(shí)際的作用。貴陽市遠(yuǎn)教辦與貴州廣電經(jīng)過多次協(xié)商,計(jì)劃播出18套電視節(jié)目。
然而在電視節(jié)目播出的前期設(shè)備準(zhǔn)備工作中,發(fā)現(xiàn)平臺(tái)系統(tǒng)的研發(fā)單位所研發(fā)的流媒體編碼器采用的是惠普ML370 G5服務(wù)器,機(jī)體過大。按目前機(jī)房的標(biāo)準(zhǔn)機(jī)柜容納放置,最多只能容納2臺(tái)該型編碼器(2臺(tái)不能并排擺放,只能上下擺放),而機(jī)房的空間最多也只能容納5個(gè)標(biāo)準(zhǔn)機(jī)柜。更麻煩的是,這種服務(wù)器只能完成單路視頻信號(hào)壓縮,工作效率較低。如果要實(shí)施18套電視節(jié)目的播出,需要對(duì)應(yīng)配置18臺(tái)這種大機(jī)體的編碼器,用10個(gè)標(biāo)準(zhǔn)機(jī)柜來放置,然而這些條件機(jī)房都難以滿足。所以當(dāng)務(wù)之急就是要把這些問題盡快解決掉,否則18套電視節(jié)目播出計(jì)劃將無法實(shí)施。
平臺(tái)系統(tǒng)的研發(fā)單位在研發(fā)流媒體視頻編碼器時(shí),僅從專用服務(wù)器性能穩(wěn)定、確保視頻信號(hào)壓縮的角度和采集卡配置插槽匹配等方面考慮,選用了惠普ML370 G5服務(wù)器,而忽視了這種服務(wù)器存在的機(jī)體過大、只能進(jìn)行單路視頻信號(hào)壓縮等問題。目前用于視頻直播的這種編碼器尚有7臺(tái),如果更換體積較小的服務(wù)器解決問題,那么這些大機(jī)體的服務(wù)器更換后只能閑置。為避免更換設(shè)備造成的不必要設(shè)備閑置及雙重資金浪費(fèi),最好通過技術(shù)改進(jìn)的方法來解決問題。
經(jīng)過分析,最好的辦法就是將單機(jī)單路視頻信號(hào)壓縮技術(shù)改進(jìn)為單機(jī)2路視頻信號(hào)壓縮,這樣只要9臺(tái)編碼器即可完成18路電視信號(hào)的播出。
原來的2路視頻信號(hào)壓縮方式如圖1所示,改進(jìn)后的2路視頻壓縮方式如圖2所示。
圖1 原來兩路視頻信號(hào)壓縮方式
圖2 技術(shù)改進(jìn)后的2路視頻壓縮方式
實(shí)現(xiàn)這種解決辦法的前提條件是惠普ML370 G5服務(wù)器必須有足夠的插槽滿足第二塊視頻編碼卡、音頻壓縮卡和網(wǎng)卡插裝。HP ML370 G5服務(wù)器主板上有嵌入式雙NC373i多功能千兆網(wǎng)卡,能滿足雙網(wǎng)卡數(shù)據(jù)傳輸?shù)男枰?個(gè)PCI-X 64位/133 MHz插槽,僅使用了其中1個(gè)插Digital-Rapids DRC-Stream 500 DRC-500/550流媒體采集卡,剩余插槽空閑可以再插入1塊Digital-Rapids DRC-Stream 500 DRC-500/550流媒體采集卡進(jìn)行第二路視頻壓縮實(shí)驗(yàn),硬件條件基本具備。
編碼器硬件準(zhǔn)備工作就位后,進(jìn)入軟件配置。通電開機(jī)后,加裝了2塊DRC-500/550流媒體采集卡的惠普ML370 G5服務(wù)器,顯示發(fā)現(xiàn)新硬件,這里需要說明的是,2塊卡的驅(qū)動(dòng)程序完全相同,第二塊卡的設(shè)備驅(qū)動(dòng)只須點(diǎn)擊自動(dòng)安裝即完成新硬件驅(qū)動(dòng)安裝配置。打開硬件設(shè)備管理器觀察安裝的第二塊Digital-Rapids DRC-Stream 500 DRC-500/550流媒體采集卡的工作狀態(tài)基本正常。
原來的Windows Media編碼器改命名為1號(hào)編碼器。1號(hào)編碼器視頻配置選項(xiàng)中選的原來的Digital-Rapids DRC-Stream 500 DRC-500/550 VIDEO項(xiàng);音頻配置選項(xiàng)中也選原來的Digital-Rapids DRC-Stream 500 DRC-500/550 AUDIO項(xiàng)。
HP ML370 G5服務(wù)器的2塊板載NC373i網(wǎng)卡IP地址需要修改,網(wǎng)卡的IP地址分別是192.168.11.12和198.168.11.13,確保壓縮后的IP視頻數(shù)據(jù)包能通過不同IP地址的網(wǎng)卡進(jìn)入平臺(tái)系統(tǒng)由播控服務(wù)器自動(dòng)安排流發(fā)送服務(wù)器的發(fā)布點(diǎn)自動(dòng)發(fā)送。
編碼器源面板選項(xiàng)中,1號(hào)、2號(hào)編碼器視、音頻硬件配置圖如圖3所示。
圖3 1號(hào)、2號(hào)編碼器視、音頻硬件配置圖
為區(qū)別2個(gè)編碼程序,新的Windows Media編碼器命名為2號(hào)編碼器;2號(hào)編碼器視頻配置選項(xiàng)中選Digital-Rapids DRC-Stream 500 DRC-500/550 VIDEO(1)項(xiàng);音頻配置選項(xiàng)中也選Digital-Rapids DRC-Stream 500 DRC-500/550 AUDIO(1)項(xiàng)。
運(yùn)行1號(hào)、2號(hào)編碼器,1號(hào)編碼器能工作正常,但2號(hào)編碼器出現(xiàn)“信源名稱”重復(fù)的故障提示,不能運(yùn)行。經(jīng)過分析,1號(hào)編碼器的源名稱為“實(shí)況”,2號(hào)編碼器名稱是“實(shí)況”,顯然這是導(dǎo)致故障的原因,把2號(hào)編碼器的源名稱為“實(shí)況1”后,再次運(yùn)行2號(hào)編碼器,還是有故障依舊。2號(hào)編碼器調(diào)試過程中出現(xiàn)故障提示如圖4所示。
圖4 2號(hào)編碼器調(diào)試過程中出現(xiàn)故障提示示意圖
設(shè)置“實(shí)況”時(shí)發(fā)生以下錯(cuò)誤:試圖獲取網(wǎng)絡(luò)資源失?。?×C0000028)。這個(gè)問題似乎是網(wǎng)卡配置項(xiàng)出現(xiàn)問題,檢查第一塊網(wǎng)卡的IP(192.168.11.12)和第二塊網(wǎng)卡IP(192.168.11.13)配置,發(fā)現(xiàn)沒有出現(xiàn)網(wǎng)址沖突,然而分析0×C0000028代碼后,才發(fā)現(xiàn)故障是由數(shù)據(jù)端口地址不明確或相同沖突造成的。打開1號(hào)編碼器的輸出項(xiàng),編碼器拉傳遞(由服務(wù)器或播放機(jī)初始化連接)的這項(xiàng)中端口號(hào)為8080;打開2號(hào)編碼器的輸出項(xiàng),端口也是8080,端口相同,這就是出現(xiàn)問題的原因,壓縮后的IP視頻數(shù)據(jù)包無法找尋端口輸出。因此,把2號(hào)編碼器的端口修改為8081后,問題解決。
配置工作完成后,分別在1號(hào)、2號(hào)編碼器的Digital-Rapids DRC-Stream 500流媒體采集卡的視、音頻輸入接口中接入“中央教育2套”和“空中課堂”電視節(jié)目的視、音頻信號(hào),并運(yùn)行1號(hào)、2號(hào)編碼器,視頻編碼工作正常運(yùn)行。配置完成后的1號(hào)、2號(hào)編碼器的運(yùn)行工作圖如圖5所示。
圖5 配置完成后的1號(hào)、2號(hào)編碼器的運(yùn)行工作圖
1號(hào)、2號(hào)Windows Media編碼器的實(shí)驗(yàn)調(diào)試工作完成后,需對(duì)平臺(tái)播控服務(wù)器等控制播出設(shè)備相關(guān)的SQL Server[1]數(shù)據(jù)表項(xiàng)進(jìn)行添加配置,否則電視節(jié)目信號(hào)壓縮后的IP數(shù)據(jù)包無法編排送入各遠(yuǎn)教站點(diǎn)。
1)打開播控服務(wù)器的MYSQLCC程序[2-3]的控制面板,找到Database中的mcasticpparty數(shù)據(jù)欄目后,打開表TABLES在table_channels、tables_curriculum表 項(xiàng) 修改添加配置,CHANNELS_ID,CHANNELS_IP和CHANNELS_PORT項(xiàng)是播控服務(wù)器指令編碼器壓縮數(shù)據(jù)在固定IP組播發(fā)布點(diǎn)的具體位置。
表項(xiàng)中原來1號(hào)編碼器的CHANNELS_ID為143;發(fā)布點(diǎn)CHANNELS_IP為228.16.20.25;CHANNELS_PORT為3001保持不變。2號(hào)編碼器的CHANNESL_ID添加為144、發(fā)布點(diǎn)CHANNEL_IP添加為228.16.20.26、CHANNEL_PROT添加為3001。
播控服務(wù)器SQL Server組播IP地址及端口配置圖如圖6所示。
圖6 SQL Server組播IP地址及端口配置圖
2)打開播控服務(wù)器的MYSQLCC程序的控制面板,打開Databases中LIVECAST1表的tbl_channels,tbl_vidsvr兩項(xiàng),表項(xiàng)中,1號(hào)編碼器的VIDSRC_ID為112,VIDSRC_TYPE為1,VIDSRC_NAME為編碼器2,VIDSRC_PATH為HTTP://192.168.11.12:8080。表明播控服務(wù)器指令1號(hào)編碼器IP數(shù)據(jù)傳輸?shù)木唧w序號(hào)、名稱、類型及數(shù)據(jù)發(fā)送的IP地址和端口;2號(hào)編碼器參數(shù)配置隨1號(hào)編碼器參數(shù)添加,2號(hào)編碼器的VIDSRC_ID為113,VIDSRC_TYPE為1,VIDSRC_NAME為 編 碼 器3,VIDSRC_PATH為HTTP://192.168.11.13:80801。
播控服務(wù)器SQL Server編碼器IP地址和編碼器名稱配置圖如圖7所示。
圖7 SQL Server編碼器IP地址和編碼器名稱配置圖
3)完成播控服務(wù)器的SQL數(shù)據(jù)庫配置項(xiàng)添加后,需要修改視頻編碼器的播控軟件系統(tǒng)配置文件CONFIG.INI,否則編碼器壓縮編碼的IP數(shù)據(jù)包沒有IP地址的指向?qū)o法被播控服務(wù)器調(diào)動(dòng),從而影響視頻播出。
打開編碼器播控軟件的CONFIG.SYS文件,代碼為:
[Interface]
LocalAddress=192.168.11.12//原來1號(hào)編碼器的IP地址
LocalAddress=192.168.11.13//新添加的2號(hào)編碼器IP地址
ZjzxServID=0305//流媒體播出的ID需要修改
添加完成編碼器視頻信號(hào)壓縮數(shù)據(jù)包的IP地址及站點(diǎn)接收軟件目錄的設(shè)備編號(hào)修改后,試運(yùn)行播出,2個(gè)衛(wèi)星接收機(jī)的視音頻信號(hào)輸入到單臺(tái)視頻編碼器的2個(gè)Digital-Rapids DRC-Stream 500 DRC-500/550流媒體采集卡,經(jīng)過編碼壓縮后,平臺(tái)播控服務(wù)器將IP數(shù)據(jù)包編排發(fā)出,在監(jiān)測電腦上運(yùn)行客戶端接收軟件,接收到的電視圖像信號(hào)非常流暢和清晰。
技術(shù)改進(jìn)后的電視節(jié)目視頻播出系統(tǒng)如圖8所示。方框中,如果編碼器按1臺(tái)單機(jī)單視頻編碼,需要18臺(tái)編碼器。技術(shù)改進(jìn)后,采用的單機(jī)雙編碼方式,9臺(tái)編碼器即可完成18路音視頻信號(hào)的編碼。
圖8 技術(shù)改進(jìn)后的電視節(jié)目視頻播出系統(tǒng)
通過技術(shù)分析和實(shí)踐,實(shí)現(xiàn)了單臺(tái)視頻編碼器完成2路視頻信號(hào)壓縮的設(shè)想,原本需要2臺(tái)編碼器才能完成的2路視頻壓縮變成了1臺(tái)編碼器即可完成,這不僅解決了機(jī)體過大帶來的問題,更重要的是減少了編碼器數(shù)量和提高了編碼器的工作效率,避免了更換設(shè)備造成的設(shè)備閑置和資金浪費(fèi)。
[1]鐘玉琢.流媒體和視頻服務(wù)器[M].北京:清華大學(xué)出版社,2003.
[2]白煜,辛向暉.Windows Media與Real網(wǎng)絡(luò)流媒體案例教程[M].北京:清華大學(xué)出版社,2004.
[3]MELONI J C.PHP、MySQL和Apache編程導(dǎo)學(xué)[M].李軍,譯.北京:機(jī)械工業(yè)出版社,2009.
[4]KOFLER M.MySQL 5權(quán)威指南[M].楊曉云,譯.北京:人民郵電出版社,2006.