CN110073341B - 用于数字视频流传输的自适应缓冲的系统和方法 - Google Patents
用于数字视频流传输的自适应缓冲的系统和方法 Download PDFInfo
- Publication number
- CN110073341B CN110073341B CN201780061795.9A CN201780061795A CN110073341B CN 110073341 B CN110073341 B CN 110073341B CN 201780061795 A CN201780061795 A CN 201780061795A CN 110073341 B CN110073341 B CN 110073341B
- Authority
- CN
- China
- Prior art keywords
- playback
- media
- processor
- stream
- digital
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000003139 buffering effect Effects 0.000 title claims abstract description 43
- 238000000034 method Methods 0.000 title claims abstract description 30
- 230000003044 adaptive effect Effects 0.000 title abstract description 33
- 230000008569 process Effects 0.000 claims description 19
- 238000010586 diagram Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 208000033748 Device issues Diseases 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000013539 mentalization-based treatment Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/438—Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
- H04N21/4383—Accessing a communication channel
- H04N21/4384—Accessing a communication channel involving operations to reduce the access time, e.g. fast-tuning for reducing channel switching latency
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/762—Media network packet handling at the source
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing 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/44004—Processing 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/005—Reproducing at a different information rate from the information rate of recording
-
- 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/60—Network streaming of media packets
- H04L65/70—Media network packetisation
-
- 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/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5683—Storage of data provided by user terminals, i.e. reverse 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/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26258—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/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, manipulating MPEG-4 scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 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, manipulating MPEG-4 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/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
Abstract
根据本发明的实施例的用于自适应缓冲的系统和方法使得能够减小最小缓冲时间。一个实施例包括一种回放装置,该回放装置包括:存储器;网络接口;以及处理器,其读取存储在存储器中的指令,这些指令指导处理器:将数字视频内容下载在回放装置的缓冲器中;从数字视频内容接收最小缓冲时间;使用回放装置以慢动作速度播放数字视频内容;按慢动作回放速度因子减小最小缓冲时间;使用回放装置继续以慢动作速度播放数字视频内容,直到达到减小的最小缓冲时间为止;并且一旦达到了最小缓冲时间,就使用回放装置以比慢动作速度快的速度播放数字视频内容。
Description
技术领域
本发明总体上涉及自适应流传输(adaptive streaming),更具体地涉及自适应地缓冲数字视频的流传输的系统。
背景技术
术语“流传输媒体”描述媒体在回放装置上的回放,其中媒体被存储在服务器上,并且在回放期间通过网络被连续地发送到回放装置。通常,回放装置在回放期间的任何给定时间将足够量的媒体存储在缓冲器中以防止由于回放装置在接收到媒体的下一个部分之前完成所有缓冲的媒体的回放而导致回放中断。自适应比特率流传输或自适应流传输涉及实时地检测当前的流传输状况(例如,用户的网络带宽和CPU容量)并且相应地调整流传输的媒体的质量。通常,源媒体是以多个比特率编码的,并且回放装置或客户端根据可用资源在流传输不同的编码之间切换。
自适应流传输解决方案通常要么利用由互联网工程工作小组和万维网联盟公布为RFC 2616的超文本传输协议(HTTP),要么利用由互联网工程任务组公布为RFC 2326的实时流传输协议(RTSP)来在服务器和回放装置之间流传输媒体。HTTP是使得回放装置能够请求文件内的字节范围的无状态协议。HTTP被描述为无状态的,因为服务器不需要为了对从回放装置接收的请求做出响应而记录关于请求信息的回放装置的状态或由回放装置请求的字节范围的信息。RTSP是用于控制流传输媒体服务器的网络控制协议。回放装置向流传输媒体的服务器发出控制命令,诸如“播放”和“暂停”,以控制媒体文件的回放。当利用RTSP时,媒体服务器记录每个客户端装置的状态,并且基于从客户端装置接收的指令和客户端的状态来确定要流传输的媒体。
在自适应流传输系统中,源媒体通常作为顶级索引被存储在媒体服务器上,顶级索引指向包含实际的视频和音频数据的若干个替代的流。每个流通常被存储在一个或多个容器文件中。不同的自适应流传输解决方案通常利用不同的索引和媒体容器。由万维网联盟开发的同步化多媒体整合语言(SMIL)被用于创建几个自适应流传输解决方案中的索引,这几个自适应流传输解决方案包括华盛顿州雷德蒙市的Microsoft Corporation开发的IIS平滑流传输(IIS Smooth Streaming)和加利福尼亚州圣何塞市的Adobe SystemsIncorporated开发的闪速动态流传输(Flash Dynamic Streaming)。加利福尼亚州库比蒂诺市的Apple Computer Incorporated开发的HTTP自适应比特率流传输(HTTP AdaptiveBitrate Streaming)使用扩展的M3U播放列表文件(.M3U8)来实现索引文件,.M3U8是包含通常标识媒体容器文件的URI的列表的文本文件。最常用的媒体容器格式是MPEG-4第14部分(即,ISO/IEC 14496-14)中规定的MP4容器格式和MEPG-2第1部分(即,ISO/IEC标准13818-1)中规定的MPEG传输流(TS)容器。MP4容器格式被用于IIS平滑流传输和闪速动态流传输中。TS容器被用于HTTP自适应比特率流传输中。
Matroska容器是作为开放式标准项目由法国Aussonne市的Matroska非盈利组织开发的媒体容器。Matroska容器是基于扩展二进制元语言(EBML),EBML是可扩展标记语言(XML)的二进制衍生。Matroska容器的解码被许多消费者电子(CE)装置所支持。加利福尼亚州圣地亚哥市的DivX有限责任公司开发的DivX Plus文件格式利用Matroska容器格式的扩展(即,是基于Matroska容器格式,但是包括Matroska格式内没有规定的元素)。
为了提供用于通过互联网递送媒体内容的一致手段,国际标准化组织(ISO)和国际电工委员会(IEC)已经提出了通过HTTP的动态自适应流传输(DASH)标准。DASH标准规定了用于媒体内容的格式和用于使用HTTP递送MPEG的内容的描述。根据DASH,用于呈现的媒体内容的每个组成部分被存储在一个或多个流中。每个流被划分为片段。媒体呈现描述(MPD)是包括关于每个流的片段的信息和在回放期间呈现媒体内容所需的其他信息的数据结构。回放装置使用MPD,以使用自适应比特率流传输获得媒体内容的组成部分进行回放。
发明内容
例示了根据本发明的一些实施例的用于数字视频流传输的自适应缓冲的系统和方法。
一个实施例包括一种回放装置,该回放装置包括:存储器;网络接口;以及处理器,其读取存储在存储器中的指令,这些指令指导处理器执行以下步骤:将数字视频内容下载在回放装置的缓冲器中;从数字视频内容接收最小缓冲时间;使用回放装置以慢动作速度播放数字视频内容;按慢动作回放速度因子减小最小缓冲时间;使用回放装置继续以慢动作速度播放数字视频内容,直到达到减小的最小缓冲时间为止;并且一旦达到了最小缓冲时间,就使用回放装置以比慢动作速度快的速度播放数字视频内容。
在进一步的实施例中,下载数字视频内容进一步包括:请求清单;从清单中提取包含经编码的媒体的容器文件的位置;并且请求包含经编码的媒体的容器文件的部分。
在另一实施例中,将缓冲器中下载的经编码的媒体与减小的最小缓冲时间进行比较;并且当经编码的媒体超过减小的最小缓冲时间时,使用回放装置播放经编码的媒体。
在更进一步的实施例中,最小缓冲时间是下载最小量的媒体存储在缓冲器中以避免回放中断的时间量。
在又一实施例中,最小缓冲时间被存储在数字视频内容中的从由清单、索引文件和数字视频内容所指向的文件构成的组中选择的位置。
在又一实施例中,数字视频内容进一步包括清单和多个容器文件,每个容器文件包含替代的数字视频流。
在又一实施例中,替代的数字视频流是以不同的比特率编码的数字视频流。
再次在进一步的实施例中,数字视频内容是DASH标准文件,最小缓冲时间被存储在媒体呈现描述数据结构中。
再次在另一实施例中,减小最小缓冲时间进一步包括通过以降低的速度播放可用的数字视频内容来减少填充缓冲器的数字视频内容。
在进一步的附加实施例中,慢动作回放速度因子改变回放所消耗的数字视频内容的量。
在另一附加实施例中,慢动作速度对应于慢动作回放速度因子。
在更进一步的实施例中,使用读取存储在存储器中的指令的处理器将数字视频内容下载在回放装置的缓冲器中;使用读取存储在存储器中的指令的处理器从数字视频内容接收最小缓冲时间;使用回放装置和读取存储在存储器中的指令的处理器以慢动作速度播放数字视频内容;使用回放装置并且使用读取存储在存储器中的指令的处理器按慢动作回放速度因子减小最小缓冲时间;并且一旦达到了最小缓冲时间,就使用回放装置和读取存储在存储器中的指令的处理器以比慢动作速度快的速度播放数字视频内容。
在又一实施例中,下载数字视频内容进一步包括:使用读取存储在存储器中的指令的处理器请求清单;使用读取存储在存储器中的指令的处理器从清单中提取包含经编码的媒体的容器文件的位置;并且使用读取存储在存储器中的指令的处理器请求包含经编码的媒体的容器文件的部分。
再次在更进一步的实施例中,使用读取存储在存储器中的指令的处理器将缓冲器中下载的经编码的媒体与减小的最小缓冲时间进行比较;并且当经编码的媒体超过减小的最小缓冲时间时,使用读取存储在存储器中的指令的处理器、使用回放装置播放经编码的媒体。
再次在又一实施例中,最小缓冲时间是下载最小量的媒体存储在缓冲器中以避免回放中断的时间量。
在进一步的实施例中,最小缓冲时间被存储在数字视频内容中的从由清单、索引文件和数字视频内容所指向的文件构成的组中选择的位置。
在另一实施例中,数字视频内容进一步包括清单和多个容器文件,每个容器文件包含替代的数字视频流。
在又一实施例中,替代的数字视频流是以不同的比特率编码的数字视频流。
在又一实施例中,数字视频内容是DASH标准文件,最小缓冲时间被存储在媒体呈现描述数据结构中。
在又一实施例中,减小最小缓冲时间进一步包括通过以降低的速度播放可用的数字视频内容来减少填充缓冲器的数字视频内容。
在又一实施例中,慢动作回放速度因子改变回放所消耗的数字视频内容的量。
再次在进一步的实施例中,慢动作速度对应于慢动作回放速度因子。
附图说明
图1是例示了根据本发明的实施例的自适应比特率流传输系统的网络图的示图。
图2是例示了根据本发明的实施例的自适应比特率流传输系统的回放装置的示图。
图3是例示了根据本发明的实施例的自适应比特率流传输系统的服务器的示图。
图4是例示了根据本发明的实施例的自适应缓冲处理的流程图。
具体实施方式
现在转到附图,例示了根据本发明的许多实施例的用于在视频内容的回放期间提供数字视频内容的自适应缓冲的系统和方法。在几个实施例中,期望在视频回放开始之前将最小量的媒体存储在缓冲器中以便使回放中断的可能性降至可接受的水平。在各种实施例中,下载这个最小量的媒体的时间量可以被称为最小缓冲时间(MBT)。MBT可以被存储在DASH标准中的媒体呈现描述(MPD)数据结构中。在几个实施例中,MBT可以被包含在清单中和/或MPD数据结构的索引文件中。在许多其他的实施例中,MBT可以被包含在MPD数据结构所指向的文件中。应容易明白,DASH标准的使用仅仅是说明性的,并且最小缓冲时间(或其等同)可以被存储在媒体清单中和/或其他媒体文件类型中的各种位置上。
回放速度的变化(即,慢动作和/或向前快进)一般改变回放所消耗的媒体的量。与正常速度的回放相比,慢动作回放减少了在给定时间量内消耗的媒体的量。在本发明的几个实施例中,降低回放速度可以使得播放器以减少的缓冲媒体开始回放,而不显著增加回放中断的可能性。
作为说明性例子,根据本发明的几个实施例的媒体具有8秒的MBT。该媒体在回放开始之前一般将缓冲8秒的媒体。如果同一个媒体被以1/2的速率的慢动作回放,则同一个媒体可以基于4秒的减小的MBT开始回放。在替代方案中,如果同一个媒体被以1/4的速率的慢动作回放,则同一个媒体可以基于2秒的减小的MBT开始回放。另外,如果媒体被以1/8的慢动作速率回放,则同一个媒体可以基于1秒的减小的MBT开始回放。本领域的普通技术人员应容易明白,这些仅仅是例子,不同的媒体可以被以不同的速率播放。
下面进一步讨论用于根据本发明的一些实施例的使用自适应比特率流传输提供特技播放模式期间的音频回放和特技模式下的媒体内容回放的自适应比特率流传输系统的源视频的编码。
自适应流传输系统架构
现在转到图1,例示了根据本发明的实施例的包括提供自适应缓冲的回放装置的自适应流传输系统。自适应流传输系统10包括源编码器12,源编码器12被配置为将源媒体编码为若干个替代的流。在所例示的实施例中,源编码器是服务器。在其他实施例中,源编码器可以是包括处理器和足以执行源媒体(包括但不限于视频、音频和/或字幕)的转码的资源的任何处理装置。通常,源编码服务器12对包含流和/或元数据信息的多个容器文件产生顶级索引,其中的至少多个是替代的流。替代的流是以不同的方式对同一个媒体内容进行编码的流。在许多情况下,替代的流以不同的最大比特率对媒体内容(诸如但不限于视频内容和/或音频内容)进行编码。在若干个实施例中,视频内容的替代的流被以不同的分辨率和/或不同的帧速率编码。顶级索引文件和容器文件被上传到HTTP服务器14。各种回放装置然后可以经由网络16(诸如互联网)来使用HTTP或另一适当的无状态协议请求顶级索引文件、其他索引文件和/或容器文件的部分。
在所例示的实施例中,回放装置包括个人计算机18、CE播放器和移动电话20。在其他实施例中,回放装置可以包括消费者电子装置,诸如DVD播放器、蓝光播放器、电视机、机顶盒、视频游戏机、平板、以及能够经由HTTP连接到服务器并且回放经编码的媒体的其他装置。尽管图1中示出了特定的架构,但是可以利用包括执行常规的流传输而不执行自适应比特率流传输的系统的各种架构中的任何一种,所述架构使得回放装置能够根据本发明的实施例请求顶级索引文件和容器文件的部分。
回放装置
根据本发明的实施例的用于提供方法和配置系统的一些处理由回放装置执行。图2中示出了回放装置中的可以执行根据本发明的实施例的处理的相关组件。本领域技术人员将认识到,回放装置可以包括为简洁而省略的、但不脱离本发明的所描述的实施例的其他组件。回放装置200包括处理器205、非易失性存储器210和易失性存储器215。处理器205是执行存储在易失性存储器215或非易失性存储器210中的指令以操纵存储在存储器中的数据的处理器、微处理器、控制器或者处理器、微处理器和/或控制器的组合。非易失性存储器210可以存储用于将回放装置200配置为执行包括根据本发明的实施例的处理的处理和/或用于正被利用的处理的数据的处理器指令。根据一些实施例,这些指令被包括在执行回放装置上的媒体内容的回放的回放应用中。根据各种实施例,回放装置软件和/或固件可以被存储在适合于特定应用的各种非暂时性计算机可读介质中的任何一种中。
服务器
在根据本发明的不同实施例的自适应流传输系统内执行的各种处理由HTTP服务器、源编码服务器和/或局部和网络时间服务器执行。图3中示出了服务器中的执行根据本发明的实施例的这些处理中的一个或多个处理的相关组件。本领域技术人员将认识到,服务器可以包括为简洁而省略的、但不脱离本发明的所描述的实施例的其他组件。服务器300包括处理器305、非易失性存储器310和易失性存储器315。处理器305是执行存储在易失性存储器315或非易失性存储器310中的指令以操纵存储在存储器中的数据的处理器、微处理器、控制器或者处理器、微处理器和/或控制器的组合。非易失性存储器310可以存储用于将服务器300配置为执行包括根据本发明的实施例的处理的处理和/或用于正被利用的处理的数据的处理器指令。根据一些实施例,执行媒体内容的编码的指令是编码应用的一部分。根据各种实施例,服务器软件和/或固件可以被存储在适合于特定应用的各种非暂时性计算机可读介质中的任何一种中。尽管图3中例示了特定的服务器,但是根据本发明的实施例,可以利用被配置为执行任何数量的处理的各种服务器中的任何一种。下面描述根据本发明的许多实施例的自适应缓冲处理。
自适应缓冲处理
图4中例示了根据本发明的各种实施例的自适应缓冲处理。处理400包括从数字视频内容接收(402)最小缓冲时间。数字视频内容可以以包括(但不限于)DASH标准、MPEG-4和/或Matroska容器的各种格式中的任何一种被编码和存储。回放装置然后可以开始下载(404)数字视频内容。
按慢动作回放速度因子的函数减小(406)最小缓冲时间。在许多实施例中,慢动作回放速度因子的函数可以改变回放所消耗的媒体的量。在各种实施例中,回放速度越慢,最小缓冲时间的减小越大。作为说明性例子,根据本发明的几个实施例的媒体具有8秒的MBT。该媒体在回放开始之前一般将缓冲8秒的媒体。如果同一个媒体以1/2的速率被慢动作回放,则同一个媒体可以基于4秒的减小的MBT开始回放。在替代方案中,如果同一个媒体以1/4的速率被慢动作回放,则同一个媒体可以基于2秒的减小的MBT开始回放。另外,如果媒体以1/8的慢动作速率被回放,则同一个媒体可以基于1秒的减小的MBT开始回放。本领域的普通技术人员应容易明白,这些仅仅是例子,不同的媒体可以以不同的速率被播放。
数字视频内容以慢动作开始播放(408)。在许多实施例中,一旦MBT缓冲器满了,数字视频内容就开始播放。在几个其他的实施例中,回放在MBT缓冲满之前开始。作为说明性的例子,当可用带宽比数字视频内容的比特率高得多时,回放可以在MBT缓冲器为75%满时开始。本领域技术人员应容易明白,这仅仅是个例子,数字视频内容的回放可以取决于系统中的各种因素,包括(但不限于)带宽、比特率、MBT缓冲器大小、回放速度因子和/或系统硬件要求。
慢动作数字视频内容继续播放(410),直到达到减小的最小缓冲时间为止。尽管上面关于图4描述了用于自适应地缓冲数字视频内容的各种处理,但是根据本发明的各种实施例,可以视特定应用的要求而利用能够减小最小缓冲时间的各种处理中的任何一种。
在本发明的几个实施例中,慢动作回放速度和/或音频回放可以随着MBT增大而提高(斜升)。在本发明的许多实施例中,回放速度和/或音频回放可以随着MBT增大而斜升,以使得回放速度和/或音频回放在达到MBT时将为最大速度。
在本发明的其他实施例中,处理可以检测缓冲器何时降至阈值以下,并且逐渐地降低回放速度和/或音频回放,直到缓冲器可以恢复为止。这可以尝试在回放逐渐衰减的情况下延迟视频流和/或音频流的回放中的停顿(与播放并然后停顿的视频流和/或音频流相反)。一般来说,这可以在延迟向下切换到更低比特率和/或更低质量的视频流的上下文中发生。可替代地,如果视频流和/或音频流是质量最低的流,则可以放慢回放,直到可以实现更好的带宽为止。一般来说,本发明的实施例可以尽可能长地延迟流回放停顿,并且逐渐地衰减通过根据本发明的各种实施的慢动作回放,而不是从回放到停顿。
尽管已经在某些特定的方面描述了本发明,但是许多另外的修改和变化对于本领域技术人员来说将是显而易见的。因此要理解,在不脱离本发明的范围和精神的情况下,本发明可以以除了具体描述的方式之外的其他方式实施,包括实现方式的各种改变,诸如利用支持除了它们遵循的特定标准内规定的那些特征之外的特征的编码器和解码器。因此,本发明的实施例应在所有方面都被认为是说明性的,而非限制性的。
Claims (16)
1.一种回放装置,包括:
包含回放应用的存储器;
网络接口;以及
处理器,其中所述回放应用将所述处理器配置为:
接收包括关于多个替代的媒体流的信息的清单文件,每个替代的媒体流具有与其它流不同的比特率;
从所述清单文件接收每个替代的媒体流的最小缓冲时间,其中每个替代的媒体流的最小缓冲时间是替代的媒体流的数字媒体内容的按替代的媒体流的正常回放速度以防止中断数字媒体内容的回放的预定回放时间;
基于从所述清单文件接收的至少一个替代的媒体流的按正常回放速度的最小缓冲时间以及比正常回放速度慢的慢动作回放速度,确定减小的最小缓冲时间;
将第一替代的媒体流的数字媒体内容下载到所述回放装置的缓冲器中;以及
当所述缓冲器内的第一替代的媒体流的数字内容的量达到所述减小的最小缓冲时间时,开始所述数字媒体内容的回放,其中开始回放的速度是所述慢动作回放速度。
2.根据权利要求1所述的回放装置,其中,下载所述数字媒体内容进一步包括:
从所述清单文件中提取包含经编码的媒体的容器文件的位置;并且
请求包含经编码的媒体的所述容器文件的部分。
3.根据权利要求2所述的回放装置,进一步包括:
将所述缓冲器中的下载的经编码的媒体与所述减小的最小缓冲时间进行比较;并且
当经编码的媒体超过所述减小的最小缓冲时间时,使用所述回放装置播放所述经编码的媒体。
4.根据权利要求1所述的回放装置,其中,所述数字媒体内容是DASH标准文件,并且所述最小缓冲时间被存储在媒体呈现描述数据结构中。
5.根据权利要求1所述的回放装置,其中,所述慢动作回放速度改变回放所消耗的数字媒体内容的量。
6.根据权利要求1所述的回放装置,其中,下载数字媒体内容进一步包括:
当所述缓冲器中的数字内容的量降至低于阈值时执行两个选项之一:
当第一替代的媒体流是所述多个替代的媒体流中的最低比特率的流时,则进一步减小速度回放;以及
当第一替代的媒体流不是所述多个替代的媒体流中的最低比特率的流时,则向下切换到具有更低比特率的第二替代的媒体流。
7.一种用于提供数字媒体内容的回放的方法,包括:
使用存储在通信地耦合到处理器的存储器中的回放应用将所述处理器配置为执行以下步骤:
使用读取存储在存储器中的指令的处理器接收清单文件,所述清单文件包括关于多个替代的媒体流的信息,每个替代的媒体流具有与其它流不同的比特率;
使用所述读取存储在存储器中的指令的处理器从所述清单文件接收每个替代的媒体流的最小缓冲时间,其中每个替代的媒体流的最小缓冲时间是替代的媒体流的数字媒体内容的按替代的媒体流的正常回放速度以防止中断数字媒体内容的回放的预定回放时间;
使用所述读取存储在存储器中的指令的处理器基于从所述清单文件接收的至少一个替代的媒体流的按正常回放速度的最小缓冲时间以及比正常回放速度慢的慢动作回放速度,确定减小的最小缓冲时间;
使用所述读取存储在存储器中的指令的处理器将第一替代的媒体流的数字媒体内容下载到所述回放装置的缓冲器中;以及
当所述缓冲器内的第一替代的媒体流的数字内容的量达到所述减小的最小缓冲时间时,使用所述回放装置和所述读取存储在存储器中的指令的处理器开始所述数字媒体内容的回放,其中开始回放的速度是所述慢动作回放速度。
8.根据权利要求7所述的用于提供数字媒体内容的回放的方法,其中,下载所述数字媒体内容进一步包括:
使用所述读取存储在存储器中的指令的处理器从所述清单文件提取包含经编码的媒体的容器文件的位置;并且
使用所述读取存储在存储器中的指令的处理器请求包含经编码的媒体的所述容器文件的部分。
9.根据权利要求7所述的用于提供数字媒体内容的回放的方法,其中,所述数字媒体内容是DASH标准文件,并且所述最小缓冲时间被存储在媒体呈现描述数据结构中。
10.根据权利要求7所述的用于提供数字媒体内容的回放的方法,其中,所述慢动作回放速度改变回放所消耗的数字媒体内容的量。
11.根据权利要求7所述的用于提供数字媒体内容的回放的方法,其中,下载数字媒体内容进一步包括:
当所述缓冲器中的数字内容的量降至低于阈值时执行两个选项之一:
当第一替代的媒体流是所述多个替代的媒体流中的最低比特率的流时,则进一步减小速度回放;以及
当第一替代的媒体流不是所述多个替代的媒体流中的最低比特率的流时,则向下切换到具有更低比特率的第二替代的媒体流。
12.一种非暂时性机器可读介质,用于提供数字媒体内容的回放,所述非暂时性机器可读介质包含包括处理器指令的回放应用,其中处理器对所述指令的执行使所述处理器执行包括以下的过程:
使用读取存储在存储器中的指令的处理器接收清单文件,其中所述清单文件包括关于多个替代的媒体流的信息,每个替代的媒体流具有与其它流不同的比特率;
使用读取存储在存储器中的指令的处理器从所述清单文件接收每个替代的媒体流的最小缓冲时间,其中每个替代的媒体流的最小缓冲时间是替代的媒体流的数字媒体内容的按替代的媒体流的正常回放速度以防止中断数字媒体内容的回放的预定回放时间;
使用读取存储在存储器中的指令的处理器基于从所述清单文件接收的至少一个替代的媒体流的按正常回放速度的最小缓冲时间以及比正常回放速度慢的慢动作回放速度,确定减小的最小缓冲时间;
使用读取存储在存储器中的指令的处理器将第一替代的媒体流的数字媒体内容下载到回放装置的缓冲器中;以及
当所述缓冲器内的第一替代的媒体流的数字内容的量达到所述减小的最小缓冲时间,使用所述回放装置和读取存储在存储器中的指令的处理器开始所述数字媒体内容的回放,其中开始回放的速度是所述慢动作回放速度。
13.根据权利要求12所述的非暂时性机器可读介质,其中,下载所述数字媒体内容进一步包括:
使用读取存储在存储器中的指令的处理器从所述清单文件中提取包含经编码的媒体的容器文件的位置;并且
使用读取存储在存储器中的指令的处理器请求包含经编码的媒体的所述容器文件的部分。
14.根据权利要求12所述的非暂时性机器可读介质,其中,所述数字媒体内容是DASH标准文件,并且所述清单文件具有媒体呈现描述数据格式。
15.根据权利要求12所述的非暂时性机器可读介质,其中,所述慢动作回放速度改变回放所消耗的数字媒体内容的量。
16.根据权利要求12所述的非暂时性机器可读介质,其中,下载数字媒体内容进一步包括:
当所述缓冲器中的数字内容的量降至低于阈值时执行两个选项之一:
当第一替代的媒体流是所述多个替代的媒体流中的最低比特率的流时,则进一步减小速度回放;以及
当第一替代的媒体流不是所述多个替代的媒体流中的最低比特率的流时,则向下切换到具有更低比特率的第二替代的媒体流。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662385065P | 2016-09-08 | 2016-09-08 | |
US62/385,065 | 2016-09-08 | ||
PCT/US2017/050141 WO2018048818A1 (en) | 2016-09-08 | 2017-09-05 | Systems and methods for adaptive buffering for digital video streaming |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110073341A CN110073341A (zh) | 2019-07-30 |
CN110073341B true CN110073341B (zh) | 2023-11-21 |
Family
ID=61280977
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780061795.9A Active CN110073341B (zh) | 2016-09-08 | 2017-09-05 | 用于数字视频流传输的自适应缓冲的系统和方法 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20180069909A1 (zh) |
EP (1) | EP3510491B1 (zh) |
JP (2) | JP6845921B2 (zh) |
KR (1) | KR102226095B1 (zh) |
CN (1) | CN110073341B (zh) |
ES (1) | ES2881521T3 (zh) |
WO (1) | WO2018048818A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109168036A (zh) * | 2018-10-08 | 2019-01-08 | 联想(北京)有限公司 | 播放方法、系统和电子设备 |
CN110798458B (zh) * | 2019-10-22 | 2022-05-06 | 潍坊歌尔微电子有限公司 | 数据同步方法、装置、设备及计算机可读存储介质 |
CN114830678A (zh) * | 2020-07-22 | 2022-07-29 | 谷歌有限责任公司 | 自适应音频回放速度的蓝牙耳机 |
KR20240001625A (ko) * | 2022-06-27 | 2024-01-03 | 에스케이텔레콤 주식회사 | 로컬 웹서버를 이용한 다운로드 데이터 및 스트리밍 데이터 간 연속 재생 방법 및 이를 위한 장치 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1879347A1 (en) * | 2006-07-14 | 2008-01-16 | Sony Service Centre (Europe) N.V. | System and method of audio/video streaming |
CN102577192A (zh) * | 2009-08-14 | 2012-07-11 | 苹果公司 | 缓冲音频数据与实况广播的同步 |
CN103348336A (zh) * | 2011-01-06 | 2013-10-09 | 迪维克斯有限责任公司 | 用于基于流延迟和信道速率执行自适应位率流动的系统和方法 |
CN103731726A (zh) * | 2012-10-11 | 2014-04-16 | 纬创资通股份有限公司 | 串流数据下载方法及计算机可读取储存介质 |
EP2733936A1 (en) * | 2011-07-12 | 2014-05-21 | Sharp Kabushiki Kaisha | Transmission device, method for controlling transmission device, control program, and recording medium |
WO2015003302A1 (zh) * | 2013-07-08 | 2015-01-15 | 华为技术有限公司 | 视频播放的控制方法、设备及系统 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1769399B1 (en) * | 2004-06-07 | 2020-03-18 | Sling Media L.L.C. | Personal media broadcasting system |
CN101107849B (zh) * | 2005-01-27 | 2010-12-29 | 汤姆森许可贸易公司 | 用于数字视频服务器的视频播放器 |
US7751436B2 (en) * | 2005-05-24 | 2010-07-06 | Sony Corporation | System and method for dynamically establishing PLL speed based on receive buffer data accumulation for streaming video |
EP2048890A1 (en) * | 2007-10-11 | 2009-04-15 | Thomson Licensing | System and method for an early start of audio-video rendering |
US9749676B2 (en) * | 2010-06-08 | 2017-08-29 | Microsoft Technology Licensing, Llc | Virtual playback speed modification |
US9804668B2 (en) * | 2012-07-18 | 2017-10-31 | Verimatrix, Inc. | Systems and methods for rapid content switching to provide a linear TV experience using streaming content distribution |
ES2621240T3 (es) * | 2012-11-13 | 2017-07-03 | Telefonaktiebolaget Lm Ericsson (Publ) | Procesado de datos multimedia |
WO2014096463A1 (en) * | 2012-12-21 | 2014-06-26 | Koninklijke Kpn N.V. | Low-latency streaming |
US20140282792A1 (en) * | 2013-03-15 | 2014-09-18 | Cygnus Broadband, Inc. | Video streaming with buffer occupancy prediction based quality adaptation |
JP6059820B2 (ja) * | 2013-07-18 | 2017-01-11 | コニンクリーケ・ケイピーエヌ・ナムローゼ・フェンノートシャップ | 低レイテンシ・ストリーミング |
JP6275506B2 (ja) * | 2014-02-21 | 2018-02-07 | ルネサスエレクトロニクス株式会社 | コンテンツ出力装置 |
GB2524958A (en) * | 2014-04-03 | 2015-10-14 | Orbital Multi Media Holdings Corp | Data flow control method |
US9602846B1 (en) * | 2016-08-31 | 2017-03-21 | Living As One, Llc | System and method for asynchronous uploading of live digital multimedia with guaranteed delivery |
-
2017
- 2017-01-18 US US15/409,443 patent/US20180069909A1/en active Pending
- 2017-09-05 KR KR1020197009653A patent/KR102226095B1/ko active IP Right Grant
- 2017-09-05 ES ES17849404T patent/ES2881521T3/es active Active
- 2017-09-05 WO PCT/US2017/050141 patent/WO2018048818A1/en unknown
- 2017-09-05 EP EP17849404.3A patent/EP3510491B1/en active Active
- 2017-09-05 JP JP2019512873A patent/JP6845921B2/ja active Active
- 2017-09-05 CN CN201780061795.9A patent/CN110073341B/zh active Active
-
2020
- 2020-06-24 JP JP2020108513A patent/JP7166311B2/ja active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1879347A1 (en) * | 2006-07-14 | 2008-01-16 | Sony Service Centre (Europe) N.V. | System and method of audio/video streaming |
CN102577192A (zh) * | 2009-08-14 | 2012-07-11 | 苹果公司 | 缓冲音频数据与实况广播的同步 |
CN103348336A (zh) * | 2011-01-06 | 2013-10-09 | 迪维克斯有限责任公司 | 用于基于流延迟和信道速率执行自适应位率流动的系统和方法 |
EP2733936A1 (en) * | 2011-07-12 | 2014-05-21 | Sharp Kabushiki Kaisha | Transmission device, method for controlling transmission device, control program, and recording medium |
CN103731726A (zh) * | 2012-10-11 | 2014-04-16 | 纬创资通股份有限公司 | 串流数据下载方法及计算机可读取储存介质 |
WO2015003302A1 (zh) * | 2013-07-08 | 2015-01-15 | 华为技术有限公司 | 视频播放的控制方法、设备及系统 |
Non-Patent Citations (3)
Title |
---|
A multipath relay transport control method for real-time video service;Guangye Li Etc.;2015 IEEE International Conference on Cyber Technology in Automation, Control, and Intelligent Systems (CYBER);全文 * |
一种基于拥塞发现的强化学习P2P网络视频点播预取策略;沈项军 等;计算机科学;第42卷(第7期);全文 * |
基于HTTP的视频流网络传输;朱秀昌等;《南京邮电大学学报(自然科学版)》;20160629(第03期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110073341A (zh) | 2019-07-30 |
JP2020156111A (ja) | 2020-09-24 |
US20180069909A1 (en) | 2018-03-08 |
EP3510491B1 (en) | 2021-05-12 |
WO2018048818A1 (en) | 2018-03-15 |
KR102226095B1 (ko) | 2021-03-11 |
JP6845921B2 (ja) | 2021-03-24 |
EP3510491A1 (en) | 2019-07-17 |
JP7166311B2 (ja) | 2022-11-07 |
ES2881521T3 (es) | 2021-11-29 |
EP3510491A4 (en) | 2020-01-22 |
KR20190052032A (ko) | 2019-05-15 |
JP2019530317A (ja) | 2019-10-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6657313B2 (ja) | ソースビデオストリームからビデオの一組の代替ストリームをエンコードする方法 | |
US11895348B2 (en) | Systems and methods for providing variable speeds in a trick-play mode | |
US11528540B2 (en) | System and method for decreasing an initial buffering period of an adaptive streaming system | |
EP4096196A1 (en) | Systems and methods for encoding video content | |
JP7166311B2 (ja) | デジタルビデオストリーミングに関する適応バッファリングのためのシステムおよび方法 | |
EP3465460B1 (en) | Systems and methods for providing audio content during trick-play playback |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40010466 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |