專利名稱:媒體數據包的同步播放的制作方法
技術領域:
本發明涉及用來同步播放媒體數據包的一種方法、一種媒體源、一種媒體接收器和一種媒體處理系統。
背景技術:
人類利用聲音的兩個參數來確定聲源的位置聲音的幅度和相位。由于聲音的強度隨著它通過空氣傳播而下降,離聲源更遠的耳朵收到的聲音電平低于離聲源較近的耳朵收到的聲音電平。此外,由于聲音在空氣中傳播需要時間,因此較遠的耳朵比較近的耳朵收到信號的時刻要晚一些。實驗表明,人類將兩個信道大于6~20微秒的相位差當成聲源發生了位移,而將大于35~40毫秒相位差的兩個信號當成兩個不同的聲音。
對于播放(發射)音頻聲音的音頻系統,這就意味著屬于多聲道信號例如立體聲信號中一個聲道的音頻信號應該與屬于同一個多聲道信號,例如同一個立體聲信號,的所有其它對應音頻信號,精確地同時播放,也就是在同一時刻播放。換句話說,不同音頻輸出裝置,例如揚聲器,的嚴格同步是必要的,因而在輸出過程中多聲道信號不同聲道之間的時間關系能夠得到滿足。在其它音頻應用中,例如杜比環繞聲系統,或者在音頻-視頻應用中,也會有相似的要求。
數字傳輸音頻系統同樣必須滿足上面提到的嚴格同步要求,在這些系統中音頻信號從媒體源向音頻輸出裝置(以后將更加一般地稱之為媒體接收器(Media Sink),它們還包括用任意其它方式處理收到的多聲道信號的裝置)的傳輸是以媒體數據包(以后也叫做媒體數據包)的形式進行的。每一個音頻輸出裝置必須在嚴格正確的時刻播出媒體數據包的聲音(播放媒體數據包),也就是在另一個媒體輸出裝置播放例如屬于同一個立體聲信號,但是屬于另一個聲道的對應的媒體數據包的時刻播放。如果媒體數據包的播放同步得不好,也就是同一個立體聲信號不同聲道的對應的媒體數據包在不同的輸出裝置里是在不同時刻播出的,就會發生上面提到的問題,也就是立體聲被最終認為來自另一個方向,或者被當作兩個不同的聲音(以下將這些問題叫做聽覺失真)。
因特網工程任務組(IETF)在它的建議請求RFC1889中提供了一種實時應用傳輸協議(RTP),以后將它叫做RTP。這個實時傳輸協議(RTP)包括一個控制協議RTCP,它從數據發送方提供同步信息,從數據接收方提供反饋信息。考慮媒體配送的流同步,這一協議提供所謂的發送方報告(SR),這些報告提供采樣時鐘信號和全局時鐘信號之間的一種相關信息。
發送方報告(SR)從媒體源發送給媒體接收器,其中有兩個時間標記。一個時間標記用本地采樣時鐘的時間單位表明一個時刻(本地采樣時鐘時間),另一個表明用全局時鐘信號的時間單位表示的同一個時刻(全局時鐘時間)。同時產生SR的這兩個時間標記。假設在其間傳送媒體流的媒體源和媒體接收器都能夠獲得全局時鐘時間。因而媒體接收器能夠獲得全局時鐘時間,從而根據全局時鐘調整它自己的采樣時鐘。
RTP的主要目的是為因特網視頻會議提供一種手段,重新同步同一個媒體接收器不同流中收到的視頻和音頻信號。這一協議不是為了保證數字傳輸音頻系統中不同媒體接收器里媒體數據包能夠同步播放。因此,用這一協議向媒體接收器發送媒體數據包的時候,不同媒體接收器中播放的媒體數據包不能很好地同步,也就是說,屬于同一個立體聲信號的媒體數據包在不同的媒體接收器,例如揚聲器,中不能在同一時刻播放。這樣,只將這一RTP用于數字傳輸音頻系統的時候,就會發生上面提到的聽覺失真。
聽覺失真這樣的問題還會因為個人計算機(PC)或者個人數字助理(PDA)這樣的大多數非實時源裝置中存在不可靠和不精確的時鐘信息而發生。這些裝置假設全局時鐘信息(全局時鐘時間)滿足應用場合規定的所有要求。但是事實可能并非如此。非實時裝置通常都是通過一個外部連接,例如USB或者RS232,來獲得實際時間(全局時鐘時間)從而產生媒體數據包的時間標記。因為通常設計用于這種外部連接的總線系統不是為了以非常短的傳送時間來傳送,因此將它用于PC或者PDA來確定媒體數據包時間標記的時候,時鐘信息(全局時鐘時間)就可能喪失它的精度。這就意味著媒體數據包的時間標記給出的全局時鐘時間相對于媒體數據包的實際發送全局時鐘時間而言可能是錯誤的。此外,兩個時間標記給出的兩個時刻之間的時間差可能會發生變化,即使對應的兩個實際全局時鐘時間之間的時間差沒有改變。其原因是外部連接傳輸全局時鐘信息給應用所需要的時間可能會變化。由于媒體數據包的時間標記一般都被媒體接收器用來確定每個數據包的播出時間,媒體數據的時間標記給出的不精確和統計學上變化的時間會導致上面提到的聽覺失真,因為屬于同一個立體聲信號的媒體數據包可以由不同的媒體接收器在不同的時刻播出。
發明內容
本發明的一個目的是提供一種媒體源、一種媒體接收器和一種媒體處理系統,用來同時播放媒體數據包,還提供用于讓這些裝置工作的對應方法,從而在不同媒體接收器播放聲音的時候避免聽覺失真。
為了本發明第一個實施方案的目的,權利要求1給出了一種媒體源,在權利要求5中給出了一種媒體接收器,在權利要求10中給出了一種媒體處理系統。此外,在權利要求17、21和26中給出了對應于第一個實施方案的方法。在它們后面的附屬權利要求中分別給出了它們的優選實施方案。為了本發明第二個實施方案的目的,權利要求11給出了一種媒體源,權利要求14給出了一種媒體接收器,權利要求16給出了一種媒體處理系統。此外,在權利要求27、30和32中給出第二個實施方案的相應方法。在對應的附屬權利要求中給出了它們的優選實施方案。
因此,本發明的目的是用兩個不同的實施方案實現的,它們具有相同的發明思想。在這兩個實施方案中,確定一個共同的播放時刻,并且將它們與每個媒體數據包聯系起來,媒體接收器嚴格在這個共同播放時刻播放媒體數據包。在第一個實施方案中,共同的播放時刻是通過在媒體數據包的時間標記所表明的時間加上一個播放時間偏移,由媒體接收器確定的。媒體源確定播放時間偏移,傳送給媒體接收器。在第二個實施方案中,媒體源確定每個數據包的共同播放時刻,并且用對應時間標記的形式與每個媒體數據包一起發送。
本發明第一個實施方案的解決方案本發明的媒體源能夠發送有時間標記的媒體數據包,給下面給出的一個或者多個接收媒體接收器,每個媒體數據包的時間標記都說明相應媒體數據包的產生時刻,用于確定播放時間偏移,還用于發送播放時間偏移給下面給出的一個或者多個接收媒體接收器。
本發明的媒體源最好包括能夠確定采樣時鐘時間的一個采樣時鐘,能夠確定全局掛鐘時間,用于不時地發送控制數據包給下面給出的所述一個或者多個接收媒體接收器,所述控制數據包有兩個控制數據包時間標記,用來說明時間上的同一時刻,其中的第一個控制數據包時間標記是按照所述全局掛鐘時間的時間單位度量或者定義的,第二個控制數據包時間標記是按照所述采樣時鐘時間的時間單位度量或者定義的。
此外,媒體數據包的所述時間標記最好能夠用所述采樣時鐘時間的時間單位來說明有所述時間標記的媒體數據包的產生時間。媒體源最好還被設計成發送同樣的媒體數據包給兩個或者多個不同的接收媒體接收器。
本發明的媒體接收器用于從上面給出的媒體源接收有時間標記的媒體數據包,還用于確定播放時間偏移,精確地確定全局掛鐘時間,通過將有時間標記的所述媒體數據包說明的時間加上所述播放時間偏移,確定收到的每個有時間標記的媒體數據包的共同播放時間,在收到的有時間標記的媒體數據包的共同播放時刻到了的時候播放收到的有時間標記的每個媒體數據包。
媒體接收器用于從上面給出的媒體源接收一次所述播放時間偏移,與至少一個其它媒體接收器協商所述播放時間偏移。媒體接收器還能夠從上面給出的媒體源接收控制數據包,其中有第一個控制數據包時間標記,說明用采樣時鐘時刻的時間單位度量或者定義的某個時刻,第二個控制數據包時間標記說明用全局掛鐘時間的時間單位度量或者定義的同一個時刻,根據第一個和第二個控制數據包時間標記,將利用采樣時鐘時間的單位度量或者定義的有時間標記的媒體數據包的時間標記說明的時間轉換成用全局掛鐘時間的單位度量或者定義的時間。
在一個優選實施方案中,該媒體接收器有一個緩存器,用于儲存媒體數據包,直到所述共同播放時間。
本發明的媒體處理系統包括上面給出的一種媒體源和上面給出的一種媒體接收器。
本發明第一個實施方案中用于媒體源的方法包括以下步驟發送有時間標記的媒體數據包給一個或者多個接收媒體接收器,每個媒體數據包的時間標記能夠說明產生對應媒體數據包的時間,確定播放時間偏移,發送所述播放時間偏移給所述一個或者多個接收媒體接收器。
最好執行以下步驟確定采樣時鐘時間,確定全局掛鐘時間,偶爾發送一次控制數據包給所述一個或者多個接收媒體接收器,所述控制數據包有兩個控制數據包時間標記,它們說明同一時刻,它的第一個控制數據包時間標記是用所述全局掛鐘時間的時間單位度量或者定義的,它的第二個控制數據包時間標記是用所述采樣時鐘時間的時間單位度量或者定義的。
媒體數據包的所述時間標記最好能夠用所述采樣時鐘時間的時間單位說明產生有時間標記的所述媒體數據包的時刻。此外,最好是將同樣的媒體數據包發送給兩個或者多個不同的媒體接收器。
本發明第一個實施方案中用于媒體接收器同步播放媒體數據包的一種方法包括以下步驟從媒體源接收有時間標記的媒體數據包,確定播放時間偏移,精確地確定全局掛鐘時間,通過將有時間標記的所述媒體數據包的時間標記說明的時間加上所述播放時間偏移來確定收到的有時間標記的每個媒體數據包的共同播放時刻,在確定的收到的有時間標記的媒體數據包的共同播放時刻到來的時候播放收到的有時間標記的每個媒體數據包。
從媒體源接收一次所述播放時間偏移,或者與至少一個其它媒體接收器進行協商。
此外,最好是執行以下步驟從權利要求1~4中的任意一個所述的媒體源接收控制數據包,其中有第一個控制數據包時間標記,說明用采樣時鐘時間的時間單位度量或者定義的特定時刻,接收第二個控制數據包時間標記,它說明用全局掛鐘時間的時間單位度量或者定義的同一個時刻,根據第一個和第二個控制數據包時間標記信息,將利用采樣時鐘時間的單位度量或者定義的有時間標記的媒體數據包的時間標記說明的時間轉換成全局掛鐘時間度量或者定義的時間。
將媒體數據包儲存在一個緩存器中,直到共同的播放時刻。
在本發明第一個實施方案中同步播放媒體數據包的方法中,媒體處理系統執行上面給出的媒體源的方法中的步驟以及上面給出的媒體接收器的方法的步驟。
本發明第二個實施方案的解決方案實現本發明第二個實施方案中本發明的目的的媒體源用于確定播放時間偏移,并且通過將確定的播放時間偏移加上當前時間來確定共同的播放時刻,還用于發送有時間標記的媒體數據包給下面說明的一個或者多個媒體接收器,有時間標記的媒體數據包的時間標記說明所述媒體數據包的共同播放時刻。
該媒體源最好有一個能夠確定采樣時鐘時間的一個采樣時鐘,用于讀取全局掛鐘時間一次,將所述采樣時鐘給出的時間周期加上只是一次讀出的全局掛鐘時間,計算所述當前時間。此外,媒體源還用于發送同樣的媒體數據包給兩個或者多個不同的接收媒體接收器。
本發明第二個實施方案中的媒體接收器用于從上面給出的媒體源接收有時間標記的媒體數據包,能夠精確地確定全局掛鐘時間,并且能夠為收到的有時間標記的每個媒體數據包確定共同的播放時間,這個時間就是有時間標記的媒體數據包的時間標記所表明的時間。媒體接收器最好有一個緩存器,用于儲存媒體數據包,直到共同的播放時刻。
本發明第二個實施方案中的媒體處理系統具有上面第二個實施方案中給出的媒體源和上面第二個實施方案給出的媒體接收器。
本發明中第二個實施方案里針對媒體源,使得媒體數據包能夠同步播放的方法,包括以下步驟確定播放時間偏移,通過將確定出來的播放時間偏移加上當前時間來確定共同的播放時間,將有時間標記的媒體數據包發送給一個或者多接收媒體接收器,有時間標記的媒體數據包的時間標記說明媒體數據包的所述共同播放時刻。
最好執行以下步驟確定采樣時鐘時間,通過只讀一次全局掛鐘時間,將所述采樣時鐘給出的時間加上只用一次讀出來的全局掛鐘時間來計算所述當前時間。此外,還將同樣的媒體數據包發送給兩個或者多個不同的接收媒體接收器。
本發明第二個實施方案中用于媒體接收器,使得媒體數據包能夠同步播放的方法包括以下步驟從媒體源接收有時間標記的媒體數據包,精確地確定全局掛鐘時間,為收到的有時間標記的每個媒體數據包確定共同的播放時間,這個時間就是有時間標記的媒體數據包的時間標記所說明的時間。
媒體數據包最好儲存在一個緩存器里,直到共同的播放時刻。
本發明第二個實施方案中用于媒體處理系統,使得媒體數據包能夠同步播放的方法包括用于媒體源的方法的那些步驟和用于媒體接收器的方法的那些步驟。
因此,根據本發明,媒體接收器能夠嚴格同步地播放媒體數據包,因為確定了一個共同的播放時刻,并且將它與相應的媒體數據包聯系起來,這些媒體數據包在每個媒體接收器的這個嚴格的播放時刻播放。媒體接收器能夠嚴格按播放時間播放是因為媒體接收器精確地確定了全局掛鐘時間,因為它們一般都是用專用硬件,不需要很長的處理時間,也就是說,這些媒體接收器與全局掛鐘時間嚴格同步。這個共同播放時間與只用一次讀出的全局掛鐘時間同步,因而不同媒體數據包的兩個時間標記所說明的兩個時間之間沒有任何差別,就象上面提到的現有技術系統中那種情形一樣。另一方面,從精度的角度來說,本發明的媒體源得到全局掛鐘時間的機會有限,因為可以選擇用來加的播放時間偏移,從而在任何時候都能夠補償這種不精確。
下面將參考附圖,以示例性實施方案的形式詳細地介紹本發明及其優點,在這些附圖中圖1說明的是媒體源發送有時間標記的媒體數據包給兩個媒體接收器這種情形的一個實例;圖2說明媒體源和n個媒體接收器對同一個全局掛鐘時間的訪問;圖3是一個流程圖,它說明從媒體源向接收和處理媒體數據包的兩個媒體接收器發送媒體數據包的過程;圖4說明將PC用作媒體源,將兩個揚聲器作為媒體接收器的一個實例;圖5畫出了說明其中采用了符合RTP標準的控制數據包的媒體源和媒體接收器之間的交互過程的一個流程圖;圖6畫出了說明本發明第一個可選實施方案中媒體源和媒體接收器之間交互過程的一個流程圖;圖7說明本發明的第二個可選實施方案,其中的媒體接收器在它們自身之間協商播放時間偏移。
具體實施例方式
圖1說明與兩個同步媒體接收器,也就是第一個媒體接收器1和第二個媒體接收器2,進行媒體配送會話的基本情形。媒體源101將有時間標記的第一個媒體數據包1021發送給第一個媒體接收器1,將有時間標記的第二個媒體數據包1022發送給第二個媒體接收器2。媒體數據包的時間標記說明源產生這個媒體數據包的時刻。如果是編碼數據,第一個媒體接收器1和第二個媒體接收器2就對媒體數據包進行譯碼。然后將數據儲存在相應的緩存器里,也就是第一個媒體接收器1的第一個緩存器1041和第二個媒體接收器2的第二個緩存器1042,直到相應數據包的共同播放時刻105。這個共同播放時刻105是媒體接收器將一次確定的播放時間偏移與媒體數據包中時間標記說明的時間相加,為每個數據包確定的。如果到了數據包的共同播放時間105,媒體接收器就播放媒體數據包。在圖1所示的實例中,第一個媒體數據包1021和第二個媒體數據包1022的時間標記說明時間上的同一個瞬間。因此,這些媒體數據包由第一個媒體接收器1和第二個媒體接收器2完全在同一瞬間播放。
播放時間偏移必須在媒體源101和所有媒體會話漏(在這里是第一個媒體接收器1和第二個媒體接收器2)之間進行協商,將傳輸時間、可用緩存器大小以及媒體源101與全局掛鐘時間最終的不嚴格同步考慮在內。
對于時鐘,假設媒體流裝置里有兩個時鐘存在(可供訪問)采樣時鐘和全局掛鐘。采樣時鐘是媒體流中固有的。對于作為音頻流的源一個實例的CD,這個采樣時鐘以44.1kHz的頻率運行。全局掛鐘可以由參與媒體會話的所有源和漏裝置讀取。對于IP網絡,網絡時間協議(NTP)描述如何在整個網絡中維護好一個NTP時鐘。但是對于具有嚴格要求的應用,比如同步兩個立體聲聲道,這樣一個NTP時鐘的精度和時鐘分辨率恐怕都不夠.因此假設存在精度和分辨率都高得多的一個時鐘。這就是需要所有參與者都需要一個共同的時鐘,以便執行同步跳頻的一些無線系統中所出現的情形。這種無線系統的一個實例是藍牙規范,其中皮網的所有參與者都維護好一個共同時鐘。這個共同時鐘的時間可以被媒體應用用作全局掛鐘時間。一般情況下,采樣時鐘時間和全局掛鐘時間是用不同的單位度量的。例如,全局掛鐘時間可以按照微秒走,而采樣時鐘則按照一次采樣作為一個最小單位來運轉。
對于時間標記,假設使用它們的方法與RTP中描述的一樣。這就意味著媒體數據包的時間標記說明用采樣時鐘的時間單位表示的數據包第一個采樣的那個瞬間。除了按照RTP發送媒體數據包的媒體流以外,還要在參與者之間,也就是在流的媒體源和媒體接收器之間,交換控制數據包。這些控制數據包中沒有任何媒體數據,而是除了其它信息以外有兩個時間標記,說明時間上的同一瞬間,一個時間標記用采樣時鐘的時間單位說明這一時刻,而另一個時間標記則用全局掛鐘時間的時間單位說明時間上的同一瞬間。利用這一信息,如果給出全局掛鐘時間,媒體接收器就能夠確定采樣時鐘時間,反過來如果給出采樣時鐘時間,它就能夠確定全局掛鐘時間。因此,控制數據包具有將源采樣時鐘時間與全局掛鐘時間聯系起來的功能。這樣一來媒體接收器就能夠通過轉換按照采樣時鐘的時間單位給出的媒體數據包的時間標記說明的時間,確定用全局掛鐘時間的時間單位表示的產生媒體數據包的時間上的瞬間。
在圖2中,假設媒體源202和n個媒體接收器,例如媒體接收器203-1、203-2、...、203-n,有一個全局掛鐘時間201。這個全局掛鐘時間可以是例如數字總線系統或者無線數字傳輸系統使用的時鐘時間。除此以外,還假設這個時鐘在精度和分辨率上滿足所需同步的要求。典型情況下,這樣一個時鐘非常接近物理層,例如在這樣一個傳輸系統的基帶內。對于PC或者PDA 202這樣的通用裝置,這就意味著這樣一個時鐘是外部的,只能通過一個外部連接204,例如USB或者RS232來獲得。這樣一個實例是通過USB與PC連接的藍牙模塊。在一個皮網中,所有裝置都自動地與藍牙基帶時鐘同步,因為這個時鐘信息被用來同步所有皮網參與者的頻率跳變。因此必須通過USB總線系統從藍牙模塊將本地藍牙時鐘信息傳送給PC。
因為一般情況下這種外部連接使用的總線系統并不總是被設計成用來傳輸時間,因此當時鐘信息通過這樣的總線系統的時候,時鐘信息會喪失它的精度(有效性)。例如,精度為幾個微妙的時鐘信息通過帶來幾個毫秒延遲的總線系統傳輸的時候會喪失它的價值,特別是這個延遲會有幾個毫秒的隨機變化的時候,也就是說用來例如產生時間標記的這個時間不再有效。另外,通常在PC和PDA這種通用裝置上運行的非實時操作系統205會給時鐘信息帶來更多的不確定性。在圖2中,通過媒體源202的那些層的彎曲箭頭206表示出了媒體應用收到的時鐘信息的這種不確定性和不精確性。
另一方面,作為媒體接收器,也就是n個媒體接收器203-1、203-2、...、203-n,通常都采用單一目的裝置(嵌入式裝置),例如揚聲器。這樣的單一目的裝置可以作為嵌入系統裝進去。這樣就能夠獲得更加直接的路徑到達全局掛鐘時間,也就是能夠精確地確定全局掛鐘時間。例如,媒體應用207可以在傳輸系統的基帶處理器上運行。這就意味著媒體應用能夠非常直接地獲得時鐘信息,而沒有任何顯著的延遲和顯著的不確定性。因此,媒體接收器的媒體應用207能夠獲得具有幾個微秒精度的精確的時鐘信息,因為它不是通過任何慢速總線系統傳輸的。圖2中n個媒體接收器203-1、203-2、...、203-n說明的就是這種直接獲取。
如圖2所示,本發明利用了因為能夠直接訪問全局時鐘,多個媒體接收器,也就是n個媒體接收器能夠非常精確地互相同步這樣一個事實,而對于源裝置,與漏裝置不嚴格的同步是可以接受的。例如,從CD播放機向兩個揚聲器傳送立體聲音頻數據的時候,從CD播放機發送數據包到揚聲器播出它位置的這一個延遲可能有幾個毫秒,但是左邊和右邊的揚聲器之間的延遲可能只有幾個微秒。因此在媒體接收器中進行適當的緩存能夠補償源這一邊時鐘信息的不確定性。因為媒體源這邊的時鐘信息不如媒體接收器這邊的時鐘信息精確和可靠,因此在這種基礎上實現的同步可以被叫做“非對稱同步”。
最好源這一邊只是在傳輸會話的一開始讀一次全局掛鐘時間,以便將采樣時鐘與全局掛鐘時間聯系起來。這一時鐘信息可以被用來調整發送給媒體接收器的第一個控制數據包的時間標記。而對于以后的控制數據包中的全局掛鐘時間標記,時間差可以通過對采樣次數進行計數計算出來,而不是再次讀全局掛鐘時間。這是因為全局掛鐘信息傳輸時間的變化一般都太大,會導致漏這邊播放的時候出現間隙或者跳躍這樣一個事實。
在圖3中,媒體源101發送媒體數據包給第一個媒體接收器1和第二個媒體接收器2。在這一程序的開頭,必須在步驟304中協商(確定)播放時間偏移。將協商得到的這個播放時間偏移發送給兩個媒體接收器,也就是第一個媒體接收器1和第二個媒體接收器2,由這些媒體接收器用來確定每個數據包的共同播放時間。媒體數據包時間標記用采樣時鐘的時間單位表明產生數據包的時間瞬間。為了確定共同的播放時間,也就是漏必須在物理上播放媒體數據包的時間瞬間,將媒體數據包的時間標記表明的時間轉換成以全局掛鐘時間的時間單位表示的全局掛鐘時間,將協商得到的播放時間偏移加到這個全局掛鐘時間上。為了協商播放時間偏移,必須考慮預期的傳輸時間、潛在的譯碼時間和可用媒體接收器緩存器大小。因為源這邊的全局掛鐘時間信息可能不太精確,還會有統計起伏,因此源必須將最差情況下的變化時間加到播放時間偏移中去。這樣就能夠避免媒體數據包到達漏的時候共同的播放時間已經過去這種情形出現。
即使媒體源的全局掛鐘時間存在上述變化,在媒體傳輸會話的一開始在步驟305中還被讀一次,將源的采樣時鐘與全局掛鐘時間聯系起來。在后面的步驟306中,將具有兩個時間標記的控制數據包發送給第一個媒體接收器1和第二個媒體接收器2。控制數據包的這兩個時間標記都說明時間上的同一個瞬間,一個時間標記用源采樣時鐘的時間單位說明時間上的這個瞬間,另一個時間標記用全局掛鐘時間的時間單位說明時間上的這一瞬間。這樣,接收控制數據包的媒體接收器就能夠利用媒體數據包用采樣時鐘的時間單位表示的時間標記說明的時間,確定用全局掛鐘時間的時間單位表示的媒體數據包的產生時間瞬間。
在步驟307中,將每個漏的媒體數據包準備好,用源采樣時鐘的時間單位打上產生它們的時刻的時間標記。如果每個漏都是一個不同的流,就必須為每個流這樣做。如果將一個流傳送到多個漏,就只需要對這個流這樣做。在圖3所示的實例中,只有一個流被發送給兩個媒體接收器。因此,在步驟308中,流的媒體數據包被發送給第一個媒體接收器1和第二個媒體接收器2。
在下一個步驟309中,每個漏都對數據譯碼,如果它們是編碼數據。還有,在步驟309中,漏將收到的媒體數據包的時間標記說明的時間轉換成全局掛鐘時間單位表示的時間。于是,每個漏都通過將協商得到的用全局掛鐘時間的單位給出的播放時間偏移加到收到的媒體數據包的時間標記說明的轉換過的時間上去來確定共同的播放時間。在下一個步驟310中,每個漏都將媒體數據緩存起來,直到確定的共同播放時刻到來。媒體接收器中的這些緩存器必需足夠大,以便補償媒體源中時鐘信息的隨機變化、傳輸延遲的隨機變化和譯碼延遲的可能變化。在下一個步驟311中,共同播放時間105到來的時候,每個漏都在物理上播放媒體。
對于隨后從媒體源301向第一個媒體接收器1和第二個媒體接收器2發送的媒體數據包的任意時間標記,媒體源301在步驟312中利用采樣時鐘時間來確定時間標記的時間,而不是再次讀全局掛鐘時間。這樣就能夠確保不會因為源媒體應用中掛鐘時間的不精確性導致漏這邊出現間隙或者跳躍。在步驟313中,從源發送給漏的下一個媒體數據包的時間標記使用采樣時鐘時間,而不是讀掛鐘時間。在步驟314中,將媒體數據包發送給每個媒體接收器,也就是第一個媒體接收器1和第二個媒體接收器2,其中的時間標記說明源采樣時鐘給出的它們的產生時間。媒體數據包的時間標記一般都包括在媒體數據包里作為報頭信息。但是,它也可以用單獨的時間標記數據包發送。
從圖3可以看出,重復執行步驟312、313和314,直到這一會話的所有媒體數據包都被發送出去,也就是計算新的時間標記,將媒體數據包與這些時間標記一起打包,并且將這些媒體數據包發送給媒體接收器。
作為這一程序的結果,源媒體應用只需要與全局掛鐘時間不嚴格地聯系起來,而每個媒體接收器則與全局掛鐘時間嚴格聯系。因此,將PC或者PDA這樣的非實時裝置用作媒體源,將揚聲器用作媒體接收器,揚聲器就能夠互相精確同步,滿足人類對接收空間音頻信號的嚴格要求。
圖4說明可以應用本發明的程序的可能情形。配備了藍牙的PC 400正在通過兩條藍牙鏈路,也就是第一條藍牙鏈路4011和第二條藍牙鏈路4012,將媒體數據包形式的立體聲音頻流播發給兩個藍牙揚聲器,也就是第一個藍牙揚聲器4021和第二個藍牙揚聲器4022。在每條鏈路中,將立體聲信號的音頻信號的媒體數據包發送給相應的揚聲器。
在PC這邊,藍牙模塊是通過USB連接的,而第一個藍牙揚聲器4021和第二個藍牙揚聲器4022這邊,藍牙是直接嵌入系統結構中的。PC和藍牙揚聲器使用的全局掛鐘時間是每個藍牙基帶應用中內在的藍牙基帶時鐘。在藍牙皮網的所有參與者中,這個藍牙基帶時鐘是同步得非常好的。
作為音頻流媒體源的PC 400利用RTP定義的控制數據包提供的信息,從評估向第一個藍牙揚聲器4021和第二個藍牙揚聲器4022的藍牙傳輸質量和延遲開始。此外,PC利用適當的信令命令查詢每個揚聲器譯碼需要的時間和緩存器容量。利用這一信息以及PC時鐘信息的隨機變化信息,也就是最大可能變化的信息,PC能夠確定播放時間偏移。將這個播放時間偏移向第一個藍牙揚聲器4021和第二個藍牙揚聲器4022發送一次,并且將它加到媒體流每個媒體數據包的時間標記所說明的時間上去,獲得每個媒體數據包的公共播放時間。在本發明的其它實施方案中,可以由媒體源,在這里是PC 400,為每個媒體數據包確定共同的播放時間,然后與每個媒體數據包一起發送,如同下面參考圖6所介紹的一樣。
PC 400作為這個流的媒體源產生時間標記。發送RTP媒體數據包的時候,媒體數據包中的時間標記用采樣時鐘的時間單位說明數據包的采樣時刻。到全局掛鐘時間的鏈路,在這里是藍牙基帶時鐘,是通過在RTCP控制數據包中提供同一時刻的兩個時間標記來實現的,一個時間標記用采樣時鐘的時間單元,另一個用全局掛鐘時間單元說明時間,就象前面所介紹的一樣。但是因PC這邊的時鐘信息不是那么精確,因此最好是實際上只為第一個控制數據包讀取基帶時鐘。對于隨后的控制數據包,全局掛鐘時間標記的時間信息是通過對上一個控制數據包以后經歷的采樣數進行計數,然后將這個采樣數轉換成全局掛鐘時間時間單位的時間來產生。如上所述,控制數據包由一個全局掛鐘時間標記,它用全局掛鐘時間的時間單位說明一個時刻,還有一個采樣時鐘時間標記,它用采樣時鐘時間的時間單位說明同一個時刻。因此,通過將媒體數據包和控制數據包中存在的各種時間標記提供的信息結合起來,每個藍牙揚聲器都能夠從媒體數據包的時間標記確定按照全局掛鐘時間的時間單位,源產生數據包的時刻,說明用采樣時鐘的時間單元的產生時間。通過加上協商好的播放時間偏移,就能夠確定每個媒體數據包的采樣必須在什么時候播放。因為每個漏都能夠直接訪問藍牙基帶時鐘,所以所有漏都能夠將它們的采樣播放時鐘與藍牙基帶時鐘嚴格同步。
因為源這邊的時鐘信息在某種程度上是不精確的,因此作為音頻媒體接收器的第一個藍牙揚聲器4021和第二個藍牙揚聲器4022必須用適當大小的緩存器補償這種不精確性。例如,PC 400知道時鐘信息最大有2毫秒的變化。因此,為了避免媒體數據包到了漏的時候這個媒體數據包的播放時刻已經過去這種情況發生,它在協商好的播放時間偏移里包括了這2個毫秒。對于2毫秒的變化,在最差的情況下,源產生的時間標記可能會早1毫秒或者晚1毫秒。因此,漏必須提供足夠的存儲器來緩存這種最差情形下的數據,這一點源裝置已經考慮了進去,以確保安全。
圖5畫出了說明本發明中媒體源101這邊發送過程和媒體接收器1那邊接收過程的一個流程圖,其中每個媒體數據包的播放時間由媒體接收器決定。這一實例是建立在RTP標準基礎之上的。在第一個步驟603S中,媒體源101將傳輸時間、參與媒體流會話的媒體接收器的譯碼時間和可用緩存器大小考慮在內,確定(協商)播放時間偏移。為了獲得這些信息,媒體源101詢問媒體接收器1。然后將播放時間偏移以數據控制數據包604S的形式發送給媒體接收器1。這個數據控制數據包604S包括以全局掛鐘時間的時間單位為單位的播放時間偏移。媒體接收器1接收發送的數據控制數據包604R,它對應于媒體源101發送出來的數據控制數據包604S。媒體接收器1以全局掛鐘時間的單位儲存這個播放時間偏移,以便確定隨后收到的媒體數據包的播放時間,如同下面將介紹的一樣。
從媒體源101將媒體數據包發送給媒體接收器1之前,從媒體源101向媒體接收器1發送一個發送方報告數據包。因此,在以下的步驟605S中,產生一個發送方報告數據包606S。發送方報告數據包606S包括兩個時間標記,用采樣時鐘的時間單位說明時間上一個瞬間的一個采樣時鐘時間標記607S,以及用全局掛鐘時間單位說明同一時間瞬間的一個全局掛鐘時間標記608S。發送方報告數據包606S偶爾從媒體源101向媒體接收器1發送一次。在每個媒體流會話開始之前至少發送它一次,但是也可以在媒體流會話過程的中間發送它。此時,媒體接收器接收發送過來,包括發送的采樣時鐘時間標記607R和發送的全局掛鐘時間標記608R的發送方報告數據包606R。因為這兩個時間標記說明時間上的同一瞬間,因此,在下面的步驟609R里,媒體接收器1能夠將采樣時鐘時間與全局掛鐘時間聯系起來。這就意味著對于隨后收到的時間標記,如果相應的時間標記給出全局掛鐘時間,媒體接收器1能夠確定采樣時鐘時間,反過來如果給出了采樣時鐘時間,它就能夠確定全局掛鐘時間。
在隨后的數據準備步驟609S里,媒體源101產生一個媒體數據包610S。媒體數據包610S包括一個采樣時鐘時間標記,它用采樣時鐘的時間單位說明媒體數據包610S的產生時間,它還包括媒體數據612S。這個媒體數據包610S被發送給媒體接收器1。媒體接收器1接收發送過來的媒體數據包610R,其中包括發送的用采樣時鐘時間單位說明的媒體數據包610R產生時間的采樣時鐘時間標記611R和發送的媒體數據612R。在第一個計算步驟613R中,媒體接收器1隨后利用早些時候收到的發送過來的發送方報告數據包606R提供的信息計算用全局掛鐘時間的時間單位表示的產生它的全局掛鐘時間。現在,在第二個計算步驟614R中,通過將計算出來的產生它的全局掛鐘時間和播放時間偏移加起來,確定用全局掛鐘時間的時間單位表示的播放時間。然后在緩存步驟615R里,緩存發送的媒體數據612R,直到已經確定,用全局掛鐘時間的時間單位表示的播放時間到達。最后,在播放步驟616R里,精確地在確定的播放時刻在物理上播出媒體數據,現在媒體接收器1已經知道用全局掛鐘時間的時間單位表示的這個時刻。如上所述,在時間上精確地播放是可能的,因為媒體接收器1能夠直接(精確地)訪問全局掛鐘時間。
對于媒體流會話過程中隨后的媒體數據包,數據準備步驟609s、從媒體源101向媒體接收器1的媒體數據包發送步驟、第一個計算步驟613R、第二個計算步驟614R、緩存步驟615R和播放步驟616R重復執行。如上所述,在這樣一個媒體流會話過程中,也可以偶爾從媒體源101向媒體接收器1發送一次發送方報告數據包606S。
圖6畫出了一個流程圖,它說明本發明第一個替代實施方案中媒體源501這邊的發送過程和媒體接收器502這邊的接收過程,其中每個數據包的播放時間都由媒體源501確定,并且和每個媒體數據包一起發送。說明的這一過程對于從媒體源(SRC)501發送給媒體接收器(SNK)502的每個媒體數據包都要執行。應當指出,圖6只說明了參加媒體流會話的一個媒體接收器502里的過程。同樣的過程也在參與同一媒體會話的其它媒體接收器中執行。
在第一個步驟510中,針對下一次要發送的媒體數據包511產生播放時間。這一播放時間取決于媒體源501時鐘信息的隨機變化、傳輸時間長度、參與這一媒體流會話的媒體接收器的譯碼時間長度和可用緩存大小。如上所述,在媒體源501和媒體接收器502之間協商這些信息。媒體數據包511包括媒體數據513和全局掛鐘時間標記512,它用全局掛鐘時間的時間單位說明媒體數據包511的播放時間。將這個媒體數據包511發送給媒體接收器502。發送的媒體數據包514包括媒體數據516和分別對應于媒體源501發送的媒體數據513和全局掛鐘時間標記512的全局掛鐘時間標記515。收到發送的媒體數據包514以后,在處理步驟517里,媒體接收器502緩存媒體數據515,直到發送的全局掛鐘時間標記515所說明的播放時刻到來。然后在播放步驟518里,媒體接收器502精確地在確定的播放時刻實際播出媒體數據,這個時間由全局掛鐘時間標記515說明。如上所述,在時間上精確地播放是可能的,因為媒體接收器502能夠直接(精確地)訪問全局掛鐘時間。對于有嚴格時間要求的情形,象立體聲左聲道和右聲道的同步,對時鐘信息的這一訪問是關鍵點。
為了協商(協調)播放時間,所有裝置都需要獲得作為公共時間基準的同一個時鐘信息(全局掛鐘時間)。然后,媒體源能夠協調媒體數據包,所有漏必須緩存這些媒體數據包,直到協調好的全局掛鐘時間到來。
圖7說明本發明的第二個可選實施方案,其中的媒體接收器自己寫上播放時間偏移。在這第二個可選實施方案中,第三個媒體接收器71和第四個媒體接收器72將傳輸時間、譯碼時間、可用緩存大小和媒體源101與全局掛鐘時間最終的不嚴格同步考慮在內,協商好一個播放時間偏移。第三個媒體接收器71和第四個媒體接收器72可以通過直接數據鏈路73(直接通信信道)協商播放時間偏移,也可以在媒體源101中通過第一條數據鏈路74和第二條數據鏈路75協商播放時間偏移(間接通信信道)。第一條數據鏈路74將媒體源101和第三個媒體接收器71連接起來,第二條數據鏈路75將媒體源101和第四個媒體接收器72聯系起來。第三個媒體接收器71和第四個媒體接收器72協商好播放時間偏移以后,媒體源101開始通過第一條數據鏈路74和第二條數據鏈路75發送有時間標記的媒體數據包。在圖7所示的實例中,通過第一條數據鏈路74發送有時間標記的第三個媒體數據包76,通過第二條數據鏈路75發送有時間標記的第四個媒體數據包77。媒體數據包的時間標記可以用全局掛鐘時間的時間單位說明它們的產生時刻,或者它們可以用采樣時鐘時間的時間單位說明它們的產生時間。在后一種情形中,必須在發送媒體數據包以前執行圖5所示的程序,也就是必須從媒體源101向第三個媒體接收器71和第四個媒體接收器72發送控制數據包,從而使第三個媒體接收器71和第四個媒體接收器72能夠確定用全局掛鐘時間的時間單位表示的媒體數據包的產生時間。第三個媒體接收器71和/或第四個媒體接收器72收到媒體數據包以后,它們將協商好的播放時間偏移加上媒體數據包的時間標記說明的時間,確定收到的媒體數據包的播放時間。在這個實例中,第三個媒體接收器71將協商好的播放時間偏移加上有時間標記的第三個媒體數據包76的時間標記說明的時間,確定有時間標記的第三個媒體數據包76的播放時間,精確地在確定好的這個播放時刻播放有時間標記的第三個媒體數據包76。第四個媒體接收器72將協商好的播放時間偏移加上有時間標記的第四個媒體數據包77的時間標記說明的時間,確定有時間標記的第四個媒體數據包77的播放時間,精確地在確定的這個播放時刻播放有時間標記的第四個媒體數據包77。
概括起來說,根據本發明,在數字音頻傳輸系統中,將媒體數據包從媒體源發送給媒體接收器(例如揚聲器)。如果媒體接收器收到媒體數據包,其中有屬于例如立體聲信號的音頻信號的音頻數據,那么這個媒體數據包與包括另一個媒體接收器收到的包括同一個立體聲信號的音頻信號的媒體數據包在同一個時刻播放是非常重要的,也就是說這些媒體數據包必須同步播出。為了確保不同的媒體接收器同步播出這些媒體數據包,媒體源或者媒體接收器確定一個共同的播放時刻,媒體數據包被緩存起來,直到這個共同播出時刻。媒體源或者媒體接收器根據在采樣時鐘的基礎之上計算出來的全局掛鐘時間的基礎之上確定這一共同播放時刻。
權利要求
1.一種媒體源(101;400)-能夠發送有時間標記的媒體數據包(1021,1022;308;610S,610R;76,77)給權利要求5~9中任意一個所述的一個或者多個接收媒體接收器(1,2;4021,4022;71,72),每個媒體數據包(1021,1022;308;610S,610R;76,77)的時間標記(611S)都說明相應媒體數據包(1021,1022;308;610S,610R;76,77)的產生時間,-用于確定播放時間偏移(604S),和-用于發送播放時間偏移(604S)給權利要求5~9中任意一個所述的一個或者多個接收媒體接收器(1,2;4021,4022;71,72)。
2.權利要求1所述的媒體源(101;400),其特征在于-能夠確定采樣時鐘時間的采樣時鐘,-能夠確定全局掛鐘時間(201),和-用于偶爾發送控制數據包(606S)給權利要求5~9中任意一個所述的一個或者多個接收媒體接收器(1,2;4021,4022;71,72),所述控制數據包(606S)包括說明同一個時間瞬間的兩個控制數據包時間標記,它的第一個控制數據包時間標記(608S)按照所述全局掛鐘時間(201)的時間單位來度量或者定義,它的第二個控制數據包時間標記(607S)按照所述采樣時鐘時間的時間單位度量或者定義。
3.權利要求1或者2所述的媒體源(101;400),其特征在于媒體數據包(1021,1022;308;610S,610R;76,77)的所述時間標記(611S)能夠用所述采樣時鐘時間的時間單位說明有時間標記的所述媒體數據包(1021,1022;308;610S,610R;76,77)的產生時間。
4.以上權利要求中任意一個所述的媒體源(101;400),它被設計成發送同樣的媒體數據包(1021,1022;308;610S,610R;76,77)給兩個或者多個不同的接收媒體接收器(1,2;4021,4022;71,72)。
5.一種媒體接收器(1,2;4021,4022;71,72)用于從權利要求1~4中任意一個所述的媒體源(101;400)接收有時間標記的媒體數據包(1021,1022;308;610S,610R;76,77),用于-確定播放時間偏移(604R),-精確地確定全局掛鐘時間(201),-將有時間標記的所述媒體數據包(1021,1022;308;610S,610R;76,77)的時間標記(611R)說明的時間加上所述播放時間偏移(604R),確定收到的有時間標記的每個媒體數據包(1021,1022;308;610S,610R;76,77)的共同播放時間,和-剛好在為收到的有時間標記的媒體數據包(1021,1022;308;610S,610R;76,77)確定的共同播放時間到達的時候,播放收到的有時間標記的每個媒體數據包(1021,1022;308;610S,610R;76,77)。
6.權利要求5所述的媒體接收器(1,2;4021,4022;71,72),它被用于從權利要求1~4中任意一個所述的媒體接收器(101;400)接收一次所述播放時間偏移(604R)。
7.權利要求5所述的媒體接收器(1,2;4021,4022;71,72),它被用于與權利要求5或者6所述的至少一個其它媒體接收器(1,2;4021,4022;71,72)協商所述播放時間偏移(604R)。
8.權利要求5~7中任意一個所述的媒體接收器(1,2;4021,4022;71,72),其特征在于能夠-從權利要求1~4中任意一個所述的媒體源(101;400)接收控制數據包(606R),其中包括第一個控制數據包時間標記(608R),說明用采樣時鐘時間的時間單位度量或者定義的時間上的一個特定瞬間,還有第二個控制數據包時間標記(607R),說明用全局掛鐘時間(201)的時間單位度量或者定義的同一個時間瞬間,并且能夠-在第一個和第二個控制數據包時間標記的基礎之上,將利用采樣時鐘時間的時間單位度量或者定義的有時間標記的媒體數據包(1021,1022;308;610S,610R;76,77)的時間標記(611R)說明的時間,轉換成用全局掛鐘時間(201)的單位度量或者定義的時間。
9.權利要求5~8中任意一個所述的媒體接收器(1,2;4021,4022;71,72),其特征在于一個緩存器,用于儲存媒體數據包(1021,1022;308;610S,610R;76,77),直到所述共同播放時刻到來。
10.一種媒體處理系統其特征在于權利要求1~4中任意一個所述的媒體源(101;400),以及權利要求5~9中任意一個所述的媒體接收器(1,2;4021,4022;71,72)。
11.一種媒體源(501)-能夠確定播放時間偏移,并且將確定的播放時間偏移加上當前時間,確定共同播放時間,和-用于發送有時間標記的媒體數據包(511)給一個或者多個接收媒體接收器(502),有時間標記的媒體數據包(511)的時間標記(512)說明媒體數據包的所述共同播放時間。
12.權利要求11所述的媒體源(501),其特征在于-能夠確定采樣時鐘時間的一個采樣時鐘,和-只讀一次全局掛鐘時間(201),將所述采樣時鐘給出的時間加上只讀一次得到的全局掛鐘時間(201),計算所述當前時間。
13.權利要求11或者12所述的媒體源(501),用于發送同樣的媒體數據包(511)給兩個或者多個不同的接收媒體接收器(502)。
14.一種媒體接收器(502)用于從權利要求11~13中任意一個所述的媒體源(501)接收有時間標記的媒體數據包(514),和能夠-精確地確定全局掛鐘時間(201),和-為收到的有時間標記的每個媒體數據包(514)確定共同播放時間,也就是有時間標記的媒體數據包(514)的時間標記(515)說明的時間。
15.權利要求14所述的媒體接收器(502),其特征在于用于儲存媒體數據包(514),直到共同播放時刻的緩存器。
16.一種媒體處理系統其特征在于權利要求11~13中任意一個所述的媒體源(501)和權利要求14~15中任意一個所述的媒體接收器(502)。
17.針對媒體源(101;400),同步播放媒體數據包(1021,1022;308;610S,610R;76,77)的一種方法,包括以下步驟-發送有時間標記的媒體數據包(1021,1022;308;610S,610R;76,77)給權利要求5~9中任意一個所述的一個或者多個接收媒體接收器(1,2;4021,4022;71,72),每個媒體數據包(1021,1022;308;610S,610R;76,77)的時間標記(611S)都說明相應媒體數據包(1021,1022;308;610S,610R;76,77)的產生時間,-確定播放時間偏移(603S),和-發送播放時間偏移(604S)給權利要求5~9中任意一個所述的一個或者多個接收媒體接收器(1,2;4021,4022;71,72)。
18.權利要求17所述的方法,其特征在于以下步驟,-確定采樣時鐘時間,-確定全局掛鐘時間(201),和-偶爾發送一次控制數據包(606S)給權利要求5~9中任意一個所述的一個或者多個接收媒體接收器(1,2;4021,4022;71,72),所述控制數據包(606S)包括兩個控制數據包時間標記,說明時間上的同一瞬間,它的第一個控制數據包時間標記(608S)是用所述全局掛鐘時間(201)的時間單位度量或者定義的,它的第二個控制數據包時間標記(607S)是用所述采樣時鐘時間的時間單位度量或者定義的。
19.權利要求17或者18所述的方法,其特征在于媒體數據包(1021,1022;308;610S,610R;76,77)的所述時間標記(611S)用所述采樣時鐘時間的時間單位說明有時間標記的所述媒體數據包(1021,1022;308;610S,610R;76,77)的產生時間。
20.權利要求17~19中任意一個所述的方法,其特征在于發送同樣的媒體數據包(1021,1022;308;610S,610R;76,77)給兩個或者多個不同的接收媒體接收器(1,2;4021,4022;71,72)。
21.用來使媒體接收器(1,2;4021,4022;71,72)同步播放媒體數據包(1021,1022;308;610S,610R;76,77)的一種方法,包括以下步驟-從權利要求1~4中任意一個所述的媒體源(101;400)接收有時間標記的媒體數據包(1021,1022;308;610S,610R;76,77),-確定播放時間偏移(604R),-精確地確定全局掛鐘時間(201),-將有時間標記的所述媒體數據包(1021,1022;308;610S,610R;76,77)的時間標記(611R)說明的時間加上(614R)所述播放時間偏移(604R),確定收到的有時間標記的每個媒體數據包(1021,1022;308;610S,610R;76,77)的共同播放時間,和-精確地在為收到的有時間標記的媒體數據包(1021,1022;308;610S,610R;76,77)確定的共同播放時間到來(616R)的時候,播放收到的有時間標記的每個媒體數據包(1021,1022;308;610S,610R;76,77)。
22.權利要求21所述的方法,其特征在于以下步驟從權利要求1~4中任意一個所述的媒體源(101;400)接收一次所述播放時間偏移(604R)。
23.權利要求21所述的方法,其特征在于以下步驟與權利要求5~9中任意一個所述的至少一個其它媒體接收器(1,2;4021,4022;71,72)協商所述播放時間偏移(604R)。
24.權利要求21~23中任意一個所述的方法,其特征在于以下步驟-從權利要求1~4中任意一個所述的媒體源(101;400)接收控制數據包(606S),包括第一個控制數據包時間標記(608R),說明用采樣時鐘時間的時間單位度量或者定義的某個瞬間,還包括第二個控制數據包時間標記(607R),說明用全局掛鐘時間(201)的時間單位度量或者定義的同一個時間瞬間,并且能夠-在第一個和第二個控制數據包時間標記信息的基礎之上,將利用采樣時鐘時間的時間單位度量或者定義的有時間標記的媒體數據包(1021,1022;308;610S,610R;76,77)的時間標記(611R)說明的時間(613R),轉換成利用全局掛鐘時間(201)的時間單位度量或者定義的時間。
25.權利要求21~24中任意一個所述的方法,其特征在于以下步驟將媒體數據包(1021,1022;308;610S,610R;76,77)儲存在緩存器中,直到共同播放時間(615R)。
26.用于使媒體處理系統同步播放媒體數據包(1021,1022;308;610S,610R;76,77)的一種方法,其特征在于權利要求17~20中任意一個所述的方法的步驟,以及權利要求21~25中任意一個所述的方法的步驟。
27.針對媒體源(501),同步播放媒體數據包(511)的一種方法,包括以下步驟-確定播放時間偏移,將確定出來的播放時間偏移加上當前時間確定共同播放時間,和-將有時間標記的媒體數據包(511)發送給權利要求14或者15所述的一個或者多個接收媒體接收器(502),有時間標記的媒體數據包的時間標記(512)說明媒體數據包的所述共同播放時間。
28.權利要求27所述的方法,其特征在于以下步驟-確定采樣時鐘時間,和-只讀取一次全局掛鐘時間(201),將所述采樣時鐘給出的時間加上只是一次讀出的全局掛鐘時間(201),計算所述當前時間。
29.權利要求27或者28所述的方法,其特征在于以下步驟發送同樣的媒體數據包(511)給兩個或者多個不同的接收媒體接收器(502)。
30.用于使媒體接收器(502)同步播放媒體數據包(514)的一種方法,包括以下步驟-從權利要求11~13中任意一個所述的媒體源(501)接收有時間標記的媒體數據包(514),-精確地確定全局掛鐘時間(201),和-為收到的有時間標記的每個媒體數據包(514)確定共同播放時間,也就是有時間標記的媒體數據包(514)的時間標記(515)說明的時間。
31.權利要求30所述的方法,其特征在于以下步驟將媒體數據包(514)儲存到緩存器里,直到共同播放時間到來。
32.用于使媒體處理系統同步播放媒體數據包(511,514)的一種方法,其特征在于權利要求27~29中任意一個所述的方法的步驟和權利要求30或者31所述的方法的步驟。
全文摘要
在數字音頻傳輸系統中,將媒體數據包(1021,1022)從媒體源(101)發送給媒體接收器。為了確保不同媒體接收器(1,2)中同步播放媒體數據包,媒體源或者媒體接收器確定共同播放時間(105),媒體數據包(1021,1022)被緩存在緩存器(1041,1042)中,直到這個共同播放時間(105)到來。媒體源或者媒體接收器根據在采樣時鐘時間的基礎之上計算出來的全局掛鐘時間確定共同播放時間(105)。
文檔編號H04L12/56GK1489356SQ03155469
公開日2004年4月14日 申請日期2003年9月5日 優先權日2002年9月6日
發明者R·莫斯格, R 莫斯格 申請人:索尼國際(歐洲)股份有限公司