CN105981400A - 配置为接收划分成片段的多媒体内容的客户终端获得网络信息的方法 - Google Patents
配置为接收划分成片段的多媒体内容的客户终端获得网络信息的方法 Download PDFInfo
- Publication number
- CN105981400A CN105981400A CN201480075350.2A CN201480075350A CN105981400A CN 105981400 A CN105981400 A CN 105981400A CN 201480075350 A CN201480075350 A CN 201480075350A CN 105981400 A CN105981400 A CN 105981400A
- Authority
- CN
- China
- Prior art keywords
- cache
- client terminal
- server
- fragment
- network information
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000004891 communication Methods 0.000 claims abstract description 12
- 239000012634 fragment Substances 0.000 claims description 108
- 230000014509 gene expression Effects 0.000 claims description 82
- 238000004590 computer program Methods 0.000 claims description 8
- 230000004044 response Effects 0.000 description 19
- 230000011664 signaling Effects 0.000 description 16
- 230000006870 function Effects 0.000 description 15
- 230000006978 adaptation Effects 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 10
- 230000008859 change Effects 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 9
- 230000004048 modification Effects 0.000 description 7
- 238000012986 modification Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 101150012579 ADSL gene Proteins 0.000 description 4
- 102100020775 Adenylosuccinate lyase Human genes 0.000 description 4
- 108700040193 Adenylosuccinate lyases Proteins 0.000 description 4
- 230000008901 benefit Effects 0.000 description 4
- 208000025779 tropical pancreatitis Diseases 0.000 description 4
- 238000007726 management method Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000001174 ascending effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 230000005611 electricity Effects 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 230000005291 magnetic effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000002716 delivery method Methods 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000008014 freezing Effects 0.000 description 1
- 238000007710 freezing Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 210000003127 knee Anatomy 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000007727 signaling mechanism Effects 0.000 description 1
- 230000002459 sustained effect Effects 0.000 description 1
- 238000011144 upstream manufacturing 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/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/613—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for the control of the source by the destination
-
- 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/65—Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
-
- 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/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- 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/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23106—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
-
- 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/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/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control 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/637—Control signals issued by the client directed to the server or network components
- H04N21/6373—Control signals issued by the client directed to the server or network components for rate control, e.g. request to the server to modify its transmission rate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control 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/643—Communication protocols
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
配置为接收划分成片段的多媒体内容的客户终端获得网络信息的方法。客户终端(CT)被配置为接收由至少一个远程服务器(SE)提供的划分成片段的多媒体内容,每个片段能够以一个或多个表示获得,客户终端包括:通信模块(2),被配置为接收网络信息,网络信息包括沿服务器(SE)与客户终端(CT)之间的路径的高速缓存器(DANE)的有序列表。
Description
技术领域
本公开总体上涉及通过例如但不限于HTTP(超文本传输协议)的自适应流传输(adaptive streaming)技术领域,具体地,涉及一种用于通过被配置为接收划分成片段的多媒体内容的客户终端获得网络信息的方法。
背景技术
本部分旨在向读者介绍本领域中可能与以下描述和/或要求保护的本公开的各方面相关的各个方面。相信本讨论有益于向读者提供背景信息以便于更好地理解本公开的各个方面。因此,应当理解,这些陈述应以这种方式被解读,而不是作为对现有技术的承认。
通过HTTP的自适应流传输正在迅速成为用于多媒体内容分发的主要技术。在已经使用的HTTP自适应流传输协议中,最著名的是Apple的HTTP实时流传输(HLS)、Microsoft的Silverlight平滑流传输(SSS)、Adobe的Adobe动态流传输(ADS)以及由3GPP在SA4组内开发的通过HTTP的动态自适应流传输(DASH)。
当客户终端希望播放自适应流传输中的视听内容(或A/V内容)时,首先必须得到描述如何可以获得该A/V内容的文件。这通常通过从URL(统一资源定位符)得到描述文件(所谓的清单(manifest))经由HTTP协议来完成,但是也能够通过其它方式(例如,广播、电子邮件、SMS等)来实现。清单基本地列出了这种A/V内容的可用表示(就比特率、分辨率和其他属性而言)。所述清单被预先产生,并例如通过远程服务器传送到客户终端。
的确,在HTTP服务器上可获得对应于具有不同质量的A/V内容的数据流。最高质量与高比特率相关联,最低质量与低比特率相关联。这允许向可能经受高度变化的网络条件的许多不同终端进行分发。
将整个数据流分成片段,所述片段使得客户终端可以在两个片段之间平滑地从一个质量级别切换到另一质量级别。结果,视频质量在播放期间可变化但极少会中断(还被称为冻结)。
根据协议,清单可以呈现各种格式。对于Apple HLS协议,清单是M3U8播放列表,被称为“主播放列表”。该播放列表的每个元素是另一播放列表,一个播放列表一个表示。根据其它协议(例如,DASH),清单由一个接一个地描述所有表示的一个或多个XML文件组成。在任意情况下,创建清单就和创建文本文件并根据确定性语法撰写文本一样简单。
众所周知的是,根据其可用带宽,客户终端在给定时间点选择最佳表示,以优化网络变化的鲁棒性与质量(例如,视频质量)之间的权衡。在每个接收到的片段,动态地确定可用带宽。的确,在对于给定片段的HTTP请求的发射与相应HTTP响应的接收之间所限定的往返时间(下文中称为HTTP RTT)通常被测量并用于估计沿传输路径的可用带宽。
当高速缓存器沿着客户终端与远程服务器之间的传输路径(这是频繁出现的)时,在以下情况下在所述高速缓存器中已经存储了一个片段:另一客户端先前已经请求了具有相同表示的相同片段,或者内容传递网络(CDN)已经在高速缓存器中供应了该片段。
因此,对于所述给定片段的HTTP请求的响应比如果片段来自远程服务器更快。因为传输路径更短,客户终端与高速缓存器之间的HTTP请求的HTTP RTT可以比客户终端与远程服务器之间的HTTP RTT少得多。
另外,在存在沿传输路径的高速缓存器(所请求的片段存储在高速缓存器中)的情况下,峰值速率可以更好,尤其是当在高速缓存器与远程服务器之间的所述传输路径上存在拥塞时。
由于客户终端通常不区分由远程服务器或由中间高速缓存器发送的应答,其错误地将带宽变化解释为端到端网络条件的变化,而实际上其在观测传输路径从“客户终端至服务器”路径到“客户终端至高速缓存器”路径的切换。
因此,由客户终端执行的带宽估计被高估,并且不能准确地反映所预期的端到端传输路径特性。
这种高估通常导致终端用户体验不佳。确实,如果所估计的带宽高于预期,则自适应流传输客户终端通常从较高质量的表示(例如,较高的比特率)请求片段。因此,随着表示改变,该请求的片段在高速缓存器中的概率更低(假设高速缓存器通过由先前客户终端以恒定比特率播放相同多媒体内容而被填充)。与所述请求的片段相关联的下载时间应当比预期长得多,导致所请求片段的过晚到达。接着,客户终端将切换回较低质量的表示,这可能在高速缓存器中再次被发现。
结果,客户终端在高质量片段与低质量片段之间来回切换-由于高速缓存未命中而持续中断-这完全损害了高速缓存的益处。
此外,因为HAS客户终端不知道高速缓存器的内容,所以错过了它们的加速能力以及网络负荷减少的益处。此外,即使在片段的每次下载进行单独查询是可能的,当前HAS客户终端也不能详细给出考虑到高速缓存器中片段序列的存在的速率自适应策略。
本公开尝试改进上面提到的至少一些缺点,以提高终端用户体验的质量。
发明内容
本公开涉及一种用于通过客户终端获得网络信息的方法,所述客户终端被配置为接收由至少一个远程服务器提供的划分成片段的多媒体内容,每个片段能够以一个或多个表示获得,
其特征在于,所述网络信息包括沿服务器与客户终端之间的路径的高速缓存器的有序列表。
在一个实施例中,所述网络信息还可以包括:对于所述有序列表中的至少一些高速缓存器,由所述高速缓存器存储的片段的表示的列表。
在一个实施例中,所述客户终端将请求发送到属于有序列表的目标高速缓存器,并接收由所述目标高速缓存器存储的片段的表示的列表。该表示的列表是完整列表或之前存储的片段与当前存储的片段之间的差异的列表。
在一个实施例中,所述客户终端根据由所述目标高速缓存器存储的片段的表示的列表,来更新由所述高速缓存器存储的片段的表示的列表。
在另一实施例中,所述网络信息可以通过由客户终端从服务器接收的清单来提供,所述清单列出了在所述服务器处的所述多媒体内容的可用表示。
另外,所述清单可以包括沿服务器与客户终端之间的路径的高速缓存器的有序列表。
此外,所述清单可以针对所述有序列表的每个高速缓存器,标识由所述高速缓存器存储的所述片段的表示。可以通过添加到本地缓存表示的列表的清单,由沿服务器与客户终端之间的路径的每个遇到的高速缓存器来递增地构造所述列表。
此外,可以通过添加高速缓存器自身的标识符以建立有序列表,由沿服务器与客户终端之间的路径遇到的高速缓存器来修改所述清单。
此外,所述高速缓存器还可以通过添加连接信息来修改清单。
在另一方面,客户终端可以使用与用于传送数据的数据路径不同的辅助通信路径来查询所述有序列表中的至少一些高速缓存器,以确定由每个查询的高速缓存器存储的片段的表示。
在另一方面,网络信息可以附接到由客户终端从服务器接收的消息上,所述消息包括用于允许接收所述消息的高速缓存器在所述消息中报告其存在性的扩展头。
具体地,标识了每个遇到的高速缓存器的有序列表可以建立在所述扩展头中。
另外,连接信息可以与所述有序列表的每个高速缓存器相关联。
在一个实施例中,所述方法包括:从属于高速缓存器的有序列表的至少一个高速缓存器下载片段。
在一个实施例中,通过与用于接收片段的接口相似的网络接口或与用于接收片段的接口不同的网络接口来接收所述网络信息。
根据不同实施例,网络接口适于接收网络信息(例如,Wifi、ADSL、缆线、移动和/或广播(例如,DVB、ATSC)接口的有序列表和列表)。
根据不同实施例,适于接收片段的网络接口是Wifi、ADSL、缆线、移动和/或广播(例如,DVB、ATSC)接口。
在一个实施例中,客户终端使用与用于接收片段的协议(例如,http、Flute)相似的协议或不同的协议(片段:http,flute;网络信息:TR69宽带论坛或广播协议,xmpp IETF,DDS OMG(对象管理组))来接收网络信息。
在一个实施例中,网络信息存储在随机存取存储器(RAM)中;
在一个实施例中,片段存储在本地存储器(硬盘或闪存)中和/或由解码器解码和/或显示在显示器上。
本公开还包括一种被配置为接收由至少一个远程服务器提供的划分成片段的多媒体内容的客户终端,每个片段能够以一个或多个表示获得。根据本公开,所述客户终端包括:通信模块,被配置为接收网络信息,所述网络信息包括沿服务器与客户终端之间的路径的高速缓存器的有序列表。
另外,所述网络信息还可以包括:对于所述有序列表中的至少一些高速缓存器,由所述高速缓存器存储的片段的表示的进一步列表。
此外,所述通信模块还可以被配置为使用与用于传送数据的数据路径不同的辅助通信路径来查询所述有序列表中的至少一些高速缓存器,以确定由每个查询的高速缓存器存储的片段的表示。
本公开还涉及一种用于通过高速缓存器发送网络信息的方法,所述高速缓存器被配置为将由至少一个远程服务器提供的多媒体内容的片段传送到客户终端,每个片段能够以一个或多个表示获得。
根据本公开,所述网络信息包括沿服务器与客户终端之间的路径的高速缓存器的有序列表。
在一个实施例中,高速缓存器接收有序列表并将其更新以视为与客户终端最接近的高速缓存器,该最接近的高速缓存器在访问速度和节省网络资源(例如,节省将片段上传到客户终端的网络资源和/或最快地访问片段)方面是最优选的。接着,高速缓存器将更新的有序列表向下转发到客户端;以这种方式,有序列表被递增地构造。
在一个实施例中,高速缓存器将与高速缓存器相关联的本地缓存表示的列表添加到与接收的高速缓存器的有序列表相关联的表示的接收列表;接着,高速缓存器将表示的更新列表向下转发到客户端;以这种方式,表示的列表被递增地构造。
本公开还涉及一种适于发送网络信息的高速缓存器,所述高速缓存器被配置为将由至少一个远程服务器提供的多媒体内容的片段传送到客户终端,每个片段能够以一个或多个表示获得。根据本公开,所述网络信息包括沿服务器与客户终端之间的路径的高速缓存器的有序列表。
在一个实施例中,高速缓存器是包括在以下集合中的网络元件(也叫做网络高速缓存器),所述集合包括:住宅网关,公共网关,公司网关,热点,电话,交通工具,互联网服务提供商(ISP)网络元件和公司代理服务器。
本公开还涉及可以从通信网络下载和/或记录在计算机可读介质上的和/或可以由处理器执行的计算机程序产品,所述计算机程序产品包括用于实现上述方法的步骤的程序代码指令。
此外,本公开还涉及一种非暂时性计算机可读介质,包括其上记录的能够由处理器运行的计算机程序产品,所述计算机程序产品包括用于实现前述方法的步骤的程序代码指令。
在下文阐述在范围上与所公开的实施例相符的一些方面。应理解,这些方面仅用来向读者提供本公开可能采用的一些形式的简要概括,并且这些方面并非意在限制本公开的范围。事实上,本公开可包括下文可能没有阐述的多个方面。
在下文阐述在范围上与所公开的实施例相符的一些方面。应理解,这些方面仅用来向读者提供本公开可能采用的一些形式的简要概括,并且这些方面并非意在限制本公开的范围。事实上,本公开可包括下文可能没有阐述的多个方面。
附图说明
通过下面参照附图的实施例和执行示例而绝非限制性的方式来示出本公开并使本公开更好地被理解,在附图中:
-图1是可以实施本公开实施例的客户端-服务器网络架构的示意图;
-图2是根据本公开实施例的客户终端的示例的框图;
-图3是示出了由图2的客户终端执行的用于下载多媒体内容的即将到来的片段序列的方法的流程图。
在图1和图2中,呈现的方框仅是功能性实体,而不必对应于物理上分离的实体。即,这些方框能够以软件、硬件的形式来开发,或者可以实施在包括一个或多个处理器的一个或若干集成电路中。
在可能的情况下,贯穿附图,相同的附图标记将用于表示相同或类似部件。
具体实施方式
应理解,为了清楚理解本公开,已经简化了本公开的附图和描述以示出相关的元件,并且同时为了清楚起见,省略了在典型数字多媒体内容传送方法和***中存在的许多其它元件。然而,由于这些元件在本领域是公知的,本文中不提供对这些元件的详细讨论。本文的公开针对本领域技术人员已知的所有这些变化和修改。
根据实施例,针对HTTP自适应流传输协议(或HAS)描述了本公开。当然,本公开不限于这种特定环境,当然也可以考虑和实现其他自适应流传输协议。
如图1所示,一个或多个网络N(在附图中仅呈现了一个)所支持的能够实现本公开的客户端-服务器网络架构包括一个或多个客户终端CT、一个或多个HTTP服务器SE、多个智能高速缓存器DANE以及一个或多个传统高速缓存器RNE。根据DASH,还将这样的服务器SE命名为媒体源(Media Origin)。它们产生例如媒体呈现描述(或MPD),所谓的清单。这是内容分发的源:多媒体内容可来自一些外部实体,并在媒体源处被转换成HAS格式。
智能高速缓存器DANE是网络N中的高速缓存元件,被配置为了解传送HAS内容。使用MPEG-DASH术语,智能高速缓存器被视为DASH感知网络元件(DANE)。
传统高速缓存器RNE是网络N中的高速缓存元件,其不知道通过其传输的数据的类型,或者至少不了解HAS方面。在MPEG-DASH术语中,将传统高速缓存器视为常规网络元件(RNE)。
客户终端CT希望从HTTP服务器SE之一获得多媒体内容。所述多媒体内容被划分成多个片段(也被称为块(chunk))。假设多媒体内容在服务器SE处以不同表示可获得。在客户端请求时,HTTP服务器SE能够通过一个或多个TCP/IP连接使用HTTP自适应流传输协议,将片段流传输至客户终端CT。
根据如图2所述的实施例,客户终端CT至少包括:
-到第一网络N1的连接接口1(有线的和/或无线的,例如Wi-Fi、以太网等);
-通信模块2,包含用来与HTTP服务器SE通信的协议栈。具体地,通信模块2包括本领域公知的TCP/IP栈。当然,其可以是任何其他类型的网络和/或通信装置,使得客户终端CT能够与HTTP服务器SE通信;
-自适应流传输模块3,其从HTTP服务器SE接收HTTP流传输多媒体内容。其不断地选择比特率更好地匹配网络约束及其自身约束的片段;
-视频播放器4,适配为解码和渲染多媒体内容;
-一个或多个处理器5,用于执行存储在客户终端CT的非易失性存储器中的应用和程序;
-存储装置6,例如,易失性存储器,用于在将从HTTP服务器SE接收的片段传输至视频播放器4之前缓冲这些片段;
-内部总线B,连接各模块以及本领域技术人员公知的用于执行普通客户终端功能的所有装置。
在实施例中,客户终端CT是便携式媒体设备、移动电话、平板计算机或膝上型计算机、电视机、机顶盒、游戏设备或集成电路。自然地,客户终端CT可能不包括完整的视频播放器,而是只包括一些子元件,比如用于解复用和解码媒体内容的子元件,并且客户终端CT可以依赖于外部装置来向终端用户显示解码后的内容。在这种情况下,客户终端CT是支持HTTP自适应流传输(HAS)的视频解码器,比如机顶盒。
根据本公开,每个客户终端CT被配置为实现用于下载存储在远程服务器SE中的多媒体内容的即将到来的片段序列的方法M,所述序列被选择为使得其特征与下文中描述的一些质量标准最佳匹配。
为了实现方法M,客户终端CT优选地需要了解网络架构N。
为此,在客户终端CT请求多媒体内容时通过HTTP响应由服务器SE传送到客户终端CT的清单包括在服务器SE处所述多媒体内容的可用表示的列表,还可以包括位于服务器SE与客户终端CT之间的智能高速缓存器DANE的有序列表。在这种情况下,服务器SE知晓网络架构(例如,在受管理的网络中),并能够预先建立这样的有序列表。服务器SE可以提供依据进行请求的客户终端CT的有序列表。
在该有序列表中,每个遇到的智能高速缓存器DANE可以通过以下项来标识:
-唯一标识符;
-连接信息,例如允许到达所述智能高速缓存器的服务接入点(如下文中所述)。
在由客户终端CT接收时,智能高速缓存器DANE的该有序列表被提供作为清单的扩展,并且可选地,可以利用附加的连接信息来完成该有序列表。
在该有序列表中,优选地,通过考虑智能高速缓存器DANE与客户终端CT的接近度来列出智能高速缓存器DANE:有序列表的第一元素对应于与客户终端CT最接近的智能高速缓存器。
在变型中,当服务器SE不知晓网络架构时,服务器SE可能无法预先建立这样的有序列表。在这种情况下,每个智能高速缓存器DANE检查(利用专门的检查模块)服务器SE的HTTP响应的内容类型头,以识别出智能高速缓存器DANE包含清单,并且接着利用例如智能高速缓存器DANE的对应服务接入点,通过将智能高速缓存器DANE自身的标识符添加到有序列表来更新所述清单。
用于建立有序列表的两种方法可以共存,使得服务器SE未知的一些智能高速缓存器DANE可以在它们接收到服务器SE的HTTP响应时将其自身添加到现存的有序列表。显然地,在这种情况下,智能高速缓存器优选地在添加一些信息之前检查有序列表中其自身的存在性。
以下内容是说明性的而非限制性的,MPEG-DASH清单中的智能高速缓存器DANE的有序列表的示例(删节的):
除了有序列表的智能高速缓存器层次信息,清单还可以例如通过在与对应智能高速缓存器标识符相关联的附加列表中添加所存储的多媒体内容(或其部分)的每个片段的表示,来指示多媒体内容的存储在有序列表的每个智能高速缓存器DANE中的片段的表示。所述附加列表可以由服务器SE(例如,在受管理的网络的情况下)或者由每个遇到的智能高速缓存器DANE来建立。
在另一变型中,为了确定网络架构以及尤其是有序列表的智能高速缓存器层次,服务器SE将包括扩展头的HTTP响应发送到客户终端CT,其中,所述扩展头用于允许接收所述响应的每个智能高速缓存器DANE向客户终端CT以及向位于所述高速缓存器DANE和客户终端CT之间的近旁的高速缓存器报告其存在性。HTTP扩展头可以如下定义:
X-SmartCache-List=″X-SmartCache-List″″:”x-smartcache-directive
x-smartcache-directive=″required″|x-smartcache-list
x-smartcache-list=1#x-smartcache-sap
x-smartcache-sap=ip_address:port|jabber_identifier
头扩展可以向服务器SE和/或智能高速缓存器DANE提供一种措施以向下游智能高速缓存器DANE和/或向客户终端CT指示其存在性,这样的措施附接于任何响应(特别地,包括清单的响应)。
由于专门的修改模块,服务器SE可以使用附接于HTTP响应的语法“X-SmartCache:required”,以迫使下游智能高速缓存器DANE附上它们自己的标识符以及可选地它们的连接信息。在接收到该头时,每个智能高速缓存器DANE在有序列表前面加上它们的标识符和连接信息。有利地,接收到HTTP响应的首个智能高速缓存器丢弃“required(必需的)”令牌。
这种变型的一个优点在于,所述HTTP扩展头可以附接到其他响应消息(诸如其他的内容数据传送)。还可以在拦截包括清单的HTTP响应时使用所述HTTP扩展头,但是不修改该HTTP响应。
作为说明性的非限制示例,有序列表的智能高速缓存器层次可以使用如下的HTTP响应头来指示:
X-SmartCache-List:157.254.235.97:12345,74.125.226.230:12345
在实施例的另一方面,可以通过与用于传送数据的主信道分开的辅助通信信道(或路径)来交换用于查询智能高速缓存器DANE的信令消息,该辅助信道独立于数据主信道而操作。将这样的信令机制命名为带外信令。
可以开发带外信令的两种不同机制,对于第一机制,实施单独的协议以针对特定的智能高速缓存器DANE,对于第二机制,具有用于信令的第二TCP连接的HTTP协议受益于HTTP的请求的自然向上路由(由客户终端CT朝着服务器SE发送的信令请求自然地通过所遇到的智能高速缓存器DANE和在适当时能够反应的传统高速缓存器RNE)。在任何情况下,这些机制不影响传统高速缓存器RNE。
根据使用特定协议的第一机制,信令覆盖(signaling overlay)包括使用有序列表的智能高速缓存器层次及其标识符。一旦该信令覆盖可用,则不同的网络设备可以彼此通信。智能高速缓存器接口可以用于交换高速缓存器管理操作。可以通过智能高速缓存器服务接入点来访问所述智能高速缓存器接口,所述智能高速缓存器服务接入点被设置为清单的一部分或被包括在HTTP响应头中。这允许DASH/HAS客户端调用智能高速缓存器接口的操作。可以通过构造包含操作标识符及其参数的消息并将消息发送到智能高速缓存器接口来调用每个操作。
在说明性的非限制示例中,可以将信令消息建立为JSON串,JSON串是用许多服务器端脚本语言容易解析的。在接收到信令消息时,智能高速缓存器DANE可以执行所请求的操作。
具体地,可以通过若干合适的协议来传送客户终端CT与智能高速缓存器DANE之间的信令消息。
在第一说明性示例中,使用WebSocket,其允许客户终端CT与给定智能高速缓存器DANE之间的双向点对点通信。在第二说明性示例中,可以使用XMPP,以允许点对多点的信息发送(例如,对于到智能高速缓存器的所有客户终端的高速缓存器更新通知)。自然地,可以使用其他协议。
由于第一机制,客户终端CT可以与给定智能高速缓存器DANE交换消息,以发现存储在所述智能高速缓存器DANE中的片段及其表示。可以使用以下消息:
getIsCached([segmentIds:<list>])
在接收到该信令消息时,智能高速缓存器DANE可以用包含所缓存的片段的标识符的更新的列表来进行应答。可以由客户终端将该消息发送到其上游智能高速缓存器DANE中的任何一个,以获得每个单独智能高速缓存器的内容的精确概述。
另外,智能高速缓存器DANE可以使用针对所注册的客户终端的回叫,向客户端通知其缓存内容的改变,客户终端例如已经预备地指定了它们希望监控的片段。现今,用HTML5 WebSockets容易地实现这种回叫机制,可以采用服务器端事件但也可以采用其他技术实现相似结果。
cacheUpdate([segmentIds:<list>])
根据第二机制,客户终端CT也可以使用HTTP作为查询高速缓存器链(智能高速缓存器DANE和传统高速缓存器RNE)的信令措施,以发现缓存的内容。在次级TCP会话中朝着相同的服务器地址发送这些信令HTTP消息,并且这些信令HTTP消息遵循与主数据传送会话相同的路径。特定地建立信令HTTP请求,以避免触发数据传送。
为此,可以使用HTTP HEAD方法或最小字节范围GET(例如,请求一个单字节数据)。通过发送针对即将到来的片段的不同表示的多个HEAD(或1字节范围GET)请求,并使用所提出的扩展,客户终端CT能够建立所缓存的表示的位置图。
具体地,为了查询高速缓存器的内容,客户终端CT可以使用具有“only-if-cached”指令的“Cache-control”(高速缓存-控制)HTTP头,以请求最近的高速缓存器的内容。然而,与第一机制相比,基于HTTP的机制隐含地允许仅查询朝着服务器SE的路径上的首个高速缓存器。
作为减轻仅查询首个高速缓存器这一缺点的扩展,信令请求的“only-if-cached”指令还可以包括对应当考虑的高速缓存器的深度的指示,例如:
Cache-Control:only-if-cached,depth=3
该深度值由智能高速缓存器DANE解译,使得当在智能高速缓存器DANE中没有缓存所请求的片段的表示时,如果深度值允许,则所述智能高速缓存器向上转发信令请求。每次智能高速缓存器DANE没有存储所请求的表示时,深度值递减,并且在转发信令请求之前相应地修改HTTP头。当智能高速缓存器DANE接收到深度值等于1的信令请求时,在高速缓存未命中的情况下,不再转发所述信令请求。
在改进中,存储所请求的表示的智能高速缓存器DANE可以在其响应中包括指示已到达的深度的补充指令,例如:
X-SmartCache-Info:depth=2
于是,利用从智能高速缓存器DANE接收到的值,客户终端CT可以通过从客户终端CT的信令请求的初始深度值减去返回的值而知晓与所考虑的智能高速缓存器DANE的距离(在高速缓存器方面)。
备选地,客户终端CT可以通过在其信令请求中标识给定高速缓存器而将查询深度限制到该高速缓存器。当信令请求到达所标识的智能高速缓存器DANE时并且当所述智能高速缓存器DANE没有存储所请求的片段的表示时,所标识的智能高速缓存器DANE不将该请求向上转发至服务器SE,并且否定地应答。为此,将指定目标智能高速缓存器标识符的特定扩展添加到HTTP信令请求的高速缓存-控制“only-if-cached”指令,例如:
Cache-Control:only-if-cached,until=<smartcache_id>
在信令请求中使用的智能高速缓存器标识符可以是智能高速缓存器DANE的已知SAP或者所述智能高速缓存器DANE的任何唯一标识符。
当HAS客户终端CT知晓布置在至服务器SE的路径上的智能高速缓存器DANE,并知晓由每个智能高速缓存器DANE保持的缓存表示的列表时,客户终端CT可以实施方法M。
给定针对k个即将到来的片段(限定了k个片段的序列)知晓客户终端CT与服务器SE之间的智能高速缓存器DANE的内容,则方法M可以确定下载序列的所述片段的k个表示。优选地,在仅下载m个片段(1<=m<=k)之后,或者在接收到高速缓存器更新消息时,定期地执行方法M。这种更新允许优化从m+1至m+m(使用高达m+k的预测)的片段的进一步下载。
根据实施例,并且如图3所示,用于在客户终端CT下载存储在服务器SE中且以不同表示可获得的多媒体内容的即将到来的k个片段的序列的方法包括:
-针对在布置在客户终端CT和服务器SE之间的标识的高速缓存器DANE(如之前所述)中存储的或未存储的所述片段的可用表示的一些或所有组合,计算(步骤S1):
·对于k个表示的所述组合中的每个组合的质量的效用函数U(k)的值;
·用于下载所述组合中的每个组合的预测时间T(k);
由如图2表示的客户终端CT的计算器7执行计算步骤S1。在变型中,计算器7可以与处理器模块5集成或者是处理器模块5的部分;
-在所确定的效用函数的值中,选择(步骤S2)下载时间比时间阈值(例如,与片段序列的播出时间相对应)短的最高效用函数值。由客户终端CT的选择模块8执行选择步骤S2;
-在客户终端CT,至少下载(步骤S3)与所选择的组合相关联的表示的初始序列。在接收到关于所选择的组合的信息时,由通信模块2和/或由自适应流传输模块3管理所选择的表示的下载。
自然地,步骤S1至S3中的至少一些可以不在客户终端CT中执行,而在外部网络设备(例如服务器、网关、代理服务器等)中执行。
具体地,对于给定组合,效用函数U(k)取决于:
-所述组合的表示的整体质量
-所述组合的表示的变化性σ;
-所述组合的表示的高速缓存未命中的成本M(k)。
在客户终端上将由终端用户感知到的整体质量与所述组合中的表示的质量成比例。由于使用较高的比特率提供较高的质量,所指示的表示的比特率的总和或者它们的平均可以用作该整体质量的估计。
变化性可以例如通过所述组合中的表示值的方差来表述。
高速缓存未命中的成本是影响网络资源的带宽成本以及服务器资源中的传送数据的成本。这两者都与从服务器下载的片段的比特率成比例,因此该成本可以例如通过具有高速缓存未命中的片段的表示的比特率的总和来表述。
在说明性的非限制示例中,给定组合的效用函数U(k)可以从以下公式导出:
U(k)=R(k)-α·σ-β·M(k)
其中:
-是所述组合的表示的平均比特率,k是序列中的片段的数目;
-σ是所述组合的表示的方差(并因此描述序列的不稳定性);
-α是方差的加权参数;
-M(k)是所述组合的表示的高速缓存未命中的平均成本;
-β是高速缓存未命中的平均成本的加权参数。
具体地,给定组合的表示的平均比特率可以由以下公式确定:
其中,Ri是属于所述组合的片段i的给定表示的比特率。
另外,所述给定组合的表示的方差σ可以通过以下公式获得:
方差σ根据表示之间的变化的数目以及与平均表示的不同的大小二者而增长。
方差σ根据表示之间的变化的数目以及与平均表示的不同的大小二者而增长。
此外,所述给定组合的表示的高速缓存未命中的平均成本M(k)例如通过以下公式来描述:
其中,当从服务器SE获得片段i的表示时,Si=1,否则,Si=0(该表示缓存在所标识的智能高速缓存器DANE之一中)。
通过最大化序列的效用函数U(k),高比特率以及低方差和很少的高速缓存未命中将是优先的。可以调节加权参数α和/或β以限定方差和/或高速缓存未命中的容限量。显然地,可以通过将α和/或β的值设置为零来忽略方差和/或高速缓存未命中。
针对每个考虑的候选组合来计算效用函数U(k),以确定满足以下标准的组合:
-高平均比特率(以及隐含地高质量)
-变化性小的稳定比特率,意味着一致的视频质量
-从高速缓存器获得的片段的最大量,以尽可能减小服务器SE和网络N上的负载。
另外,可以借助以下公式计算组合的估计下载时间T(k):
其中:
-BWserver是当从服务器下载所述组合的给定表示时观察到的下行链路带宽;
-是当从保持所述组合的片段i的给定表示的最近的智能高速缓存器DANE下载所述给定表示时观察到的下行链路带宽。Ci对应于通过针对组合的每个表示采取保持所述表示的最近的高速缓存器的索引所建立的矢量C的元素。
在分母中,由于Si要么是0要么是1,项Si或(1-Si)中只有一个不等于零。因此,分母是来自服务器SE的链路的带宽BWserver或者来自所考虑的智能高速缓存器DANE的带宽通过将片段的每个所选表示的比特率的数目除以带宽BWserver,获得下载每个表示所需要的时间。
组合的该下载时间T(k)应当优选地比序列的播出时间短,否则回放可能由于缓冲耗尽而中断,使得:
T(k)<k·chunk_duration
根据实施例,客户终端CT针对k个片段的表示的每个可用组合来计算(步骤S1)效用函数U(k)和下载时间T(k)。将(来自服务器SE的)可用表示的数目表示为r,U(k)和T(k)被分别计算rk次。
因此,通过执行步骤S2,客户终端CT可以选择避免缓冲耗尽最佳的的k个表示的序列。
以下表格示出了说明性的非限制示例,其中,对于8个片段的序列的智能高速缓存器DANE的组的内容的范围从1到8(1是要下载的序列的第一片段)。单元格的值对应于保持所考虑的片段/表示的智能高速缓存器DANE的索引。
通过考虑以下在恒定表示2500kbps的与k个片段的序列相对应的比特率矢量R={R1=2500kbps,R2=2500kbps,R3=2500kbps,R4=2500kbps,R5=2500kbps,R6=2500kbps,R7=2500kbps,R8=2500kbps},通过针对每个片段采取保持表示2500kps的最近的智能高速缓存器DANE的索引来建立C矢量。根据上述表格上给出的智能高速缓存器的样本内容,C={1,1,2,1,0,0,0,1},0意味着在所标识的智能高速缓存器DANE中未缓存表示2500kps。
在实施例的变型中,不是针对k个片段的表示的每个可用组合计算效用函数U(k)和下载时间T(k),而是客户终端CT经由评估模块9根据对针对k个即将到来片段的位于客户终端CT与服务器SE之间的智能高速缓存器DANE的内容的了解,初步地计算(在步骤S20)每个可能表示的缓存片段的数目,以在进一步的步骤S21中选择最频繁地被缓存的表示,也叫做目标表示。
基于以上示例表格,k=8时,所选表示是比特率等于2500kbps的表示,具有5个缓存片段。对应目标组合的比特率矢量R具有与目标表示R={R1=2500kbps,R2=2500kbps,R3=2500kbps,R4=2500kbps,R5=2500kbps,R6=2500kbps,R7=2500kbps,R8=2500kbps}的比特率相等的一致值。
在进一步的步骤S22,客户终端CT借助其计算器7计算目标组合的下载时间T(k)。
在进一步的步骤S23,客户终端CT将计算的下载时间T(k)(也叫做初始T(k))与播出时间进行比较。
当初始T(k)至少等于播出时间(T(k)≥k·chunk_duration)时,客户终端CT确定(在步骤S24)其目标表示没有存储在智能高速缓存器中的片段的替代缓存表示(例如,以上表格的示例中的片段5、6和7)。
为此,客户终端CT在步骤S25建立替代表示的替代有序列表,其中,以升序列出较高质量的缓存替代表示,接着,以降序列出较低质量的缓存替代表示。
在步骤S26,客户终端CT:
-选择替代有序列表的第一表示;
-除了所选择的替代表示已替换对应片段的目标表示之外,确定与目标组合相似的新组合(根据以上表格的示例,新组合的矢量R是{2500kbps,2500kbps,2500kbps,2500kbps,2500kbps,4500kbps,2500kbps,2500kbps});以及
-针对表示的所述新组合计算下载时间。
在新组合的T(k)相对于目标组合的T(k)增大的情况下,在步骤S27拒绝所选择的替代表示,并且拒绝新组合。对替代有序列表的下一表示重复步骤S26,使得利用所述下一表示来修改目标组合以建立进一步的新组合。
在新组合的T(k)不大于播出时间的情况下,客户终端CT开始所述新组合的下载(步骤S3)。
在新组合的T(k)相对于目标组合的T(k)减小但是保持至少等于播出时间的情况下,替代列表的所选择的替代表示被保持(步骤28),并且通过考虑新组合而非目标组合来重复步骤S26。
给定以上示例表格,这将利用R6=4500kbps,R5=6500kbps,R7=6500kbps以及R5=1200kbps,R7=1200kbps依次地进行测试,除非找到中间解决方案。
当已经尝试了替代有序列表的所有表示时并且在针对最后一个新组合计算的T(k)不少于播出时间的情况下,客户终端CT在步骤S29建立附加替代列表,该附加替代列表包括以降序排列的比目标表示的质量低的低质量的表示。步骤26、27和28应用于所述附加有序列表。
在该算法的结尾,要么T(k)满足约束,要么不存在针对T(k)的更低的可能值。
当初始T(k)不大于在播出时间时,客户终端CT尝试(在步骤S241)通过使用具有更高速率的缓存表示来增大效用函数U(k)。在第一步骤S4,客户终端CT以升序建立比初始目标表示大的表示的有序列表。
然后,对于该列表的每个表示,客户终端CT:
-选择(步骤S41)最高的i,使得所考虑的表示的对应片段在高速缓存器中是可获得的。
-针对通过利用所考虑的表示改变先前的Ri而获得的表示的组合,计算(步骤S42)U(k)和T(k)。
然后,如果T(k)仍然满足约束并且U(k)的新值大于之前的值,则客户终端CT保持新组合并对下一(更低的)i重复步骤S41。如果T(k)不再满足约束或U(k)减小,则客户终端CT拒绝Ri的新值,以恢复之前的组合。
当已考虑了所有索引i时,测试下一更高的表示。
显然地,其他启发法可以用于满足关于T(k)的约束,同时改善U(k),而不背离实施例。
自然地,步骤S20至S29中的至少一些可以不在客户终端CT中执行,而在外部网络设备(例如服务器、网关、代理服务器等)中执行。
一旦已经确定了期望的组合,即片段的序列,则客户终端CT在没有延迟的情况下从序列下载以下片段,直到其达到m个片段(1≤m≤k)或者从智能高速缓存器接收到更新消息或接收速率改变。在前述任何一种情况下,客户终端CT重复方法M。
网络信息包括沿服务器(SE)与客户终端(CT)之间的路径的高速缓存器(DANE)的有序列表,并且可选地,对于所述层次的至少一些高速缓存器,网络信息还包括:由所述高速缓存器(DANE)存储的片段的表示的列表。
应当注意的是,根据本公开的不同变型,通过与用于接收片段的接口相似的网络接口或者与用于接收片段的接口不同的网络接口来接收网络信息。
根据特定实施例,客户终端的网络接口适于从Wifi、ADSL、缆线、移动和/或广播(例如,DVB、ATSC)接口接收网络信息。
根据不同实施例,适于接收片段的客户终端的网络接口是Wifi、ADSL、缆线、移动和/或广播(例如,DVB、ATSC)接口。
根据不同实施例,客户终端使用与用于接收片段的协议(例如,http、Flute)相似的协议来接收网络信息。根据不同实施例,客户终端使用不同的协议接收网络信息:
-片段发送和接收可以使用http或flute协议;
-网络信息发送和接收可以使用TR69宽带论坛协议或广播协议(例如,xmpp IETF、DDS OMG(对象管理组))。
根据不同实施例,网络信息存储在随机存取存储器(RAM)中;
根据不同实施例,片段存储在本地存储器(例如,硬盘或闪存)中和/或由解码器解码和/或显示在显示器上。
根据不同实施例,客户终端属于以下集合,所述集合包括:
-便携式媒体设备;
-移动电话;
-游戏设备;
-机顶盒;
-电视机;
-平板电脑;
-膝上型电脑;以及
-集成电路。
附图中的流程图和/或框图示出了根据本公开各个实施例的***、方法和计算机程序产品的可能实现方式的配置、操作和功能。关于这一点,流程图或框图中的每个框可以表示代码模块、段或部分,其包括用于实现指定逻辑功能的一个或多个可执行指令。还应注意,在一些备选实施例中,在框中标记的功能可以不按附图中标记的顺序发生。例如,连续示出的两个框事实上可以基本同时执行,或者在某些时候可以按照相反的顺序执行,或者可以按照备选顺序执行,这将取决于所涉及到的功能。还应注意,框图和/或流程图示意的每个框以及框图和/或流程图示意中的框组合可以由执行特定功能或动作的基于专用硬件的***或者专用硬件和计算机指令的组合来实现。虽然没有明确描述,但是实施例可以被实施为任意组合或子组合。
本领域技术人员应当认识到,本公开原理的各方面可以被实现为***、方法或计算机可读介质。因此,本公开原理的方案可采用完全硬件实施例的形式、完全软件实施例(包括固件、常驻软件、微代码等)的形式或组合了软硬件方案的实施例的形式,它们可一般地称为“电路”、“模块”或“***”。此外,本公开原理的方案可采用计算机可读存储介质的形式。可利用一个或多个计算机可读存储介质的任意组合。
计算机可读存储介质可采用计算机可读程序产品的形式,所述计算机可读程序产品实现为一个或多个计算机可读介质,并且其中实现有可由计算机执行的计算机可读程序代码。这里的计算机可读存储介质被认为是非暂时存储介质,其具有用来在其中存储信息的内在能力以及从中获取信息的内在能力。计算机可读存储介质可以是但不限于例如电、磁、光、电磁、红外或半导体***、装置或设备或前述***、装置或设备的任意合适组合。应当认识到,在提供本公开原理可以应用到的计算机可读存储介质的更具体示例的同时,如本领域普通技术人员容易理解的,以下内容仅是说明性的而不是详尽列表:便携式计算机磁盘;硬盘;随机存取存储器(RAM);只读存储器(ROM);可擦除可编程只读存储器(EPROM或闪存);便携式紧凑盘只读存储器(CD-ROM);光存储设备;磁存储设备;或者前述项的任意适当组合。
Claims (6)
1.一种用于通过客户终端(CT)获得网络信息的方法,所述客户终端(CT)被配置为接收由至少一个远程服务器(SE)提供的划分成片段的多媒体内容,每个片段能够以一个或多个表示获得,
其中,所述网络信息包括沿服务器(SE)与客户终端(CT)之间的路径的高速缓存器(DANE)的有序列表;
其中,所述网络信息还包括:对于高速缓存器的所述有序列表中的至少一些高速缓存器,由所述高速缓存器(DANE)存储的片段的表示的列表;
以及其中,所述网络信息通过由客户终端(CT)从服务器(SE)接收的清单来提供,所述清单列出了在所述服务器(SE)处的所述多媒体内容的可用表示。
2.一种被配置为接收由至少一个远程服务器(SE)提供的划分成片段的多媒体内容的客户终端,每个片段能够以一个或多个表示获得,
所述客户终端包括:通信模块(2),被配置为接收网络信息,所述网络信息包括沿服务器(SE)与客户终端(CT)之间的路径的高速缓存器(DANE)的有序列表;
以及其中,所述网络信息还包括:对于所述有序列表中的至少一些高速缓存器(DANE),由所述高速缓存器(DANE)存储的片段的表示的进一步列表;
以及其中,所述网络信息通过由客户终端(CT)从服务器(SE)接收的清单来提供,所述清单列出了在所述服务器(SE)处的所述多媒体内容的可用表示。
3.一种用于通过高速缓存器发送网络信息的方法,所述高速缓存器被配置为将由至少一个远程服务器(SE)提供的多媒体内容的片段传送到客户终端,每个片段能够以一个或多个表示获得,
其中,所述网络信息包括沿服务器(SE)与客户终端(CT)之间的路径的高速缓存器(DANE)的有序列表;
其中,高速缓存器:
-将与高速缓存器相关联的本地缓存表示的列表添加到与接收的高速缓存器的有序列表相关联的表示的接收列表;
-将表示的更新列表向下转发到客户终端;
以及其中,所述网络信息通过由客户终端(CT)从服务器(SE)接收的清单来提供,所述清单列出了在所述服务器(SE)处的所述多媒体内容的可用表示。
4.一种适于发送网络信息的高速缓存器,所述高速缓存器被配置为将由至少一个远程服务器(SE)提供的多媒体内容的片段传送到客户终端,每个片段能够以一个或多个表示获得,
其中,所述网络信息包括沿服务器(SE)与客户终端(CT)之间的路径的高速缓存器(DANE)的有序列表;
其中,所述高速缓存器被配置为:
-将与高速缓存器相关联的本地缓存表示的列表添加到与接收的高速缓存器的有序列表相关联的表示的接收列表;
-将表示的更新列表向下转发到客户终端,
以及其中,所述网络信息通过由客户终端(CT)从服务器(SE)接收的清单来提供,所述清单列出了在所述服务器(SE)处的所述多媒体内容的可用表示。
5.一种计算机程序产品,能够从通信网络下载和/或记录在由计算机可读取的介质上和/或由处理器可执行,所述计算机程序产品包括用于实现根据权利要求1或3所述的方法的程序代码指令。
6.一种非暂时性计算机可读介质,包括记录在其上且能够由处理器运行的计算机程序产品,所述计算机程序产品包括用于实现根据权利要求1或3所述的方法的程序代码指令。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP14305039 | 2014-01-10 | ||
EP14305039.1 | 2014-01-10 | ||
PCT/EP2014/077885 WO2015104148A1 (en) | 2014-01-10 | 2014-12-16 | Method for obtaining network information by a client terminal configured for receiving a multimedia content divided into segments |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105981400A true CN105981400A (zh) | 2016-09-28 |
Family
ID=49958404
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480075350.2A Pending CN105981400A (zh) | 2014-01-10 | 2014-12-16 | 配置为接收划分成片段的多媒体内容的客户终端获得网络信息的方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20160330500A1 (zh) |
EP (1) | EP3092816A1 (zh) |
JP (1) | JP6514217B2 (zh) |
KR (1) | KR20160106701A (zh) |
CN (1) | CN105981400A (zh) |
WO (1) | WO2015104148A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108206847A (zh) * | 2016-12-19 | 2018-06-26 | 腾讯科技(深圳)有限公司 | Cdn管理***、方法及装置 |
CN110832821A (zh) * | 2017-06-27 | 2020-02-21 | 奥兰治 | 下载视听内容的方法和设备 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10033824B2 (en) * | 2014-06-30 | 2018-07-24 | Samsung Electronics Co., Ltd. | Cache manifest for efficient peer assisted streaming |
CN107637045B (zh) * | 2015-06-16 | 2020-11-27 | 苹果公司 | 使用动态无线接入网信息的自适应视频流送 |
US10462055B2 (en) * | 2015-07-20 | 2019-10-29 | Cisco Technology, Inc. | Content distribution system cache management |
US10432993B2 (en) * | 2016-12-20 | 2019-10-01 | Arris Enterprises Llc | Output and playback control delivery for adaptive bitrate streaming |
GB2563251A (en) * | 2017-06-07 | 2018-12-12 | Sony Mobile Communications Inc | Terminal device, data processing apparatuses and methods |
US10292045B2 (en) * | 2017-08-24 | 2019-05-14 | Nanning Fugui Precision Industrial Co., Ltd. | Information obtaining method and information obtaining device |
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 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102577272A (zh) * | 2009-10-06 | 2012-07-11 | 微软公司 | 低等待时间的可高速缓存的媒体流式传输 |
WO2012136945A1 (fr) * | 2011-04-08 | 2012-10-11 | France Telecom | Technique de communication entre des reseaux de distribution de contenus numeriques |
US20130191511A1 (en) * | 2012-01-20 | 2013-07-25 | Nokia Corporation | Method and apparatus for enabling pre-fetching of media |
CN103460667A (zh) * | 2011-04-07 | 2013-12-18 | 高通股份有限公司 | 使用字节范围请求的视频数据的网络流 |
WO2014007083A1 (ja) * | 2012-07-02 | 2014-01-09 | ソニー株式会社 | 送信装置、送信方法およびネットワーク装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9445136B2 (en) * | 2011-09-21 | 2016-09-13 | Qualcomm Incorporated | Signaling characteristics of segments for network streaming of media data |
JP5880139B2 (ja) * | 2012-02-29 | 2016-03-08 | 富士通株式会社 | 配置サーバ、情報処理システム、キャッシュ配置方法、キャッシュ配置プログラム |
US9526091B2 (en) * | 2012-03-16 | 2016-12-20 | Intel Corporation | Method and apparatus for coordination of self-optimization functions in a wireless network |
-
2014
- 2014-12-16 CN CN201480075350.2A patent/CN105981400A/zh active Pending
- 2014-12-16 JP JP2016545771A patent/JP6514217B2/ja not_active Expired - Fee Related
- 2014-12-16 WO PCT/EP2014/077885 patent/WO2015104148A1/en active Application Filing
- 2014-12-16 KR KR1020167021626A patent/KR20160106701A/ko not_active Application Discontinuation
- 2014-12-16 EP EP14812509.9A patent/EP3092816A1/en not_active Ceased
- 2014-12-16 US US15/110,747 patent/US20160330500A1/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102577272A (zh) * | 2009-10-06 | 2012-07-11 | 微软公司 | 低等待时间的可高速缓存的媒体流式传输 |
CN103460667A (zh) * | 2011-04-07 | 2013-12-18 | 高通股份有限公司 | 使用字节范围请求的视频数据的网络流 |
WO2012136945A1 (fr) * | 2011-04-08 | 2012-10-11 | France Telecom | Technique de communication entre des reseaux de distribution de contenus numeriques |
US20130191511A1 (en) * | 2012-01-20 | 2013-07-25 | Nokia Corporation | Method and apparatus for enabling pre-fetching of media |
WO2014007083A1 (ja) * | 2012-07-02 | 2014-01-09 | ソニー株式会社 | 送信装置、送信方法およびネットワーク装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108206847A (zh) * | 2016-12-19 | 2018-06-26 | 腾讯科技(深圳)有限公司 | Cdn管理***、方法及装置 |
US10812597B2 (en) | 2016-12-19 | 2020-10-20 | Tencent Technology (Shenzhen) Company Limited | Content delivery network (CDN) management system, method, and apparatus |
CN110832821A (zh) * | 2017-06-27 | 2020-02-21 | 奥兰治 | 下载视听内容的方法和设备 |
Also Published As
Publication number | Publication date |
---|---|
JP2017510873A (ja) | 2017-04-13 |
JP6514217B2 (ja) | 2019-05-15 |
WO2015104148A1 (en) | 2015-07-16 |
EP3092816A1 (en) | 2016-11-16 |
KR20160106701A (ko) | 2016-09-12 |
US20160330500A1 (en) | 2016-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105981400A (zh) | 配置为接收划分成片段的多媒体内容的客户终端获得网络信息的方法 | |
EP3318067B1 (en) | A media user client, a media user agent and respective methods performed thereby for providing media from a media server to the media user client | |
KR20150083793A (ko) | 클라이언트 단말기에서, 멀티미디어 컨텐츠의 세그먼트의 다가오는 시퀀스를 다운로딩하는 방법, 및 대응하는 단말기 | |
Wang et al. | AMES-cloud: A framework of adaptive mobile video streaming and efficient social video sharing in the clouds | |
CN104956631B (zh) | 用于执行链路感知自适应流传输的设备和方法 | |
EP2953319B1 (en) | Method, system and various components of such a system for selecting a chunk identifier | |
Thomas et al. | Enhancing MPEG DASH performance via server and network assistance | |
US20140095593A1 (en) | Method and apparatus for transmitting data file to client | |
RU2013149951A (ru) | Управляющее устройство и способ управления передачей потока видеоданных по сети на сетевое пользовательское устройство | |
EP3014854A1 (en) | Method for adapting the downloading behavior of a client terminal configured to receive multimedia content, and corresponding terminal. | |
WO2014121685A1 (zh) | 流媒体请求方法及控制器 | |
CN106453270B (zh) | 基于pi控制流媒体的自适应传输算法 | |
JP2016526355A (ja) | Hasコンテンツ配信システムに使用するためのノードおよび方法 | |
Jeon et al. | Peer-to-peer multimedia streaming and caching service | |
Evensen et al. | Adaptive media streaming to mobile devices: challenges, enhancements, and recommendations | |
KR102212973B1 (ko) | 멀티미디어 컨텐츠의 컨텐츠 부분을 클라이언트 단말기, 대응 캐시에 제공하는 방법 | |
KR102237900B1 (ko) | 클라이언트 단말에 의해 멀티미디어 콘텐츠의 콘텐츠 부분을 검색하기 위한 방법 | |
KR20140031916A (ko) | 멀티미디어 컨텐츠를 스트리밍하는 방법 및 장치 | |
WO2015104149A1 (en) | Method for obtaining network information by a client terminal configured for receiving a multimedia content divided into segments | |
EP2894871A1 (en) | Method for obtaining a network information by a client terminal configured for receiving a multimedia content divided into segments | |
Zhang et al. | Exploiting the layer correlation to improve DASH scheduling with scalable video coding | |
TW201532427A (zh) | 用戶終端機配置成接收多段分割之多媒體內容以取得網路資訊之方法 | |
WO2015104146A1 (en) | Method for obtaining network information by a client terminal configured for receiving a multimedia content divided into segments | |
WO2015104147A1 (en) | Method for obtaining network information by a client terminal configured for receiving a multimedia content divided into segments | |
TW201532426A (zh) | 用戶終端機配置成接收多段分割之多媒體內容以取得網路資訊之方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20200407 |
|
AD01 | Patent right deemed abandoned |