專利名稱:壓縮圖像數據從發送端傳輸到接收端的視頻數據收發系統的制作方法
技術領域:
本發明涉及一種視頻數據發送/接收系統,該系統包括發送端和接收端,其中發送端將利用運動位移補償幀間預報(motioncompensation interframe prediction)壓縮的圖像數據發送到接收端,接收端解碼和顯示該視頻數據。
背景技術:
近年來,隨著寬帶網絡如ADSL、FTTH等的普及,通過互聯網向用戶提供視頻數據的服務越來越普遍。該視頻數據以壓縮形式提供,以減少數據量。一種普遍采用的壓縮方法是MPEG-4。該方法中,通過利用幀內/幀間編碼和運動位移預報相結合的編碼來壓縮數據量。
這種提供視頻數據的服務的形式之一是一種廣播型服務(其中發送端裝置按照預定的時間表在相同的時間將相同的視頻數據分布(廣播視頻數據)給多個用戶終端)。廣播型服務中的數據提供是通過稱為一對多通訊的廣播或多點傳送來執行的。因為在該方法中,不必對不同的用戶進行單獨處理,所以,被提供數據的用戶終端數可以增加,而不會增加發送端裝置的負擔。
但是,服務的種類越來越多,一種這樣的多樣化是隨選型(on-demand-type)數據分布,其中,除了單方面從發送端裝置簡單地分布廣播視頻數據外,不同的視頻數據還響應個別用戶終端的請求而發送到該個別用戶終端(隨選數據分布)。
該種服務的一個例子是,如果被發送的廣播視頻數據為體育節目,則響應來自一個特定用戶終端的請求,將與特定比賽者有關的過去的數據發送到該用戶終端。
當發送廣播視頻數據的同時向特定用戶終端發送隨選視頻數據時,有多種方法可以用來處理廣播視頻數據。
一種方法是在發送隨選視頻數據的同時,繼續向該用戶終端發送廣播視頻數據。利用該方法,用戶終端的負擔較重,因為該用戶終端除了要求充分的通訊頻帶同時接收兩種視頻數據外,還必須有額外的處理來解碼接收到的視頻數據,如選擇解碼和播放。因此,通常采用一種方法,通過該方法,在發送隨選視頻數據時,中斷向該用戶終端發送廣播視頻數據,只發送隨選視頻數據。
但是,當由于發送隨選視頻數據而中斷發送廣播視頻數據時,在恢復發送廣播視頻數據后立即會出現下列問題。具體地,因為用戶終端不能解碼在恢復發送后立即發送的廣播視頻數據,所以存在一段時間,其中沒有視頻顯示。其原因在于視頻數據補償方法(運動位移補償幀間預報)。下面參考
為什么會出現該問題。
圖1簡化示出在廣播視頻數據的傳輸中斷,而隨選視頻數據發送的情況下,視頻數據如何被用戶終端在互聯網中接收。此處,廣播視頻數據111的接收在時間t0中斷,代之以接收隨選視頻數據112,直到時間t1。然后在時間t1恢復接收廣播視頻數據。廣播視頻數據111根據一種方法壓縮,從而30幀/秒視頻的I幀(幀內壓縮幀)每5秒提供一次。相應地,一個單元(GOP畫面組)包含150幀,其中一幀為I幀。與數字廣播(每秒兩個30幀/秒視頻的I幀)相比,在互聯網廣播中的I幀的比率較低。
圖1中,GOP1110是在包括時間t1的一段時間內接收到的廣播視頻數據111中的GOP。GOP1110中包括一個I幀和多個P和B幀,其它GOP也一樣。每個GOP被幀間編碼,使得每個P幀采用一個最近的在前I或P幀作為參考幀,每個B幀采用在前和在后的I或P幀作為參考幀。
因為GOP1110中的最上面3幀,包括I幀,的發送與隨選視頻數據的發送重合,所以用戶終端不接收該3個幀。因此,第四幀,即利用頭I幀作為參考幀編碼的P幀,不能被解碼。此外,該第四幀之后的P和B幀也不能被解碼,因為它們參考第四幀。結果,對應于從第四幀開始的P和B幀的視頻不能正確顯示。如果利用一種方法對廣播視頻數據進行了編碼,其中一個30幀/秒廣播視頻數據的I幀每5秒提供一次,則這種情況持續相當于149幀廣播視頻數據(略小于5秒)(在視頻數據按每秒兩個I幀編碼的情況下,顯示停止相當于14幀(略小于0.5秒))。
防止該問題的可能的方法包括(1)在隨選視頻數據發送過程中,繼續廣播視頻數據的發送,并在用戶終端中并行解碼兩種視頻數據;和(2)使發送裝置只錯開向特定用戶終端發送廣播視頻數據,并重組或重新編碼GOP,使其包括一個I幀作為恢復后的第一幀,從而在發送恢復后總是首先接收到I幀。但是,在(1)中描述的方法要求較寬的頻帶和增加用戶終端的處理負擔,而(2)中描述的方法增加發送端裝置的負擔,因為該裝置必須執行額外的處理來處理與其它用戶終端不一樣地接收隨選視頻數據的用戶終端。隨著同時接收隨選視頻的用戶終端數增加,該負擔也增加。這樣潛在地導致一個問題,即限制了可以同時接收到廣播的用戶數量。
發明內容
鑒于上述問題,本發明的目的是提供一種視頻數據發送/接收系統,其中當使用運動補償方法編碼的視頻數據由于上述原因必須在一個GOP的中間解碼時,接收端用戶終端能夠正確解碼和顯示緊接著發送恢復之后的那部分廣播視頻數據(GOP中的中間),而不會顯著增加發送端或接收端的處理負擔。
為了實現上述目的,本發明的視頻數據發送/接收系統包括一個發送端裝置和多個接收終端,發送端裝置發送利用運動位移補償幀間預報壓縮的視頻數據,接收終端接收該視頻數據并解碼接收到的視頻數據,其中發送端裝置包括第一編碼單元,其可以操作對多幀運動圖像數據的每一幀應用幀內編碼處理或幀間編碼處理,以產生所述視頻數據;第二編碼單元,其可以操作,與第一編碼單元的編碼處理并行對一幀運動圖像數據應用幀內編碼處理,以產生替換的I幀數據;和一個發送單元,向多個接收終端發送所述視頻數據和替換I幀數據,其中在臨時中斷向一個接收終端發送視頻數據后,當發送單元要恢復向該接收終端發送視頻數據時,發送單元在恢復發送視頻數據前,向該接收終端發送至少相當于一幀的替換I幀數據,并且當發送單元要恢復臨時中斷的視頻數據發送時,接收終端接收所發送的替換I幀數據,并解碼接收到的I幀數據,將該解碼的替換I幀數據作為參考幀解碼恢復發送后接收的視頻數據。
在該視頻數據發送/接收系統中,當恢復向臨時停止接收的接收終端發送視頻數據時,如果緊接著恢復之后的數據幀為幀間編碼幀(P幀或B幀),則通過幀內編碼同一幀而獨立產生的替換I幀數據發送到用戶終端。用戶終端首先解碼該替換I幀數據,然后利用解碼的I幀數據作為參考幀數據來解碼隨后的數據幀。因此,解碼可以在恢復(GOP中間)之后立即正確執行,從而視頻數據顯示不被中斷。此外,用戶終端的處理負擔沒有增加,發送端裝置的負擔增加僅僅是產生替換I幀數據和存儲相當于幾幀的替換I幀數據。即使在視頻數據頻繁停止和恢復的系統中,可以同時廣播的用戶數也不會因為所述停止和恢復的處理負擔而受到限制。
注意,上述效果可以在該系統中的發送端裝置中實現,換句話說,只能在視頻數據發送裝置中實現。
上述發送裝置還可以包括任選數據發送單元,其可以操作與視頻數據的發送并行向接收終端發送任選視頻數據,其中向接收終端發送視頻數據的中斷是由任選視頻數據的發送而引起的。
根據所述結構,所述效果可以在一種視頻數據發送/接收系統中實現,在該系統中,執行一種服務,向多個接收終端同時發送相同的視頻數據作為廣播,同時用單獨視頻數據(任選視頻數據)的發送中斷向特定接收終端發送該視頻數據。注意,任選視頻數據的例子包括隨選視頻數據和商業視頻數據。
此外,任選數據發送單元可以包括一個信息收集子單元,其可以從一個或多個接收終端中的每一個收集關于該接收終端的用戶偏愛的信息,并根據所收集的信息,選擇要發送的隨選數據。
根據所述結構,所述效果可以在一種視頻數據發送/接收系統中實現,在該系統中,提供視頻數據的一方的結構掌握發送隨選視頻數據的主動權。
此外,可以采用一種結構,其中發送單元包括一個可以操作向多個發送目標廣播相同數據的廣播發送子單元,和可以操作向單個發送目標發送單獨數據的單獨發送子單元,并利用廣播發送子單元發送視頻數據,利用單獨發送子單元發送替換I幀數據,任選數據發送單元以單獨發送方式發送任選視頻數據。在該情況下,因為相同的視頻數據被廣播,所以即使接收終端數增加,也不會增加發送端裝置的處理負擔。此外,如果發送單元包括一個切換子單元,其可以操作,將正在向其發送替換I幀數據或任選視頻數據的接收終端從廣播發送子單元的視頻數據發送目標中除去,則該接收終端就不會同時接收廣播視頻數據和任選視頻數據或替換I幀數據。因此,可以避免網絡負擔和接收終端處理負擔的顯著增加。此外,還可以采用一種結構,其中任選數據發送單元包括一個插入子單元,其可操作在任選數據中間發送二次任選數據;還包括一個第三編碼子單元,其可以操作,在二次任選數據的發送結束之后,任選數據恢復之前,產生任選數據替換I幀數據,其對應于從發送恢復后的第一幀開始的至少一幀任選數據,其中當二次任選數據的發送結束后要恢復發送任選數據時,任選數據發送單元在任選數據的發送恢復前,向接收終端發送任選數據替換I幀數據。如果采用該結構,則任選視頻數據可以被插入其它任選視頻數據,而不是任選數據插入視頻數據,并可以實現所述效果,即,在發送恢復后二次任選視頻數據可以立即顯示。
此外,第一編碼單元和第二編碼單元可以實現為獨立的編碼器。
根據所述結構,不需要專門的編碼器來與所有幀的幀內編碼處理并行來根據運動位移補償幀間預報執行普通的編碼處理。相反,通過提供兩個分別執行前述類型的編碼處理的常規編碼器,所述效果可以用常規編碼器實現。
注意,為了實現上述效果,以準確確定發送相當于多少幀的替換I幀,可以使用一種結構,其中,發送單元根據視頻數據的GOP結構確定在恢復視頻數據發送前,向接收終端發送多少幀替換I幀數據,特別是根據具有I屬性或P屬性的幀出現的頻率。
此外,根據另一種向多個接收終端發送利用運動位移補償幀間預報壓縮的視頻數據的視頻數據發送裝置也可以實現相同的效果,該裝置包括第一編碼單元,可以對一幀運動圖像數據應用幀內編碼處理,以產生幀內編碼的視頻數據;第二編碼單元,可以對一幀運動圖像數據應用幀間編碼處理,以產生幀間編碼的視頻數據;視頻數據發生單元,可以從所述幀內編碼的視頻數據和幀間編碼的視頻數據產生視頻數據;和發送單元,可以向多個接收裝置發送視頻數據;其中,當臨時中斷向一個接收終端發送視頻數據后,發送單元要恢復向該接收終端發送視頻數據時,發送單元在恢復視頻數據的發送之前,向接收終端發送相當于至少一幀幀內編碼的視頻數據作為替換I幀數據。在該情況下,由第一編碼單元產生的幀間編碼數據用作替換I幀數據。
此外,本發明的視頻數據發送/接收系統可以利用包括多個視頻數據提供裝置、多個接收終端、和一個分布服務器的視頻數據發送/接收系統實現,視頻數據提供裝置發送利用運動位移補償幀間預報壓縮的視頻數據,每個接收終端從任一個視頻數據提供裝置接收視頻數據,并解碼接收到的視頻數據,分布服務器在視頻數據提供裝置和接收終端之間傳輸視頻數據,其中每個視頻數據提供裝置包括第一編碼單元,可以對多個運動圖像數據幀中的每一幀應用幀內編碼處理或幀間編碼處理,以產生視頻數據;和第二編碼單元,可以與第一編碼單元應用的編碼處理并行對多個運動圖像數據幀中的每一幀應用幀內編碼處理,以產生替換I幀數據。分布服務器包括切換請求接收單元,可以從一個接收終端接收一個請求,將該接收終端接收的視頻數據切換為不同的視頻數據;和切換發送單元,可以在切換接收單元接收到請求時,停止正在向發送請求的用戶終端發送的視頻數據,從提供不同視頻數據的視頻數據提供裝置獲得替換I幀數據,發送獲得的替換I幀數據到該用戶終端,并發送不同的視頻數據到該用戶終端。
根據該視頻數據發送/接收系統,其中執行一種同時發送可以由多個接收終端選擇的多個廣播數據作為廣播的服務,即使在緊接著從其它廣播數據切換后(GOP的中間),接收終端的裝置也能夠正確解碼廣播視頻數據。此外,發送端裝置和接收端裝置都不會顯著增加處理負擔。
此外,根據利用運動位移補償幀間預報壓縮運動圖像數據的編碼器,包括第一編碼單元,可以對多個運動圖像數據幀中的每一幀應用幀內編碼處理或幀間編碼處理,以產生視頻數據;和第二編碼單元,可以與第一編碼單元應用的編碼處理并行對多個運動圖像數據幀中的每一幀應用幀內編碼處理,以產生替換I幀數據,如果作為參考幀的編碼I幀數據沒有正確發送到執行解碼的一端的裝置,則該替換I幀數據可以用來代替沒有正確發送的I幀數據,因此,I幀和隨后使用該I幀作為參考幀的幀可以被正確解碼。如果該編碼器應用于一種系統,該系統中視頻數據是作為廣播來發送/接收的,則可以實現上述效果。
此外,上述效果還可以通過一種利用運動位移補償幀間預報壓縮運動圖像數據的編碼器實現,該編碼器包括第一編碼單元,可以對一幀運動圖像數據應用幀內編碼處理,以產生幀內編碼的視頻數據;第二編碼單元,可以對一幀運動圖像數據應用幀間編碼處理,以產生幀間編碼的視頻數據;編碼視頻數據發生單元,可以從所述幀內編碼視頻數據和幀間編碼視頻數據產生編碼視頻數據;和替換數據發生單元,可以從幀內編碼視頻數據產生替換I幀數據。
此外,上述效果還可以由具有上述結構的系統執行的視頻數據發送/接收方法實現,或由在計算機中執行的一段程序實現,該程序的操作對應于具有上述結構的裝置。
附圖簡述通過下面結合示出本發明具體實施例的附圖所進行的說明,本發明的這些和其它目的、優點和特征將更加清楚。
圖1是表示現有技術中各種數據的接收狀態的簡化圖;圖2是本發明的視頻數據發送/接收系統的一個實施例的結構圖;圖3是表示該實施例中各種數據的接收狀態的簡化圖;圖4是表示該實施例中的一個編碼器結構的框圖;圖5是表示本實施例中的內容選擇裝置、分布服務器、和用戶終端詳細結構的框圖;圖6是表示本實施例中替換必要性判斷處理流程的流程圖;圖7是表示本實施例中視頻數據發送/接收處理流程的時序圖;圖8A和8B示出對應于使用路由器時的實施例的結構;圖9示出對應于當執行隨選視頻數據的發送/接收,且發送端為從屬的時本實施例的結構;圖10是表示本實施例的更改例子的結構的框圖;圖11是表示更改例子中視頻數據發送/接收處理流程的時序圖;和圖12是表示本實施例另一更改例子中的視頻數據發送/接收系統中的內容選擇裝置結構的框圖。
優選實施方式下面參考
本發明的視頻數據發送/接收系統的一個實施例。
<概述>
圖2示出本實施例的視頻數據發送/接收系統1的結構。在視頻數據發送/接收系統1中,視頻數據以廣播形式通過互聯網N從視頻數據發送源發送到希望接收該視頻數據的用戶終端18。以廣播形式發送表示根據事先已經通知用戶的時間表,同時向希望接收視頻數據的多個用戶終端發送相同的視頻數據。下面,以廣播形式發送的視頻數據稱為“廣播視頻數據”。也就是說,此處,廣播視頻數據中的“廣播”不是表示使用廣播波發送/接收。
此外,除了廣播視頻數據外,在視頻數據發送/接收系統1中發送和接收的視頻數據還包括只有當特定用戶終端發出請求時,發送給該用戶終端的視頻數據。該視頻數據稱為“隨選視頻數據”。在發送隨選視頻數據時,中斷向該特定用戶終端發送廣播視頻數據(但廣播視頻數據繼續向其它用戶終端發送)。當隨選視頻數據的發送/接收完成時,恢復向該特定用戶終端發送廣播視頻數據。
視頻數據發送/接收系統1使用戶終端1能夠在發送恢復后,從上述廣播視頻數據的發送恢復的點開始立即正確解碼和播放廣播視頻數據。為此,視頻數據發送/接收系統1的特征在于利用從同樣的幀(替換I幀)進行獨立幀內編碼的I幀數據替換在恢復之后立即出現的P幀或B幀的數據。
下面參考附圖描述發送和接收包括替換I幀數據的視頻數據的一個具體例子。
圖3中,用戶終端在跨越組成視頻數據20的兩個GOP21和22的部分的時間段內接收隨選視頻數據23。隨選視頻數據23的最后一幀與GOP22的第二幀222重疊。幀223和224是廣播視頻數據20中恢復后立即出現的幀。幀223是B幀,其解碼的參考幀是GOP22的頂端幀的I幀221,和隨后的P幀224。此外,P幀224的解碼參考幀是I幀221。
當解碼幀223和224時必須參考I幀221,且如果幀224不能正確解碼的話,后面的幀(從幀225起)將不能被解碼。但是,用戶終端18不接收I幀221。為解決這一問題,在恢復向用戶終端18發送廣播視頻數據20時,內容選擇裝置15不發送不能正確解碼的兩個頂部幀223和224,而發送對應的I幀數據231和232。
用戶終端18解碼對應于幀223和224的替換I幀數據231和232。通過參考解碼幀232產生的數據,從幀225開始的幀可以被正確解碼,因此,不必要用替換I幀數據代替。
<每個組件的結構>
下面描述執行所述處理的視頻數據發送/接收系統1的結構。
如圖2所示,視頻數據發送/接收系統1包括多個用戶終端18,用戶終端18構成接收端,并通過互聯網N連接到發送端。發送端包括攝像機11、編輯/廣播內容服務器12、切換器13、編碼器14、內容選擇裝置15、隨選內容服務器16、和分布服務器17。
攝像機11提供轉播的視頻數據,這是視頻數據的一種。攝像機11是一種裝置,其將入射到光學透鏡的光學圖像轉換為電信號。視頻數據可以是壓縮的或未壓縮的格式,如DVCPRO或消費者DVD,并通過信號線如SDI和SDTI或IEEE1394將視頻數據輸出到切換器13。
編輯/廣播內容服務器12提供在一個廣播站編輯的一個“節目”的視頻數據,作為一種廣播視頻數據。除了已經被編輯的節目外,編輯/廣播內容服務器12還保持用作內容的視頻數據和音頻數據。這些數據被存儲在硬盤、磁帶等上,并在需要時輸出到切換器13。
切換器13位于廣播中央,編輯從攝像機11和編輯/廣播內容服務器12獲得的視頻數據以產生廣播數據,并輸出該廣播數據到編碼器14,根據預定的時間表廣播。
編碼器14通過將來自切換器13的廣播數據壓縮為適合通過互聯網傳播的格式(如,MPEG-4),以產生廣播視頻數據,并將該廣播視頻數據輸出到內容選擇裝置15。注意,廣播數據在被切換器13輸出時可能已經被編碼。當廣播數據不能輸入編碼器14時,其被解碼器(未示出)解碼,然后輸入編碼器14。此外,編碼器14分別幀內編碼每個幀,并輸出編碼結果數據到內容選擇裝置15作為替換I幀數據。
具體地,編碼器14對輸入的廣播數據個別地應用兩種不同的編碼處理,并分別將每種處理產生的數據輸出作為廣播視頻數據和替換I幀數據。
編碼器14的結構示于圖4。編碼器14與普通編碼器的不同在于它具有兩個電路,每個電路結合一個DCT處理單元和一個量化處理單元。第一個電路中的DCT單元141和量化單元142對輸入廣播數據中的全部幀進行幀內編碼,并將結果數據輸出作為替換I幀數據。第二個電路中的DCT單元143和量化單元144對輸入的廣播進行幀內編碼或幀間編碼,并輸出編碼數據作為廣播視頻數據。換句話說,DCT單元143和量化單元144執行與普通編碼器中的DCT單元和量化單元相同的處理。來自第一電路和第二電路的相應編碼數據被輸出到內容選擇裝置15,其中的幀互相同步。
隨選內容服務器16保持其響應用戶請求提供給內容選擇裝置15的隨選視頻數據。隨選視頻數據被存儲和以與廣播視頻數據相同的方式壓縮為MPEG-4格式。
內容選擇裝置15從編碼器14接收廣播視頻數據和替換I幀數據,從隨選內容服務器16接收隨選視頻數據,并將接收的數據發送到分布服務器17。此處,只有必要的替換I幀數據的幀根據要求被輸出。下面將會更詳細描述由內容選擇裝置15執行的關于替換I幀數據的處理。
分布服務器17通過互聯網N將三種數據(廣播視頻數據、隨選視頻數據、和替換I幀數據)發送到用戶終端18。
此處,分布服務器17根據時間表同時向作為“廣播目標”的全部用戶終端發送廣播視頻數據。作為“廣播目標”的用戶終端是向分布服務器17發出請求發送廣播視頻數據的用戶終端。
從內容選擇裝置15接收到隨選視頻數據后,內容分布服務器17中斷向發出隨選視頻數據請求的用戶終端發送廣播視頻數據,而向該用戶終端發送隨選視頻數據。
當完成隨選視頻數據的發送時,分布服務器17向發出隨選視頻數據請求的用戶終端發送替換I幀數據。然后,完成發送替換I幀數據后,分布服務器17恢復向該用戶終端發送廣播視頻數據。
用戶終端18向服務器17發送一個用戶請求,并響應該請求解碼和顯示從分布服務器17發送的視頻數據。特別地,當接收隨選視頻數據后恢復接收廣播視頻數據時,用戶終端18接收替換I幀數據,解碼和顯示該替換I幀數據,并使用該解碼的替換I幀數據作為參考幀數據來解碼隨后收到的廣播視頻數據。
<主要組成元件的說明>
下面進一步詳細描述上述視頻數據發送/接收系統1的主要組成元件(內容選擇裝置15、分布服務器17、和用戶終端18)。
<詳細結構>
下面參考附圖進一步詳細描述本實施例的上述視頻數據發送/接收系統1的三個主要組成元件。說明主要集中在關于替換I幀數據的處理上。
圖5是表示該三個主要組成元件的結構的框圖。
<分布服務器17>
分布服務器17包括請求接收單元171、用戶管理單元172、視頻請求單元173、視頻接收單元174、和視頻發送單元175。下面說明每個組件的處理內容。
請求接收單元171通過互聯網N從用戶終端18接收關于視頻數據發送(廣播視頻數據發送開始/停止請求或隨選視頻數據發送請求)的請求,并將該請求輸出到用戶管理單元172。該請求包括發出請求的用戶終端識別信息(IP地址等)和被請求的視頻數據的識別信息。
用戶管理單元172管理關于視頻數據發送目標用戶終端的信息。用戶管理單元172持有管理信息,該信息表明關于要向其發送數據的用戶終端的識別信息,和關于要發送到每個用戶終端的數據的類型和識別信息(在隨選視頻數據的情況下)。用戶管理單元172根據通過請求接收單元171從用戶發來的請求的內容更新管理信息。此外,用戶管理單元172將每個接收到的隨選視頻數據發送請求的內容輸出到視頻請求單元173。
視頻請求單元173在接收到來自用戶管理單元172的關于隨選視頻數據的發送請求后,指示內容選擇裝置15讀取隨選視頻數據。
視頻接收單元174從內容選擇裝置15接收各種視頻數據,并將該視頻數據發送到視頻發送單元175。注意,從內容選擇裝置15發送的視頻數據的隨選視頻數據和替換I幀數據上已經附加了包括在請求中的與發送請求的用戶終端有關的信息。
在用戶管理單元172保持的管理信息之后,視頻發送單元175將從視頻接收單元174發送的各種視頻數據發送到用戶終端18。當隨選視頻數據和替換I幀數據的發送完成后,視頻發送單元175將發送目標用戶終端識別信息發送到用戶管理單元172,用戶管理單元172將該用戶終端的管理信息從表示“隨選視頻發送”更新為“廣播視頻發送”。
<內容選擇裝置15>
內容選擇裝置15包括發送/接收單元151、內容判斷單元152、替換I幀緩沖器153、幀判斷單元154、和隨選數據讀取單元155。
發送/接收單元151從分布服務器17接收關于隨選視頻數據的信息,并將請求的內容(視頻數據識別信息和發出請求的用戶終端識別信息)輸出到內容判斷單元152。此外,發送/接收單元151還向分布服務器17發送通過內容判斷單元152輸出的各種視頻數據。
隨選視頻數據讀取單元155從隨選內容服務器16讀取隨選視頻數據,并輸出讀取的隨選視頻數據到內容判斷單元152。此外,當輸出最后一幀隨選視頻數據時,隨選視頻數據讀取單元155加上表示該幀是最后一幀的信息。
幀判斷單元154從編碼器14接收廣播視頻數據,并輸出接收到的廣播視頻數據到內容判斷單元152。此處,幀判斷單元154分析構成視頻數據的每段幀數據的屬性,以獲得幀類型(I、P、或B)和幀序列號(表示該幀在整個視頻數據中的位置或該幀在其所屬的GOP中的位置),并將該信息與對應段幀數據一起輸出到內容判斷單元152。該信息用于判斷是否有必要輸出替換I幀數據(該判斷在后面說明),并用來指定要輸出的替換I幀。注意,可以使幀判斷單元154自己計算幀序列號。
替換I幀緩沖器153保持由編碼器14輸出的相當于幾幀的替換I幀數據。此外,替換I幀緩沖器153具有一個計數器,計算替換I幀數據的序列號,并將該序列號附加在每段數據上(使用一種方法,對應于由幀判斷單元154獲得的序列號)。從內容判斷單元152接收到一個替換I幀數據輸出請求后,替換I幀緩沖器153輸出對應于該請求上附加的序列號的替換I幀數據。注意,當替換I幀緩沖器153中的替換I幀數據的段數超出預定值時,替換I幀緩沖器153刪除最早的替換I幀數據段。
內容判斷單元152獲得廣播視頻數據、隨選視頻數據、和替換I幀數據,輸出該數據到發送/接收單元151,從而使該數據發送到分布服務器17。下面參考
在隨選視頻數據發送期間和當隨選視頻數據的發送完成后,恢復廣播視頻數據時,內容判斷單元152的處理。
圖6是表示內容服務器152的處理流程的流程圖。
當發送隨選視頻數據時,內容判斷單元152從隨選數據讀取單元155接收到請求的隨選視頻數據后,將接收的隨選視頻數據與廣播視頻數據并行輸出到分布服務器17(S501)。
從隨選數據讀取單元155接收到最后一幀隨選視頻數據后(S502是),內容判斷單元152獲得關于在最后一幀隨選視頻數據后要發送的預定數量的廣播視頻數據幀的序列號、屬性信息等(S503),并根據獲得的信息判斷是否用替換I幀數據替換廣播視頻數據幀。編碼廣播視頻數據時的幀結構決定該判斷要執行相當于多少個幀的數據。如圖3所示,由當前的系統1采用的廣播視頻數據結構中,I或P幀每3幀出現一次,所以內容判斷單元152判斷3幀的替換必要性。可選地,內容判斷單元152判斷所有的幀,直到下一個I幀出現(下一個GOP的開始)。如果幀結構(參考關系)不規則,內容判斷單元152可以重復判斷,直到下一個GOP中的I幀出現。
如果被判斷的幀的類型是“I”(S504是),則不必用替換I幀數據代替該幀,因為該幀和隨后的幀可以由用戶終端18正確解碼。因此,內容判斷單元152通知分布服務器17不必替換,并使分布服務器17向用戶終端18發送廣播視頻數據(S508)。然后,內容判斷單元152停止判斷用替換I幀代替幀的必要性。
當被判斷的幀是P或B幀時(S504否),內容判斷單元152檢查該幀的參考幀是否已經發送給用戶終端18(在B幀的情況下,兩個參考幀的第一個)(S505)。具體地,內容判斷單元152比較該幀的序列號與對應于隨選視頻數據最后一幀的廣播視頻數據的序列號,如果前者大于后者,則意味著參考幀已經到達用戶終端18。如果參考幀已經被用戶終端18接收到(S505是),則可以解碼廣播視頻數據幀,因此,內容判斷單元152指示分布服務器17向用戶終端18發送數據幀,而不用替換I幀數據代替該數據幀(S507)。
注意,參考幀序列號可以從正被判斷的幀的序列號和廣播視頻數據的幀結構找到。在當前的具有圖3所示幀結構的廣播視頻數據的例子中,P幀的參考幀是I或P幀,其序列號是P幀自己的序列號之前3幀。序列號為3的倍數的B幀的參考幀(圖3中的幀233)是序列號為減2的I或P幀(圖3中的幀221)和序列號為加1的P幀(圖3中為幀224)。對于序列號為“3的倍數減1”的B幀,參考幀是序列號減1的I或P幀(圖3中的幀221)和序列號為加2的P幀(圖3中的幀224)。
當參考幀沒有被發送時(S505否),廣播視頻數據將不能被用戶終端18解碼,所以內容判斷單元152從替換I幀緩沖器153讀取對應的替換I幀數據(具有相同的序列號),并發送讀取的替換I幀數據到服務器17,并使服務器17發送該替換I幀數據到用戶終端18(S506)。注意,因為向用戶終端18發送替換I幀數據的同時,必須向其它用戶終端發送廣播視頻數據,所以廣播數據與替換I幀數據并行從內容選擇裝置15發送到分布服務器17。
內容判斷單元152重復步驟S503-S507的處理,直到在恢復后對預定數目的幀執行了判斷,或直到下一個GOP的I幀數據出現(S509)。當圖6所示處理完成后,無條件發送經受檢查的幀后面的廣播視頻數據。
注意,在前述說明中,內容判斷單元152在假設廣播視頻數據和隨選視頻數據并行一次一幀輸出到分布服務器17的前提下,一次一幀判斷是否用替換I幀數據代替廣播視頻數據。但是,也可以在隨選視頻數據的發送開始時,根據諸如編碼時的幀結構和隨選視頻數據中幀的數量等信息,先判斷是否替換、替換的幀的數量以及序列號。具體地,在開始發送隨選視頻數據時,可以獲得對應于第一幀隨選視頻數據的廣播視頻數據幀的序列號,并通過將隨選視頻數據的幀數加在該獲得的序列號上來計算恢復發送后發送的幀的序列號。當實現將廣播視頻數據的幀結構確定為如圖3所示時,序列號為3n+1(n是大于等于0的整數)的幀如前所述為I幀或P幀(該幀是I幀還是P幀由GOP中的幀數確定),而序列號為其它的幀為B幀。因此,如果恢復發送時出現的幀的序列號已知,則很容易判斷廣播視頻數據的幀類型。
注意,如果可以用該方法預報要用替換I幀數據替換的幀的序列號,則可以只產生預計會被替換的幀的替換I幀數據(而不用向上面所述的產生全部幀的替換I幀數據)。則可以減輕產生替換I幀數據的處理負擔,在隨選視頻數據的發送請求不頻繁的系統中特別有效。
此外,也可以在恢復后立即無條件(不用判斷處理)替換n個幀(n是I或P幀出現的頻率)。這樣做省略了判斷是否替換的負擔。如圖3所示,本實施例中的廣播視頻數據的幀結構中,I或P幀每3幀出現一次(I或P幀的出現頻率=3),每個P幀的參考幀是緊接前面的I或P幀,而每個B幀的參考幀是在前和在后的I或P幀。換句話說,不管恢復之后緊接著的廣播視頻數據幀的類型如何,如果最多3個幀(=I或P幀出現的頻率)被替換為替換I幀,則隨后的幀一定可以被解碼。
此外,如果不考慮I或P幀出現的頻率,恢復之后的所有幀都用替換I幀數據替換,直到P幀出現,則可以減輕判斷處理負擔,因為是否替換的判斷只需要檢查幀類型。換句話說,如果緊接著恢復之后的幀是P幀,則只有該P幀用替換I幀替換。如果緊接著恢復之后的幀是B幀,該B幀和隨后的幀用替換I幀替換,直到下一個P幀。
<用戶終端18>
用戶終端18從分布服務器17接收各種視頻數據,并解碼和顯示接收的數據。用戶終端18包括接收用戶請求的請求接收單元181、向分布服務器17發送請求的請求發送單元182、接收分布服務器17響應請求發送的視頻數據的視頻接收單元183、解碼視頻數據的解碼器184、和顯示解碼結果的視頻的視頻顯示單元185。
<視頻數據發送/接收處理的流程>
下面說明本發明的視頻數據發送/接收系統1中的視頻數據發送/接收處理中,所述主要組成元件之間各種數據的交換和每個組件的處理流程。
圖7是表示當用戶終端18中斷接收廣播視頻數據以接收隨選視頻數據,然后恢復接收廣播視頻數據時,本實施例的視頻數據發送/接收系統1中的特定用戶終端18、分布服務器17、和內容選擇裝置15之間數據交換和處理流程的時序圖。
首先,當正在接收廣播視頻數據的用戶終端18向分布服務器17發送一個隨選視頻數據發送請求時,處理開始(S601)。注意,此處盡管未示出,但分布服務器17也向其它用戶終端發送廣播視頻數據。
分布服務器17進一步發送請求到內容選擇裝置15。
內容選擇裝置15通過分布服務器17接收到請求后,從隨選視頻服務器16讀取對應于該請求的隨選視頻數據,并把讀取的隨選視頻數據發送到分布服務器17。分布服務器17中斷向用戶終端18發送廣播視頻數據,并向用戶終端18發送隨選視頻數據(S602)。注意,此處分布服務器17繼續向其它用戶終端發送廣播視頻數據。檢測到隨選視頻數據結束后(S603),內容選擇裝置15檢查當前正被發送到其它用戶終端的廣播視頻數據中,在隨選視頻數據的發送完成后立即要發送到用戶終端18的幾幀廣播視頻數據的屬性和參考幀,并判斷是否有必要發送替換I幀數據(S604)。當幀類型是P或B時,該幀的參考幀與隨選視頻數據重疊,因此沒有被用戶終端18接收到,內容選擇裝置15從保持的替換I幀中選擇對應于該幀的替換I幀數據,并將選擇的替換I幀發送到分布服務器17。分布服務器17在發送最后一幀隨選視頻數據后,立即發送該替換I幀到用戶終端18(S605)。
用戶終端18解碼和顯示該替換I幀數據(S606)。
發送替換I幀后(或不必發送替換I幀時),分布服務器17恢復向用戶終端18發送廣播視頻數據(S607)。用戶終端18開始解碼恢復后立即發送的廣播視頻數據,使用該解碼的替換I幀數據作為參考幀數據(S608)。
<結論>
如上所述,在本實施例的視頻數據發送/接收系統1中,當隨選視頻數據的發送中斷了從發送端裝置向用戶終端發送廣播視頻數據時,發送端裝置在隨選視頻數據的發送完成后,恢復廣播視頻數據的發送前,向用戶終端發送替換I幀數據。用戶終端首先解碼該替換I幀數據,顯示所得的視頻數據,然后使用解碼的替換I幀作為參考幀來解碼恢復后立即出現的幾幀廣播視頻數據,并顯示解碼的廣播視頻數據。
相應地,用戶終端能夠在隨選視頻數據結束后,立即正確解碼和顯示廣播視頻數據。
注意,盡管在本實施例中,描述了內容選擇裝置15和分布服務器17為分開的,但本發明也可以實現為該兩個裝置被合成為一個裝置。
此外,本發明不限于使用具有本實施例中描述的和圖3中所示的結構和參考規則的編碼數據的例子,其中I或P幀的出現頻率為3,P幀的參考幀是緊接著前面的I或P幀,而B幀的參考幀是在前和在后的I或P幀。本發明的效果可以獲得,而與結構和參考規則無關,只要可以判斷發送恢復時是否替換幀,只要每幀廣播視頻數據的參考幀可以指定。
此外,盡管本實施例的編碼器14是一種具有兩電路DCT-量化處理結構的特殊編碼器,其中一個電路執行常規處理(幀內編碼和幀間編碼的混合),而另一電路只執行幀間處理,但該系統的結構也可以具有兩個常規編碼器,一個產生替換I幀數據,另一個產生廣播視頻數據。這樣做增加了結構的大小,因為要求兩個編碼器,但可以使本發明只用常規編碼器實現。
此外,數據不限于按照上述方法產生,其中本實施例的編碼器劃分為第一和第二電路,它們具有各自的DCT單元和量化單元,并通過分別產生替換I幀數據和廣播視頻數據來分擔數據的產生。例如,由第一電路產生的替換I幀數據的一部分也可以用作廣播視頻數據,而第二電路只產生P和B幀數據。即,GOP的頂部幀由第一電路進行幀內編碼,不用第二電路處理,從第一電路幀內編碼的數據輸出到內容選擇裝置,不僅作為該幀的替換I幀數據,還作為廣播視頻數據的一部分。此外,該幀內編碼的數據還輸出到一個逆量化單元,用作隨后的幀的參考幀。其它幀被相應的電路以與本實施例相同的方式編碼。在該情況下,為了從第一電路輸出編碼數據作為廣播視頻數據,要求對I幀進行SW中的新的處理。該方法減輕了處理負擔,因為省去了分別在兩個電路中對GOP的頂部幀進行雙重幀內編碼的處理。
下面是一個數據發送方法的例子,其可以用來代替簡單地通過互聯網從分布服務器向用戶終端發送數據,如本實施例中所示。
圖8A和8B示出視頻數據發送系統的例子,其中視頻數據從路由器17通過路由器發送到用戶終端18(其共同表示端子718a、718b、718c、和718d)。此處,路由器701-703是多點傳送器。
圖8A示出廣播數據(由黑色箭頭表示)正從分布服務器717發送到用戶終端718的狀態。圖8B示出的狀態中,終端718a請求發送隨選數據,隨選數據響應該請求正從分布服務器17發送到用戶終端718a。隨選數據的發送完成后,替換I幀數據(由白箭頭表示)通過與隨選視頻數據相同的路徑發送到用戶終端718a,然后廣播視頻數據再次如8B所示發送到用戶終端718a。
注意,在本系統中,關于替換I幀數據發送的由內容選擇裝置15、分布服務器17等執行的處理與本實施例中的系統1中的處理相同。
此外,本實施例是一個視頻數據發送、接收系統,其中隨選視頻數據的發送中斷廣播視頻數據的發送,但本發明的系統結構和系統中的視頻數據的類型不限于本實施例所示的。本發明可以應用于一種系統,這種系統中利用幀間運動位移補償預報壓縮的主要視頻數據從發送端裝置發送到接收端裝置,并且在這種系統中,存在接收端裝置接收主要圖像數據的過程被中斷的情況。但是,本發明不是用于簡單的中斷接收,而是應用于保留在接收端裝置的解碼單元中的參考幀由于中斷接收而不再對應于恢復發送后立即發送的主要視頻數據幀的內容。
該中斷可能發生在如本實施例中所述用其它數據替換主要視頻數據的替換部分時,或可能由于另一種模式,如,其它被發送的數據插入主要視頻數據中,或主要視頻數據的一部分(具體地是I幀)由于通訊故障而沒有接收到。
此外,當中斷發生在圖像數據按照一個時間表作為廣播數據發送的一個系統中時,廣播數據的發送不是從中斷發生的位置恢復,而是跳過對應于中斷長度的幀。在該情況下,即使接收端裝置在中斷過程中不解碼其它數據,參考幀的內容和主要視頻數據在恢復時也將不對應。此處,中斷的原因可能是通訊故障,和發送/接收其它數據(如,字符數據或靜止圖像數據),而不是視頻數據。
此外,本實施例的系統描述為其中隨選視頻數據響應用戶終端的請求而從分布服務器發送到用戶終端,從而中斷廣播視頻數據。但是,該系統也可以是一種視頻數據發送/接收系統,其中發送端是從屬的,其它視頻數據插入廣播視頻數據中。
圖9所示系統是視頻數據發送/接收系統8,其中發送端是從屬的,其它視頻數據插入廣播視頻數據中。在向用戶終端18發送廣播視頻數據的過程中,分布服務器817適當地向單個用戶終端18發送其它視頻數據(如,商業圖像數據,以適應個別用戶地興趣和偏好)。為此,系統8包括一個分布內容選擇裝置801,選擇適合單個用戶偏好的商業視頻數據。分布內容選擇裝置801借助于調查表等通過互聯網N從用戶終端獲得關于該用戶的興趣和品味的信息(如,用戶的年齡和性別,以及他/她感興趣的產品)。該信息用作選取商業視頻數據的基礎。
分布內容選擇裝置801可以根據作為廣播發送的付費觀看廣播視頻數據的提供者與發起者之間的契約向內容選擇裝置815輸出商業視頻數據,并請求內容選擇裝置815向用戶終端發送該商業數據。作為響應,內容選擇裝置815商業發送目標的用戶終端輸出該商業視頻數據,并使用戶終端18接收該商業視頻數據。然后,當檢測到商業視頻數據的結束時,內容選擇裝置815執行第一實施例中所示的處理,使必要的替換I幀數據被發送到用戶終端18,并使廣播視頻數據的發送恢復。
這樣,本實施例的系統1的效果可以在廣播視頻數據的發送的中斷和恢復是利用發送端裝置的主動性執行的系統中獲得。注意,由發送端裝置發送的視頻數據不限于商業視頻數據,而可以是任意視頻內容。
<修改舉例>
上述實施例中的系統1使得當發生由隨選視頻數據大發送引起的廣播視頻的發送中斷/恢復時,廣播視頻數據能夠被正確解碼。相反,下面的修改例子解決能夠接收多種廣播視頻數據的用戶終端中產生的問題。該問題是,當從一種廣播視頻數據切換為另一種時,根據切換后立即接收的廣播視頻數據的幀類型,用戶終端在切換后直到下一個GOP之前可能不能正確解碼廣播視頻數據。
下面說明本修改例子的系統。該系統結構與上述實施例的系統有很多相同,因此,下面的說明集中在不同點上。
在圖10的系統9中,多種廣播視頻數據從多個廣播視頻數據提供裝置91a和91b(每個裝置包括一個攝像機和/或內容服務器、切換器、和編碼器以及內容選擇裝置)提供給向用戶終端發送視頻數據的分布服務器917。該兩個提供裝置按照預定時間表分別提供不同的廣播視頻數據到分布服務器917。分布服務器917響應用戶終端的請求將一種廣播數據發送該該用戶終端。換句話說,廣播視頻數據提供裝置各自對應于一個不同頻道,用戶在兩種廣播視頻數據之間切換,就像切換頻道一樣。當切換頻道(廣播視頻數據類型)時,在開始發送切換后的廣播時,先將替換I幀數據發送到用戶終端。這意味著在切換后廣播視頻數據可以立即正確播放和顯示。
<結構>
系統9中,切換廣播視頻數據時關于替換I幀數據發送的處理由分布服務器917和第一和第二視頻數據提供裝置91a和91b中的內容選擇裝置915a和915b執行。下面描述這些組件的處理,省略與系統1相同的處理。
分布服務器917從第一和第二視頻數據提供裝置91a和91b接收廣播視頻數據,并將相應的廣播視頻數據發送到期望接收該種廣播視頻數據的用戶終端。分布服務器917從接收由第一視頻數據提供裝置91a提供的視頻數據的用戶終端918接收廣播視頻數據切換請求,并通知將要在切換后提供廣播視頻數據的第二視頻數據提供裝置91b的內容選擇裝置915b。如果內容選擇裝置915b輸出替換I幀,則分布服務器917在停止向用戶終端918發送第一視頻數據后,向用戶終端918發送替換I幀數據,然后開始向該用戶終端918發送第二視頻數據。另一方面,如果從內容選擇裝置915b接收到不必要替換I幀數據的通知,則分布服務器917停止向用戶終端918發送第一視頻數據,而開始向其發送第二廣播視頻數據。
接收到切換請求后,內容選擇裝置915檢測當在該點切換時,緊接著切換后將由用戶終端918接收的幀。檢測到該幀之后的處理與系統1中相同。具體地,內容選擇裝置915b判斷是否有必要用替換I幀數據替換檢測到的幀和其后的若干幀,如果有必要,就從I幀緩沖器讀取該替換I幀數據,并輸出這些幀和幀序列號到分布服務器917。當不必要用替換I幀數據替換檢測到的幀時,內容選擇裝置915b向分布服務器917發送該結果的通知。在該情況下,內容選擇裝置915b向分布服務器917發送幀序列號,并使該分布服務器向用戶終端發送從對應于該序列號的幀開始的第二廣播數據。此外,分布服務器917使用與內容選擇裝置915a和915b相同的方式跟蹤幀序列號。
<處理流程>
下面利用表示主要組成元件之間的控制轉換和數據流動的參考附圖,描述本視頻數據發送/接收系統9中,廣播視頻數據發送切換處理的流程。
圖11是表示廣播視頻數據發送切換處理中,兩個廣播視頻數據提供裝置91a和91b、分布服務器917、和用戶終端918之間的控制轉換和數據流動的時序圖。該時序圖示出被發送/接收的視頻數據從第一廣播視頻數據切換到第二廣播視頻數據的情況。
首先,在用戶終端918通過分布服務器917從第一提供裝置915a接收第一廣播視頻數據的過程中(S1001),用戶終端918接收到用戶指令后,向分布服務器917發送切換到第二廣播視頻的請求(S1002)。
響應該切換請求,分布服務器917通知提供第二廣播視頻數據的第二視頻數據提供裝置91b有一個切換請求。作為響應,第二廣播視頻數據提供裝置91b判斷是否有必要用替換I幀數據替換用戶終端918在切換后將立即接收的幀(S1003),當判斷出有必要替換時,向分布服務器917發送替換I幀數據(S1004)。分布服務器917停止向用戶終端918發送第一廣播視頻數據,并向用戶終端918發送接收到的替換I幀數據。用戶終端918接收、解碼并顯示該替換I幀數據(S1005)。然后,分布服務器917從不需要用替換I幀數據替換的部分開始向用戶終端918發送第二廣播視頻數據。用戶終端918利用在不受S1005解碼的替換I幀數據開始解碼第二廣播視頻數據(S1006)。
這樣,在系統9中,多個視頻數據提供裝置91a和91b連接到服務器917,提供不同的廣播視頻數據。當有來自用戶終端918的視頻數據切換請求時,替換I幀數據提供到用戶終端918,用于切換后立即出現的一幀視頻數據。這樣使得用戶終端能夠在切換廣播制品數據后不必中斷解碼和顯示視頻數據。
注意,接收隨選視頻數據的結構不包括在圖10所示的修改例子中,但通過組合圖2所示實施例的系統和本修改例子,可以實現一種系統,其中或者在隨選視頻數據的發送/接收之后,或者當切換視頻數據時,發送/接收替換I幀數據。
<修改舉例2>
一種可能的服務是其中在發送特定隨選數據(第一隨選數據)的過程中,另一隨選數據(第二隨選數據)的發送中斷第一隨選數據的發送,然后第一隨選數據的發送恢復。在該情況下,緊接著從第二隨選數據切換到第一隨選數據后會發生與上述實施例中相同的問題。本修改是解決該問題的一種系統。
圖12示出本修改中的視頻數據發送/接收中的內容選擇裝置15A。本修改的特征組成元件是內容選擇裝置15A中的隨選數據讀取單元155A。除了切換輸出到特定終端的隨選視頻數據外,該隨選數據讀取單元155A還在切換回第一隨選視頻數據之前和從第二隨選視頻數據切換之后,輸出替換I幀數據。
可以事先產生全部隨選數據的替換I幀數據,并在隨選內容服務器16中存儲該替換I幀數據,但這對于大量數據來說不切實際。此處,該問題是通過在恢復輸出第一隨選數據前,從恢復后將立即輸出的第一隨選數據產生若干個替換I幀數據,并輸出產生的替換I幀數據來解決的。
實現此的隨選數據讀取單元155A中的結構是切換單元1551、輔助解碼器1552、和輔助編碼器1553。因為隨選數據讀取單元155A執行與隨選數據讀取單元155相同的操作,在此省略其說明。
切換單元1551根據切換點的幀序列號和第二隨選數據中的幀總數判斷發送恢復后立即要發送的第一隨選數據的幀的序列號和幀類型。根據幀類型,切換單元1551判斷是否有必要產生替換I幀數據(對于I幀不需要,而對于其它幀類型則有必要)。如果有必要產生,則切換單元1551找出要用替換I幀數據替換的幀的數目,向輔助解碼器1552發送關于第一隨選數據的信息,指示該輔助解碼器執行解碼處理。此處,關于隨選數據的信息包括識別信息、恢復發送后立即出現的幀的序列號、和上述幀的數目。判斷是否有必要用替換I幀數據替換的程序與上述實施例中的內容判斷單元152所執行的相同。
切換單元1551輸出替換I幀數據,代替發送恢復后緊接著的第一隨選數據幀,該替換I幀數據是輔助解碼器1552和輔助編碼器1553響應上述指令進行處理所獲得的。
從切換單元1551接收到指令后,輔助解碼器1552根據幀序列號信息判斷解碼第一隨選數據中的哪個GOP(包括恢復發送后緊接著出現的幀的GOP),并從隨選內容服務器16中只讀取該GOP(此時參考識別信息)。進行該判斷的一種方式是用一個GOP中的幀的數目去除幀序列號值,并舍入到最接近的整數來得出商。如果該商為n,輔助解碼器1552得出從第一隨選視頻數據頂部起第n個GOP。
此外,輔助解碼器1552解碼并讀取從頂部幀到恢復后要發送的幀的GOP,將序列號附加在解碼的幀上,并將其輸出到輔助編碼器1553。輔助解碼器1552還指示輔助編碼器1553從這些幀產生替換I幀。
輔助編碼器1553對從輔助解碼器1552接收的全部3個幀執行幀內編碼,并將帶有相應幀序列號的結果輸出到切換單元1551。
<附加陳述>
注意,盡管在上述實施例和修改例子中給出互聯網作為當由編碼器編碼的視頻數據通過ISP(互聯網服務提供者)或類似的分布服務器傳播時所使用的通訊路徑的例子,但用于本發明的發送/接收路徑不限于此,也可以使用其它通訊路徑,如廣播波或CATV。例如,主要廣播節目數據可以通過廣播波發送/接收,可選的隨選數據通過通訊線如互聯網發送/接收。
此外,盡管在上述實施例和修改例子中本發明是視頻數據發送/接收系統,但本發明也可以通過在計算機中執行一段程序而實現。在該情況下,程序可以記錄在記錄介質上。
此外,盡管在上述實施例和修改例子中,壓縮視頻數據的規范為MPEG-4,但對于使用幀間編碼和運動位移補償幀間預報編碼的所有類型數據,本發明的優點都可以實現。例如,本發明可以用于使用另一種壓縮方法如MPEG-2壓縮的視頻數據。
此外,盡管在上述實施例和修改例子中隨選視頻數據被描述為一直發送完畢,也可以有隨選數據的發送被用戶的請求在半中間中斷的情形。本發明可以處理這種情形。具體地,當檢測到隨選數據的終點時執行處理可以替換為當接收端裝置發出請求在半中間停止隨選數據時執行。
盡管以上通過舉例,參考附圖對本發明進行了全面的說明,但應當注意,對于本領域的技術人員來說,各種變化也是顯然的。因此,除非這樣的變化不在本發明的范圍內,它們應當被認為包括在其中。
權利要求
1.一種視頻數據發送/接收系統,包括一個發送端裝置和多個接收終端,發送端裝置發送用運動位移補償幀間預報壓縮的視頻數據,接收終端接收視頻數據并解碼接收到的數據,其中發送端裝置包括第一編碼單元,其可以操作對多幀運動圖像數據的每一幀應用幀內編碼處理或幀間編碼處理,以產生所述視頻數據;第二編碼單元,其可以操作,與第一編碼單元的編碼處理并行對一幀運動圖像數據應用幀內編碼處理,以產生替換的I幀數據;和一個發送單元,向所述多個接收終端發送所述視頻數據和替換I幀數據;其中在臨時中斷向一個接收終端發送視頻數據后,當發送單元要恢復向該接收終端發送視頻數據時,發送單元在恢復發送視頻數據前,向該接收終端發送至少相當于一幀的替換I幀數據,并且當發送單元要恢復臨時中斷的視頻數據發送時,接收終端接收所發送的替換I幀數據,并解碼接收到的I幀數據,將該解碼的替換I幀數據作為參考幀數據解碼恢復發送后接收的視頻數據。
2.一種向多個接收終端發送利用運動位移補償幀間預報壓縮的視頻數據的視頻數據發送裝置,包括第一編碼單元,其可以操作對多幀運動圖像數據的每一幀應用幀內編碼處理或幀間編碼處理,以產生所述視頻數據;第二編碼單元,其可以操作,與第一編碼單元的編碼處理并行對一幀運動圖像數據應用幀內編碼處理,以產生替換的I幀數據;和發送單元,可以向多個接收終端發送視頻數據和替換I幀數據,且當臨時中斷向一個接收終端發送視頻數據后,發送單元要恢復向該接收終端發送視頻數據時,發送單元在恢復視頻數據的發送之前,向接收終端發送相當于至少一幀的替換I幀數據。
3.根據權利要求2的視頻數據發送裝置,進一步包括任選數據發送單元,其可以與視頻數據的發送并行向接收終端發送任選視頻數據;其中,向接收終端發送視頻數據的中斷是由所述任選視頻數據的發送引起的。
4.根據權利要求3的視頻數據發送裝置,其中所述任選數據發送單元包括一個信息收集子單元,其可以從一個或多個接收終端中的每一個收集關于給接收終端用戶的偏好的信息,和根據收集的信息,選擇要發送的任選數據的內容。
5.根據權利要求3的視頻數據發送裝置,其中所述發送單元包括廣播發送子單元,其可以向多個發送目標廣播同一數據;個別發送子單元,其可以向個別發送目標發送個別數據;和利用廣播發送子單元發送視頻數據,利用個別發送子單元發送替換I幀數據;且任選數據發送單元按照個別發送方式發送任選視頻數據。
6.根據權利要求5的視頻數據發送裝置,其中所述發送單元包括切換子單元,其可以將正在向其發送替換I幀數據或任選視頻數據的接收終端從廣播發送子單元的視頻數據發送目標中除去。
7.根據權利要求3的視頻數據發送裝置,其中所述任選數據發送單元包括插入子單元,其可以在發送任選數據的中間發送二次任選數據;和第三編碼子單元,其可以在二次任選數據的發送結束后和任選數據的發送恢復前,產生對應于從發送恢復后的第一幀開始至少一幀任選數據的任選數據替換I幀數據;其中,當任選數據的發送在二次任選數據的發送結束后要恢復時,任選數據發送單元在任選數據的發送恢復前,向接收終端發送任選數據替換I幀數據。
8.根據權利要求2的視頻數據發送裝置,其中第一編碼單元和第二編碼單元實現為獨立的編碼器。
9.根據權利要求3的視頻數據發送裝置,其中發送單元根據視頻數據的GOP結構,特別是根據具有I屬性或P屬性的幀的出現頻率,確定在視頻數據的發送恢復前向接收終端發送多少幀替換I幀數據。
10.一種視頻數據發送裝置,用于向多個接收終端發送利用運動位移補償幀間預報壓縮的視頻數據,包括第一編碼單元,可以對一幀運動圖像數據應用幀內編碼處理,以產生幀內編碼的視頻數據;第二編碼單元,可以對一幀運動圖像數據應用幀間編碼處理,以產生幀間編碼的視頻數據;視頻數據發生單元,可以從所述幀內編碼的視頻數據和幀間編碼的視頻數據產生視頻數據;和發送單元,可以向多個接收裝置發送視頻數據;其中,當臨時中斷向一個接收終端發送視頻數據后,發送單元要恢復向該接收終端發送視頻數據時,發送單元在恢復視頻數據的發送之前,向接收終端發送相當于至少一幀幀內編碼的視頻數據作為替換I幀數據。
11.一種視頻數據發送/接收系統,包括多個視頻數據提供裝置、多個接收終端、和一個分布服務器,視頻數據提供裝置發送利用運動位移補償幀間預報壓縮的視頻數據,每個接收終端從任何一個視頻提供裝置接收視頻數據并解碼接收到的視頻數據,分布服務器在視頻數據提供裝置與接收終端之間傳遞視頻數據,其中每個視頻數據提供裝置包括第一編碼單元,其可以操作對多幀運動圖像數據的每一幀應用幀內編碼處理或幀間編碼處理,以產生所述視頻數據;第二編碼單元,其可以操作,與第一編碼單元的編碼處理并行對多幀運動圖像數據中的每一幀應用幀內編碼處理,以產生替換I幀數據;和分布服務器包括切換請求接收單元,可以從一個接收終端接收一個請求,將該接收終端接收的視頻數據切換為不同的視頻數據;和切換發送單元,可以在切換接收單元接收到請求時,停止正在向發送請求的用戶終端發送的視頻數據,從提供不同視頻數據的視頻數據提供裝置獲得替換I幀數據,發送獲得的替換I幀數據到該用戶終端,并發送不同的視頻數據到該用戶終端。
12.視頻數據發送/接收系統中的分布服務器,該視頻數據發送/接收系統進一步包括多個視頻數據提供裝置和多個接收終端,該視頻數據提供裝置發送利用運動位移補償幀間預報壓縮的視頻數據,每個接收終端從任何一個視頻提供裝置接收視頻數據并解碼接收到的視頻數據,分布服務器在視頻數據提供裝置與接收終端之間傳遞視頻數據,該分布服務器包括切換請求接收單元,可以從一個接收終端接收一個請求,將該接收終端接收的視頻數據切換為不同的視頻數據;和切換發送單元,可以在切換接收單元接收到請求時,停止正在向發送請求的用戶終端發送的視頻數據,從提供不同視頻數據的視頻數據提供裝置獲得替換I幀數據,發送獲得的替換I幀數據到該用戶終端,并發送不同的視頻數據到該用戶終端。
13.視頻數據發送/接收系統中的視頻數據提供裝置,該視頻數據發送/接收系統包括多個視頻數據提供裝置、多個接收終端,和一個分布服務器,該視頻數據提供裝置發送利用運動位移補償幀間預報壓縮的視頻數據,每個接收終端從任何一個視頻提供裝置接收視頻數據并解碼接收到的視頻數據,分布服務器在視頻數據提供裝置與接收終端之間傳遞視頻數據,該視頻數據提供裝置包括第一編碼單元,其可以操作對多幀運動圖像數據的每一幀應用幀內編碼處理或幀間編碼處理,以產生所述視頻數據;第二編碼單元,其可以操作,與第一編碼單元的編碼處理并行對多幀運動圖像數據中的每一幀應用幀內編碼處理,以產生替換I幀數據;和發送單元,其可以操作向分布服務器發送視頻數據,和當一個接收終端請求將正在接收的視頻數據切換為發送單元正在發送的視頻數據時,在切換之前,通過分布服務器向該接收終端發送至少一幀替換I幀數據。
14.一種編碼器,利用運動位移補償幀間預報壓縮運動圖像數據,包括第一編碼單元,其可以操作對多幀運動圖像數據的每一幀應用幀內編碼處理或幀間編碼處理,以產生所述視頻數據;和第二編碼單元,其可以操作,與第一編碼單元的編碼處理并行對多幀運動圖像數據中的每一幀應用幀內編碼處理,以產生替換I幀數據。
15.一種編碼器,利用運動位移補償幀間預報壓縮運動圖像數據,包括第一編碼單元,可以對一幀運動圖像數據應用幀內編碼處理,以產生幀內編碼的視頻數據;第二編碼單元,可以對一幀運動圖像數據應用幀間編碼處理,以產生幀間編碼的視頻數據;編碼視頻數據發生單元,可以從所述幀內編碼的視頻數據和幀間編碼的視頻數據產生編碼視頻數據;和替換數據發生單元,可以從幀內編碼視頻數據產生替換I幀數據。
16.一種視頻數據發送/接收方法,用于一種視頻數據發送/接收系統中的發送端裝置和多個接收終端中的一個,在該系統中,發送端裝置發送用運動位移補償幀間預報壓縮的視頻數據,多個接收終端接收視頻數據并解碼接收到的數據,該方法包括第一編碼步驟,在所述發送端裝置中,對多幀運動圖像數據的每一幀應用幀內編碼處理或幀間編碼處理,以產生所述視頻數據;第二編碼步驟,在所述發送端裝置中,與第一編碼步驟并行對多幀運動圖像數據中的每一幀應用幀內編碼處理,以產生替換I幀數據;視頻數據發送步驟,在所述發送端裝置中,向接收端裝置發送視頻數據;發送中斷步驟,在所述發送端裝置中,中斷向接收端裝置發送視頻數據;替換數據發送步驟,在所述發送端裝置中,向接收終端發送相當于至少一幀的替換I幀數據;替換數據解碼步驟,在所述接收端裝置中,解碼替換I幀數據;視頻數據再發送步驟,在所述發送端裝置中,恢復向接收端裝置發送視頻數據;和視頻數據解碼步驟,在所述接收終端中,解碼恢復發送后接收到的視頻數據,利用執行替換數據解碼步驟所得到的數據作為參考幀數據。
17.在計算機中執行的程序,用于實現一種方法,該方法用于視頻數據發送/接收系統中的發送端裝置,該視頻數據發送/接收系統中,發送端裝置發送用運動位移補償幀間預報壓縮的視頻數據,多個接收終端接收視頻數據并解碼接收到的數據,該方法包括第一編碼步驟,對多幀運動圖像數據的每一幀應用幀內編碼處理或幀間編碼處理,以產生所述視頻數據;第二編碼步驟,與第一編碼步驟并行對多幀運動圖像數據中的每一幀應用幀內編碼處理,以產生替換I幀數據;視頻數據發送步驟,向接收端裝置發送視頻數據;發送中斷步驟,中斷向接收端裝置發送視頻數據;替換數據發送步驟,向接收終端發送相當于至少一幀的替換I幀數據;和視頻數據再發送步驟,恢復向接收端裝置發送視頻數據。
全文摘要
當隨選視頻數據的發送中斷廣播視頻數據從分布服務器17向用戶終端18的發送時,分布服務器17在隨選視頻數據發送完成之后和恢復廣播視頻數據的發送之前,向終端18發送替換I幀數據。用戶終端18解碼和顯示替換I幀數據,然后利用解碼的替換I幀數據作為參考幀來解碼和顯示在恢復發送后立即接收到的頭幾幀廣播視頻數據。
文檔編號H04N7/173GK1476248SQ0317863
公開日2004年2月18日 申請日期2003年7月17日 優先權日2002年7月17日
發明者倉內伸和 申請人:松下電器產業株式會社