時間同步方法及系統的制作方法
【技術領域】
[0001]本發明涉及一種時間同步方法及系統,尤其涉及用以同步一區域網絡中的一第一播放裝置與一第二播放裝置的時間同步方法及系統。
【背景技術】
[0002]數字生活網絡聯盟(Digital Living Network Alliance,DLNA)是由消費性電子、移動電話以及電腦廠商組成的聯盟組織,其制定了統一的傳輸規范,目的在于讓各種不同廠商的產品能夠互相溝通。據此,只要是符合數字生活網絡聯盟協定的影音裝置,就能夠直接連結、同步動作,甚至是傳輸數據。
[0003]在數字生活網絡聯盟環境下的裝置大致包括數字媒體服務器(Digital MediaServer, DMS)、數字媒體控制器(Digital Media Controller, DMC)以及數字媒體渲染器(Digital Media Renderer,DMR)。當多個數字媒體渲染器、數字媒體服務器以及數字媒體控制器之間以無線方式連接時,多個數字媒體渲染器以無線方式自數字媒體服務器接收音訊數據并進行音訊播放。然而,多個數字媒體渲染器具有各自的系統時鐘,多個系統時鐘的時間并不一定相同,而將使多個數字媒體渲染器無法同步進行音訊播放。因此,如何同步多個數字媒體渲染器的系統時鐘的時間已成為此領域急需解決的問題。
[0004]以下說明公知同步多個數字媒體渲染器的系統時鐘的時間的方法,請先參照圖1,圖1是公知時間同步方法的流程圖。如步驟Si所示,第一數字媒體渲染器10首先將一封包廣播至基地臺11,再由基地臺11將該封包廣播至第一數字媒體渲染器10及第二數字媒體渲染器12。
[0005]而后如步驟S2及S3所示,第二數字媒體渲染器12接收該封包并記錄其接收該封包的時間,接著第二數字媒體渲染器12向第一數字媒體渲染器10請求取得第一數字媒體渲染器10接收該封包的時間,以令第一數字媒體渲染器10將其接收該封包的時間傳送至第二數字媒體渲染器12。
[0006]接下來如步驟S4所示,第二數字媒體渲染器12計算其接收該封包的時間與第一數字媒體渲染器10接收該封包的時間的一差值,并將其系統時鐘的時間增加或減少該差值而使第二數字媒體渲染器12的系統時鐘的時間同步于第一數字媒體渲染器10的系統時鐘的時間,如步驟S5所示。
[0007]如前所述,第二數字媒體渲染器12系于計算第一數字媒體渲染器10與第二數字媒體渲染器12接收同一封包的時間后修正自身系統時鐘的時間以達到與第一數字媒體渲染器10的系統時鐘的時間同步的目的。然而前述方法在經過一較長時間后仍會產生較大誤差,因此需要一種改良的時間同步方法以改善公知技術的問題。
【發明內容】
[0008]本發明的目的在于提供一種快速且精確的時間同步方法及系統。
[0009]本發明的另一目的在于提供一種時間同步方法,用以同步一區域網絡中的一第一播放裝置與一第二播放裝置,其中區域網絡包括一基地臺,且第一播放裝置具有一第一系統時鐘,而第二播放裝置具有一第二系統時鐘,該方法包括步驟:
[0010](A).使第一播放裝置傳送一封包至基地臺;
[0011](B).使基地臺分別傳送封包至第一播放裝置以及第二播放裝置;
[0012](C).于第二播放裝置接收封包后,使第二系統時鐘的時間增加或減少一誤差值而得到一更新時間,其中誤差值是第一播放裝置傳送封包至基地臺的時間與第二播放裝置自基地臺接收封包的時間的差值;
[0013](D).計算多個第一差值是否皆小于一第一預設值,并于多個第一差值皆小于第一預設值時執行一步驟(E),其中每一第一差值是第一播放裝置連續傳送的多個封包中的同一封包自第一播放裝置被傳送至基地臺的時間與被第二播放裝置接收的時間的差值;其中第一播放裝置使用第一系統時鐘的時間,而第二播放裝置使用更新時間;
[0014](E).計算多個第二差值,并計算每一第二差值是否小于一第二預設值,并于一第二差值小于第二預設值時執行一步驟(F),其中每一第二差值是第一播放裝置與第二播放裝置接收來自基地臺的同一封包的時間的差值;其中第一播放裝置使用第一系統時鐘的時間,而第二播放裝置使用更新時間;以及
[0015](F).使更新時間增加或減少第二差值而得到一同步時間,以同步第一系統時鐘的時間與同步時間。
[0016]本發明的另一目的在于提供一種時間同步系統,用以同步一區域網絡中的一第一播放裝置與一第二播放裝置,其中區域網絡包括一基地臺,且第一播放裝置具有一第一系統時鐘,而第二播放裝置具有一第二系統時鐘,該系統包括:
[0017]第一播放裝置,包括:
[0018]一封包傳送模塊,用以傳送多個封包至基地臺;
[0019]基地臺,用以傳送多個封包至第一播放裝置以及第二播放裝置;以及
[0020]第二播放裝置,包括:
[0021 ] 一同步模塊,用以于第二播放裝置接收一封包后,使第二系統時鐘的時間增加或減少一誤差值而得到一更新時間,其中誤差值是第一播放裝置傳送封包至基地臺的時間與第二播放裝置自基地臺接收封包的時間的差值;以及
[0022]一運算補償模塊,用以計算多個第一差值是否皆小于一第一預設值,并于多個第一差值皆小于第一預設值時計算多個第二差值及每一第二差值是否小于一第二預設值,其中,于一第二差值小于第二預設值時,同步模塊使更新時間增加或減少第二差值而得到一同步時間,以同步第一系統時鐘的時間與同步時間;
[0023]其中,每一第一差值是第一播放裝置連續傳送的多個封包中的同一封包自第一播放裝置被傳送至基地臺的時間與被第二播放裝置接收的時間的差值,每一第二差值是第一播放裝置與第二播放裝置接收來自基地臺的同一封包的時間的差值,且第一播放裝置使用第一系統時鐘的時間,而第二播放裝置使用更新時間。
【附圖說明】
[0024]圖1是公知時間同步方法的流程圖。
[0025]圖2是本發明時間同步系統的方框圖。
[0026]圖3是本發明時間同步方法的流程圖。
[0027]圖4是本發明數字媒體控制器的播放群組設定介面示意圖。
[0028]圖5是本發明時間同步方法的步驟(G)的流程圖。
[0029]其中,附圖標記說明如下:
[0030]第一數字媒體渲染器10播放群組G
[0031]基地臺11誤差值EO
[0032]第二數字媒體渲染器12更新時間ts_a_0
[0033]步驟SI?S5封包P_1
[0034]時間同步系統2時間t s_ I
[0035]第一播放裝置20更新時間ts_a_l
[0036]第一系統時鐘201時間Tm_l
[0037]封包傳送模塊202時間tm_0
[0038]第一記錄模塊203第一差值El
[0039]基地臺21封包P_2
[0040]第二播放裝置22時間ts_2
[0041]第二系統時鐘221更新時間ts_a_2
[0042]同步模塊222時間Tm_2
[0043]運算補償模塊223時間tm_l
[0044]第二記錄模塊224第一差值E2
[0045]數字媒體服務器23封包P_3
[0046]數字媒體控制器24時間ts_3
[0047]播放群組設定介面25更新時間ts_a_3
[0048]其他播放裝置26時間Tm_3
[0049]封包P_0時間更新時間ts_a_(i_l)
[0050]Tm_0封包 P_ j
[0051]時間ts_0第二時間ts_j
[0052]時間tm_2第二差值Ej
[0053]第二差值E3時間 tm_(j_