多設備間數據同步的方法、裝置、發送端及接收端的制作方法
【技術領域】
[0001]本發明涉及通信領域中多設備數據同步處理領域,特別是指一種多設備間數據同步的方法、裝置、發送端及接收端。
【背景技術】
[0002]隨著各種智能終端和高速無線網絡的發展和普及,基于網絡傳輸的設備之間的多屏互動與數據共享技術和標準也正逐漸被開發,并得到了廣泛的應用,如有DLNA(移動設備在內的無線網絡和有線網絡的互聯互通協議)/UPNP(各種各樣的智能設備、無線設備和個人電腦等實現遍布全球的對等網絡連接(P2P)的結構),MIRACAST(視頻分享的無線協議)等規范,也有最近google推出的Chromecast技術方案。
[0003]設備之間進行一對多的視音頻共享是一種新的應用場景,即源端(或者發送端)向多個目的端(或者接收端)發送視音頻信息和碼流,接收端同步進行展示和播放。
[0004]關于一對多場景,有各種成熟的傳輸技術,能保證視音頻等多媒體數據能夠共享至多設備。但對于不同接受端,由于網絡延遲,緩沖尺寸差異,以及處理速度與輸出時延的差異,可能導致各終端可能出現不同步現象,而且隨著時間的累積,會愈發明顯。
【發明內容】
[0005]本發明的要解決的技術問題是提供一種多設備間數據同步的方法、裝置、發送端及接收端,能夠有效保證多設備之間可以同步。
[0006]為解決上述技術問題,本發明的實施例提供以下技術方案:
[0007]—種多設備間數據同步的方法,應用于發送端,所述方法包括:
[0008]向多個接收端發送攜帶有時間戳的音視頻數據單元以及攜帶有報告周期的同步報告指令;
[0009]接收各接收端根據音視頻數據單元中的時間戳以及同步報告指令反饋的同步報生P=I ;
[0010]根據發送的音視頻數據單元的時間戳和各接收端反饋的同步報告,分別生成同步調整參數,并發送給各接收端。
[0011]其中,各接收端反饋的同步報告包括:各接收端在所述報告周期內,以所述數據單元中的時間戳值為起始時間播放音視頻數據單元的時長。
[0012]其中,根據發送的音視頻數據單元的時間戳以及各接收端反饋的同步報告,分別生成同步調整參數的步驟包括:
[0013]根據發送的數據單元的時間戳,以及各接收端反饋的在所述同步周期內,以所述時間戳為起始時間播放音視頻數據單元的時長,獲得各接收端在所述同步周期內播放數據單元的播放速率;
[0014]根據各接收端在所述同步周期內播放音視頻數據單元的播放速率,分別生成各個接收端的同步調整參數。
[0015]其中,獲得各接收端在所述同步周期內播放數據單元的播放速率的步驟包括:
[0016]通過公式r = (Tl-T2)/(tl-t2)獲得,各接收端在所述同步周期內播放音視頻數據單元的播放速率;其中,
[0017]Tl為發送端向一接收端發送的一個音視頻數據單元中的時間戳值;
[0018]tl為該接收端在報告周期內以Tl為起始時間播放音視頻數據單元的時長;
[0019]T2為發送端向該接收端發送的下一個數據單元中的時間戳值;
[0020]t2為該接收端在報告周期內以T2為起始時間播放音視頻數據單元的時長;
[0021]r為接收端在所述同步周期內的播放速率。
[0022]其中,根據各接收端在所述同步周期內播放數據單元的播放速率,分別生成各個接收端的同步調整參數的步驟包括:
[0023]通過公式C = rl/r2分別生成各個接收端的同步調整參數;
[0024]其中,rl為一接收端對應的r值,r2為多個接收端對應的r值的中值,且多個接收端按照其對應的r值進行排序;C為所要生成的同步調整參數。
[0025]其中,上述方法還包括:
[0026]如果各接收端中,有超過預設個數的接收端在同步周期內播放音視頻數據單元的播放速率超過一預設閾值,則調整報告周期,并將調整后的報告周期攜帶在同步報告指令中發送給接收端。
[0027]本發明的實施例還提供一種多設備間數據同步的方法,應用于接收端,所述方法包括:
[0028]接收發送端發送的含有時間戳的音視頻數據單元和含有報告周期的同步報告指令;
[0029]根據時間戳以及同步報告指令向發送端反饋同步報告;
[0030]接收發送端根據時間戳和各接收端反饋的同步報告產生并發送的同步調整參數,并根據所述同步調整參數調整自身的播放速率。
[0031]其中,所述同步報告包括:接收端在所述報告周期內,以所述音視頻數據單元中的時間戳值為起始時間播放音視頻數據單元的時長。
[0032]其中,根據所述同步調整參數調整自身的播放速率的步驟包括:
[0033]當同步調整參數大于I時,降低自身播放速率;
[0034]當同步調整參數小于I時,提高自身播放速率;
[0035]當同步調整數等于I時,自身播放速率不變。
[0036]本發明的實施例還提供一種多設備間數據同步的裝置,應用于發送端,包括:
[0037]發送模塊,用于向多個接收端發送攜帶有時間戳的音視頻數據單元以及攜帶有報告周期的同步報告指令;
[0038]接收模塊,用于接收各接收端根據音視頻數據單元中的時間戳以及同步報告指令反饋的同步報告;
[0039]處理模塊,用于根據發送的音視頻數據單元的時間戳和各接收端反饋的同步報告,分別生成同步調整參數,并由所述發送模塊發送給各接收端。
[0040]本發明的實施例還提供一種發送端,包括如上所述的裝置。
[0041]本發明的實施例還提供一種多設備間數據同步的裝置,應用于接收端,包括:
[0042]接收模塊,用于接收發送端發送的含有時間戳的音視頻數據單元和含有報告周期的同步報告指令;
[0043]反饋模塊,用于根據時間戳以及同步報告指令向發送端反饋同步報告;
[0044]調整模塊,用于接收發送端根據時間戳和各接收端反饋的同步報告產生并發送的同步調整參數,并根據所述同步調整參數調整自身的播放速率。
[0045]本發明的實施例還提供一種接收端,包括如上所述的裝置。
[0046]本發明的上述技術方案具有如下有益效果:
[0047]本發明的上述實施例通過向多個接收端發送攜帶有時間戳的音視頻數據單元以及攜帶有報告周期的同步報告指令;并接收各接收端根據音視頻數據單元中的時間戳以及同步報告指令反饋的同步報告;并根據發送的音視頻數據單元的時間戳和各接收端反饋的同步報告,分別生成同步調整參數,并發送給各接收端,使各接收端根據其接收到的同步調整參數對音視頻數據單元的播放速率進行調整,使得各接收端能夠同步。
【附圖說明】
[0048]圖1表示本發明的多設備間數據同步的方法的整體流程圖;
[0049]圖2表示圖1所示實施例的一具體實現流程框圖。
【具體實施方式】
[0050]為使本發明要解決的技術問題、技術方案和優點更加清楚,下面將結合附圖及具體實施例進行詳細描述。
[0051]如圖1所示,本發明的實施例提供一種多設備間數據同步的