專利名稱:一種多路媒體同步呈現(xiàn)控制方法
技術(shù)領(lǐng)域:
本發(fā)明屬計算機應(yīng)用領(lǐng)域,主要涉及多路媒體的同步控制方法,特別涉及一種多路媒體同步呈現(xiàn)控制方法。
背景技術(shù):
多媒體技術(shù)已得到廣泛應(yīng)用,然而目前的多媒體技術(shù)主要面向于單路媒體的點播及直播技術(shù)。隨著技術(shù)的發(fā)展,多路流的應(yīng)用將逐漸進(jìn)入人們的視野。在多路媒體的捕捉、傳輸、呈現(xiàn)過程中,同步問題是必然要解決的問題。目前的研究中,對各路媒體自身的特點及實際應(yīng)用中對媒體間同步的不同要求則沒有相應(yīng)的考慮。
針對媒體同步控制方法,申請人通過查新,得到6篇與本發(fā)明相關(guān)密切的文獻(xiàn),它們分別是1.Foreman,D.J.,Managing data in distributed multimedia conferencingapplications,Multimedia,IEEE,2002,9,30-37此文獻(xiàn)主要涉及在多路流媒體中,傳輸過程中的同步管理問題。
2.Gonzalez,A.J.and Adbel-Wahab,H.,Light-weight stream synchronizationframework for multimedia collaborative applications,Proceedings.ISCC 2000.Fifth IEEE Symposium on,398-403此文獻(xiàn)通過調(diào)整發(fā)送端與接收端的時鐘偏差,以達(dá)到同步效果,目的在于解決媒體在傳輸過程中的同步問題。
3.Huang,Chung-Ming and Kung,Hsu-Yang and Yang,Jiong-Liang,PARKapaused-and-run k-stream multimedia synchronization control scheme,DistributedComputing Systems,2000.Proceedings.20th International Conference on,2000,272-279此文獻(xiàn)在傳輸過程中,通過PARK方法,達(dá)到最后的同步效果,確保緩沖區(qū)不至于上溢或下溢,實現(xiàn)在傳輸過程中的同步。
4.Huang,C.-M.and Wang,C.and Lin,C.-H.,Interactive multimediasynchronisation in the distributed environment using the formal approach,Software,IEE Proceedings,2000,V147131-143此文獻(xiàn)采用動態(tài)擴展有限狀態(tài)機描述了多媒體傳輸過程中的同步問題,并建立了交互式媒體傳輸過程的同步操作核心,可供上層調(diào)用。
5.Ito,K.and Tasaka,S.and Ishibashi,Y.,Effect of packet scheduling algorithmson media synchronization quality in the Internet,Communications,2001.ICC 2001.IEEE International Conference on,2001,V92865-2871此文獻(xiàn)采用在路由器進(jìn)行包調(diào)度的方法實現(xiàn)媒體在傳輸過程的同步。
6.Liu,Haining and El Zarki,M.,Towards the Delay and Synchronization Controlfor Networked Real-Time Multi-Object Multimedia Applications,Object-Oriented Real-Time Dependable Systems,2003.WORDS 2003 Fall,2003,P79-79此文獻(xiàn)提出了實時多路流的同步評價方法,并將其用于傳輸控制中,該方法適用于具有同等重要程度的兩路媒體之間的同步問題。
綜上所述可知,目前就多媒體同步問題的研究主要集中在傳輸過程中的同步,對媒體在最后呈現(xiàn)過程中的同步?jīng)]有考慮。然而,申請人通過實測發(fā)現(xiàn),如果在呈現(xiàn)過程中不進(jìn)行同步管理,則經(jīng)過較長時間的播放后,媒體的同步差異會增大到不可接受的程度。所以,多路媒體的同步呈現(xiàn)控制對媒體的最后呈現(xiàn)效果具有至關(guān)重要影響。此外,現(xiàn)有對多路媒體同步的研究一般只考慮了兩路媒體間的情況,沒有考慮不同媒體對最終呈現(xiàn)效果的影響,不能適應(yīng)媒體路數(shù)更多并且各路對最終呈現(xiàn)效果影響程度不同的情況。因此,研究一種方法,針對各路媒體具有不同重要程度及不同同步要求進(jìn)行有區(qū)別的呈現(xiàn)同步控制是必要的。
發(fā)明內(nèi)容
本發(fā)明的目的在于克服上述現(xiàn)有技術(shù)不足,提出一種多路媒體的同步呈現(xiàn)控制方法,針對不同媒體的重要程度及媒體之間的不同同步需求進(jìn)行有區(qū)別的同步呈現(xiàn)控制,以提高多路媒體同步呈現(xiàn)的總體效果。
本發(fā)明解決兩路以上媒體呈現(xiàn)時的時間同步問題,多路媒體可以來自相同的源或不同的源,可以是視頻、音頻、字幕等媒體類型,支持asf、rm、ra、mp3、mov、wmv、wma、avi、mpeg4、wav、cd音軌、VCD、DVD等主流媒體格式以及srt、sub等字幕格式,只要它們之間存在同步關(guān)系。但本方法解決媒體在解碼之后、呈現(xiàn)之前的同步問題。
本發(fā)明包括媒體呈現(xiàn)模塊和同步主控模塊。媒體呈現(xiàn)模塊包含對應(yīng)各路媒體顯示或表現(xiàn)的多個子模塊,它們各自負(fù)責(zé)一路媒體的解碼并送往輸出呈現(xiàn)設(shè)備,在此過程中實時檢測同步主控模塊發(fā)來的同步指令,并予以執(zhí)行;同步主控模塊監(jiān)控各媒體呈現(xiàn)模塊的當(dāng)前呈現(xiàn)時間,并進(jìn)行計算及判斷,確定是否需要向各路媒體發(fā)出同步控制指令,以實現(xiàn)同步呈現(xiàn)控制。
實現(xiàn)上述發(fā)明的技術(shù)方案是按以下步驟進(jìn)行a.同步主控模塊在媒體開始播放時,獲取各路媒體的重要程度pi及任意兩路媒體間的同步許可差異rij;b.計算最小許可同步差異Dmin,計算式為Dmin=min(rij),i,j∈1...n,確定同步時間間隔Ts,其取值范圍為5~20倍Dmin;c.獲取各路媒體的當(dāng)前呈現(xiàn)時間ti,計算各路媒體的同步權(quán)重wi=Σj=1,j≠inpi·pjrij,]]>多路媒體對象組S的呈現(xiàn)平均時間Ta=Σi=1ntiwiΣi=1nwi,]]>同步權(quán)重差dwi=Σj=1n(ti-tjrij·pi·pj)Σj=1npi·pjrij,]]>同步差di=ti-Ta;式中,i,j代表媒體流集合中的某一路流的序號(i≠j)pi第i路媒體的重要程度rij第i路媒體與第j路媒體間的同步許可差異(i≠j)ti系i路媒體的當(dāng)前呈現(xiàn)時間 wi第i路媒體的同步權(quán)重dwi第i路媒體的同步權(quán)重差di第i路媒體的同步差Ta多路媒體呈現(xiàn)平均時間 Dmin最小許可同步差異Ts同步時間間隔d.對于各路媒體同步權(quán)重差dwi組成的集合,取L=max{dwi}-min{dwi},i∈1,2...n;將該集合劃分成3個互不相交的子集[min{dwi},min{dwi}+L/3],(min{dwi}+L/3,min{dwi}+2L/3)和[min{dwi}+2L/3,max{dwi}]。對于dwi∈[min{dwi},min{dwi}+L/3]的媒體si,組成媒體呈現(xiàn)延遲集合SSS;對于dwi∈[min{dwi}+2L/3,max{dwi}]的媒體si,組成媒體呈現(xiàn)超前集合Ssf;e.向呈現(xiàn)時間超前的媒體集合發(fā)出同步指令Sync(Ssf,dsf,slower,tallow),要求Ssf在tallow的時間內(nèi),消除值為dsf的呈現(xiàn)時間超前;向呈現(xiàn)時間延后的媒體集合發(fā)出同步指令Sync(Sss,dss,faster,tallow),要求Sss在tallow的時間內(nèi),消除值為dsf的呈現(xiàn)時間延遲;tallow取0.8~1.2倍同步時間間隔Ts;f.當(dāng)媒體呈現(xiàn)模塊收到同步控制模塊發(fā)出的同步指令時,在呈現(xiàn)時進(jìn)行如下同步操作1)當(dāng)媒體呈現(xiàn)模塊收到減速呈現(xiàn)指令時,對于可以方便控制單個采樣呈現(xiàn)時間的媒體,則通過延長采樣的呈現(xiàn)時間達(dá)到同步;2)當(dāng)媒體呈現(xiàn)模塊收到加速呈現(xiàn)指令時,對于可以方便控制單個采樣呈現(xiàn)時間的媒體,則通過縮短采樣的呈現(xiàn)時間達(dá)到同步;3)當(dāng)媒體呈現(xiàn)模塊收到減速呈現(xiàn)指令時,對于不便于或不能控制單個采樣的輸出時間的媒體,則通過在采樣輸出隊列中插入相鄰采樣的拷貝達(dá)到同步;4)當(dāng)媒體呈現(xiàn)模塊收到加速呈現(xiàn)指令時,對于不便于或不能控制單個采樣的輸出時間的媒體則通過在采樣輸出隊列中刪除必要數(shù)量采樣達(dá)到同步;g.當(dāng)各路媒體均播放完成,則結(jié)束;如果還有媒體沒有播放完,則休眠至下一同步時間間隔,重新獲取各媒體呈現(xiàn)時間,進(jìn)行新一輪同步控制操作。
所述的獲取各路媒體的重要程度pi及同步許可差異fij分別按照如下方法確定根據(jù)實際應(yīng)用最終媒體呈現(xiàn)質(zhì)量通過用戶反饋的方式統(tǒng)計得出,方法如下按照具體用戶群將媒體呈現(xiàn)質(zhì)量結(jié)果分為兩級a、效果很好b、基本可以接受;在測試pi時,使除了媒體si以外的其余各路媒體的解碼后數(shù)據(jù)與原始采樣數(shù)據(jù)間的均方差MSE均為最小值0,對于媒體si,從0開始逐漸加大其均方差MSE的值,有98%的用戶確定整個多路媒體組的呈現(xiàn)質(zhì)量很好時,此時的si的均方差MSE的值為MSEi,98;僅有5%的用戶確定整個多路媒體組的呈現(xiàn)質(zhì)量很好時,此時si的均方差MSE記為MSEi,5;pi按如下公式計算pi=sigmoid(100MSEi,5-MSEi,98)×2-1]]>rij的取值根據(jù)唇音同步需求、VoIP延遲需求及相關(guān)QoS質(zhì)量控制標(biāo)準(zhǔn),在實際應(yīng)用需求中通過用戶反饋的方式統(tǒng)計得出;具體方法如下將媒體流Si和sj的同步時間差從0ms取值開始,逐漸增大,有5%的用戶能感知到該兩路媒體的時間同步差異時,此時的同步時間差取為rij的值,即就是使得rij取用戶能感知兩路媒體差異的最小值。
本發(fā)明的方法采用了各路媒體的重要程度及同步要求作為參數(shù),使得在多路媒體呈現(xiàn)過程中,重要程度高及同步要求高的媒體得到優(yōu)先考慮,解決現(xiàn)有同步方案所存在的不考慮媒體重要性及各路媒體之間不同同步要求的局限性。本發(fā)明適用于兩路及兩路以上任意類型媒體間的呈現(xiàn)同步控制。
圖1是本發(fā)明多路媒體同步呈現(xiàn)控制系統(tǒng)結(jié)構(gòu)圖;圖2是本發(fā)明同步主控模塊控制流程圖;
圖3是本發(fā)明采樣呈現(xiàn)時間延長示意圖;圖3a是本發(fā)明采樣呈現(xiàn)時間延長前示意圖;圖3b是本發(fā)明采樣呈現(xiàn)時間延長后示意圖;圖4是本發(fā)明采樣呈現(xiàn)時間縮短示意圖;圖4a是本發(fā)明采樣呈現(xiàn)時間縮短前示意圖;圖4b是本發(fā)明采樣呈現(xiàn)時間縮短后示意圖;圖5是本發(fā)明插入采樣示意圖;圖6是本發(fā)明刪除采樣示意圖。
下面結(jié)合附圖對本發(fā)明的內(nèi)容作進(jìn)一步詳細(xì)說明。
具體實施例方式
對于需要進(jìn)行同步呈現(xiàn)的一個多路媒體組S,其所包含的n路媒體對象分別記為s1、s2...sn;對其中任一媒體對象si,它在媒體組中的重要程度表示為pi,其值表示該路媒體對本媒體組的最終呈現(xiàn)質(zhì)量的影響大小。對于媒體si,sj,i≠j,它們之間的同步要求閾值為rij(rij>0),當(dāng)二者之間的同步時間差小于rij時,同步效果很好,其最小值計為最小許可同步差異,即Dmin=min(rij),i,j∈1...n。在實際播放過程中,任意時刻媒體對象si的當(dāng)前呈現(xiàn)時間pts為ti。多路媒體同步控制機制由媒體呈現(xiàn)模塊及同步主控模塊兩部分組成。對于由n路媒體組成的多路媒體組,含有n個媒體呈現(xiàn)模塊,它們各自負(fù)責(zé)一路媒體的解碼及送往輸出呈現(xiàn)設(shè)備,在此過程中檢測同步主控模塊發(fā)的同步指令,并予以執(zhí)行;同步主控模塊監(jiān)控各媒體呈現(xiàn)模塊的當(dāng)前呈現(xiàn)時間,并進(jìn)行計算及判斷,確定是否需要向各路媒體發(fā)出同步控制指令,以實現(xiàn)同步呈現(xiàn)控制。
參照圖1所示,同步主控模塊通過輸出狀態(tài)收集器取得各路媒體當(dāng)前呈現(xiàn)時間,經(jīng)過同步算法計算,判斷各路媒體的超前及延遲情況,對呈現(xiàn)時間超前及延遲的媒體通過輸出控制指令發(fā)送器分別發(fā)出延遲呈現(xiàn)及加快延遲指令;各路媒體流通過緩沖器、解碼器以后,在送往輸出設(shè)備呈現(xiàn)以前,判斷是否收到由同步主控模塊發(fā)出的新指令,如果有,則通過調(diào)整采樣在輸出設(shè)備的呈現(xiàn)時間或增減采樣,確保最后各路媒體的呈現(xiàn)時間達(dá)到同步。
參照圖2所示,同步主控模塊所使用的同步算法是在每個同步時間間隔Ts內(nèi)掃描一次所有媒體的當(dāng)前呈現(xiàn)時間ti,同步時間間隔Ts一般取5~20倍Dmin。當(dāng)媒體組由超過二路媒體組成時,進(jìn)行以下計算同步差異dij在任意時刻,兩路媒體流si與sj之間的呈現(xiàn)時間差異。計算式為dij=ti-tj,當(dāng)dij>0時,表示si相對于sj呈現(xiàn)時間超前;當(dāng)dij<0時,表示si相對于sj的呈現(xiàn)時間延遲。
同步權(quán)重wi媒體對象si在整個媒體組中所占的同步權(quán)重,計算式為wi=Σj=1,j≠inpi·pjrij]]>媒體呈現(xiàn)平均時間Ta整個媒體組的呈現(xiàn)時間權(quán)重平均值,計算式為Ta=Σi=1ntiwiΣi=1nwi]]>同步權(quán)重差dwi單路媒體si與整個多路媒體組S之間的同步權(quán)重差,計算式為dwi=Σj=1n(dijrij·pi·pj)Σj=1npi·pjrij.]]>當(dāng)dwi>0時,表示si的呈現(xiàn)時間較整個多路媒體組S的呈現(xiàn)時間提前;反之,當(dāng)dwi<0時,表示si的呈現(xiàn)時間較整個多路媒體組S延遲。同步差di媒體對象si與整個媒體對象組S的呈現(xiàn)時間差,di=ti-Ta。
同步主控模塊在完成上述計算后對于各路媒體同步權(quán)重差dwi組成的集合,取L=max{dwi}-min{dwi},i∈1,2...n;將該集合劃分成3個互不相交的子集[min{dwi},min{dwi}+L/3],(min{dwi}+L/3,min{dwi}+2L/3)和[min{dwi}+2L/3,max{dwi}。對于dwi∈[min{dwi},min{dwi}+L/3]的媒體si,組成媒體呈現(xiàn)延遲集合Sss;對于dwi∈[min{dwi}+2L/3,max{dwi}]的媒體si,組成媒體呈現(xiàn)超前集合Ssf。對于呈現(xiàn)時間超前的媒體,即si∈Ssf,當(dāng)|di|>Dmin2]]>時,則向si發(fā)出同步指令Sync(si,di,slower,tallow),即要求媒體對象在tallow內(nèi)通過增加延遲進(jìn)行調(diào)整,消除較整個播放媒體組的時長為di的超前。對于呈現(xiàn)時間延后的媒體,即si∈Sss,當(dāng)|di|>Dmin2]]>時,則向si發(fā)出同步指令Sync(si,di,faster,tallow),即要求媒體si在tallow的時間內(nèi),通過減少延遲的進(jìn)行調(diào)整,消除較整個播放媒體組的時長為di的延遲。在這里,tallow的取值為0.8~1.2倍Ts。
各路媒體在呈現(xiàn)同步操作時,在每解碼完一段媒體流Buffer后,向輸出設(shè)備輸出之前,檢測自己是否收到了由同步主控模塊發(fā)出的同步控制指令;如已有的同步指令沒有執(zhí)行完,則忽略已有同步指令,直接執(zhí)行最新收到的同步指令。
設(shè)媒體si,在正常情況下,每秒鐘輸出頻率為fi,即每秒種有fi個采樣從輸出設(shè)備輸出。
參照圖3所示,當(dāng)si收到指令Sync(si,di,slower,tallow)時,對于可以方便控制單獨一個采樣的輸出時間的媒體(如視頻),則將最近tallowfi個采樣的輸出時間各自延長 。圖3a所示在呈現(xiàn)時間延長前,對于tallowfi個采樣,采樣的輸出時間間隔為1/fi;圖3b所示在呈現(xiàn)時間延長后,對于同樣的tallowfi個采樣,采樣的輸出時間間隔延長為 參照圖4所示,當(dāng)媒體si收到指令Sync(si,di,faster,tallow)時,對于可以方便控制單獨一個采樣的輸出時間的媒體(如視頻),則將最近tallowfi個采樣的輸出時間各自縮短 。圖4a所示在呈現(xiàn)時間縮短前,對于tallowfi個采樣,采樣的輸出時間間隔為1/fi;圖4b所示在呈現(xiàn)時間縮短后,對于同樣的tallowfi個采樣,采樣的輸出時間間隔縮短到 參照圖5所示,當(dāng)si收到指令Sync(si,di,slower,tallow)時,對于不便于或不能控制單獨一個采樣的輸出時間的媒體,則在媒體中,通過均勻插入與前面相鄰采樣相同的采樣達(dá)到同步。由于要在tallow的時間內(nèi)實現(xiàn)di的時間延長,則需將difi個采樣均勻地插入原有的tallowfi個采樣中,即在每 個采樣后面,直接插入與前面相鄰采樣的復(fù)制采樣。
參照圖6所示,當(dāng)si收到指令Sync(si,di,slower,tallow)時,對于不便于或不能控制單獨一個采樣的輸出時間的媒體,則在媒體中,通過均勻刪除一些采樣達(dá)到同步。由于要在tallow的時間內(nèi)實現(xiàn)di的時間縮短,則需原有的tallowfi個采樣中均勻地刪除difi個采樣,即在每 個采樣中刪除一個采樣。
下面是一個多路媒體對用戶呈現(xiàn)時的時間同步問題。在交互式課堂教學(xué)中,有以下五路呈現(xiàn)時具有同步關(guān)系的媒體教案視頻,教師音頻,教師視頻,學(xué)生視頻,學(xué)生音頻,很顯然它們之間有同步的關(guān)系。這是一個五路媒體同步呈現(xiàn)問題。通過對教學(xué)應(yīng)用的實測,教案視頻s1(25fps),教師音頻s2(44.1kHz),教師視頻s3(25fps),學(xué)生視頻s4(25fps),學(xué)生音頻s5(44.1kHz);在此例中,我們根據(jù)實際網(wǎng)絡(luò)教學(xué)應(yīng)用需求,通過用戶的反饋信息統(tǒng)計并結(jié)合公式pi=sigmoid(100MSEi,5-MSEi,98)×2-1]]>計算得到各路媒體的重要程度pi如下p1=sigmoid(10047.4-1.9)×2-1≈0.8]]>p2=sigmoid(10050.5-5.1)×2-1≈0.8]]>p3=sigmoid(100549.2-50.1)×2-1≈0.1]]>p4=sigmoid(100583.5-82.9)×2-1≈0.1]]>p5=sigmoid(100100.4-10.3)×2-1≈0.5]]>結(jié)合唇音同步需求、VoIP延遲需求及相關(guān)QoS質(zhì)量控制標(biāo)準(zhǔn),根據(jù)實際應(yīng)用需求及對250位學(xué)生反饋信息的統(tǒng)計得出如下同步時間差要求r12=80ms,r23=100ms,r45=120ms,r25=20ms,因為其余媒體之間的同步呈現(xiàn)需求對本應(yīng)用影響不大,因此他們的同步時間取8000ms。在某一時刻,它們的播放呈現(xiàn)時間為t1=25335ms,t2=24986ms,t3=24005ms,t4=24120ms,t5=24132ms。
上述問題是五路媒體同步播放的問題,由于教案視頻及教師音頻對最終的教學(xué)應(yīng)用效果具有重要意義,因此,根據(jù)用戶反饋的統(tǒng)計結(jié)果和公式pi=sigmoid(100MSEi,5-MSEi,98)×2-1]]>計算所得,對其重要程度為0.8。同理,學(xué)生的音頻對交互質(zhì)量有一定影響,故通過計算其重要程度為0.5。相對而言,教師視頻及學(xué)生視頻對教學(xué)應(yīng)用效果影響不大,故根據(jù)用戶反饋的統(tǒng)計結(jié)果和公式計算所得其重要性為0.1。由于教案視頻與教師音頻的同步效果對應(yīng)用效果至關(guān)重要,為提高同步效果,將它們之間的同步差取值高于唇音同步要求,為80ms;使得教師音頻與視頻之間同步差滿足唇音同步要求,取100ms;在這里,學(xué)生視音頻同步對本應(yīng)用的意義不大,因此使得同步差基本滿足唇音同步要求,取為120ms,學(xué)生音頻及教師音頻對交互效果有影響,按照VoIP要求,取為120ms。因為其余媒體之間的同步呈現(xiàn)需求對本應(yīng)用影響不大,則將它們之間的同步需求取為8000ms。
則由各路媒體重要性為p=0.80.80.10.10.5]]>同步時間差要求為r=800080800080008000808000100800012080001008000800080008000800080008000120800012080001208000]]>根據(jù)此媒體組對同步效果的要求,可知,同步差的最小要求為Dmin=80ms為滿足同步需求,同步時間間隔取Ts=10Dmin=800ms,即媒體組呈現(xiàn)同步主控模塊每隔800ms進(jìn)行一次同步操作。
設(shè)某一次,同步主控模塊獲得各路媒體的當(dāng)前呈現(xiàn)時間t=2533524986240052412024132]]>
按前述計算式計算出各路媒體的呈現(xiàn)權(quán)重為w=0.008070.02021330.02103080.02146870.025275]]>媒體組呈現(xiàn)平均時間為ta=24992.091各路媒體的呈現(xiàn)同步差為d=412.9094363.90943-917.09057-802.09057-790.09057]]>各路媒體的呈現(xiàn)同步權(quán)重差為dw=356.5799341.958773-37.99362-1.1955167-114.77835]]>按各路媒體的呈現(xiàn)同步權(quán)重差排序則可知,媒體s1及s2呈現(xiàn)過快,構(gòu)成了呈現(xiàn)過快的媒體集合Ssf,需要進(jìn)行延遲呈現(xiàn);媒體s5及s3呈現(xiàn)過慢,構(gòu)成了呈現(xiàn)過慢的媒體集合Sss,需要加快呈現(xiàn)。在這里,tallow取為Ts而為800ms,則此時呈現(xiàn)同步主控模塊發(fā)出指令Sync(s1,412.90943,slower,800ms),Sync(s2,63.90943,slower,800ms),Sync(s5,-114.77835,faster,800ms),Sync(s3,-37.99362,faster,800ms),然后,休眠等待,直到下一步同步時間間隔再進(jìn)行操作。各數(shù)據(jù)媒體在接收到呈現(xiàn)同步控制指令時,進(jìn)行如下操作
當(dāng)s1接收到同步指令Sync(s1,412.90943,slower,800ms)時,則將后面的800/1000×25=20幀的輸出呈現(xiàn)時間各自延長412.90943/800/1000×25=20.6455ms,如圖3所示;當(dāng)s2收到同步指令Sync(s263.90943,slower,800ms)時,則在800/1000×44100=35280個采樣中,均勻地插入(63.90943/1000)×44100=2818個采樣,即在每13個采樣中,插入一個與前面相鄰采樣相同的采樣拷貝即可,如圖5所示;當(dāng)s5收到同步指令Sync(s5,-114.77835,faster,800ms)時,則在(800/1000)×44100=35280個采樣中,均勻地刪除(114.77835/1000)×44100=5062個采樣,即每6個采樣中刪除一個采樣,如圖6所示;當(dāng)s3收到同步指令Sync(s3,-37.99362,faster,800ms),則將后面的(800/1000)×25=20幀的輸出呈現(xiàn)時間各自延長37.99362/((800/1000)×25)=1.8997ms,如圖3所示。
權(quán)利要求
1.一種多路媒體同步呈現(xiàn)控制方法,包括媒體呈現(xiàn)模塊和同步主控模塊,媒體呈現(xiàn)模塊包含對應(yīng)各路媒體顯示或表現(xiàn)的多個子模塊,它們各自負(fù)責(zé)一路媒體的解碼并送往輸出呈現(xiàn)設(shè)備,在此過程中實時檢測同步主控模塊發(fā)來的同步指令,并予以執(zhí)行;同步主控模塊監(jiān)控各媒體呈現(xiàn)模塊的當(dāng)前呈現(xiàn)時間,并進(jìn)行計算及判斷,確定是否需要向各路媒體發(fā)出同步控制指令,以實現(xiàn)同步呈現(xiàn)控制,其特征在于a.設(shè)多路媒體對象組S包含n個媒體流對象,分別為s1,s2...,sn,同步主控模塊在媒體開始播放時,獲取各路媒體的重要程度Pi及各路媒體間的同步許可差異rij;b.計算最小許可同步差異Dmin,Dmin=min(rij),i,j∈1...n,確定同步時間間隔Ts,其取值范圍為5~20倍Dmin;c.獲取各路媒體的當(dāng)前呈現(xiàn)時間ti,計算各路媒體的同步權(quán)重wi=Σj=1,j≠inpi·pjrij,]]>多路媒體對象組S的呈現(xiàn)平均時間Ta=Σi=1ntiwiΣi=1nwi,]]>同步權(quán)重差dwi=Σj=1n(ti-tjrij·pi·pj)Σj=1npi·pjrij,]]>同步差di=ti-Ta;式中i,j代表媒體流集合中的某一路流的序號(i≠j)pi第i路媒體的重要程度rij第i路媒體與第j路媒體間的同步許可差異(i≠j)ti系i路媒體的當(dāng)前呈現(xiàn)時間wi第i路媒體的同步權(quán)重dwi第i路媒體的同步權(quán)重差 di第i路媒體的同步差Ta多路媒體呈現(xiàn)平均時間 Dmin最小許可同步差異Ts同步時間間隔d.對于各路媒體同步權(quán)重差dwi組成的集合,取L=max{dwi}-min{dwi},i∈1,2...n;將該集合劃分成3個互不相交的子集[min{dwi},min{dwi}+L/3],(min{dwi}+L/3,min{dwi}+2L/3)和[min{dwi}+2L/3,max{dwi}],對于dwi∈[min{dwi},min{dwi}+L/3]的媒體si,組成媒體呈現(xiàn)延遲集合Sss;對于dwi∈[min{dwi}+2L/3,max{dwi}]的媒體si,組成媒體呈現(xiàn)超前集合Ssf;e.向呈現(xiàn)時間超前的媒體集合發(fā)出同步指令Sync(Ssf,dsf,slower,tallow),要求Ssf在tallow的時間內(nèi),消除值為dsf的呈現(xiàn)時間超前;向呈現(xiàn)時間延后的媒體集合發(fā)出同步指令Sync(Sss,dss,faster,tallow),要求Sss在tallow的時間內(nèi),消除值為dsf的呈現(xiàn)時間延遲;tallow取0.8~1.2倍同步時間間隔Ts;f.當(dāng)媒體呈現(xiàn)模塊收到同步控制模塊發(fā)出的同步指令時,分別進(jìn)行如下同步操作1)當(dāng)媒體呈現(xiàn)模塊收到減速呈現(xiàn)指令時,對于可以方便控制單個采樣呈現(xiàn)時間的媒體,則通過延長采樣的呈現(xiàn)時間達(dá)到同步;2)當(dāng)媒體呈現(xiàn)模塊收到加速呈現(xiàn)指令時,對于可以方便控制單個采樣呈現(xiàn)時間的媒體,則通過縮短采樣的呈現(xiàn)時間達(dá)到同步;3)當(dāng)媒體呈現(xiàn)模塊收到減速呈現(xiàn)指令時,對于不便于或不能控制單個采樣輸出時間的媒體,則通過在采樣輸出隊列中插入相鄰采樣的拷貝達(dá)到同步;4)當(dāng)媒體呈現(xiàn)模塊收到加速呈現(xiàn)指令時,對于不便于或不能控制單個采樣輸出時間的媒體,則通過在采樣輸出隊列中刪除必要數(shù)量的采樣達(dá)到同步;g.當(dāng)各路媒體均播放完成,則結(jié)束;如果還有媒體沒有播放完,則休眠至下一同步時間間隔,重新獲取各媒體呈現(xiàn)時間,進(jìn)行新一輪同步控制操作。
2.根據(jù)權(quán)利要求1所述的一種多路媒體同步呈現(xiàn)控制方法,其特征在于,所述的獲取各路媒體的重要程度pi及同步許可差異fij分別按照如下方法確定,根據(jù)實際應(yīng)用最終媒體呈現(xiàn)質(zhì)量通過用戶反饋的方式統(tǒng)計得出,方法如下按照具體用戶群將媒體呈現(xiàn)質(zhì)量結(jié)果分為兩級a、效果很好b、基本可以接受;在測試pi時,使除了媒體si以外的其余各路媒體的解碼后數(shù)據(jù)與原始采樣數(shù)據(jù)間的均方差MSE均為最小值0,對于媒體si,從0開始逐漸加大其均方差MSE的值,有98%的用戶確定整個多路媒體組的呈現(xiàn)質(zhì)量很好時,此時的si的均方差MSE的值為MSEi,98;僅有5%的用戶確定整個多路媒體組的呈現(xiàn)質(zhì)量很好時,此時si的均方差MSE記為MSEi,5;pi按如下公式計算pi=sigmoid(100MSEi,5-MSEi,98)×2-1]]>rij的取值根據(jù)唇音同步需求、VoIP延遲需求及相關(guān)QoS質(zhì)量控制標(biāo)準(zhǔn),在實際應(yīng)用需求中通過用戶反饋的方式統(tǒng)計得出;具體方法如下將媒體流si和sj的同步時間差從0ms取值開始,逐漸增大,有5%的用戶能感知到該兩路媒體的時間同步差異時,此時的同步時間差取為rij的值,即就是使得rij取用戶能感知兩路媒體差異的最小值。
全文摘要
本發(fā)明公開了一種多路媒體同步呈現(xiàn)控制方法,主要解決需要同步播放的多路媒體在呈現(xiàn)時的時間同步問題。針對不同媒體的重要程度及媒體之間的不同同步需求進(jìn)行有區(qū)別的同步呈現(xiàn)控制,能提高多路媒體呈現(xiàn)效果。使得在多路媒體呈現(xiàn)過程中,重要程度高及同步要求高的媒體得到優(yōu)先考慮,解決現(xiàn)有同步方案所存在的不考慮媒體重要性及各路媒體之間同步要求的局限性。本發(fā)明適用于兩路及兩路以上任意類型媒體間的呈現(xiàn)同步控制。
文檔編號H04N7/60GK101026769SQ200710017228
公開日2007年8月29日 申請日期2007年1月12日 優(yōu)先權(quán)日2007年1月12日
發(fā)明者鄭慶華, 劉均, 彭挺, 伍洋, 楊冬, 張帆, 姜山, 張之明, 杜海鵬 申請人:西安交通大學(xué)