一種基于pis系統(tǒng)的音視頻矩陣切換方法
【專利摘要】本發(fā)明公開了一種基于PIS系統(tǒng)的音視頻矩陣切換方法,該方法當正常的音視頻播放控制器出現(xiàn)故障時快速、高效的將備份的音視頻播放控制器切換到音視頻播放系統(tǒng)中,用于替換出現(xiàn)故障的音視頻播放控制器,二者的切換是無縫切換,避免了由于正常的音視頻播放控制器出現(xiàn)故障帶來的無法向乘客顯示信息的缺陷,列車音視頻傳輸質(zhì)量得到了保障,在列車高速運行的情況下,也不會出現(xiàn)馬賽克、中斷等現(xiàn)象;此外本發(fā)明的切換方法通過設置切換的優(yōu)先級,可以保證將有限的資源用于更高需求的區(qū)域,實現(xiàn)的資源的合理分配,增強了系統(tǒng)的整體穩(wěn)定性。
【專利說明】一種基于PIS系統(tǒng)的音視頻矩陣切換方法
【技術(shù)領域】
[0001]本發(fā)明涉及PIS系統(tǒng)的音視頻切換領域,尤其涉及一種基于PIS系統(tǒng)的音視頻矩陣切換方法。
【背景技術(shù)】
[0002]PIS系統(tǒng)是指地鐵運營商采用成熟可靠地網(wǎng)絡技術(shù)和多媒體傳輸、顯示技術(shù),在制定的時間將指定的信息經(jīng)顯示終端發(fā)送給指定的人群。
[0003]PIS系統(tǒng)是集合多媒體網(wǎng)絡技術(shù),以計算機系統(tǒng)為核心,以車站和車載顯示終端為媒介向乘客提供信息服務的系統(tǒng),使乘客通過正確的服務信息引導,安全、便捷地乘坐軌道交通。PIS系統(tǒng)在正常情況下,提供乘車須知、列車到發(fā)時間、列車時刻表、管理者公告、政府公告、出行參考等實時動態(tài)的多媒體信息;在火災、阻塞及恐怖襲擊等非正常情況下,提供動態(tài)緊急疏散提示。列車運行中,車載設備要實時接收來自地面運營中心的節(jié)目,在列車車廂顯示屏上播出音視頻。同時通過車廂內(nèi)監(jiān)控攝像頭,監(jiān)控旅客乘車情況,將監(jiān)控視頻信息實時上傳至運營中心,作為管理部門安全性決策的支持信息。
[0004]隨著科技的不斷進步,PIS系統(tǒng)不僅要實現(xiàn)運營中心與車站、車站與車站間的通信,還要完成列車與地面間的實時通信,例如:運營中心向列車實時轉(zhuǎn)播數(shù)字視頻等多媒體信息,列車實時上傳車廂內(nèi)的監(jiān)控信息等;但是,由于列車是在高速運行環(huán)境下進行信息的實時傳輸,而且為了給乘客提供高質(zhì)量的信息服務,PIS系統(tǒng)要求列車在高速運行情況下,保證圖像質(zhì)量,不會出現(xiàn)馬賽克、中斷等現(xiàn)象,這就要求車地系統(tǒng)要有足夠的帶寬并且保證車地間信息的可靠傳輸。
[0005]目前,PIS系統(tǒng)均采用單鏈路傳輸,沒有備份鏈路,導致當傳輸鏈路出現(xiàn)故障時,列車音視頻質(zhì)量得不到保障,甚至出現(xiàn)馬賽克、中斷等現(xiàn)象,因此,如何能在列車高速運行的情況下,保證圖像高質(zhì)量傳輸,不出現(xiàn)馬賽克、中斷等現(xiàn)象成為本領域技術(shù)人員急需解決的技術(shù)問題。
【發(fā)明內(nèi)容】
[0006]針對現(xiàn)有技術(shù)中存在的不足,本發(fā)明的目的是提供一種基于PIS系統(tǒng)的音視頻矩陣切換方法,該方法在正常的音視頻播放控制器出現(xiàn)故障時快速、高效的將備份的音視頻播放控制器切換到音視頻播放系統(tǒng)中,用于替換出現(xiàn)故障的音視頻播放控制器,避免了由于正常的音視頻播放控制器出現(xiàn)故障帶來的無法向乘客顯示信息的缺陷,此外本發(fā)明的切換方法采用優(yōu)先級操作,可以將有限的資源用于更高需求的區(qū)域,增強了系統(tǒng)的整體穩(wěn)定性,且資源的分配更加的合理化。
[0007]為實現(xiàn)上述目的,一種基于PIS系統(tǒng)的音視頻矩陣切換方法,所述方法包括如下步驟:
I)讀取N工作控制器和M備份控制器配置數(shù)據(jù),初始化N工作控制器工作列表和故障列表及M備份控制器待命列表、故障列表和工作列表; 2)按照插入列表的先后順序檢測Μ備份控制器列表中每個控制器的網(wǎng)絡連接狀態(tài)、播放器狀態(tài)和播放列表信息,并根據(jù)每個控制器的檢測結(jié)果來設置Μ備份控制器各列表的狀態(tài);
3)按照插入列表的先后順序檢測Ν工作控制器列表中每個控制器的網(wǎng)絡連接狀態(tài)、播放器狀態(tài)和播放列表信息,并根據(jù)步驟2)的檢測結(jié)果和當前Ν工作控制器的狀態(tài)來確定相應的切換操作,當Ν工作控制器中某個控制器故障時切換到Μ備份控制器以保證音視頻的正常傳輸;并重置與切換相關的Ν工作控制器和Μ備份控制器中相關控制器的狀態(tài);
4)重復步驟2)和3)的操作,直至檢測到外部程序發(fā)出結(jié)束命令。
[0008]進一步,所述步驟1)中讀取Ν工作控制器和Μ備份控制器配置數(shù)據(jù)的方法具體為:
①從數(shù)據(jù)庫或者數(shù)據(jù)文件讀出提前配置好的Μ備份控制器配置數(shù)據(jù);
②初始化Μ備份控制器待命列表、故障列表和工作列表,按優(yōu)先級順序由高到低存放Μ備份控制器中各控制器的ID ;其中,初始化Μ備份控制器待命列表是將完整的Μ備份控制器數(shù)據(jù)按讀取順序放入Μ備份控制器的待命列表待命;
③從數(shù)據(jù)庫或者數(shù)據(jù)文件讀出提前配置好的Ν工作控制器信息;
④初始化Ν工作控制器工作列表和故障列表,按優(yōu)先級順序由高到低存放Ν工作控制器中各控制器的ID ;其中初始化N工作控制器的工作列表是將完整的N工作控制器數(shù)據(jù)按讀取順序放入N工作控制器的工作列表;
⑤將Μ備份控制器的故障列表、工作列表和Ν工作控制器的故障列表均置空。
[0009]進一步,所述步驟2)中根據(jù)每個控制器的檢測結(jié)果來設置Μ備份控制器各列表的狀態(tài)的方法具體為:
⑴獲取當前Μ備份控制器的網(wǎng)絡連接狀態(tài)、播放器狀態(tài)和播放列表信息,獲取成功則執(zhí)行步驟⑵;獲取失敗則執(zhí)行步驟(5);
⑵判斷當前Μ備份控制器是否在Μ備份控制器待命列表中,是則執(zhí)行步驟(12),否則執(zhí)行步驟⑷;
⑶判斷當前Μ備份控制器是否在Μ備份控制器工作列表中,是則執(zhí)行步驟(12),否則執(zhí)行步驟⑶;
⑷從Μ備份控制器故障列表中刪除當前Μ備份控制器,并添加到Μ備份控制器的待命列表中,然后執(zhí)行步驟(12);
(5)判斷當前Μ備份控制器是否在Μ備份控制器故障列表中,是則執(zhí)行步驟(11),否則執(zhí)行步驟(6);
(6)判斷當前Μ備份控制器是否在Μ備份控制器待命列表中,是則執(zhí)行步驟(8),否則執(zhí)行步驟(7);
(7)判斷當前Μ備份控制器是否在Μ備份控制器工作列表中,是則執(zhí)行步驟(9),否則執(zhí)行步驟(11);
⑶從Μ備份控制器待命列表中刪除當前Μ備份控制器,然后執(zhí)行步驟(10);
⑶從Μ備份控制器工作列表中刪除當前Μ備份控制器,然后執(zhí)行步驟(10);
(10)將當前Μ備份控制器添加到Μ備份控制器故障列表,然后執(zhí)行步驟(11);
(11)向告警服務系統(tǒng)發(fā)送告警信息,然后執(zhí)行步驟(12); (12)判斷當前M備份控制器是否是M備份控制器插入列表中最后一個控制器,是則程序結(jié)束,否則返回步驟⑴。
[0010]進一步,所述步驟3)中根據(jù)步驟2)的檢測結(jié)果和當前N工作控制器的狀態(tài)來確定相應的切換操作具體為:
a)獲取當前N工作控制器的網(wǎng)絡連接狀態(tài)、播放器狀態(tài)和播放列表信息,獲取成功則執(zhí)行步驟b),獲取失敗則執(zhí)行步驟g);
b)判斷當前N工作控制器是否N工作控制器的故障列表中,是則執(zhí)行步驟C),否則執(zhí)行步驟f);
c)對當前N工作控制器執(zhí)行切換操作,然后執(zhí)行步驟d);
d)從M備份控制器的工作列表中刪除當前N工作控制器對應的M備份控制器,并添加到M備份控制器的待命列表中,然后執(zhí)行步驟e);
e)從N工作控制器的故障列表中刪除當前N工作控制器,并將當前N工作控制器映射播放器的ID項清空,然后將當前N工作控制器添加到N工作控制器的工作列表中,最后執(zhí)行步驟q);
f)判斷當前N工作控制器是否在N工作控制器的工作列表中,是則執(zhí)行步驟q),否則執(zhí)行步驟P);
g)判斷當前N工作控制器是否在N工作控制器的工作列表中,是則執(zhí)行步驟i),否則執(zhí)行步驟h);
h)判斷當前N工作控制器是否在N工作控制器的故障列表中,是則執(zhí)行步驟P),否則執(zhí)行步驟O);
i)將當前N工作控制器從N工作控制器的工作列表中刪除,然后執(zhí)行步驟j);
j )判斷M備份控制器的待命列表中是否有備份控制器,有則執(zhí)行步驟m),否則執(zhí)行k);k)判斷當前N工作控制器的優(yōu)先級是否高于M備份控制器的工作列表中優(yōu)先級最小的備份控制器,是則執(zhí)行步驟P),否則執(zhí)行步驟I);
I)將M備份控制器的工作列表中優(yōu)先級最小的備份控制器切換為當前的N工作控制器,然后執(zhí)行步驟O);
m)將M備份控制器的待命列表中的第一個備份控制器切換為當前的N工作控制器,然后執(zhí)行步驟η);
η)從M備份控制器的待命列表中刪除第一個備份控制器,并將其添加到M備份控制器的工作列表,然后執(zhí)行步驟ο);
ο)將當前N工作控制器添加到N工作控制器的故障列表,然后執(zhí)行步驟P);
P)向告警服務系統(tǒng)發(fā)送告警信息,然后執(zhí)行步驟q);
q)判斷當前N工作控制器是否是N工作控制器的插入列表中最后一個控制器,是則程序結(jié)束,否則返回步驟a)。
[0011]進一步,所述步驟c)中的切換操作具體為:
I )判斷當前切換操作類型,若當前操作為普通切換操作則執(zhí)行步驟IV),若當前操作為優(yōu)先切換操作則執(zhí)行步驟II),若當前操作為恢復切換操作則執(zhí)行步驟V);
II)先根據(jù)被切換的M備份控制器控制的播放器輸出鏈路號,找到在N工作控制器的故障列表中的N工作控制器控制的播放器,并將N工作控制器的故障列表中的N工作控制器控制的播放器ID項清空,然后執(zhí)行步驟III);
III)根據(jù)N工作控制器的故障列表中的N工作控制器控制的播放器的自身鏈路號和輸出鏈路號向音視頻矩陣切換設備發(fā)送輸入輸出鏈路切換命令,然后執(zhí)行步驟IV);
IV)將需要切換的N工作控制器控制的播放器的輸出鏈路號、優(yōu)先級、播放狀態(tài)和播放信息拷貝到被切換的Μ備份控制器控制的播放器上,并將被切換的Μ備份控制器控制的播放器的ID號拷貝到需要切換的N工作控制器控制的播放器ID中,然后執(zhí)行步驟VI);
V)將需要切換的N工作控制器控制的播放器ID項清空,然后執(zhí)行步驟VI);
VI)根據(jù)需要切換的N工作控制器控制的播放器或被切換的Μ備份控制器控制的播放器自身鏈路號和輸出鏈路號向音視頻矩陣切換設備發(fā)送輸入輸出鏈路切換命令,完成切換操作。
[0012]本發(fā)明的音視頻矩陣切換方法當正常的音視頻播放控制器出現(xiàn)故障時快速、高效的將備份的音視頻播放控制器切換到音視頻播放系統(tǒng)中,用于替換出現(xiàn)故障的音視頻播放控制器,二者的切換是無縫切換,避免了由于正常的音視頻播放控制器出現(xiàn)故障帶來的無法向乘客顯示信息的缺陷,列車音視頻傳輸質(zhì)量得到了保障,在列車高速運行的情況下,也不會出現(xiàn)馬賽克、中斷等現(xiàn)象,為系統(tǒng)的維護爭取了更多的空間;此外本發(fā)明的切換方法通過設置切換的優(yōu)先級,可以保證將有限的資源用于更高需求的區(qū)域,實現(xiàn)的資源的合理分配,增強了系統(tǒng)的整體穩(wěn)定性。
[0013]
【專利附圖】
【附圖說明】
[0014]圖1為本發(fā)明的切換方法的流程圖示意圖;
圖2為本發(fā)明中讀取配置數(shù)據(jù)的流程圖;
圖3為本發(fā)明中檢測Μ備份控制器中各控制器狀態(tài)的流程圖;
圖4為本發(fā)明中檢測Ν工作控制器中各控制器狀態(tài)并執(zhí)行切換操作的流程圖;
圖5為本發(fā)明中切換操作的流程圖;
圖6為本發(fā)明的切換方法應用于PIS系統(tǒng)的工作流程圖。
[0015]
【具體實施方式】
[0016]為了更好的說明本發(fā)明的技術(shù)方案,現(xiàn)將本發(fā)明涉及的一些技術(shù)術(shù)語作一說明,其中,
N工作控制器各列表為PIS正常工作時的音視頻播放控制器序列,僅作循環(huán)檢測用;
Μ備份控制器各列表為PIS系統(tǒng)故障時熱切換用的音視頻播放控制器序列,僅作循環(huán)檢測用;
Μ備份控制器待命列表、工作列表、故障列表和N工作控制器工作列表、故障列表分別為:
經(jīng)過狀態(tài)監(jiān)測正常,且處于待命工作狀態(tài)的Μ備份控制器的列表;
經(jīng)過狀態(tài)監(jiān)測正常,且已處于切換后正在工作狀態(tài)的Μ備份控制器的列表;
經(jīng)過狀態(tài)檢測不正常的Μ備份控制器加入的列表; 經(jīng)過狀態(tài)監(jiān)測正常,且正在工作狀態(tài)的N工作控制器的列表;
經(jīng)過狀態(tài)檢測不正常的N工作控制器加入的列表;
此外,M備份控制器控制的播控器和N工作控制器控制的播控器的數(shù)據(jù)結(jié)構(gòu)如下:
自身鏈路號:播控器自身的音視頻交換設備輸入地址;
輸出鏈路號:音視頻交換設備輸出地址;
播控器ID:播控器初始化索引;
映射播控器ID:切換備份控制器的ID ;
播放狀態(tài):播控器的播放狀態(tài),播放暫停、播放中、音量等;
播放信息:播放節(jié)目的播放列表路徑;
優(yōu)先級:判斷是否優(yōu)先切換備份;
本發(fā)明的切換操作分為普通切換操作、優(yōu)先切換操作和恢復切換操作,其中:
普通切換操作指當N工作控制器發(fā)生故障時,且控制M備份控制器的待命列表不為空時所執(zhí)行的切換操作。
[0017]優(yōu)先切換操作指當N工作控制器發(fā)生故障時,且M備份控制器的待命列表為空時,在M備份控制器的工作列表中進行優(yōu)先級判斷,如果當前N故障控制器的優(yōu)先級高于M備份控制器的工作列表中優(yōu)先級最小的控制器時進行的切換操作。
[0018]恢復切換操作指當N故障列表中的故障播放控制器恢復正常時所進行的切換操作。
[0019]下面結(jié)合【專利附圖】
【附圖說明】本發(fā)明。
[0020]如圖1和圖6所示,本發(fā)明的切換方法主要包括以下幾個步驟:1)讀取N工作控制器和M備份控制器配置數(shù)據(jù),初始化N工作控制器工作列表和故障列表及M備份控制器待命列表、故障列表和工作列表;2)按照插入列表的先后順序檢測M備份控制器列表中每個控制器的網(wǎng)絡連接狀態(tài)、播放器狀態(tài)和播放列表信息,并根據(jù)每個控制器的檢測結(jié)果來設置M備份控制器各列表的狀態(tài);3)按照插入列表的先后順序檢測N工作控制器列表中每個控制器的網(wǎng)絡連接狀態(tài)、播放器狀態(tài)和播放列表信息,并根據(jù)步驟2)的檢測結(jié)果和當前N工作控制器的狀態(tài)來確定相應的切換操作,當N工作控制器中某個控制器故障時切換到M備份控制器以保證音視頻的正常傳輸;并重置與切換相關的N工作控制器和M備份控制器中相關控制器的狀態(tài);4)重復步驟2)和3)的操作,直至檢測到外部程序發(fā)出結(jié)束命令。
[0021]如圖2所示,上述步驟I)中讀取N工作控制器和M備份控制器配置數(shù)據(jù)的方法具體為:①從數(shù)據(jù)庫或者數(shù)據(jù)文件讀出提前配置好的M備份控制器配置數(shù)據(jù);?初始化M備份控制器待命列表、故障列表和工作列表,按優(yōu)先級順序由高到低存放M備份控制器中各控制器的ID ;其中,初始化M備份控制器待命列表是將完整的M備份控制器數(shù)據(jù)按讀取順序放入M備份控制器的待命列表待命從數(shù)據(jù)庫或者數(shù)據(jù)文件讀出提前配置好的N工作控制器信息初始化N工作控制器工作列表和故障列表,按優(yōu)先級順序由高到低存放N工作控制器中各控制器的ID ;其中初始化N工作控制器的工作列表是將完整的N工作控制器數(shù)據(jù)按讀取順序放入N工作控制器的工作列表;⑤將M備份控制器的故障列表、工作列表和N工作控制器的故障列表均置空。
[0022]如圖3所示,上述步驟2)中根據(jù)每個控制器的檢測結(jié)果來設置M備份控制器各列表的狀態(tài)的方法具體為:⑴獲取當前M備份控制器的網(wǎng)絡連接狀態(tài)、播放器狀態(tài)和播放列表信息,獲取成功則執(zhí)行步驟⑵;獲取失敗則執(zhí)行步驟(5);
⑵判斷當前M備份控制器是否在M備份控制器待命列表中,是則執(zhí)行步驟(12),否則執(zhí)行步驟⑷;
⑶判斷當前M備份控制器是否在M備份控制器工作列表中,是則執(zhí)行步驟(12),否則執(zhí)行步驟⑶;
⑷從M備份控制器故障列表中刪除當前M備份控制器,并添加到M備份控制器的待命列表中,然后執(zhí)行步驟(12);
(5)判斷當前M備份控制器是否在M備份控制器故障列表中,是則執(zhí)行步驟(11),否則執(zhí)行步驟(6);
(6)判斷當前M備份控制器是否在M備份控制器待命列表中,是則執(zhí)行步驟(8),否則執(zhí)行步驟(7);
(7)判斷當前M備份控制器是否在M備份控制器工作列表中,是則執(zhí)行步驟(9),否則執(zhí)行步驟(11);
⑶從M備份控制器待命列表中刪除當前M備份控制器,然后執(zhí)行步驟(10);
⑶從M備份控制器工作列表中刪除當前M備份控制器,然后執(zhí)行步驟(10);
(10)將當前M備份控制器添加到M備份控制器故障列表,然后執(zhí)行步驟(11);
(11)向告警服務系統(tǒng)發(fā)送告警信息,然后執(zhí)行步驟(12);
(12)判斷當前M備份控制器是否是M備份控制器插入列表中最后一個控制器,是則程序結(jié)束,否則返回步驟⑴。
[0023]如圖4所示,上述步驟3)中根據(jù)步驟2)的檢測結(jié)果和當前N工作控制器的狀態(tài)來確定相應的切換操作具體為:
a)獲取當前N工作控制器的網(wǎng)絡連接狀態(tài)、播放器狀態(tài)和播放列表信息,獲取成功則執(zhí)行步驟b),獲取失敗則執(zhí)行步驟g);
b)判斷當前N工作控制器是否N工作控制器的故障列表中,是則執(zhí)行步驟C),否則執(zhí)行步驟f);
c)對當前N工作控制器執(zhí)行切換操作,然后執(zhí)行步驟d);
d)從M備份控制器的工作列表中刪除當前N工作控制器對應的M備份控制器,并添加到M備份控制器的待命列表中,然后執(zhí)行步驟e);
e)從N工作控制器的故障列表中刪除當前N工作控制器,并將當前N工作控制器映射播放器的ID項清空,然后將當前N工作控制器添加到N工作控制器的工作列表中,最后執(zhí)行步驟q);
f)判斷當前N工作控制器是否在N工作控制器的工作列表中,是則執(zhí)行步驟q),否則執(zhí)行步驟P);
g)判斷當前N工作控制器是否在N工作控制器的工作列表中,是則執(zhí)行步驟i),否則執(zhí)行步驟h);
h)判斷當前N工作控制器是否在N工作控制器的故障列表中,是則執(zhí)行步驟P),否則執(zhí)行步驟O);
i)將當前N工作控制器從N工作控制器的工作列表中刪除,然后執(zhí)行步驟j);
j )判斷M備份控制器的待命列表中是否有備份控制器,有則執(zhí)行步驟m),否則執(zhí)行k); k)判斷當前N工作控制器的優(yōu)先級是否高于Μ備份控制器的工作列表中優(yōu)先級最小的備份控制器,是則執(zhí)行步驟Ρ),否則執(zhí)行步驟1);
I)將Μ備份控制器的工作列表中優(yōu)先級最小的備份控制器切換為當前的Ν工作控制器,然后執(zhí)行步驟o);
m)將Μ備份控制器的待命列表中的第一個備份控制器切換為當前的Ν工作控制器,然后執(zhí)行步驟η);
η)從Μ備份控制器的待命列表中刪除第一個備份控制器,并將其添加到Μ備份控制器的工作列表,然后執(zhí)行步驟ο);
ο)將當前Ν工作控制器添加到Ν工作控制器的故障列表,然后執(zhí)行步驟ρ);
Ρ)向告警服務系統(tǒng)發(fā)送告警信息,然后執(zhí)行步驟q);
q)判斷當前N工作控制器是否是N工作控制器的插入列表中最后一個控制器,是則程序結(jié)束,否則返回步驟a)。
[0024]如圖5所示,本發(fā)明的切換操作具體為:
I )判斷當前切換操作類型,若當前操作為普通切換操作則執(zhí)行步驟IV),若當前操作為優(yōu)先切換操作則執(zhí)行步驟II),若當前操作為恢復切換操作則執(zhí)行步驟V);
II)先根據(jù)被切換的Μ備份控制器控制的播放器輸出鏈路號,找到在Ν工作控制器的故障列表中的Ν工作控制器控制的播放器,并將Ν工作控制器的故障列表中的Ν工作控制器控制的播放器ID項清空,然后執(zhí)行步驟III);
III)根據(jù)N工作控制器的故障列表中的N工作控制器控制的播放器的自身鏈路號和輸出鏈路號向音視頻矩陣切換設備發(fā)送輸入輸出鏈路切換命令,然后執(zhí)行步驟IV);
IV)將需要切換的N工作控制器控制的播放器的輸出鏈路號、優(yōu)先級、播放狀態(tài)和播放信息拷貝到被切換的Μ備份控制器控制的播放器上,并將被切換的Μ備份控制器控制的播放器的ID號拷貝到需要切換的N工作控制器控制的播放器ID中,然后執(zhí)行步驟VI);
V)將需要切換的N工作控制器控制的播放器ID項清空,然后執(zhí)行步驟VI);
VI)根據(jù)需要切換的N工作控制器控制的播放器或被切換的Μ備份控制器控制的播放器自身鏈路號和輸出鏈路號來向音視頻矩陣切換設備發(fā)送輸入輸出鏈路切換命令,完成切換操作。
[0025]本發(fā)明所實用的音視頻切換設備是帶網(wǎng)絡功能的HDMI音視頻切換矩陣。所有的播放控制器均為工控機并在其上安裝了音視頻播放控制器程序。另有一臺車站服務器,本方法隨同服務程序安裝在這臺服務器上。使用時,用戶將播放控器輸出的HDMI制連接到HDMI切換矩陣的HDMI輸入端。HDMI切換矩陣輸出端連接到相應的HDMI顯示器上。服務器、工控機、HDMI切換矩陣通過交換機進行星型連接。開啟全部設備,軟件自動啟動。
[0026]為了更進一步說明本發(fā)明的技術(shù)方案,現(xiàn)舉例說明本發(fā)明的切換方法的切換過程:
Ν工作控制器的原始數(shù)據(jù)如下:
{Ν1播控器{自身鏈路號nl,輸出鏈路號nl,自身ID為nl,m播控器ID為空,播放狀態(tài)nl,播放列表nl,優(yōu)先級nl (高)},
N2播控器{自身鏈路號n2,輸出鏈路號n2,自身ID為n2,m播控器ID為空,播放狀態(tài)n2,播放列表n2,優(yōu)先級n2 (中)}, N3播控器{自身鏈路號n3,輸出鏈路號n3,自身ID為n3,m播控器ID為空,播放狀態(tài)n3,播放列表n3,優(yōu)先級n2 (低)}}
M備份控制器原始數(shù)據(jù)如下:
{Ml播控器{自身鏈路號ml,輸出鏈路號為空,自身ID為ml,m播控器ID為空,播放狀態(tài)為空,播放列表為空,優(yōu)先級為空}}
初始化N工作控制器列表數(shù)據(jù)為3臺播放控制器:
N {NI, N2, N3}
初始化M備份控制器列表數(shù)據(jù)為I臺播放控制器:
M {Ml}
初始化M備份控制器待命列表:
{Ml播控器{自身鏈路號ml,輸出鏈路號為空,自身ID為ml,m播控器ID為空,播放狀態(tài)為空,播放列表為空,優(yōu)先級為空}}
初始化N工作控制器工作列表:
{NI播控器{自身鏈路號nl,輸出鏈路號nl,自身ID為nl,m播控器ID為空,播放狀態(tài)nl,播放列表nl,優(yōu)先級nl (高)},
N2播控器{自身鏈路號n2,輸出鏈路號n2,自身ID為n2,m播控器ID為空,播放狀態(tài)n2,播放列表n2,優(yōu)先級n2 (中)},
N3播控器{自身鏈路號n3,輸出鏈路號n3,自身ID為n3,m播控器ID為空,播放狀態(tài)n3,播放列表n3,優(yōu)先級n2 (低)}}
M備份控制器工作列表{空}
M備份控制器故障列表{空}
N工作控制器故障列表{空}
實施例1
當N工作控制器列表2播控器發(fā)生故障時,M備份控制器列表設備均正常:
首先是檢測M備份控制器列表中Ml播控器的狀態(tài)成功,判斷是否在M備份控制器待命列表,結(jié)果是是。判斷Ml播放器是M備份控制器列表最后一個播控器,結(jié)果是是,退出M備份控制器列表檢測步驟。
[0027]然后是檢測N工作控制器列表中NI播控器的狀態(tài)成功,判斷是否在故障列表,結(jié)果是否,再判斷是否在工作列表,結(jié)果是是。
[0028]檢測N工作控制器列表N2播控器的狀態(tài)失敗,是否在工作列表,結(jié)果是是,從N工作控制器工作列表將N2刪除,此時M備份控制器待命列表長度為1,所以取得第一個播控器Ml執(zhí)行N2播放器拷貝操作數(shù)據(jù)結(jié)果如下:
Ml {自身鏈路號ml,輸出鏈路號n2,自身ID為ml,映射播控器IDn2,播放狀態(tài)n2,播放列表π2,優(yōu)先級n2(中)}
再將Ml播控器的ID賦值N2播控器的映射播控器ID項的結(jié)果如下:
N2{自身鏈路號n2,輸出鏈路號n2,自身ID為n2,映射播控器IDml,播放狀態(tài)n2,播放列表π2,優(yōu)先級n2(中)}
現(xiàn)在可以發(fā)送HDMI切換命令,將原先的“輸入N2 ->輸出N2”改為“輸入Ml->輸出N2”。隨后將M備份控制器待命列表中的Ml播控器刪除添加到M備份控制器工作列表中并將N2播控器添加到N工作控制器故障列表,再向告警服務程序發(fā)送告警信息。
[0029]檢測N工作控制器列表中N3播控器的狀態(tài)成功,判斷是否在故障列表,結(jié)果是否,再判斷是否在工作列表,結(jié)果是是。
此時N3播控器已是N工作控制器列表中最后一個播控器,所以本輪檢測已經(jīng)完成,完成一次切換操作。N工作控制器、Μ備份控制器工作狀態(tài)列表變化如下:
Μ備份控制器待命列表={空};
Μ備份控制器工作列表{Ml};
Μ備份控制器故障列表{空};
Ν工作控制器工作列表={NLN3};
Ν工作控制器故障列表{Ν2};
實施例2
在實例1的狀態(tài)下繼續(xù),Ν2播控器發(fā)生故障已經(jīng)切換為Ml播控器,Ml播控器在Μ備份控制器工作列表,Μ備份控制器待命列表為空。隨后Ν1播控器也發(fā)生故障:
首先是檢測Μ備份控制器列表中Ml播控器的狀態(tài)成功,判斷是否在Μ備份控制器待命列表,結(jié)果是否,隨即判斷Ml在Μ備份控制器在工作列表,結(jié)果是是。判斷Ml號播放器是Μ備份控制器列表最后一個播控器,退出Μ備份控制器列表檢測。
[0030]然后是檢測Ν工作控制器列表Ν1播控器的狀態(tài)失敗,是否在工作列表,結(jié)果是是,從Ν工作控制器工作列表將Ν1刪除,此時Μ備份控制器待命列表長度為0,所以判斷Ν1控制器的優(yōu)先級是否高于Μ備份控制器工作列表中的Ml播控器的優(yōu)先級,結(jié)果是Nl播控器高,因此先查找Ml輸出鏈路號N2,并在N工作控制器故障列表中查找相同鏈路號的N工作控制器播控器,然后找到N2播控器,將它的控制器映射ID清空,結(jié)果如下:
N2 {自身鏈路號n2,輸出鏈路號n2,自身ID為n2,映射播控器ID為空,播放狀態(tài)n2,播放列表n2,優(yōu)先級n2 (中)};
緊接著發(fā)送HDMI切換命令,將原先的“輸入Ml ->輸出N2”改為“輸入N2_>輸出N1”,發(fā)送HDMI切換命令,將原先的“輸入N1 ->輸出N1”改為“輸入Ml->輸出N1”
緊接著Ml播控器所執(zhí)行的N1播控器拷貝操作數(shù)據(jù)結(jié)果如下:
Ml{自身鏈路號ml,輸出鏈路號nl,自身ID為ml,映射播控器IDnl,播放狀態(tài)nl,播放列表nl,優(yōu)先級nl(高)};
再將Ml播控器的ID賦值N1的映射播控器ID結(jié)果如下:
Nl{自身鏈路號nl,輸出鏈路號nl,自身ID為nl,映射播控器IDml,播放狀態(tài)nl,播放列表nl,優(yōu)先級nl (中)};
現(xiàn)在可以發(fā)送HDMI切換命令,將原先的“輸入N1 ->輸出N1”改為“輸入Ml->輸出Nlo隨后將Μ備份控制器待命列表中的Ml刪除添加到Μ備份控制器工作列表中并將Ν1播控器添加到Ν工作控制器的故障列表,再向告警服務程序發(fā)送告警信息。
[0031]檢測Ν工作控制器列表中Ν2播控器的狀態(tài)失敗,是否在Ν工作控制器工作列表,結(jié)果是“否”,再判斷是否在Ν工作控制器故障列表結(jié)果是“是”,向告警服務程序發(fā)送告警信息。
[0032]檢測Ν工作控制器列表中Ν3播控器的狀態(tài)成功,判斷是否在故障列表,結(jié)果是否,再判斷是否在工作列表,結(jié)果是是。 此時N3已是N工作控制器列表中最后一個控制器所以本輪檢測已經(jīng)完成,完成一次切換操作。
[0033]此時,N工作控制器、M備份控制器工作狀態(tài)列表變化如下:
M備份控制器待命列表={空};
M備份控制器工作列表{Ml};
M備份控制器故障列表{空};
N工作控制器工作列表={N3};
N工作控制器故障列表{N2,NI};
實施例3
在實例2的狀態(tài)下繼續(xù),NI播控器和N2播控器發(fā)生故障,均在N工作控制器故障列表,因為NI播控器優(yōu)先級高于N2播控器,所以Ml播控器切換NI播控器,Ml播控器在M備份控制器工作列表,M備份控制器待命列表為空。隨后NI播控器恢復正常:
首先是檢測M備份控制器列表中Ml播控器的狀態(tài)成功,判斷是否在M備份控制器待命列表,結(jié)果是否,隨即判斷Ml播控器在M備份控制器的工作列表,結(jié)果是是。判斷Ml播放器是M備份控制器列表最后一個播控器,退出M備份控制器列表檢測。
[0034]檢測N工作控制器列表中NI播控器的狀態(tài)成功,NI播控器是否在N工作控制器故障列表,結(jié)果是“是”,現(xiàn)在可以發(fā)送HDMI切換命令,將原先的“輸入Ml ->輸出NI”改為“輸入N1-〉輸出NI ”。隨后將NI播控器映射播控器ID項指向的Ml播控器從M備份控制器工作列表中刪除,緊接著添加到M備份控制器待命列表中。再把NI播控器從N工作控制器故障列表中刪除添加到N工作控制器工作列表。
[0035]檢測N工作控制器列表中N2播控器的狀態(tài)失敗,是否在N工作控制器工作列表,結(jié)果是“否”,再判斷是否在N工作控制器故障列表,結(jié)果是“是”,向告警服務程序發(fā)送告警信息。
[0036]檢測N工作控制器列表中N3播控器的狀態(tài)成功,判斷是否在故障列表,結(jié)果是否,再判斷是否在工作列表結(jié)果是“是”。
此時N3播控器已是N工作控制器列表中最后一個控制器所以本輪檢測已經(jīng)完成,完成一次切換操作。
[0037]此時,N工作控制器、M備份控制器工作狀態(tài)列表變化如下:
M備份控制器待命列表={Ml};
M備份控制器工作列表{空};
M備份控制器故障列表{空};
N工作控制器工作列表={NLN3};
N工作控制器故障列表{N2};
以上是本發(fā)明的優(yōu)選實施方式,應當指出,對于本【技術(shù)領域】的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應視為本發(fā)明的保護范圍。
【權(quán)利要求】
1.一種基于系統(tǒng)的音視頻矩陣切換方法,其特征在于,所述方法包括如下步驟: 1)讀取~工作控制器和1備份控制器配置數(shù)據(jù),初始化~工作控制器工作列表和故障列表及1備份控制器待命列表、故障列表和工作列表; 2)按照插入列表的先后順序檢測1備份控制器列表中每個控制器的網(wǎng)絡連接狀態(tài)、播放器狀態(tài)和播放列表信息,并根據(jù)每個控制器的檢測結(jié)果來設置1備份控制器各列表的狀態(tài); 3)按照插入列表的先后順序檢測~工作控制器列表中每個控制器的網(wǎng)絡連接狀態(tài)、播放器狀態(tài)和播放列表信息,并根據(jù)步驟2)的檢測結(jié)果和當前~工作控制器的狀態(tài)來確定相應的切換操作,當~工作控制器中某個控制器故障時切換到1備份控制器以保證音視頻的正常傳輸;并重置與切換相關的~工作控制器和1備份控制器中相關控制器的狀態(tài); 4)重復步驟2)和3)的操作,直至檢測到外部程序發(fā)出結(jié)束命令。
2.根據(jù)權(quán)利要求1所述的切換方法,其特征在于,所述步驟1)中讀取~工作控制器和1備份控制器配置數(shù)據(jù)的方法具體為: ①從數(shù)據(jù)庫或者數(shù)據(jù)文件讀出提前配置好的1備份控制器配置數(shù)據(jù); ②初始化1備份控制器待命列表、故障列表和工作列表,按優(yōu)先級順序由高到低存放1備份控制器中各控制器的10 ;其中,初始化1備份控制器待命列表是將完整的1備份控制器數(shù)據(jù)按讀取順序放入1備份控制器的待命列表待命; ③從數(shù)據(jù)庫或者數(shù)據(jù)文件讀出提前配置好的~工作控制器信息; ④初始化~工作控制器工作列表和故障列表,按優(yōu)先級順序由高到低存放~工作控制器中各控制器的10 ;其中初始化~工作控制器的工作列表是將完整的~工作控制器數(shù)據(jù)按讀取順序放入~工作控制器的工作列表; ⑤將1備份控制器的故障列表、工作列表和~工作控制器的故障列表均置空。
3.根據(jù)權(quán)利要求1所述的切換方法,其特征在于,所述步驟2)中根據(jù)每個控制器的檢測結(jié)果來設置1備份控制器各列表的狀態(tài)的方法具體為: ⑴獲取當前1備份控制器的網(wǎng)絡連接狀態(tài)、播放器狀態(tài)和播放列表信息,獲取成功則執(zhí)行步驟⑵;獲取失敗則執(zhí)行步驟⑶; ⑵判斷當前1備份控制器是否在1備份控制器待命列表中,是則執(zhí)行步驟02〉,否則執(zhí)行步驟⑷; ⑶判斷當前1備份控制器是否在1備份控制器工作列表中,是則執(zhí)行步驟02〉,否則執(zhí)行步驟⑶; ⑷從I備份控制器故障列表中刪除當前1備份控制器,并添加到1備份控制器的待命列表中,然后執(zhí)行步驟(12); ⑶判斷當前1備份控制器是否在1備份控制器故障列表中,是則執(zhí)行步驟仰,否則執(zhí)行步驟(6); (6)判斷當前1備份控制器是否在1備份控制器待命列表中,是則執(zhí)行步驟⑶,否則執(zhí)行步驟(7); ⑴判斷當前1備份控制器是否在1備份控制器工作列表中,是則執(zhí)行步驟⑶,否則執(zhí)行步驟(11); ⑶從1備份控制器待命列表中刪除當前1備份控制器,然后執(zhí)行步驟⑩; (9)從1備份控制器工作列表中刪除當前1備份控制器,然后執(zhí)行步驟⑩; (10)將當前1備份控制器添加到1備份控制器故障列表,然后執(zhí)行步驟(11); (11)向告警服務系統(tǒng)發(fā)送告警信息,然后執(zhí)行步驟(12); (12)判斷當前1備份控制器是否是1備份控制器插入列表中最后一個控制器,是則程序結(jié)束,否則返回步驟⑴。
4.根據(jù)權(quán)利要求1所述的切換方法,其特征在于,所述步驟3)中根據(jù)步驟2)的檢測結(jié)果和當前~工作控制器的狀態(tài)來確定相應的切換操作具體為: 0獲取當前~工作控制器的網(wǎng)絡連接狀態(tài)、播放器狀態(tài)和播放列表信息,獲取成功則執(zhí)行步驟0,獲取失敗則執(zhí)行步驟0 ; 0判斷當前~工作控制器是否~工作控制器的故障列表中,是則執(zhí)行步驟4,否則執(zhí)行步驟?); 0?對當前~工作控制器執(zhí)行切換操作,然后執(zhí)行步驟(1); (1)從1備份控制器的工作列表中刪除當前~工作控制器對應的1備份控制器,并添加到1備份控制器的待命列表中,然后執(zhí)行步驟6); 6)從~工作控制器的故障列表中刪除當前~工作控制器,并將當前~工作控制器映射播放器的10項清空,然后將當前~工作控制器添加到~工作控制器的工作列表中,最后執(zhí)行步驟(1); 判斷當前~工作控制器是否在~工作控制器的工作列表中,是則執(zhí)行步驟0,否則執(zhí)行步驟¢); 判斷當前~工作控制器是否在~工作控制器的工作列表中,是則執(zhí)行步驟1),否則執(zhí)行步驟匕); 10判斷當前~工作控制器是否在~工作控制器的故障列表中,是則執(zhí)行步驟0,否則執(zhí)行步驟0); 1)將當前~工作控制器從~工作控制器的工作列表中刪除,然后執(zhí)行步驟; 』)判斷1備份控制器的待命列表中是否有備份控制器,有則執(zhí)行步驟!10,否則執(zhí)行10; 10判斷當前~工作控制器的優(yōu)先級是否高于1備份控制器的工作列表中優(yōu)先級最小的備份控制器,是則執(zhí)行步驟0,否則執(zhí)行步驟1); I)將1備份控制器的工作列表中優(yōu)先級最小的備份控制器切換為當前的~工作控制器,然后執(zhí)行步驟幻; 111)將1備份控制器的待命列表中的第一個備份控制器切換為當前的~工作控制器,然后執(zhí)行步驟10; II)從1備份控制器的待命列表中刪除第一個備份控制器,并將其添加到1備份控制器的工作列表,然后執(zhí)行步驟0); 0?將當前~工作控制器添加到~工作控制器的故障列表,然后執(zhí)行步驟0 ; 向告警服務系統(tǒng)發(fā)送告警信息,然后執(zhí)行步驟0 ; 判斷當前~工作控制器是否是~工作控制器的插入列表中最后一個控制器,是怎程序結(jié)束,否則返回步驟0。
5.根據(jù)權(quán)利要求4所述的切換方法,其特征在于,所述步驟(3)中的切換操作具體為: I)判斷當前切換操作類型,若當前操作為普通切換操作則執(zhí)行步驟⑶),若當前操作為優(yōu)先切換操作則執(zhí)行步驟10,若當前操作為恢復切換操作則執(zhí)行步驟乂); II)先根據(jù)被切換的1備份控制器控制的播放器輸出鏈路號,找到在~工作控制器的故障列表中的~工作控制器控制的播放器,并將~工作控制器的故障列表中的~工作控制器控制的播放器10項清空,然后執(zhí)行步驟111); III)根據(jù)~工作控制器的故障列表中的~工作控制器控制的播放器的自身鏈路號和輸出鏈路號來向音視頻矩陣切換設備發(fā)送輸入輸出鏈路切換命令,然后執(zhí)行步驟; 將需要切換的~工作控制器控制的播放器的輸出鏈路號、優(yōu)先級、播放狀態(tài)和播放信息拷貝到被切換的1備份控制器控制的播放器上,并將被切換的1備份控制器控制的播放器的10號拷貝到需要切換的~工作控制器控制的播放器10中,然后執(zhí)行步驟譏); V〉將需要切換的~工作控制器控制的播放器10項清空,然后執(zhí)行步驟譏); 見)根據(jù)需要切換的~工作控制器控制的播放器或被切換的1備份控制器控制的播放器自身鏈路號和輸出鏈路號來向音視頻矩陣切換設備發(fā)送輸入輸出鏈路切換命令,完成切換操作。
【文檔編號】H04N5/268GK104469181SQ201410791307
【公開日】2015年3月25日 申請日期:2014年12月19日 優(yōu)先權(quán)日:2014年12月19日
【發(fā)明者】王兆祎, 楊國文 申請人:北京卓越信通電子股份有限公司