本發(fā)明涉及一種測試飛控一體化設(shè)計(jì)的航天器全周期視頻處理系統(tǒng),屬于航天器測試。
背景技術(shù):
1、視頻數(shù)據(jù)是以空間站為代表的載人航天器最重要最具特色的載荷數(shù)據(jù)之一,在整個(gè)任務(wù)周期中視頻功能需要全時(shí)段使用,起到保持航天員與地面之間的實(shí)時(shí)溝通、地面對航天器狀態(tài)實(shí)時(shí)監(jiān)控等關(guān)鍵作用。基于ip?over?ccsds協(xié)議的天地一體化網(wǎng)絡(luò)在我國載人航天中已被采用,借助該協(xié)議,采用標(biāo)準(zhǔn)h.264視頻算法并采用rtp傳輸協(xié)議進(jìn)行封裝的多路高清視頻可從航天器實(shí)時(shí)下傳地面。
2、目前航天器測試階段和在軌階段的視頻處理采用的是兩套獨(dú)立的系統(tǒng),即測試階段采用綜合測試的視頻處理系統(tǒng)完成射頻鏈路下傳的實(shí)時(shí)、延時(shí)視頻及通過有線網(wǎng)絡(luò)下傳的實(shí)時(shí)視頻的處理;在軌階段采用飛控視頻處理系統(tǒng)完成射頻鏈路下傳的實(shí)時(shí)、延時(shí)視頻的處理。這種設(shè)計(jì)方式存在以下不足之處:
3、1)飛控處理系統(tǒng)驗(yàn)證不充分。由于飛控處理系統(tǒng)只能通過大系統(tǒng)對接的短暫時(shí)間里對系統(tǒng)功能性能進(jìn)行驗(yàn)證,很難覆蓋所有的使用場景,特別是可靠性和穩(wěn)定性得不到充分驗(yàn)證。
4、2)無法實(shí)現(xiàn)測試到飛控視頻處理的無縫銜接。由于綜合測試的視頻處理系統(tǒng)只工作到航天器發(fā)射前,而飛控視頻處理系統(tǒng)是從航天器入軌后才開始工作,無法實(shí)現(xiàn)航天器從測試到待發(fā)、發(fā)射、在軌視頻的無縫銜接處理,也無法實(shí)現(xiàn)測試階段與在軌階段視頻的比對判讀。
5、3)綜合測試階段的視頻處理系統(tǒng)功能完全覆蓋了飛控階段視頻處理系統(tǒng)的功能,獨(dú)立設(shè)計(jì)兩套系統(tǒng)也會帶來重復(fù)設(shè)計(jì)的成本提高。
6、另外,視頻處理系統(tǒng)在設(shè)計(jì)上還存在以下兩個(gè)主要的難點(diǎn):
7、1)實(shí)時(shí)和延時(shí)多路視頻文件的重構(gòu)回放問題。
8、目前對于多路視頻文件的重構(gòu)回放一般有兩種方法:第一種方法是在實(shí)時(shí)播放的過程中將每路視頻單獨(dú)存儲為可以直接播放的視頻文件;第二種方法是在數(shù)據(jù)存儲時(shí)保留時(shí)間戳信息,利用時(shí)間戳信息控制回放的速度。這兩種方式存在以下局限或不足之處:
9、占用存儲空間大。對于第一種方法,由于需要存儲每路視頻文件,存儲空間的占用增加了一倍,而且由于高清視頻文件占用存儲空間非常龐大,10路高清視頻每100秒就要占用1g字節(jié)存儲空間,大大提高了系統(tǒng)的存儲成本。
10、延時(shí)視頻下傳的速率遠(yuǎn)遠(yuǎn)大于實(shí)時(shí)播放速率,無法實(shí)時(shí)播放,因此無法采用第一種方法;對于第二種方法,數(shù)據(jù)的回放速率完全依賴于存儲時(shí)記錄的時(shí)間戳,如果數(shù)據(jù)存儲時(shí)沒有記錄時(shí)間戳信息,這種方法也無法使用。
11、2)天地直連網(wǎng)絡(luò)下傳的實(shí)時(shí)視頻的播放問題。
12、天地直連網(wǎng)絡(luò)通過脫插電纜等方式直接與地面網(wǎng)絡(luò)相連,是為了滿足在射頻鏈路無法使用的情況下也可以從航天器上的網(wǎng)絡(luò)下行遙測、視頻等網(wǎng)絡(luò)數(shù)據(jù)的需求。
13、基于igmp協(xié)議的指定源組播視頻點(diǎn)播技術(shù)在我國載人航天中已被采用,為了通過天地直連網(wǎng)絡(luò)進(jìn)行視頻點(diǎn)播測試,需要在接入天地直連網(wǎng)絡(luò)的主機(jī)上運(yùn)行視頻播放軟件,并通過igmp協(xié)議加入指定組并點(diǎn)播指定的視頻源,航天器上的網(wǎng)絡(luò)設(shè)備會定期通過igmp查詢報(bào)文查詢主機(jī)加入組的情況,如果主機(jī)沒有在規(guī)定的時(shí)間內(nèi)發(fā)送igmp報(bào)告報(bào)文報(bào)告自己加入組的情況,航天器上的網(wǎng)絡(luò)設(shè)備就會停止給主機(jī)發(fā)送視頻數(shù)據(jù)。
14、由于航天器上的網(wǎng)絡(luò)設(shè)備一般是采用定制化設(shè)計(jì),其實(shí)現(xiàn)的igmp協(xié)議與地面主機(jī)有可能不完全兼容,地面主機(jī)無法識別航天器上網(wǎng)絡(luò)設(shè)備發(fā)出的igmp查詢報(bào)文,從而不會發(fā)送igmp報(bào)告報(bào)文,導(dǎo)致航天器上網(wǎng)絡(luò)設(shè)備停止給主機(jī)發(fā)送視頻數(shù)據(jù),造成地面主機(jī)無法持續(xù)播放視頻。目前解決這個(gè)問題的辦法主要有兩個(gè):一個(gè)是通過設(shè)計(jì)航天器上網(wǎng)絡(luò)設(shè)備相同協(xié)議的定制主機(jī)實(shí)現(xiàn);第二個(gè)是在航天器上網(wǎng)絡(luò)和地面主機(jī)之間增加igmp代理來實(shí)現(xiàn),這兩種方式存在以下不足之處:
15、成本高、開發(fā)時(shí)間長。不管是采用定制主機(jī)還是igmp代理,都需要設(shè)計(jì)開發(fā)專用硬件設(shè)備,成本較高、開發(fā)時(shí)間長。
16、通用化程度低。由于是針對航天器上的協(xié)議定制開發(fā),只能用于單一航天器測試,無法在其他場合使用。
17、靈活性差。由于采用了專用硬件設(shè)備,當(dāng)出現(xiàn)新的需求時(shí)需要對硬件設(shè)備或者固件程序進(jìn)行修改,靈活性比較差。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明解決的技術(shù)問題是:克服現(xiàn)有技術(shù)的不足,提出了一種測試飛控一體化設(shè)計(jì)的航天器全周期視頻處理系統(tǒng),實(shí)現(xiàn)了測試到飛控視頻的無縫銜接和全周期處理,提高了視頻處理覆蓋率。
2、本發(fā)明的技術(shù)解決方案是:
3、一種測試飛控一體化設(shè)計(jì)的航天器全周期視頻處理系統(tǒng),包括數(shù)據(jù)接收及協(xié)議轉(zhuǎn)換模塊、實(shí)時(shí)視頻解析模塊、延時(shí)/回放視頻解析模塊、直連網(wǎng)絡(luò)視頻解析模塊和視頻解碼模塊;
4、數(shù)據(jù)接收及協(xié)議轉(zhuǎn)換模塊,連接綜合測試射頻處理設(shè)備、飛控中心的在軌數(shù)據(jù)接收端口;在航天器處于綜合測試階段時(shí),獲取綜合測試射頻處理設(shè)備數(shù)據(jù)并轉(zhuǎn)換為統(tǒng)一的ccsds傳輸幀格式,發(fā)送給實(shí)時(shí)視頻解析模塊和延時(shí)/回放視頻解析模塊;在航天器處于在軌階段時(shí),獲取在軌數(shù)據(jù)接收端口數(shù)據(jù)并轉(zhuǎn)換為統(tǒng)一的ccsds傳輸幀格式,發(fā)送給實(shí)時(shí)視頻解析模塊和延時(shí)/回放視頻解析模塊;
5、實(shí)時(shí)視頻解析模塊,接收ccsds傳輸幀并從ccsds傳輸幀中解析出傳輸層數(shù)據(jù),發(fā)送給視頻解碼模塊;
6、延時(shí)/回放視頻解析模塊,存儲ccsds傳輸幀,根據(jù)ip?over?ccsds協(xié)議解析出每一路rtp視頻數(shù)據(jù),控制每一路視頻數(shù)據(jù)的回放速度,發(fā)送給視頻解碼模塊;
7、直連網(wǎng)絡(luò)視頻解析模塊,連接航天器上的網(wǎng)絡(luò)設(shè)備,通過發(fā)送igmp協(xié)議加入指定組并點(diǎn)播指定的視頻源,再轉(zhuǎn)為單播協(xié)議后轉(zhuǎn)發(fā)給視頻解碼模塊;
8、視頻解碼模塊,接收實(shí)時(shí)視頻解析模塊、延時(shí)/回放視頻解析模塊、直連網(wǎng)絡(luò)視頻解析模塊的視頻數(shù)據(jù)進(jìn)行解碼播放。
9、進(jìn)一步地,所述延時(shí)/回放視頻解析模塊在需要回放時(shí),進(jìn)行如下處理:若rtp幀頭填寫有效相對時(shí)間戳信息,則利用相對時(shí)間戳信息控制每一路視頻數(shù)據(jù)的回放速度;否則,根據(jù)當(dāng)前回放視頻路數(shù)和視頻平均碼速率動態(tài)控制回放速度。
10、進(jìn)一步地,延時(shí)/回放視頻解析模塊利用相對時(shí)間戳信息控制每一路視頻數(shù)據(jù)的回放速度,具體方法為:
11、a)讀取需要回放的視頻文件,獲取文件的字節(jié)大小并除以ccsds幀長,得到ccsds總幀數(shù)nf,將控制進(jìn)度的最大值設(shè)置為nf;
12、b)判斷是否進(jìn)行回放進(jìn)度控制,若進(jìn)行控制,根據(jù)進(jìn)度選擇值ns,將文件讀取指針定位到第ns幀;否則從文件頭開始讀取;
13、c)讀取一幀數(shù)據(jù),按照ip?over?ccsds協(xié)議從ccsds幀中解析出ip數(shù)據(jù)包和rtp數(shù)據(jù)包;
14、d)根據(jù)ip數(shù)據(jù)包中的源ip地址確定當(dāng)前視頻路數(shù)n;
15、e)判斷是否為第n路視頻的第一個(gè)rtp數(shù)據(jù)包:
16、若是第n路視頻的第一個(gè)rtp數(shù)據(jù)包,則記錄該路視頻的rtp時(shí)間戳tns0和當(dāng)前計(jì)算機(jī)系統(tǒng)時(shí)間tnl0,將該rtp數(shù)據(jù)包在指定的端口上通過udp協(xié)議發(fā)出;
17、若不是第n路視頻的第一個(gè)rtp數(shù)據(jù)包,則記錄該路視頻的rtp時(shí)間戳tns和當(dāng)前計(jì)算機(jī)系統(tǒng)時(shí)間tnl,判斷tns-tns0≤tnl-tnl0是否成立,若成立,將該rtp數(shù)據(jù)包在指定的端口上通過udp協(xié)議發(fā)出;若不成立,延時(shí)δt=(tns-tns0)-(tnl-tnl0)后,將該rtp數(shù)據(jù)包在指定的端口上通過udp協(xié)議發(fā)出;
18、f)回到步驟b),直到文件讀取完畢。
19、進(jìn)一步地,延時(shí)/回放視頻解析模塊根據(jù)當(dāng)前回放視頻路數(shù)和視頻平均碼速率動態(tài)控制回放速度,具體方法為:
20、a)讀取需要回放的視頻文件,獲取文件的字節(jié)大小,除以ccsds幀長得到ccsds總幀數(shù)nf,并將控制進(jìn)度的最大值設(shè)置為nf;
21、b)判斷是否進(jìn)行回放進(jìn)度控制,如果進(jìn)行控制,根據(jù)進(jìn)度選擇值ns,將文件讀取指針定位到第ns幀,否則從文件頭開始讀??;
22、c)讀取一幀數(shù)據(jù),按照ip?over?ccsds協(xié)議從ccsds幀中解析出ip數(shù)據(jù)包和rtp數(shù)據(jù)包;
23、d)根據(jù)ip包頭中的源ip地址確定當(dāng)前視頻路數(shù)n;
24、e)判斷是否為第n路視頻的第一個(gè)rtp數(shù)據(jù)包:
25、若是第n路視頻的第一個(gè)rtp數(shù)據(jù)包,則記錄該路視頻的比特?cái)?shù)bn和當(dāng)前計(jì)算機(jī)系統(tǒng)時(shí)間tnl0,將該rtp數(shù)據(jù)包在指定的端口上通過udp協(xié)議發(fā)出;
26、若不是第n路視頻的第一個(gè)rtp數(shù)據(jù)包,則記錄該路視頻的累計(jì)比特?cái)?shù)bn和當(dāng)前計(jì)算機(jī)系統(tǒng)時(shí)間tnl;判斷bn≤brn×(tnl-tnl0)是否成立,若成立,將該rtp數(shù)據(jù)包在指定的端口上通過udp協(xié)議發(fā)出;若不成立,延時(shí)δt=bns/brn-(tnl-tnl0)后將該rtp數(shù)據(jù)包在指定的端口上通過udp協(xié)議發(fā)出;
27、f)回到步驟b),直到文件讀取完畢。
28、進(jìn)一步地,若計(jì)算得到的延時(shí)δt小于設(shè)定閾值,則不進(jìn)行延時(shí),直接發(fā)出。
29、進(jìn)一步地,所述直連網(wǎng)絡(luò)視頻解析模塊點(diǎn)播指定的視頻源,然后轉(zhuǎn)為單播協(xié)議后轉(zhuǎn)發(fā)給視頻解碼模塊,具體步驟如下:
30、a)網(wǎng)絡(luò)視頻解析模塊的服務(wù)器運(yùn)行商用視頻播放軟件,播放源設(shè)為指定源組播的方式,開啟播放后會自動發(fā)送igmp加組報(bào)文,航天器上網(wǎng)絡(luò)設(shè)備收到igmp加組報(bào)文后開始向服務(wù)器發(fā)送視頻播放軟件申請的指定源ip的視頻數(shù)據(jù);
31、b)服務(wù)器上運(yùn)行igmp協(xié)議處理軟件,調(diào)用pcap庫或者采用rawsocket的方式抓取igmp數(shù)據(jù)包;
32、c)igmp協(xié)議處理軟件抓取視頻播放軟件的igmp加組報(bào)文,記錄申請的視頻源ip地址;在收到航天器上網(wǎng)絡(luò)設(shè)備發(fā)出的igmp查詢報(bào)文時(shí),根據(jù)記錄的視頻源ip地址生成兼容航天器上網(wǎng)絡(luò)設(shè)備的igmp報(bào)告報(bào)文發(fā)送給航天器上網(wǎng)絡(luò)設(shè)備。
33、進(jìn)一步地,所述數(shù)據(jù)接收及協(xié)議轉(zhuǎn)換模塊以tcp方式從綜合測試射頻處理設(shè)備接收包含實(shí)時(shí)視頻和延時(shí)視頻的基帶數(shù)據(jù)并解析出ccsds傳輸幀,以udp方式接收飛控?cái)?shù)據(jù)并解析出ccsds傳輸幀。
34、進(jìn)一步地,實(shí)時(shí)視頻解析模塊以tcp方式從數(shù)據(jù)接收及協(xié)議轉(zhuǎn)換模塊接收ccsds傳輸幀,按照ip?over?ccsds協(xié)議從ccsds傳輸幀中解析出傳輸層數(shù)據(jù)。
35、進(jìn)一步地,實(shí)時(shí)視頻解析模塊解析出傳輸層數(shù)據(jù),根據(jù)需要對傳輸層端口進(jìn)行修改后采用操作系統(tǒng)套接字的方式利用通用網(wǎng)卡發(fā)送給視頻解碼模塊。
36、本發(fā)明與現(xiàn)有技術(shù)相比的優(yōu)點(diǎn)在于:
37、(1)本發(fā)明設(shè)計(jì)的航天器視頻處理系統(tǒng),實(shí)現(xiàn)了測試到飛控視頻的無縫銜接和全周期處理,提高了視頻處理覆蓋率,相對于采用兩套獨(dú)立系統(tǒng)降低了開發(fā)成本、提高了系統(tǒng)可靠性
38、(2)本發(fā)明在不增加存儲容量需求的情況下實(shí)現(xiàn)了多路視頻數(shù)據(jù)文件的事后視頻重構(gòu)和流暢播放,視頻回放不依賴于存儲時(shí)的時(shí)間戳信息,具有廣泛的適應(yīng)性。
39、(3)本發(fā)明設(shè)計(jì)的直連網(wǎng)絡(luò)視頻解析模塊,實(shí)現(xiàn)了天地直連網(wǎng)絡(luò)的視頻點(diǎn)播,降低了開發(fā)成本、縮短了開發(fā)時(shí)間,提高了系統(tǒng)的通用化程度。