CN106134146B - 处理连续的多周期内容 - Google Patents
处理连续的多周期内容 Download PDFInfo
- Publication number
- CN106134146B CN106134146B CN201580012697.7A CN201580012697A CN106134146B CN 106134146 B CN106134146 B CN 106134146B CN 201580012697 A CN201580012697 A CN 201580012697A CN 106134146 B CN106134146 B CN 106134146B
- Authority
- CN
- China
- Prior art keywords
- period
- media
- data
- adaptation
- expression
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000014509 gene expression Effects 0.000 claims abstract description 130
- 230000006978 adaptation Effects 0.000 claims abstract description 110
- 238000000034 method Methods 0.000 claims description 46
- 238000003860 storage Methods 0.000 claims description 30
- 239000012092 media component Substances 0.000 claims 2
- 238000013500 data storage Methods 0.000 abstract description 4
- 238000005516 engineering process Methods 0.000 description 51
- 230000005540 biological transmission Effects 0.000 description 18
- 238000005538 encapsulation Methods 0.000 description 17
- 238000004422 calculation algorithm Methods 0.000 description 16
- 238000012545 processing Methods 0.000 description 15
- 238000005194 fractionation Methods 0.000 description 13
- 238000003780 insertion Methods 0.000 description 11
- 230000037431 insertion Effects 0.000 description 11
- 238000002360 preparation method Methods 0.000 description 11
- 238000009826 distribution Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000002123 temporal effect Effects 0.000 description 5
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000002708 enhancing effect Effects 0.000 description 4
- 239000012634 fragment Substances 0.000 description 4
- 230000000306 recurrent effect Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 238000001727 in vivo Methods 0.000 description 3
- 238000013508 migration Methods 0.000 description 3
- 230000005012 migration Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000011664 signaling Effects 0.000 description 3
- 238000006467 substitution reaction Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000002045 lasting effect Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000012856 packing Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000003068 static effect Effects 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
- 241000208340 Araliaceae Species 0.000 description 1
- 241001269238 Data Species 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 108010076504 Protein Sorting Signals Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 210000003127 knee Anatomy 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 239000013028 medium composition Substances 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000004224 protection Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- 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/75—Media network packet handling
- H04L65/762—Media network packet handling at the source
-
- 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
-
- 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
- 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/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
-
- 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/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26258—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
-
- 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/437—Interfacing the upstream path of the transmission network, e.g. for transmitting client requests to a VOD server
-
- 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
- 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/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/85406—Content authoring involving a specific file format, e.g. MP4 format
-
- 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
-
- 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/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/44209—Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless 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/81—Monomedia components thereof
- H04N21/812—Monomedia components thereof involving advertisement data
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- Marketing (AREA)
- Computer Security & Cryptography (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
在一个实例中,装置包含一或多个处理器,其经配置以:确定媒体内容的清单文件指示所述媒体内容包含第一周期及第二周期、所述清单文件指示所述第一及第二周期是连续的及广告媒体数据可用于插入所述第一周期与所述第二周期之间;至少部分地基于针对所述第一周期中的第一适应集合用信号表示的特征而选择所述第一适应集合;基于所述第一适应集合的所述选择而检索所述第一适应集合的媒体数据;检索所述广告媒体数据;及基于所述第一适应集合的所述选择而检索第二周期中的第二适应集合的媒体数据并且将所述所检索媒体数据存储到存储器,所述清单文件指示所述第二周期中的所述第二适应集合与所述第一适应集合相关联。
Description
本申请案主张2014年3月24日提交的第61/969,777号美国临时申请案的权益,所述申请案的全部内容在此通过引用并入本文中。
技术领域
本发明涉及例如媒体数据的流式传输等的媒体数据在网络上的传递。
背景技术
数字视频能力可并入到广泛范围的装置中,包含数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型或桌上型计算机、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话、视频电话会议装置及其类似物。数字视频装置实施视频压缩技术,例如,由MPEG-2、MPEG-4、ITU-TH.263或ITU-TH.264/MPEG-4第10部分高级视频译码(AVC)、ITU-T H.265/MPEG-H第2部分定义的标准及此类标准的扩展中所描述的那些视频压缩技术,以更有效地发射及接收数字视频信息。
视频压缩技术执行空间预测及/或时间预测以减少或移除视频序列中固有的冗余。对于基于块的视频译码来说,可将视频帧或切片分割为宏块。可进一步分割每一宏块。使用相对于相邻宏块的空间预测来编码经帧内译码(I)帧或切片中的宏块。经帧间译码(P或B)帧或切片中的宏块可使用相对于同一帧或切片中的相邻宏块的空间预测或相对于其它参考帧的时间预测。
在已对视频数据(及/或其它媒体数据,例如音频及/或定时文本数据)进行编码之后,媒体数据可经包化以供发射或存储。可使用单播协议,例如超文本传输协议(HTTP)或广播或多播协议,例如增强的多媒体广播多播服务(eMBMS)发送包化媒体数据。
发明内容
一般来说,本发明描述用于准备媒体内容的技术,所述媒体内容用于自适应流式传输,使得在播出及流式传输情况下,可通过用信号表示周期边界来剪接及添加进入现有的媒体数据集合中的额外的媒体数据(例如,广告媒体数据),举例来说,通过使用内容的发送器处的决策或通过接收内容的接收器,但同时当不添加额外的媒体内容时,接收器具有足够信息:接收器处的内容的解码及播出跨越周期边界是连续的,即,保持周期连续性。媒体内容可分为不同周期,其中每个周期包含一或多个适应集合,每个适应集合包含一或多个表示。一般来说,同一适应集合内的表示可被视为彼此的替代,使得客户端装置可在表示之间切换,例如以适应改变网络带宽。一周期内的适应集合可包含此类可切换表示,即,共享共同译码及再现特征,但位速率不同的表示。
本发明描述用于将一个周期中提供的内容拆分成两个连续周期使得额外的媒体数据可插入所述连续周期之间的技术。以此方式,无需在添加媒体数据之后再用信号表示用于连续周期的表示的特征。替代地,用于一个周期中的表示的数据的相同用信号表示特征可用于下一连续周期中的表示的数据(其中额外的媒体数据可插入连续周期之间)。以此方式,可通过连续方式呈现媒体内容的媒体数据及添加的媒体数据。举例来说,客户端装置可基于第一周期的适应集合的选择而使用对应于第一周期的适应集合的第二周期的适应集合(例如,不需要再分析第二周期的适应集合的特征且不需要再初始化客户端中的媒体解析及解码实体)。
在一个实例中,检索媒体数据的方法包含:确定媒体内容的清单文件指示媒体内容包含第一周期及第二周期、所述清单文件指示第一及第二周期是连续的及广告媒体数据可用于插入第一及第二周期之间;至少部分地基于针对第一周期中的第一适应集合用信号表示的特征而选择所述第一适应集合;基于第一适应集合的选择而检索第一适应集合的媒体数据;检索广告媒体数据;及基于第一适应集合的选择而检索与第一适应集合相关联的第二周期中的第二适应集合的媒体数据。
在另一实例中,用于检索媒体数据的装置包含:存储器,其经配置以存储媒体数据;及一或多个基于硬件的处理器,其经配置以:确定媒体内容的清单文件指示媒体内容包含第一周期及第二周期、所述清单文件指示第一及第二周期是连续的及广告媒体数据可用于插入第一及第二周期之间;至少部分地基于针对第一周期中的第一适应集合用信号表示的特征而选择所述第一适应集合;基于第一适应集合的选择而检索第一适应集合的媒体数据;检索广告媒体数据;及基于第一适应集合的选择而检索第二周期中的第二适应集合的媒体数据且将所检索媒体数据存储到存储器,清单文件指示第二周期中的第二适应集合与第一适应集合相关联。
在另一实例中,发送媒体数据的方法包含:通过媒体服务器将媒体数据的主要内容拆分成多个周期,包含第一周期及第二周期,其中第一周期及第二周期在时间上是依序的;通过媒体服务器将辅助媒体内容插入第一周期与第二周期之间;通过媒体服务器用信号表示多个周期中的每一者的时间指示符,其中时间指示符界定用于多个周期中的每一者的一或多个时间特征;及通过媒体服务器从基于HTTP的动态自适应流(DASH)客户端接收请求以检索包括多个周期、辅助媒体内容及时间指示符的媒体流。
在另一实例中,用于发送媒体数据的装置包含:存储器,其经配置以存储媒体数据;及一或多个基于硬件的处理器,其经配置以将媒体数据的主要内容拆分成多个周期,包含在时间上依序的第一周期及第二周期;将辅助媒体内容插入第一周期与第二周期之间;用信号表示多个周期中的每一者的时间指示符,其中时间指示符界定用于多个周期中的每一者的一或多个时间特征;及从基于HTTP的动态自适应流(DASH)客户端接收请求以检索包括多个周期、辅助媒体内容及时间指示符的媒体流。
附图及以下描述中阐明一或多个实例的细节。其它特征、目标及优点将从所述描述及图式以及从权利要求书中显而易见。
附图说明
图1是说明实施用于在网络上流式传输媒体数据的技术的实例系统的框图。
图2是说明实例多媒体内容的元素的概念图。
图3是说明可实施本发明的技术的另一实例系统的框图。
图4至6是说明根据本发明的各个方面的一或多个技术的流程图。
图7是说明通过媒体服务器执行本发明的某些技术的实例方法的流程图。
图8是说明通过客户端装置执行本发明的某些技术的实例方法的流程图。
具体实施方式
一般来说,本发明描述用于连续多周期流中的广告(ad)插入的技术。当流式传输媒体数据时,可例如根据单播服务(例如HTTP)、广播或多播服务,例如增强的多媒体广播多播服务(eMBMS)使用这些技术。举例来说,本发明的技术可与MBMS改进增强的MBMS操作(MI-EMO)的技术结合使用或用于增强所述技术。MI-EMO描述于(例如)2013年12月的3GPP第12版V0.1.1的概述,其可从以下处获得:http://www.3gpp.org/ftp/Information/WORK_PLAN/Description_Releases/Rel-12_description_20131224.zip。
应理解,广告数据是媒体数据,即,在主要媒体数据的呈现的一或多个短暂间断期间呈现给用户的数据。额外的媒体数据(例如,广告媒体数据)通常以与主要媒体数据基本上相同的方式呈现。举例来说,如果主要媒体数据包含音频数据及视频数据两者,则广告媒体数据可能也包含音频数据及视频数据。因此,广告数据不应与到客户端装置的服务器广告混淆,所述服务器广告通常不会呈现给用户。
本发明的技术可应用于流式传输网络协议的上下文中,例如,基于HTTP的动态自适应流(DASH)中。在DASH中,媒体内容分成一组表示,其中每个表示对应于特征的特定组合,例如译码特征(例如,编解码器、简档、水平及其类似者)、再现特征(例如,视角、图片尺寸、帧率以及其类似者)及位速率。媒体内容可进一步包含适应集合,其中每个适应集合包含用作彼此的可切换替代物的多个表示,使得所述表示共享相同再现特征,但位速率不同,例如,出于带宽适应的目的。表示的这些特征以及适应集合的指示通常在清单文件中用信号表示。此外,每个适应集合可以对应于媒体内容的特定周期,其中每个周期可包含一或多个适应集合。一个周期通常对应于由所述周期的开始播出时间界定的媒体内容的区段,直到后续周期的开始播出时间为止。媒体内容可包含一或多个周期。
本发明涉及清单文件(例如,媒体呈现描述(MPD))及产生为点播或直播内容的内容到提供周期连续性的具有多个周期的MPD(或其它清单文件)的转换。可出于不同原因产生具有多个周期的内容。举例来说,可产生多个周期以实现内容的剪接,例如用于广告插入。在另一实例中,可产生多个周期以提供同步点以避免段号的偏移。在另一实例中,可产生多个周期以在适应集合中清除或添加某些表示。在另一实例中,可产生多个周期以清除或添加某些适应集合。在另一实例中,可产生多个周期以添加或清除在某些内容分布网络(CDN)上提供的内容。在另一实例中,可产生多个周期以实现更短片段(如果通过编码器产生)的用信号表示。这些实例技术可单独或以任何组合使用。
周期提供广告插入的机会,也称为线索。但基于发送器或客户端作出的决策,可添加或可不添加广告。因此,就媒体解析及再现而言,不插入广告的内容通常是连续的。如果周期是连续的,则用信号表示客户端的连续播出,使得客户端不必再初始化且避免在周期边界处的干扰的任何可能结果。为了满足连续播出,本发明描述不同技术。在一个实例中,内容提供商将规则点播内容拆分成多个周期并且提供周期连续性信令。在另一实例中,内容提供商将规则直播内容拆分成多个时间并且提供周期连续性信令。在另一实例中,内容提供商用信号表示内容以实现周期连续性。在另一实例中,内容提供商仅基于MPD信息用信号表示多个周期,而无需修改媒体内容,即表示。
在一些实例中,当使用广播或多播接收媒体内容时,MBMS客户端或eMBMS客户端可接收媒体内容,随后使媒体内容可用于流式传输客户端,例如DASH客户端。DASH客户端可使用(例如)HTTP检索操作从MBMS客户端检索媒体内容。在HTTP流式传输(例如,DASH)中,频繁使用的操作包含HEAD、GET及部分GET。HEAD操作检索与给定的统一资源定位符(URL)或统一资源名(URN)相关联的文件的标头,而不检索与URL或URN相关联的有效负载。GET操作检索与给定URL或URN相关联的整个文件。部分GET操作接收字节范围作为输入参数,且检索文件的持续数目的字节,其中所述字节数目对应于接收到的字节范围。因而,可以提供电影片段以用于HTTP流式传输,因为部分GET操作可获得一或多个个别的电影片段。在一电影片段中,可能存在不同轨道的几个轨道片段。在HTTP流式传输中,媒体呈现可为客户端可存取的数据的经构造集合。客户端可请求及下载媒体数据信息以向用户呈现流式传输服务。
在使用HTTP流式传输来流式传输3GPP数据的实例中,可能存在对于多媒体内容的视频及/或音频数据的多个表示。如下文所解释,不同表示可对应于不同译码特征(例如,视频译码标准的不同简档或水平)、不同译码标准或译码标准的扩展(例如多视图及/或可缩放扩展)或不同位速率。这些表示的清单可在媒体呈现描述(MPD)数据结构中定义。媒体呈现可对应于可为HTTP流式传输客户端装置可存取的数据的经构造集合。HTTP流式传输客户端装置可请求及下载媒体数据信息以向客户端装置的用户呈现流式传输服务。媒体呈现可在MPD数据结构中描述,MPD数据结构可包含MPD的更新。
媒体呈现可含有一或多个周期的序列。周期可通过MPD中的周期元素来定义。MPD可包含每一周期的start属性和availableStartTime属性。对于直播服务,周期的start属性与MPD属性availableStartTime的总和可用UTC格式指定周期的可用性时间,具体来说是对应周期中的每一表示的第一媒体片段。对于点播服务,第一周期的start属性可为0。对于任何其它周期,start属性可指定对应周期的开始时间相对于第一周期的开始时间之间的时间偏移。每一周期可延伸直到下一周期的开始为止,或者在最后一个周期的情况下直到媒体呈现的结束为止。周期开始时间可以是精确的。周期开始时间可反映由播放所有先前周期的媒体所产生的实际定时。
每一周期可含有相同媒体内容的一或多个表示。表示可以是音频或视频数据的多个替代经编码版本中的一者。所述表示可依据编码类型而不同,例如依据位速率、分辨率,及/或用于视频数据及位速率的编解码器,及/或用于音频数据的编解码器。术语“表示”可用于指代经编码音频或视频数据的对应于多媒体内容的特定周期并且用特定方式编码的区段。
特定周期的表示可指派给由MPD中的属性(所述属性指示表示所属的适应集合)指示的群组。同一适应集合中的表示通常被视为彼此的替代,因为客户端装置可在这些表示之间动态地且无缝地切换,例如以执行带宽适应。举例来说,特定周期的视频数据的每个表示可指派给同一适应集合,使得可选择这些表示中的任一者进行解码以呈现对应周期的多媒体内容的媒体数据(例如,视频数据或音频数据)。在一些实例中,一个周期内的媒体内容可由来自群组0(如果存在的话)的一个表示来表示,或者由来自每一非零群组的至多一个表示的组合来表示。可相对于周期的开始时间来表达所述周期的每一表示的定时数据。
表示可包含一或多个片段。每一表示可包含初始化片段,或表示的每一片段可自初始化。当存在时,初始化片段可含有用于存取所述表示的初始化信息。一般来说,初始化片段不含媒体数据。片段可由识别符唯一地参考,例如统一资源定位符(URL)、统一资源名(URN)或统一资源识别符(URI)。MPD可提供每一片段的识别符。在一些实例中,MPD还可提供range属性的形式的字节范围,所述字节范围可对应于可通过URL、URN或URI存取的文件内的片段的数据。
不同表示可选择用于不同类型的媒体数据的基本上同时的检索。举例来说,客户端装置可选择音频表示、视频表示及定时文本表示,从这些表示中检索区段。在一些实例中,客户端装置可选择特定适应集合用于执行带宽适应。也就是说,客户端装置可选择包含视频表示的适应集合、包含音频表示的适应集合及/或包含定时文本的适应集合。或者,客户端装置可选择用于某些类型的媒体(例如,视频)的适应集合,并且直接选择其它类型的媒体(例如,音频及/或定时文本)的表示。
通常就内容提供而言,在周期边界处不需要连续性。可通过不同编解码器、语言属性、内容保护等提供内容。预期客户端跨越周期连续地播放内容,但就实施方案而言可存在使播放完全连续及无缝的暗示。
一般来说,跨越周期边界的音频/视频切换可能不是无缝的。根据ISO/IEC 23009-1,章节7.2.1,在新周期开始时,媒体内容组成的播出程序可能需要在前一周期结束时进行调整以匹配新周期的周期开始时间,因为在前一周期结束时可能存在与表示的较小重叠或间隙。重叠(相应地间隙)可能由具有比周期持续时间所指示更长(相应地更短)的媒体流的实际呈现持续时间的媒体片段产生。此外,在周期开始时,如果表示的任何存取单元的最早呈现时间可能不等于@presentationTimeOffset中用信号表示的呈现时间偏移,则播出程序需要相应地进行调整。
然而,在某些条件下,可获得跨越周期的呈现的无缝延续,尤其在适当调节内容的情况下。当跨越周期下载及呈现内容时,此区段提供关于跨越周期的内容提供需求及建议以及客户端行为的概述。
应注意,下文的论述适用于静态及动态媒体呈现两者,并且下文所描述的技术可与x链路的使用无关。下文描述的规则可适用于在解引用远程元件之后的情况。
表示的呈现持续时间可为表示的最终呈现时间与表示的最早呈现时间之间的差。呈现时间持续时间可具有(举例来说)与呈现时间偏移相同的单元,即@timescale,并且表达表示的准确呈现持续时间。
可通过两个以下实例技术中的一者或类似技术用信号表示呈现持续时间。一个实例技术涉及指定在@timescale属性的时间标度中的所包含表示的呈现持续时间的新任选属性@presentationTimeDuration。第二实例技术涉及具有设定成“urn:mpeg:dash:period_continuity:2014”的@scheme_id_URI的补充描述符,所述补充描述符可提供用于适应集合,其中描述符的@value(即,PID)匹配可包含于MPD中的周期的@id的值,AdaptationSet@id的值为AID并且可提供此适应集合的@presentationTimeOffset的值且所述值可为PTO。
如果此信号存在,则针对period@id的值为PID的周期及针对AdaptationSet@id为AID的适应集合,此适应集合中的每个表示的呈现持续时间可获得为PTO减去@presentationTimeOffset的值的差。
如果内容可通过多个周期提供,则内容提供商可提供内容,使得实际媒体呈现时间可尽可能接近实际周期持续时间。可建议,周期持续时间可为包含于周期中的所有表示的呈现持续时间的最大值。
在某些情形中,内容提供商提供下一周期中的内容,所述内容可为前一周期中,可能紧跟着的周期中或稍后的周期中的内容的延续。举例来说,在已插入广告周期之后后者适用。内容提供商可表达通过将等效资产识别符指派给两个周期及通过识别具有属性@id的相同值的两个适应集合,包含于两个不同周期中的两个适应集合中的媒体组成相关联。
如果两个不同周期中的适应集合相关联,则以下参数中的任一者或全部针对两个适应集合可为相同的:如通过@lang属性描述的语言、通过@contentType属性描述的媒体组成类型、如通过@par属性描述的图片高宽比、如通过角色元素描述的任何角色特性、如通过可存取性元素描述的任何可存取性特性及如通过视角元素描述的视角特性。在一个实例中,可根据本发明的技术修改DASH标准,以要求在两个不同周期中的适应集合相关联的情况下,以上参数中的每一者针对两个适应集合相同。
此外,如果以下条件中的每一者针对两个适应集合是真实的,则一个MPD中的两个适应集合可称为周期连续的:
●适应集合被指示为相关联及/或确定为相关联,
●@presentationTimeOffset可存在或针对两个适应集合中的所有表示可推断为0,
●在一个适应集合内,@presentationTimeOffset的值针对所有表示可为相同的,
●@presentationTimeOffset的值与一个适应凝视中的所有表示的呈现持续时间的总和等于另一适应集合中的@presentationTimeOffset的值,及
●如果两个适应集合中的表示具有@id的相同值,则这些表示可具有功能上等效的初始化片段,即,一个表示的初始化片段可用于继续另一表示的播出。
内容作者可通过使用上文引入的两个实例技术中的一者(例如,使用呈现持续时间信令,例如@presentationTimeDuration属性及/或具有设定成“urn:mpeg:dash:period_continuity:2014”的@scheme_id_URI的补充描述符)用信号表示呈现持续时间而用信号表示周期连续的适应集合。如果MPD含有具有相同资产识别符的周期,则内容作者可向MPD提供周期连续的适应集合。此外,如果一个MPD中的两个适应集合是周期连续的并且第二适应集合已使具有@schemeIDURI=“urn:mpeg:dash:period-switchable”的补充描述符相关联,则第一适应的任何表示与来自不具有初始化片段的第二适应集合的任何表示的级联产生位流格式,当在第一适应集合中用信号表示时,所述位流格式符合使用的媒体格式。此特性可称为周期可级联适应集合。对于客户端处的简化处理,如果MPD含有具有相同资产识别符的周期,则内容作者可向MPD提供周期可级联的适应集合。
通常就内容提供而言,在周期边界处确保连续性。此外,内容可通过不同编解码器、语言属性及不同保护提供。客户端可跨越周期连续地播放内容,但就实施方案而言可存在提供完全连续及无缝播出的暗示。在周期边界处可能如此(例如,其中不存在连续性),呈现引擎可(举例来说)由于格式、编解码器或其它特性的变化再初始化。这可引起再初始化延迟。可减小或最小化此种再初始化延迟。
如果MPD为静态类型,则实际媒体呈现可通过初始化延迟延长。然而,在动态服务的情况下,将再初始化延迟添加到播出可引起编码器与呈现引擎之间的偏移。因此,可在每个周期结束时调整播出以提供连续呈现,而不会添加MPD中记录的时间与实际播出之间的偏移,即,实际播出时间与周期开始时间之间的差可保持恒定。
如果在一个周期中客户端呈现特定适应集合的媒体组成,并且如果以下周期已指派相同资产识别符,则客户端可识别相关联周期并且在不存在其它信息的情况下,继续播放相关联适应集合中的内容。
如果此外适应集合是周期连续的,即,呈现时间是连续的且此可在MPD中用信号表示,则客户端可跨越周期边界无缝地播放内容。最适当的是,客户端可继续播放适应集合中具有相同@id的表示,但不可保证此表示可为可用的。在这种情况下,客户端应无缝地切换到适应集合中的任何其它表示。
输入格式可为符合点播简档的MPD。下表中提供MPD的相关元素及属性。在以下实例中,MPD含有两个适应集合。
表1-用于点播简档的相关信息
对于每个表示,可通过提供于表示为baseURL的BaseURL中的表示的URL下载片段指数并且SegmentBase@indexRange的值初始表示为如下:
GET baseURL HTTP/1.1
范围:字节0-(初始-1)
随后可针对片段指数解析接收到的字节范围。可从第一片段指数框中提取信息。轨道的时间标度可从片段指数时间标度中提取并且可表示为时间标度。子片段的总数目Nsub可从片段指数中提取为reference_count。最早呈现时间ept可从片段指数中提取为earliest_presentation_time。第一偏移fo可从片段指数中提取为first_offset。对于每个叶子片段i,每个叶子片段的片段指数中的子片段持续时间表示为sdur[i],子片段大小表示为size[i]且其它子片段相关信息表示为ssi[i]。
在点播流的一个实例中,呈现可最早在相对于周期开始时间表达的媒体呈现时间tsplit处在两个周期中拆分。可存在两个适应集合并且每个适应集合可具有一个表示。在一些实例中,可应用适应集合的子片段边界的对准。
可假设以下信息可用于单一周期内容。
●period@start ps
●MPD@mediaPresentationDuration mpDUR
●BaseURL bu1,bu2
●SegmentBase@indexRange ir1,ir2
●SegmentBase@timecale ts1,ts2
●SegmentBase@presentationDuration pd1,pd2
●表示的片段指数
○Nsub1,Nsub2
○ept1,ept2
○fo1,fo2
○sdur1[i],sdur2[i]
○fo1[i],fo2[i]
○ssi1[i],ssi2[i]
为了产生新的媒体呈现,可产生以下信息:
在针对每个适应集合的每个表示的第一周期中的属性及元素的更新:
a.period@start ps1
b.add period@duration pdur1=tsplit
c.BaseURL bu11,bu12
d.SegmentBase@indexRange ir11,ir12
e.SegmentBase@presentationTimeOffset pto11,pto12
f.SegmentBase@presentationDuration pd11,pd12
g.表示的片段指数
i.Nsub11,Nsub12
ii.ept11,ept12
iii.fo11,fo12
iv.sdur11[i],sdur12[i]
v.ssi11[i],ssi12[i]
h.可缩短表示本身
在每个表示的新第二周期中的元素及属性的更新及添加:
a.add period@duration pdur2
b.BaseURL bu21,bu22
c.SegmentBase@indexRange ir21,ir22
d.SegmentBase@presentationTimeOffset pto21,pto22
e.SegmentBase@presentationDuration pd21,pd22
f.表示的片段指数
i.Nsub21,Nsub22
ii.ept21,ept22
iii.fo21,fo22
iv.sdur21[i],sdur22[i]
v.ssi21[i],ssi22[i]
可产生表示本身。
针对与片段边界对准的第一表示可如下产生新信息。例如根据以下算法,首先Nsub11可发现对应于tsplit:
●时间=ept1-pto1
●Nsub11=0
●当(时间<tsplit*ts1Nsub11<Nsub1))时
●执行
○时间+=sdur[Nsub11]
○Nsub11++
●完成
通过此算法,可确定Nsub11。Nsub11可小于Nsub1。如果Nsub11不小于Nsub1,则不必执行周期拆分。
当可能需要准确片段边界处的拆分时,表示1的拆分时间可为tsplit1=时间/ts1>=tsplit。应注意,所通知的拆分可为tsplit,但在表示水平上,仅片段边界被拆分。新的片段指数大小可小于前一个片段指数大小,即,新片段指数大小可小(Nsub1-Nsub11)*12字节。这可从第一偏移中扣除。
时间可为呈现持续时间pd11。可维持周期1的period@start。period@duration可设定成tsplit。以下算法是可如何针对周期1中的表示1产生新信息的一个实例。
●bu11=bu1_period1
●ir11=ir1-(Nsub1-Nsub11)*12
●pto11=pto1
●pd11=时间
●ept11=ept1
●fo11=fo1-(Nsub1-Nsub11)*12
●i=0
●当(当(i<Nsub11)时)时
●执行
○ssi11[i]=ssi1[i]
○i++
●完成
例如根据以下算法,随后Nsub12可发现对应于tsplit:
●时间=ept2-pto2
●Nsub12=0
●当(时间<tsplit*ts2&&Nsub12<Nsub2))时
●执行
○时间+=sdur[Nsub12]
○Nsub12++
●完成
表示2的真实拆分时间可为tsplit2=时间/ts2>=tsplit,可能需要准确子片段边界处的拆分。新的片段指数大小可小于前一个片段指数大小,例如,所述新片段指数大小可小(Nsub2-Nsub12)*12字节。这可从第一偏移中扣除。
时间可为呈现持续时间pd21。以下算法是可如何针对周期1中的表示2产生新信息的一个实例。
●bu12=bu2_period1
●ir12=ir2-(Nsub2-Nsub12)*12
●pto12=pto2
●pd12=时间
●ept12=ept2
●fo12=fo2-(Nsub2-Nsub12)*12
●i=0
●当(当(i<Nsub12)时)时
●执行
○ssi12[i]=ssi2[i]
○i++
●完成
可产生新的周期2。具体而言,在一个实例中,服务器装置可产生新的周期2。首先,服务器装置60可复制来自周期1的信息(此外资产识别符及具有标识的适应集合等)。不需要提供新周期的period@start。新周期的period@duration pdur2可为mpDUR-tsplit。以下算法是可如何针对周期2中的表示1产生新信息的一个实例。
●Nsub12=Nsub1-Nsub11
●bu21=bu1_period2
●ir21=ir1-(Nsub1-Nsub12)*12
●pto21=(tsplit1-tsplit)*ts1
●pd21=pd1-pd11
●ept21=pd11
●fo21=fo1-(Nsub1-Nsub12)*12
●i=0
●当(当(i<Nsub12)时)时
●执行
○ssi21[i]=ssi1[i+Nsub11]
○i++
●完成
以下算法是可如何针对周期2中的表示2产生新信息的一个实例。
●Nsub22=Nsub2-Nsub12
●bu22=bu2_period2
●ir22=ir2-(Nsub2-Nsub22)*12
●pto22=(tsplit2-tsplit)*ts2
●pd22=pd2-pd12
●ept22=pd12
●fo22=fo2-(Nsub2-Nsub22)*12
●i=0
●当(当(i<Nsub22)时)时
●执行
○ssi22[i]=ssi2[i+Nsub12]
○i++
●完成
在其它实例中,tsplit1可用作拆分时间,以便使pto21为0。当在IDR帧处执行分离时这可能如此。
以上信息可映射回具有相同信息的完整MPD中,但通过上述算法,可在时间tsplit处产生剪接点。任何周期可在所述剪接点处插入。以上努力可清除MPD@mediaPresentationDuration并且如上文所提及添加及替换。
在本发明的另一实例技术中,可使用直播流。对于直播简档信息,所述信息可获自MPD及片段。轨道的时间标度可从片段指数时间标度中提取并且可表示为时间标度。片段的总数目Nseg可从片段信息中提取。最早呈现时间ept可从片段指数中提取为earliest_presentation_time。第一偏移@startNumber可从MPD中提取。对于每个片段I,每个叶子片段的片段指数中的片段持续时间表示为sdur[i]并且其它片段相关信息表示为si[i]。
在一个实例呈现中,呈现可最早在相对于周期开始时间表达的媒体呈现时间tsplit处在两个周期中拆分。此拆分可不与第二适应集合的片段边界对准。可存在两个适应集合并且每个适应集合可具有一个表示。
可假设以下信息可用于单一周期内容。
●period@start ps
●MPD@mediaPresentationDuration mpDUR
●SegmentTemplate@media mt1,mt2
●SegmentTemplate@timecale ts1,ts2
●SegmentTemplate@presentationDuration pd1,pd2
●片段信息
○Nseg1,Nseg2
○ept1,ept2
○sn1,sn2
○sdur1[i],sdur2[i]
○si1[i],si2[i]
为了产生新的媒体呈现,可产生以下信息:
●服务器装置可如下更新针对每个适应集合的每个表示的第一周期中的属性及元素:
○period@start ps1
○add period@duration pdur1=tsplit
○SegmentTemplate@media mt11,mt12
○SegmentTemplate@presentationTimeOffset pto11,pto12
○SegmentTemplate@presentationDuration pd11,pd12
○表示的片段信息
■Nseg11,Nseg12
■ept11,ept12
■sn11,sn12
■sdur11[i],sdur12[i]
■si11[i],si12[i]
○可缩短表示本身
●服务器装置可如下更新及添加针对每个表示的新第二周期中的元素及属性:
○add period@duration pdur2
○SegmentTemplate@media mt21,mt22
○SegmentTemplate@presentationTimeOffset pto21,pto22
○SegmentTemplate@presentationDuration pd21,pd22
○表示的片段信息
■Nseg21,Nseg22
■ept21,ept22
■sn21,sn22
■sdur21[i],sdur22[i]
■si21[i],si22[i]
○可产生表示本身
服务器装置可针对与片段边界对准的第一表示如下产生新信息。根据以下算法,首先Nseg11可发现对应于tsplit:
●时间=ept1-pto1
●Nseg11=0
●当(时间<tsplit*ts1&&Nseg11<Nseg1))时
●执行
○时间+=sdur[Nseg11]
○Nseg11++
●完成
通过此算法,服务器装置可确定Nseg11。Nseg11可小于Nseg1。如果Nseg11不小于Nseg1,则可不执行周期拆分。时间可为呈现持续时间pd11。当可能需要准确片段边界处的拆分时,表示1的拆分时间可为tsplit1=时间/ts1>=tsplit。应注意,所通知的拆分可为tsplit,但在表示水平上,仅片段边界可被拆分。可维持周期1的period@start。period@duration可设定成tsplit。以下算法是可如何针对周期1中的表示1产生新信息的实例。
●mt11=mt1
●pto11=pto1
●pd11=时间
●ept11=ept1
●sn11=sn1
●i=0
●当(当(i<Nseg11)时)时
●执行
○si11[i]=si1[i]
○i++
●完成
例如根据以下实例算法,随后Nseg12可发现对应于tsplit:
●时间=ept2-pto2
●Nseg12=0
●当(时间<tsplit*ts2&&Nseg12<Nseg2))时
●执行
○时间+=sdur[Nseg12]
○Nseg12++
●完成
当可能需要准确子片段边界处的拆分时,表示2的真实拆分时间可为tsplit2=时间/ts2>=tsplit。时间可为呈现持续时间pd12。以下算法是可如何针对周期1中的表示2产生新信息的实例。
●mt12=mt2
●pto12=pto2
●pd12=时间
●ept12=ept2
●sn12=sn2
●i=0
●当(当(i<Nseg12)时)时
●执行
○si12[i]=si2[i]
○i++
●完成
可产生新的周期2。首先,可复制来自周期1的信息(此外资产识别符及具有标识的适应集合等)。可不提供新周期的period@start。新周期的period@duration pdur2可为mpDUR-tsplit。以下算法是可如何针对周期2中的表示1产生新信息的实例。
●Nseg12=Nseg1-Nseg11
●mt21=mt1
●pto21=(tsplit1-tsplit)*ts1
●pd21=pd1-pd11
●ept21=pd11
●sn21=sn1+Nseg11
●i=0
●当(当(i<Nseg12)时)时
●执行
○si21[i]=si1[i+Nseg11]
○i++
●完成
以下算法是可如何针对周期2中的表示2产生新信息的实例。
●Nseg22=Nseg2-Nseg12
●mt22=mt2
●pto22=(tsplit1-tsplit)*ts2
●pd22=pd2-pd12
●ept22=pd12
●sn22=sn2+Nseg12
●i=0
●当(当(i<Nseg22)时)时
●执行
○si22[i]=si2[i+Nseg12]
○i++
●完成
在一些实例中,tsplit1可用作拆分时间,以便使pto21为0。当在IDR帧处执行分离时这可能如此。
以上信息可映射回具有相同信息的完整MPD中,但通过此,可在时间tsplit处产生剪接点。任何周期可插入此处。以上努力可清除MPD@mediaPresentationDuration并且如上文所提及添加及替换信息。
使用本发明的技术,可优化点播简档。点播简档提供的问题可为:为了执行用于广告插入的周期构造,必须物理地修改文件。这具有两个结果。第一,修改需要文件水平修改且相对复杂。这意味着对于广告插入,可改变内容。第二,如果考虑不同广告剪接点,则可使用不同内容及不同URL。这意味这对于相同内容,可降低存储效率及尤其高速缓存效率。因此,下文可提出仅基于MPD层级信息实现周期及广播插入。这需要MPD中的若干修改并且这些工具应被添加到包含x链路的新开发的广告插入简档。
在点播流的一个实例中,呈现可最早在相对于周期开始时间表达的媒体呈现时间tsplit处在两个周期中拆分。可存在两个适应集合并且每个适应集合可具有一个表示。在一些实例中,可应用适应集合的子片段边界的对准。可假设以下信息可用于单一周期内容。
●period@start ps
●MPD@mediaPresentationDuration mpDUR
●BaseURL bu1,bu2
●SegmentBase@indexRange ir1,ir2
●SegmentBase@timecale ts1,ts2
●SegmentBase@presentationDuration pd1,pd2
●表示的片段指数
○Nsub1,Nsub2
○ept1,ept2
○fo1,fo2
○sdur1[i],sdur2[i]
○fo1[i],fo2[i]
○ssi1[i],ssi2[i]
为了产生新的媒体呈现,可产生以下信息:
●在针对每个适应集合的每个表示的第一周期中的属性及元素的更新:
○period@start ps1
○add period@duration pdur1=tsplit
○SegmentBase@indexRange
○SegmentBase@presentationTimeOffset pto11,pto12
○SegmentBase@presentationDuration pd11,pd12
●在每个表示的新第二周期中的元素及属性的更新及添加:
○add period@duration pdur2
○SegmentBase@indexRange
○SegmentBase@presentationTimeOffset pto21,pto22
○SegmentBase@presentationDuration pd21,pd22
针对pto及pd的以上信息可通过与针对点播简档相同的方式产生。唯一不同之处在于,可使用片段指数中的信息在表示中明确地表达:对于此表示可仅播放pto与pd之间的时间。
以下实例参考图3。指向含有单一周期呈现的CDN上的点播内容的MPD是可用的。MPD可基于线索(广告插入机会)修改成广告多个周期,而不改变服务器上的内容。对于每个机会,可提供到广告决策服务器的x链路。可将MPD提供到DASH客户端。对于MPD中的每个x链路,可检查是否添加广告(可能将用户定为目标)。如果否,则周期可解析至0。如果是,则可添加其它内容。DASH客户端连续地播放内容,并且如果解析至零,则媒体引擎可不进行最新初始化。
图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正俘获音频数据的同时)俘获说话参与者的视频数据。因此,音频帧可在时间上对应于一或多个特定视频帧。因此,对应于视频帧的音频帧大体上对应于同时俘获到音频数据及视频数据且音频帧及视频帧分别包括同时俘获到的音频数据及视频数据的情形。
在一些实例中,音频编码器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单元及非VCLNAL单元。VCL单元可含有核心压缩引擎,且可包含块、宏块及/或切片层级数据。其它NAL单元可为非VCL NAL单元。在一些实例中,一个时间例子中的经译码图片(通常呈现为初级经译码图片)可容纳在接入单元中,所述接入单元可包含一或多个NAL单元。
非VCL NAL单元可包含参数集NAL单元及SEI NAL单元等等。参数集可含有序列水平标头信息(在序列参数集(SPS)中)及不频繁改变的图片水平标头信息(在图片参数集(PPS)中)。在参数集(例如,PPS及SPS)的情况下,不频繁改变的信息不需要对于每一序列或图片重复,因此可改进译码效率。另外,使用参数集可实现重要标头信息的带外发射,从而避免了对于用于抗误码的冗余发射的需要。在带外发射实例中,参数集NAL单元可在与其它NAL单元(例如SEI NAL单元)不同的信道上发射。
辅助增强信息(SEI)可含有对于对来自VCL NAL单元的经译码图片样本进行解码不是必需的信息,但是可辅助与解码、显示、抗误码及其它目的相关的过程。非VCL NAL单元中可含有SEI消息。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包含存储媒体62,其存储各种多媒体内容64,每一多媒体内容包含相应的清单文件66及一或多个表示68A-68N(表示68)。在一些实例中,输出接口32还可向网络74直接发送数据。
在一些实例中,表示68可分成若干适应集合。也就是说,表示68的各种子集可包含相应共同的特征集合,例如编解码器、简档及水平、分辨率、视图数目、片段的文件格式、可识别有待与待解码及呈现的表示及/或音频数据(例如,说话者发出的)一起显示的文本的语言或其它特征的文本类型信息、可描述适应集合中的表示的场景的相机角度或现实世界相机视角的相机角度信息、描述对于特定受众的内容适合性的分级信息等等。
清单文件66可包含指示对应于特定适应集合的表示68的子集以及所述适应集合的共同特征的数据。清单文件66还可包含表示适应集合的个别表示的个别特征(例如位速率)的数据。以此方式,适应集合可提供用于简化的网络带宽适应。适应集合中的表示可使用清单文件66的适应集合元素的子代元素来指示。根据本发明的技术,服务器装置60可修改清单文件66以指示多媒体内容64包含两个或两个以上连续周期,广告内容可插入所述两个连续周期之间。
具体而言,服务器装置60可使用上述不同技术中的任一者或类似技术构造清单文件66以指示多媒体内容64中存在连续周期,使得额外内容(例如,广告内容)可插入连续周期之间。举例来说,服务器装置60可将Period@duration属性添加到每个周期的清单文件66,每个周期被拆分成两个连续周期。同样地,服务器装置60可将指示新的连续周期的数据添加到清单文件66,例如Period@duration元素、baseURL元素、SegmentBase@indexRange元素、SegmentBase@presentationTimeOffset元素及SegmentBase@presentationDuration元素。此外,服务器装置60可用信号表示上述不同片段指数元素,且从现有表示中产生用于新周期的新表示。
因此,在一些实例中,服务器装置60可将媒体数据的主要内容拆分成多个周期,包含第一周期及第二周期,其中第一周期及第二周期在时间上是依序的。也就是说,第一及第二周期包含用于既定连续播出的主要内容的数据。服务器装置60可将辅助媒体内容(例如,广告媒体内容)插入第一周期与第二周期之间。此外,服务器装置60可用信号表示多个周期中的每一者的时间指示符,所述时间指示符界定多个周期中的每一者的一或多个时间特征。时间指示符可包括(举例来说)清单文件66中用于周期的Period@duration属性。服务器装置60随后可从例如客户端装置40接收请求以检索包括周期、辅助媒体内容及时间指示符的媒体流。所述请求可为多个请求中的一者以从客户端装置40检索媒体流的数据。举例来说,多个请求可为HTTP GET或部分GET请求。
尽管相对于服务器装置60描述以上技术,但是应理解,内容准备装置20还可(即,另外或在替代方案中)经配置以将周期拆分成两个连续周期且将广告媒体数据插入所述连续周期之间。
服务器装置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可检索媒体呈现的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可经配置以根据例如eMBMS或IP多播等广播或多播网络协议接收数据。在此类实例中,检索单元52可提交加入与特定媒体内容相关联的多播网络群组的请求。在加入多播群组之后,检索单元52可在无发布到服务器装置60或内容准备装置20的进一步请求的情况下接收多播群组的数据。检索单元52可提交当不再需要多播群组的数据时离开多播群组的请求,例如停止回放或将信道改变到不同多播群组。
此外,根据本发明的技术,检索单元52可经配置以确定清单文件66是否指示多媒体内容64的两个或两个以上周期是连续的。举例来说,检索单元52可确定当两个周期的两个适应集合相关联时所述适应集合是周期连续的,清单文件66包含@presentationTimeOffset元素或针对适应集合中的所有表示可推断为0,在一个适应集合内@presentationTimeOffset的值对于所有表示是相同的,@presentationTimeOffset的值与一个适应集合中的所有表示的呈现持续时间的总和等于另一适应集合的@presentationTimeOffset的值。
此外,检索单元52可将一个周期的一个适应集合中的一个表示的初始化片段用作另一周期的另一适应集合中的表示的初始化片段,其中如果表示具有@id的相同值,则适应集合是周期连续的。同样地,在两个适应集合是周期连续的且稍后的适应集合具有相关联的补充描述符(其具有@schemeIDURI=“urn:mpeg:dash:period-switchable”)的情况下,检索单元52可确定适应集合中的一者中的表示可与来自另一适应集合的任何表示级联,而不初始化另一适应集合的片段。以此方式,假定第一及第二周期是连续的,则检索单元52可基于第一周期的适应集合的选择而选择第二周期的适应集合(例如,不另外分析第二周期的适应集合的特征)。
以此方式,检索单元52可经配置以确定媒体内容的清单文件指示媒体内容包含第一周期及第二周期,清单文件指示第一及第二周期是连续的且广告媒体数据可用于插入第一周期与第二周期之间。检索单元52还可经配置以至少部分地基于针对第一周期中的第一适应集合用信号表示的特征而选择所述第一适应集合。此类特征可包含(举例来说)译码及再现特征,例如编解码器、简档、水平、图片尺寸、帧速率等等。为了选择适应集合,检索单元52可将客户端装置40的译码及再现功能与不同可用适应集合的特征比较,并且选择可通过客户端装置40编码及再现的适应集合。
检索单元52随后可基于第一适应集合的选择而检索第一适应集合的媒体数据。更确切地说,检索单元52可例如基于用于适应集合的表示的可用网络带宽及位速率而选择适应集合的表示(如果一个以上表示是可用的),使得表示的位速率不超过可用的网络带宽。检索单元52还可检索广告媒体数据。此外,检索单元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将视频文件输出到计算机可读媒体34,举例来说发射信号、磁性媒体、光学媒体、存储器、快闪驱动器,或其它计算机可读媒体。
网络接口54可经由网络74接收NAL单元或存取单元,且经由检索单元52将NAL单元或存取单元提供到解封装单元50。解封装单元50可将视频文件的元素解封装成组成PES流,将PES流解包化以检索经编码数据,且依据经编码数据是音频流还是视频流的一部分(例如,如通过流的PES包标头所指示)而向音频解码器46或视频解码器48发送经编码数据。音频解码器46对经编码音频数据进行解码,并且向音频输出42发送经解码音频数据,而视频解码器48对经编码视频数据进行解码,并且向视频输出44发送所述经解码视频数据,其可包含流的多个视图。
在一个实例中,描述检索媒体数据的方法,所述方法包括:通过媒体服务器将媒体数据的主要内容拆分成多个周期;通过媒体服务器将辅助媒体内容插入第一周期与第二周期之间,其中第一周期及第二周期在时间上是依序的;通过媒体服务器用信号表示多个周期中的每一者的时间指示符,其中时间指示符界定用于多个周期中的每一者的一或多个时间特征;及通过媒体服务器从基于HTTP的动态自适应流(DASH)客户端接收请求以检索包括多个周期、辅助媒体内容及时间指示符的媒体流。
在另一实例中,描述检索媒体数据的方法,所述方法包括确定媒体内容的清单文件指示媒体内容包含第一周期及第二周期、所述清单文件指示第一及第二周期是连续的及广告媒体数据可用于插入第一及第二周期之间;至少部分地基于针对第一周期中的第一适应集合用信号表示的特征而选择所述第一适应集合;基于第一适应集合的选择而检索第一适应集合的媒体数据;检索广告媒体数据;及基于第一适应集合的选择而检索第二周期中的第二适应集合的媒体数据,清单文件指示第二周期中的第二适应集合与第一适应集合相关联。
在另一实例中,描述检索媒体数据的方法,所述方法包括确定媒体内容是否包含第一周期及第二周期;确定第一周期及第二周期是否是连续的;确定广告媒体数据是否可用于插入第一周期与第二周期之间;及形成清单文件,其中所述清单文件包含媒体内容是否包含第一周期及第二周期、第一周期及第二周期是否是连续的及广告媒体数据是否可用于插入第一周期与第二周期之间的指示。
图2是说明实例多媒体内容102的元素的概念图。多媒体内容102可对应于多媒体内容64(图1),或存储在存储媒体62中的另一多媒体内容。在图2的实例中,多媒体内容102包含媒体呈现描述(MPD)104及多个表示110A-110N。表示110A包含任选的标头数据112及片段114A-114N(片段114),而表示110N包含任选的标头数据122及片段124A-124N(片段124)。为了方便起见,使用字母N来标明表示110A、110N中的每一者中的最后一个电影片段。在一些实例中,表示110A、110N之间可能存在不同数目的电影片段。
MPD 104可包括与表示110A-110N分开的数据结构。MPD 104可对应于图1的清单文件66。同样,表示110A-110N可对应于图1的表示68。一般来说,MPD 104可包含大体描述表示110A-110N的特征的数据,例如译码及再现特征、适应集合、MPD 104所对应的简档、文本类型信息、相机角度信息、分级信息、特技模式信息(例如,指示包含时间子序列的表示的信息)及/或用于检索遥远周期(例如,用于在回放期间向媒体内容中插入定向广告)的信息。
标头数据112当存在时可描述片段114的特征,例如随机存取点(RAP,也称为流接入点(SAP))的时间位置、片段114中的哪一者包含随机存取点、到片段114内的随机存取点的字节偏移、片段114的统一资源定位符(URL),或片段114的其它方面。标头数据122当存在时可描述片段124的类似特征。另外或替代地,这些特性可完全包含在MPD 104内。
片段114、124包含一或多个经译码视频样本,其中的每一者可包含视频数据的帧或切片。片段114的经译码视频样本中的每一者可具有类似特征,例如,高度、宽度及带宽要求。可通过MPD 104的数据描述这些特征,但是图2的实例中未说明这些数据。MPD 104可包含如3GPP规范描述的特征,其中添加了本发明中描述的用信号表示的信息中的任一者或全部。
片段114、124中的每一者可与唯一统一资源定位符(URL)相关联。因此,片段114、124中的每一者可使用流式传输网络协议(例如DASH)可独立地检索。以此方式,例如客户端装置40等目的地装置可使用HTTP GET请求来检索片段114或124。在一些实例中,客户端装置40可使用HTTP部分GET请求来检索片段114或124的特定字节范围。
根据本发明的技术,媒体呈现描述104可指示表示110A-110N所对应的周期与后续表示(未展示)可对应的另一周期是连续的。因此,包含表示110A-110N的适应集合可与另一周期的适应集合相关联。因此,包含表示110A-110N的适应集合的一或多个特征可与另一适应集合相同,其中此类特征可包含以下各项中的任一者或全部:如通过媒体呈现描述104的@lang属性描述的语言、通过媒体呈现描述104的@contentType属性描述的媒体组成类型、如通过媒体呈现描述104的@par属性描述的图片高宽比、如通过媒体呈现描述104的角色元素描述的任何角色特性、如通过媒体呈现描述104的可存取性元素描述的任何可存取性特性及/或如通过媒体呈现描述104的视角元素描述的任何视角特性。
以此方式,客户端装置40可基于在媒体呈现描述104中用信号表示的特征而选择包含表示110A-110N的适应集合,且随后基于包含表示110A-110N的适应集合的选择而检索(后续的连续周期的)另一调适集合的媒体数据。也就是说,客户端装置40无需评估相关联适应集合的特征,因为此类特征是相同的(基于媒体呈现描述104中后续周期的适应集合与包含表示110A-110N的适应集合相关联的指示)。
图3是说明可实施本发明的技术的另一实例系统200的框图。图4中的系统200的元件通常可对应于图1的元件。举例来说,系统200包含广告(ad)决策服务器208、内容分布系统212及客户端装置206。内容分布系统212的元件通常可对应于图1的内容准备装置20及/或服务器装置60,而客户端装置206的元件可对应于图1的客户端装置40。在一些实例中,客户端装置206的元件可对应于图1的检索单元52。
在此实例中,客户端装置206包含媒体引擎202及DASH接入客户端204。内容分布系统212包含MPD产生器214、打包器216及内容分布网络(CDN)/源服务器218。源服务器218存储MPD 220、主要内容222A-222C及广告数据224A-224C。
媒体引擎202、DASH接入客户端204、MPD产生器214及打包器216可在硬件或软件中实施。当在软件中实施时,假定还提供例如一或多个处理单元及一或多个计算机可读存储媒体等必需硬件。计算机可读存储媒体可存储软件的指令并且处理单元可执行所述指令以执行上文描述的功能。
指向含有单一周期呈现的CDN上的点播内容的MPD是可用的。MPD基于线索(广告插入机会)修改成广告多个周期,而不改变服务器上的内容。对于每个机会,提供到广告决策服务器的x链路。将MPD提供到DASH客户端。对于MPD中的每个x链路,检查是否添加广告(可能将用户定为目标)。如果否,则周期可解析至0。如果是,则添加其它内容。DASH客户端连续地播放内容,并且如果解析至零,则媒体引擎不进行最新初始化。
图3的MPD产生器214可经配置以指示两个或两个以上周期是连续的。因此,MPD产生器214可根据本发明的技术指示在MPD(或其它清单文件)中的相关联(如上文所论述)的周期的适应集合。因此,客户端装置206可基于通过MPD产生器214产生的在MPD中用信号表示的第一周期的适应集合的特征而选择一个周期的适应集合及另一连续周期的相关联适应集合。
以此方式,内容分布系统212及CDN/源服务器218表示用于发送媒体数据的装置的实例,所述装置包含:存储器,其经配置以存储媒体数据;及一或多个基于硬件的处理器,其经配置以:将媒体数据的主要内容拆分成包含第一周期及第二周期的多个周期,所述第一周期及所述第二周期在时间上是依序的;将辅助媒体内容插入第一周期与第二周期之间;用信号表示多个周期中的每一者的时间指示符,其中所述时间指示符界定多个周期中的每一者的一或多个时间特征;及从基于HTTP的动态自适应流(DASH)客户端接收请求以检索包括多个周期、辅助媒体内容及时间指示符的媒体流。
同样地,客户端装置206表示用于检索媒体数据的装置的实例,所述装置包含:存储器,其经配置以存储媒体数据;及一或多个基于硬件的处理器,其经配置以:确定媒体内容的清单文件指示媒体内容包含第一周期及第二周期、所述清单文件指示第一及第二周期是连续的及广告媒体数据可用于插入第一周期及第二周期之间;至少部分地基于针对第一周期中的第一适应集合用信号表示的特征而选择所述第一适应集合;基于第一适应集合的选择而检索第一适应集合的媒体数据;检索广告媒体数据;及基于第一适应集合的选择而检索第二周期中的第二适应集合的媒体数据且将所检索媒体数据存储到存储器,清单文件指示第二周期中的第二适应集合与第一适应集合相关联。
图4是说明根据本发明一或多个技术发送媒体数据的方法的流程图。在此实例中,媒体服务器可将媒体数据的主要内容拆分成多个周期(300)。媒体服务器可将辅助媒体内容插入第一周期与第二周期之间(302),其中所述第一周期及所述第二周期在时间上是依序的。辅助媒体内容可为(举例来说)将以与主要媒体内容大体上相同的方式呈现的广告媒体内容。媒体服务器可用信号表示多个周期中的每一者的时间指示符(304),其中所述时间指示符界定多个周期中的每一者的一或多个时间特征。媒体服务器可例如从基于HTTP的动态自适应流(DASH)客户端接收请求以检索媒体流(306)。媒体流的请求可对应于用于检索包括多个周期、辅助媒体内容及时间指示符的媒体流的请求。
图5是说明根据本发明的一或多个技术检索媒体数据的方法的流程图。在此实例中,装置确定清单文件的特征(310)。举例来说,装置可确定媒体内容的清单文件指示媒体内容包含第一周期及第二周期,清单文件指示第一及第二周期是连续的且广告媒体数据可用于插入第一周期与第二周期之间。装置可选择第一适应集合(312)。在一个实例中,第一适应集合可处于第一周期中,并且所述选择可至少部分地基于针对第一适应集合用信号表示的特征。装置随后可基于第一适应集合的选择而检索第一适应集合的媒体数据(314)。装置随后可检索广告媒体数据(316)。此外,装置可基于第一适应集合的选择而检索第二适应集合的媒体数据(318)。第二适应集合可处于第二周期中,并且清单文件可指示第二适应集合与第一适应集合相关联。
图6是说明根据本发明一或多个技术发送媒体数据的方法的流程图。在此实例中,装置可确定媒体内容是否包含第一周期及第二周期(320)。装置可确定第一周期及第二周期是否是连续的(322)。装置可确定广告媒体数据是否可用于插入例如第一周期与第二周期之间(324)。装置可形成清单文件(326),其中所述清单文件包含媒体内容是否包含第一周期及第二周期、第一周期及第二周期是否是连续的及广告媒体数据是否可用于插入第一周期与第二周期之间的指示。
图7是说明通过媒体服务器执行本发明的某些技术的实例方法的流程图。此实例方法包含通过媒体服务器将媒体数据的主要内容拆分成包含第一周期及第二周期的多个周期,其中第一周期及第二周期在时间上是依序的(350)。此实例方法还包含通过媒体服务器用信号表示指示辅助媒体内容可用于插入第一周期与第二周期之间的信息(352)。此实例方法进一步包含通过媒体服务器用信号表示多个周期中的每一者的时间指示符,其中所述时间指示符界定多个周期中的每一者的一或多个时间特征(354)。
图8是说明通过客户端装置执行本发明的某些技术的实例方法的流程图。此实例方法包含确定媒体内容的清单文件指示媒体内容包含第一周期及第二周期、清单文件指示第一及第二周期是连续的及广告媒体数据可用于插入第一周期与第二周期之间(370)。此实例方法还包含至少部分地基于针对第一周期中的第一适应集合用信号表示的特征而选择所述第一适应集合(372)。此实例方法进一步包含基于第一适应集合的选择而检索第一适应集合的媒体数据(374)。最后,此实例方法包含基于第一适应集合的选择而检索与第一适应集合相关联的第二周期中的第二适应集合的媒体数据(376)。
应理解,在一些实例中,客户端装置可经配置以执行上文描述的第一实例、第二实例及第三实例的技术中的任一者或全部。举例来说,不同内容分布网络可支持用于定向广告插入的不同机构,并且客户端装置可实施第一实例、第二实例及/或第三实例中的任一者或全部的技术。作为另一实例,内容分布网络可支持上文描述的第一实例、第二实例及/或第三实例的技术中的任一者或全部。此外,上文描述的第一实例、第二实例及/或第三实例的技术可以任何组合共同执行。
在一或多个实例中,描述的功能可用硬件、软件、固件或其任何组合来实施。如果以软件实施,那么所述功能可作为一或多个指令或代码在计算机可读媒体上存储或传输,并且由基于硬件的处理单元来执行。计算机可读媒体可包含计算机可读存储媒体,其对应于例如数据存储媒体或通信媒体等有形媒体,通信媒体包含例如根据通信协议促进将计算机程序从一处传递到另一处的任何媒体。以此方式,计算机可读媒体一般可对应于(1)有形计算机可读存储媒体,其为非暂时性的,或(2)通信媒体,例如信号或载波。数据存储媒体可为可由一或多个计算机或一或多个处理器存取以检索用于实施本发明中所描述的技术的指令、代码及/或数据结构的任何可用媒体。计算机程序产品可包含计算机可读媒体。
借助于实例而非限制性地,此类计算机可读存储媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器或可用于存储指令或数据结构的形式的所需程序代码并且可由计算机存取的任何其它媒体。并且,任何连接被恰当地称作计算机可读媒体。举例来说,如果使用同轴缆线、光纤缆线、双绞线、数字订户线(DSL)或例如红外线、无线电及微波等无线技术从网站、服务器或其它远程源传输指令,那么同轴缆线、光纤缆线、双绞线、DSL或例如红外线、无线电及微波等无线技术包含在媒体的定义中。然而,应理解,计算机可读存储媒体及数据存储媒体并不包含连接、载波、信号或其它暂时性媒体,而是实际上涉及非暂时性的有形存储媒体。如本文中所使用,磁盘及光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软性磁盘及蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光以光学方式再现数据。以上内容的组合也可包含在计算机可读媒体的范围内。
可由例如一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成或离散逻辑电路等一或多个处理器来执行指令。因此,如本文中所使用的术语“处理器”可指前述结构或适合于实施本文中所描述的技术的任一其它结构中的任一者。另外,在一些方面中,本文中所描述的功能性可在经配置用于编码及解码的专用硬件及/或软件模块内提供,或者并入在组合编解码器中。而且,所述技术可完全实施于一或多个电路或逻辑元件中。
本发明的技术可在各种装置或设备中实施,包含无线手持机、集成电路(IC)或一组IC(例如,芯片组)。本发明中描述各种组件、模块或单元是为了强调经配置以执行所揭示的技术的装置的功能方面,但未必需要由不同硬件单元实现。实际上,如上文所描述,各种单元可结合合适的软件及/或固件组合在编码解码器硬件单元中,或者通过互操作硬件单元的集合来提供,所述硬件单元包含如上文所描述的一或多个处理器。
描述了各种实例。这些及其它实例在所附权利要求书的范围内。
Claims (12)
1.一种检索媒体数据的方法,所述方法包括:
经由包括由电路实施的处理器的装置,确定媒体内容的清单文件指示所述媒体内容包含第一周期及第二周期、所述清单文件指示所述第一及第二周期是连续的及广告媒体数据可用于插入所述第一周期与所述第二周期之间;
当所述清单文件用信号表示第一适应集合及第二适应集合的资产识别符的相同值并且所述清单文件指示所述第一适应集合及所述第二适应集合具有相应“@id”属性的相同值时,确定所述第二适应集合与所述第一适应集合相关联;
经由所述装置,至少部分地基于针对所述第一周期中的所述第一适应集合用信号表示的特征而选择所述第一适应集合;
经由所述装置,基于所述第一适应集合的所述选择而检索所述第一适应集合的媒体数据;及
经由所述装置,基于所述第一适应集合的所述选择以及所述第二适应集合与所述第一适应集合相关联的所述确定,而检索与所述第一适应集合相关联的所述第二周期中的所述第二适应集合的媒体数据。
2.根据权利要求1所述的方法,其中所述清单文件包括媒体呈现描述MPD。
3.根据权利要求1所述的方法,其进一步包括:确定所述清单文件使用以下数据中的至少一者指示用于所述第一适应集合的表示的表示持续时间:用信号表示指定呈现持续时间的@presentationTimeDuration语法元素的值的数据或用信号表示所述第一适应集合的具有设定成“urn:mpeg:dash:period_continuity:2014”的@scheme_id_URI元素的补充描述符的数据。
4.根据权利要求3所述的方法,其中所述第一适应集合进一步包含与以下值匹配的包识别符PID的“@value”元素:所述清单文件中描述的周期的“@id”元素的值、表示适应集合识别符的“AdaptationSet@id”元素的值及用于所述第一适应集合的“@presentationTimeOffset”的值。
5.根据权利要求1所述的方法,其进一步包括:确定所述第二适应集合具有与所述第一适应集合共同的一或多个特征,其中所述共同特征包含语言、媒体组成类型、图片高宽比、角色特性、可存取性特性或视角特性中的一或多者。
6.根据权利要求1所述的方法,其进一步包括当以下情况时确定所述第二适应集合与所述第一适应集合是周期连续的:
所述第一及第二适应集合相关联;
“@presentationTimeOffset”存在于所述清单文件中或“@presentationTimeOffset”的值对于两个适应集合中的所有表示可推断为0;
对于所述第一适应集合及所述第二适应集合中的至少一者,所述清单文件指示“@presentationTimeOffset”的所述值对于所有表示都相同;及
所述“@presentationTimeOffset”的所述值与所述第一适应集合中的所有表示的呈现持续时间的总和等于所述第二适应集合的所述“@presentationTimeOffset”的所述值。
7.根据权利要求1所述的方法,其进一步包括当所述第一适应集合中的表示及所述第二适应集合中的对应表示具有@id属性的相同值时,将所述第一适应集合中的所述表示的初始化片段用作所述第二适应集合中的所述对应表示的初始化片段。
8.一种用于检索媒体数据的装置,所述装置包括:
存储器,其经配置以存储媒体数据;及
一或多个基于硬件的由电路实施的处理器,且经配置以:
确定媒体内容的清单文件指示所述媒体内容包含第一周期及第二周期、所述清单文件指示所述第一及第二周期是连续的及广告媒体数据可用于插入所述第一周期与所述第二周期之间,
当所述清单文件用信号表示第一适应集合及第二适应集合的资产识别符的相同值并且所述清单文件指示所述第一适应集合及所述第二适应集合具有相应“@id”属性的相同值时,确定所述第二适应集合与所述第一适应集合相关联;
至少部分地基于针对所述第一周期中的所述第一适应集合用信号表示的特征而选择所述第一适应集合,
基于所述第一适应集合的所述选择而检索所述第一适应集合的媒体数据,及
基于所述第一适应集合的所述选择以及所述第二适应集合与所述第一适应集合相关联的所述确定,而检索所述第二周期中的所述第二适应集合的媒体数据,所述清单文件指示所述第二周期中的所述第二适应集合与所述第一适应集合相关联,并且将所述第一适应集合和所述第二适应集合的所检索媒体数据存储到所述存储器。
9.根据权利要求8所述的装置,其中所述清单文件包括媒体呈现描述MPD。
10.根据权利要求8所述的装置,其中所述一或多个基于硬件的处理器经配置以确定所述第二适应集合具有与所述第一适应集合共同的一或多个特征,其中所述共同特征包含语言、媒体组成类型、图片高宽比、角色特性、可存取性特性或视角特性中的一或多者。
11.根据权利要求8所述的装置,其中所述一或多个基于硬件的处理器经配置以当以下情况时确定所述第二适应集合与所述第一适应集合是周期连续的:
所述第一及第二适应集合相关联;
“@presentationTimeOffset”存在于所述清单文件中或“@presentationTimeOffset”的值对于两个适应集合中的所有表示可推断为0;
对于所述第一适应集合及所述第二适应集合中的至少一者,所述清单文件指示“@presentationTimeOffset”的所述值对于所有表示都相同;及
所述“@presentationTimeOffset”的所述值与所述第一适应集合中的所有表示的呈现持续时间的总和等于所述第二适应集合的所述“@presentationTimeOffset”的所述值。
12.根据权利要求8所述的装置,其中所述一或多个基于硬件的处理器经配置以当所述第一适应集合中的表示及所述第二适应集合中的对应表示具有@id属性的相同值时,将所述第一适应集合中的所述表示的初始化片段用作所述第二适应集合中的所述对应表示的初始化片段。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910505360.XA CN110099288B (zh) | 2014-03-24 | 2015-03-24 | 发送媒体数据的方法及装置 |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201461969777P | 2014-03-24 | 2014-03-24 | |
US61/969,777 | 2014-03-24 | ||
US14/665,252 | 2015-03-23 | ||
US14/665,252 US9866608B2 (en) | 2014-03-24 | 2015-03-23 | Processing continuous multi-period content |
PCT/US2015/022264 WO2015148519A1 (en) | 2014-03-24 | 2015-03-24 | Processing continuous multi-period content |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910505360.XA Division CN110099288B (zh) | 2014-03-24 | 2015-03-24 | 发送媒体数据的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106134146A CN106134146A (zh) | 2016-11-16 |
CN106134146B true CN106134146B (zh) | 2019-07-05 |
Family
ID=54143215
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580012697.7A Active CN106134146B (zh) | 2014-03-24 | 2015-03-24 | 处理连续的多周期内容 |
CN201910505360.XA Active CN110099288B (zh) | 2014-03-24 | 2015-03-24 | 发送媒体数据的方法及装置 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910505360.XA Active CN110099288B (zh) | 2014-03-24 | 2015-03-24 | 发送媒体数据的方法及装置 |
Country Status (9)
Country | Link |
---|---|
US (2) | US9866608B2 (zh) |
EP (2) | EP3654653A1 (zh) |
JP (1) | JP6474830B2 (zh) |
KR (2) | KR102315233B1 (zh) |
CN (2) | CN106134146B (zh) |
CA (1) | CA2939250C (zh) |
ES (1) | ES2788901T3 (zh) |
HU (1) | HUE048719T2 (zh) |
WO (1) | WO2015148519A1 (zh) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015001986A1 (ja) | 2013-07-02 | 2015-01-08 | ソニー株式会社 | コンテンツ供給装置、コンテンツ供給方法、プログラム、端末装置、およびコンテンツ供給システム |
CN111416984B (zh) * | 2014-01-29 | 2024-08-23 | 皇家Kpn公司 | 建立事件的流传输呈现 |
US9866608B2 (en) | 2014-03-24 | 2018-01-09 | Qualcomm Incorporated | Processing continuous multi-period content |
GB2528039A (en) * | 2014-07-01 | 2016-01-13 | Canon Kk | Method for identifying objects across time periods and corresponding device |
US10547701B2 (en) | 2014-09-12 | 2020-01-28 | Sony Corporation | Transmission device, transmission method, reception device, and a reception method |
CN107079013B (zh) | 2014-10-14 | 2020-07-10 | 皇家Kpn公司 | 管理媒体流的并发流式传输 |
AU2016245350B2 (en) * | 2015-04-09 | 2019-10-24 | Dejero Labs Inc. | Systems, devices and methods for distributing data with multi-tiered encoding |
US10389785B2 (en) * | 2016-07-17 | 2019-08-20 | Wei-Chung Chang | Method for adaptively streaming an audio/visual material |
US9872062B1 (en) * | 2017-02-22 | 2018-01-16 | Wyse Technology L.L.C. | Enforcing synchronization by embedding audio within video frame data |
US10652166B2 (en) * | 2017-06-27 | 2020-05-12 | Cisco Technology, Inc. | Non-real time adaptive bitrate recording scheduler |
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 |
US11356715B2 (en) * | 2018-12-28 | 2022-06-07 | Tencent America LLC | Dynamic shortening of advertisement duration during live streaming |
US11546402B2 (en) * | 2019-01-04 | 2023-01-03 | Tencent America LLC | Flexible interoperability and capability signaling using initialization hierarchy |
US12041104B2 (en) | 2019-03-08 | 2024-07-16 | Vid Scale, Inc. | Methods and apparatus for adaptive streaming of point clouds |
US11616822B2 (en) * | 2019-09-30 | 2023-03-28 | Tencent America LLC | Session-based information for dynamic adaptive streaming over HTTP |
CH716844A1 (fr) * | 2019-11-27 | 2021-05-31 | Ad Insertion Platform Sarl | Procédé et système d'inclusion de blocs vidéo dans un flux vidéo en multicast. |
CN111193936B (zh) * | 2019-12-27 | 2021-11-12 | 腾讯科技(深圳)有限公司 | 视频流传输方法、装置、电子设备及计算机可读存储介质 |
US11671627B2 (en) * | 2020-09-17 | 2023-06-06 | Lemon Inc. | Operating point entity group signaling in coded video |
CN118044207A (zh) * | 2021-09-30 | 2024-05-14 | 抖音视界有限公司 | 用于视频流式传输的方法、装置和介质 |
US11973820B2 (en) * | 2021-10-06 | 2024-04-30 | Tencent America LLC | Method and apparatus for mpeg dash to support preroll and midroll content during media playback |
US20230336602A1 (en) * | 2022-04-19 | 2023-10-19 | Tencent America LLC | Addressable resource index events for cmaf and dash multimedia streaming |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1130004A (zh) * | 1993-08-31 | 1996-08-28 | 联合企业股份有限公司和无线电产业保护两合公司 | 检测非所愿的电视图象的方法和装置 |
CN101039404A (zh) * | 2006-03-15 | 2007-09-19 | 中兴通讯股份有限公司 | 一种实现网络直播中无缝插播的系统及方法 |
CN101110935A (zh) * | 2007-07-31 | 2008-01-23 | 腾讯科技(深圳)有限公司 | 一种在网络电视轮播节目中插播广告的方法及系统 |
CN101765856A (zh) * | 2007-07-24 | 2010-06-30 | 三星电子株式会社 | 使内容使用者或内容发布者选择被插入媒体内容中的广告的内容再现和内容发布方法及其客户机 |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1716701A1 (en) * | 2004-02-10 | 2006-11-02 | LG Electronic Inc. | Text subtitle decoder and method for decoding text subtitle streams |
US8164557B2 (en) * | 2004-10-29 | 2012-04-24 | Semiconductor Energy Laboratory Co., Ltd. | Liquid crystal display device and method for driving the same |
US8407176B2 (en) | 2006-05-05 | 2013-03-26 | British Telecommunications Plc | Data processing method for controlling a network |
US20080071881A1 (en) | 2006-09-15 | 2008-03-20 | Curtis Duane Kronlund | Advertising on Idle Web Browser Windows |
CN101179739A (zh) * | 2007-01-11 | 2008-05-14 | 腾讯科技(深圳)有限公司 | 一种插入广告的方法及装置 |
US8418197B2 (en) * | 2008-10-29 | 2013-04-09 | Goldspot Media | Method and apparatus for browser based advertisement insertion |
CN101534386B (zh) * | 2008-12-29 | 2010-08-25 | 北大方正集团有限公司 | 一种视频替换方法、视频播放系统及装置 |
US20100278156A1 (en) | 2009-05-04 | 2010-11-04 | Shin Chang Sub | Data communication method using body area network superframe |
KR101763660B1 (ko) | 2009-12-18 | 2017-08-01 | 가부시키가이샤 한도오따이 에네루기 켄큐쇼 | 액정 표시 장치 및 그 구동 방법 |
CN102782665B (zh) * | 2010-03-09 | 2016-01-13 | 桑迪士克以色列有限公司 | 在数据存储设备处组合用户内容与补充内容 |
CN102130936B (zh) | 2010-08-17 | 2013-10-09 | 华为技术有限公司 | 一种在动态http流传输方案中支持时移回看的方法和装置 |
CN102148851B (zh) * | 2010-09-30 | 2014-09-17 | 华为技术有限公司 | 一种在动态http流传输中应用父母控制的方法和装置 |
KR101206698B1 (ko) * | 2010-10-06 | 2012-11-30 | 한국항공대학교산학협력단 | 스트리밍 콘텐츠 제공 장치 및 방법 |
EP2665262A4 (en) * | 2011-01-12 | 2014-08-20 | Sharp Kk | PLAYING DEVICE, METHOD FOR CONTROLLING THE PLAYING DEVICE, MANUFACTURING DEVICE, METHOD FOR CONTROLLING THE PRODUCTION DEVICE, RECORDING MEDIUM, DATA STRUCTURE, CONTROL PROGRAM AND RECORDING MEDIUM WITH THE PROGRAM SAVED THEREFROM |
MX2013010281A (es) * | 2011-03-09 | 2014-07-11 | Sirius Xm Radio Inc | Sistema y metodo para incrementar la eficiencia del ancho de banda de transmision. |
US9521434B2 (en) * | 2011-06-09 | 2016-12-13 | Qualcomm Incorporated | Internal bit depth increase in video coding |
US9591361B2 (en) * | 2011-09-07 | 2017-03-07 | Qualcomm Incorporated | Streaming of multimedia data from multiple sources |
KR101412198B1 (ko) | 2011-09-09 | 2014-07-03 | (주)재플 | 재핑 광고 서비스를 위한 방법 및 시스템 |
US8769556B2 (en) | 2011-10-28 | 2014-07-01 | Motorola Solutions, Inc. | Targeted advertisement based on face clustering for time-varying video |
CN104185996B (zh) * | 2012-04-05 | 2017-07-21 | 华为技术有限公司 | 用于基于iso基媒体文件格式的自适应流媒体的安全异步事件通知的系统和方法 |
CN103581741B (zh) * | 2012-07-26 | 2016-08-17 | 三星电子(中国)研发中心 | 特效播放设备和方法 |
CN105052159B (zh) * | 2013-03-19 | 2019-03-22 | 索尼公司 | 内容提供设备、内容提供方法、程序、和内容提供系统 |
CN105379294A (zh) | 2013-07-15 | 2016-03-02 | 华为技术有限公司 | 基于超文本传输协议的动态自适应流媒体中的远程元素的即时性间接引用 |
US9270721B2 (en) * | 2013-10-08 | 2016-02-23 | Qualcomm Incorporated | Switching between adaptation sets during media streaming |
US9866608B2 (en) | 2014-03-24 | 2018-01-09 | Qualcomm Incorporated | Processing continuous multi-period content |
-
2015
- 2015-03-23 US US14/665,252 patent/US9866608B2/en active Active
- 2015-03-24 CN CN201580012697.7A patent/CN106134146B/zh active Active
- 2015-03-24 KR KR1020207023095A patent/KR102315233B1/ko active IP Right Grant
- 2015-03-24 WO PCT/US2015/022264 patent/WO2015148519A1/en active Application Filing
- 2015-03-24 KR KR1020167027894A patent/KR102145653B1/ko active IP Right Grant
- 2015-03-24 EP EP19219523.8A patent/EP3654653A1/en not_active Ceased
- 2015-03-24 CN CN201910505360.XA patent/CN110099288B/zh active Active
- 2015-03-24 HU HUE15719323A patent/HUE048719T2/hu unknown
- 2015-03-24 ES ES15719323T patent/ES2788901T3/es active Active
- 2015-03-24 CA CA2939250A patent/CA2939250C/en active Active
- 2015-03-24 EP EP15719323.6A patent/EP3123731B1/en active Active
- 2015-03-24 JP JP2016557572A patent/JP6474830B2/ja active Active
-
2017
- 2017-11-27 US US15/823,403 patent/US10397295B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1130004A (zh) * | 1993-08-31 | 1996-08-28 | 联合企业股份有限公司和无线电产业保护两合公司 | 检测非所愿的电视图象的方法和装置 |
CN101039404A (zh) * | 2006-03-15 | 2007-09-19 | 中兴通讯股份有限公司 | 一种实现网络直播中无缝插播的系统及方法 |
CN101765856A (zh) * | 2007-07-24 | 2010-06-30 | 三星电子株式会社 | 使内容使用者或内容发布者选择被插入媒体内容中的广告的内容再现和内容发布方法及其客户机 |
CN101110935A (zh) * | 2007-07-31 | 2008-01-23 | 腾讯科技(深圳)有限公司 | 一种在网络电视轮播节目中插播广告的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
EP3654653A1 (en) | 2020-05-20 |
EP3123731A1 (en) | 2017-02-01 |
CA2939250A1 (en) | 2015-10-01 |
KR102315233B1 (ko) | 2021-10-19 |
WO2015148519A1 (en) | 2015-10-01 |
EP3123731B1 (en) | 2020-02-05 |
KR102145653B1 (ko) | 2020-08-18 |
US10397295B2 (en) | 2019-08-27 |
CA2939250C (en) | 2019-09-10 |
BR112016022245A8 (pt) | 2021-07-13 |
BR112016022245A2 (pt) | 2017-08-15 |
US20150271237A1 (en) | 2015-09-24 |
JP6474830B2 (ja) | 2019-02-27 |
KR20200097820A (ko) | 2020-08-19 |
HUE048719T2 (hu) | 2020-08-28 |
CN106134146A (zh) | 2016-11-16 |
CN110099288A (zh) | 2019-08-06 |
KR20160136343A (ko) | 2016-11-29 |
US20180084026A1 (en) | 2018-03-22 |
JP2017516338A (ja) | 2017-06-15 |
CN110099288B (zh) | 2021-12-03 |
US9866608B2 (en) | 2018-01-09 |
ES2788901T3 (es) | 2020-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106134146B (zh) | 处理连续的多周期内容 | |
CN106878804B (zh) | 用于经译码视频数据的网络流式传输的方法和设备以及非暂时性计算机可读媒介 | |
CN104885473B (zh) | 用于经由http的动态自适应流式传输(dash)的实况定时方法 | |
CN105612753B (zh) | 媒体流传输期间在适配集合间的切换方法和装置 | |
JP5964972B2 (ja) | 複数のソースからのマルチメディアデータのストリーミング | |
CN103141069B (zh) | 用于检索和传输多媒体数据的方法和系统 | |
CN106165434B (zh) | 一种用于获取媒体数据的方法及计算机可读介质 | |
CN103843301B (zh) | 经译码多媒体数据的网络串流期间的表示之间的切换 | |
CN105744382B (zh) | 用于发射经编码视频数据的方法和装置 | |
CN105744295B (zh) | 提供用于串流传输视频数据的序列数据集 | |
CN109155865A (zh) | 在图像中的最感兴趣的区域的先进信号传送 | |
US10887645B2 (en) | Processing media data using file tracks for web content | |
CN110447234A (zh) | 作为分隔符及可寻址资源标识符的区段类型 | |
KR102659380B1 (ko) | 파일 포맷 박스들에 대한 제네릭 디스크립터를 사용한 미디어 데이터의 프로세싱 | |
CN107637040A (zh) | 使用websocket子协议来传输媒体数据 | |
CN111656796A (zh) | 动态条件性广告插入 | |
CN109479158A (zh) | 检索及存取用于媒体流式处理的段区块 | |
CN109644282A (zh) | 用于媒体数据流式处理的补充增强信息轨迹的系统级发信 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |