基于滑窗的眾視點(diǎn)真三維顯示系統(tǒng)視頻同步播放方法
【專利摘要】本發(fā)明公開了一種基于滑窗的眾視點(diǎn)真三維顯示系統(tǒng)視頻同步播放方法,實(shí)施步驟如下:預(yù)先指定同步控制端和視頻播放客戶端,將各個(gè)視頻播放客戶端分別與同步控制端相連,將同步控制端與服務(wù)控制端相連;同步控制端判斷播放控制命令類型,如果為停止命令,則同步控制端及視頻播放客戶端停止輸出;如果類型為播放或快進(jìn)命令,則同步控制端及視頻播放客戶端分別讀取視頻幀到視頻流隊(duì)列中,同步控制端在輸出視頻幀時(shí)將要播放的下一視頻幀的時(shí)間標(biāo)簽廣播給各個(gè)視頻播放客戶端來保持視頻播放客戶端與同步控制端輸出同步。本發(fā)明具有可擴(kuò)展性好、時(shí)延離散型小、同步控制誤差低、同步性能好、播放進(jìn)度調(diào)節(jié)同步性能好、播放進(jìn)度調(diào)節(jié)同步速度快的優(yōu)點(diǎn)。
【專利說明】基于滑窗的眾視點(diǎn)真三維顯示系統(tǒng)視頻同步播放方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及三維顯示領(lǐng)域的視頻幀同步驅(qū)動(dòng)技術(shù),具體涉及一種基于滑窗的眾視點(diǎn)真三維顯示系統(tǒng)視頻同步播放方法。
【背景技術(shù)】
[0002]視覺是人類感受世界、認(rèn)識(shí)自然的重要途徑。長(zhǎng)期以來,研究者們一直在發(fā)展和完善顯示技術(shù),以便將客觀世界的三維信息轉(zhuǎn)換成數(shù)字、符號(hào)、文字、圖形及圖像等適當(dāng)形式的視覺信息,來供人們觀看、分析和利用。為了盡可能以人們喜聞樂見的形式來表述三維信息,顯示系統(tǒng)的設(shè)計(jì)必須充分考慮人類視覺特性以及視覺在三維感知方面所依賴的深度暗示。三維顯示技術(shù)既能提供反映視覺系統(tǒng)本身特點(diǎn)和感知特性的生理深度暗示,又能提供來源于日常積累的感知經(jīng)驗(yàn)和視覺記憶的心理深度暗示。三維顯示一直是全世界科學(xué)工作者不斷追求的目標(biāo),但是目前所謂的三維電視還只是局限于單視角的視差顯示。綜觀所有可能的三維顯示技術(shù),其主要顯示原理可分為:視差型三維顯示、全息三維顯示以及真三維顯不等。
[0003]隨著快速空間光調(diào)制器或顯示器技術(shù)、計(jì)算機(jī)技術(shù)的發(fā)展,使得真三維顯示(空間顯示)的實(shí)現(xiàn)成為可能。真三維顯示是三維顯示的最終目標(biāo),它是一種能夠?qū)崿F(xiàn)360度視角觀察的三維顯示技術(shù),是現(xiàn)實(shí)景物的最真實(shí)的再現(xiàn)。近幾年來真三維顯示的研究出現(xiàn)了一輪的研究熱潮,以美國為主的研發(fā)團(tuán)隊(duì)在近幾年內(nèi)不斷研發(fā)出不同類型的真三維顯示系統(tǒng),并在觀看效果上不斷提高。我們國家近幾年在真三維顯示中也進(jìn)行了探索性研究,并獲得了一定的研究成果。真三維顯示技術(shù)的突破對(duì)顯示領(lǐng)域具有顛覆性影響。其最主要優(yōu)點(diǎn)是圖像的真實(shí)三維性和視點(diǎn)的幾乎不受限制性。由之再現(xiàn)的三維場(chǎng)景真實(shí)地存在于用戶所在的物質(zhì)世界中,能提供幾乎所有的視覺深度暗示,位置各異的用戶無需借助其它器具,可以圍繞顯示區(qū)域看到與自身位置相對(duì)應(yīng)的信息,在寬廣的視場(chǎng)和視距范圍內(nèi)隨心所欲地邊走邊看,完全符合人類對(duì)真實(shí)場(chǎng)景的觀看方式,能協(xié)助用戶更快速、準(zhǔn)確地進(jìn)行感知,有望為那些包含實(shí)時(shí)變化數(shù)據(jù)的情境分析任務(wù)或者需要多人同時(shí)觀看的團(tuán)隊(duì)任務(wù)提供有效的可視化方案,因而在氣象分析、醫(yī)學(xué)成像和空中交通控制等領(lǐng)域中具有廣闊的應(yīng)用前景,并且在未來有望進(jìn)入家庭,實(shí)現(xiàn)真三維的視頻顯示。因此真三維顯示具有廣闊的發(fā)展前景以及廣闊的產(chǎn)業(yè)化潛能。積極探索實(shí)現(xiàn)真三維顯示的新途徑與新方法,掌握原創(chuàng)性的自主知識(shí)產(chǎn)權(quán),對(duì)我們國家未來的三維顯示技術(shù)的產(chǎn)業(yè)發(fā)展具有十分重要的意義。
[0004]真三維顯示技術(shù)是一個(gè)多學(xué)科綜合性技術(shù),涉及電子、計(jì)算機(jī)、光學(xué)、機(jī)械等多個(gè)學(xué)科領(lǐng)域。其顯示特性特別適合于需要進(jìn)行三維科學(xué)分析、情境仿真和協(xié)同操控等團(tuán)隊(duì)任務(wù),因而成為當(dāng)前虛擬現(xiàn)實(shí)與增強(qiáng)現(xiàn)實(shí)技術(shù)中的新手段與新技術(shù)。真三維顯示的研究工作不但促進(jìn)顯示技術(shù)的發(fā)展,同時(shí)將促進(jìn)信息處理,光學(xué),電子,機(jī)械,控制,通訊,計(jì)算機(jī)圖形學(xué),嵌入式軟件,多媒體技術(shù)等相關(guān)技術(shù)的發(fā)展。信息顯示技術(shù)和產(chǎn)品應(yīng)用范圍廣,產(chǎn)業(yè)效益巨大,是國家高技術(shù)戰(zhàn)略必爭(zhēng)之地;盡早開展真三維顯示相關(guān)技術(shù)的研究,在發(fā)展初級(jí)階段介入,有可能在部分技術(shù)上獲得領(lǐng)先地位,從而在該領(lǐng)域掌握源頭性及核心技術(shù)。真三維顯示的難點(diǎn)包括大容量真實(shí)數(shù)據(jù)的獲取、處理、傳輸以及再現(xiàn)等,尤其是再現(xiàn)技術(shù)。
[0005]如圖1所示,現(xiàn)有技術(shù)的眾視點(diǎn)真三維顯示系統(tǒng)包括視景采集部件C1?Cn、視景傳輸部件、視景處理部件和光學(xué)三維顯示部件P1?pn。視景采集部件采用眾視點(diǎn)技術(shù)進(jìn)行實(shí)時(shí)采集,由按照一定規(guī)律排列的相同光學(xué)參數(shù)的采集單元陣列構(gòu)成,其中采集單元陣列中采集單元(攝像頭)C1?Cn按照一定的排列方式排列,圖1中所示為線陣方式,相同光學(xué)參數(shù)的采集單元C1-Cn同步實(shí)時(shí)對(duì)三維物空間進(jìn)行抽樣采集并輸出給視景傳輸部件,以圖1中的R點(diǎn)為例,所有采集單元C1?Cn從不同角度同時(shí)對(duì)R點(diǎn)進(jìn)行視頻采集,將采集到的視頻進(jìn)行一系列視頻處理如編碼壓縮等,然后通過局域網(wǎng)或者廣域網(wǎng)實(shí)時(shí)傳輸?shù)揭暰疤幚聿考?。視景處理部件使得各個(gè)數(shù)據(jù)流按照視景采集的時(shí)間順序進(jìn)行播放顯示,從而嚴(yán)格真實(shí)地在光學(xué)三維顯示部件P1?Pn的光學(xué)顯示屏上恢復(fù)在視景采集過程中被采集的三維景象,即從觀察者方向就可看到R點(diǎn)的三維效果,即R’。由于眾視點(diǎn)真三維顯示系統(tǒng)涉及復(fù)雜的系統(tǒng)結(jié)構(gòu),因此如何實(shí)現(xiàn)一種眾視點(diǎn)真三維顯示系統(tǒng)視頻同步播放方法,成為一項(xiàng)亟待解決的關(guān)鍵技術(shù)問題。
【發(fā)明內(nèi)容】
[0006]本發(fā)明要解決的技術(shù)問題是提供一種可擴(kuò)展性好、時(shí)延離散型小、同步控制誤差低、同步性能好、播放進(jìn)度調(diào)節(jié)同步性能好、播放進(jìn)度調(diào)節(jié)同步速度快的基于滑窗的眾視點(diǎn)真三維顯示系統(tǒng)視頻同步播放方法。
[0007]為了解決上述技術(shù)問題,本發(fā)明采用的技術(shù)方案為:
一種基于滑窗的眾視點(diǎn)真三維顯示系統(tǒng)視頻同步播放方法,其特征在于實(shí)施步驟如
下:
1)預(yù)先指定眾視點(diǎn)真三維顯示系統(tǒng)的一個(gè)存儲(chǔ)有本地視頻的節(jié)點(diǎn)作為同步控制端,將其它存儲(chǔ)有本地視頻的節(jié)點(diǎn)作為視頻播放客戶端與投影儀相連,將各個(gè)視頻播放客戶端分別與同步控制端相連,將所述同步控制端與服務(wù)控制端通過網(wǎng)絡(luò)相連;當(dāng)所述同步控制端收到服務(wù)控制端發(fā)送的播放控制命令時(shí)跳轉(zhuǎn)執(zhí)行下一步;
2)所述同步控制端判斷收到播放控制命令的類型,如果播放控制命令的類型為停止命令,則同步控制端向各個(gè)視頻播放客戶端廣播停止命令,然后同步控制端和收到廣播的各個(gè)視頻播放客戶端分別停止讀取本地視頻幀到視頻流隊(duì)列;如果播放控制命令類型為播放或快進(jìn)命令,則跳轉(zhuǎn)執(zhí)行步驟3);
3)所述同步控制端向各個(gè)視頻播放客戶端廣播播放控制命令,所述同步控制端以及收到廣播的視頻播放客戶端分別按照播放控制命令對(duì)應(yīng)的幀速以及讀幀方式讀取本地存儲(chǔ)的帶有時(shí)間標(biāo)簽的視頻幀到視頻流隊(duì)列中,所述同步控制端在輸出視頻流隊(duì)列中視頻幀時(shí)將要播放的下一視頻幀的時(shí)間標(biāo)簽廣播給各個(gè)視頻播放客戶端,各個(gè)所述視頻播放客戶端根據(jù)收到的時(shí)間標(biāo)簽并分別基于滑窗將視頻流隊(duì)列中視頻幀向投影儀同步輸出。
[0008]作為本發(fā)明基于滑窗的眾視點(diǎn)真三維顯示系統(tǒng)視頻同步播放方法的進(jìn)一步改進(jìn):
所述步驟3)中各個(gè)視頻播放客戶端根據(jù)收到的時(shí)間標(biāo)簽并分別基于滑窗將視頻流隊(duì)列中視頻幀向投影儀同步輸出的詳細(xì)步驟如下:所述視頻播放客戶端預(yù)先在所述視頻流隊(duì)列中設(shè)置用于控制視頻幀流出的滑窗,所述滑窗的窗口大小為4幀;所述視頻播放客戶端在收到同步控制端發(fā)送的時(shí)間標(biāo)簽后,計(jì)算收到時(shí)間標(biāo)簽與滑窗中第2幀的時(shí)間標(biāo)簽之間的時(shí)間差值,然后將所述時(shí)間差值與預(yù)設(shè)的對(duì)應(yīng)播放控制命令的誤差允許范圍進(jìn)行對(duì)比,如果所述時(shí)間差值小于所述誤差允許范圍的下邊界值,則所述視頻播放客戶端將第I幀發(fā)送到投影儀輸出,并將滑窗在所述視頻流隊(duì)列中保持不動(dòng);如果所述時(shí)間差值在所述誤差允許范圍之內(nèi),則所述視頻播放客戶端將第2幀發(fā)送到投影儀輸出,并將滑窗在所述視頻流隊(duì)列中前進(jìn)I個(gè)幀;如果所述時(shí)間差值大于所述誤差允許范圍的上邊界值,則所述視頻播放客戶端將第3幀發(fā)送到投影儀輸出,并將滑窗在所述視頻流隊(duì)列中前進(jìn)2個(gè)幀。
[0009]所述步驟3)中播放控制命令對(duì)應(yīng)的幀速以及讀幀方式以及播放控制命令對(duì)應(yīng)的誤差允許范圍具體是指:當(dāng)播放控制命令為播放命令時(shí),所述播放控制命令對(duì)應(yīng)的幀速為25幀/秒、讀幀方式為逐幀讀取、誤差允許范圍的下邊界值為-20ms、誤差允許范圍的上邊界值為20ms ;當(dāng)播放控制命令為快進(jìn)命令時(shí),所述播放控制命令對(duì)應(yīng)的幀速為25幀/秒、讀幀方式為隔一幀讀取一幀、誤差允許范圍的下邊界值為-40ms、誤差允許范圍的上邊界值為 40ms。
[0010]本發(fā)明具有下述優(yōu)點(diǎn):
1、本發(fā)明預(yù)先指定眾視點(diǎn)真三維顯示系統(tǒng)的一個(gè)存儲(chǔ)有本地視頻的節(jié)點(diǎn)作為同步控制端,將其它存儲(chǔ)有本地視頻的節(jié)點(diǎn)作為視頻播放客戶端與投影儀相連,將各個(gè)視頻播放客戶端分別與同步控制端相連,將同步控制端與服務(wù)控制端通過網(wǎng)絡(luò)相連最終形成三級(jí)胖樹拓?fù)浣Y(jié)構(gòu),三級(jí)胖樹拓?fù)浣Y(jié)構(gòu)不僅具有可擴(kuò)展性好的優(yōu)點(diǎn),且由于拓?fù)浣Y(jié)構(gòu)的對(duì)稱性,同步控制端到各個(gè)視頻播放客戶端的時(shí)延離散型較小,降低了視頻幀同步的控制過程誤差,而且三級(jí)胖樹型拓?fù)浣Y(jié)構(gòu)的網(wǎng)絡(luò)直徑較小,等分帶寬較大,胖樹型拓?fù)浣Y(jié)構(gòu)能夠減少數(shù)據(jù)傳輸時(shí)需要經(jīng)過的結(jié)點(diǎn)數(shù)目,從而降低數(shù)據(jù)包的傳輸延遲,而且胖樹結(jié)構(gòu)使得樹的上層獲得了較高的帶寬,解決了普通的樹型結(jié)構(gòu)在核心層的帶寬瓶頸問題,使得每一層都具有相同的聚合帶寬,具有良好的容錯(cuò)特性,而且本發(fā)明的視頻播放客戶端根據(jù)收到的時(shí)間標(biāo)簽與同步控制端保持視頻幀輸出同步,本發(fā)明通過三級(jí)胖樹拓?fù)浣Y(jié)構(gòu)結(jié)合視頻流同步的控制等方面使得真三維顯示的再現(xiàn)技術(shù)得以精確地實(shí)現(xiàn),為真三維顯示的進(jìn)入日常生活提供了技術(shù)基礎(chǔ),而且能夠盡可能減小由于同步功能帶來的視頻幀時(shí)延開銷,具有可擴(kuò)展性好、時(shí)延離散型小、同步控制誤差低的優(yōu)點(diǎn)。
[0011]2、本發(fā)明的視頻播放客戶端進(jìn)一步采用滑窗來實(shí)現(xiàn)播放輸出的同步,減小由于同步功能帶來的視頻巾貞時(shí)延開銷,能夠方便地調(diào)節(jié)視頻巾貞播放進(jìn)度,調(diào)整多路視頻播放過程不同步的現(xiàn)象,能夠?qū)⒏髀芬曨l幀的誤差可以控制在I幀范圍內(nèi),具有同步性能好、播放進(jìn)度調(diào)節(jié)同步性能好、播放進(jìn)度調(diào)節(jié)同步速度快的優(yōu)點(diǎn)。
【專利附圖】
【附圖說明】
[0012]圖1為現(xiàn)有技術(shù)的眾視點(diǎn)真三維顯示系統(tǒng)的原理結(jié)構(gòu)示意圖。
[0013]圖2為本發(fā)明實(shí)施例的基本方法流程示意圖。
[0014]圖3為本發(fā)明實(shí)施例的滑窗控制視頻幀流出的原理示意圖。
[0015]圖4為本發(fā)明實(shí)施例形成的三級(jí)胖樹型拓?fù)浣Y(jié)構(gòu)的拓?fù)浣Y(jié)構(gòu)示意圖。
【具體實(shí)施方式】[0016]如圖2和圖3所示,本實(shí)施例基于滑窗的眾視點(diǎn)真三維顯示系統(tǒng)視頻同步播放方法的實(shí)施步驟如下:
1)預(yù)先指定眾視點(diǎn)真三維顯示系統(tǒng)的一個(gè)存儲(chǔ)有本地視頻的節(jié)點(diǎn)作為同步控制端,將其它存儲(chǔ)有本地視頻的節(jié)點(diǎn)作為視頻播放客戶端與投影儀相連,將各個(gè)視頻播放客戶端分別與同步控制端相連,將同步控制端與服務(wù)控制端通過網(wǎng)絡(luò)相連;當(dāng)同步控制端收到服務(wù)控制端發(fā)送的播放控制命令時(shí)跳轉(zhuǎn)執(zhí)行下一步;
2)同步控制端判斷收到播放控制命令的類型,如果播放控制命令的類型為停止命令,則同步控制端向各個(gè)視頻播放客戶端廣播停止命令,然后同步控制端和收到廣播的各個(gè)視頻播放客戶端分別停止讀取本地視頻幀到視頻流隊(duì)列;如果播放控制命令類型為播放或快進(jìn)命令,則跳轉(zhuǎn)執(zhí)行步驟3);
3)同步控制端向各個(gè)視頻播放客戶端廣播播放控制命令,同步控制端以及收到廣播的視頻播放客戶端分別按照播放控制命令對(duì)應(yīng)的幀速以及讀幀方式讀取本地存儲(chǔ)的帶有時(shí)間標(biāo)簽的視頻幀到視頻流隊(duì)列中,同步控制端在輸出視頻流隊(duì)列中視頻幀時(shí)將要播放的下一視頻幀的時(shí)間標(biāo)簽廣播給各個(gè)視頻播放客戶端,各個(gè)視頻播放客戶端根據(jù)收到的時(shí)間標(biāo)簽并分別基于滑窗將視頻流隊(duì)列中視頻幀向投影儀同步輸出。
[0017]本實(shí)施例中預(yù)先指定眾視點(diǎn)真三維顯示系統(tǒng)的一個(gè)存儲(chǔ)有本地視頻的節(jié)點(diǎn)作為同步控制端Client_Ctrl,將其它存儲(chǔ)有本地視頻的節(jié)點(diǎn)作為視頻播放客戶端Client與投影儀相連,將各個(gè)視頻播放客戶端Client分別與同步控制端Client_Ctrl相連,視頻播放客戶端Client相對(duì)于同步控制端Client_Ctrl而言都處于同樣的拓?fù)鋵哟?,由拓?fù)鋵哟蜗嗤囊曨l播放客戶端Client控制投影儀時(shí),各個(gè)視頻播放客戶端Client對(duì)投影儀的控制時(shí)間幾乎相同,同步控制更加簡(jiǎn)單方便。同步控制端Client_Ctrl將本節(jié)點(diǎn)中的視頻巾貞播放信息(下一幀中所包含的時(shí)間標(biāo)簽)以廣播的方式發(fā)送給其它視頻播放客戶端Client,接收到此信息的視頻播放客戶端Client則采用滑窗法將視頻流隊(duì)列中視頻幀向投影儀同步輸出。
[0018]如圖2和圖3所示,本實(shí)施例步驟3)中各個(gè)視頻播放客戶端Client根據(jù)收到的時(shí)間標(biāo)簽分別將視頻流隊(duì)列中視頻幀向投影儀同步輸出(采用滑窗法)的詳細(xì)步驟如下:視頻播放客戶端Client預(yù)先在視頻流隊(duì)列中設(shè)置用于控制視頻幀流出的滑窗,滑窗的窗口大小為4巾貞;視頻播放客戶端Client在收到同步控制端Client_Ctrl發(fā)送的時(shí)間標(biāo)簽tctrl后,計(jì)算收到時(shí)間標(biāo)簽與滑窗中第2幀的時(shí)間標(biāo)簽t2之間的時(shí)間差值,然后將時(shí)間差值trtr1-t2與預(yù)設(shè)的對(duì)應(yīng)播放控制命令的誤差允許范圍進(jìn)行對(duì)比,如果時(shí)間差值小于誤差允許范圍的下邊界值,則視頻播放客戶端Client將第I幀發(fā)送到投影儀輸出,并將滑窗在視頻流隊(duì)列中保持不動(dòng);如果時(shí)間差值在誤差允許范圍之內(nèi),則視頻播放客戶端Client將第2幀發(fā)送到投影儀輸出,并將滑窗在視頻流隊(duì)列中前進(jìn)I個(gè)幀;如果時(shí)間差值大于誤差允許范圍的上邊界值,則視頻播放客戶端Client將第3幀發(fā)送到投影儀輸出,并將滑窗在視頻流隊(duì)列中前進(jìn)2個(gè)幀,從而能夠方便地調(diào)節(jié)視頻幀播放進(jìn)度,調(diào)整多路視頻播放過程不同步的現(xiàn)象,能夠?qū)⒏髀芬曨l幀的誤差可以控制在I幀范圍內(nèi),同步控制效果好。需要說明的是,滑窗的窗口大小為4的時(shí)候已經(jīng)能夠控制常速、加快、減慢三種情況,此外也可以根據(jù)需要將滑窗的窗口大小調(diào)節(jié)為更大的值,此時(shí)只需要適應(yīng)性調(diào)整加快和減慢的幀數(shù)即可。[0019]本實(shí)施例的步驟3)中,播放控制命令對(duì)應(yīng)的幀速以及讀幀方式以及播放控制命令對(duì)應(yīng)的誤差允許范圍具體是指:當(dāng)播放控制命令為播放命令時(shí),播放控制命令對(duì)應(yīng)的幀速為25幀/秒、讀幀方式為逐幀讀取、誤差允許范圍的下邊界值為-20ms、誤差允許范圍的上邊界值為20ms ;當(dāng)播放控制命令為快進(jìn)命令時(shí),播放控制命令對(duì)應(yīng)的幀速為25幀/秒、讀幀方式為隔一幀讀取一幀、誤差允許范圍的下邊界值為-40ms、誤差允許范圍的上邊界值為40ms ο
[0020]以播放命令為例,當(dāng)同步控制端Client_Ctrl接收到播放命令‘play’后,首先將播放命令‘play’以廣播的方式發(fā)送到視頻播放客戶端Client,然后按照25幀/s的速度讀取本地存儲(chǔ)中的視頻幀保存到視頻流隊(duì)列中,(同步控制端Client_Ctrl和視頻播放客戶端Client中都存有本終端需要待播放的視頻,同步控制端Client_Ctrl只讀取視頻但是不連接投影儀不輸出視頻),視頻播放客戶端Client節(jié)點(diǎn)接收到播放命令后以同樣的方式進(jìn)行視頻幀讀取本地視頻,存入本地的視頻流隊(duì)列;在視頻播放客戶端Client通過投影儀輸出視頻幀時(shí),同步控制端Client_Ctrl節(jié)點(diǎn)將要播放的下一視頻幀的時(shí)間標(biāo)簽1:。&1廣播給所有視頻播放客戶端Client,當(dāng)視頻播放客戶端Client接收到時(shí)間標(biāo)簽之后和本地滑窗中的第2幀的時(shí)間標(biāo)簽t2對(duì)比,如果兩者的時(shí)間差值trtr1-t2在誤差允許的范圍內(nèi)(tctrl-t2≥-20ms且tetr1-t2 ( 20ms),則將此幀(本地滑窗中的第2幀)流出,滑窗前進(jìn)I個(gè)幀(即Step=I);如果本地Client節(jié)點(diǎn)的時(shí)間標(biāo)簽t2比接收到的時(shí)間標(biāo)簽tetal滯后超過20ms(tctrl-t2 > 20ms),則將第3中貞播放,滑窗前進(jìn)2個(gè)中貞(即Step=2);否則(tetrl-t2 < -20ms),將滑窗中的第I個(gè)幀流出且滑窗不前進(jìn)(即Step=0)。
[0021]以快進(jìn)命令為例,當(dāng)同步控制端Client_Ctrl接收到快進(jìn)命令后,首先將快進(jìn)命令‘fast’廣播到視頻播放客戶端Clientia=O, I…),然后以25幀/s的速度隔一幀讀取一幀,視頻播放客戶端Client收到‘fast’命令后仍以同樣的方式(25幀/s)讀取數(shù)據(jù)。如果視頻播放客戶端Client接收到快進(jìn)命令‘fast’之后,則仍把滑窗中第2個(gè)幀的時(shí)間標(biāo)簽t2與接收到的時(shí)間標(biāo)簽tetal作對(duì)比,如果在允許的誤差范圍內(nèi)(?ε&1_?2-40ms且tctrl-t2 ( 40ms),則將本幀流出,滑窗前進(jìn)1個(gè)幀(即Step=I);如果視頻播放客戶端Client的滑窗中第2個(gè)幀的時(shí)間標(biāo)簽&比接收到的時(shí)間標(biāo)簽億出滯后超過40ms(tetal-t2> 40ms),貝U將第3幀播放,滑窗前進(jìn)2個(gè)幀(即St印=2);否則(tetr1-t2 < -40ms),將滑窗中的第I個(gè)幀流出且滑窗前進(jìn)O個(gè)幀,即滑窗不前進(jìn)(即St印=0)。此外,當(dāng)同步控制端Client_Ctrl接收到暫停命令后,也首先將暫停命令‘stop’廣播,停止本地視頻幀讀取,視頻播放客戶端Client接收到‘stop’命令后也停止讀取視頻流到視頻流隊(duì)列。
[0022]如圖4所示,本實(shí)施例預(yù)先指定其中一個(gè)視頻播放客戶端Client作為同步控制端Client_Ctrl,將同步控制端Client_Ctrl分別將其余的各個(gè)視頻播放客戶端Client(即圖中的Client_ll~Client_18以及Client_81~Client_88)通過網(wǎng)絡(luò)相連,將同步控制端Client_Ctrl與服務(wù)控制端Server通過網(wǎng)絡(luò)相連,將各個(gè)視頻播放客戶端Client與投影儀(Pl~P8)相連,最終形成三級(jí)胖樹拓?fù)浣Y(jié)構(gòu),三級(jí)胖樹拓?fù)浣Y(jié)構(gòu)不僅具有可擴(kuò)展性好的優(yōu)點(diǎn),且由于拓?fù)浣Y(jié)構(gòu)的對(duì)稱性,同步控制端Client_Ctrl到各個(gè)視頻播放客戶端Client的時(shí)延離散型較小,降低了視頻幀同步的控制過程誤差,三級(jí)胖樹型拓?fù)浣Y(jié)構(gòu)的網(wǎng)絡(luò)直徑較小,等分帶寬較大,胖樹型拓?fù)浣Y(jié)構(gòu)能夠減少數(shù)據(jù)傳輸時(shí)需要經(jīng)過的結(jié)點(diǎn)數(shù)目,從而降低數(shù)據(jù)包的傳輸延遲,而且三級(jí)胖樹結(jié)構(gòu)使得樹的上層獲得了較高的帶寬,解決了普通的樹型結(jié)構(gòu)在核心層的帶寬瓶頸問題,使得每一層都具有相同的聚合帶寬,具有良好的容錯(cuò)特性,通過OMNeT++仿真測(cè)試驗(yàn)證,本實(shí)施例中三級(jí)胖樹拓?fù)浣Y(jié)構(gòu)為的性能優(yōu)秀的網(wǎng)絡(luò)結(jié)構(gòu)。本實(shí)施例中專門采用了同步控制端Client_Ctrl對(duì)其余視頻播放客戶端Client進(jìn)行統(tǒng)一控制,同步控制端Client_Ctrl與視頻播放客戶端Client為同種型號(hào)、同種配置的電腦,且同步控制端Client_Ctrl與所有視頻播放客戶端Client的距離幾乎相等,而服務(wù)控制端Server僅需和同步控制端Client_Ctrl進(jìn)行通信,從而使服務(wù)控制端Server可以采用多種形式的終端,并且可以處于任意位置。本實(shí)施例的三級(jí)胖樹拓?fù)浣Y(jié)構(gòu)中,投影儀和視頻播放客戶端Client之間的數(shù)據(jù)速率為最大8Mbps,一個(gè)視頻播放客戶端Client支持8路投影儀視頻輸出,每8個(gè)視頻播放客戶端Client通過一個(gè)千兆交換機(jī)與同步控制端Client_Ctrl相連,同步控制端Client_Ctrl發(fā)布控制信息給16個(gè)視頻播放客戶端Client (即圖中的Client_ll?Client_18以及Client_81?Client_88)。本實(shí)施例中,視頻播放客戶端Client、同步控制端Client_Ctrl、服務(wù)控制端Server之間基于UDP的Socket通信方法實(shí)現(xiàn)對(duì)三維顯示過程中不同視頻幀播放時(shí)間節(jié)點(diǎn)進(jìn)行動(dòng)態(tài)的調(diào)整。為了實(shí)現(xiàn)真三維顯示效果,需要使若干路投影儀在同一時(shí)刻將同步的視頻幀投映在同一個(gè)屏幕,帶有時(shí)間標(biāo)簽的視頻幀是本實(shí)施例實(shí)施的基礎(chǔ),因此在視頻采集系統(tǒng)采集到的視頻幀后,要求在視頻流的電腦接收端對(duì)其進(jìn)行加密的同時(shí)添加精度達(dá)到IOms的時(shí)間標(biāo)簽,本實(shí)施例中將時(shí)間標(biāo)簽放在視頻巾貞起始位置的第11?13字節(jié),且同步控制端Client_Ctrl使用read_frtime()函數(shù)讀取要播放的下一幀中所包含的時(shí)間標(biāo)簽,并將其轉(zhuǎn)換為整數(shù)型發(fā)送給各個(gè)視頻播放客戶端Client。
[0023]以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,本發(fā)明的保護(hù)范圍并不僅局限于上述實(shí)施例,凡屬于本發(fā)明思路下的技術(shù)方案均屬于本發(fā)明的保護(hù)范圍。應(yīng)當(dāng)指出,對(duì)于本【技術(shù)領(lǐng)域】的普通技術(shù)人員來說,在不脫離本發(fā)明原理前提下的若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本發(fā)明的保護(hù)范圍。
【權(quán)利要求】
1.一種基于滑窗的眾視點(diǎn)真三維顯示系統(tǒng)視頻同步播放方法,其特征在于實(shí)施步驟如下: 1)預(yù)先指定眾視點(diǎn)真三維顯示系統(tǒng)的一個(gè)存儲(chǔ)有本地視頻的節(jié)點(diǎn)作為同步控制端,將其它存儲(chǔ)有本地視頻的節(jié)點(diǎn)作為視頻播放客戶端與投影儀相連,將各個(gè)視頻播放客戶端分別與同步控制端相連,將所述同步控制端與服務(wù)控制端通過網(wǎng)絡(luò)相連;當(dāng)所述同步控制端收到服務(wù)控制端發(fā)送的播放控制命令時(shí)跳轉(zhuǎn)執(zhí)行下一步; 2)所述同步控制端判斷收到播放控制命令的類型,如果播放控制命令的類型為停止命令,則同步控制端向各個(gè)視頻播放客戶端廣播停止命令,然后同步控制端和收到廣播的各個(gè)視頻播放客戶端分別停止讀取本地視頻幀到視頻流隊(duì)列;如果播放控制命令類型為播放或快進(jìn)命令,則跳轉(zhuǎn)執(zhí)行步驟3); 3)所述同步控制端向各個(gè)視頻播放客戶端廣播播放控制命令,所述同步控制端以及收到廣播的視頻播放客戶端分別按照播放控制命令對(duì)應(yīng)的幀速以及讀幀方式讀取本地存儲(chǔ)的帶有時(shí)間標(biāo)簽的視頻幀到視頻流隊(duì)列中,所述同步控制端在輸出視頻流隊(duì)列中視頻幀時(shí)將要播放的下一視頻幀的時(shí)間標(biāo)簽廣播給各個(gè)視頻播放客戶端,各個(gè)所述視頻播放客戶端根據(jù)收到的時(shí)間標(biāo)簽并分別基于滑窗將視頻流隊(duì)列中視頻幀向投影儀同步輸出。
2.根據(jù)權(quán)利要求1所述的基于滑窗的眾視點(diǎn)真三維顯示系統(tǒng)視頻同步播放方法,其特征在于,所述步驟3)中各個(gè)視頻播放客戶端根據(jù)收到的時(shí)間標(biāo)簽并分別基于滑窗將視頻流隊(duì)列中視頻幀向投影儀同步輸出的詳細(xì)步驟如下:所述視頻播放客戶端預(yù)先在所述視頻流隊(duì)列中設(shè)置用于控制視頻幀流出的滑窗,所述滑窗的窗口大小為4幀;所述視頻播放客戶端在收到同步控制端發(fā)送的時(shí)間標(biāo)簽后,計(jì)算收到時(shí)間標(biāo)簽與滑窗中第2幀的時(shí)間標(biāo)簽之間的時(shí)間差值,然后將所述時(shí)間差值與預(yù)設(shè)的播放控制命令對(duì)應(yīng)的誤差允許范圍進(jìn)行對(duì)比,如果所述時(shí)間差值小于所述誤差允許范圍的下邊界值,則所述視頻播放客戶端將第I幀發(fā)送到投影儀輸出,并將滑窗在所述視頻流隊(duì)列中保持不動(dòng);如果所述時(shí)間差值在所述誤差允許范圍之內(nèi),則所述視頻播放客戶端將第2幀發(fā)送到投影儀輸出,并將滑窗在所述視頻流隊(duì)列中前進(jìn)I個(gè)幀;如果所述時(shí)間差值大于所述誤差允許范圍的上邊界值,則所述視頻播放客戶端將第3幀發(fā)送到投影儀輸出,并將滑窗在所述視頻流隊(duì)列中前進(jìn)2個(gè)幀。
3.根據(jù)權(quán)利要求2所述的基于滑窗的眾視點(diǎn)真三維顯示系統(tǒng)視頻同步播放方法,其特征在于,所述步驟3)中播放控制命令對(duì)應(yīng)的幀速以及讀幀方式以及播放控制命令對(duì)應(yīng)的誤差允許范圍具體是指:當(dāng)播放控制命令為播放命令時(shí),所述播放控制命令對(duì)應(yīng)的幀速為25幀/秒、讀幀方式為逐幀讀取、誤差允許范圍的下邊界值為-20ms、誤差允許范圍的上邊界值為20ms ;當(dāng)播放控制命令為快進(jìn)命令時(shí),所述播放控制命令對(duì)應(yīng)的幀速為25幀/秒、讀幀方式為隔一幀讀取一幀、誤差允許范圍的下邊界值為-40ms、誤差允許范圍的上邊界值為40ms ο
【文檔編號(hào)】H04N13/00GK103873846SQ201410108191
【公開日】2014年6月18日 申請(qǐng)日期:2014年3月24日 優(yōu)先權(quán)日:2014年3月24日
【發(fā)明者】竇文華, 任雙印, 肖立權(quán), 李寶亮, 彭超, 魯佳, 周樂文, 韓崗, 蘇醒, 郭龍飛, 任斌, 葉進(jìn), 覃晨, 錢悅 申請(qǐng)人:中國人民解放軍國防科學(xué)技術(shù)大學(xué)