TW201703541A - 用於廣播之發信快取區段 - Google Patents
用於廣播之發信快取區段 Download PDFInfo
- Publication number
- TW201703541A TW201703541A TW105119225A TW105119225A TW201703541A TW 201703541 A TW201703541 A TW 201703541A TW 105119225 A TW105119225 A TW 105119225A TW 105119225 A TW105119225 A TW 105119225A TW 201703541 A TW201703541 A TW 201703541A
- Authority
- TW
- Taiwan
- Prior art keywords
- media
- unit
- data
- request
- broadcast service
- Prior art date
Links
- 230000011664 signaling Effects 0.000 title description 2
- 230000003044 adaptive effect Effects 0.000 claims abstract description 4
- 239000000463 material Substances 0.000 claims description 173
- 238000000034 method Methods 0.000 claims description 85
- 230000004044 response Effects 0.000 claims description 38
- 238000012545 processing Methods 0.000 claims description 16
- 238000012546 transfer Methods 0.000 claims description 12
- 238000010586 diagram Methods 0.000 description 60
- 238000005538 encapsulation Methods 0.000 description 23
- 230000006978 adaptation Effects 0.000 description 20
- 239000012634 fragment Substances 0.000 description 14
- 238000002360 preparation method Methods 0.000 description 13
- 230000005540 biological transmission Effects 0.000 description 12
- 239000003795 chemical substances by application Substances 0.000 description 9
- 230000008859 change Effects 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 5
- 230000002123 temporal effect Effects 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 239000012092 media component Substances 0.000 description 4
- 101000995861 Arabidopsis thaliana Regulatory protein NPR1 Proteins 0.000 description 3
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 101100412093 Schizosaccharomyces pombe (strain 972 / ATCC 24843) rec16 gene Proteins 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000002716 delivery method Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- FMYKJLXRRQTBOR-UBFHEZILSA-N (2s)-2-acetamido-4-methyl-n-[4-methyl-1-oxo-1-[[(2s)-1-oxohexan-2-yl]amino]pentan-2-yl]pentanamide Chemical group CCCC[C@@H](C=O)NC(=O)C(CC(C)C)NC(=O)[C@H](CC(C)C)NC(C)=O FMYKJLXRRQTBOR-UBFHEZILSA-N 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000037406 food intake Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000001568 sexual effect Effects 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 238000001356 surgical procedure Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5681—Pre-fetching or pre-delivering data based on network characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/23439—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1069—Session establishment or de-establishment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/611—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
- H04N21/4331—Caching operations, e.g. of an advertisement for later insertion during playback
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/462—Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
- H04N21/4622—Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/61—Network physical structure; Signal processing
- H04N21/6106—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
- H04N21/6125—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/61—Network physical structure; Signal processing
- H04N21/6106—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
- H04N21/6131—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via a mobile phone network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/06—Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本發明揭示一種實例用戶端裝置,其包括一中間軟體單元,該中間軟體單元用於視一廣播服務是否可獲得而經由該廣播服務或一單播服務來接收媒體資料。該用戶端裝置亦包括一串流用戶端,諸如一動態自適應HTTP串流(DASH)用戶端。該DASH用戶端發送經由該中間軟體單元來擷取媒體資料之請求。該中間軟體單元可快取經由該廣播服務接收之媒體資料,以使得即使當該廣播服務不在作用中時,在該串流用戶端請求先前經由該廣播服務接收之媒體資料的情況下,該中間軟體單元可將該媒體資料自該快取記憶體提供至該串流用戶端,而非向來自該串流用戶端之該請求中所規定之一外部伺服器裝置請求該媒體資料。
Description
本申請案主張2015年6月18日申請之美國臨時申請案第62/181,684號及2015年6月23日申請之美國臨時申請案第62/183,615號的權利,該等美國臨時申請案中之每一者的全部內容特此以引用方式併入。
本發明係關於經編碼視訊資料之儲存及傳送。
數位視訊能力可併入至廣泛範圍的裝置中,包括數位電視、數位直播系統、無線廣播系統、個人數位助理(PDA)、膝上型或桌上型電腦、數位攝影機、數位記錄裝置、數位媒體播放器、視訊遊戲裝置、視訊遊戲控制台、蜂巢式或衛星無線電電話、視訊電話會議裝置及類似者。數位視訊裝置實施視訊壓縮技術,諸如由MPEG-2、MPEG-4、ITU-T H.263或ITU-T H.264/MPEG-4,第10部分,進階視訊寫碼(AVC)界定之標準及此等標準之擴展中所描述的彼等技術,以更有效地傳輸及接收數位視訊資訊。
視訊壓縮技術執行空間預測及/或時間預測以減少或移除視訊序列中所固有之冗餘。對於基於區塊之視訊寫碼,可將視訊圖框或圖塊分割成巨集區塊。可進一步分割每一巨集區塊。使用相對於相鄰巨集區塊之空間預測來編碼經框內寫碼(I)之圖框或圖塊中之巨集區塊。經
框間寫碼(P或B)圖框或圖框中之巨集區塊可使用相對於同一圖框或圖框中之相鄰巨集區塊的空間預測或相對於其他參考圖框的時間預測。
在視訊資料已編碼之後,可將視訊資料封包化以用於傳輸或儲存。可以將視訊資料組譯成符合多種標準中之任一者的視訊檔案,該等標準諸如國際標準化組織(ISO)基本媒體檔案格式及其擴展,諸如AVC。
可以多種傳送方法來遞送視訊且更一般而言資料。一種此方法為第三代合作夥伴計劃(3GPP)網路中之多媒體廣播/多播服務(MBMS)或增強型MBMS(eMBMS)。MBMS及eMBMS允許使用單一遞送管線將所關注之服務遞送至大量用戶。詳言之,伺服器裝置可使用例如3GPP(其可包括經由MBMS或eMBMS之廣播或多播遞送)將媒體資料傳輸至用戶端裝置。另外或替代地,伺服器裝置可使用單播(例如,根據超文字傳送協定(HTTP)或動態自適應HTTP串流(DASH))來傳輸媒體資料。
一般而言,本申請案係關於與廣播或多播媒體資料傳輸技術與單播媒體資料傳輸技術之間的切換相關之技術。詳言之,此切換可基於根據用戶端裝置之地理位置,廣播或多播服務是否可獲得而發生。亦即,用戶端裝置可定位於特定服務區中,該特定服務區可以或可不提供用於媒體資料傳輸之廣播或多播服務。當廣播或多播服務可獲得時,用戶端裝置可使用廣播或多播服務來接收媒體資料,而當廣播或多播服務不可獲得時,用戶端裝置可使用單播來接收媒體資料。
當例如經由廣播或多播來接收媒體資料時,用戶端裝置快取媒體資料以供目標應用程式(諸如DASH用戶端(例如,網頁瀏覽器外掛程式))隨後擷取。有時,用戶端裝置可自廣播或多播切換至單播,而仍然快取先前經由廣播或多播接收之媒體資料。因此,本發明之技術
包括判定此媒體資料在自廣播或多播切換至單播之後是否被快取,若經快取,則判定是否使用已快取之媒體資料,而非緊接著經由單播來擷取類似媒體資料。
在一個實例中,一種擷取媒體資料之方法係藉由一用戶端裝置之一中間軟體單元執行,其中該中間軟體單元控制該用戶端裝置之一超文字傳送協定(HTTP)代理單元,且其中該用戶端裝置包括一本機伺服器單元。該方法包括:經由一廣播服務來接收一媒體工作階段之媒體資料之一第一集合;在接收媒體資料之該第一集合之後,判定該廣播服務不再可獲得;基於該廣播服務不再可獲得之該判定,自藉由該用戶端裝置執行之一串流應用程式接收經由一單播服務來擷取該媒體工作階段之媒體資料之一第二集合的一請求,其中該請求規定在該用戶端裝置外部之一位址;及回應於該請求,當媒體資料之該第二集合先前係經由該廣播服務接收時,使該HTTP代理單元將該請求重定向至該本機伺服器單元而非定向至在該用戶端裝置外部之該位址,其中媒體資料之該第二集合先前係經由該廣播服務接收。
在另一實例中,一種用於擷取之裝置包括一超文字傳送協定(HTTP)代理單元、一本機伺服器單元及一中間軟體單元。該中間軟體單元控制該HTTP代理單元,且該中間軟體單元係藉由包含邏輯電路系統之一基於硬體之處理單元實施。該中間軟體單元經組態以:經由一廣播服務來接收一媒體工作階段之媒體資料之一第一集合;在接收媒體資料之該第一集合之後,判定該廣播服務不再可獲得;基於該廣播服務不再可獲得之該判定,自藉由該用戶端裝置執行之一串流應用程式接收經由一單播服務來擷取該媒體工作階段之媒體資料之一第二集合的一請求,其中該請求規定在該用戶端裝置外部之一位址;及回應於該請求,當媒體資料之該第二集合先前係經由該廣播服務接收時,使該HTTP代理單元將該請求重定向至該本機伺服器單元而非定
向至在該用戶端裝置外部之該位址,其中媒體資料之該第二集合先前係經由該廣播服務接收。
在另一實例中,一種用於擷取之裝置包括一超文字傳送協定(HTTP)代理單元及一本機伺服器單元。該裝置進一步包括:用於經由一廣播服務來接收一媒體工作階段之媒體資料之一第一集合的構件;用於在接收媒體資料之該第一集合之後,判定該廣播服務不再可獲得的構件;用於基於該廣播服務不再可獲得之該判定,自藉由該用戶端裝置執行之一串流應用程式接收經由一單播服務來擷取該媒體工作階段之媒體資料之一第二集合的一請求的構件,其中該請求規定在該用戶端裝置外部之一位址;及用於回應於該請求,當媒體資料之該第二集合先前係經由該廣播服務接收時,使該HTTP代理單元將該請求重定向至該本機伺服器單元而非定向至在該用戶端裝置外部之該位址的構件,其中媒體資料之該第二集合先前係經由該廣播服務接收。
在另一實例中,一種電腦可讀儲存媒體在其上儲存有指令,該等指令在執行時使包含一用戶端裝置之一中間軟體單元之一處理器進行以下操作,其中該中間軟體單元控制該用戶端裝置之一超文字傳送協定(HTTP)代理單元,且其中該用戶端裝置包括一本機伺服器單元:經由一廣播服務來接收一媒體工作階段之媒體資料之一第一集合;在接收媒體資料之該第一集合之後,判定該廣播服務不再可獲得;基於該廣播服務不再可獲得之該判定,自藉由該用戶端裝置執行之一串流應用程式接收經由一單播服務來擷取該媒體工作階段之媒體資料之一第二集合的一請求,其中該請求規定在該用戶端裝置外部之一位址;及回應於該請求,當媒體資料之該第二集合先前係經由該廣播服務接收時,使該HTTP代理單元將該請求重定向至該本機伺服器單元而非定向至在該用戶端裝置外部之該位址,其中媒體資料之該第二集合先前係經由該廣播服務接收。
在以下附圖及描述中闡述一或多個實例之細節。其他特徵、目標及優點自實施方式及圖式以及自申請專利範圍將顯而易見。
10‧‧‧用於經由網路來串流媒體資料之技術之實例系統
20‧‧‧內容準備裝置
22‧‧‧音訊源
24‧‧‧視訊源
26‧‧‧音訊編碼器
28‧‧‧視訊編碼器
30‧‧‧囊封單元
32‧‧‧輸出介面
40‧‧‧用戶端裝置
42‧‧‧音訊輸出
44‧‧‧視訊輸出
46‧‧‧音訊解碼器
48‧‧‧視訊解碼器
50‧‧‧解囊封單元
52‧‧‧擷取單元
54‧‧‧網路介面
60‧‧‧伺服器裝置
62‧‧‧儲存媒體
64‧‧‧多媒體內容
66‧‧‧資訊清單檔案
68A至68N‧‧‧表示
70‧‧‧請求處理單元
72‧‧‧網路介面
74‧‧‧網路
100‧‧‧eMBMS中間軟體單元
102‧‧‧本機伺服器單元
104‧‧‧快取記憶體
106‧‧‧eMBMS接收單元
108‧‧‧HTTP代理單元
110‧‧‧DASH用戶端
112‧‧‧媒體應用程式
120‧‧‧多媒體內容
122‧‧‧媒體呈現描述(MPD)
124A至124N‧‧‧表示
126‧‧‧標頭資料
128A‧‧‧區段
128B‧‧‧區段
128N‧‧‧區段
130‧‧‧標頭資料
132A‧‧‧區段
132B‧‧‧區段
132N‧‧‧區段
150‧‧‧實例視訊檔案
152‧‧‧檔案類型(FTYP)方塊
154‧‧‧電影(MOOV)方塊
156‧‧‧電影標頭(MVHD)方塊
158‧‧‧播放軌(TRAK)方塊
160‧‧‧電影延伸(MVEX)方塊
162‧‧‧區段索引(sidx)方塊
164‧‧‧電影片段(MOOF)方塊
166‧‧‧電影片段隨機存取(MFRA)方塊
180‧‧‧端對端架構
182‧‧‧使用者設備(UE)
184‧‧‧DASH用戶端
186‧‧‧HTTP代理
188‧‧‧eMBMS中間軟體單元
190‧‧‧無線電區域網路/演進封包核心(RAN/EPC)
192‧‧‧內容遞送網路(CDN)
194‧‧‧DASH編碼器
196‧‧‧廣播多播服務中心(BMSC)
198‧‧‧消耗報告單元
200‧‧‧FLUTE單元
202‧‧‧攝取介面
230‧‧‧系統
232‧‧‧DASH用戶端
234‧‧‧HTTP代理單元
236‧‧‧代理控制單元
238‧‧‧本機伺服器
240‧‧‧CDN邊緣伺服器
348‧‧‧元素
350‧‧‧元素
420‧‧‧系統
422‧‧‧eMBMS中間軟體單元
424‧‧‧eMBMS DANE
426‧‧‧本機伺服器
428‧‧‧DASH用戶端
430‧‧‧CDN邊緣伺服器
530‧‧‧屬性
532‧‧‧資料
564‧‧‧資料
596‧‧‧資料
SAI1‧‧‧服務區識別符
SAI2‧‧‧服務區識別符
SAI3‧‧‧服務區識別符
T1‧‧‧時間
T2‧‧‧時間
SN‧‧‧廣播區段
圖1為說明實施用於經由網路來串流媒體資料之技術之實例系統的方塊圖。
圖2為更詳細地說明圖1之擷取單元之組件之實例集合的方塊圖。
圖3為說明實例多媒體內容之元素的概念圖。
圖4為說明實例視訊檔案之元素的方塊圖,實例視訊檔案可對應於表示之區段。
圖5為說明(例如)無線電存取網路(RAN)之各種服務區的概念圖。
圖6為說明根據本發明之技術的用於MooD服務之端對端架構的概念圖。
圖7為說明根據本發明之技術之實例技術的概念圖,在該實例技術中,DASH HTTP請求被定向至HTTP代理。
圖8為說明每個媒體類型(例如,視訊及音訊)具有單一表示之實例媒體呈現描述(MPD)的概念圖。
圖9為說明用於在單播至廣播之切換期間組態HTTP代理單元以指導DASH用戶端之實例技術的概念圖。
圖10為說明用於在廣播至單播之切換期間組態HTTP代理單元以指導DASH用戶端之實例技術的概念圖。
圖11為說明根據本發明之技術的HTTP代理在廣播至單播之切換期間之實例組態的概念圖。
圖12為說明MPD包括多個表示之實例使用情況的概念圖。
圖13為說明根據關於圖12所描述之使用情況的實例技術的概念圖。
圖14為說明實例伺服器及網路輔助DASH(SAND)強制訊息的概念圖。
圖15為說明當(例如,自HTTP代理單元)接收HTTP 300回應時的DASH用戶端行為之實例的概念圖。
圖16為說明根據圖12之使用情況當在廣播至單播之切換期間組態HTTP代理單元以指導DASH用戶端時之實例技術的概念圖。
圖17為說明當接收SAND幫助時的DASH用戶端行為之實例的概念圖。
圖18為說明根據本發明的用於使用eMBMS DASH感知網路元件(DANE)之實例技術的概念圖。
圖19為說明根據本發明的用於使用eMBMS DASH感知網路元件(DANE)之實例技術的概念圖。
圖20為說明HTTP代理單元幫助DASH用戶端使用替代之本機區段的實例技術的概念圖。
圖21為說明根據本發明之一實例中的可包括於SAND訊息中之資料的概念圖。
圖22為說明根據本發明的可包括於SAND訊息中之資料之另一實例集的概念圖。
圖23為說明具有多個表示之實例MPD的概念圖。
圖24為說明根據圖23之使用情況用於在單播至廣播之切換期間組態HTTP代理單元以指導DASH用戶端之實例技術的概念圖。
圖25為說明根據圖23及圖24之使用情況在單播至廣播之切換期間之實例SAND訊息的概念圖。
圖26為說明根據圖23至圖25之使用情況用於在廣播至單播之切換期間組態HTTP代理以指導DASH用戶端之實例技術的概念圖。
圖27為說明根據本發明之技術的MPD之資料之實例集合的概念
圖。
圖28為針對圖27之使用情況說明可包括於SAND訊息中之資料之實例集合的概念圖。
圖29為說明用於使用DANE幫助DASH用戶端以使用替代之本機區段之實例技術的概念圖。
圖30為說明根據本發明之技術之實例方法的流程圖。
本發明之技術可應用於符合根據以下各者中之任一者囊封之視訊資料的視訊檔案:ISO基本媒體檔案格式、可縮放視訊寫碼(SVC)檔案格式、進階視訊寫碼(AVC)檔案格式、第三代合作夥伴計劃(3GPP)檔案格式及/或多視圖視訊寫碼(MVC)檔案格式或其他類似視訊檔案。
在HTTP串流中,經常使用之操作包括HEAD、GET及部分GET。HEAD操作擷取與給定的統一資源定位符(URL)或統一資源名稱(URN)相關聯之檔案的標頭,但不擷取與URL或URN相關聯之有效負載。GET操作擷取與給定URL或URN相關聯之整個檔案。部分GET操作接收位元組範圍作為輸入參數且擷取檔案之連續數目個位元組,其中位元組之數目對應於接收到的位元組範圍。因此,可提供電影片段以用於HTTP串流,此係因為部分GET操作能夠獲得一或多個單獨的電影片段。在電影片段中,能夠存在不同播放軌之若干播放軌片段。在HTTP串流中,媒體呈現可為用戶端可存取之資料之結構化集合。用戶端可請求且下載媒體資料資訊以向使用者呈現串流服務。
在使用HTTP串流來串流3GPP資料之實例中,可能存在多媒體內容之視訊及/或音訊資料的多個表示。如下文所解釋,不同表示可對應於不同寫碼特性(例如,視訊寫碼標準之不同設定檔或層級)、不同寫碼標準或寫碼標準之擴展(諸如多視圖及/或可縮放擴展)或不同位元
速率。此等表示之資訊清單可在媒體呈現描述(MPD)資料結構中定義。媒體呈現可對應於HTTP串流用戶端裝置可存取之資料之結構化集合。HTTP串流用戶端裝置可請求且下載媒體資料資訊以向用戶端裝置之使用者呈現串流服務。媒體呈現可在MPD資料結構中描述,MPD資料結構可包括MPD之更新。
媒體呈現可含有一或多個時段之序列。時段可由MPD中之Period元素來定義。每一時段可具有MPD中之屬性start。對於每一時段,MPD可包括start屬性及availableStartTime屬性。對於實況服務,時段之start屬性與MPD屬性availableStartTime之總和可規定UTC格式中的時段之可獲得性時間,詳言之,對應時段中之每一表示之第一媒體區段。對於點播服務,第一時段之start屬性可為0。對於任何其他時段,start屬性可規定對應時段之開始時間相對於第一時段之開始時間之間的時間偏移。每一時段可延長,直至下一時段開始為止,或在最後一個時段的情況下,直至媒體呈現結束為止。時段開始時間可為精確的。時段開始時間可反映由播放所有先前時段之媒體產生的實際時序。
每一時段可含有同一媒體內容之一或多個表示。表示可為音訊或視訊資料之若干替代的經編碼版本中之一者。表示之編碼類型(例如,視訊資料之位元速率、解析度及/或編碼解碼器,及音訊資料之位元速率、語言及/或編碼解碼器)可以不同。術語表示可用以指代經編碼音訊或視訊資料的對應於多媒體內容之特定時段且以特定方式編碼之部分。
特定時段之表示可指派給由MPD中之屬性(其指示表示所屬之適應集合)指示之群組。同一適應集合中之表示通常被視為彼此之替代,此係因為用戶端裝置可在此等表示之間動態地且順暢地切換,例如執行頻寬適應。舉例而言,特定時段之視訊資料之每一表示可指派
給同一適應集合,以使得可選擇該等表示中之任一者進行解碼以呈現對應時段之多媒體內容的媒體資料(諸如視訊資料或音訊資料)。在一些實例中,一個時段內之媒體內容可由來自群組0(若存在)的一個表示來表示,或由來自每一非零群組的至多一個表示之組合來表示。時段之每一表示之時序資料可相對於該時段之開始時間來表達。
一表示可包括一或多個區段。每一表示可包括初始化區段,或表示之每一區段可以自初始化。當存在時,初始化區段可含有用於存取表示之初始化資訊。一般而言,初始化區段不含媒體資料。區段可由識別符唯一地參考,諸如統一資源定位符(URL)、統一資源名稱(URN)或統一資源識別符(URI)。MPD可提供每一區段之識別符。在一些實例中,MPD亦可提供呈範圍屬性之形式的位元組範圍,範圍屬性可對應於可藉由URL、URN或URI存取之檔案內之區段的資料。
關於針對不同類型之媒體資料的大體上同時之擷取,可選擇不同表示。舉例而言,用戶端裝置可選擇音訊表示、視訊表示及定時文字表示,自該等表示擷取區段。在一些實例中,用戶端裝置可選擇特定適應集合用於執行頻寬適應。亦即,用戶端裝置可選擇包括視訊表示之適應集合、包括音訊表示之適應集合及/或包括定時文字之適應集合。替代地,用戶端裝置可選擇用於特定類型之媒體(例如,視訊)之適應集合,而直接選擇其他類型之媒體(例如,音訊及/或定時文字)之表示,圖1為說明實施用於經由網路來串流媒體資料之技術之實例系統10的方塊圖。在此實例中,系統10包括內容準備裝置20、伺服器裝置60及用戶端裝置40。用戶端裝置40及伺服器裝置60係藉由網路74以通信方式耦接,該網路可包含網際網路。在一些實例中,內容準備裝置20及伺服器裝置60亦可藉由網路74或另一網路耦接,或可直接以通信方式耦接。在一些實例中,內容準備裝置20及伺服器裝置60可包含相
同裝置。
在圖1之實例中,內容準備裝置20包含音訊源22及視訊源24。音訊源22可包含(例如)麥克風,其產生表示待藉由音訊編碼器26編碼之所俘獲音訊資料的電信號。或者,音訊源22可包含儲存媒體(其儲存先前記錄之音訊資料)、音訊資料產生器(諸如電腦化之合成器)或任何其他音訊資料源。視訊源24可包含:視訊攝影機,其產生待藉由視訊編碼器28編碼之視訊資料;儲存媒體,其編碼有先前記錄之視訊資料;視訊資料產生單元,諸如電腦圖形源;或任何其他視訊資料源。內容準備裝置20未必在所有實例中均以通信方式耦接至伺服器裝置60,而可將多媒體內容儲存至由伺服器裝置60讀取之單獨媒體。
原始音訊及視訊資料可包含類比或數位資料。類比資料在藉由音訊編碼器26及/或視訊編碼器28編碼之前可被數位化。音訊源22可在說話參與者正在說話時自說話參與者獲得音訊資料,且視訊源24可同時獲得說話參與者之視訊資料。在其他實例中,音訊源22可包含包含所儲存之音訊資料的電腦可讀儲存媒體,且視訊源24可包含包含所儲存之視訊資料的電腦可讀儲存媒體。以此方式,本發明中所描述之技術可應用於實況、串流、即時音訊及視訊資料或所存檔的、預先記錄的音訊及視訊資料。
對應於視訊圖框之音訊框通常為含有藉由音訊源22俘獲(或產生)之音訊資料的音訊框,音訊資料同時伴隨含於視訊圖框內的藉由視訊源24俘獲(或產生)之視訊資料。舉例而言,當說話參與者通常藉由說話而產生音訊資料時,音訊源22俘獲音訊資料,且視訊源24同時(即,在音訊源22正俘獲音訊資料的同時)俘獲說話參與者之視訊資料。因此,音訊框在時間上可對應於一或多個特定視訊圖框。因而,對應於視訊圖框之音訊框大體上對應於同時俘獲到的音訊資料及視訊資料且音訊框及視訊圖框分別包含同時俘獲到的音訊資料及視訊資料
的情形。當然,音訊資料及視訊資料不必一定要同時俘獲,諸如在音訊資料針對另一語言配音的情況下,或在於視訊資料已俘獲之後添加音響效果或畫外音(voiceover)的情況下。
在一些實例中,音訊編碼器26可對每一經編碼音訊框中表示記錄經編碼音訊框的音訊資料之時間的時戳進行編碼,且類似地,視訊編碼器28可對每一經編碼視訊圖框中表示記錄經編碼視訊圖框的視訊資料之時間的時戳進行編碼。在此等實例中,對應於視訊圖框之音訊框可包含:包含時戳之音訊框及包含相同時戳之視訊圖框。內容準備裝置20可包含內部時鐘,音訊編碼器26及/或視訊編碼器28可以根據該內部時鐘產生時戳,或音訊源22及視訊源24可以使用該內部時鐘分別使音訊資料及視訊資料與時戳相關聯。
在一些實例中,音訊源22可向音訊編碼器26發送對應於記錄音訊資料之時間的資料,且視訊源24可向視訊編碼器28發送對應於記錄視訊資料之時間的資料。在一些實例中,音訊編碼器26可對經編碼音訊資料中的序列識別符進行編碼以指示經編碼音訊資料之相對時間排序,但未必指示記錄音訊資料之絕對時間,且類似地,視訊編碼器28亦可使用序列識別符來指示經編碼視訊資料之相對時間排序。類似地,在一些實例中,序列識別符可映射或以其它方式與時戳相關。
音訊編碼器26通常產生經編碼音訊資料流,而視訊編碼器28產生經編碼視訊資料流。每一個別資料流(不論音訊或視訊)可被稱為基本流。基本流為表示之單一的經數位化寫碼(可能經壓縮)之分量。舉例而言,表示之經寫碼視訊或音訊部分可為基本流。基本流可在被囊封於視訊檔案內之前被轉換成封包化基本流(PES)。在相同表示內,可使用流ID來區分屬於一個基本流的PES封包與屬於其它基本流的PES封包。基本流之資料之基本單位為封包化基本流(PES)封包。因此,經寫碼視訊資料大體對應於基本視訊流。類似地,音訊資料對應
於一或多個相應基本流。
許多視訊寫碼標準(諸如ITU-T H.264/AVC及即將到來的高效視訊寫碼(HEVC)標準)界定無誤差位元流之語法、語義及解碼過程,該等無誤差位元流中之任一者符合特定設定檔或層級。視訊寫碼標準通常並不規定編碼器,但編碼器具有保證所產生之位元流對於解碼器而言係標準相容之任務。在視訊寫碼標準之上下文中,「設定檔」對應於演算法、特徵或工具及施加至演算法、特徵或工具之約束的子集。如(例如)H.264標準所定義,「設定檔」為藉由H.264標準規定的完整位元流語法之子集。「層級」對應於解碼器資源消耗(諸如,解碼器記憶體及計算)之限制,該等限制係關於圖像解析度、位元速率及區塊處理速率。設定檔可藉由profile_idc(設定檔指示符)值用信號通知,而層級可藉由level_idc(層級指示符)值用信號通知。
舉例而言,H.264標準認可,在給定設定檔之語法所強加的界限內,仍然可能要求編碼器及解碼器之效能有較大變化,此取決於位元流中之語法元素(諸如經解碼圖像之規定大小)所取的值。H.264標準進一步認可,在許多應用中,實施能夠處理特定設定檔內之語法之所有假設使用的解碼器既不實際又不經濟。因此,H.264標準將「層級」定義為強加於位元流中之語法元素之值的約束之規定集合。此等約束可僅為對值的限制。或者,此等約束可呈對值之算術組合(例如,圖像寬度乘以圖像高度乘以每秒解碼的圖像數目)之約束的形式。H.264標準進一步指定,個別實施對於每一所支援設定檔可支援不同層級。
符合設定檔之解碼器一般支援設定檔中所定義之所有特徵。舉例而言,作為寫碼特徵,B圖像寫碼在H.264/AVC之基線設定檔不得到支援,但在H.264/AVC之其他設定檔中得到支援。符合一層級之解碼器應能夠對不需要超出該層級中所定義之限制的資源之任何位元流
進行解碼。設定檔及層級之定義可對可解釋性有幫助。舉例而言,在視訊傳輸期間,可針對整個傳輸工作階段協商及同意一對設定檔定義及層級定義。更具體言之,在H.264/AVC中,層級可定義對於需要處理之巨集區塊的數目、經解碼圖像緩衝器(DPB)大小、經寫碼圖像緩衝器(CPB)大小、垂直運動向量範圍、每兩個連續MB的運動向量之最大數目及B區塊是否可具有小於8x8像素之子巨集區塊分區的限制。以此方式,解碼器可判定解碼器是否能夠恰當地對位元流進行解碼。
在圖1之實例中,內容準備裝置20之囊封單元30自視訊編碼器28接收包含經寫碼視訊資料之基本流,且自音訊編碼器26接收包含經寫碼音訊資料之基本流。在一些實例中,視訊編碼器28及音訊編碼器26可各自包括用於自經編碼資料形成PES封包的封包化器。在其他實例中,視訊編碼器28及音訊編碼器26可各自與用於自經編碼資料形成PES封包之相應封包化器介接。在另外其他實例中,囊封單元30可包括用於自經編碼音訊及視訊資料形成PES封包之封包化器。
視訊編碼器28可用多種方式對多媒體內容之視訊資料進行編碼,以便以各種位元速率且用各種特性產生多媒體內容之不同表示,該等特性諸如像素解析度、框速率、對各種寫碼標準之符合性、對各種寫碼標準之各種設定檔及/或設定檔層級之符合性、具有一或多個視圖之表示(例如,對於二維或三維播放)或其他此等特性。如本發明中所使用,表示可包含音訊資料、視訊資料、文字資料(例如,用於封閉字幕)或其他此資料中之一者。表示可包括諸如音訊基本流或視訊基本流之基本流。每一PES封包可包括stream_id,其識別PES封包所屬之基本流。囊封單元30負責將基本流組譯成各種表示之視訊檔案(例如,區段)。
囊封單元30自音訊編碼器26及視訊編碼器28接收表示之基本流的PES封包且自該等PES封包形成對應的網路抽象層(NAL)單元。在
H.264/AVC(進階視訊寫碼)之實例中,經寫碼視訊區段係組織成NAL單元,該等單元提供「網路友好」視訊表示,其處理諸如視訊電話、儲存、廣播或串流之應用。NAL單元可分類為視訊寫碼(VCL)NAL單元及非VCL NAL單元。VCL單元可含有核心壓縮引擎,且可包括區塊、巨集區塊及/或圖塊層級資料。其他NAL單元可為非VCL NAL單元。在一些實例中,一個時間例子中之經寫碼圖像(通常呈現為初級經寫碼圖像)可含於存取單元中,該存取單元可包括一或多個NAL單元。
非VCL NAL單元可尤其包括參數集NAL單元及SEI NAL單元。參數集可含有序列層級標頭資訊(在序列參數集(SPS)中)及不頻繁改變的圖像層級標頭資訊(在圖像參數集(PPS)中)。對於參數集(例如,PPS及SPS),不頻繁改變的資訊不需要關於每一序列或圖像重複,因此可改良寫碼效率。此外,使用參數集可實現重要標頭資訊之帶外傳輸,從而避免對於用於抗誤碼之冗餘傳輸的需要。在帶外傳輸實例中,參數集NAL單元可在與其他NAL單元(諸如SEI NAL單元)不同之頻道上傳輸。
補充增強資訊(SEI)可含有對於對來自VCL NAL單元之經寫碼圖像樣本進行解碼並非必需的資訊,但可輔助與解碼、顯示、抗誤碼及其他目的相關的過程。SEI訊息可含於非VCL NAL單元中。SEI訊息為一些標準規範之標準化部分,且因此對於標準相容之解碼器實施並非始終是必選的。SEI訊息可為序列層級SEI訊息或圖像層級SEI訊息。某一序列層級資訊可含於SEI訊息中,諸如SVC之實例中的可縮放性資訊SEI訊息,及MVC中的視圖可縮放性資訊SEI訊息。此等實例SEI訊息可傳達關於例如操作點之提取及操作點之特性的資訊。另外,囊封單元30可形成資訊清單檔案,諸如描述表示之特性的媒體呈現描述符(MPD)。囊封單元30可根據可延伸標記語言(XML)來格式化
MPD。
囊封單元30可向輸出介面32提供多媒體內容之一或多個表示之資料連同資訊清單檔案(例如,MPD)。輸出介面32可包含網路介面或用於對儲存媒體進行寫入之介面,諸如通用串流匯流排(USB)介面、CD或DVD寫入器或燒錄器、至磁性或快閃儲存媒體之介面,或用於儲存或傳輸媒體資料之其他介面。囊封單元30可向輸出介面32提供多媒體內容之表示中之每一者的資料,該輸出介面可經由網路傳輸或儲存媒體向伺服器裝置60發送該資料。在圖1之實例中,伺服器裝置60包括儲存各種多媒體內容64之儲存媒體62,每一多媒體內容包括相應資訊清單檔案66及一或多個表示68A至68N(表示68)。在一些實例中,輸出介面32亦可向網路74直接發送資料。
在一些實例中,表示68可分成若干適應集合。亦即,表示68之各種子集可包括相應共同特性集合,例如編解碼器、設定檔及層級、解析度、視圖數目、片段之檔案格式、可識別待與待解碼並呈現之表示及/或音訊資料(例如,由揚聲器發出)一起顯示的文字之語言或其他特性的文字類型資訊、可描述針對適應集合中之表示之場景的攝影機角度或真實世界攝影機視角的攝影機角度資訊、描述對於特定受眾之內容適合性的分級資訊,或類似資訊。
資訊清單檔案66可包括指示對應於特定適應集合之表示68之子組以及該等適應集合之共同特性的資料。資訊清單檔案66亦可包括表示適應集合之個別表示的個別特性(諸如位元速率)之資料。以此方式,適應集合可提供簡化的網路頻寬調適。適應集合中之表示可使用資訊清單檔案66之適應集合元素的子代元素來指示。
伺服器裝置60包括請求處理單元70及網路介面72。在一些實例中,伺服器裝置60可包括複數個網路介面。此外,伺服器裝置60之特徵中之任一者或全部可在內容遞送網路之其他裝置(諸如路由器、橋
接器、代理裝置、交換機或其他裝置)上實施。在一些實例中,內容遞送網路之中間裝置可快取多媒體內容64之資料,且包括基本上符合伺服器裝置60之組件的組件。一般而言,網路介面72經組態以經由網路74來發送及接收資料。
請求處理單元70經組態以自用戶端裝置(諸如用戶端裝置40)接收對儲存媒體62之資料的網路請求。舉例而言,請求處理單元70可實施超文字傳送協定(HTTP)版本1.1,如RFC 2616中R.費爾丁(R.Fielding)等人(網路工作組,IETF,1999年6月)的「超文字傳送協定-HTTP/1.1(Hypertext Transfer Protocol-HTTP/1.1)」中所描述。亦即,請求處理單元70可經組態以接收HTTP GET或部分GET請求,且回應於該等請求而提供多媒體內容64之資料。請求可規定表示68中之一者之區段,例如使用區段之URL。在一些實例中,該等請求亦可規定區段之一或多個位元組範圍,因而包含部分GET請求。請求處理單元70可經進一步組態以服務於HTTP HEAD請求以提供表示68中之一者之區段的標頭資料。在任何情況下,請求處理單元70可經組態以處理該等請求以向請求裝置(諸如用戶端裝置40)提供所請求之資料。
另外或替代地,請求處理單元70可經組態以經由廣播或多播服務/協定(諸如eMBMS)遞送媒體資料。內容準備裝置20可用與所描述大體上相同的方式產生DASH區段及/或子區段,但伺服器裝置60可使用eMBMS或另一廣播或多播網路傳送協定來遞送此等區段或子區段。舉例而言,請求處理單元70可經組態以自用戶端裝置40接收多播群組加入請求。亦即,伺服器裝置60可向用戶端裝置(包括用戶端裝置40)通告與多播群組相關聯之網際網路協定(IP)位址,其與特定媒體內容(例如,實況事件之廣播)相關聯。用戶端裝置40又可提交加入多播群組之請求。此請求可遍及網路74(例如,構成網路74之路由器)傳播,以使得致使該等路由器將去往與多播群組相關聯之IP位址的訊務
定向至訂用的用戶端裝置(諸如用戶端裝置40)。
如圖1之實例中所說明,多媒體內容64包括資訊清單檔案66,其可對應於媒體呈現描述(MPD)。資訊清單檔案66可含有不同替代表示68(例如,具有不同品質之視訊服務)的描述,且該描述可包括例如編解碼器資訊、設定檔值、層級值、位元速率及表示68之其他描述性特性。用戶端裝置40可擷取媒體表現之資訊清單檔案66(例如,MPD)以判定如何存取表示68之區段。
詳言之,擷取單元52可擷取用戶端裝置40之組態資料(未圖示)以判定視訊解碼器48之解碼能力及視訊輸出44之再現能力。組態資料亦可包括由用戶端裝置40之使用者選擇的語言偏好中之任一者或全部、對應於由用戶端裝置40之使用者設定的深度偏好之一或多個攝影機視角及/或由用戶端裝置40之使用者選擇的分級偏好。擷取單元52可包含例如網頁瀏覽器或媒體用戶端,其經組態以提交HTTP GET及部分GET請求。擷取單元52可對應於由用戶端裝置40之一或多個處理器或處理單元(未圖示)執行的軟體指令。在一些實例中,關於擷取單元52所描述的功能性之全部或部分可在硬體或硬體、軟體及/或韌體之組合中實施,其中可提供必需的硬體以執行軟體或韌體之指令。
擷取單元52可將用戶端裝置40之解碼及再現能力與由資訊清單檔案66之資訊指示之表示68的特性進行比較。擷取單元52可首先擷取資訊清單檔案66之至少一部分以判定表示68之特性。舉例而言,擷取單元52可請求描述一或多個適應集合之特性的資訊清單檔案66之一部分。擷取單元52可選擇具有用戶端裝置40之寫碼及再現能力可滿足之特性的表示68之子集(例如,適應集合)。擷取單元52可接著判定用於適應集合中之表示的位元速率,判定網路頻寬之當前可用量,且自具有網路頻寬可滿足之位元速率的表示中之一者擷取區段。
一般而言,較高位元速率表示可產生較高品質之視訊播放,而
較低位元速率表示可在可用網路頻寬減少時提供足夠品質之視訊播放。因此,當可用網路頻寬相對高時,擷取單元52可自相對高位元速率之表示擷取資料,而當可用網路頻寬較低時,擷取單元52可自相對低位元速率之表示擷取資料。以此方式,用戶端裝置40可經由網路74串流多媒體資料,同時亦適應網路74之改變的網路頻寬可用性。
另外或替代地,擷取單元52可經組態以根據諸如MBMS、eMBMS或IP多播之廣播或多播網路協定來接收資料。在此等實例中,擷取單元52可提交加入與特定媒體內容相關聯之多播網路群組的請求。在加入多播群組之後,擷取單元52可在其他請求無發佈至伺服器裝置60或內容準備裝置20的情況下接收多播群組之資料。擷取單元52可提交當不再需要多播群組之資料時離開多播群組的請求,例如停止播放或將頻道改變至一不同多播群組。
根據本發明之技術,擷取單元52可視廣播/多播服務是否可獲得而根據廣播或多播服務或單播服務來擷取/接收媒體資料。詳言之,擷取單元52可在廣播/多播服務變得可獲得或不可獲得時在廣播/多播服務與單播服務之間切換。此外,有時,經由廣播/多播服務接收之資料可被快取且在廣播/多播服務變得不可獲得之後仍然被快取。相應地,擷取單元52可在經由單播服務接收媒體資料之前或與此同時使用經由廣播/多播服務接收之快取資料。
舉例而言,擷取單元52可包括實施對媒體資料之快取的記憶體。擷取單元52亦可包括廣播/多播單元、代理單元、本機伺服器及串流用戶端(諸如DASH用戶端)。當廣播/多播單元經由廣播或多播接收資料時,廣播/多播單元可快取記憶體之快取中之資料。隨後,廣播/多播服務可變得不可獲得,例如,因為用戶端裝置40已實體地移動至廣播/多播服務不可獲得(例如,伺服器裝置60不提供)之地理區域。
一般而言,串流用戶端可向本機伺服器或外部伺服器發送HTTP GET或部分GET請求,但代理單元可攔截該等請求。代理單元可經組態以在所請求之媒體資料在本機可獲得(例如,在快取中)時將請求重定向至本機伺服器,或在所請求之媒體資料在本機不可獲得時將請求重定向至外部伺服器(例如,伺服器裝置60)。因此,並非緊接著傳送至單播服務,擷取單元52可使代理單元將對媒體資料之請求重定向至本機伺服器,以遞送來自快取的先前經由廣播/多播服務接收之媒體資料。擷取單元52可在切換點經由單播擷取後續媒體資料(例如,視訊資料之瞬時解碼器再新(IDR)圖像),且快取此資料以使得該資料在經由廣播/多播服務接收之快取媒體資料完全耗盡時或之前可獲得。
資訊清單檔案可指示IP位址,媒體資料可自該IP位址獲得。當廣播/多播服務可獲得時,IP位址可對應於本機伺服器,而當廣播/多播服務不可獲得時,IP位址可對應於諸如伺服器裝置60之外部伺服器裝置。一般而言,串流用戶端(例如,DASH用戶端)可經組態以將對媒體資料之請求定向至廣告IP位址。然而,擷取單元52之代理單元可攔截該等請求,且判定所請求之媒體資料實際上是否可自本機伺服器獲得,例如當媒體資料先前經由廣播/多播服務接收時。
亦即,串流用戶端可基於指示伺服器裝置60之IP位址的資訊清單檔案而將HTTP GET或部分GET請求定向至伺服器裝置60之IP位址。然而,即使廣播/多播服務在特定環境中不可獲得,但當經由廣播/多播服務接收之所請求之媒體資料在來自本機伺服器之快取中可獲得時,代理單元可將該等請求重定向至本機伺服器(例如,用戶端裝置40之本機主機位址)。舉例而言,代理單元可用HTTP 3xx類型回應(例如,HTTP 300回應)對HTTP GET或部分GET作出回應,HTTP 3xx類型回應可規定本機伺服器之IP位址(例如,用戶端裝置40之本機主機位址)。以此方式,代理單元可使用戶端裝置自本機伺服器擷取媒體
資料,即使當由本機伺服器提供之媒體資料接收媒體資料所藉由的廣播/多播服務不可獲得時。
在一些實例中,媒體資料之資訊清單檔案可指示多個表示可獲得,其中該等表示中之至少一者對應於經由廣播/多播服務可獲得之表示,且該等表示中之至少一個其他表示對應於經由單播服務可獲得之表示。代理單元可向串流用戶端發送伺服器及網路輔助DASH(SAND)強制訊息,以使串流用戶端自該等表示中之適當表示擷取媒體資料。舉例而言,若廣播/多播服務可獲得,則SAND強制訊息可包括使串流用戶端擷取對應於廣播/多播服務之表示之媒體資料的指令或組態資料。同樣,若廣播/多播服務不可獲得,但先前經由廣播/多播服務接收之媒體資料可獲得,則SAND強制訊息可包括使串流用戶端擷取對應於廣播/多播服務之表示之媒體資料的指令或組態資料。
另一方面,若廣播/多播服務不可獲得(且若先前經由廣播/多播服務接收之媒體資料不可獲得),則SAND強制訊息可包括使串流用戶端擷取對應於單播服務之表示之媒體資料的指令或組態資料。
SAND強制訊息之此等指令/組態資料可包括(例如)基本URL欄位(包括識別適當表示之URI首碼)及一或多個狀態欄位(表示相關聯資源(例如,表示及/或表示之區段)之狀態)。SAND強制訊息可包括對來自串流用戶端之HTTP GET請求的HTTP 300回應,其中HTTP 300回應包括例如與廣播/多播服務相關聯之表示中之一者的識別符。
如上文所指出,用戶端裝置40在地理上可在服務區之間移動,其中在某些服務區中,廣播/多播服務可獲得,而在其他服務區中,廣播/多播服務不可獲得。因此,當然,擷取單元52可在移動至廣播/多播服務不可獲得之服務區之後使用單播服務來擷取媒體資料。同樣,擷取單元52可隨後移動返回至廣播/多播服務可獲得之服務區,且再次經由廣播/多播服務來接收媒體資料。
網路介面54可接收所選表示之區段之資料且向擷取單元52提供該資料,該擷取單元又可向解囊封單元50提供該等區段。解囊封單元50可將視訊檔案之元素解囊封成組成PES流,將該等PES流解封包化以擷取經編碼資料,且視經編碼資料為音訊流抑或視訊流之部分(例如,如流之PES封包標頭所指示)而向音訊解碼器46或視訊解碼器48發送經編碼資料。音訊解碼器46對經編碼音訊資料進行解碼,且向音訊輸出42發送經解碼音訊資料,而視訊解碼器48對經編碼視訊資料進行解碼,且向視訊輸出44發送經解碼視訊資料,其可包括流的複數個視圖。
視訊編碼器28、視訊解碼器48、音訊編碼器26、音訊解碼器46、囊封單元30、擷取單元52及解囊封單元50各自可實施為適用的多種合適處理電路系統中之任一者,合適處理電路系統係諸如一或多個微處理器、數位信號處理器(DSP)、特殊應用積體電路(ASIC)、場可程式化閘陣列(FPGA)、離散邏輯電路系統、軟體、硬體、韌體或其任何組合。視訊編碼器28及視訊解碼器48中之每一者可包括於一或多個編碼器或解碼器中,編碼器或解碼器中之任一者可經整合為組合式視訊編碼器/解碼器(CODEC)之部分。同樣音訊編碼器26及音訊解碼器46中之每一者可包括於一或多個編碼器或解碼器中,編碼器或解碼器中之任一者可經整合為組合式CODEC之部分。包括視訊編碼器28、視訊解碼器48、音訊編碼器26、音訊解碼器46、囊封單元30、擷取單元52及/或解囊封單元50之設備可包含積體電路、微處理器及/或無線通信裝置,諸如蜂巢式電話。
用戶端裝置40、伺服器裝置60及/或內容準備裝置20可經組態以根據本發明之技術操作。出於實例之目的,本發明關於用戶端裝置40及伺服器裝置60描述此等技術。然而,應理解,替代伺服器裝置60(或除該伺服器裝置之外),內容準備裝置20可經組態以執行此等技
術。
囊封單元30可形成NAL單元,該等NAL單元包含識別NAL單元屬於之程式的標頭,以及有效負載,例如音訊資料、視訊資料或描述NAL單元對應於的傳送或程式流的資料。舉例而言,在H.264/AVC中,NAL單元包括1位元組標頭及具有變化大小之有效負載。在有效負載中包括視訊資料之NAL單元可包含各種粒度位準之視訊資料。舉例而言,NAL單元可包含視訊資料區塊、複數個區塊、視訊資料之截塊或視訊資料之整個圖像。囊封單元30可自視訊編碼器28接收呈基本流之PES封包之形式的經編碼視訊資料。囊封單元30可使每一基本流與對應程式相關聯。
囊封單元30亦可組譯來自複數個NAL單元之存取單元。一般而言,存取單元可包含用於表示視訊資料之圖框以及對應於該圖框之音訊資料(當此音訊資料可獲得時)的一或多個NAL單元。存取單元通常包括針對一個輸出時間執行個體之所有NAL單元,例如針對一個時間執行個體之所有音訊及視訊資料。舉例而言,若每一視圖具有20圖框/秒(fps)之圖框速率,則每一時間執行個體可對應於0.05秒之時間間隔。在此時間間隔期間,同一存取單元(相同時間執行個體)之所有視圖的特定圖框可同時再現。在一個實例中,存取單元可包含一個時間執行個體中之經寫碼圖像,其可呈現為初級經寫碼圖像。
因此,存取單元可包含共同時間執行個體之所有音訊框及視訊圖框,例如對應於時間X之所有視圖。本發明亦將特定視圖之經編碼圖像稱為「視圖分量」。亦即,視圖分量可包含在特定時間針對特定視圖的經編碼圖像(或圖框)。因此,存取單元可被定義為包含共同時間執行個體之所有視圖分量。存取單元之解碼次序未必與輸出或顯示次序相同。
媒體呈現可包括媒體呈現描述(MPD),其可含有不同替代表示
(例如,具有不同品質之視訊服務)的描述,且該描述可包括例如編解碼器資訊、設定檔值及層級值。MPD為資訊清單檔案(諸如資訊清單檔案66)之一個實例。用戶端裝置40可擷取媒體呈現之MPD以判定如何存取各種呈現之電影片段。電影片段可位於視訊檔案之電影片段方塊(moof方塊)中。
資訊清單檔案66(其可包含(例如)MPD)可通告表示68之區段之可獲得性。亦即,MPD可包括指示表示68中之一者之第一片段變得可獲得時之掛鐘時間的資訊,以及指示表示68內之區段之持續時間的資訊。以此方式,用戶端裝置40之擷取單元52可基於開始時間以及在特定區段之前的區段之持續時間而判定何時每一區段可獲得。
在囊封單元30已基於所接收之資料將NAL單元及/或存取單元組譯成視訊檔案之後,囊封單元30將視訊檔案遞送至輸出介面32以用於輸出。在一些實例中,囊封單元30可將視訊檔案儲存在本地,或經由輸出介面32向遠端伺服器發送視訊檔案,而非向用戶端裝置40直接發送視訊檔案。輸出介面32可包含(例如)傳輸器、收發器、用於寫入資料至電腦可讀媒體之裝置(諸如光碟機、磁性媒體機(例如,軟碟機))、通用串列匯流排(USB)埠、網路介面或其他輸出介面。輸出介面32將視訊檔案輸出至電腦可讀媒體,諸如傳輸信號、磁性媒體、光學媒體、記憶體、隨身碟或其他電腦可讀媒體。
網路介面54可經由網路74接收NAL單元或存取單元,且經由擷取單元52將NAL單元或存取單元提供至解囊封單元50。解囊封單元50可將視訊檔案之元素解囊封成組成PES流,將該等PES流解封包化以擷取經編碼資料,且視經編碼資料為音訊流抑或視訊流之部分(例如,如流之PES封包標頭所指示)而向音訊解碼器46或視訊解碼器48發送經編碼資料。音訊解碼器46對經編碼音訊資料進行解碼,且向音訊輸出42發送經解碼音訊資料,而視訊解碼器48對經編碼視訊資料進行解
碼,且向視訊輸出44發送經解碼視訊資料,其可包括流的複數個視圖。
圖2為更詳細地說明圖1之擷取單元52之組件之實例集合的方塊圖。在此實例中,擷取單元52包括eMBMS中間軟體單元100、DASH用戶端110及媒體應用程式112。
在此實例中,eMBMS中間軟體單元100進一步包括eMBMS接收單元106、快取記憶體104、本機伺服器單元102及HTTP代理單元108。在此實例中,eMBMS接收單元106經組態以經由eMBMS接收資料,例如,根據T.Paila等人在「經由單向傳送之FLUTE檔案遞送(FLUTE-File Delivery over Unidirectional Transport)」(Network Working Group,RFC 6726,2012年11月)中所描述的單向傳送檔案遞送(File Delivery over Unidirectional Transport,FLUTE),可於http://tools.ietf.org/html/rfc6726獲得。亦即,eMBMS接收單元106可經由廣播自例如伺服器裝置60(其可充當BM-SC)接收檔案。
當eMBMS中間軟體單元100接收檔案之資料時,eMBMS中間軟體單元可將所接收之資料儲存於快取記憶體104中。快取記憶體104可包含電腦可讀儲存媒體,諸如快閃記憶體、硬碟、RAM或任何其他合適的儲存媒體。
本機伺服器單元102可充當DASH用戶端110之伺服器。舉例而言,本機伺服器單元102可將MPD檔案或其他資訊清單檔案提供至DASH用戶端110。本機伺服器單元102可通告MPD檔案中之區段之可獲得性時間,以及可擷取該等區段之超連結。此等超連結可包括對應於用戶端裝置40之本機主機位址首碼(例如,IPv4之127.0.0.1)。以此方式,DASH用戶端110可使用HTTP GET或部分GET請求向本機伺服器單元102請求區段。舉例而言,對於可自連結http://127.0.0.1/rep1/seg3獲得之區段,DASH用戶端110可構造包括針
對http://127.0.0.1/rep1/seg3之請求的HTTP GET請求,且將該請求提交至本機伺服器單元102。本機伺服器單元102可自快取記憶體104擷取所請求之資料且回應於此等請求而將資料提供至DASH用戶端110。
此外,根據本發明之技術,HTTP代理單元108可充當DASH用戶端110之代理。舉例而言,根據此等技術,HTTP代理單元108可攔截來自DASH用戶端110的對資料之請求。當處於廣播接收模式時,eMBMS接收單元106經由廣播接收DASH區段且將DASH區段儲存至快取記憶體104。在單播擷取模式中,DASH用戶端110可提交自內容遞送網路(CDN)(未圖示)擷取DASH區段之請求,內容遞送網路與包括擷取單元52之用戶端裝置(例如,用戶端裝置40)分離。然而,HTTP代理單元108可欄截此等請求且判定所請求之區段先前在廣播接收模式期間是否已接收,且在已接收之情況下將該等請求重定向至本機伺服器單元102。
舉例而言,HTTP代理單元108可向DASH用戶端110發送HTTP 300回應,其包括與本機伺服器單元102相關聯之本機主機位址,以使DASH用戶端110自本機伺服器單元102擷取所請求之區段。另一方面,若該等區段未在快取記憶體104中快取,則HTTP代理單元108可將請求轉送至CDN。在下文更詳細地描述此等技術之額外細節。
圖3為說明實例多媒體內容120之元素的概念圖。多媒體內容120可對應於多媒體內容64(圖1),或儲存於儲存媒體62中之另一多媒體內容。在圖3之實例中,多媒體內容120包括媒體呈現描述(MPD)122及複數個表示124A至124N(表示124)。表示124A包括可選標頭資料126及區段128A至128N(區段128),而表示124N包括可選標頭資料130及區段132A至132N(區段132)。為了方便起見,使用字母N來指明表示124中之每一者中的最後一個電影片段。在一些實例中,表示124之間可存在不同數目之電影片段。
MPD 122可包含與表示124分開之資料結構。MPD 122可對應於圖1之資訊清單檔案66。同樣,表示124可對應於圖1之表示68。一般而言,MPD 122可包括大體上描述表示124之特性的資料,諸如寫碼及再現特性、適應集合、MPD 122所對應之設定檔、文字類型資訊、攝影機角度資訊、分級資訊、特技模式資訊(例如,指示包括時間子序列之表示的資訊)及/或用於擷取遙遠時段(例如,用於在播放期間向媒體內容***針對性廣告)之資訊。
標頭資料126當存在時可描述區段128之特性,例如隨機存取點(RAP,亦被稱作流存取點(SAP))之時間位置、區段128中之哪一者包括隨機存取點、與區段128內之隨機存取點之位元組偏移、區段128之統一資源定位符(URL),或區段128之其他態樣。標頭資料130當存在時可描述區段132之類似特性。另外或替代地,此等特性可完全包括於MPD 122內。
區段128、132包括一或多個經寫碼視訊樣本,其中之每一者可包括視訊資料之框或圖塊。區段128之經寫碼視訊樣本中之每一者可具有類似特性,例如,高度、寬度及頻寬要求。此等特性可藉由MPD 122之資料來描述,儘管此資料在圖3之實例中未說明。MPD 122可包括如3GPP規範所描述之特性,並且添加了本發明中所描述的發信資訊中之任一者或全部。
區段128、132中之每一者可與唯一的統一資源定位符(URL)相關聯。因此,區段128、132中之每一者可使用串流網路協定(諸如DASH)來獨立地擷取。以此方式,諸如用戶端裝置40之目的地裝置可使用HTTP GET請求來擷取區段128或132。在一些實例中,用戶端裝置40可使用HTTP部分GET請求來擷取區段128或132之特定位元組範圍。
根據本發明之技術,MPD 122可包括如下文展示於例如圖8、圖
12、圖17、圖23及/或圖27中之資料。
圖4為說明實例視訊檔案150之元素的方塊圖,實例視訊檔案可對應於表示之區段,諸如圖3之區段128、132中之一者。區段128、132中之每一者可包括實質上符合圖4之實例中所說明之資料之配置的資料。視訊檔案150可稱為囊封區段。如上所述,根據ISO基本媒體檔案格式及其擴展的視訊檔案將資料儲存於一系列物件(被稱為「方塊」)中。在圖4之實例中,視訊檔案150包括檔案類型(FTYP)方塊152、電影(MOOV)方塊154、區段索引(sidx)方塊162、電影片段(MOOF)方塊164及電影片段隨機存取(MFRA)方塊166。儘管圖4表示視訊檔案之實例,但應理解,根據ISO基本媒體檔案格式及其擴展,其他媒體檔案可包括其他類型之媒體資料(例如,音訊資料、定時文字資料或類似者),其在結構上類似於視訊檔案150之資料。
檔案類型(FTYP)方塊152通常描述視訊檔案150之檔案類型。檔案類型方塊152可包括識別描述視訊檔案150之最佳用途之規範的資料。檔案類型方塊152可替代地置放在MOOV方塊154、電影片段方塊164及/或MFRA方塊166之前。
在一些實例中,區段(諸如視訊檔案150)可包括在FTYP方塊152之前的MPD更新方塊(未圖示)。MPD更新方塊可包括指示對應於包括視訊檔案150之表示之MPD應更新的資訊,連同用於更新MPD之資訊。舉例而言,MPD更新方塊可提供待用以更新MPD之資源的URI或URL。作為另一實例,MPD更新方塊可包括用於更新MPD之資料。在一些實例中,MPD更新方塊可緊接在視訊檔案150之區段類型(STYP)方塊(未圖示)之後,其中STYP方塊可定義視訊檔案150之區段類型。在下文更詳細地論述之圖7提供關於MPD更新方塊之額外資訊。
在圖4之實例中,MOOV方塊154包括電影標頭(MVHD)方塊156、播放軌(TRAK)方塊158及一或多個電影延伸(MVEX)方塊160。
一般而言,MVHD方塊156可描述視訊檔案150之一般特性。舉例而言,MVHD方塊156可包括描述視訊檔案150何時最初建立、視訊檔案150何時經最後修改、視訊檔案150之時間標度、視訊檔案150之播放持續時間的資料,或大體上描述視訊150之其他資料。
TRAK方塊158可包括視訊檔案150之播放軌之資料。TRAK方塊158可包括播放軌標頭(TKHD)方塊(未圖示),其描述對應於TRAK方塊158之播放軌之特性。在一些實例中,TRAK方塊158可包括經寫碼視訊圖像,而在其他實例中,播放軌之經寫碼視訊圖像可包括於電影片段164中,該等圖像可藉由TRAK方塊158及/或sidx方塊162之資料引用。
在一些實例中,視訊檔案150可包括一個以上播放軌。相應地,MOOV方塊154可包括數個TRAK方塊,其等於視訊檔案150中之播放軌之數目。TRAK方塊158可描述視訊檔案150之對應播放軌之特性。舉例而言,TRAK方塊158可描述對應播放軌之時間及/或空間資訊。當囊封單元30(圖1)包括視訊檔案(諸如視訊檔案150)中之參數集播放軌時,類似於MOOV方塊154之TRAK方塊158的TRAK方塊可描述參數集播放軌之特性。囊封單元30可在描述參數集播放軌之TRAK方塊內發信序列層級SEI訊息存在於參數集播放軌中。
MVEX方塊160可描述對應電影片段164之特性,例如,發信視訊檔案150除包括MOOV方塊154(若存在)內之視訊資料之外亦包括電影片段164。在串流視訊資料之情況下,經寫碼視訊圖像可包括於電影片段164中,而非包括於MOOV方塊154中。相應地,所有經寫碼視訊樣本可包括於電影片段164中,而非包括於MOOV方塊154中。
MOOV方塊154可包括數個MVEX方塊160,其等於視訊檔案150中之電影片段164之數目。MVEX方塊160中之每一者可描述電影片段164中之對應電影片段之特性。舉例而言,每一MVEX方塊可包括電
影延伸標頭方塊(MEHD)方塊(未圖示),其描述電影片段164之對應電影片段之時間持續時間。
如上文所指出,囊封單元30可儲存視訊樣本中之序列資料集,其並不包括實際經寫碼視訊資料。視訊樣本可大體上對應於存取單元,其為特定時間執行個體下之經寫碼圖像之表示。在AVC之情況下,經寫碼圖像包括含有用以構造存取單元之所有像素之資訊的一或多個VCL NAL單元,及其他相關聯非VCL NAL單元(諸如SEI訊息)。相應地,囊封單元30可包括電影片段164中之一者中之序列資料集,其可包括序列層級SEI訊息。囊封單元30可另外在對應於電影片段164中之一者的MVEX方塊160中之一者內發信存在於電影片段164中之一者中的序列資料集及/或序列層級SEI訊息之存在。
SIDX方塊162為視訊檔案150之可選元素。亦即,符合3GPP檔案格式或其他此等檔案格式之視訊檔案未必包括SIDX方塊162。根據3GPP檔案格式之實例,SIDX方塊可用以識別區段(例如,含於視訊檔案150內之區段)之子區段。3GPP檔案格式將子區段定義為「具有對應媒體資料方塊及含有藉由電影片段方塊引用之資料的媒體資料方塊的一或多個相連電影片段方塊之自含式集合必須跟在電影片段方塊之後,但在含有關於同一播放軌之資訊的下一個電影片段方塊之前」。3GPP檔案格式亦指示SIDX方塊「含有對藉由方塊記錄之(子)區段之子區段的參考序列。引用之子區段在呈現時間上相連。類似地,藉由區段索引方塊所引用之位元組在區段內始終相連。引用大小產生引用之材料中之位元組之數目的計數」。
SIDX方塊162大體上提供表示包括於視訊檔案150中之區段之一或多個子區段的資訊。舉例而言,此資訊可包括(1)子區段開始及/或結束時的播放時間,(2)子區段之位元組偏移,(3)子區段是否包括串流存取點(SAP)(例如,自串流存取點開始),(4)SAP之類型(例如,
SAP是否在瞬時解碼器再新(IDR)圖像、清晰隨機存取(CRA)圖像、斷鏈存取(BLA)圖像或類似者中),(5)SAP在子區段中之位置(就播放時間及/或位元組偏移而言),(6)及類似者。
電影片段164可包括一或多個經寫碼視訊圖像。在一些實例中,電影片段164可包括一或多個圖像群組(GOP),其中之每一者可包括數個經寫碼視訊圖像,例如框或圖像。另外,如上所述,在一些實例中,電影片段164可包括序列資料集。電影片段164中之每一者可包括電影片段標頭方塊(MFHD,圖4中未圖示)。MFHD方塊可描述對應電影片段之特性,諸如電影片段之序號。電影片段164可按序號次序包括於視訊檔案150中。
MFRA方塊166可描述視訊檔案150之電影片段164內之隨機存取點。此可幫助執行特技模式,諸如執行對由視訊檔案150囊封之區段內之特定時間位置(即,播放時間)的尋找。在一些實例中,MFRA方塊166通常係可選的且不必包括於視訊檔案中。同樣,用戶端裝置(諸如用戶端裝置40)未必需要參考MFRA方塊166以正確解碼及顯示視訊檔案150之視訊資料。MFRA方塊166可包括數個播放軌片段隨機存取(TFRA)方塊(未圖示),其等於視訊檔案150之播放軌之數目或在一些實例中等於視訊檔案150之媒體播放軌(例如,非暗示播放軌)之數目。
在一些實例中,電影片段164可包括一或多個流存取點(SAP),諸如IDR圖像。同樣,MFRA方塊166可提供對SAP在視訊檔案150內之位置的指示。相應地,視訊檔案150之時間子序列可由視訊檔案150之SAP形成。時間子序列亦可包括其他圖像,諸如自SAP下垂之P圖框及/或B圖框。時間子序列之圖框及/或圖塊可配置於區段內,以使得時間子序列的取決於子序列之其他圖框/圖塊之圖框/圖塊可正確地解碼。舉例而言,在資料之階層式配置中,用於其他資料之預測的資
料亦可包括於時間子序列中。
圖5為說明(例如)無線電存取網路(RAN)之各種服務區的概念圖。服務區中之一些或全部可提供MBMS隨選操作(MooD)服務,例如,根據「第三代合作夥伴計劃;技術規範群組服務及系統態樣;多媒體廣播/多播服務(MBMS)改良;MBMS隨選操作(發行版本12)(3rd Generation Partnership Project;Technical Specification Group Services and System Aspects;Multimedia Broadcast/Multicast Service(MBMS)improvements;MBMS operation on demand(Release 12))」(3GPP TR 26.849,版本12.0.0,2014年12月12日),可於www.3gpp.org/DynaReport/26849.htm.獲得。用戶端裝置(諸如用戶端裝置40(圖1))可在此處藉由服務區識別符(SAI)識別之服務區(SAI1、SAI2及SAI3或其他服務區)間移動。因為某些服務區可提供MooD服務,而其他服務區不提供該服務,所以用戶端裝置可經組態以經由廣播(例如,eMBMS)來接收資料或使用單播來擷取媒體資料。詳言之,用戶端裝置40可在提供MooD服務之服務區中經由MooD服務來接收媒體資料,而在不提供MooD服務之服務區中經由單播服務來擷取媒體資料。
根據本發明之技術之一個使用情況係關於何時網路操作員計劃在服務區SAI1、SAI2及SAI3(場館附近、停車場等)中提供MooD服務。服務可在使用者服務描述(USD)中完全描述,因此不需要USD更新以發信涵蓋範圍之改變。USD可描述(例如)規劃涵蓋範圍之服務區資訊一服務之臨時行動群組識別符(TMGI),且單一MPD可描述所有廣播及/或單播表示。
在此實例中,MooD服務之TMGI啟動可包括以下內容。網路最初可啟動SAI1中之TMGI。對於位於SAI2中之使用者設備(UE)(亦即,諸如用戶端裝置40之用戶端裝置),TMGI不作用。用戶端裝置40
最初可開始使用單播之消耗服務。基於單播負載(經由消耗報告),網路隨後可啟動SAI2中之TMGI。用戶端裝置40接著可切換至廣播何時TMGI在其當前服務區(例如,SAI2)在作用中。
圖6為說明根據本發明之技術的用於MooD服務之端對端架構180的概念圖。在此實例中,架構180包括使用者設備(UE)182、無線電區域網路/演進封包核心(RAN/EPC)190、內容遞送網路(CDN)192、DASH編碼器194及廣播多播服務中心(BMSC)196。UE 182可對應於圖1之用戶端裝置40。DASH編碼器194可對應於圖1之內容準備裝置20之元件。
DASH編碼器194可使區段經由CDN 192可獲得,CDN可經由單播(UC)及經由BMSC 196來提供區段,BMSC提供諸如MBMS或eMBMS之廣播或多播服務。
UE 182包括DASH用戶端184、HTTP代理186及eMBMS中間軟體單元188。在此實例中,HTTP代理186攔截來自DASH用戶端184之HTTP GET請求且將該等請求重定向至CDN 192或中間軟體單元188。DASH用戶端184關於區段係經由單播抑或經由廣播而遞送至UE 182係不可知的。
BMSC 196包括消耗報告單元198、FLUTE單元200及攝取介面202。一般而言,BMSC 196經由攝取介面202自DASH編碼器194接收媒體資料,且根據FLUTE協定經由FLUTE單元200發送媒體資料。
在此實例中,UE 182向展示於BMSC 196中之消耗報告單元198發送消耗報告。UE 182報告媒體資料播放之開始及停止,以及當根據服務(例如,廣播或多播服務)消耗媒體資料時的週期性消耗報告。BMSC 196對在廣播不可用時經由單播來消耗DASH內容之UE進行計數。當單播負載超過某一臨限值時,BMSC 196可啟用廣播遞送。一旦廣播服務可獲得,BMSC 196即對經由廣播來消耗DASH內容之UE
進行計數。當經由廣播服務來消耗媒體資料之UE之數目低於某一臨限值時,BMSC 196可停用廣播遞送。
圖7為說明根據本發明之技術之實例方法的概念圖,在該實例方法中,DASH HTTP請求被定向至HTTP代理。關於圖2之實例組件來解釋圖7之方法。然而,應理解,其他裝置亦可經組態以執行圖7之方法,諸如圖6之UE 182。一般而言,在此實例方法中,HTTP代理單元108經組態以欄截來自DASH用戶端110之DASH請求且將此等請求轉送至本機主機(例如,本機伺服器單元102)或轉送至外部單播伺服器。
在此實例中,eMBMS中間軟體單元100包括關於需要使用HTTP代理單元108之服務的HTTP代理資訊。至eMBMS中間軟體單元100之應用程式介面包括代理資訊。媒體應用程式112可組態媒體播放器介面(由DASH用戶端110使用)以使用HTTP代理單元108。
最初,媒體應用程式112自eMBMS中間軟體單元100擷取服務清單(例如,使用者服務描述(USD))(210)。媒體應用程式112接著發送開始DASH服務(例如,MooD)之指令(212)。eMBMS中間軟體單元100判定MooD服務是否可獲得及是否在作用中(214),以判定是否使用廣播或多播或單播來消耗媒體資料。在任一情況下,在此實例中,eMBMS中間軟體單元100向媒體應用程式112發送服務開始通知(216)。
在此實例中,媒體應用程式112啟用HTTP代理單元108(218),從而組態DASH用戶端110以使用HTTP代理單元108(220)。一旦使用HTTP代理單元108之組態經啟用,DASH用戶端110即對媒體應用程式112做出回應(222)。媒體應用程式112接著向DASH用戶端110發送開始播放之指令(例如,對應於MPD中所通告之URL)(224)。DASH用戶端110又向HTTP代理單元108發送獲得可自URL獲得之媒體資料之
HTTP GET請求(226)。HTTP代理單元108又自本機伺服器單元102或自使用單播之CDN擷取所請求之媒體資料。在任一情況下,HTTP代理單元108將媒體資料遞送至DASH用戶端110,DASH用戶端將媒體資料傳回至媒體應用程式112。
圖8為說明每個媒體類型(例如,視訊及音訊)具有單一表示之實例媒體呈現描述(MPD)的概念圖。在發行版本12中,使用者服務描述(USD)元素係根據deliveryMethod。該等USD元素可描述經由r12:broadcastAppService之廣播表示及經由r12:unicastAppService之單播表示。
在此實例中,MPD含有每個媒體分量(例如,音訊及視訊)之單一表示。同樣,MPD@timeShiftBufferDepth具有大於零(0)之值。在圖8之實例中,視訊資料(表示為「V1」)及音訊資料(表示為「A1」)可在deliveryMethodType元素的r12:broadcastAppService之basePattern元素及r12:unicastAppService之basePattern元素中規定。
圖9為說明用於在單播至廣播之切換期間組態HTTP代理單元以指導DASH用戶端之實例技術的概念圖。圖9說明系統230,其包括通常對應於圖1、圖2及圖6之類似組件之各種組件。詳言之,系統230包括DASH用戶端232(其可對應於圖2之DASH用戶端110或圖6之DASH用戶端184)、HTTP代理單元234(其可對應於圖2之HTTP代理單元108或圖6之HTTP代理單元186)、代理控制單元236(其可形成HTTP代理本身之部分或為單獨控制單元)、本機伺服器238(其可對應於圖2之本機伺服器單元102或圖6之eMBMS中間軟體單元188)及CDN邊緣伺服器240(其可對應於圖1之伺服器裝置60或圖6之CDN 192之伺服器)。
圖9亦說明在圖式之頂部之時間線,及在時間線期間之各種時間所執行之動作。在時間<T1,HTTP代理234使用單播來提取區段,且代理控制單元236使用來自USD及MPD之資訊來組態重定向規則。詳
言之,在時間T1之前,假定eMBMS經停用。因此,代理控制單元236組態HTTP代理單元234以不執行重定向(242)。因此,當DASH用戶端232提交規定特定URI之HTTP GET請求(244)時,HTTP代理單元234將該請求轉送至CDN邊緣伺服器240(246)。CDN邊緣伺服器240藉由向HTTP代理單元234遞送所請求之媒體資料而做出回應(248),HTTP代理單元將媒體資料轉送至DASH用戶端232(250)。
當eMBMS經啟用時,BM-SC將廣播實況邊緣區段。在時間=T1,eMBMS經啟用,且因此,代理控制單元236接收來自本機伺服器238的區段可獲得之指示(252)。作為回應,代理控制單元236組態HTTP代理單元234以將對媒體資料之請求重定向至本機伺服器單元238(例如,規定包括DASH用戶端232及HTTP代理234之用戶端裝置之本機主機位址)(254)。在時間T1之後,廣播區段SN可獲得,且啟用至本機伺服器之重定向。相應地,當DASH用戶端232向HTTP代理單元234發送規定區段SN之URI之HTTP GET請求(256)時,HTTP代理單元234將該請求重定向至本機伺服器238(258)。若所請求之區段可獲得,則本機伺服器238會將該區段遞送至HTTP代理單元234(266),且HTTP代理單元234將該區段轉送至DASH用戶端232(268)。
DASH用戶端可以(在時間偏移緩衝器(TSB)窗口內)請求非實況邊緣區段。因此,本機伺服器單元238可判定所請求之區段不可獲得,從而觸發HTTP 404錯誤(260)。此等HTTP 404錯誤可使用單播提取(例如,來自CDN邊緣伺服器)在本機伺服器中進行處置。亦即,本機伺服器238向CDN邊緣伺服器240請求區段(262),CDN邊緣伺服器可向本機伺服器238發送所請求之區段(264)。本機伺服器238接著可前進至向HTTP代理單元234發送區段,如上文所論述。
圖10為說明用於在廣播至單播之切換期間組態HTTP代理單元234以指導DASH用戶端232之實例技術的概念圖。此實例可接著圖9之實
例繼續。亦即,圖9及圖10中之時間線相同。然而,應理解,亦可進行自單播至廣播之先前及/或後續切換,例如,如上文關於圖9所論述。
在此實例中,在時間T2之前,廣播服務可獲得。因此,系統230之組件可如上文關於圖9所論述地操作。亦即,在該廣播服務可獲得時,代理控制單元236組態HTTP代理單元234以將對媒體資料之請求重定向至本機伺服器單元238(例如,規定包括DASH用戶端232及HTTP代理234之一用戶端裝置之一本機主機位址)(270)。相應地,當DASH用戶端232向HTTP代理單元234發送規定區段之URI之HTTP GET請求(272)時,HTTP代理單元234將該請求重定向至本機伺服器238(274)。若所請求之區段可獲得,則本機伺服器238會將該區段遞送至HTTP代理單元234(282),且HTTP代理單元234將該區段轉送至DASH用戶端232(284)。若所請求之區段不可獲得,則本機伺服器238可另外向CDN邊緣伺服器240請求區段(278),CDN邊緣伺服器可將所請求之區段遞送至本機伺服器238(280)。
在此實例中,在時間=T2,廣播服務不再可獲得。因此,本機伺服器238可發送指示區段不再可供代理控制單元236使用的資料(例如,最後所接收之區段的指示)(286)。作為回應,代理控制單元236可組態HTTP代理單元234以使用單播來滿足後續區段請求(286)。接著,HTTP代理單元234停止重定向至本機伺服器238。習知地,此將意謂,若DASH用戶端232請求TSB窗口內之區段(例如,區段SM-2)(290),則HTTP代理單元234可將該請求轉送至CDN邊緣伺服器240,CDN邊緣伺服器可將該區段遞送至HTTP代理單元234(294),HTTP代理單元可將該區段轉送至DASH用戶端232(296)。然而,一或多個區段可為在本機可獲得,但可能並非可遞送的。問題在於,在轉變至單播之後,在本機快取之區段的較低有效利用率。根據本發明之技術,
如下文所更詳細論述,系統230可經組態以比習知技術更有效地使用本機伺服器單元238之快取區段。
圖11為說明根據本發明之技術的HTTP代理單元234在廣播至單播之切換期間之實例組態的概念圖。一般而言,代理控制單元236組態HTTP代理單元234以將對區段編號在[N_start,N_end]之間的區段URL之請求定向至本機伺服器單元238,且提供來自本機伺服器單元238的能夠滿足之區段URL之清單。在此實例中,N_start表示在本機伺服器中快取的最舊區段之區段編號,而N_end表示在本機伺服器中快取的最新區段之區段編號。當本機伺服器單元238移除已快取區段時,代理控制單元236更新重定向規則。
詳言之,在此實例中,本機伺服器單元238向代理控制單元236發送可獲得區段之清單,例如呈初始清單(300A)及清單之定期更新(300B)之形式。代理控制單元236因此根據重定向規則(302A、302B)來組態HTTP代理單元234,該等重定向規則使HTTP代理234將對可自本機伺服器238獲得之特定區段的請求重定向至本機伺服器238。因此,當DASH用戶端232發送對可自本機伺服器單元238獲得之區段之清單中的區段中之一者的請求(304)時,HTTP代理單元234將該請求重定向至本機伺服器單元238(306),本機伺服器單元藉由將所請求之區段遞送至HTTP代理單元234來作出回應(308)。另一方面,當DASH用戶端232請求不在可獲得區段之清單中之區段(312)時,HTTP代理單元234將該請求轉送至CDN邊緣伺服器240(314),CDN邊緣伺服器將所請求之區段遞送至HTTP代理單元234(316),HTTP代理單元將該區段轉送至DASH用戶端232(318)。
圖12為說明MPD包括多個表示之實例使用情況的概念圖。在此實例中,僅展示視訊表示,但應理解,多個音訊表示亦可包括於MPD中。在此實例中,MPD含有每個媒體分量之多個表示,所有表示可經
由單播獲得,MPD@timeShiftBufferDepth>0,且當廣播可獲得(RepID=V1)時,DASH用戶端不能消耗僅單播表示(RepID=V2,V3)。
在圖12之實例中,不同類型之視訊資料(表示為「V1」、「V2」及「V3」)可在deliveryMethodType元素之r12:unicastAppService之basePattern元素中加以規定。然而,視訊資料「V1」亦可經由廣播獲得,且因此,V1亦可在deliveryMethodType元素之r12:broadcastAppService之basePattern元素中加以規定。
圖13為說明根據關於圖12所描述之使用情況的實例技術的概念圖。在時間<T1,使用單播來提取表示2之區段。詳言之,在時間T1之前,代理控制單元236組態HTTP代理單元234以不執行重定向(320)。因此,當DASH用戶端232在時間T1之前發送對區段之HTTP GET請求(322)時,HTTP代理單元234將該請求轉送至CDN邊緣伺服器240(324)。CDN邊緣伺服器240藉由向HTTP代理單元234發送所請求之媒體資料而對該請求做出回應(326),HTTP代理單元將媒體資料轉送至DASH用戶端232(328)。
當eMBMS經啟用時,BM-SC將廣播表示1之實況邊緣區段。在時間=T1,廣播區段XN可在本機伺服器238獲得,因此本機伺服器238向代理控制單元236發送指示區段XN之可獲得性的資料(330)。因此,代理控制單元236組態HTTP代理單元234以命令DASH用戶端232請求表示1之資料,而非請求表示2或表示3之資料。伺服器及網路輔助DASH(SAND)強制訊息可用以使DASH用戶端232改變至表示1(在此實例中,廣播表示)。
亦即,當DASH用戶端232發送對表示2或表示3之資料的請求(334)時,HTTP代理單元234實際上以規定表示1之HTTP重定向(例如,HTTP 300回應)作為回應(336)。因此,DASH用戶端232請求表示1之區段(338),HTTP代理單元234攔截該區段且將該區段重定向至本
機伺服器238(340)。若所請求之區段可獲得,則本機伺服器238將該區段轉送至HTTP代理234(348)。DASH用戶端232可請求TSB窗口內之表示1的非實況邊緣區段。在此情況下,本機伺服器238可判定關於該區段存在HTTP 404錯誤(342),且作為回應,向CDN邊緣伺服器240請求該區段(344),作為回應,CDN邊緣伺服器可向本機伺服器238發送該區段(346)。在任一情況下,HTTP代理單元234將所接收之區段傳回至DASH用戶端232(350)。
圖14為說明實例SAND強制訊息的概念圖。SAND結構描述係定義於MPEG中。類似於SAND結構描述,SAMMO結構描述係定義於「第三代合作夥伴計劃;技術規範群組服務及系統態樣;多媒體廣播/多播服務(MBMS)使用者服務指南(發行版本12)(TR 26.946,2015年3月,可在www.3gpp.org/DynaReport/26946.htm獲得)」中。
SAND訊息可包括以下元素:@baseURL 348用以載運識別MPD中之表示之URI首碼;Status 350提供所有相關聯資源(可獲得、不可獲得或快取的)之狀態;Reasons:原因之文字資訊。類似地,MPEG定義可包括類似資訊之SAND訊息。
圖15為說明當(例如,自HTTP代理單元)接收HTTP 300回應時的DASH用戶端行為之實例的概念圖。關於圖9至圖11及圖13之DASH用戶端232及HTTP代理單元234來解釋圖15之方法。然而,應理解,圖6之DASH用戶端184及HTTP代理單元186或圖2之DASH用戶端110及HTTP代理單元108亦可經組態以執行圖15之方法。
在此實例中,DASH用戶端232在廣播服務可獲得之前向HTTP代理單元234發送一或多個GET請求,且HTTP代理單元234根據單播將該等請求轉送至伺服器裝置,且亦將對該等請求之回應提供至DASH用戶端232(360A至360N)。在廣播服務變得可獲得之後,當DASH用戶端232發送對媒體資料的請求時,HTTP代理單元234可回覆以HTTP
300回應,其包括重定向位址(例如,本機主機位址)及不同表示之(例如,區段本機快取的廣播表示)之識別符(362)。此可使DASH用戶端232改變表示(364),且接著發送規定新選擇之表示的後續HTTP GET請求,HTTP代理單元234將該等請求重定向至本機伺服器(例如,本機伺服器單元102)且將包括所請求之媒體資料之回覆傳回至DASH用戶端232(366A至366B)。
圖16為說明根據圖12之使用情況當在廣播至單播之切換期間組態HTTP代理單元以指導DASH用戶端時之實例技術的概念圖。亦即,在此實例中,廣播服務最初在時間T2之前可獲得,且在時間T2變得不可獲得。圖16之實例可表示關於圖13所論述之實例的延續。
在時間T2之前,代理控制單元236組態HTTP代理單元234以將規定表示2或表示3之請求重定向至表示1(且重定向至本機伺服器238,而非重定向至CDN邊緣伺服器240)(370)。在此實例中假定DASH用戶端232先前已選擇表示1。因此,DASH用戶端232請求表示1之區段(372),HTTP代理單元234攔截該區段且將該區段重定向至本機伺服器238(374)。若所請求之區段可獲得,則本機伺服器238將該區段轉送至HTTP代理234(382)。DASH用戶端232可請求TSB窗口內之表示1的非實況邊緣區段。在此情況下,本機伺服器238可判定關於該區段存在HTTP 404錯誤(376),且作為回應,向CDN邊緣伺服器240請求該區段(378),作為回應,CDN邊緣伺服器可向本機伺服器238發送該區段(380)。在任一情況下,HTTP代理單元將所接收之區段傳回至DASH用戶端232(384)。
在時間=T2,本機伺服器238向代理控制單元236發送廣播服務不再可獲得之指示(386)。因此,代理控制單元236組態HTTP代理單元234以不將請求重定向至本機伺服器238(388)。相應地,在DASH用戶端232請求時間T2之後的區段(諸如區段XM)(390)之後,HTTP代理
單元234可使用單播來滿足區段XM請求。亦即,HTTP代理234可向CDN邊緣伺服器240提交對區段XM的請求(392),CDN邊緣伺服器可發送包括所請求之媒體資料之回應(394)。HTTP代理單元234可將所接收之媒體資料與指示使用SAND幫助訊息亦可獲得其他單播表示的資料一起轉送至DASH用戶端232(396)。舉例而言,HTTP代理單元234可發送根據圖14之SAND訊息。稍後,在時間T2之後,基於單播頻寬,DASH用戶端232可改變至表示2(或表示3)。潛在問題為使用者可能返回TSB窗口內之表示2之區段SM-2,可使用單播遞送,但表示1之類似區段XM-2可能已在本機伺服器238快取。
圖17為說明當接收SAND幫助時的DASH用戶端行為之實例的概念圖。關於圖9至圖11、圖13及圖16之DASH用戶端232及HTTP代理單元234來解釋圖17之方法。然而,應理解,圖6之DASH用戶端184及HTTP代理單元186或圖2之DASH用戶端110及HTTP代理單元108亦可經組態以執行圖17之方法。
在此實例中,當廣播服務可獲得時,DASH用戶端232向HTTP代理單元234發送一或多個GET請求,且HTTP代理單元234將該等請求重定向至本機伺服器,且亦將對該等請求之回應提供至DASH用戶端232(400A至400N)。在廣播服務變得不可獲得之後,當DASH用戶端232發送對媒體資料的請求時,HTTP代理單元234可回覆以HTTP 20x回應,其包括規定不同表示(例如,單播表示)之URL的SAND(或SAMMO)訊息(402)。此可使DASH用戶端232改變表示(404),且接著發送規定新選擇之表示的後續HTTP GET請求,HTTP代理單元234將該等請求轉送至單獨的伺服器裝置且將包括所請求之媒體資料之回覆傳回至DASH用戶端232(406A至406B)。
圖18為說明根據本發明的用於使用eMBMS DASH感知網路元件(DANE)之實例技術的概念圖。亦即,圖18之系統420包括DASH用戶
端428、CDN邊緣伺服器430及包括eMBMS DANE 424及本機伺服器246之eMBMS中間軟體單元422。下文描述根據圖18之實例。
在時間<T1,使用單播來提取表示2之區段。亦即,最初,eMBMS DANE 424經組態以不使用重定向(440)。因此,當DASH用戶端428請求表示2之區段(442)時,eMBMS DANE 424將該請求轉送至CDN邊緣伺服器430(444)。CDN邊緣伺服器430向eMBMS DANE 424發送包括所請求之媒體資料之回應(446),eMBMS DANE 424將該回應轉送至DASH用戶端428(448)。
當eMBMS經啟用時,BM-SC(未圖示)會向本機伺服器426廣播表示1之實況邊緣區段。因此,本機伺服器426判定廣播表示(亦即,表示1)之區段可獲得(450)。相應地,eMBMS中間軟體單元422組態eMBMS DANE 424以將對表示2及表示3之請求重定向至表示1,且將對表示1之請求重定向至本機伺服器246(452)。相應地,當DASH用戶端428請求例如表示2之區段(454)時,表示1之對應區段已藉由本機伺服器426經由廣播服務接收,eMBMS DANE 424可發送規定至表示1而非至表示2之重定向的SAND強制訊息(456)。此可使DASH用戶端428切換至表示1且請求來自表示1而非來自表示2之區段(458)。eMBMS DANE 424接著可將該請求轉送至本機伺服器426,本機伺服器可在回應中向eMBMS DANE 424發送區段(468),假定區段係本機快取的。若區段並非本機快取的,則本機伺服器426可判定HTTP 404錯誤已出現(462),且因此向CDN邊緣伺服器430請求該區段(464),CDN邊緣伺服器可向本機伺服器426發送該區段(466),本機伺服器可向eMBMS DANE 424發送該區段(468)。在任一情況下,eMBMS DANE 424可向DASH用戶端428發送該區段(470)。
圖19為說明根據本發明的用於使用eMBMS DASH感知網路元件(DANE)之實例技術的概念圖。此實例可接著圖18之實例繼續。亦
即,圖18及圖19中之時間線相同。然而,應理解,亦可進行自單播至廣播的後續切換,例如,如上文關於圖18所論述。
最初,eMBMS DANE 424經組態以將對表示2及表示3的請求重定向至表示1且向本機伺服器426發送對表示1的請求(480)。在此實例中亦假定,DASH用戶端428在時間T2之前經組態以選擇表示1。因此,DASH用戶端428發送對來自表示1之區段的請求(482)。eMBMS DANE 424將此請求轉送至本機伺服器426(484)。在此實例中,本機伺服器426判定,存在HTTP 404錯誤(486)且所請求之區段不可獲得(488)。此使eMBMS中間軟體單元422組態eMBMS DANE 424以將對表示1的請求重定向至表示2或表示3(490)。
在此實例中,本機伺服器426亦將HTTP 404錯誤傳回至eMBMS DANE 424(492)。因此,eMBMS DANE 424將重定向訊息傳回至DASH用戶端428,該重定向訊息指示DASH用戶端428應選擇不同表示,例如,表示2或3(494)。此重定向訊息可包含SAND強制訊息。在此實例中,DASH用戶端428選擇表示2(基於頻寬可獲得性),且因此向eMBMS DANE 424發送對來自表示2之對應區段的請求(496)。eMBMS DANE 424將該請求轉送至CDN邊緣伺服器430(498),CDN邊緣伺服器以所請求之區段來回應eMBMS DANE 424(500)。因此,eMBMS DANE 424將該區段轉送至DASH用戶端428(502)。使用者可以返回至TSB窗口內的表示2之區段SM-2。可以使用單播遞送,但表示1之類似區段XM-2可能已在本機伺服器426快取。
圖20為說明HTTP代理單元234在替代之本機快取區段可獲得時幫助DASH用戶端232使用此等區段的實例技術的概念圖。在此實例中,本機伺服器238向代理控制單元238發送指示可獲得區段之初始訊息(510A),以及指示經更新的可獲得區段之更新訊息(510B)。代理控制單元236組態HTTP代理單元234以將表示1之已快取區段(例如,區
段編號在[N_start,N_end]之間的區段)的區段URL定向至本機伺服器238(512A),且定期提供來自本機伺服器238的能夠滿足之區段URL的經更新清單(512B)。在此實例中,N_start表示在本機伺服器238中快取的最舊區段之區段編號,而N_end表示在本機伺服器238中快取的最新區段之區段編號。
當本機伺服器單元移除已快取區段時,代理控制單元236更新重定向規則(512B)。DASH用戶端232可請求未快取之區段(514),在此情況下,HTTP代理單元234可將該請求轉送至CDN邊緣伺服器240(516),CDN邊緣伺服器可藉由向HTTP代理單元234發送該區段而作出回應(518),HTTP代理單元可將該區段轉送至DASH用戶端232(520)。然而,若DASH用戶端232發送對表示之區段(其未快取,但對應於不同表示之快取區段)的請求,則HTTP代理單元234可發送SAND輔助訊息以通知DASH用戶端232:表示1的自N_start至N_end之區段已被快取。舉例而言,DASH用戶端232可向HTTP代理單元234請求表示2之區段N_start,且HTTP代理單元234可回應以指示表示1之區段N_start可獲得(例如,藉由本機伺服器238快取)的SAND訊息。
作為回應,DASH用戶端232可改為請求來自表示1的已快取之區段(522)。因此,HTTP代理單元234將對該區段的請求重定向至本機伺服器238(524),本機伺服器可將該區段提供至HTTP代理單元234(526),HTTP代理單元可將該區段轉送至DASH用戶端232(528)。
SAND訊息可使用@baseURL來識別區段URL,如下文之實例中所示。
另外或在替代方案中,此資料可與在廣播至單播轉變期間(例如,在圖16之時間=T2)所發送的較舊SAND輔助訊息合併。
圖21為說明根據本發明之一實例中之原因資料530(其可包括於SAND訊息中)的概念圖。在此實例中,對於狀態=已快取之資源,屬性「reason」530可載運表示N_start及N_end的逗號隔開之字串(亦即,逗號隔開之值)。舉例而言:
圖22為說明根據本發明的可包括於SAND訊息中之資料532之另一實例集合的概念圖。與添加資料至如圖21中所示之「reason」欄位
530對照,在此實例中,資料532可包括具有如下兩個欄位之訊息:「from」欄位及「end」欄位。亦即,兩個額外屬性(「From」及「To」)被添加至ResourceStatus以分別地識別N_start及N_end。以下內容為實例。
替代地,「From」可識別seg(N_start)之可獲得性開始時間且「To」可識別seg(N_end)之可獲得性開始時間。
在根據本發明之技術的一個實例中,可使用規則表示。對於狀態=已快取之資源,屬性baseURL可載運正規表示以識別在N_start(=10)與N_end(=100)之間的區段URL之範圍。舉例而言:
在根據本發明之技術的一個實例中,區段清單中之狀態之次序可藉由使用SAND結構描述中之元素DaneResourceStatus來改變。如上文所指出,正規表示可在「resource」部分中使用以用於緊湊表示
SAND訊息。在此實例中,可使用新狀態:「available/cached」用以指示:當在區段實況邊緣時間線期間被請求時,區段將隨HTTP狀態200OK傳回,或當在MPD中所指示之TSB時間線窗口內被請求時,區段將隨HTTP status 200 OK傳回。以下內容為實例。
圖23為說明具有多個表示之實例MPD的概念圖。在此實例中,僅展示視訊表示,但應理解,多個音訊表示亦可包括於MPD中。根據此實例之使用情況為:MPD含有每個媒體分量多個表示,廣播表示不可經由單播獲得(例如,廣播表示係以經由單播連接無法滿足之高位元速率進行編碼),MPD@timeShiftBufferDepth>0,且當廣播可獲得(RepID=V1)時,DASH用戶端不能消耗實況邊緣單播表示(RepID=V2,V3)。
在圖23之實例中,不同類型之視訊資料(表示為「V1」、「V2」及「V3」)能夠在deliveryMethodType元素之r12:unicastAppService之basePattern元素或deliveryMethodType元素之r12:broadcastAppService之basePattern元素中規定。在此實例中,「V1」可經由廣播獲得,且因此,「V1」可在r12:broadcastAppService之basePattern元素中規定。同樣,在此實例中,「V2」及「V3」可經由單播獲得,且因此,「V2」及「V3」可在r12:unicastAppService之basePattern元素中規定。
圖24為說明根據圖23之使用情況用於在單播服務至廣播服務之切換期間組態HTTP代理單元234以指導DASH用戶端232之實例技術的概念圖。當eMBMS經啟用時,BM-SC(未圖示)會向本機伺服器238廣播表示1之實況邊緣區段。代理控制單元236組態HTTP代理單元234以:將請求規定表示1之URL(區段編號大於[N_start])的區段定向至本機伺服器238,且將表示2及表示3之區段URL(區段編號小於[N_start])定向至CDN邊緣伺服器240(542)。
在時間<T1,使用單播來提取表示2之區段。舉例而言,本機伺服器238可向代理控制單元236通告可獲得區段之清單(540)。此清單可包括包括區段N及在區段N之後的區段。代理控制單元236組態HTTP代理單元234以將對該清單中之媒體資料的請求重定向至本機伺
服器238(542)。因此,若DASH用戶端232請求區段N之前的區段(544),則HTTP代理單元234可將該請求轉送至CDN邊緣伺服器240(546)。CDN邊緣伺服器可向HTTP代理234發送所請求之區段(548),HTTP代理可將該區段轉送至DASH用戶端232(550)。
在此實例中,N_start表示在本機伺服器中快取之最舊區段之區段編號。SAND強制可用以允許DASH用戶端232改變至廣播表示1之區段。亦即,若DASH用戶端232請求表示2之一區段(其對應於表示1之一區段)(552),則HTTP代理單元234可向DASH用戶端232發送指示表示1之對應區段可獲得的SAND強制訊息(554)。相應地,DASH用戶端232可切換至表示1且請求來自表示1之區段(556)。HTTP代理單元234將該請求重定向至本機伺服器238(558)。本機伺服器238可在回應中向HTTP代理單元234發送區段(560),HTTP代理單元可將該區段轉送至DASH用戶端232(562)。
圖25為說明根據圖23及圖24之使用情況在單播服務至廣播服務之切換期間可使用之實例SAND訊息的概念圖。在此實例中,SAND訊息包括規定廣播表示之「From」屬性及單播表示之「To」屬性的資料564。以下內容為實例。
圖26為說明根據圖23至圖25之使用情況用於在廣播服務至單播服務之切換期間組態HTTP代理單元234以指導DASH用戶端232之實例技術的概念圖。圖26之時間線可與圖24之時間線相同,但圖26之該等技術被描述為遵照圖24之實例中所執行的該等技術。
代理控制單元236可組態HTTP代理234以將對區段N之前之區段的請求重定向至與單播服務相關聯之表示(例如,表示2或表示3),但將對包括區段N及區段N之後之區段的請求重定向至與廣播服務相關聯之表示(例如,表示1)(570)。因此,當DASH用戶端232請求在本機伺服器238快取的來自表示1之區段(572)時,HTTP代理單元234可將該請求重定向至本機伺服器238(574)。本機伺服器238可藉由向HTTP代理單元234發送該區段而作出回應(576),HTTP代理單元可將該區段轉送至DASH用戶端232(578)。
本機伺服器238亦可向代理控制單元236發送指示哪些區段係在本機快取之資料(580)。在此實例中,假定:在時間T2,廣播服務不再可獲得。相應地,代理控制單元236組態HTTP代理單元234:以將對可獲得的表示1之區段的請求重定向至本機伺服器238,但將其他請求轉送至CDN邊緣伺服器240(582)。因此,若DASH用戶端232請求自本機伺服器238不可獲得的表示1之區段(例如,區段M及超出其之區段)(584),則HTTP代理單元234發送指示此區段不可獲得的SAND強制訊息,但對應區段可自不同表示獲得(586)。
因此,DASH用戶端232可請求來自例如表示2的在區段M之後之
區段(588),且HTTP代理單元234可將該請求轉送至CDN邊緣伺服器240(590)。CDN邊緣伺服器接著可藉由向HTTP代理單元234發送所請求之區段而作出回應(592),HTTP代理單元可將該區段轉送至DASH用戶端232(594)。在T2之後的時間,使用者可以返回至在接收自表示1之區段之TSB窗口內的較早區段(例如,表示2之區段SM-2)。在此情況下,可使用單播遞送,但表示1之類似區段XM-2可能已被快取。因此,代理控制單元236可組態HTTP代理單元234以將對本機伺服器238之已快取區段之URL範圍內之表示1的請求定向至本機伺服器238。同樣,SAND幫助可用以允許DASH用戶端改變至快取(表示1之)廣播區段。
圖27為說明根據本發明之技術的MPD之資料之實例集合的概念圖。此實例表示根據本發明之技術的另一使用情況。在此使用情況中,MPD含有每個媒體分量之多個表示,廣播表示不可經由單播獲得,MPD@timeShiftBufferDepth>>0(很大),且UE保持進出廣播涵蓋範圍移動。出現之問題為本機伺服器中之已快取區段之非連續序列。
在圖27之實例中,不同類型之視訊資料(表示為「V1」、「V2」及「V3」)能夠在deliveryMethodType元素之r12:unicastAppService之basePattern元素或deliveryMethodType元素之r12:broadcastAppService之basePattern元素中規定。在此實例中,「V1」可經由廣播獲得,且因此,「V1」可在r12:broadcastAppService之basePattern元素中規定。同樣,在此實例中,「V2」及「V3」可經由單播獲得,且因此,「V2」及「V3」可在r12:unicastAppService之basePattern元素中規定。
圖28為針對圖27之使用情況的可包括於SAND訊息中之資料596之實例集合的概念圖。詳言之,資料596規定「from」屬性(指示本機伺服器之可獲得的已快取區段之開始)及「to」屬性(指示本機伺服器之可獲得的已快取區段之結束)。多個輸入項可包括於廣播表示之
SAND訊息中,例如,如下文之實例中所示。
圖29為說明用於使用eMBMS DANE 424幫助DASH用戶端428以使用替代之本機區段(而非自CDN邊緣伺服器430擷取類似區段)之實例技術的概念圖。儘管圖29中未圖示,但eMBMS中間軟體單元422可進一步包括一代理控制單元,如上文之其他實例中所示,且該代理控制單元可組態例如eMBMS中間軟體單元422之eMBMS DANE 424。根據一個實例:
●該代理控制單元組態eMBMS DANE 424以:
○將對表示1之區段URL(區段編號在[N_start,N_end]之間)的請求定向至本機伺服器426。
■N_start表示在本機伺服器中快取之最舊區段之區段編號。
■N_end表示在本機伺服器中快取之最新區段之區段編號。
○提供來自本機伺服器426的能夠滿足之區段URL之清單。
○當本機伺服器426移除已快取區段時,該代理控制單元可更新eMBMS DANE 424之重定向規則。
○SAND幫助訊息可用以通知DASH用戶端428:自N_start至N_end的表示1之區段已在本機伺服器426快取。
詳言之,本機伺服器426可判定最初哪些區段可獲得(600A)且在區段自快取移除時定期地判定哪些區段可獲得(600B)。因此,基於最初可獲得之區段(602A)且回應於來自本機伺服器426之更新(602B),eMBMS中間軟體單元422可用重定向規則來組態eMBMS DANE 424。詳言之,若來自單播表示之區段編號係在本機伺服器426本機快取,則eMBMS中間軟體單元422可組態eMBMS DANE 424以將對彼等區段的請求重定向至廣播表示之對應區段。
因此,若DASH用戶端428請求來自單播表示之區段(其不具有來自廣播表示的對應已快取區段)(604),則eMBMS DANE 424可將該請求轉送至CDN邊緣伺服器430(606)。CDN邊緣伺服器430可藉由向eMBMS DANE 424發送所請求之區段而作出回應(608),eMBMS DANE可將該區段轉送至DASH用戶端428(610)。另一方面,若DASH用戶端428請求來自單播表示之區段(其具有來自廣播表示之對應已快取區段)(612),則eMBMS DANE 424可將該請求重定向至本機伺服器426以擷取廣播表示之對應區段(614)。本機伺服器246接著可藉由向eMBMS DANE 424發送所請求之區段而作出回應(616),eMBMS DANE可將該區段轉送至DASH用戶端428(618)。
此外,根據本發明之技術,諸如daneResourceStatus參數之參數可用以允許DANE向DASH用戶端發信可獲得且可能預期可獲得之資料結構且亦發信哪些資料結構不可獲得。此方法與上文所提及之資源狀態互補,此係因為該方法允許在狀態訊息時的可獲得區段之表示。
資源可顯式地列出或提供為清單,或該等資源可藉由某一縮寫訊息格式提供。典型使用情況可如下所示:
●DANE可加入遞送接近區段可獲得性時間之區段的上游多播/廣播服務。此意謂區段僅可自在快取中在前之特定時間獲得。
●特定區段丟失,且此丟失係藉由DANE偵測為丟失且不可獲得。
為解決此問題,考慮現有SAND訊息之擴展。在下文論述某些更多細節。
源資料及目的地資料可發信如下:
類型:PER
發送器:快取DANE
接收器:DASH用戶端(及中間DANE)
資料表示,可為表之格式。表可根據下表。
狀態指示符(根據@status)及狀態指示符之語義可如下所述。
上表之資源群組元素可定義具有多個區段之字串。為了表達不同類型使用情況及壓縮訊息大小,准許某些簡化的正規表示型樣。資源群組未指示:對於能夠藉由此型樣產生之所有資源應用狀態,而僅針對媒體呈現中所引用之資源與藉由表示型樣產生之資源的交叉應用狀態
正規表示型樣可遵循POSIX標準(攜帶型作業系統介面)。作為概述,以下元字元可用以表達一群資源。
發送器側邏輯可根據以下的偽碼。
圖30為說明根據本發明之技術之實例方法的流程圖。圖30之方法可由一用戶端裝置之一中間軟體單元來執行,該中間軟體單元控制該用戶端裝置之一HTTP代理單元。舉例而言,圖30之方法可由圖2之eMBMS中間軟體單元100、圖6之eMBMS中間軟體單元188、例如圖9之代理控制單元236或例如圖18之中間軟體單元422來執行。為了實例及解釋之目的,圖30之方法經解釋為由圖2之中間軟體單元100來執行。如圖2中所示,中間軟體單元100包括HTTP代理108及本機伺服器單元102。
最初,中間軟體單元100經由一廣播服務來接收一媒體工作階段之媒體資料之一第一集合(630)。中間軟體單元100稍後(亦即,在接收到媒體資料之該第一集合之後)可判定該廣播服務不再可獲得(632)。基於該廣播服務不再可獲得之該判定,中間軟體單元100可自藉由該用戶端裝置執行之一串流應用程式(例如,DASH用戶端110)接收經由一單播服務來擷取該媒體工作階段之媒體資料之一第二集合的一請求,其中該請求規定在該用戶端裝置外部之一位址(634)。媒體資料之第二集合可包括於先前經由廣播服務接收的媒體資料之第一集合內。因此,回應於該請求,當媒體資料之該第二集合先前係經由該廣
播服務接收到時,中間軟體單元100可使一HTTP代理單元(例如,圖2之HTTP代理單元108)將該請求重定向至一本機伺服器單元(例如,本機伺服器單元102(圖2))(636)。
在一或多個實例中,所描述之功能可以硬體、軟體、韌體或其任何組合實施。若以軟體實施,則該等功能可作為一或多個指令或程式碼而儲存於電腦可讀媒體上或經由電腦可讀媒體進行傳輸,且由基於硬體之處理單元執行。電腦可讀媒體可包括電腦可讀儲存媒體,其對應於有形媒體,諸如資料儲存媒體,或包括促進將電腦程式自一處傳送至另一處(例如,根據通信協定)的任何媒體之通信媒體。以此方式,電腦可讀媒體大體可對應於(1)非暫時性之有形電腦可讀儲存媒體,或(2)諸如信號或載波之通信媒體。資料儲存媒體可為可由一或多個電腦或一或多個處理器存取以擷取用於實施本發明中所描述之技術的指令、程式碼及/或資料結構的任何可用媒體。電腦程式產品可包括電腦可讀媒體。
借助於實例而非限制,此等電腦可讀儲存媒體可包含RAM、ROM、EEPROM、CD-ROM或其他光碟儲存裝置、磁碟儲存裝置或其他磁性儲存裝置、快閃記憶體或可用以儲存呈指令或資料結構形式之所要的程式碼且可由電腦存取的任何其他媒體。又,將任何連接恰當地稱為電腦可讀媒體。舉例而言,若使用同軸纜線、光纜、雙絞線、數位用戶線(DSL)或無線技術(諸如紅外線、無線電及微波)自網站、伺服器或其他遠端源傳輸指令,則同軸纜線、光纜、雙絞線、DSL或無線技術(諸如紅外線、無線電及微波)包括於媒體之定義中。然而,應理解,電腦可讀儲存媒體及資料儲存媒體不包括連接、載波、信號或其他暫時性媒體,而是針對非暫時性有形儲存媒體。如本文中所使用之磁碟及光碟包括光碟(CD)、雷射光碟、光學光碟、數位影音光碟(DVD)、軟碟及藍光光碟,其中磁碟通常以磁性方式再生資料,而光
碟用雷射以光學方式再生資料。上文各者之組合亦應包括於電腦可讀媒體之範疇內。
指令可由一或多個處理器執行,該一或多個處理器諸如一或多個數位信號處理器(DSP)、通用微處理器、特殊應用積體電路(ASIC)、場可程式化邏輯陣列(FPGA)或其他等效的整合或離散邏輯電路。相應地,如本文中所使用之術語「處理器」可指上述結構或適合於實施本文中所描述之技術的任何其他結構中的任一者。另外,在一些態樣中,本文中所述之功能性可提供於經組態用於編碼及解碼的專用硬體及/或軟體模組內,或併入於組合式編碼解碼器中。而且,該等技術可完全實施於一或多個電路或邏輯元件中。
本發明之技術可以多種器件或裝置實施,該等裝置或設備包括無線手機、積體電路(IC)或IC集合(例如,晶片組)。本發明中描述各種組件、模組或單元以強調經組態以執行所揭示之技術之器件的功能態樣,但未必要求由不同硬體單元來實現。確切地說,如上所述,各種單元可與合適的軟體及/或韌體一起組合在編解碼器硬體單元中或由互操作硬體單元之集合提供,硬件單元包括如上文所描述的一或多個處理器。
已描述各種實例。此等及其他實例處於以下申請專利範圍之範疇內。
Claims (39)
- 一種藉由一用戶端裝置之一中間軟體單元來擷取媒體資料之方法,其中該中間軟體單元控制該用戶端裝置之一超文字傳送協定(HTTP)代理單元,且其中該用戶端裝置包括一本機伺服器單元,該方法包含藉由該中間軟體單元進行以下操作:經由一廣播服務來接收一媒體工作階段之媒體資料之一第一集合;在接收到媒體資料之該第一集合之後,判定該廣播服務不再可獲得;基於該廣播服務不再可獲得之該判定,自藉由該用戶端裝置執行之一串流應用程式接收經由一單播服務來擷取該媒體工作階段之媒體資料之一第二集合的一請求,其中該請求規定在該用戶端裝置外部之一位址;及回應於該請求,當媒體資料之該第二集合先前係經由該廣播服務接收到時,使該HTTP代理單元將該請求重定向至該本機伺服器單元而非重定向至在該用戶端裝置外部之該位址,其中媒體資料之該第二集合先前係經由該廣播服務接收到。
- 如請求項1之方法,其中自該串流應用程式接收該請求包含攔截來自該串流應用程式之該請求。
- 如請求項1之方法,其中使該HTTP代理單元進行重定向包含使該HTTP代理單元向該串流用戶端發送一HTTP 300回應,該回應包括與該本機伺服器單元相關聯之一本機主機位址。
- 如請求項1之方法,其進一步包含用該HTTP代理單元之代理資訊來組態該串流應用程式至該中間軟體單元之一介面。
- 如請求項1之方法,其中該媒體工作階段之一資訊清單檔案指示 存在該媒體資料之多個表示,其中該單播服務提供該多個表示之一第一表示之資料,且其中該廣播服務提供該多個表示之一第二不同表示之資料,該方法進一步包含:在該廣播服務可獲得時,使用一第一伺服器及網路輔助DASH(SAND)強制訊息以使該串流用戶端自該第二表示擷取資料;及在該廣播服務不可獲得時,使用一第二SAND強制訊息以使該串流用戶端自該第一表示擷取資料。
- 如請求項5之方法,其中該第一SAND強制訊息及該第二SAND強制訊息符合包括以下各者之一SAND強制訊息結構描述:一基本統一資源定位符(URL)欄位,其表示識別一對應資訊清單檔案中之一表示的一統一資源識別符(URI)首碼;及一狀態欄位,其表示所有相關聯資源之狀態。
- 如請求項5之方法,其中使該HTTP代理單元重定向包含使該HTTP代理單元將該第二表示之一識別符包括於至該串流用戶端之一HTTP 300回應中。
- 如請求項1之方法,其進一步包含:在自該單播服務至該廣播服務之一切換之前,回應於來自該串流用戶端的對該媒體工作階段之媒體資料之一第三集合的請求,使用該單播服務來擷取媒體資料之該第三集合;在自該單播服務至該廣播服務之該切換之後,經由該廣播服務來接收該媒體工作階段之媒體資料之一第四集合。
- 如請求項1之方法,其進一步包含,當媒體資料之該第二集合先前未經由該廣播服務接收時,將對媒體資料之該第二集合的該請求重定向至與該用戶端裝置分離之一伺服器裝置。
- 如請求項1之方法,其進一步包含組態該HTTP代理單元以:將對在該本機伺服器單元中快取之區段的請求定向至該本機 伺服器單元;及將可由該本機伺服器單元滿足之區段識別符之一清單提供至該串流應用程式。
- 如請求項1之方法,其進一步包含使資料被發送至該串流用戶端,該資料包括由該本機伺服器單元快取之媒體資料之一或多個識別符。
- 如請求項11之方法,其中該資料符合一SAND訊息。
- 如請求項11之方法,其中該資料包括表示該等識別符之逗號隔開之值的一清單,且其中該等識別符規定可獲得媒體資料之一開始及該可獲得媒體資料之一結束。
- 如請求項11之方法,其中該資料包括一from欄位及一to欄位,其中該from欄位規定可獲得媒體資料之一開始且該to欄位規定該可獲得媒體資料之一結束。
- 如請求項11之方法,其中該資料包含一或多個正規表示。
- 如請求項11之方法,其中該資料包含媒體資料之集合之狀態的一清單。
- 如請求項1之方法,其中該媒體資料包含複數個區段,該等區段中之每一者與一獨特的統一資源定位符(URL)相關聯。
- 如請求項1之方法,其中該資訊清單檔案包含一媒體呈現描述(MPD)。
- 如請求項1之方法,其中該串流用戶端包含一動態自適應HTTP串流(DASH)用戶端。
- 一種用於擷取媒體資料之裝置,該裝置包含:一超文字傳送協定(HTTP)代理單元;一本機伺服器單元;及一中間軟體單元,其控制該HTTP代理單元,其中該中間軟體 單元係由包含邏輯電路系統之一基於硬體之處理單元來實施,且其中該中間軟體單元經組態以:經由一廣播服務來接收一媒體工作階段之媒體資料之一第一集合;在接收到媒體資料之該第一集合之後,判定該廣播服務不再可獲得;基於該廣播服務不再可獲得之該判定,自藉由該用戶端裝置執行之一串流應用程式接收經由一單播服務來擷取該媒體工作階段之媒體資料之一第二集合的一請求,其中該請求規定在該用戶端裝置外部之一位址;及回應於該請求,當媒體資料之該第二集合先前係經由該廣播服務接收到時,使該HTTP代理單元將該請求重定向至該本機伺服器單元而非重定向至在該用戶端裝置外部之該位址,其中媒體資料之該第二集合先前係經由該廣播服務接收。
- 如請求項20之裝置,其中該媒體工作階段之一資訊清單檔案指示存在該媒體資料之多個表示,其中該單播服務提供該多個表示之一第一表示之資料,且其中該廣播服務提供該多個表示之一第二不同表示之資料,且其中該中間軟體單元經進一步組態以:在該廣播服務可獲得時,使用一第一伺服器及網路輔助DASH(SAND)強制訊息以使該串流用戶端自該第二表示擷取資料;及在該廣播服務不可獲得時,使用一第二SAND強制訊息以使該串流用戶端自該第一表示擷取資料。
- 如請求項21之裝置,其中該第一SAND強制訊息及該第二SAND強制訊息符合包括以下各者之一SAND強制訊息結構描述:一基本統一資源定位符(URL)欄位,其表示識別一對應資訊清 單檔案中之一表示的一統一資源識別符(URI)首碼;及一狀態欄位,其表示所有相關聯資源之狀態。
- 如請求項20之裝置,其中該中間軟體單元經進一步組態以組態該HTTP代理單元以:將對在該本機伺服器單元中快取之區段的請求定向至該本機伺服器單元;及將可由該本機伺服器單元滿足之區段識別符之一清單提供至該串流應用程式。
- 如請求項20之裝置,其中該中間軟體單元經進一步組態以使資料被發送至該串流用戶端,該資料包括由該本機伺服器單元快取之媒體資料之一或多個識別符。
- 如請求項24之裝置,其中該資料包括表示該等識別符之逗號隔開之值的一清單,其中該等識別符規定可獲得媒體資料之一開始及該可獲得媒體資料之一結束,其中該資料包括一from欄位及一to欄位,其中該from欄位規定可獲得媒體資料之一開始且該to欄位規定該可獲得媒體資料之一結束,其中該資料包含一或多個正規表示,且其中該資料包含媒體資料之集合之狀態的一清單。
- 如請求項20之裝置,其中該HTTP代理單元包括於該中間軟體單元中。
- 如請求項20之裝置,其中該HTTP代理單元與該中間軟體單元分離。
- 一種用於擷取媒體資料之裝置,該裝置包含:一超文字傳送協定(HTTP)代理單元;一本機伺服器單元;用於經由一廣播服務來接收一媒體工作階段之媒體資料之一 第一集合的構件;用於在接收到媒體資料之該第一集合之後判定該廣播服務不再可獲得的構件;用於基於該廣播服務不再可獲得之該判定,自藉由該用戶端裝置執行之一串流應用程式接收經由一單播服務來擷取該媒體工作階段之媒體資料之一第二集合的一請求之構件,其中該請求規定在該用戶端裝置外部之一位址;及用於回應於該請求當媒體資料之該第二集合先前係經由該廣播服務接收到時使該HTTP代理單元將該請求重定向至該本機伺服器單元而非重定向至在該用戶端裝置外部之該位址的構件,其中媒體資料之該第二集合先前係經由該廣播服務接收。
- 如請求項28之裝置,其中該媒體工作階段之一資訊清單檔案指示存在該媒體資料之多個表示,其中該單播服務提供該多個表示之一第一表示之資料,且其中該廣播服務提供該多個表示之一第二不同表示之資料,該裝置進一步包含:用於在該廣播服務可獲得時使用一第一伺服器及網路輔助DASH(SAND)強制訊息以使該串流用戶端自該第二表示擷取資料的構件;及用於在該廣播服務不可獲得時使用一第二SAND強制訊息以使該串流用戶端自該第一表示擷取資料的構件。
- 如請求項29之裝置,其中該第一SAND強制訊息及該第二SAND強制訊息符合包括以下各者之一SAND強制訊息結構描述:一基本統一資源定位符(URL)欄位,其表示識別一對應資訊清單檔案中之一表示的一統一資源識別符(URI)首碼;及一狀態欄位,其表示所有相關聯資源之狀態。
- 如請求項28之裝置,其進一步包含用於組態該HTTP代理單元以 進行以下操作的構件:將對在該本機伺服器單元中快取之區段的請求定向至該本機伺服器單元;及將可由該本機伺服器單元滿足之區段識別符之一清單提供至該串流應用程式。
- 如請求項28之裝置,其進一步包含用於使資料被發送至該串流用戶端的構件,該資料包括由該本機伺服器單元快取之媒體資料之一或多個識別符。
- 如請求項32之裝置,其中該資料包括表示該等識別符之逗號隔開之值的一清單,其中該等識別符規定可獲得媒體資料之一開始及該可獲得媒體資料之一結束,其中該資料包括一from欄位及一to欄位,其中該from欄位規定可獲得媒體資料之一開始且該to欄位規定該可獲得媒體資料之一結束,其中該資料包含一或多個正規表示,且其中該資料包含媒體資料之集合之狀態的一清單。
- 一種上面儲存有指令之電腦可讀儲存媒體,該等指令在執行時使包含一用戶端裝置之一中間軟體單元之一處理器進行以下操作,其中該中間軟體單元控制該用戶端裝置之一超文字傳送協定(HTTP)代理單元,且其中該用戶端裝置包括一本機伺服器單元:經由一廣播服務來接收一媒體工作階段之媒體資料之一第一集合;在接收到媒體資料之該第一集合之後,判定該廣播服務不再可獲得;基於該廣播服務不再可獲得之該判定,自藉由該用戶端裝置執行之一串流應用程式接收經由一單播服務來擷取該媒體工作 階段之媒體資料之一第二集合的一請求,其中該請求規定在該用戶端裝置外部之一位址;及回應於該請求,當媒體資料之該第二集合先前係經由該廣播服務接收到時,使該HTTP代理單元將該請求重定向至該本機伺服器單元而非重定向至在該用戶端裝置外部之該位址,其中媒體資料之該第二集合先前係經由該廣播服務接收。
- 如請求項34之電腦可讀儲存媒體,其中該媒體工作階段之一資訊清單檔案指示存在該媒體資料之多個表示,其中該單播服務提供該多個表示之一第一表示之資料,且其中該廣播服務提供該多個表示之一第二不同表示之資料,該電腦可讀儲存媒體進一步包含使該處理器進行以下操作之指令:在該廣播服務可獲得時,使用一第一伺服器及網路輔助DASH(SAND)強制訊息以使該串流用戶端自該第二表示擷取資料;及在該廣播服務不可獲得時,使用一第二SAND強制訊息以使該串流用戶端自該第一表示擷取資料。
- 如請求項35之電腦可讀儲存媒體,其中該第一SAND強制訊息及該第二SAND強制訊息符合包括以下各者之一SAND強制訊息結構描述:一基本統一資源定位符(URL)欄位,其表示識別一對應資訊清單檔案中之一表示的一統一資源識別符(URI)首碼;及一狀態欄位,其表示所有相關聯資源之狀態。
- 如請求項34之電腦可讀儲存媒體,其進一步包含使該處理器組態該HTTP代理單元以進行以下操作的指令:將對在該本機伺服器單元中快取之區段的請求定向至該本機伺服器單元;及將可由該本機伺服器單元滿足之區段識別符之一清單提供至 該串流應用程式。
- 如請求項34之電腦可讀儲存媒體,其進一步包含使該處理器使資料被發送至該串流用戶端的指令,該資料包括由該本機伺服器單元快取之媒體資料之一或多個識別符。
- 如請求項38之電腦可讀儲存媒體,其中該資料包括表示該等識別符之逗號隔開之值的一清單,其中該等識別符規定可獲得媒體資料之一開始及該可獲得媒體資料之一結束,其中該資料包括一from欄位及一to欄位,其中該from欄位規定可獲得媒體資料之一開始且該to欄位規定該可獲得媒體資料之一結束,其中該資料包含一或多個正規表示,且其中該資料包含媒體資料之集合之狀態的一清單。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562181684P | 2015-06-18 | 2015-06-18 | |
US201562183615P | 2015-06-23 | 2015-06-23 | |
US15/184,138 US10193994B2 (en) | 2015-06-18 | 2016-06-16 | Signaling cached segments for broadcast |
Publications (1)
Publication Number | Publication Date |
---|---|
TW201703541A true TW201703541A (zh) | 2017-01-16 |
Family
ID=56555708
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW105119225A TW201703541A (zh) | 2015-06-18 | 2016-06-17 | 用於廣播之發信快取區段 |
Country Status (8)
Country | Link |
---|---|
US (1) | US10193994B2 (zh) |
EP (1) | EP3311586B1 (zh) |
JP (1) | JP2018524882A (zh) |
KR (1) | KR20180019579A (zh) |
CN (1) | CN107810624B (zh) |
BR (1) | BR112017027326A2 (zh) |
TW (1) | TW201703541A (zh) |
WO (1) | WO2016205670A1 (zh) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106233693B (zh) | 2014-11-13 | 2020-01-03 | Lg 电子株式会社 | 广播信号发送设备、广播信号接收设备、广播信号发送方法和广播信号接收方法 |
US10412132B2 (en) * | 2015-02-16 | 2019-09-10 | Lg Electronics Inc. | Broadcasting signal transmission device, broadcast signal reception device, broadcast signal transmission method, and broadcast signal reception method |
CN107637045B (zh) * | 2015-06-16 | 2020-11-27 | 苹果公司 | 使用动态无线接入网信息的自适应视频流送 |
WO2017063677A1 (en) * | 2015-10-13 | 2017-04-20 | Telefonaktiebolaget Lm Ericsson (Publ) | Adaptive precision for reporting consumption of streamed content |
EP3391608B1 (en) * | 2015-12-18 | 2023-08-09 | Telefonaktiebolaget LM Ericsson (publ) | Handling of content delivery in a client node |
CA3026233C (en) * | 2016-06-08 | 2023-10-17 | Sony Corporation | Receiving device and receiving method, reproducing device and reproducing method, supply device and supply method, and program |
US20180007307A1 (en) * | 2016-07-02 | 2018-01-04 | Qualcomm Incorporated | Distributed Implementation Architecture for Broadcast Receiver |
EP3485646B1 (en) | 2016-07-15 | 2022-09-07 | Koninklijke KPN N.V. | Streaming virtual reality video |
TWI599218B (zh) * | 2016-07-29 | 2017-09-11 | 元智大學 | 即時影音傳輸系統 |
US10574718B2 (en) * | 2016-08-25 | 2020-02-25 | Comcast Cable Communications, Llc | Packaging content for delivery |
WO2018050606A1 (en) * | 2016-09-14 | 2018-03-22 | Koninklijke Kpn N.V. | Streaming virtual reality video |
KR102532645B1 (ko) * | 2016-09-20 | 2023-05-15 | 삼성전자 주식회사 | 적응적 스트리밍 서비스에서 스트리밍 어플리케이케이션으로 데이터를 제공하는 방법 및 장치 |
WO2018083211A1 (en) * | 2016-11-04 | 2018-05-11 | Koninklijke Kpn N.V. | Streaming virtual reality video |
CN109964467B (zh) * | 2016-11-10 | 2022-02-25 | 索尼集团公司 | 支持流传输的方法、流传输客户端、节点、通信*** |
CN106658042B (zh) * | 2016-12-28 | 2019-07-02 | 广州华多网络科技有限公司 | 一种数据推送方法及相关客户端、服务器 |
US11290755B2 (en) * | 2017-01-10 | 2022-03-29 | Qualcomm Incorporated | Signaling data for prefetching support for streaming media data |
US20180205802A1 (en) * | 2017-01-13 | 2018-07-19 | Cisco Technology, Inc. | Cache Aware Streaming |
US20180242230A1 (en) * | 2017-02-19 | 2018-08-23 | Alcatel-Lucent Usa Inc. | Switching between unicast service and multicast-broadcast service |
US9872062B1 (en) * | 2017-02-22 | 2018-01-16 | Wyse Technology L.L.C. | Enforcing synchronization by embedding audio within video frame data |
JPWO2018173876A1 (ja) * | 2017-03-24 | 2020-01-30 | ソニー株式会社 | コンテンツ処理装置およびコンテンツ処理方法、並びにプログラム |
GB201706848D0 (en) | 2017-04-28 | 2017-06-14 | Forbidden Tech Plc | Ftl uk |
GB2563251A (en) | 2017-06-07 | 2018-12-12 | Sony Mobile Communications Inc | Terminal device, data processing apparatuses and methods |
CN107295573B (zh) * | 2017-07-12 | 2019-08-02 | 网宿科技股份有限公司 | 一种业务应用流量的引导方法和*** |
JP7063985B2 (ja) | 2017-10-03 | 2022-05-09 | ソニーグループ株式会社 | 上りリンクストリーミング向けのネットワーク支援 |
CN108259576B (zh) * | 2017-12-27 | 2021-08-24 | 武汉网信安全技术股份有限公司 | 一种软硬件实时信息传输***和方法 |
US10601886B2 (en) * | 2018-02-05 | 2020-03-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Method, a user equipment and a computer program product for enabling a dynamic adaptive streaming over HTTP, DASH, player to fetch media segments from a network |
US10938872B2 (en) * | 2018-03-12 | 2021-03-02 | Qualcomm Incorporated | Processing interactivity events for streaming media data |
CN110519652B (zh) * | 2018-05-22 | 2021-05-18 | 华为软件技术有限公司 | Vr视频播放方法、终端及服务器 |
US20200112753A1 (en) * | 2018-10-03 | 2020-04-09 | Qualcomm Incorporated | Service description for streaming media data |
US10911793B2 (en) * | 2018-11-14 | 2021-02-02 | Sony Interactive Entertainment LLC | Video start-time reduction employing reductive edging principles |
WO2020109834A1 (en) * | 2018-11-28 | 2020-06-04 | Broadpeak | Method and system for audio-visual live content delivery |
US11647241B2 (en) * | 2019-02-19 | 2023-05-09 | Sony Interactive Entertainment LLC | Error de-emphasis in live streaming |
US11523185B2 (en) | 2019-06-19 | 2022-12-06 | Koninklijke Kpn N.V. | Rendering video stream in sub-area of visible display area |
US11638040B2 (en) * | 2020-08-24 | 2023-04-25 | Schmied Enterprises LLC | Eco-friendly codec-based system for low latency transmission |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6400996B1 (en) * | 1999-02-01 | 2002-06-04 | Steven M. Hoffberg | Adaptive pattern recognition based control system and method |
US5719786A (en) * | 1993-02-03 | 1998-02-17 | Novell, Inc. | Digital media data stream network management system |
US6499060B1 (en) * | 1999-03-12 | 2002-12-24 | Microsoft Corporation | Media coding for loss recovery with remotely predicted data units |
US6538623B1 (en) * | 1999-05-13 | 2003-03-25 | Pirooz Parnian | Multi-media data collection tool kit having an electronic multi-media “case” file and method of use |
US20030115294A1 (en) * | 2000-05-31 | 2003-06-19 | Khoi Hoang | Selective access digital data broadcast system |
US20060095939A1 (en) * | 2000-06-30 | 2006-05-04 | Jutzi Curtis E | Method and apparatus for the separation of data from digital broadcast signals for distribution via a computer network to clients |
US6813690B1 (en) * | 2001-06-12 | 2004-11-02 | Network Appliance, Inc. | Caching media data using content-sensitive identifiers |
US8234672B2 (en) * | 2003-09-02 | 2012-07-31 | Creative Technology Ltd | Method and system to control playback of digital media |
US8839319B2 (en) * | 2006-12-28 | 2014-09-16 | Comcast Cable Holdings, Llc | Limiting recording demands |
US20090083811A1 (en) * | 2007-09-26 | 2009-03-26 | Verivue, Inc. | Unicast Delivery of Multimedia Content |
US8977704B2 (en) | 2011-12-29 | 2015-03-10 | Nokia Corporation | Method and apparatus for flexible caching of delivered media |
US9401968B2 (en) | 2012-01-20 | 2016-07-26 | Nokia Techologies Oy | Method and apparatus for enabling pre-fetching of media |
CN104718759B (zh) | 2012-01-24 | 2019-01-18 | 华为技术有限公司 | Lm模式的简化 |
US9241166B2 (en) * | 2012-06-11 | 2016-01-19 | Qualcomm Incorporated | Technique for adapting device tasks based on the available device resources |
US10015437B2 (en) * | 2013-01-15 | 2018-07-03 | Qualcomm Incorporated | Supporting transport diversity and time-shifted buffers for media streaming over a network |
WO2016137375A1 (en) * | 2015-02-26 | 2016-09-01 | Telefonaktiebolaget Lm Ericsson (Publ) | A master device and methods therein |
-
2016
- 2016-06-16 US US15/184,138 patent/US10193994B2/en active Active
- 2016-06-17 JP JP2017564715A patent/JP2018524882A/ja active Pending
- 2016-06-17 CN CN201680035148.6A patent/CN107810624B/zh active Active
- 2016-06-17 BR BR112017027326A patent/BR112017027326A2/pt not_active Application Discontinuation
- 2016-06-17 WO PCT/US2016/038108 patent/WO2016205670A1/en active Search and Examination
- 2016-06-17 KR KR1020177036300A patent/KR20180019579A/ko unknown
- 2016-06-17 TW TW105119225A patent/TW201703541A/zh unknown
- 2016-06-17 EP EP16745217.6A patent/EP3311586B1/en active Active
Also Published As
Publication number | Publication date |
---|---|
KR20180019579A (ko) | 2018-02-26 |
JP2018524882A (ja) | 2018-08-30 |
CN107810624B (zh) | 2021-12-03 |
CN107810624A (zh) | 2018-03-16 |
EP3311586A1 (en) | 2018-04-25 |
US20160373546A1 (en) | 2016-12-22 |
US10193994B2 (en) | 2019-01-29 |
EP3311586B1 (en) | 2021-08-11 |
BR112017027326A2 (pt) | 2018-09-04 |
WO2016205670A1 (en) | 2016-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107810624B (zh) | 用于检索媒体数据的方法、设备和计算机可读存储介质 | |
JP6770000B2 (ja) | DASHクライアントQoEメトリックのミドルウェア配信 | |
JP5930429B2 (ja) | ファイル配信方式を使用したipブロードキャストストリーミングサービスの配信 | |
JP6612249B2 (ja) | メディアデータをストリーミングするためのターゲット広告挿入 | |
US20160337424A1 (en) | Transferring media data using a websocket subprotocol | |
JP6285608B2 (ja) | ネットワークを介して交換されたファイルのためのエラー処理 | |
CN111837403B (zh) | 处理用于以流传送媒体数据的交互性事件 | |
KR102076064B1 (ko) | Dash의 강건한 라이브 동작 | |
TW201842785A (zh) | 作為分隔符及可定址之資源識別符之區段類型 | |
TW201830974A (zh) | 對於用於串流媒體資料之預取支持之資料發信 | |
TW201729601A (zh) | 用於媒體資料之串流之期限發信 | |
US20180176278A1 (en) | Detecting and signaling new initialization segments during manifest-file-free media streaming | |
TW201742463A (zh) | 樣本條目及隨機存取 | |
TW201743614A (zh) | 樣本條目及隨機存取 | |
TWI820227B (zh) | 用於媒體資料之網路串流之初始化集合 | |
KR20160138044A (ko) | 미디어 데이터를 스트리밍하기 위한 목표된 광고 삽입 | |
JP2022551436A (ja) | Dashセグメントの再同期点におけるランダムアクセス | |
US20210306703A1 (en) | Determination of availability of chunks of data for network streaming media data | |
TW202236856A (zh) | 媒體資料的後台資料流量分配 | |
US20210344992A1 (en) | Calculating start time availability for streamed media data | |
JP2022550528A (ja) | 適応ビットレートマルチキャストのための修復機構 | |
TW202337225A (zh) | 用於適應性流送的動態解析度改變提示 |