■ 張家港市融媒體中心(傳媒集團(tuán)):鄭雙 范玉君 徐強(qiáng)
本文主要介紹了通過對(duì)高清字幕轉(zhuǎn)碼服務(wù)器改造,軟件方面的二次開發(fā),轉(zhuǎn)變成IP多通道字幕機(jī),極大提高了工作效率,賦予值機(jī)人員更高的人性化操作功能,在疫情防控宣傳中發(fā)揮了重要作用,產(chǎn)生了極大的社會(huì)效益。
AS-M8000高清字幕轉(zhuǎn)碼服務(wù)器設(shè)備采用了數(shù)字電視/IPTV/OTT提供的最新一代的視頻編碼技術(shù),可以在更低的帶寬環(huán)境為用戶可提供1920*1080每秒30幀的視頻體驗(yàn),系統(tǒng)采用Linux操作系統(tǒng)+專業(yè)GPU,可保證工作的穩(wěn)定性,支持真正的廣播級(jí)應(yīng)用,配置可支持多碼率、多分辨率、多協(xié)議輸出RTS[/HTTP/HLS/UDP/RTP),支持輪播頻道輸出,可為IPTV、OTT等直播業(yè)務(wù)提供高性價(jià)比、易操作的最新解決方案。轉(zhuǎn)碼服務(wù)器平臺(tái)有統(tǒng)一的轉(zhuǎn)碼參數(shù)模板管理、主機(jī)和任務(wù)管理、媒資管理,此三個(gè)模塊為平臺(tái)基礎(chǔ)服務(wù)模塊,平臺(tái)所有模塊都可提供API給第三方進(jìn)行調(diào)用。平臺(tái)的底層為轉(zhuǎn)碼器集群,轉(zhuǎn)碼器集群作為通用計(jì)算能力組件可根據(jù)平臺(tái)的業(yè)務(wù)規(guī)模彈性伸縮,這為改造成IP字幕機(jī)提供了極大便利。
轉(zhuǎn)碼服務(wù)器的架構(gòu)圖如下:
AS-M8000高清字幕轉(zhuǎn)碼服務(wù)器原配置軟件主要服務(wù)于直播編碼解碼,軟件功能簡(jiǎn)一,該設(shè)備主要性能如下:支持一個(gè)輸入,多分辨率、多碼率、多格式,輸出;支持同源多輸出文件I幀對(duì)齊;支持純視頻編碼輸出;支持視頻幀率、碼率控制方式、視頻碼率、視頻大小、視頻寬高比、填充模式用戶自定義設(shè)置;支持profile、Level級(jí)別、幀掃描方式、場(chǎng)序、熵編碼、宏塊劃分用戶自定義;支持多種運(yùn)動(dòng)預(yù)測(cè)模式、運(yùn)動(dòng)搜索范圍、運(yùn)動(dòng)估算、運(yùn)動(dòng)偵測(cè)方式選擇;支持GOP類型、關(guān)鍵幀間隔、參考幀個(gè)數(shù)、B幀參考、B幀個(gè)數(shù)、B幀自適應(yīng)等參數(shù)可設(shè);支持BT.2020寬色域及HDR PQ/HLG變換曲線;支持自動(dòng)切換信源采集流的機(jī)制,即一路輸入流發(fā)生異常斷流,能自動(dòng)切換到備份流進(jìn)行不間斷編碼/轉(zhuǎn)碼輸出;支持選擇1路獨(dú)立的音頻流或者音頻文件和一路視頻流合成一路實(shí)時(shí)流轉(zhuǎn)碼輸出;支持緊急墊片功能,編碼設(shè)備可以設(shè)置一墊播文件,當(dāng)主節(jié)目流發(fā)生異常斷流,轉(zhuǎn)碼器采用自動(dòng)墊播文件實(shí)時(shí)輸出。冗余輸出功能:編碼設(shè)備可以轉(zhuǎn)碼一路實(shí)況流復(fù)制輸出到多個(gè)地址。斷流恢復(fù)功能:直播信源斷流恢復(fù)之后,轉(zhuǎn)碼流自動(dòng)恢復(fù),并不產(chǎn)生聲畫不同步等問題。特效功能:支持動(dòng)態(tài)可視化加特效,包括臺(tái)標(biāo)、字幕、時(shí)鐘、秒表、馬賽克、毛玻璃、隧道填充,并支持對(duì)特效進(jìn)行計(jì)劃編排??勺远x編排臺(tái)標(biāo)、字幕疊加的時(shí)間以及持續(xù)時(shí)間。色彩調(diào)節(jié)功能:支持對(duì)亮度、飽和度、對(duì)比度、色差、銳化、降噪等進(jìn)行可視化動(dòng)態(tài)調(diào)節(jié)。告警功能:支持流異常監(jiān)測(cè),黑場(chǎng)、靜幀、靜音、馬賽克、彩條等,支持短信郵件通知。
改為字幕機(jī)需增加如下要求:
1.通道:IP輸入,IP輸出。
2.視頻編碼輸出格式:MPEG2/MPEG4/H.264/H.263/H.265;音頻編碼輸出格式:MP2A/AAC/AMR/AC3。
3.支持固定時(shí)長(zhǎng)、定時(shí)插播、順延插播、手動(dòng)緊急插播等編單插播方式,支持插播效果預(yù)覽。
4.高標(biāo)清頻道支持字幕、臺(tái)標(biāo)、角標(biāo)、動(dòng)畫、時(shí)鐘等元素在線插入,其中高、標(biāo)清頻道各6個(gè),總共12個(gè)頻道。
5.游字廣告可自由分時(shí)間段(例如:一游字播出3次,時(shí)間大概為20:00,20:35,21:00左右),而節(jié)目單只需要編一條就行。
6.時(shí)間設(shè)定相近的廣告,通過手動(dòng)功能,可以避免沖突。(例如:20:00的廣告先播完了,再播20:05的,即使實(shí)際時(shí)間為20:10了,順延也沒關(guān)系)。
7.頻道編組可自由組合。
8.游動(dòng)字幕與角標(biāo)的開播時(shí)間可統(tǒng)一修改,即延遲播出。游動(dòng)字幕與角標(biāo)開播前可以逐條修改成停止播出。角標(biāo)播出停留時(shí)間、間隔時(shí)間可以設(shè)置,可以編組并設(shè)置多個(gè)播出時(shí)段。游動(dòng)字幕多條播出時(shí)間相同時(shí)播出不得同時(shí)出現(xiàn)也不能漏播,可以順序播出。
改造過程中,系統(tǒng)與有線網(wǎng)絡(luò)的級(jí)聯(lián),反復(fù)產(chǎn)生了諸多兼容性問題,經(jīng)過多重測(cè)試,在服務(wù)器端做了如下這些升級(jí)改造:
解決辦法:由于有線網(wǎng)絡(luò)公司部分老式機(jī)頂盒只能解析MPEG2格式的流,所以把編碼方式由H.264換成了MPEG2。
實(shí)現(xiàn)原理:
1.運(yùn)用docker上載設(shè)備適用的MPEG2編碼模塊壓縮包至服務(wù)器中,并啟用。
2.字幕機(jī)管理頁面打開模板管理,更改模板屬性中的編碼格式,選擇MPEG2點(diǎn)擊保存。
3.打開直播轉(zhuǎn)碼,先停止頻道。點(diǎn)擊輸出任務(wù)編輯,切換編碼模板。點(diǎn)擊保存。
4.開始輸出任務(wù)。
5.打開VLC播放器,收看輸出流。打開媒體屬性,看到編碼已更換為MPEG2,有線設(shè)備能順利解碼。
原因:設(shè)備碼率默認(rèn)是VBR方式,VBR是動(dòng)態(tài)碼率,可以將視頻質(zhì)量較好的進(jìn)行傳輸。保證視頻的清晰度。但在傳輸過程中,機(jī)頂盒解出視頻有卡頓和馬賽克現(xiàn)象。
解決方法:將碼率控制改成CBR模式。
1.運(yùn)用docker上載最新的CBR編碼模塊壓縮包至服務(wù)器中,并啟用。
2.字幕機(jī)管理頁面打開模板管理,更改模板屬性中碼率控制,選擇CBR點(diǎn)擊保存。
3.打開VLC播放器,收看輸出流。打開媒體屬性,看到碼率不再波動(dòng),有線解碼正常,視頻順暢,網(wǎng)管再無告警信息。
原因:有線解碼視頻清晰度不夠。經(jīng)過測(cè)試發(fā)現(xiàn),CBR方式下,是固定碼率。碼率太低會(huì)導(dǎo)致畫面清除度不夠。原始碼率為2M,需要大碼率來保證視頻質(zhì)量。
解決方法:
1.字幕機(jī)管理頁面打開模板管理,更改模板屬性中碼率,改為4500點(diǎn)擊保存。
2.打開VLC播放器,收看輸出流。打開媒體屬性,看到碼率變?yōu)?500,有線網(wǎng)管軟件顯示為3.5M,該碼率比較合適。
原因:經(jīng)排查發(fā)現(xiàn),CBR模式下音頻碼率太低導(dǎo)致。故需要加大音頻碼率。音頻碼率原始默認(rèn)值為32。另外,音頻編碼類型由aac改為mpega。
1.先在一臺(tái)可以聯(lián)上阿里云的機(jī)器上,把相應(yīng)的image拉下來,使用docker pull鏡像地址。
2.使用docker images檢查本地是否已有此鏡像,假設(shè)鏡像名稱是aaa:v1。
3.運(yùn)行docker save aaa:v1>aaa_v1.tar保存鏡像到一個(gè)文件。
4.將aaa_v1.tar上傳到相應(yīng)的離經(jīng)服務(wù)器上。
5.在離線服務(wù)器上運(yùn)行docker load—input aaa_v1.tar此命令把文件中的內(nèi)容成鏡像。
6.在離線服務(wù)器上運(yùn)行docker images查看是否有aaa:v1這個(gè)鏡像。
7.將docker compose配置文件中的鏡像版本名稱相應(yīng)升級(jí),然后再運(yùn)行docker-compose up。
1.通過xshell連接到遠(yuǎn)程機(jī)器。
2.因?yàn)榘踩?,機(jī)器不通公網(wǎng),所以需要用U盤將升級(jí)包拷到機(jī)器。
3.加載升級(jí)包。
4.執(zhí)行find/-name docker-compose.yml命令,找到相關(guān)目錄。
5.Cd進(jìn)入docker-compose.yml目錄。
6.修改相應(yīng)的鏡像。
7.執(zhí)行docker-compose up-d命令。
8.升級(jí)完成。
經(jīng)過二次開發(fā),該字幕機(jī)即實(shí)現(xiàn)如下性能,滿足播出需求:
支持一鍵順延:在不允許添加游字情況下,可以清除內(nèi)容并可以順延到其他時(shí)間;支持一鍵恢復(fù):會(huì)把順延的游字繼續(xù)播放;支持一鍵刪除;支持即時(shí)插播:模板可定制,方便定義高清、標(biāo)清頻道編碼器參數(shù),編碼方式可自由修改;支持自動(dòng)處理沖突:發(fā)生沖突時(shí),自動(dòng)順延,內(nèi)容正常播出;支持動(dòng)態(tài)修改游字內(nèi)容;支持游字設(shè)置游動(dòng)次數(shù);支持游字多個(gè)時(shí)間段自由組合;支持臺(tái)標(biāo)設(shè)置間隔時(shí)間、持續(xù)時(shí)間;支持計(jì)劃綁定單個(gè)或多個(gè)頻道;支持頻道綁定單個(gè)或多個(gè)計(jì)劃;支持單個(gè)或多個(gè)刪除、修改尚未播出的內(nèi)容;特效計(jì)劃:計(jì)劃的執(zhí)行頻率支持單次、每天、逢單、逢雙、每周;支持設(shè)置字幕的顏色、字體、大小、水平位置、排列方式、滾動(dòng)速度、字體間距等功能;支持選擇畫布大小如:16:9、16:10、4:3、5:4、5:3、1366*768、1360*768和1280*600;支持設(shè)置圖標(biāo)可視化拖拽大小,自定義移動(dòng)位置;支持預(yù)覽特效內(nèi)容詳情;支持添加特效模板并可以應(yīng)用于多個(gè)頻道或計(jì)劃;支持按頻道或者按計(jì)劃查看特效信息;支持選擇頻道分發(fā)計(jì)劃;支持選擇模板后預(yù)覽模板的特效內(nèi)容;支持編輯選擇的特效模板;支持已添加的特效模板顯示的時(shí)間段和顯示總時(shí)長(zhǎng);支持在計(jì)劃開始的日期任意時(shí)間段內(nèi)添加特效模板、動(dòng)態(tài)修改頻道與計(jì)劃的綁定關(guān)系;支持在時(shí)間軸刻度上修改特效的顯示的時(shí)間段;支持在時(shí)間軸上拖拽時(shí)間長(zhǎng)度或移動(dòng)時(shí)間范圍;支持選定內(nèi)容時(shí),時(shí)間軸上高亮定位顯示已選內(nèi)容。
功能創(chuàng)新方面:
整個(gè)系統(tǒng)平臺(tái)基于微服務(wù)的架構(gòu)實(shí)現(xiàn),各子系統(tǒng)的功能可以互相調(diào)用,每個(gè)子系統(tǒng)都提供API,平臺(tái)基于B/S架構(gòu),且前后臺(tái)分離,前臺(tái)完全基于H5技術(shù)實(shí)現(xiàn),瀏覽器不必安裝插件實(shí)現(xiàn)。
系統(tǒng)的后臺(tái)服務(wù)既支持在裸機(jī)上部署,也支持完全在Kubernetes容器集群中運(yùn)行,并支持基于helm的技術(shù)實(shí)現(xiàn)一鍵部署。
系統(tǒng)平臺(tái)有統(tǒng)一的轉(zhuǎn)碼參數(shù)模板管理、主機(jī)和任務(wù)管理和媒資管理,此三個(gè)模塊為平臺(tái)基礎(chǔ)服務(wù)模塊,平臺(tái)所有模塊都可提供API給第三方進(jìn)行調(diào)用。平臺(tái)的底層為轉(zhuǎn)碼器集群,轉(zhuǎn)碼器集群作為通用計(jì)算能力組件可根據(jù)平臺(tái)的業(yè)務(wù)規(guī)模彈性伸縮。
IP輸入?yún)f(xié)議:UDP/RTMP/RTSP/MMS/HTTP,IP輸出協(xié)議:TS over UDP/RTP/HTTP/RTSP FLV over HTTP/RTMP/HTTP Live Streaming/3GP over RTP/MMS;輸出分辨率:320*240;480*360;720*576;1280*720;1920*1080;3840*2160;自定義;支持一個(gè)輸入,多分辨率、多碼率、多格式,輸出。
軟件簡(jiǎn)潔操作方便:只要有一臺(tái)電腦就可以頁面操作,實(shí)現(xiàn)字幕臺(tái)標(biāo)的添加與管理,上手快,學(xué)習(xí)成本低。
一鍵上傳圖片序列:可以直接上傳圖片序列,無需再使用額外工具進(jìn)行臺(tái)標(biāo)的編輯,簡(jiǎn)化了操作的步驟,提高了工作效率。
計(jì)劃任務(wù):對(duì)字幕臺(tái)標(biāo)可實(shí)現(xiàn)周期,定時(shí)等預(yù)設(shè)任務(wù),并且自動(dòng)處理時(shí)間上的沖突,再也無需為繁雜的任務(wù)調(diào)度與排序頭疼,也避免了人工處理可能導(dǎo)致的失誤。
模板管理:可實(shí)現(xiàn)多模板切換,隨時(shí)選擇或調(diào)整預(yù)設(shè)模板。
分發(fā)管理:首創(chuàng)高效率的分發(fā)模式,支持多頻道、單頻道、模板與任務(wù)進(jìn)行關(guān)聯(lián)處理,優(yōu)化了操作人員的邏輯復(fù)雜度。
能自由定義頻道分辨率,可實(shí)現(xiàn)多頻道高清、標(biāo)清同播。
該設(shè)備系統(tǒng)方便簡(jiǎn)捷的操作步驟、穩(wěn)定的運(yùn)行性能、超高的工作效率,具備了超強(qiáng)的商業(yè)應(yīng)用價(jià)值,值得進(jìn)行大力推廣,在各級(jí)廣播電視臺(tái)或傳媒中心等播出機(jī)構(gòu)應(yīng)用,以充分發(fā)揮其社會(huì)效益和經(jīng)濟(jì)效益。
改造過后的多通道IP游字系統(tǒng)極大提高了工作效率,對(duì)于本市政府宣傳、民生實(shí)事、公益廣告、天氣預(yù)報(bào)預(yù)警等宣傳提供了更好的工具,相對(duì)于我單位原來的游字設(shè)備,需要多點(diǎn)多段分時(shí)設(shè)置,半自動(dòng)游字,容易漏播,甚至錯(cuò)播,該IP字幕機(jī)實(shí)現(xiàn)了一次設(shè)置完畢,設(shè)置完畢后人員就不再需介入,設(shè)備全自動(dòng)多頻道分發(fā)廣告,賦予值機(jī)人員更高的人性化操作功能。采用全數(shù)字,TS OVER IP模式的系統(tǒng)設(shè)計(jì)方案讓臺(tái)內(nèi)技術(shù)人員使用軟件功能更加方便快捷,簡(jiǎn)化操作步驟,高效地進(jìn)行宣傳業(yè)務(wù)流程的運(yùn)作,相比建設(shè)之前播出系統(tǒng)的軟件程序繁多,功能單一,新系統(tǒng)整合更加統(tǒng)一化、界面化,流程透明化、智能化,化繁為簡(jiǎn),在系統(tǒng)功能方面更全面、高效,在實(shí)際使用上達(dá)到了我單位預(yù)期規(guī)劃的效果。特別是在今年年初的張家港新冠疫情產(chǎn)生后,設(shè)備幾乎全天不間斷的游字防疫宣傳,日播出量高達(dá)6000條次,該播出設(shè)備方便簡(jiǎn)捷的操作步驟、穩(wěn)定的運(yùn)行性能、超高的工作效率,在疫情防控宣傳中發(fā)揮了重要作用。