CN108141455A - 用于媒体数据的流式发射的期限信令 - Google Patents

用于媒体数据的流式发射的期限信令 Download PDF

Info

Publication number
CN108141455A
CN108141455A CN201680059719.XA CN201680059719A CN108141455A CN 108141455 A CN108141455 A CN 108141455A CN 201680059719 A CN201680059719 A CN 201680059719A CN 108141455 A CN108141455 A CN 108141455A
Authority
CN
China
Prior art keywords
data
time
request
client terminal
terminal device
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.)
Granted
Application number
CN201680059719.XA
Other languages
English (en)
Other versions
CN108141455B (zh
Inventor
托马斯·斯托克哈默
朱西鹏
戈登·肯特·沃克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN108141455A publication Critical patent/CN108141455A/zh
Application granted granted Critical
Publication of CN108141455B publication Critical patent/CN108141455B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/262Content 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/26208Content 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 the scheduling operation being performed under constraints
    • H04N21/26241Content 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 the scheduling operation being performed under constraints involving the time of distribution, e.g. the best time of the day for inserting an advertisement or airing a children program
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/262Content 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/26258Content 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4331Caching operations, e.g. of an advertisement for later insertion during playback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network 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/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/64322IP
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Abstract

一种客户端装置包含存储器及基于硬件的处理器,所述存储器包括用于缓冲具有实时约束的数据的缓冲器,所述处理器包括数字逻辑电路。所述处理器经配置以执行实时应用程序,所述实时应用程序经配置以:确定所述数据将可供下载的时间;确定需要所述数据以防止所述缓冲器的缓冲区欠载运行的时间;及当所述数据可用时,发送对所述数据的请求及表示需要所述数据以避免所述缓冲区欠载运行的所述时间的期限信息。以这种方式,发送装置可优先化所述所请求数据的递送以防止所述客户端装置的所述缓冲区欠载运行。

Description

用于媒体数据的流式发射的期限信令
本申请案要求2015年10月16日提交的PCT申请案第PCT/CN2015/092095号的优先权,所述申请案的全部内容以引用的方式并入本文中。
技术领域
本发明涉及媒体数据的输送。
背景技术
数字媒体能力可并入到广泛范围的装置中,包含数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型或台式计算机、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏主控台、蜂窝式或卫星无线电电话、视频电话会议装置及其类似者。
可在发射之前压缩数字媒体。举例来说,可使用视频压缩技术来压缩视频数据,所述视频压缩技术执行空间预测及/或时间预测以减少或去除视频序列中的固有冗余。
在已编码媒体数据之后,可将媒体数据包化以供发射或存储。可将媒体数据汇编成符合多种标准中的任一者的媒体文件,所述标准例如国际标准化组织(ISO)基本媒体文件格式及其扩展。可使用基于计算机的网络经由流式发射协议(例如,经由HTTP的动态自适应流式发射(DASH))进一步发射媒体数据。
发明内容
一般来说,本发明描述用于发信号通知媒体数据的期限信息的技术。即,客户端装置可发信号通知表示必须接收媒体文件(例如,DASH区段)的时间的数据。所述时间可表示必须接收媒体文件以便确保客户端装置的平稳、连续性播出(例如,以防止缓冲区欠载运行)的时间。
在一个实例中,一种检索具有实时约束的数据的方法通过客户端装置执行,所述客户端装置具有包括执行实时应用程序的数字逻辑电路的基于硬件的处理器。所述方法包含:确定数据将可供下载的时间;确定需要数据以防止客户端装置的缓冲器的缓冲区欠载运行的时间;及当数据可用时,发送对数据的请求及表示需要数据以避免缓冲区欠载运行的时间的期限信息。
在另一实例中,一种用于检索具有实时约束的数据的客户端装置包含存储器及基于硬件的处理器,所述存储器包括用于缓冲具有实时约束的数据的缓冲器,所述处理器包括数字逻辑电路。所述处理器经配置以执行实时应用程序,所述实时应用程序经配置以:确定数据将可供下载的时间;确定需要数据以防止缓冲器的缓冲区欠载运行的时间;及当数据可用时,发送对数据的请求及表示需要数据以避免缓冲区欠载运行的时间的期限信息。
在另一实例中,一种用于检索具有实时约束的数据的客户端装置包含:用于确定数据将可供下载的时间的装置;用于确定需要数据以防止客户端装置的缓冲器的缓冲区欠载运行的时间的装置;及用于当数据可用时,发送对数据的请求及表示需要数据以避免缓冲区欠载运行的时间的期限信息的装置。
在另一实例中,一种计算机可读存储媒体(即,非暂时性计算机可读存储媒体)上存储有指令,所述指令使得处理器:确定数据将可供下载的时间;确定需要数据以防止客户端装置的缓冲器的缓冲区欠载运行的时间;及当数据可用时,发送对数据的请求及表示需要数据以避免缓冲区欠载运行的时间的期限信息。
在以下附图及实施方式中阐述一或多个实例的细节。其它特征、目的及优势将从实施方式及图式以及权利要求书显而易见。
附图说明
图1为说明实施用于使媒体数据在网络上流式发射的技术的实例系统的框图。
图2为说明检索单元的一组实例组件的框图。
图3为说明实例多媒体内容的要素的概念图。
图4为说明实例视频文件的要素的框图,所述实例视频文件可对应于表示的区段。
图5为说明HTTP适应性流式发射的常见理解的概念图。
图6为说明“智能型”客户端装置的职责的概念图。
图7为说明MPEG DASH的范围的概念图。
图8为说明根据本发明的技术的一实例架构的概念图。
图9为说明一简单客户端模型的概念图。
图10为从服务器及客户端的角度说明区段的概念图。
图11为说明视频对象期限感知调度的一个实例的概念图。
图12为根据图11的实例的一实例实施的概念图。
图13为说明基于视频对象期限感知调度的另一实例解决方案的概念图。
图14为说明根据图13的技术的一实例实施的概念图。
图15为说明根据本发明的技术的包化的一实例的概念图。
图16为说明一系列区段的概念图,所述一系列区段包含一初始化区段(IS)及多个媒体区段(MS)。
图17A及17B为表示媒体区段的播出曲线的概念图。
图18为用于递送区段的数据的媒体递送事件(MDE)的概念图。
图19为说明可用作潜在简化的另一实例的概念图。
图20为根据本发明的技术的一实例递送架构的概念图。
图21为根据本发明的技术的接收器模型的概念图。
图22为说明用于执行本发明的技术的实例方法的流程图。
具体实施方式
一般来说,本发明描述用于在媒体数据的流式发射期间使用超文本传送协议(HTTP)发信号通知期限信息的技术。这类流式发射技术在本文中也被称为HTTP流式发射。特定而言,如下文所解释,本发明描述客户端装置的流式发射客户端可借以将期限信息发信号通知到流式发射感知网络元件以试图确保区段在相应期限前的即期递送的技术。类似地,流式发射感知网络元件可使用这些技术将区段递送到客户端装置,使得所述区段在其相应期限前到达客户端装置。
在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也可以range属性的形式提供字节范围,其可对应于可通过URL、URN或URI存取的文件内的区段的数据。
可选择不同表示以用于大体上同时检索不同类型的媒体数据。举例来说,客户端装置可选择音频表示、视频表示及计时文本表示,客户端装置从所述表示检索区段。在一些实例中,客户端装置可选择特定适应集合以用于执行带宽适应。即,客户端装置可选择包含视频表示的适应集合、包含音频表示的适应集合及/或包含计时文本的适应集合。可替代地,客户端装置可选择用于某些类型的媒体(例如,视频)的适应集合,且直接选择其它类型的媒体(例如,音频及/或计时文本)的表示。
DASH启用基于对象的实时流式发射递送。在基本操作模式中,客户端从服务器请求数据且调度播出。DASH客户端使用缓冲器以优化播出且避免缓冲区欠载运行。客户端也适当地调度对区段的请求以确保所述区段到达客户端,从而确保适当播出。在基本操作中,所有控制及计时使用客户端进行。
然而,在某些情形中,具体而言在视为在服务器及网络辅助DASH(SAND)中的状况下,服务器及网络与客户端合作且辅助客户端以主要在网络效率以及用户体验方面优化递送。另外,由于HTTP请求在网络中通常经处置为无状态且不受时间影响的请求,因此客户端可在经由HTTP的对象递送中支持网络,尤其在网络感知递送的期限时。这类技术尤其相关于网络可在递送中利用这类期限的情况。
在所述上下文中,本发明提议在SAND的上下文中添加以下消息:
●提供接收器中的所请求对象的绝对期限(挂钟)的状态消息。
●为所请求对象提供最大RTT(持续时间)的状态消息。
●提供区段的不同字节范围的相对期限的PED消息。
●提供区段的不同字节范围的相对期限的状态消息。
本发明的技术可产生某些优势。举例来说,本发明的技术可将客户端装置对于待递送到客户端装置的数据的时序需求的信息提供到网络元件,例如DASH感知网络元件(DANE)或媒体感知网络元件(MANE)。这可确保客户端装置在客户端装置需要数据时接收所述数据,这可满足客户端装置对于数据的实时约束。举例来说,在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块是否可具有小于8×8像素的子宏块分区的限制。以这种方式,解码器可确定解码器是否能够恰当地对位流进行解码。
在图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单元提供“网络友好”视频表示,从而寻址例如视频电话、存储、广播或流式发射的应用。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可检索媒体呈现的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可呈送当不再需要多播群组的数据时离开多播群组的请求,例如停止播放或将信道改变到不同多播群组。
网络接口54可接收所选择表示的区段的数据且向检索单元52提供所述数据,所述检索单元转而可向解囊封单元50提供所述区段。解囊封单元50可将视频文件的要素解囊封成组成PES流,将所述PES流解包化以检索经编码数据,且视经编码数据为音频流还是视频流的部分(例如,如流的PES包标头所指示)而向音频解码器46或视频解码器48发送经编码数据。音频解码器46对经编码音频数据进行解码,且向音频输出42发送经解码音频数据;而视频解码器48对经编码视频数据进行解码,且向视频输出44发送经解码视频数据,所述经解码视频数据可包含流的多个视图。
尽管图1中未展示,但网络74可进一步包含流式发射感知网络元件(例如,DASH感知网络元件(DANE))或媒体感知网络元件(MANE)。检索单元52可实施本发明的技术(下文更详细地描述)以向网络74的流式发射感知网络元件通告期限信息。
视频编码器28、视频解码器48、音频编码器26、音频解码器46、囊封单元30、检索单元52及解囊封单元50各自可实施为适用的多种合适处理电路中的任一者,所述合适处理电路例如,一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑电路、软件、硬件、固件或其任何组合。在一些实例中,视频编码器28、视频解码器48、音频编码器26、音频解码器46、囊封单元30、检索单元52及解囊封单元50中的一或多者可集成于称为“芯片上系统”(或“SoC”)的单一制造芯片中。视频编码器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。在这个实例中,eMBMS接收单元106经配置以经由eMBMS接收数据,例如,根据T.派拉(T.Paila)等人在“FLUTE—单向传输文件递送(FLUTE-File Deliveryover Unidirectional Transport)”(网络工作组,RFC 6726,2012年11月)中所描述的单向传送文件递送(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。
图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可对应于图2的表示68。一般来说,MPD 122可包含大体上描述表示124的特性的数据,例如译码及再现特性、适应集合、MPD 122所对应的配置文件、文本类型信息、相机角度信息、分级信息、特技模式信息(例如,指示包含时间子序列的表示的信息)及/或用于检索远程周期(例如,用于在播放期间将针对性广告插入到媒体内容中)的信息。
标头数据126(当存在时)可描述区段128的特性,例如,随机存取点(RAP,也称作流存取点(SAP))的时间位置、区段128中的哪一者包含随机存取点、与区段128内的随机存取点的字节偏移、区段128的统一资源定位符(URL),或区段128的其它方面。标头数据130(当存在时)可描述区段132的类似特性。另外或替代地,这类特性可完全包含于MPD 122内。
区段128、124包含一或多个经译码视频样本,其中的每一者可包含视频数据的帧或切片。区段128的经译码视频样本中的每一者可具有类似特性,例如,高度、宽度及带宽要求。这类特性可通过MPD 122的数据来描述,尽管所述数据未在图3的实例中说明。MPD 122可包含如3GPP规范所描述的特性,并且添加有本发明中所描述的信令信息中的任一者或全部。
区段128、132中的每一者可与唯一的统一资源定位符(URL)相关联。因此,区段128、132中的每一者可使用流式发射网络协议(例如,DASH)来独立地检索。以这种方式,例如客户端装置40的目的地装置可使用HTTP GET请求来检索区段128或132。在一些实例中,客户端装置40可使用HTTP部分GET请求来检索区段128或132的特定字节范围。
图4为说明实例视频文件150的要素的框图,实例视频文件可对应于表示的区段,例如图3的区段114、124中的一者。区段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可包含描述对应于TRAK框158的播放轨的特性的播放轨标头(TKHD)框。在一些实例中,TRAK框158可包含经译码视频图片,而在其它实例中,播放轨的经译码视频图片可包含于电影片段164中,所述图片可由TRAK框158及/或sidx框162的数据引用。
在一些实例中,视频文件150可包含多于一个播放轨。因此,MOOV框154可包含数个TRAK框,其等于视频文件150中的播放轨的数目。TRAK框158可描述视频文件150的对应播放轨的特性。举例来说,TRAK框158可描述对应播放轨的时间及/或空间信息。当囊封单元30(图3)包含视频文件(例如,视频文件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框可包含描述电影片段164中的对应电影片段的持续时间的电影延伸标头框(MEHD)框。
如上文所指出,囊封单元30可存储并不包含实际经译码视频数据的视频样本中的序列数据集。视频样本可大体上对应于存取单元,所述存取单元为特定时间执行个体下的经译码图片的表示。在AVC的上下文中,经译码图片包含一或多个VCL NAL单元及其它相关联非VCL NAL单元(例如,SEI消息),所述VCL NAL单元含有用以构造存取单元的所有像素的信息。因此,囊封单元30可包含电影片段164中的一者中的序列数据集,所述序列数据集可包含序列层级SEI消息。囊封单元30可另外发信号通知存在于电影片段164中的一者中的序列数据集及/或序列层级SEI消息存在于对应于电影片段164中的一者的MVEX框160中的一者内。
SIDX框162为视频文件150的可选要素。即,符合3GPP文件格式或其它这类文件格式的视频文件未必包含SIDX框162。根据3GPP文件格式的实例,SIDX框可用以识别区段(例如,含于视频文件150内的区段)的子区段。3GPP文件格式将子区段定义为“具有一或多个对应媒体数据框及含有通过电影片段框引用的数据的媒体数据框的一或多个连续电影片段框的自含式集合,必须跟在电影片段框之后,并在含有关于同一播放轨的信息的下一个电影片段框之前”。3GPP文件格式也指示SIDX框“含有对由框记录的(子)区段的子区段引用的序列。所引用的子区段在呈现时间上连续。类似地,由区段索引框参考的字节始终在区段内连续。所引用大小给出所引用材料中的字节的数目的计数”。
SIDX框162通常提供表示包含于视频文件150中的区段的一或多个子区段的信息。举例来说,这类信息可包含:子区段开始及/或结束的播放时间、对于子区段的字节偏移、子区段是否包含流存取点(SAP)(例如,以流存取点开始)、SAP的类型(例如,SAP是瞬时解码器再新(IDR)图片、干净随机存取(CRA)图片、断链存取(BLA)图片还是类似者)的类型、子区段中的SAP位置(关于播放时间及/或字节偏移)及其类似者。
电影片段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为说明包含经配置以参与HTTP适应性流式发射会话的装置的系统200的概念图。在这个实例中,系统200包含捕捉装置202、编码及加密装置204、媒体来源服务器装置206A到206N(媒体来源服务器装置206)、HTTP高速缓存服务器装置208A到208N(HTTP高速缓存服务器装置208)、客户端装置210A到210N(客户端装置210)及数字版权管理(DRM)授权服务器装置212A到212N(DRM授权服务器装置212)。一般来说,捕捉装置202可对应于图1的音频源22及视频源24中的任一者或两者,编码及加密装置204可对应于图1的音频编码器26、视频编码器28及/或囊封单元30,媒体来源服务器装置206及/或HTTP高速缓存服务器装置208中的任一者或全部可对应于图1的服务器装置60,且客户端装置210可对应于图1的客户端装置40。
在这个实例中,捕捉装置202捕捉媒体数据(例如,音频及/或视频数据)。编码及加密装置204以多种位速率编码媒体数据以形成多组媒体数据(例如,多个表示)。多组编码及加密装置204中的每一者可将媒体数据分割成较小区段,例如图4的视频文件150。此外,编码及加密装置204可将每一区段加密且经由媒体来源服务器装置206及HTTP高速缓存服务器装置208使得每一区段经由HTTP URL可用。客户端装置(例如,客户端装置210中的一或多者)确定下载哪一或哪些区段,从DRM授权服务器装置212中的一者获取对于经加密内容的授权,且接着将内容拼接在一起并播放所述内容。
图6为说明“智能型”客户端装置的职责的概念图。图6的实例说明表示实例“智能型”客户端装置的内容分布网络(CDN)220及客户端装置222的实例。在这个实例中,客户端装置222管理一或多个清单文件(例如,一或多个MPD)、HTTP输送及一或多个TCP连接。客户端装置222监测或测量播出缓冲、下载时间及区段输送量、本地资源(例如,CPU、存储器、屏幕及其类似者)及丢弃的帧。客户端装置222也执行带宽适应。
图7为说明包含HTTP服务器232及DASH客户端240的系统230的概念图。说明系统230以解释这类系统中的MPEG DASH的范围。特定而言,在这个实例中,HTTP服务器232存储媒体内容的各集合,例如媒体内容234A及媒体内容234B。媒体内容234A包含MPD 236A及区段238A。媒体内容234B包含MPD 236B及区段238B。DASH客户端240包含控制引擎242、媒体引擎244、MPD剖析器246、区段剖析器248及HTTP客户端250。一般来说,控制引擎242、HTTP客户端250及MPD剖析器246可对应于图1的检索单元52,区段剖析器248可对应于图1的解囊封单元50,且媒体引擎244可对应于音频解码器46及/或视频解码器48。MPEG DASH的范围内的系统230的元件使用灰色着色来突出。在这个实例中,MPEG DASH具有包含MPD 236、区段238、MPD剖析器246及区段剖析器248的范围。
图8为说明根据本发明的技术的实例系统260的概念图。如图8的实例中所展示,系统260包含分别类似于图7的HTTP服务器232及DASH客户端240的HTTP服务器262及DASH客户端270。即,HTTP服务器262存储包含MPD 266A及区段268A的媒体数据264A以及包含MPD266B及区段268B的媒体数据264B。同样地,DASH客户端270包含控制引擎272、媒体引擎274、MPD剖析器276、区段剖析器278及HTTP客户端280。然而,系统260进一步包含经由下层输送284耦合到DASH客户端270的DASH感知网络元件(DANE)装置282。
图8提供所考虑的消息流动的高层级架构。DASH媒体存储于HTTP服务器262上且经由HTTP-CDN来递送。DASH客户端270控制会话且在适当时间发布HTTP请求。使HTTP连接终止的中间节点(例如,DANE 282)可在DASH未感知时充当高速缓存存储器,或在DASH感知时充当DANE。DANE 282可从HTTP服务器262及/或DASH客户端270接收信息,以便(例如)通过经由低层输送284提供期限信息,使得DANE 282或沿下层输送284的其它装置可在用于待递送到DASH客户端270的媒体数据的递送决策中利用所述期限信息,从而优化递送。
图9为说明简单客户端模型290的概念图。图1的客户端装置40、图5的客户端装置210、图6的客户端装置222、图7的DASH客户端240及图8的DASH客户端270可通常根据客户端模型290进行配置。在客户端模型290的实例中,客户端包含下载引擎292、缓冲器294及媒体解码器及再现器296。关于图1的客户端装置40,(例如)下载引擎292及缓冲器294可包含在检索单元52中,且媒体解码器及再现器296可对应于音频解码器46、视频解码器48、音频输出42及视频输出44。
根据DASH-IF IOP v3.1章节4.3.4中的描述,DASH客户端如下运作。例如根据展示于图9中的客户端模型290,DASH客户端由提供于MPD中的信息来引导。
假定DASH客户端能存取MPD且可从MPD推导每一区段的区段可用性时间。为简单起见,假定MPD仅含有具有周期开始时间PSwc[i]的单一周期,且MPD-URL不包含任何片段参数。以下实例客户端行为向用户提供连续的流式发射体验:
1.DASH客户端剖析MPD且基于AdaptationSet元素中的每一者中所提供的信息选择适合于其环境的适应集合的集合。
2.在每一适应集合内,其选择一个表示,这通常基于@bandwidth属性的值且还考虑客户端解码及再现能力。
3.考虑MPD中的信息及DASH客户端中的当前时间JOIN,DASH客户端至少针对于每一所选择表示建立一可存取区段列表,且特定而言为最接近于实况边缘的区段(被称为实况边缘区段)。
4.DASH客户端下载所选择表示的初始化区段且接着通过请求整个区段或区段的字节范围来存取内容。通常,在任何时间,DASH客户端在以下中的较大者处下载下一区段:(i)完成当前区段的下载,或(ii)下一区段的区段可用性开始时间。如果存在@availabilityTimeOffset,那么可更早下载区段,即在经调整的区段可用性开始时间下载。基于缓冲区充满度及其它准则,考虑速率调适。通常,下载的第一媒体区段为实况边缘区段,但可采用其它决策以将启动延迟减到最小。
5.根据图9的实例,下载引擎292将经检索媒体数据馈送到缓冲器294中,且在一些时间点处,媒体解码器及再现器296开始对媒体数据进行解码及再现。下载引擎292下载每一所选择适应集合的所选择表示,且媒体解码器及再现器296呈现每一所选择适应集合的所选择表示。使用在MPD中发信号通知的周期信息中的呈现时间来进行同步。对于同步播出,应使用媒体中的精确呈现时间。
a.一旦呈现已开始,那么播出过程为连续性的。所述播出过程是基于媒体数据将连续地存在于缓冲器294中的假设。如果MPD@suggestedPresentationDelay存在于MPD中,那么所述值可用作呈现延迟PD。如果MPD@suggestedPresentationDelay并不存在于MPD中,但预期DASH客户端在实况边缘处消耗服务,那么应选择合适的呈现延迟,所述呈现延迟通常在@minBufferTime的值与@timeShiftBufferDepth的值之间。建议DASH客户端在PSwc[i]+(EPT(k)-o[r,i])+PD处开始再现具有最早呈现时间EPT(k)的经下载媒体区段k的第一样本。
6.DASH客户端可通过使用在可用性时间窗口期间所产生的区段列表来请求所选择表示的媒体区段。
7.一旦呈现已开始,那么DASH客户端持续消耗媒体内容,原因在于下载引擎292连续地请求媒体区段或媒体区段的部分,且媒体解码器及再现器296根据媒体呈现时刻表播放内容。考虑来自其环境的更新信息,DASH客户端可切换表示,但这方面对于本文中的论述具有较少关联性。
8.随着挂钟时间NOW前进,DASH客户端消耗可用区段。随着NOW前进,客户端可能针对于周期中的每一表示扩展可用区段的列表。
某些方面概述于上文标题符号5到7中。DASH客户端控制请求的调度及播出调度。同时,DASH客户端了解表示的下一区段需要可用以避免缓冲区下溢的最晚时间。信息至少基于良好准确度从MPD可用(使用周期时刻表到媒体时刻表的映射),且在下载前一区段后基于甚至更优选的准确度。更多细节展示于下文图10中。
图10为从服务器装置及客户端装置的角度说明区段的概念图。服务器装置使得数据(例如,区段)可用且使数据保持可用直到某一时间(特定区段可供从服务器检索的时间周期可被称为“区段可用性窗口”)。DASH客户端从MPD确定所述信息(即,可用性时间或区段可用性窗口)。
在DASH客户端第一次下载MPD(图10中的FetchMPD(1))之后,DASH客户端确定区段1及区段2为可用的。此外,随时间推移,越来越多区段基于MPD中所提供的信息而变得可用。在一些呈现延迟(使用所推荐的呈现延迟或客户端所选择的一个呈现延迟)之后的某一时间点处,DASH客户端调度播出且开始对所检索区段的媒体数据进行解码及再现。一旦开始,那么客户端可基于MPD及何时请求区段来确定何时区段在DASH客户端中必须可用以便确保平稳播出。同时,DASH客户端可确定区段对于服务器仍可用的最晚时间。
根据本发明的技术,DASH客户端(例如,图8的DASH客户端270)可产生期限信息(即,表示何时必须接收特定区段或其它数据以便满足实时约束(例如,缓冲区欠载运行)的信息)且将所述期限信息发送回到网络以供网络决定如何调度请求。下文论述实例。此外,在某些环境中,DASH客户端可基于相对良好的网络时间协议(NTP)同步的时钟。在其它环境中,同步化可更自由。另外,可用性时间及调度也与静态类型内容(例如,点播内容)相关。
针对使用期限信息,涵盖各种使用案例。使用这类期限信息的一些实例包含:
●DANE与例如eNB的移动基站(以及PGW)共置。无线电调度器可使用期限的信息以优化使用TCP/IP的对应单元中的递送。
●DANE与家庭网关共置。期限的信息(可能来自不同用户)可用以优化朝向网络的请求以便确保紧急对象的及时递送。
●DANE与例如eNB的移动基站(以及PGW)共置。无线电调度器可使用期限的信息以优化使用与TCP不同的递送协议(例如,基于包的协议)的对应单元中的递送。
在建立相关解决方案中,考虑以下准则:
●解决方案可为简单的。
●解决方案可优选地不依赖于DASH而工作。
●解决方案可为SAND状态消息框架的部分。
●解决方案对于DASH客户端可为可实施的。
●解决方案可使得能够提供期限信息作为绝对值或相对值。
●解决方案可与常规区段请求以及字节范围请求(例如,HTTP GET或部分GET请求)一起工作。
●解决方案可为优化的且以后向兼容方式工作。
一般来说,可产生在一些情形中可能由于DASH客户端未及时接收到所请求的媒体数据而出现缓冲区欠载运行的问题。即,由于各种原因,尽管DASH客户端请求媒体数据,但可能无法及时递送媒体数据,且因此DASH客户端的缓冲器的内容可在新媒体数据可用且准备好供解码及再现之前被清空。
本发明的技术以DASH客户端完全感知时序信息的基本想法为前提。即,DASH客户端可从所述清单文件(例如,MPD)确定挂钟时间中的以下信息:区段何时在网络上可用;及每一区段需要在接收器处为可用以便能够继续平稳播出(例如,防止缓冲区欠载运行)的时间。如果DASH客户端将所述信息中的一些提供到DANE,那么DANE可优化递送以便确保区段在接收器处及时可用。尽管出于解释的目的,关于DASH客户端及DANE描述所述技术,但这些技术可通过其它流式发射装置(例如,任何其它流式发射客户端及流式发射感知网络元件)来执行。
用户设备(UE)(即,客户端装置)可向流式发射感知网络元件(例如,DANE)报告以下信息:
●HTTP流式发射播出缓冲状态:
○缓冲区占用水平(ms)。
○时间戳:UE产生缓冲状态信息的时间。
○播出数据速率:如果eNB不为DASH感知,那么对于eNodeB(eNB)估计UE的缓冲区占用水平。
●挂钟时间或整个区段(对象)的最大RTT中的期限。
○UE可在每一HTTP GET请求中指定所述时间。
●更详细信息。举例来说,其可为具有与较晚部分不同期限的区段的初始部分。
○客户端报告初始包的期限。
○对象含有对于每一字节范围的播出调度,使得中间节点可根据从DASH客户端及播出曲线的信息来调度每一字节范围的递送。
●也报告接收模式:完整区段模式或媒体递送事件(MDE)模式。
客户端装置可另外或替代地报告播出信息。
●播出调度可为:
○默认步骤功能,即整个区段需要为可用的。
○报告从媒体/DASH服务器的辅助信息作为播出曲线(随时间推移的字节范围)。
○如果客户端确实具有这类信息,那么(例如,通过区段索引)从客户端发送回到可在调度中使用的DANE。
●这类信息可由调度器来使用以优化字节范围的递送。
图11为说明用于执行视频对象期限感知调度的一个实例方法的概念图。在这个实例中,方法通过系统300执行,所述系统包含客户端装置302、DASH服务器装置304及DANE306。DANE 306转而包含包网关(PGW)装置308及eNodeB 310。在这个实例中,客户端装置302经由HTTP请求(302)将期限信息递送到DASH服务器304。特定而言,客户端装置302(UE的实例)经由HTTP将期限信息报告到DASH服务器。DASH服务器304接着将期限信息传送到DANE306(314)的PGW装置308。此外,PGW装置308将期限信息传送到eNodeB 310(316)。接着,eNodeB 310使用期限信息以调度将媒体数据(例如,区段或MDE)递送到DASH服务器装置304(318)(所述递送可接着将媒体数据发送到客户端装置302(320)),以根据期限信息确保媒体数据在媒体数据需要防止客户端装置302的缓冲器的缓冲区欠载运行时或之前到达客户端装置302。可替代地,eNodeB310可将媒体数据直接递送到客户端装置302。
在一个实例中,在PGW装置308与DASH服务器装置304(其可对应于代理服务器装置)之间存在网络隧道。期限信息可承载在根据网络通道协议(例如,多协议标记交换(MPLS))所发送的遂穿包的标头中。
在另一实例中,PGW装置308可在从DASH服务器装置304接收的包上执行选择性深度包测试(DPI)。即,HTTP服务器装置304可包含HTTP消息中的期限信息。PGW装置308可在从DASH服务器装置304的包上执行DPI以检索期限信息。
PGW装置308可包含发送到eNodeB 310(即,基站)的每一下行链路包的GPRS隧穿协议U(GTP-U)标头中的期限信息。eNodeB 310可接着根据期限信息调度这些包的发射。
在另一实例中,客户端装置302可经由HTTP将期限信息报告到DANE 306。DANE306也可解释每一区段的播出曲线。DANE 306可接着使所述信息可用于eNodeB 310的调度器。eNodeB 310可接着使用所述信息以优化播出调度(例如,包递送)。
在基于HTTP的期限信息递送中,从由客户端装置302执行的流式发射客户端发送到DANE 306的信息(例如,对应于对于媒体数据的请求的包)可包含期限信息。期限信息可包含语法及协议选项。这些选项可包含于HTTP标头扩展中及/或作为请求中的查询参数的部分。另外或替代地,期限信息可映射现有部署,例如,映射基于HTTP/1.1的递送或基于HTTP/2.0的递送。从DASH服务器装置304到DANE 306的信息及所述实例中的期限信息的使用可包含单向传输实时对象传递(ROUTE)传送协议及MDE。
在各种实例中,在这些各种装置之间交换的信息可对各种问题定义解决方案。举例来说,何种信息从客户端发送到网络的语义问题,所述语义问题可包含:整个区段(对象)的挂钟时间中的期限,整个区段(对象)的最大RTT(单位为毫秒),客户端中的当前可用缓冲器,及/或更详细信息(举例来说,其可为具有除较晚部分外的其它期限的区段的初始部分)。类似地,语法及协议选项可在请求中的HTTP标头扩展中交换,以作为请求中的查询参数的部分或DASH客户端与DANE之间的其它控制信道。此外,这类信息可存在对现有部署的映射,所述现有部署例如,基于HTTP/1.1的递送、基于HTTP/2.0的递送或ROUTE传送协议及MDE。
图12为可执行图11的方法的系统330的实例实施的概念图。在这个实例中,系统330包含在网关(GW)上方的HTTP代理服务器/高速缓存存储器344,所述网关在这个实例中为包网关(PGW)/服务网关(SGW)342。另外,系统330包含客户端装置332、eNodeB340及CDN346。在这个实例中,PGW/SGW 342与HTTP代理服务器/高速缓存存储器344通过Gi-LAN接口348耦合。此外,客户端装置332包含调制解调器336,所述调制解调器可经配置以与eNodeB340通信。客户端装置332也包含HTTP客户端334,所述HTTP客户端可为由包括客户端装置332的数字逻辑电路(图12中未展示)的基于硬件的处理器执行的流式发射应用程序。客户端装置332也包含高速缓存存储器338,所述高速缓存存储器可表示用于缓冲所检索媒体内容的物理、非暂时性计算机可读媒体的一部分,例如各种随机存取存储器(RAM)、硬盘、快闪驱动器或其类似者中的任一者。
客户端装置332及HTTP代理服务器/高速缓存存储器344可经配置以根据本发明的技术交换期限信息。即,客户端装置332可实施期限信息报告技术,且HTTP代理服务器/高速缓存存储器344可实施基于期限的调度技术,以确保根据所报告期限信息媒体数据在客户端装置332处为可用的。客户端装置332及HTTP代理服务器/高速缓存存储器344可经由从HTTP代理服务器/高速缓存存储器344到PGW/SGW 342的无线电存取网络(RAN)在GTP-U标头中将期限信息交换到eNodeB 340。
举例来说,客户端装置332的HTTP客户端334可经配置以确定经由HTTP代理服务器/高速缓存存储器344正从CDN 346检索的媒体数据的播出速率。HTTP客户端334也可确定高速缓存存储器338的填充水平(即,存储于高速缓存存储器338中的媒体数据的量)。基于高速缓存存储器338的填充水平及播出速率,HTTP客户端334可确定必须接收的所请求媒体数据的期限,以便防止高速缓存存储器338的缓冲区欠载运行。HTTP客户端334可通告表示(例如)对于媒体数据的请求中的期限的信息的期限,其中所述请求最后递送到HTTP代理服务器/高速缓存存储器344及/或CDN 346。HTTP代理服务器/高速缓存存储器344可根据期限信息优先化所请求媒体数据的递送,以便防止客户端装置332的高速缓存存储器338的缓冲区欠载运行。另外或替代地,eNodeB 340可根据期限信息优先化所请求媒体数据的递送,以便防止客户端装置332的高速缓存存储器338的缓冲区欠载运行。
图13为说明可对于媒体对象期限感知调度实施本发明的技术的另一实例系统350的概念图。系统350包含DASH服务器352、PGW 354、eNodeB 356及客户端装置358。同样,客户端装置358可包含类似于图1的客户端装置40的组件,且DASH服务器352可包含类似于图1的服务器装置60的组件。在这个实例中,客户端装置358将DANE特定期限信息递送到(例如)eNodeB 356。特定而言,客户端装置358经由RAN发信号通知(例如)使用包数据聚合协议(PDCP)或无线电资源控制(RRC)协议将期限信息报告到eNodeB 356。客户端装置358可执行DASH客户端,这可经由应用程序设计接口(API)将期限信息报告到客户端装置358的调制解调器。
在接收期限信息之后,eNodeB 356可根据期限信息调度对于客户端装置358与DASH服务器352之间的HTTP流式发射会话的发射。即,DASH服务器352可从客户端装置358接收媒体数据(例如,表示适应集合的区段的所有或一部分)的请求,且经由PGW 354及eNodeB356将所请求媒体数据发送到客户端装置358。接着,eNodeB 356可根据先前从客户端装置358接收的期限信息来优先化所请求媒体数据的递送。
期限信息可以各种方式与下行链路(DL)包相关联。在一个实例中,HTTP代理可逻辑地集成于eNodeB 356中。因此,HTTP代理可存储图表或其它数据结构,从而使特定期限与所请求媒体数据(例如,区段数目)相关联。即,图表可包含表示一组媒体数据(例如,特定区段数目)的第一栏及表示指定在与对应区段相关联的期限信息中的期限的第二栏。因此,当HTTP代理已高速缓存第一栏中识别的区段时,HTTP代理可优先化区段到客户端装置358的递送,以确保在图表的第二栏所指定期限时或之前将区段递送到客户端装置358。在另一实例中,可为HTTP流式发射会话建立专用承载信道。
图14为说明可执行上文关于图13所论述的方法的实例系统360的概念图。在这个实例中,系统360包含客户端装置362、eNodeB 370、PGW/SGW 376及CDN 378。客户端装置362包含HTTP客户端364、调制解调器366及高速缓存存储器368,且eNodeB370包含HTTP代理服务器/高速缓存存储器372。由此,eNodeB 370的HTTP代理服务器/高速缓存存储器372执行HTTP高速缓存(被称为RAN高速缓存)。因此,eNodeB 370可逻辑地高速缓存内容。调制解调器366、高速缓存存储器368、eNodeB 370及HTTP代理服务器/高速缓存存储器372可统称为HTTP代理服务器374。
物理地,HTTP代理服务器/高速缓存存储器372及用于高速缓存的存储器可在eNodeB 370外部(例如,如下文图15中所展示)。如果不物理地本地高速缓存,那么eNodeB370经由PGW/SGW 376从CDN 378CDN或内容服务器提取内容。这避免将eNodeB 370直接暴露于因特网,且也确保经由HTTP的服务连续性。移动网络运营商也可基于预测将内容推送到eNodeB 370。客户端装置362可经由PDCP、HTTP或RRC将期限信息报告到eNodeB 370。
图15为说明根据本发明的技术的包化的一实例的概念图。在这个实例中,发送器可使用播出曲线后设数据以恰当地包化及调度数据。
图16为说明包含初始化区段(IS)382及多个媒体区段(MS)384A到384G(MS 384)的一系列区段380的概念图。IS 382含有一个组件的所有相关后设数据以及媒体数据,提供文件格式层级的随机存取点,且提供字节中的大小、文件格式中的最早呈现时间(在相对于周期的开始的ISO BMFF时刻表内)及信息持续时间(即,其跨越的样本持续时间(在“周期/MPU”内))。区段382、384的依序级联引起位流符合ISO BMFF。
图17A及17B为表示媒体区段的播出曲线的概念图。所述播出曲线表达为呈现达到某一时间所必需的字节量。曲线的形状通过媒体编码器/准备来确定。实例包含样本边界及在时间上的线性增加。完整区段对于播出是必需的。播出曲线可通过对于递送的传送来使用。可添加或使用更多后设数据用于传送。
在一些实例中,为适当播出,整个区段需要在接收器处为可用的。这类模型适合于某些接收器实施,但在许多情况下,可“渐进地”播放区段,即可同时播放及下载区段。这类特征尤其与低延迟情形相关。可将信息从客户端提供到DANE作为简单期限状态消息的扩展,或可将信息从DASH服务器提供到DANE作为PED。
媒体区段可细分成可播放前缀。假设区段中的最早呈现时间,播出曲线表达为呈现达到某一时间所必需的字节量。在“最坏情况”中,所有字节均为播放最早呈现时间所必需。在这种情况下,仅在整个区段可用之后,可播放数据。然而通常,整个区段仅具有一前缀,可开始正呈现区段,且随着连续地添加更多字节到前缀,可播放越来越多的呈现时间。播出曲线的形状通过媒体编码器/准备来确定。一些实例包含:
●样本边界及在时间上的线性增加(例如,如图17A中所展示)。
●完全区段对于播出是必需的。
●对于解码的较复杂结构与呈现次序(例如)在使用阶层B图片时并不相同。
图17B中展示两种不同播出曲线。x轴展示呈现时间(PT)减区段的最早呈现时间(EPT)。为播放EPT,一定量的字节为必需的。尽管虚线曲线需要区段的所有字节来播放具有EPT的样本,但实线曲线仅需要一小部分来开始播放及一些更多后继数据。播出曲线通常为阶梯形。
如果网络感知曲线,假设网络也知道客户端何时需要接收EPT,那么其可优化相关字节范围的递送,以便确保及时接收数据。这可通过上文例如关于图9及10所论述的技术来实现。
图18为用于递送区段的数据的媒体递送事件(MDE)的概念图。开始于以一随机存取点(RAP)开始的囊封于IP/UDP/ROUTE中的MDE变成以T-RAP开始的T-MDE。
图19为说明可用以将本发明的技术在可能性简化实例中执行的另一实例系统390的概念图。在这个实例中,系统390包含ROUTE接收器及输出缓冲器392、ISO BMFF缓冲器396、ISO BMFF解码器398、DASH客户端394及CDN 404。一般来说,ROUTE接收器及输出缓冲器392经由ROUTE接收包含媒体数据的RAP包400及包402A、包402B。另外或替代地,DASH客户端394从CDN 404经由单播协议(例如,HTTP)来检索区段。因此,ROUTE接收器及输出缓冲器392或接收特定区段的DASH客户端394中的一者将区段提供到ISO BMFF缓冲器396。ISO BMFF解码器398从ISO BMFF缓冲器396检索区段用于以ISO BMFF层级进行解码,(例如)以检索待由对应媒体解码器(例如,音频解码器或视频解码器)解码的PES包。在这个实例中,下层信令提供足够信息以在无MPD 406的情况下开始服务。仅当添加单播或当需要较丰富选择时,才查询MPD 406。仍存在通用MPD 406,但MPD 406对于启动及/或唯广播并非必需的。
图20为根据本发明的技术的实例递送架构410的概念图。在这个实例中,递送架构410包含ISO BMFF及视频编码器412、分割器及ROUTE发送器412、及服务器/发送器侧部上的发送调度器414、以及ROUTE接收器及输出缓冲器416、ISO BMFF缓冲器418与客户端/接收器侧部上的ISO BMFF解码器420。一般来说,ISO BMFF及视频编码器412传送ISO BMFF流422到分割器及ROUTE发送器412。分割器及ROUTE发送器412将ISO BMFF流422分隔成相应包426A、包426B(包426)及随机存取点(RAP)包424,并将包424、包426传送到发送调度器414。
发送调度器414确定何时将包424、包426发送到ROUTE接收器及输出缓冲器416。在发送包之后,ROUTE接收器及输出缓冲器416自发送调度器414接收包424、包426。ROUTE接收器及输出缓冲器416发送信息430,以起始ISO BMFF解码器420并调度其解码及呈现。ROUTE接收器及输出缓冲器416也重构从包424、包426的ISO BMFF流422,并将ISO BMFF流422发送到ISO BMFF缓冲器418。ISO BMFF解码器420从ISO BMFF缓冲器418提取待在ISO BMFF层级处解码的媒体数据428,(例如)以检索包含待由例如音频解码器及视频解码器解码的媒体数据的PES包(图20中未展示)。
下文论述对于以使用渐进播出的使用状况的各种实例:
●DANE与例如eNB的移动基站(以及PGW)共置。可通过无线电调度器使用渐进播出的信息以使用TCP/IP优化对应单元中的递送。
●DANE与家庭网关共置。渐进播出以及期限的信息(可能来自不同用户)可用以优化朝向网络的请求,以便确保及时递送某些对象的紧急片段。
●DANE与例如eNB的移动基站(以及PGW)共置。可通过无线电调度器使用期限及渐进播出的信息,以使用与TCP不同的递送协议(例如,基于包的协议)来优化对应单元中的递送。图20展示用于这类状况的可能性递送架构。分割器及ROUTE发送器412可充当包化器。此外,在这个实例中,分割器及ROUTE发送器412可使用如ATSC中所定义的ROUTE,且使用自发送器的信息(渐进播出)及可能从接收器的信息(期限信息),以便添加包的靶标次数,所述包待发送到ROUTE接收器及输出缓冲器416或待由ROUTE接收器及缓冲器416接收。这使得网络使用所述信息以确保无(例如)ISO BMFF缓冲器418的缓冲区欠载运行。
图21说明根据本发明的技术接收器模型的实例的两个概念图。模型440的实例包含ROUTE接收器及输出缓冲器442、ISO BMFF缓冲器444及ISO BMFF解码器446。ROUTE接收器及输出缓冲器442接收包448、包450。ROUTE接收器及输出缓冲器442传送信息456以起始ISOBMFF解码器446并调度其解码及呈现。ROUTE接收器及输出缓冲器442也重构从包448、包450的ISO BMFF流452,并将ISO BMFF流452发送到ISO BMFF缓冲器444。ISO BMFF解码器446从ISO BMFF缓冲器444提取待在ISO BMFF层级处解码的媒体数据454,(例如)以检索包含待由(例如)音频解码器及视频解码器解码的PES包(图21的模型440中未展示)。
模型460的实例包含ROUTE接收器及输出缓冲器462、MSE缓冲器464、浏览器及爪哇脚本(Javascript)单元478及播出单元466。ROUTE接收器及输出缓冲器462接收包468、包470。ROUTE接收器及输出缓冲器462传送信息476以起始ISO BMFF解码器466并调度其解码及呈现。浏览器478从ROUTE接收器及输出缓冲器462检索媒体单元并将所述媒体单元递送到MSE缓冲器464,所述浏览器478由也执行爪哇脚本(例如,作为对浏览器478的外挂程式执行)的处理器执行。播出单元466从ISO BMFF缓冲器464提取待解码及待呈现的媒体数据474。
为处理上文使用状况及情形,可提供以下扩展并供本发明的各种单元及组件使用:
●提供接收器中的所请求对象的绝对期限(挂钟)的状态消息。即,接收器(特定而言,接收器的处理器)可将绝对期限指定在状态消息中的挂钟时间中,并将所述状态消息发送到例如eNodeB、HTTP代理、DANE或类似者。
●提供所请求对象的最大往返时间(RTT)(持续时间)的状态消息。即,接收器可在状态消息中指定最大RTT,且将所述消息发送到例如eNodeB、HTTP代理服务器、DANE或其类似者。
●提供区段的不同字节范围的相对期限的PED消息。即,接收器可在一或多个PED消息中指定区段的不同字节范围的相对期限,且将这些PED消息发送到例如eNodeB、HTTP代理服务器、DANE或其类似者。
●提供区段的不同字节范围的相对期限的状态消息。即,接收器可在一或多个状态消息中指定区段的不同字节范围的相对期限,且将这些状态消息发送到例如eNodeB、HTTP代理服务器、DANE或其类似者。
可在期限信息中指定AbsoluteDeadline参数。所述参数可允许DASH客户端依据何时需要接收区段来对于DANE高速缓存指示挂钟时间中的绝对期限。
AbsoluteDeadline参数的来源及目标可如下:
●类型:度量
●发送器:DASH客户端
●接收器:DANE
下表表示AbsoluteDeadline参数的实例数据表示:
参数 类型 基数 描述
AbsoluteDeadline NTP 1 接收器中待可用的区段的绝对期限。
对于绝对时间的格式,基本上可使用以下格式中的任一者。绝对时间的格式的实例包含:
●xsdate格式
●ISO时序格式
●NTP格式
定义请求中的扩展标头(或标头扩展)的实例方法如下:
X-Dash-Deadline-ISO:<以ISO格式的时间>
实例如下:
X-Dash-Deadline-ISO:2015-10-11T17:53:03Z
另外或替代地,可在期限信息中指定最大往返时间(MaxRTT)参数。所述参数可允许DASH客户端对DANE高速缓存指示请求的最大往返时间,所述最大往返时间为从当发布请求时直到所请求数据需要在DASH客户端处完全可用时的时间。时间可以ms为单位。
MaxRTT参数的来源及目的地可如下:
●类型:度量
●发送器:DASH客户端
●接收器:DANE
下表表示MaxRTT参数的实例数据表示:
参数 类型 基数 描述
MaxRTT 单元 1 从请求到区段可用的最大RTT。
定义请求中的扩展标头的实例方法如下:
X-Dash-MaxRTT:<以ms为单位的最大往返时间>
实例如下:
X-Dash-MaxRTT:2345
实例表示,为避免缓冲下溢,在发布请求2.345秒之后客户端请求区段的可用性。
另外或替代地,期限信息可包含渐进播出配置文件度量(ProgressivePlayout)参数。所述参数可允许DASH客户端对于DANE高速缓存指示区段的渐进播出配置文件。
ProgressivePlayout参数的来源及目的地可如下:
●类型:度量
●发送器:DASH客户端
●接收器:DANE
下表表示ProgressivePlayout参数的实例数据表示:
定义请求中的扩展标头的实例方法如下:
X-Dash-Progressive-Playout:<字节的元组及以ms为单位的时间>
实例如下:
X-Dash-Progressive-Playout:
<4321,0;62345,200;82220,400;1010101,600;121212,800;1313131;1000>
所述实例表示,需要递送4321字节以起始播出,且接着为播出时间中的每一者的字节总量。应注意,步骤也可表述为三角形(Delta)。
ProgressivePlayout信息可另外或替代地作为扩展标头以及响应来递送。
以这种方式发信号通知期限信息可确保及时递送具有实时约束的数据(例如,媒体数据)。举例来说,通过提供期限信息到DANE,DANE可确保根据实时约束将数据递送到客户端装置。因此,关于DASH或媒体数据的其它流式发射,客户端装置可避免缓冲下溢,这可确保连续性、平稳播出。
图22为说明用于执行本发明的技术的实例方法的流程图。图22的技术描述关于图1的服务器装置60及客户端装置40。然而,应理解,这些或类似技术可通过如本文所展示的其它装置来执行,例如(例如),图5的客户端装置210及媒体来源服务器装置206或HTTP高速缓存服务器装置208、图6的客户端装置222及CDN 220的服务器、图7的DASH客户端240及HTTP服务器232、图8的DASH客户端270及HTTP服务器262或DANE 282、图9的下载引擎292、图11的客户端装置302及DASH服务器装置304或DANE 306、图12的客户端装置332及eNodeB340或HTTP代理服务器/高速缓存存储器344、图13的客户端装置358及eNodeB 356或DASH服务器352、图14的客户端装置362及eNodeB 370/HTTP代理服务器/高速缓存存储器372、根据图19的系统390配置的客户端装置、图20的服务器装置(包含分割器及ROUTE发送器412以及发送调度器414)及客户端装置(包含ROUTE接收器及输出缓冲器416、ISO BMFF缓冲器418及ISO BMFF解码器420),或图21的包含模型440或模型460中的任一者的组件的客户端装置。
在这个实例中,假定服务器装置60最初准备或接收包含指定区段将可用的挂钟时间的信息的媒体呈现描述(MPD)(或在其它实例中的其它清单文件)。因此,客户端装置40从服务器装置60请求MPD(480)。服务器装置60接收MPD的请求(482),且作为响应将MPD发送到客户端装置40(484)。因此,客户端装置40接收MPD(486)。
客户端装置40使用MPD例如根据客户端装置40的解码及再现能力(例如,音频解码器46及视频解码器48的解码能力,音频输出42及视频输出44的再现能力,及例如用于各种适应集合的配置文件、层及/或层级信令信息中指定的解码及再现需求)以确定从其中检索媒体数据的一或多个适应集合。客户端装置40可接着例如基于网络带宽的可用量来选择从其中请求区段的适应集合中的每一者的表示。客户端装置40可接着开始请求所选择一或多个表示的区段,接收区段且缓冲其接收的区段。
此外,根据本发明的技术,客户端装置40可从MPD确定区段可用性时间(488)。客户端装置40可使用区段可用性时间以确定区段何时可用于检索,以避免请求并不可用的区段。另外,客户端装置40可确定播出速率及缓冲器填充水平(490)。即,归因于媒体数据的播放,客户端装置40可跟踪缓冲器是如何快速正被清空的,且也监测缓冲器的当前填充水平。基于所述信息,客户端装置40可确定何时必须接收下一区段,以便避免缓冲区欠载运行(492)。在其它实例中,客户端装置40可确定何时必须接收区段的一部分(例如,字节范围),且可确定区段的不同部分(例如,字节范围)的不同值。一般来说,客户端装置40可根据以下公式来计算在其处区段(或其部分)的时间:
期限=CurrentTime-FillLevel/PlaybackRate,
其中,期限为挂钟时间的时间,在所述时间处必须接收下一区段;CurrentTime为挂钟时间中的当前时间;FillLevel为存储于缓冲器中的数据量;且PlaybackRate为媒体数据的播放速率。
因此,当下一区段可用时,客户端装置40可请求下一区段(例如,使用HTTP GET或部分GET请求),且可进一步将表示必须接收所述区段(或其部分)以避免缓冲区欠载运行的时间的期限信息发送(494)。在一些实例中,客户端装置40可包含其请求自身内的期限信息,例如如上文所论述,所述期限信息作为HTTP标头扩展中的属性,或作为用于包含请求或类似者的包的标头中的区段的URL的论点或要素。可替代地,客户端装置40可也如上文所述将期限信息指定作为旁侧信息。此外,期限信息可为如上文所述的“期限”值,或可仅包含缓冲器填充水平、当前时间的时间戳及/或通过客户端装置40确定的播放速率信息,使得服务器装置60(其可表示中间装置,例如,DANE、eNodeB、HTTP代理服务器/高速缓存存储器或类似者)可例如根据上文的方程式来计算期限值。
服务器装置60可接着接收区段的请求(496)。服务器装置60可接着例如从其请求自身或自从客户端装置40所接收的旁侧信息来确定区段的期限信息(498)。服务器装置60可接着根据期限信息优先化递送所请求区段(或其部分,例如,区段的经请求字节范围)(500)。举例来说,服务器装置60可确定数据到达客户端装置40的往返时间,且调度在必须接收数据的期限的至少一半的往返时间之前的时候递送所请求区段(或其字节范围)。服务器装置60可接着根据期限信息发送所请求区段(或其部分)(即,优先排序)(502)。
最后,客户端装置40可在区段需要避免缓冲区欠载运行的期限时或之前接收区段(504)。因此,客户端装置40可添加区段到缓冲器用于后续播出(506)。稍后,在已从缓冲器提取区段之前方的缓冲器中的数据之后,将在额外数据可已检索(例如,根据步骤488到504的技术)及缓冲时检索、解码并播放出所述区段,同样以防止缓冲区欠载运行。
以这种方式,图22表示方法的一实例,所述方法包含:确定数据将可供下载的时间;确定需要数据以防止客户端装置的缓冲器的缓冲区欠载运行的时间;及当数据可用时,发送对数据的请求及表示需要数据以避免缓冲区欠载运行的时间的期限信息。
在一或多个实例中,所描述的功能可在硬件、软件、固件或其任何组合中实施。如果实施于软件中,那么所述功能可作为一或多个指令或代码而存储于计算机可读媒体上或经由计算机可读媒体进行发射,且由基于硬件的处理单元执行。计算机可读媒体可包含对应于有形媒体(例如,数据存储媒体)的计算机可读存储媒体,或包含有助于将计算机程式从一处转移到另一处(例如,根据通信协议)的任何媒体的通信媒体。以这种方式,计算机可读媒体通常可对应于(1)非暂时性的有形计算机可读存储媒体,或(2)例如信号或载波的通信媒体。数据存储媒体可为可由一或多个计算机或一或多个处理器存取以检索用于实施本发明中所描述的技术的指令、代码及/或数据结构的任何可用媒体。计算机程序产品可包含计算机可读媒体。
借助于实例且非限制,这类计算机可读存储媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储器、磁盘存储器或其它磁性存储装置、快闪存储器或可用以存储呈指令或数据结构形式的所需的程序码且可由计算机存取的任何其它媒体。此外,任何连接适当地称为计算机可读媒体。举例来说,如果使用同轴缆线、光纤缆线、双绞线、数字用户线(DSL)或例如红外线、无线电及微波的无线技术,从网站、服务器或其它远程源来发射指令,那么同轴缆线、光纤缆线、双绞线、DSL或例如红外线、无线电及微波的无线技术包含于媒体的定义中。然而,应理解,计算机可读存储媒体及数据存储媒体不包含连接、载波、信号或其它暂时性媒体,而涉及非暂时性有形存储媒体。如本文所使用,磁盘及光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软盘及蓝光光盘,其中磁盘通常以磁性方式再生数据,而光盘用激光以光学方式再生数据。以上的组合也应包含于计算机可读媒体的范围内。
指令可由一或多个处理器执行,例如一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、场可编程逻辑阵列(FPGA)或其它等效的集成或离散逻辑电路。因此,如本文所使用,术语“处理器”可指前述结构或适合于实施本文中所描述的技术的任何其它结构中的任一者。另外,在一些方面中,本文所描述的功能性可设置于专用硬件及/或经配置用于编码及解码的软件模块内,或并入于组合式编解码器中。此外,所述技术可完全实施于一或多个电路或逻辑元件中。
本发明的技术可实施于多种装置或设备中,所述装置或设备包含无线手机、集成电路(IC)或IC集合(例如,芯片组)。在本发明中描述各种组件、模块或单元,以强调经配置以执行所公开技术的装置的功能方面,但未必需要由不同硬件单元来实现。确切而言,如上文所描述,可将各种单元组合于编解码器硬件单元中,或通过互操作性硬件单元(包含如上文所描述的一或多个处理器)的集合而结合合适软件及/或固件来提供所述单元。
各种实例已予以描述。这些及其它实例处于以下权利要求书的范围内。

Claims (36)

1.一种检索具有实时约束的数据的方法,所述方法包括通过由客户端装置的包括数字逻辑电路的基于硬件的处理器执行的实时应用程序进行以下操作:
确定所述数据将可供下载的时间;
确定需要所述数据以防止所述客户端装置的缓冲器的缓冲区欠载运行的时间;及
当所述数据可用时,发送对所述数据的请求及表示需要所述数据以避免所述缓冲区欠载运行的所述时间的期限信息。
2.根据权利要求1所述的方法,其中确定所述数据将可用的所述时间包括根据所述数据的清单文件或先前所接收数据中的至少一者确定所述时间。
3.根据权利要求2所述的方法,其中所述清单文件包括HTTP动态自适应流式发射DASH媒体呈现描述MPD。
4.根据权利要求1所述的方法,其中发送所述请求及所述期限信息包括在所述请求的HTTP标头扩展中指定所述期限信息。
5.根据权利要求1所述的方法,其中发送所述请求及所述期限信息包括在HTTP GET或部分GET请求的统一资源定位符URL的查询参数中发送所述期限信息。
6.根据权利要求1所述的方法,其中发送所述请求包括将所述请求发送到流式发射感知网络元件、DASH感知网络元件DANE、DASH服务器、移动小区站点或无线存取点中的至少一者。
7.根据权利要求1所述的方法,其进一步包括确定所述期限信息,所述期限信息包括表示以下中的至少一者的信息中的至少一者:需要接收所述请求中指定的数据的挂钟时间,或从发布所述请求到需要接收所述请求中指定的所述数据的最大往返时间。
8.根据权利要求1所述的方法,其进一步包括确定所述期限信息,所述期限信息包括以下中的至少一者:表示所述客户端装置的缓冲器的缓冲区占用水平的数据、表示产生所述缓冲区占用水平信息的时间的时间戳或表示所述客户端装置播放所述数据的速率的播出数据速率。
9.根据权利要求1所述的方法,其进一步包括通过所述期限信息发送表示播出曲线或所述播出曲线的经二次采样版本中的至少一者的数据。
10.根据权利要求1所述的方法,其中发送所述请求包括将所述请求发送到流式发射感知网络元件,所述方法进一步包括响应于发送所述请求及所述期限信息,在需要所述数据的时间或之前从所述流式发射感知网络元件接收所述数据。
11.根据权利要求1所述的方法,其中所述数据包括实时媒体数据、流式发射媒体数据、媒体区段或媒体子区段中的至少一者。
12.根据权利要求1所述的方法,其中所述数据包括媒体区段,且其中发送所述期限信息包括发送表示以完全区段的形式还是以多个媒体递送事件MDE的形式接收所述数据的数据。
13.根据权利要求1所述的方法,其中发送所述期限信息包括通过超文本传送协议HTTP将所述期限信息发送到流式发射服务器,以使得所述流式发射服务器将所述期限信息转递到流式发射感知网络元件。
14.根据权利要求1所述的方法,其中发送所述期限信息包括通过无线电存取网络RAN将所述期限信息直接发送到流式发射感知网络元件。
15.一种用于检索具有实时约束的数据的客户端装置,所述客户端装置包括:
存储器,其包括用于缓冲具有所述实时约束的所述数据的缓冲器;及
基于硬件的处理器,其包括数字逻辑电路,所述处理器经配置以执行实时应用程序,所述实时应用程序经配置以:
确定所述数据将可供下载的时间;
确定需要所述数据以防止所述缓冲器的缓冲区欠载运行的时间;及
当所述数据可用时,发送对所述数据的请求及表示需要所述数据以避免所述缓冲区欠载运行的所述时间的期限信息。
16.根据权利要求15所述的客户端装置,其中所述实时应用程序经配置以从所述数据的清单文件或先前所接收数据中的至少一者确定所述数据将可供下载的所述时间。
17.根据权利要求15所述的客户端装置,其中所述实时应用程序经配置以在所述请求的HTTP标头扩展中指定所述期限信息。
18.根据权利要求15所述的客户端装置,其中所述实时应用程序经配置以在HTTP GET或部分GET请求的统一资源定位符URL的查询参数中发送所述期限信息。
19.根据权利要求15所述的客户端装置,其中所述实时应用程序经配置以确定所述期限信息,所述期限信息包括表示以下中的至少一者的信息中的至少一者:需要接收所述请求中指定的数据的挂钟时间,或从发布所述请求到需要接收所述请求中指定的所述数据的最大往返时间。
20.根据权利要求15所述的客户端装置,其中所述实时应用程序经配置以确定所述期限信息,所述期限信息包括以下中的至少一者:表示所述客户端装置的缓冲器的缓冲区占用水平的数据、表示产生所述缓冲区占用水平信息的时间的时间戳或表示所述客户端装置播放所述数据的速率的播出数据速率。
21.根据权利要求15所述的客户端装置,其中所述实时应用程序进一步经配置以通过所述期限信息发送表示播出曲线或所述播出曲线的经二次采样版本中的至少一者的数据。
22.一种用于检索具有实时约束的数据的装置,所述装置包括:
用于确定所述数据将可供下载的时间的装置;
用于确定需要所述数据以防止所述客户端装置的缓冲器的缓冲区欠载运行的时间的装置;及
用于在所述数据可用时,发送对所述数据的请求及表示需要所述数据以避免所述缓冲区欠载运行的所述时间的期限信息的装置。
23.根据权利要求22所述的装置,其中用于确定所述数据将可用的所述时间的所述装置包括用于根据所述数据的清单文件或先前所接收数据中的至少一者确定所述时间的装置。
24.根据权利要求22所述的装置,其中用于发送所述请求及所述期限信息的所述装置包括用于在所述请求的HTTP标头扩展中指定所述期限信息的装置。
25.根据权利要求22所述的装置,其中用于发送所述请求及所述期限信息的所述装置包括用于在HTTP GET或部分GET请求的统一资源定位符URL的查询参数中发送所述期限信息的装置。
26.根据权利要求22所述的装置,其进一步包括用于确定所述期限信息的装置,所述期限信息包括表示以下中的至少一者的信息中的至少一者:需要接收所述请求中指定的数据的挂钟时间,或从发布所述请求到需要接收所述请求中指定的所述数据的最大往返时间。
27.根据权利要求22所述的装置,其进一步包括用于确定所述期限信息的装置,所述期限信息包括以下中的至少一者:表示所述客户端装置的缓冲器的缓冲区占用水平的数据、表示产生所述缓冲区占用水平信息的时间的时间戳或表示所述客户端装置播放所述数据的速率的播出数据速率。
28.根据权利要求22所述的装置,其进一步包括用于通过所述期限信息发送数据的装置,所述数据表示播出曲线或所述播出曲线的经二次采样版本中的至少一者。
29.一种计算机可读存储媒体,其上存储有指令,所述指令在经执行时使得客户端装置的处理器进行以下操作:
确定所述数据将可供下载的时间;
确定需要所述数据以防止所述客户端装置的缓冲器的缓冲区欠载运行的时间;及
当所述数据可用时,发送对所述数据的请求及表示需要所述数据以避免所述缓冲区欠载运行的所述时间的期限信息。
30.根据权利要求29所述的计算机可读存储媒体,其中使得所述处理器确定所述数据将可用的所述时间的所述指令包括使得所述处理器根据所述数据的清单文件或先前所接收数据中的至少一者确定所述时间的指令。
31.根据权利要求29所述的计算机可读存储媒体,其中使得所述处理器发送所述请求及所述期限信息的所述指令包括使得所述处理器在所述请求的HTTP标头扩展中指定所述期限信息的指令。
32.根据权利要求29所述的计算机可读存储媒体,其中使得所述处理器发送所述请求及所述期限信息的所述指令包括使得所述处理器在HTTP GET或部分GET请求的统一资源定位符URL的查询参数中发送所述期限信息的指令。
33.根据权利要求29所述的计算机可读存储媒体,其中使得所述处理器发送所述请求的所述指令包括使得所述处理器将所述请求发送到以下中的至少一者的指令:流式发射感知网络元件、DASH感知网络元件DANE、DASH服务器、移动小区站点或无线存取点。
34.根据权利要求29所述的计算机可读存储媒体,其进一步包括使得所述处理器确定所述期限信息的指令,所述期限信息包括表示以下中的至少一者的信息中的至少一者:需要接收所述请求中指定的数据的挂钟时间,或从发布所述请求到需要接收所述请求中指定的所述数据的最大往返时间。
35.根据权利要求29所述的计算机可读存储媒体,其进一步包括使得所述处理器确定所述期限信息的指令,所述期限信息包括以下中的至少一者:表示所述客户端装置的缓冲器的缓冲区占用水平的数据、表示产生所述缓冲区占用水平信息的时间的时间戳或表示所述客户端装置播放所述数据的速率的播出数据速率。
36.根据权利要求29所述的计算机可读存储媒体,其进一步包括使得所述处理器通过所述期限信息发送数据的指令,所述数据表示播出曲线或所述播出曲线的经二次采样版本中的至少一者。
CN201680059719.XA 2015-10-16 2016-10-14 用于媒体数据的流式发射的期限信令 Active CN108141455B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
PCT/CN2015/092095 WO2017063189A1 (en) 2015-10-16 2015-10-16 Deadline signaling for streaming of media data
CNPCT/CN2015/092095 2015-10-16
PCT/CN2016/102194 WO2017063592A1 (en) 2015-10-16 2016-10-14 Deadline signaling for streaming of media data

Publications (2)

Publication Number Publication Date
CN108141455A true CN108141455A (zh) 2018-06-08
CN108141455B CN108141455B (zh) 2021-08-20

Family

ID=58517016

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680059719.XA Active CN108141455B (zh) 2015-10-16 2016-10-14 用于媒体数据的流式发射的期限信令

Country Status (6)

Country Link
US (1) US20180316740A1 (zh)
EP (1) EP3363181B1 (zh)
JP (1) JP2018532334A (zh)
CN (1) CN108141455B (zh)
TW (1) TW201729601A (zh)
WO (2) WO2017063189A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113038245A (zh) * 2019-12-24 2021-06-25 瑞昱半导体股份有限公司 多媒体内容播放装置与多媒体内容播放方法

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3539269B1 (en) * 2016-11-10 2020-09-23 Sony Corporation Node type based control of assistance for data streaming
GB2563251A (en) * 2017-06-07 2018-12-12 Sony Mobile Communications Inc Terminal device, data processing apparatuses and methods
US10404766B2 (en) * 2017-12-07 2019-09-03 Mcom Media Communications Dmcc Managing content casting
EP3750303B1 (en) * 2018-02-05 2024-04-03 Telefonaktiebolaget LM Ericsson (publ) A 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
CN108600377B (zh) * 2018-04-28 2021-04-27 武汉斗鱼网络科技有限公司 一种文件下载的暂停方法、装置、终端和存储介质
WO2019236296A1 (en) 2018-06-07 2019-12-12 Sony Corporation Network controlled uplink media transmission for a collaborative media production in network capacity constrained scenarios
EP3841722B1 (en) 2018-08-20 2023-12-13 Sony Group Corporation Method and system for utilizing network conditions feedback for improving quality of a collaborative media production
US11206298B2 (en) 2018-08-20 2021-12-21 Sony Group Corporation Method and system utilizing event specific priority in a network controlled uplink media transmission for a collaborative media production
CN112640479B (zh) * 2018-11-08 2024-02-20 Sk电信有限公司 用于切换媒体服务频道的方法和装置
US11199994B1 (en) * 2018-11-14 2021-12-14 Amazon Technologies, Inc. Decoupling data request rate from hardware medium for archival data storage devices
FR3094597B1 (fr) * 2019-03-27 2021-06-11 Streamroot Procédé de diffusion de contenus en streaming dans un réseau pair à pair
GB2586442B (en) * 2019-06-26 2024-03-27 Univ Dublin City A method and system for encoding and decoding to enable adaptive delivery of mulsemedia streams
US11831879B2 (en) * 2019-09-20 2023-11-28 Comcast Cable Communications, Llc Methods, systems, and apparatuses for enhanced adaptive bitrate segmentation
CA3126585A1 (en) * 2020-08-03 2022-02-03 Comcast Cable Communications, Llc Video content processing systems and methods
WO2022122123A1 (en) * 2020-12-08 2022-06-16 Nokia Technologies Oy Method and apparatus for use in a data pulling operation
US20230275977A1 (en) * 2022-02-28 2023-08-31 Comcast Cable Communications, Llc Methods, systems, and apparatuses for signaling server-associated delays in content delivery

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101674492A (zh) * 2008-09-09 2010-03-17 中兴通讯股份有限公司 一种流媒体服务器性能测试方法及装置
CN102067556A (zh) * 2008-07-23 2011-05-18 高通股份有限公司 用于组合多个媒体数据流的系统、方法或设备
US20130191511A1 (en) * 2012-01-20 2013-07-25 Nokia Corporation Method and apparatus for enabling pre-fetching of media
EP2665239A1 (en) * 2012-05-14 2013-11-20 Alcatel-Lucent An adaptive streaming aware networks node, client and method with priority marking
CN103973937A (zh) * 2014-04-29 2014-08-06 南京邮电大学 基于无线多媒体传感器网络的信息隐藏方法
US20140358267A1 (en) * 2006-09-26 2014-12-04 Clear Channel Management Services, Inc. Scheduling Advertising During Restricted Periods
EP2920938A1 (en) * 2012-11-13 2015-09-23 Telefonaktiebolaget L M Ericsson (publ) Processing of multimedia data
CN104969560A (zh) * 2013-02-04 2015-10-07 高通股份有限公司 确定对于网络流式传输可用的媒体数据

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1077557B1 (en) * 1999-02-09 2014-07-16 Sony Corporation Information distribution system, terminal device, server device, method of data reception and method of data transmission
US6952739B2 (en) * 2000-08-03 2005-10-04 International Business Machines Corporation Method and device for parameter independent buffer underrun prevention
US20050273514A1 (en) * 2000-12-22 2005-12-08 Ray Milkey System and method for automated and optimized file transfers among devices in a network
JP2006525693A (ja) * 2003-02-13 2006-11-09 ノキア コーポレイション マルチメディア・ストリーミングにおけるクライアント速度機能のシグナリング方法
US7844727B2 (en) * 2003-04-24 2010-11-30 Nokia Corporation Method and device for proactive rate adaptation signaling
US7068575B2 (en) * 2003-07-30 2006-06-27 Microsoft Corporation High speed optical disc recording
US9065595B2 (en) * 2005-04-07 2015-06-23 Opanga Networks, Inc. System and method for peak flow detection in a communication network
US8909807B2 (en) * 2005-04-07 2014-12-09 Opanga Networks, Inc. System and method for progressive download using surplus network capacity
JP2007074225A (ja) * 2005-09-06 2007-03-22 Sony Corp 通信処理装置、および通信制御方法、並びにコンピュータ・プログラム
US8214516B2 (en) * 2006-01-06 2012-07-03 Google Inc. Dynamic media serving infrastructure
US20070195756A1 (en) * 2006-02-23 2007-08-23 Matsushita Electric Industrial Co., Ltd. Terminal switching technology for seamless switching of streaming sessions between terminals
WO2009005747A1 (en) * 2007-06-28 2009-01-08 The Trustees Of Columbia University In The City Of New York Set-top box peer-assisted video-on-demand
US8141120B2 (en) * 2008-01-03 2012-03-20 Nec Laboratories America, Inc. Adaptive scheduling of streaming video over wireless networks
CN101420457B (zh) * 2008-12-03 2011-10-05 腾讯科技(深圳)有限公司 对等体下载数据分片的方法、装置及对等体
WO2010088490A1 (en) * 2009-01-30 2010-08-05 Movik Networks Application, usage & radio link aware transport network scheduler
WO2010111261A1 (en) * 2009-03-23 2010-09-30 Azuki Systems, Inc. Method and system for efficient streaming video dynamic rate adaptation
US9177540B2 (en) * 2009-06-01 2015-11-03 Music Mastermind, Inc. System and method for conforming an audio input to a musical key
US20120327779A1 (en) * 2009-06-12 2012-12-27 Cygnus Broadband, Inc. Systems and methods for congestion detection for use in prioritizing and scheduling packets in a communication network
US9137301B1 (en) * 2009-06-30 2015-09-15 Amazon Technologies, Inc. Client based opportunistic routing
US8631455B2 (en) * 2009-07-24 2014-01-14 Netflix, Inc. Adaptive streaming for digital content distribution
US8484368B2 (en) * 2009-10-02 2013-07-09 Disney Enterprises, Inc. Method and system for optimizing download and instantaneous viewing of media files
EP2317727A1 (en) * 2009-10-28 2011-05-04 Alcatel Lucent Method for cache management and devices therefore
US8117332B2 (en) * 2010-04-23 2012-02-14 Canon Kabushiki Kaisha Network streaming over multiple physical interfaces
KR20120010089A (ko) * 2010-07-20 2012-02-02 삼성전자주식회사 Http 기반의 멀티미디어 스트리밍 서비스의 품질 향상을 위한 방법 및 장치
EP2538635B1 (en) * 2011-06-21 2014-11-05 Alcatel Lucent Method of delivering content from a content delivery protocol server to a client, and device for use in such a method
CN102333083B (zh) * 2011-08-24 2017-04-05 中兴通讯股份有限公司 一种传输数据的方法和系统
WO2013057315A2 (en) * 2011-10-21 2013-04-25 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Resource management concept
US9386058B2 (en) * 2012-02-27 2016-07-05 Qualcomm Incorporated DASH client and receiver with playback rate selection
CN105264826B (zh) * 2012-12-21 2019-12-20 皇家Kpn公司 用于使能低等待时间流式传输的方法和系统
CN103929684B (zh) * 2013-01-14 2018-06-15 华为技术有限公司 一种基于流媒体选择码流分段的方法、播放器和终端
US9131009B2 (en) * 2013-03-08 2015-09-08 Comcast Cable Holdings, Llc Resource request management
US20140282792A1 (en) * 2013-03-15 2014-09-18 Cygnus Broadband, Inc. Video streaming with buffer occupancy prediction based quality adaptation
US9503491B2 (en) * 2013-03-15 2016-11-22 Echostar Technologies L.L.C. Playback stall avoidance in adaptive media streaming
EP2784996A1 (en) * 2013-03-27 2014-10-01 British Telecommunications public limited company Deadline driven content delivery
EP2784673A1 (en) * 2013-03-28 2014-10-01 Alcatel Lucent Scheduling
ITBA20130077A1 (it) * 2013-11-25 2015-05-26 Cicco Luca De Meccanismo per il controllo del bitrate di codifica in un sistema di video streaming adattivo basato su buffer di playout e sulla stima di banda.
CN103747283B (zh) * 2013-12-24 2017-02-01 中国科学院声学研究所 视频分片的下载方法
US9635077B2 (en) * 2014-03-14 2017-04-25 Adobe Systems Incorporated Low latency live video streaming
EP2958294A1 (en) * 2014-06-16 2015-12-23 Thomson Licensing Method for operating a network equipment arranged along a transmission path between a client terminal and at least one server, and corresponding network equipment.
US9854282B2 (en) * 2014-11-20 2017-12-26 Alcatel Lucent System and method for enabling network based rate determination for adaptive video streaming
ES2817907T3 (es) * 2015-05-08 2021-04-08 Ericsson Telefon Ab L M Gestión de memoria intermedia recomendada de red de una aplicación de servicio en un dispositivo de radio
US10484750B2 (en) * 2015-06-03 2019-11-19 Telefonaktiebolaget Lm Ericsson (Publ) Methods, radio communication device and base station device for managing a media stream
EP3285454B1 (en) * 2016-08-16 2020-01-15 Alcatel Lucent Method and device for transmission of content

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140358267A1 (en) * 2006-09-26 2014-12-04 Clear Channel Management Services, Inc. Scheduling Advertising During Restricted Periods
CN102067556A (zh) * 2008-07-23 2011-05-18 高通股份有限公司 用于组合多个媒体数据流的系统、方法或设备
CN101674492A (zh) * 2008-09-09 2010-03-17 中兴通讯股份有限公司 一种流媒体服务器性能测试方法及装置
US20130191511A1 (en) * 2012-01-20 2013-07-25 Nokia Corporation Method and apparatus for enabling pre-fetching of media
EP2665239A1 (en) * 2012-05-14 2013-11-20 Alcatel-Lucent An adaptive streaming aware networks node, client and method with priority marking
EP2920938A1 (en) * 2012-11-13 2015-09-23 Telefonaktiebolaget L M Ericsson (publ) Processing of multimedia data
CN104969560A (zh) * 2013-02-04 2015-10-07 高通股份有限公司 确定对于网络流式传输可用的媒体数据
CN103973937A (zh) * 2014-04-29 2014-08-06 南京邮电大学 基于无线多媒体传感器网络的信息隐藏方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113038245A (zh) * 2019-12-24 2021-06-25 瑞昱半导体股份有限公司 多媒体内容播放装置与多媒体内容播放方法

Also Published As

Publication number Publication date
EP3363181A1 (en) 2018-08-22
EP3363181A4 (en) 2019-04-03
JP2018532334A (ja) 2018-11-01
TW201729601A (zh) 2017-08-16
US20180316740A1 (en) 2018-11-01
WO2017063592A1 (en) 2017-04-20
EP3363181B1 (en) 2023-03-29
CN108141455B (zh) 2021-08-20
WO2017063189A1 (en) 2017-04-20

Similar Documents

Publication Publication Date Title
CN108141455A (zh) 用于媒体数据的流式发射的期限信令
CN108432261B (zh) 为媒体传输确定媒体传递事件位置的方法和装置
CN103843301B (zh) 经译码多媒体数据的网络串流期间的表示之间的切换
JP6342457B2 (ja) コード化ビデオデータのネットワークストリーミング
CN107743703B (zh) 用于媒体数据传输的方法、设备及计算机可读存储介质
CN103518351B (zh) 使用文件递送方法的ip广播流式传输服务分布
JP5964972B2 (ja) 複数のソースからのマルチメディアデータのストリーミング
JP5937275B2 (ja) ネットワークストリーミングのための失われたメディアデータの置換
US10938872B2 (en) Processing interactivity events for streaming media data
CN110447234A (zh) 作为分隔符及可寻址资源标识符的区段类型
CN107005729A (zh) 用于多媒体和文件传输的传输接口
CN107810624A (zh) 用信号发送用于广播的高速缓存的段
US10499094B2 (en) Transmission apparatus, transmitting method, reception apparatus, and receiving method
US20220007086A1 (en) Streaming media data including an addressable resource index track

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant