郭小鵬
國家廣播電視總局無線電臺管理局 北京市 100045
無線局廣播電臺發射機的節目源由節目傳輸機房負責提供。節目傳輸機房接收從衛星或光纜鏈路提供的廣播節目,經過優選處理后送至發射機房廣播發射機播出。由于使用的衛星接收機只能設置一個固定參數接收相應節目包,所以一部發射機的節目源通常只能配置成一個衛星轉發器固定參數接收的節目源。但是,部分臺站一部發射機需在不同的時間段上播出不同類別的節目,這些節目不在同一個衛星轉發器上轉發,這樣,在原有的工作拓撲模式下,音頻調度系統就不能滿足自動切換播出的需要。在不同來源的節目之間切換,需要通過手動切換硬件播出。本文提供了一種方案,配合自動音頻調度軟件,可以實現單部廣播發射機對應多衛星節目源任務時的自動切換播出。
無線局發射臺節目源系統工作原理如圖1所示,每部發射機對應一個音頻四選一,音頻四選一有A、B、C三個音頻輸入端,分別接入主備三路節目源信號。通常情況下這三路信號都是完全一致的,四選一會根據輸入信號的質量選擇一路自動切換輸出。A路信號為主用,當A路信號正常時,輸出為A路。如果在某一時刻,A路信號出現故障沒有輸出,四選一會自動切換至B路,B路沒有信號會切換至C路輸出。

圖1 發射機節目源系統框圖

圖2 多種任務混播示意圖
接收機接收到衛星或光纜傳輸的廣播節目包然后進行解碼,會根據內部存儲的運行圖進行自動切換節目通路進行輸出。圖中各個接收機接收的節目源及存儲的運行圖都是完全一樣的,故其輸出也是同步一致的。這種工作模式實現發射機不同時段節目的自動切換,前提條件是這些節目都必須是在接收機接收的節目包中含有的節目。
但是有些單位存在這種情況:一部廣播發射機同時承擔中央臺節目和地方臺節目的播出任務。比如某部發射機,它有可能會接收到這樣的調度,0點到11點需要播出中二節目,13點到17點要播出地方臺的節目,在運行圖中是中央臺節目與地方臺節目交替播出的(如圖2所示)。
我們知道中央臺節目與地方臺節目不在同一個衛星轉發器甚至可能不在同一個衛星上轉發,且參數不同。一臺衛星接收機不能同時既接收中央臺節目又接收地方臺節目。
這樣一個運行圖下發給發射機房,顯然是不能實現自動切換播出的。從運行圖中可以看到,經濟之聲與地方省臺的節目通道都是CH1,而衛星接收機里面的CH1節目,要么只能是經濟之聲,要么只能是地方省臺。音頻調度系統就無法根據運行圖正確地對該節目進行自動切換。此時,通常的做法是使用另外一組接收機設置不同的參數,接收地方省臺的節目,在需要的時候我們再手動切換到該接收機的輸出進行播出。這種人工操作方式導致值班員工作壓力大,出錯概率高,且不適應機房智能化、自動化的要求。
為了實現多種不同衛星節目源混合播出的自動切換,我們首先對原有的系統結構做了一些改變,如圖3所示,在原有的系統框圖中增加一個擴展音頻四選一,該四選一的輸入端連接地方臺的各個主備衛星接收機,然后再輸出到后級主四選一的C路。
從圖中可以看出,主用四選一的輸入A路與B路為中央臺的主備節目源并且能夠根據信號質量在主備間進行自動切換播出。C路信號為地方臺節目源,并且地方臺節目源也能夠通過前一級的擴展四選一進行地方臺主備節目源間的自動切換。
按照圖2的運行圖,在0∶00至11∶00的時候,我們只要保證與A路與B路連接的接收機有正常的節目信號輸出,播出即為中央臺的節目。在11∶00至17∶00再使中央臺的所有接收機輸出為靜音,地方臺接收機輸出正常節目,依靠主四選一的自動切換功能,它將會切換到C路輸出為地方臺的節目。到18∶00至24∶00,中央臺接收機恢復正常節目輸出,這時主四選一將又切換回A路或B路,播出中央臺節目。
通過硬件拓撲的改變,增加一級擴展四選一,從硬件上實現了兩種不同信號源節目的自動切換與播出,接下來要解決的就是怎樣讓不同信號源的接收機按照運行圖要求自動輸出節目。這個工作由音頻調度系統軟件來完成。
無線局發射臺音頻調度系統在原有的工作模式下,運行圖的下發流程是:系統接收到某部發射機的運行圖后,先將運行圖解析成每一時間段的任務,然后查詢該發射機號所屬的所有接收機,將解析好的運行圖依次下發至每個接收機中。此工作模式下,同一臺發射機對應的所有接收機運行圖都是一樣的,不能滿足主四選一C路播出的時候A路、B路靜音的要求。所以,我們需要對音頻調度系統進行升級改進。

圖3 多衛星節目源自動調度系統框圖
首先針對需要多衛星節目源混播的發射機,在音頻調度系統的硬件配置中增加一個虛擬機號。以A01機為例,假設我們的A01機既要承擔中央臺節目又要承擔地方臺節目的播出,我們先在系統的設備配置中新增加一部虛擬發射機,可以命名為“A01地方”,將地方臺的兩臺衛星接收機配置到“A01地方”這個虛擬發射機下。
在運行圖下發時,給運行圖的每一個時間片增加一個節目類別的標識,例如00表示中央臺,01表示地方臺。音頻調度系統接收到運行圖后,在解析時,先將中央臺的任務與地方臺的任務區分開來,再根據“A01”與“A01地方”的對應關系,將中央臺的運行圖下發至“A01機”所屬的接收機中,地方臺的運行圖下發至“A01地方”所屬的接收機中,下發后的運行圖如圖4所示。運行圖解析下發代碼如下:
TX_idList= new List
var txid=Server.GetRadioI-dByTransmitterCode (schedule.TransmitterCode);
TX_idList.Add(txid);//混播設置 記錄包含的發射機id
int mixProtype=-1;//混播節目類型:0中央,1地方
int mixTxId=Server.GetVisualTranIdByPhyTransmitterCode(schedule.TransmitterCode,out mixProtype);//混播虛擬發射機的ID

圖4 混播運行圖解析下發
var dsSchedule= new table_chart_rec();
foreach(var cycleScheduleEntity in schedule.CycleScheduleList){
var drSchedule=dsSchedule.table_chart_rec.Newtable_chart_recRow();
drSchedule.BC_Order_Number=schedule.DispatcherOrder;//調 度令文號
drSchedule.TX_Id=txid;//發射機代碼
drSchedule.BC_Time_Rec=schedule.DownTime_DT;//下發時間
drSchedule.BC_Property=cycleScheduleEntity.DispatcherProperties;//調度令性質
drSchedule.BC_StartTime=cycleScheduleEntity.BroadcastStart-Time.Length>5?
cycleScheduleEntity.Broad -castStartTime.Substring(0,5):
cycleScheduleEntity.Broad -castStartTime;//開始播音時間
var end=(cycleScheduleEntity.BroadcastEndTime="23:59:59"?"24:00":
cycleScheduleEntity.Broad -castEndTime.Length>5?
cycleScheduleEntity.Broad -castEndTime.Substring(0,5):
cycleScheduleEntity.Broad -castEndTime);
drSchedule.BC_EndTime=end;//結束播音時間
drSchedule.BC_StartDate=cycleScheduleEntity.Execution -StartDate;//開始日期
drSchedule.BC_EndDate=string.IsNullOrEmpty(cycleScheduleEntity.ExecutionEndDate)?
“2222-12-31”:cycle-ScheduleEntity.ExecutionEnd -Date;//截止日期
drSchedule.BC_Week = cycleScheduleEntity.Cycle;//周期
drSchedule.BC_Pro -gram_Code=cycleScheduleEntity.ProgramCode;//節目編號
int ChannelLength= cycle-ScheduleEntity.ProgramChannel.Length;
drSchedule.BC_ProgramChannel=ChannelLength>2?
cycleScheduleEntity.Program-Channel.Substring (Channel-Length-2,2):
cycleScheduleEntity.Program-Channel;//節目通路
drSchedule.BC_ProgramChannel=drSchedule.BC_ProgramChannel.TrimStart('0');
drSchedule.BC_proFlag=((cycleScheduleEntity.Program-Code.IndexOf("1")!=3)?
(byte)rogramType.Center:(byte)ProgramType.Province);//節目類型:0中央,1地方
//以下判斷時間片任務是否為混播的地方臺節目,若是,則將下發的發射機編號替換為虛擬發射機編號
if (mixTxId! =- 1&&drSchedule.BC_proFlag==mixProtype)//判斷是否混播
{drSchedule.TX_Id=mixTx-Id;}//發射機代碼替換為混播ID
dsSchedule.table_chart_rec.Addtable_chart_recRow(drSchedule);//添加至待下發的數據集}
通過在無線局發射臺節目源系統原有硬件拓撲上增加一組四選一及接收機,在音頻調度軟件系統中新增一個虛擬發射機的方式,再配合軟件對運行圖分別解析與下發,利用四選一的自動切換功能,可以解決部分臺站單部廣播發射機在不同的時間段上播出中央臺和地方臺不同類別的節目的需求,達到了全自動運行,自動下發,自動切換,無需人工干預的效果,大大提高了調度效率,節省了調度時間,減輕了值班員工作壓力以及避免了操作失誤的可能性。