CN114902685A - 用于发送和接收视频的方法和装置 - Google Patents

用于发送和接收视频的方法和装置 Download PDF

Info

Publication number
CN114902685A
CN114902685A CN202080076860.7A CN202080076860A CN114902685A CN 114902685 A CN114902685 A CN 114902685A CN 202080076860 A CN202080076860 A CN 202080076860A CN 114902685 A CN114902685 A CN 114902685A
Authority
CN
China
Prior art keywords
segment
base layer
video
bitrate
enhancement layer
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
CN202080076860.7A
Other languages
English (en)
Other versions
CN114902685B (zh
Inventor
N·勒斯库阿尔内克
沙利纳·泰比
查尔斯·萨蒙-勒加尼厄
雷米·侯代尔
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.)
InterDigital CE Patent Holdings SAS
Original Assignee
InterDigital CE Patent Holdings SAS
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 InterDigital CE Patent Holdings SAS filed Critical InterDigital CE Patent Holdings SAS
Publication of CN114902685A publication Critical patent/CN114902685A/zh
Application granted granted Critical
Publication of CN114902685B publication Critical patent/CN114902685B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing 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/234327Processing 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 by decomposing into layers, e.g. base layer and one or more enhancement layers
    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • 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
    • 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/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/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • 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/4402Processing 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 reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440227Processing 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 reformatting operations of video signals for household redistribution, storage or real-time display by decomposing into layers, e.g. base layer and one or more enhancement layers
    • 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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4621Controlling the complexity of the content stream or additional data, e.g. lowering the resolution or bit-rate of the video stream for a mobile client with a small screen
    • 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/47End-user applications
    • H04N21/482End-user interface for program selection
    • 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/47End-user applications
    • H04N21/482End-user interface for program selection
    • H04N21/4825End-user interface for program selection using a list of items to be played back in a given order, e.g. playlists
    • 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
    • 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

用于发送和接收视频的方法和装置
1.技术领域
本公开涉及联网域,具体地涉及适用于任何种类的网络和设备上的视频消费的自适应流式传输技术。
2.背景技术
自适应比特率(ABR)流式传输是一种用于通过计算机网络流式传输多媒体的技术。建立在超文本传输协议(HTTP)传递基础上的ABR技术的使用正在增长。它们可支持通过任何种类的(例如,无线、宽带)网络从呈现设备进行视频消费。ABR可基于可用网络带宽和/或基于播放器缓冲水平。试图保持小缓冲区的低延迟视频应用可有利于基于带宽的ABR而不是基于缓冲水平的ABR。基于带宽的ABR可基于带宽估计,该带宽估计用于确定可在给定时间通过给定连接下载的(例如,最佳)质量。例如,可通过请求视频片段并测量视频片段的下载速度来估计可用带宽。这可允许探测(例如,估计)除视频比特率之外的带宽,因为视频片段可以突发方式(即,尽可能快地)传递而不考虑视频比特率。可能存在这样的情况,其中测量视频片段的下载速度可能无法准确地估计可用带宽。视频片段可例如是小尺寸的。视频片段传递也可由编码器输出速率界定,该编码器输出速率可以是恒定的,并且可例如对应于所请求的质量。本公开在设计时考虑了前述内容。
3.发明内容
根据第一方面,提供了一种用于接收视频的方法,该方法包括:
-请求以第一基础层比特率编码的基础层片段和对应于视频的相同时间部分的增强层片段,该增强层片段被请求以比基础层片段更低的优先级传递;
-请求视频的后续部分的基础层后续片段,在第一增强层片段被及时接收(例如,被及时接收以(例如,成功地)进行解码和呈现)的条件下,该基础层后续片段以高于第一基础层比特率的第二基础层比特率被请求。
根据第二方面,提供了一种用于接收视频的装置,该装置包括处理器,该处理器被配置为:
-请求以第一基础层比特率编码的基础层片段和对应于视频的相同时间部分的增强层片段,该增强层片段的优先级低于基础层片段的优先级;
-请求视频的后续部分的基础层后续片段,在第一增强层片段被装置及时接收(例如,被及时接收以(例如,成功地)进行解码和呈现)的条件下,该基础层后续片段以高于第一基础层比特率的第二基础层比特率被请求。
根据第三方面,提供了一种用于传输视频的方法,该方法包括:
-接收对以第一基础层比特率编码的基础层片段和以增强层比特率编码的增强层片段的请求,该基础层片段和增强层片段对应于视频的相同时间部分;
-传输基础层片段和增强层片段,该增强层片段以比基础层片段更低的优先级被传输;
-在接收到对视频的后续部分的基础层后续片段的进一步请求时,传输以第二基础层比特率编码的基础层后续片段,该第二基础层比特率低于或等于第一基础层比特率与增强层比特率之和。
根据第四方面,提供了一种用于传输视频的装置,该装置包括处理器,该处理器被配置为:
-接收对以第一基础层比特率编码的基础层片段和以增强层比特率编码的增强层片段的请求,该基础层片段和增强层片段对应于视频的相同时间部分;
-传输基础层片段和增强层片段,该增强层片段以比基础层片段更低的优先级被传输;
-在接收到对视频的后续部分的基础层后续片段的进一步请求时,传输以第二基础层比特率编码的基础层后续片段,该第二基础层比特率低于或等于第一基础层比特率与增强层比特率之和。
4.附图说明
-图1示出了根据实施方案的与不可扩展编码相比由可扩展编码产生的开销的一个示例;
-图2示出了根据实施方案的用于接收视频的方法的一个示例;
-图3A示出了根据实施方案的组合可扩展和不可扩展特征的编码方案的一个示例;
-图3B示出了根据实施方案的请求和响应数据包的一个示例性序列,其示出了接收器成功地探测到可用带宽;
-图3C示出了根据实施方案的请求和响应数据包的另一个示例性序列,其示出了接收器未成功地探测到可用带宽;
-图3D示出了根据实施方案的组合可扩展和不可扩展特征的编码方案的另一个示例;
-图4A示出了根据实施方案的用于接收视频的处理设备;
-图4B示出了根据实施方案的用于传输视频的处理设备;
-图4C表示根据实施方案的图4A和图4B的任何处理设备的示例性架构。
应当理解,附图的目的是为了说明本发明的概念,不一定是用于说明本公开的唯一可能配置。
5.具体实施方式
应理解,附图中所绘示的元件可以各种形式的硬件、软件或它们的组合来实施。优选地,这些元件在一或多个适当编程的通用设备上以硬件和软件的组合实施,该通用设备可包含处理器、存储器和输入/输出接口。在本文中,术语“互连”被定义为是指直接连接或通过一个或多个中间部件间接连接。此类中间部件可包括基于硬件和软件两者的部件。术语“互连”不限于有线互连,并且也包括无线互连。
本文所叙述的所有示例和条件语言旨在教学目的,以帮助读者理解本公开的原理和由发明人对促进本领域所贡献的概念,并且应解释为不限于这种具体叙述的示例和条件。
此外,本领域技术人员将理解,本文所呈现的框图表示体现本公开的原理的说明性电路的概念图。类似地,应当理解,任何流程图(flow charts)、流程图(flow diagrams)、状态转换图、伪代码等表示可基本上在计算机可读介质中表示并且由计算机或处理器执行的各种过程,无论这种计算机还是处理器是否被明确绘示。
图中所绘示的各种元件的功能可通过使用专用硬件以及能够与适当软件相关联地执行软件的硬件来提供。当由处理器提供时,功能可由单个专用处理器、单个共享处理器或由多个单独处理器提供,其中一些可以为共享的。此外,术语“处理器”或“控制器”的明确使用不应解释为指能够执行软件的硬件,并且可隐含地包括但不限于数字信号处理器(DSP)硬件、存储软件的只读存储器(ROM)、随机存取存储器(RAM)和非易失性存储装置。
还可包含其他常规和/或定制的硬件。类似地,图中所绘示的任何开关仅为概念性的。其功能可通过编程逻辑的操作、通过专用逻辑、通过编程控制和专用逻辑的交互、或甚至手动地进行,如从上下文更具体地理解,可由实施人员选择的特定技术。
在本文的权利要求中,表达为用于执行指定功能的装置的任何元件旨在涵盖执行该功能的任何方式,包括例如,a)执行该功能的电路元件的组合,或b)呈任何形式的软件,因此,包含固件、微码或类似物,与用于执行该软件以执行该功能的适当电路结合。如这些权利要求所定义的公开内容在于以下事实:以权利要求书要求的方式将由各种所叙述的装置提供的功能结合并且汇集在一起。因此,认为可提供那些功能的任何装置等同于本文所绘示的那些。
应当理解,例如,在“A/B”、“A和/或B”以及“A和B中的至少一者”的情况下,使用以下“/”、“和/或”和“至少一种”中的任一种旨在涵盖仅选择第一列出的选项(A),或仅选择第二列出的选项(B),或选择两个选项(A和B)。作为进一步的示例,在“A、B和/或C”和“A、B和C中的至少一者”的情况下,此类短语旨在涵盖仅选择第一列出的选项(A),或仅选择第二列出的选项(B),或仅选择第三列出的选项(C),或仅选择第一列出的选项和第二列出的选项(A和B),或仅选择第一列出的选项和第三列出的选项(A和C),或仅选择第二列出的选项和第三列出的选项(B和C),或选择所有三个选项(A和B和C)。如对于本领域和相关领域的普通技术人员显而易见的是,这可扩展到所列出的尽可能多的项目。
本文所述的实施方案涉及视频内容的ABR流式传输。ABR视频流式传输可被视为通过HTTP的视频流式传输方法,其中源(例如,视频)内容可以多个比特率编码成相应的多个流(例如,视频),不同的比特率流被分割成(例如,小的)时间视频片段,(例如,每个)片段是可独立解码的。流式传输客户端(例如,接收器)可通过清单文件获知不同比特率的流(例如,片段)的可用性。当开始时,接收器可例如从最低比特率流请求视频片段。如果接收器确定下载速度大于已下载(例如,最后接收的)视频片段的(例如,平均)比特率,则其可请求具有任何下一个更高比特率的后续片段。如果接收器确定视频片段的下载速度低于视频片段的比特率,例如因为网络吞吐量可能已经恶化,则接收器可以较低的比特率请求下一个后续片段。片段尺寸可根据特定的实施或应用而变化。视频片段持续时间可以是介于例如两百毫秒和十(10)秒之间的任何持续时间。在第一示例中,ABR流式传输可根据运动图像专家组(MPEG)基于HTTP的动态自适应流式传输(DASH)标准。在第二示例中,ABR流式传输可根据Adobe HTTP动态流式传输。在第三示例中,ABR流式传输可根据Apple HTTP实时流式传输方法。在又一示例中,ABR流式传输可根据Microsoft平滑流式传输。任何ABR流式传输技术都与本文所述的实施方案兼容。
根据实施方案,可请求视频片段的比特率可对应于可编码该片段的比特率。
考虑到具有“比特率”值(例如,以位/秒为单位)的带宽的假设恒定比特率信道,如果视频内容(例如,连续的片段)以该“比特率”(例如,连续地)传递,则至少在已经接收到对应于(例如,给定)时间乘以比特率位的数据量之后开始播放的条件下可确保接收器具有足够的数据用于连续(例如,不间断)播放。(例如,给定)时间可例如在所接收的清单中指示(例如,指定)(例如,可在接收到第一位之后的(例如,给定)时间处开始播放)。换句话讲,如果通过假设恒定比特率信道传递(例如,以该比特率编码的)(例如,一组)片段,则在已经接收到一定量的数据之后开始播放的条件下,可确保接收器具有用于连续播放的足够数据,该数据的量对应于给定时间乘以比特率。根据实施方案,片段的比特率可表示例如在给定持续时间上平均的网络带宽的量(例如,位/秒),当在网络中提供时,其可允许(例如,确保)接收器的缓冲水平的稳定性和/或接收器播放的视频中没有中断。
本文所述的实施方案涉及用于接收视频流的基于带宽的ABR技术。在ABR流式传输中,可传输对视频片段的请求。在往返时间(RTT)之后,可以可用带宽接收所请求的视频片段。术语可用带宽是指接收器可用的(例如,下载)网络吞吐量,诸如例如但不限于随时间推移的所接收数据的量(例如,位、字节和数据包中的任一者)。如果网络连接未饱和(例如,拥塞),则下载带宽可高于(例如,视频编码的)比特率。根据实施方案,下载可相对较早地完成(例如,相对于播放时间),并且接收器可在发送下一请求之前暂停(例如,等待)(因为例如接收器缓冲区可能已满)。如果网络连接饱和(或接近饱和),则下载带宽可等于(或接近)(例如,视频编码的)比特率,并且下载可以与回放类似的速度进行。根据实施方案,可在下载结束之后或之前(例如,立即)发送下一请求以适应网络的延迟(例如,RTT)。
根据实施方案,低延迟应用可使用短视频片段(例如,短至两百毫秒)。低延迟应用可以是例如实时视频流式传输和快速启动应用中的任一种(例如,其中在请求内容与回放该内容之间经过的时间被减小到例如低(例如,最小)值)。通过例如测量视频片段的下载速度来估计接收短视频片段时的可用带宽,可能提供不准确的结果。视频片段传递可由编码器输出速率界定,该编码器输出速率可以是恒定的,并且可例如对应于所请求的质量。测量此类视频片段的下载速度的接收器可能无法确定是否有更多的带宽可用于请求更高质量的视频片段。
根据实施方案,可扩展视频编码可与不同的(例如,网络传递)优先级一起使用。其中可使用不同的(例如,网络)优先级来请求传递不同的(例如,多个)视频层的可扩展编码的组合可允许获得内容的更好(例如,最佳)质量(例如,具有最高可用比特率),同时减少可能的视频播放中断。术语优先级是指分配至给定片段以通过网络传递(例如,传输)的重要性级别。可通过使一些数据的传输优先于一些其他数据,来使用不同的技术提供不同的(例如,网络传递、传输)优先级。根据实施方案,优先级可以是传递网络(例如协议)优先级,诸如例如HTTP2优先级、快速用户数据报协议因特网连接(QUIC)优先级、差异化服务(DiffServ)优先级、第二层优先级(例如,IEEE 802.1p)等中的任一者。
根据实施方案,可通过例如使用单个优先级传递网络(例如,协议)以(例如,给定的、优先化的)顺序相继地请求不同的片段,来用不同的优先级请求(例如,并且传递)不同的片段。协议可以是例如HTTP/1.1。例如,可首先请求第一片段(例如,基础层片段),并且然后可请求第二片段(例如,增强层),使得可相继地发生两个片段的传输。例如,用于请求(例如,发送对其的请求)第二(例如,增强层)片段的时间可使得第二(例如,增强层)片段的传输可在第一(例如,基础层)片段的传输可终止之后开始。这在本文中可被称为请求流水线。例如,可经由HTTP1.1请求第一片段和第二片段,HTTP1.1可基于例如到服务器的单个(例如,TCP)连接。例如基于单个TCP连接的请求流水线可允许通过确保服务器将以所请求的顺序相继地传输第一片段和第二片段,来使第一请求片段的传递优先于第二请求片段。又如,可经由两个不同的并行(例如,TCP)连接来请求第一片段(例如,基础层片段)和第二片段(例如,增强层),其中可在可能已请求第一片段之后的给定时间请求第二片段。可选择给定时间,使得第二片段的传输可在第一片段的传输开始之后的某个时间开始(例如,可能在第一片段的传输完成之前但接近完成)。任何联网/传输优先化技术都可与本文所公开的实施方案兼容。
可扩展视频编码可被视为其中在基础层和任何数量的增强层中编码视频的技术。如果仅基础层被解码,则可获得第一级别(例如,基本)的质量。如果增强层被解码(除了基础层之外),则可获得增强的质量。如果若干增强层被解码(与基础层一起),则可进一步改进(例如,增强)所获得的质量。根据实施方案,获得增强的视频质量可以是改进(例如,增加)视频的信噪比、分辨率和帧速率中的任何一种。在同等比特率下,与使用如图1所示的不可扩展编码相比,使用可扩展编码可降低视频的质量。在第一示例中,可扩展视频编码技术可根据SVC标准(H264/MPEG-4AVC视频压缩标准的附录G扩展)。在第二示例中,可扩展视频编码技术可根据可扩展高效率视频编码(SHVC)标准,即H265/MPEG-HEVC标准的扩展。在又一示例中,可扩展视频编码技术可根据VP9和用于AV1的可扩展视频技术(SVT-AV1)中的任一者。其中不同的层或视频可彼此独立地被编码和传输的任何可扩展编码技术都可与本文所述的实施方案兼容。
图1示出了根据实施方案的与针对相同级别的质量的不可扩展编码相比,使用可扩展编码产生的开销的示例。为了清楚起见,通过将SVC/AVC作为可扩展和不可扩展视频编码技术的示例来说明图1。可由不可扩展视频编码(例如,AVC)以三个不同的质量级别Q1、Q2、Q3对一段视频进行编码,从而得到对应于三个不同的比特率的三个视频片段11、12、13,质量越高,比特率越高,如图1所示。可用可扩展视频编码(例如,SVC)对相同的一段视频进行编码,从而得到基础层(BL)片段111和两个增强层(EL)片段112、113,它们分别针对与三个AVC片段11、12、13相同的质量级别Q1、Q2和Q3。SVC编码BL片段111(作为AVC片段)针对与AVC编码片段11相同的质量级别Q1,并且对应于如图1所示的相同编码比特率。与第一增强层EL1片段112组合的SVC BL片段111针对与AVC编码片段12相同的质量级别Q2,并且对应于比AVC编码片段12更高的编码比特率。对于相同的质量级别,两个比特率之间的差值表示与不可扩展编码视频相比,可扩展编码多层视频的开销110。由于SVC/AVC开销,对于给定网络带宽,与具有(例如,仅)AVC编码片段的ABR流式传输相比,具有(例如,仅)SVC编码片段的ABR流式传输将导致降低的质量。
本文所公开的实施方案可允许在下载视频片段之外探测可用网络带宽,同时改进所接收内容的质量和可用带宽的使用,而没有在估计带宽时降低播放质量的风险。
根据实施方案,对于相同的视频,除了基础层片段之外,还可请求增强层片段。可例如以低优先级(例如,HTTP2、QUIC、Diffserv、延迟请求中的任一者)请求增强层,使得可以优先地传递基础层。如果可在最后期限前获得增强层,则可以更高的质量(例如,以低于或等于先前请求的基础层与增强层片段的比特率之和的比特率)请求后续基础层片段。如果例如在回放时间处未获得增强层片段,则可确定不能提高质量并且可取消(例如,不传输)对增强层片段的后续请求。根据实施方案,可重复(例如,立即地、有规律地、周期性地等中的任一者)探测以检测可用带宽变化。
图2示出了根据实施方案的用于接收视频的方法的示例。在步骤S22中,可由接收器装置向ABR传输装置请求(例如,以第一BL比特率编码的)视频的基础层(BL)片段,该ABR传输装置在本文中可被称为ABR服务器。例如,可由接收器向ABR服务器传输请求数据包,以请求(例如,以第一BL比特率编码的)视频的BL片段。在步骤S24中,可向ABR服务器请求对应于与所请求的BL片段相同的时间部分的(例如,以第一EL比特率编码的)视频的增强层(EL)片段,从而以比所请求的BL片段更低的优先级传递。例如,可由接收器向ABR服务器传输请求数据包以请求EL片段,该EL片段对应于与所请求的BL片段相同的视频的时间部分。可由ABR服务器请求以比所请求的BL片段更低的优先级来传输EL片段。根据实施方案,对BL片段的请求和对EL片段的请求可由接收器传输到单个请求数据包或不同的请求数据包中。请求对应于视频的相同时间部分的EL片段的步骤S24可允许探测可用于接收BL片段的带宽之外的可用带宽。根据实施方案,可请求视频的BL片段而不探测可用带宽(例如,不请求对应于视频的相同时间部分的EL片段)。例如,可定期地(例如,基于恒定量的时间、恒定数量的所请求的片段等中的任一者)进行可用带宽的探测。
根据实施方案,可由接收器接收(例如,解码和播放)所请求的BL片段。根据可用带宽,以比所请求的BL片段更低的优先级传输的所请求的EL片段可被及时接收,以便由接收器解码和成功播放,或者可不被及时接收(例如,在与EL/BL片段的播放时间相关的给定时间之前未被完全接收)。例如,在步骤S26中,可确定所请求的EL片段是否被及时接收(例如,在给定时间之前被完全接收)。例如,在所请求的EL片段在允许根据播放时间(例如,不产生任何视频播放中断)解码(例如,呈现/显示)EL片段的时间处被(例如,完全)接收的条件下,可确定所请求的EL片段被及时接收。例如,在EL片段在可显示BL片段的时间处被接收、解码并且准备好显示的条件下,可确定所请求的EL片段被及时接收,。例如,在可基于所接收的EL和BL片段来呈现画面(例如,可为可显示的)的条件下,可确定所请求的EL片段被及时接收。例如,如果根据标准接收到EL片段,该标准(例如,当满足时)可允许解码和播放所请求的EL片段(例如,成功地、无中断地),则可确定所请求的EL片段被及时接收。
根据实施方案,BL片段和EL片段中的任一者可包括相继地封装在片段中的一个或多个编码帧(例如,图像)。位于片段开始处(例如,首先被传输/接收)的帧在本文中可被称为片段的第一帧。位于片段末尾处(例如,最后被传输/接收)的帧在本文中可被称为片段的最后帧。例如,可确定EL片段被及时接收所依赖的标准可以是,例如,在该帧(例如,图像)的解码时间之前(例如,完全)接收到对应于EL片段的最后编码帧(例如,图像)的数据。帧的解码时间可以是例如前一帧的解码时间加上帧持续时间。又如,标准可以是对应于EL片段的所有(例如,每个)编码帧的数据在该帧的解码时间之前被(例如,完全)接收。例如,可通过将片段的第一编码帧(例如,其第一位)的接收时间与缓冲时间相加来获得(例如,确定)片段的第一编码帧的解码时间。缓冲时间可例如大于或等于在清单中与片段的比特率一起传输的时间,用于表征如上所述的片段的带宽特性。
任何用于确定将依据其(例如,全部)接收EL片段以允许对EL片段进行解码(例如,和显示)而不产生任何视频播放中断的标准的技术,都与本文所述的实施方案兼容。
根据实施方案,如果所请求的EL片段被及时接收,则在步骤S28中,可以(例如)高于第一BL比特率的第二BL比特率编码的BL片段的形式请求视频时间线中的视频的随后(例如,后续)片段。实际上,请求对应于与所请求的BL片段相同的视频的时间部分但优先级低于BL片段的EL片段,这允许探测可用带宽,同时允许根据探测数据改进视频质量。及时接收所请求的EL片段可指示用于增加下一个(例如,后续)所请求的BL片段的比特率的带宽可用性。如果EL片段未被及时接收,例如,在应开始片段的播放时未被完全接收,则可确定可能没有足够的带宽可用于改进下一个(例如,后续)片段的质量(例如,增加比特率),并且可以与最后请求的BL片段相同的比特率(例如,第一BL比特率)来请求下一个(例如,后续)片段。
根据实施方案,通过请求(例如,传输请求的数据包)EL片段来探测可用带宽,可用不同的强度级别来执行。例如,可在BL片段的每个请求传输处执行探测。又如,可有规律地执行探测,方法是每隔N个BL片段请求来请求EL片段,N是整数值,例如介于二和一百之间的任何值。再如,可定期地执行探测,例如在周期性定时器到期时。
在任选的变型中,在一个以上的连续EL片段被及时接收(例如,在播放超时之前被接收,被接收以进行解码和呈现)的进一步的条件下,下一个(例如,后续)BL片段请求的比特率增加。在可用带宽变化(例如,振荡)的情况下,在已经及时接收到单个EL片段之后增加后续BL片段的比特率可能影响用户体验。实际上,过于激进地增加后续BL片段的比特率可能导致请求以高于可用带宽的比特率编码的BL片段,从而导致播放中断。在一个以上的连续EL片段被及时接收(例如,任何数量的后续EL片段(例如,每个)被及时接收以进行解码和呈现)的进一步条件下增加后续BL片段请求的比特率,可允许即使可用带宽条件振荡也保持理想的视频质量。例如,如果带宽振荡,则在切换到较高质量的BL片段之前请求(并且成功地接收)若干连续片段的BL和EL可允许平滑回放(例如,回放保持不中断,并且可在每个片段处增强或不增强质量)。一旦带宽稳定,这也可允许接收器收敛到最高可能质量。在又一个变型中,接收器可(例如,决定)不解码所接收的EL片段以便避免视频质量振荡。在已经(例如,成功地)接收到多个连续EL片段之后,接收器可例如(例如,决定)解码EL片段。连续EL片段的数量可以是例如介于例如二和十之间的任何值。
图3A示出了根据实施方案的组合可扩展和不可扩展特征的编码方案的一个示例。在例示的示例中,视频的相同时间部分可用作分别以第一BL比特率BR1、第二BL比特率BR2、第三BL比特率BR3和第四BL比特率BR4编码的四个BL片段31、32、33、34。视频的相同时间部分还可用作第一EL片段311、第二EL片段321和第三EL片段323,其中第一EL片段311可以是第一BL片段31的增强层,第二EL片段321可以是第二BL片段32的增强层,并且第三EL片段323可以是第三BL片段33的增强层。第一EL片段311、第二EL片段321和第三EL片段323可分别以第一EL比特率BR11、第二EL比特率BR12和第三EL比特率BR13编码。根据实施方案,接收器可用给定的优先级请求以第一比特率BR1编码的第一BL片段31,并且用较低的优先级请求以第一EL比特率BR11编码的第一EL片段311。可确定不同的比特率值,使得第一EL比特率BR11与第一BL比特率BR1之和大于或等于第二BL比特率BR2。可进一步确定不同的比特率值,使得第二EL比特率BR12与第二BL比特率BR2之和大于或等于第三BL比特率BR3,并且使得第三EL比特率BR13与第三BL比特率BR3之和大于或等于第四BL比特率BR4。对于其中相同时间部分的BL片段与EL片段的比特率之和大于或等于可为后续BL片段请求的(例如,下一个)更高级别的比特率的这种编码方案,其可允许在接收(例如,下载)EL层片段的同时探测可用带宽,并且确定是否可为后续BL片段(例如,安全地,成功地)请求下一个更高级别的比特率(例如,用于在可用带宽内接收)。根据实施方案,并且如图3A所示,相同时间部分的BL片段与EL片段BR1+BR11、BR2+BR12、BR3+BR13的比特率之和可(例如,基本上)分别等于(例如,下一个)更高级别的比特率BR2、BR3、BR4。所谓基本上相等在本文中是指至少在例如百分之五的公差内。
图3B示出了请求和响应数据包的一个示例性序列,其示出了接收器成功地探测到可用带宽30B。根据实施方案,接收器可传输第一请求数据包RA,其请求视频的第一时间部分A的第一BL片段31A,以第一比特率BR1编码。在例如对应于RTT的时间之后,可接收第一时间部分A的第一BL片段31A。接收器可传输第二请求数据包RB,其请求视频的第二时间部分B的第二BL片段31B(例如,在时间部分A之后),并且以第一比特率BR1编码。接收器也可请求视频的第二时间部分B的EL片段311B,其具有较低的优先级并且以EL比特率BR11编码以探测可用带宽(例如,高达BR11)。因为第一BL比特率BR1与EL比特率BR11之和低于可用带宽30B,所以BL片段31B和EL片段311B两者可被及时接收(例如,被及时接收以进行解码和呈现)。可传输另外的数据包RC以请求(例如,再次)以第一BL比特率BR1编码的视频的后续时间部分C的BL片段31C,以及以EL比特率BR11编码的视频的相同时间部分C的EL层片段311C。如果以较低优先级传输的EL片段311C被及时接收(例如,被及时接收以进行解码和呈现),则可以第二BL比特率BR2传输对视频的下一个时间部分D的BL片段31D的请求RD。根据实施方案,第二BL比特率BR2可高于第一BL比特率BR1并且低于或等于第一BL比特率BR1与EL比特率BR11之和。由于可用带宽在第二BL比特率BR2之上被成功地探测,因此以第二BL比特率BR2编码的BL片段31D可被成功地接收、解码和播放。
图3C示出了根据实施方案的请求和响应数据包的另一个示例性序列,其示出了接收器未成功地探测到可用带宽30C。图3C示出了与图3B类似的数据包序列,不同之处在于可用带宽30C低于第一BL比特率BR1与EL比特率BR11之和。如图3C所示,仅视频B、C的对应部分的EL片段的一部分311B1、311C1可被及时接收(例如,在视频的对应部分的播放时间之前),并且接收器可保持第一BL比特率BR1以请求RD’下一个BL片段(用于视频D的后续部分)。仅接收EL片段的部分311B1、311C1,并且缺失(例如,未接收)EL片段的剩余部分311B2、311C2(例如,在最后期限之前)允许确定保持以相同BL比特率BR1请求下一个BL片段31D’(例如,不将BL比特率增加到下一个更高级别)。
图3D示出了根据实施方案的组合可扩展和不可扩展特征的编码方案的一个示例。根据实施方案,BL片段31的多个增强层EL1、EL2、EL3片段311、312、313可分别以第一BR11、第二BR12和第三BR13比特率提供。BL片段32的多个增强层EL1、EL2片段321、322也可分别以另外的第一BR21、第二BR22提供。根据实施方案,可用递减的优先级来请求多个增强层片段。所谓递减的优先级是指第三EL片段313可以比第二EL片段312更低的优先级被请求(传递),该第二EL片段可以比第一EL片段311更低的优先级被请求(传递),该第一EL片段可以比BL片段31更低的优先级被请求(传递)。
如果增强层片段311、312、313的子集被及时接收(例如,被及时接收以进行解码和呈现),则可以BL比特率BR4来请求BL后续片段,该BL比特率BR4低于或等于被及时接收的增强层片段的比特率与第一基础层比特率之和(BR1+BR11+BR12+BR13)。用递减的优先级来请求(和及时接收)对应于与所请求的BL片段相同的视频的时间部分的多个增强层片段,可允许加速质量改善,例如在ABR会话开始时,或者在突发可用带宽增加之后。实际上,如果例如所有三个EL片段311、312、313与BL片段31一起被及时接收,则接收器可直接从第一BL比特率BR1切换到最高BL比特率BR4,以请求下一个(例如,后续)BL片段。这允许接收器更快地稳定到可用带宽内的最佳可能质量。
根据实施方案,多个EL片段可仅应用于视频的第一片段(例如,第一分钟),视频的剩余部分(例如,在第一分钟之后)可用作BL和单个EL片段。这种方案允许改进接收器的快速启动,同时节省服务器端或内容分发网络(CDN)的存储空间。
本文所公开的实施方案允许在稳定状态下(例如,在接收器已收敛到最佳可能BL比特率之后)呈现最佳视频质量,因为接收到的是不可扩展(例如,AVC)视频片段而非可扩展视频,因此避免了可扩展编码的分层方法的开销。
本文所公开的实施方案允许在带宽估计期间改进呈现内容的质量,因为在探测可用带宽时获得的内容有助于改进呈现质量。
根据实施方案,如果带宽波动(例如,无线条件不稳定、网络连接与诸如网络浏览的突发事件的竞争),这种情况通常通过缓冲解决但在低延迟环境中难以解决(例如,用小缓冲区),则接收器可用单个EL层保持以BL(例如,较低)质量请求视频片段,从而避免了可能有损用户体验的回放冻结,同时仍然允许利用潜在可用带宽。保持请求BL片段和单个EL片段(例如,在每次请求时)允许始终为给定(和变化的)可用带宽提供最佳可能质量。一旦带宽稳定,切换到(例如,纯AVC)BL片段就允许进一步改进呈现质量(通过避免可扩展编码开销)。
根据实施方案,可接收描述关于视频的信息的清单。例如,清单可以是MPEG DASH媒体呈现描述(MPD)。清单可例如包括接收器可能可用的视频的(例如,所有)表示(以及例如,它们的特征)的列表。基于这些表示(例如,特征),接收器(例如,播放器)可能够确定可请求(例如,向服务器)哪个片段。表示的特征可包括以下项中的任一者:(例如,唯一)标识符、比特率、与至少一个其他表示相关的质量级别信息、以及关于(例如,若干)表示之间的(例如,可能的)关系(诸如例如,依赖性、互补性等)的信息。
对于可扩展内容,EL片段可经由依赖性表示信息来描述,该依赖性表示信息指示(例如,所有)表示的标识符,EL片段可依赖于该标识符,并且可(例如,需要)由接收器(例如,播放器)接收以解码和/或显示EL片段。
(例如,唯一)标识符、比特率、质量级别、表示之间的关系信息可分别对应于以下DASH属性:@id、@bandwidth、@qualityRanking、@dependancyId。在MPEG DASH MPD中,用于依赖性表示的@bandwidth属性可以是(例如,当前)表示的比特率与(例如,当前)表示可依赖的(例如,所有)表示的比特率之和。@dependancyId属性可以是例如(例如,唯一)标识符(例如,@id)的以空格分隔的值的列表。
根据实施方案,接收器接收描述视频内容的清单文件,并且可基于包括在清单文件中的表示特征来确定要请求的BL和EL片段(例如,经由其对应的比特率、(例如,唯一)标识符、以及表示(例如,层片段)之间的关系信息)。
根据实施方案,清单可作为(例如,比特流)信号被传输(和/或接收),包括:
-视频的第一片段的第一标识符;
-第一信息元素,所述第一信息元素指示对所述第一片段进行编码的第一比特率;
-所述视频的第二片段的第二标识符;
-第二信息元素,所述第二信息元素指示对所述第二片段进行编码的第二比特率;
-所述视频的第三片段的第三标识符;
-第三信息元素,所述第三信息元素指示对所述第三片段进行编码的第三比特率;
-第四信息元素,所述第四信息元素指示所述第二片段对所述第一片段的依赖性;
其中
-所述第一片段、所述第二片段和所述第三片段对应于所述视频的相同时间部分,并且
-所述第三比特率低于或等于所述第一比特率与所述第二比特率之和。
根据实施方案,接收器接收如例如上文所述的清单文件,并且可请求例如由清单的第一标识符识别的BL片段。接收器可基于指示第二(EL)片段对第一(BL)片段的依赖性的清单的第四信息元素,来确定对应于与所请求的BL片段相同的视频的时间部分的EL层。接收器可请求(例如,发送请求传输其的数据包)该EL片段来探测可用带宽。如果EL片段被及时接收,则接收器可确定请求哪个后续BL片段。后续BL片段可至少基于其比特率(低于或等于前述BL和EL片段的比特率之和)来确定。
图4A示出了根据实施方案的用于接收视频的处理设备4A。处理设备4A可包括用于连接到网络的网络接口40,网络接口40被配置为发送(例如,传输)用于请求视频的片段的请求数据包,并且接收包括所请求的片段的响应数据包。根据实施方案,网络接口40可以是以下项中的任一项:
-无线局域网接口,诸如蓝牙、任何形式的Wi-Fi或IEEE 802系列网络接口的任何种类的无线接口;
-有线LAN接口,诸如以太网、IEEE 802.3或IEEE 802系列网络接口的任何有线接口;
-有线总线接口,诸如USB、FireWire或任何种类的有线总线技术。
-宽带蜂窝无线网络接口,如符合其任何版本的3GPP规范的2G/3G/4G/5G蜂窝无线网络接口;
-广域网接口,如xDSL、FFTx或WiMAX接口。
更一般地,任何允许发送和接收数据和/或控制数据包的网络接口都可与本文所述的实施方案兼容。
根据实施方案,网络接口40可耦接到处理模块42,该处理模块被配置为请求(例如,向网络接口40发送用于请求的数据包)以第一基础层比特率编码的基础层片段和对应于视频的相同时间部分的增强层片段,该增强层片段被请求以比基础层片段更低的优先级传递。处理模块42可进一步被配置为请求视频的后续部分的基础层后续片段,在第一增强层片段在处理设备4A和耦接到处理设备4A的外部显示元件中的任一者上被及时接收(例如,被及时接收以进行解码和显示)的条件下,该基础层后续片段以高于第一基础层比特率的第二基础层比特率被请求。根据实施方案,处理模块42可进一步被配置为处理(例如,解码)所接收的视频片段,并且将经解码的视频发送到诸如显示元件的视频输出装置44。根据实施方案,显示元件可位于设备外部,并且输出装置44可将要显示的视频发送到外部显示元件。根据实施方案,内部或外部显示元件可以是个人计算机屏幕、TV屏幕、平板电脑屏幕、智能电话屏幕中的任一者。更一般地,任何允许显示视频的显示元件都可与本文所述的实施方案兼容。
图4B示出了根据实施方案的用于传输视频的处理设备4B。处理设备4B可包括用于连接到网络的网络接口45,网络接口45被配置为接收请求视频片段的请求数据包,并且发送(例如,传输)包括所请求视频片段的响应数据包。根据实施方案,网络接口45可以是以下项中的任一项:
-无线局域网接口,诸如蓝牙、任何形式的Wi-Fi或IEEE 802系列网络接口的任何种类的无线接口;
-有线LAN接口,诸如以太网、IEEE 802.3或IEEE 802系列网络接口的任何有线接口;
-有线总线接口,诸如USB、FireWire或任何种类的有线总线技术。
-宽带蜂窝无线网络接口,如符合其任何版本的3GPP规范的2G/3G/4G/5G蜂窝无线网络接口;
-广域网接口,如xDSL、FFTx或WiMAX接口。
更一般地,任何允许发送和接收数据和/或控制数据包的网络接口都可与本文所述的实施方案兼容。
根据实施方案,网络接口45可耦接到处理模块46,该处理模块被配置为从网络接口45接收对以第一基础层比特率编码的基础层片段和以增强层比特率编码的增强层片段的请求,该基础层片段和增强层片段对应于视频的相同时间部分。处理模块46可进一步被配置为向网络接口45发送基础层片段和增强层片段以用于传输,该增强层片段以比基础层片段更低的优先级被传输。处理模块46可进一步被配置为在接收到对视频的后续部分的基础层后续片段的进一步请求时,发送以传输以第二基础层比特率编码的基础层后续片段,该第二基础层比特率低于或等于第一基础层比特率与增强层比特率之和。
根据实施方案,处理模块46可耦接到任选的视频编码器47,该任选的视频编码器被配置为对不同编码比特率的视频片段进行编码。视频编码器47可被配置为根据本文所述的任何实施方案对视频的任何时间部分的基础层和增强层片段中的任一者进行编码。
根据实施方案,处理模块46可耦接到任选的存储模块48,该任选的存储模块被配置为存储以不同编码比特率编码的视频片段。视频编码器可被配置为根据本文所述的任何实施方案对视频的任何时间部分的基础层和增强层片段中的任一者进行存储。根据实施方案,存储模块48可位于处理设备4B的内部或外部。根据实施方案,存储模块48可以是任何非暂态数字数据载体,例如RAM、ROM、EPROM、SD卡、硬盘驱动器、CD-ROM、DVD等中的任一者。
图4C表示根据实施方案的本文所述的处理设备4A、4B的示例性架构。处理设备44B可包括一个或多个处理器410以及内部存储器420(例如,RAM、ROM、EPROM中的任一者),该一个或多个处理器可以是例如CPU、GPU、DSP(数字信号处理器的英文首字母缩写)中的任一者。处理设备4A、4B可包括任何数量的输入/输出接口430(例如键盘、鼠标、触控板、网络摄像头、显示器中的任一者),其适于发送输出信息并且/或者允许用户输入命令和/或数据,并且/或者通过网络接口发送/接收数据;和可位于处理设备4A、4B外部的电源440。
根据实施方案,处理设备4A、4B还可包括存储在存储器420中的计算机程序。计算机程序可包括指令,该指令在由处理设备4A、4B特别是由处理器410执行时,使得处理设备4A、4B执行参考图2描述的处理方法。根据变型,计算机程序可在处理设备4A、4B的外部存储在非暂态数字数据载体上,例如存储在外部存储介质上,诸如SD卡、HDD、CD-ROM、DVD、只读和/或DVD驱动器、DVD读/写驱动器中任一者,所有这些都是本领域已知的。处理设备4A、4B可包括接口以读取计算机程序。另外,处理设备4A、4B可通过对应的USB端口(未示出)访问任何数量的通用串行总线(USB)型存储设备(例如,“记忆棒”)。
根据实施方案,处理设备4A可以是以下项中的任一项:机顶盒设备、电视机、数字媒体播放器/渲染器设备、因特网网关、移动设备、通信设备、游戏设备、平板电脑(或平板计算机)、智能电话、膝上型计算机、台式计算机。
根据实施方案,处理设备4B可以是以下项中的任一项:(例如,一组)服务器(例如CDN)、台式计算机、膝上型计算机、有线或无线接入点、因特网网关、路由器、笔记本电脑、联网设备。
在第一方面,公开了一种用于接收视频的方法。所述方法包括:
-请求以第一基础层比特率编码的基础层片段和对应于视频的相同时间部分的增强层片段,该增强层片段的优先级低于基础层片段的优先级;
-请求视频的后续部分的基础层后续片段,在第一增强层片段被及时接收(例如,被及时接收以进行解码和呈现)的条件下,该基础层后续片段以高于第一基础层比特率的第二基础层比特率被请求。
在另一方面,公开了一种用于传输视频的方法。所述方法包括:
-接收对以第一基础层比特率编码的基础层片段和以增强层比特率编码的增强层片段的请求,所述基础层片段和所述增强层片段对应于所述视频的相同时间部分;
-传输所述基础层片段和所述增强层片段,所述增强层片段以比所述基础层片段更低的优先级被传输;
-在接收到对所述视频的后续部分的基础层后续片段的进一步请求时,传输以第二基础层比特率编码的所述基础层后续片段,所述第二基础层比特率低于或等于所述第一基础层比特率与所述增强层比特率之和。
在另一方面,公开了一种用于接收视频的装置。所述装置包括处理器,所述处理器被配置为:
-请求以第一基础层比特率编码的基础层片段和对应于所述视频的相同时间部分的增强层片段,所述增强层片段被请求以比所述基础层片段更低的优先级传递;
-请求所述视频的后续部分的基础层后续片段,在所述第一增强层片段被所述装置及时接收(例如,被及时接收以由所述装置解码,并且在所述装置和耦接到所述装置的显示元件中的任一者上显示)的条件下,所述基础层后续片段以高于所述第一基础层比特率的第二基础层比特率被请求。
在另一方面,公开了一种用于传输视频的装置。所述装置包括处理器,所述处理器被配置为:
-接收对以第一基础层比特率编码的基础层片段和以增强层比特率编码的增强层片段的请求,所述基础层片段和所述增强层片段对应于所述视频的相同时间部分;
-传输所述基础层片段和所述增强层片段,所述增强层片段以比所述基础层片段更低的优先级被传输;
-在接收到对所述视频的后续部分的基础层后续片段的进一步请求时,传输以第二基础层比特率编码的所述基础层后续片段,所述第二基础层比特率低于或等于所述第一基础层比特率与所述增强层比特率之和。
在另一方面,公开了一种包含视频的比特流信号。所述比特流信号包括:
-以第一基础层比特率编码的视频的基础层片段;
-以增强层比特率编码的所述视频的增强层片段,所述基础层片段和所述增强层片段对应于所述视频的相同时间部分,所述增强层片段适于以比所述基础层片段更低的优先级被传输;
-所述视频的后续部分的基础层后续片段,所述基础层后续片段以第二基础层比特率编码,所述第二基础层比特率低于或等于所述第一基础层比特率与所述增强层比特率之和。
在一个变型中,如果增强层片段未被及时接收(例如,未被及时接收以进行解码和呈现),则可以第一基础层比特率请求基础层后续片段。
在另一个变型中,在一个以上的连续增强层片段被及时接收(例如,被及时接收以进行解码和呈现)的进一步的条件下,可以第二基础层比特率请求基础层后续片段。
在又一个变型中,可以第一增强层比特率对增强层片段进行编码,该第一增强层比特率与第一基础层比特率之和大于或等于第二基础层比特率。
在又一个变型中,可以第一增强层比特率对增强层片段进行编码,该第一增强层比特率与第一基础层比特率之和等于第二基础层比特率。
在又一个变型中,该(请求、传输中的任一者)方法还包括请求至少一个另外的增强层片段,该至少一个另外的增强层片段对应于与基础层片段相同的视频的时间部分,该另外的增强层片段被请求以比增强层片段更低的优先级传递。
在又一个变型中,如果至少一个另外的增强层片段被及时接收(例如,被及时接收以进行解码和呈现),则以第三基础层比特率请求基础层后续片段,该另外的增强层片段以第二增强层比特率编码,第一增强层比特率、第二增强层比特率和第一基础层比特率之和大于或等于第三基础层比特率。
在又一个变型中,该(请求、传输中的任一者)方法还包括请求多个增强层片段,该多个增强层片段对应于与基础层片段相同的视频的时间部分,增强层片段被请求以递减的优先级传递。
在又一个变型中,如果增强层片段的子集被及时接收(例如,被及时接收以进行解码和呈现),则以第四基础层比特率请求基础层后续片段,被及时接收的增强层片段的比特率与第一基础层比特率之和大于或等于第四基础层比特率。
在另一方面,也公开了一种包括描述视频的视频片段的特征的清单的比特流信号。所述比特流信号包括:
-所述视频的第一片段的第一标识符;
-第一信息元素,所述第一信息元素指示对所述第一片段进行编码的第一比特率;
-所述视频的第二片段的第二标识符;
-第二信息元素,所述第二信息元素指示对所述第二片段进行编码的第二比特率;
-所述视频的第三片段的第三标识符;
-第三信息元素,所述第三信息元素指示对所述第三片段进行编码的第三比特率;
-第四信息元素,所述第四信息元素指示所述第二片段对所述第一片段的依赖性;
其中
-所述第一片段、所述第二片段和所述第三片段对应于所述视频的相同时间部分,并且
所述第三比特率低于或等于所述第一比特率与所述第二比特率之和。
在一个变型中,接收比特流信号,并且基于所接收的比特流来确定增强层片段和基础层后续片段中的任一者。
在另一方面,也公开了一种计算机程序产品。该计算机程序产品包括程序代码指令,这些程序代码指令可由处理器执行以用于执行在其任何变型中实现的接收和传输方法中的任一者。
在另一方面,也公开了一种计算机程序产品。该计算机程序产品包括程序代码指令,这些程序代码指令可由处理器执行以用于执行在其任何变型中实现的接收和传输中的任一者。
虽然未明确描述,但本发明的实施方案可以任何组合或子组合采用。例如,针对接收方法和/或装置描述的变型同样适用于传输方法和/或装置,和/或比特流信号。本文所述的实施方案不限于所述变型,并且可使用变型和实施方案的任何布置。此外,本文所述的实施方案不限于所述可扩展/不可扩展视频编码/解码方法和ABR流式传输技术。任何其他类型的可扩展编码/解码和/或ABR流式传输方法都与本文所述的实施方案兼容。
而且,针对方法描述的任何特征、变型或实施方案都与以下项兼容:包括用于处理所公开的方法的元件的装置设备、包括被配置为处理所公开的方法的处理器的设备、包括程序代码指令的计算机程序产品以及存储程序指令的非暂态计算机可读存储介质。

Claims (15)

1.一种用于接收视频的方法,所述方法包括:
-请求(S22)以第一基础层比特率(BR1)编码的基础层片段(31,31C)和对应于所述视频的相同时间部分(C)的增强层片段(311,311C),所述增强层片段的优先级低于所述基础层片段(31,31C)的优先级;
-请求所述视频的后续部分(D)的基础层后续片段(31D),在所述第一增强层片段(311C)被及时接收以进行解码和呈现的条件下,所述基础层后续片段(31D)以高于所述第一基础层比特率(BR1)的第二基础层比特率(BR2)被请求。
2.根据权利要求1所述的方法,其中如果所述增强层片段未被及时接收以进行解码和呈现,则以所述第一基础层比特率(BR1)请求所述基础层后续片段(31D’)。
3.根据权利要求1至2中任一项所述的方法,其中在一个以上的连续增强层片段(311B,311C)被及时接收以进行解码和呈现的进一步条件下,以所述第二基础层比特率(BR2)请求所述基础层后续片段(31D)。
4.根据权利要求1至3中任一项所述的方法,其中以第一增强层比特率(BR11)对所述增强层片段(311,311B,311C)进行编码,所述第一增强层比特率(BR11)与所述第一基础层比特率(BR1)之和大于或等于所述第二基础层比特率(BR2)。
5.根据权利要求1至4中任一项所述的方法,所述方法还包括请求至少一个另外的增强层片段,所述至少一个另外的增强层片段对应于与所述基础层片段相同的所述视频的时间部分,所述另外的增强层片段被请求以比所述增强层片段更低的优先级传递。
6.根据权利要求5所述的方法,其中如果所述至少一个另外的增强层片段被及时接收以进行解码和呈现,则以第三基础层比特率请求所述基础层后续片段,所述另外的增强层片段以第二增强层比特率编码,所述第一增强层比特率、所述第二增强层比特率和所述第一基础层比特率之和大于或等于所述第三基础层比特率。
7.一种比特流,所述比特流包括:
-视频的第一片段的第一标识符;
-第一信息元素,所述第一信息元素指示以其对所述第一片段进行编码的第一比特率;
-所述视频的第二片段的第二标识符;
-第二信息元素,所述第二信息元素指示以其对所述第二片段进行编码的第二比特率;
-所述视频的第三片段的第三标识符;
-第三信息元素,所述第三信息元素指示以其对所述第三片段进行编码的第三比特率;
-第四信息元素,所述第四信息元素指示所述第二片段对所述第一片段的依赖性;
其中
-所述第一片段、所述第二片段和所述第三片段对应于所述视频的相同时间部分,并且
所述第三比特率低于或等于所述第一比特率与所述第二比特率之和。
8.一种用于接收视频的装置,所述装置包括处理器,所述处理器被配置为:
-请求以第一基础层比特率编码的基础层片段和对应于所述视频的相同时间部分的增强层片段,所述增强层片段被请求以比所述基础层片段更低的优先级传递;
-请求所述视频的后续部分的基础层后续片段,在所述第一增强层片段被所述装置及时接收以进行解码和呈现的条件下,所述基础层后续片段以高于所述第一基础层比特率的第二基础层比特率被请求。
9.根据权利要求1至6中任一项所述的方法,或根据权利要求8所述的装置,其中接收根据权利要求7所述的比特流,并且基于所接收的比特流来确定所述增强层片段和所述基础层后续片段中的任一者。
10.一种用于传输视频的方法,所述方法包括:
-接收对以第一基础层比特率编码的基础层片段和以增强层比特率编码的增强层片段的请求,所述基础层片段和所述增强层片段对应于所述视频的相同时间部分;
-传输所述基础层片段和所述增强层片段,所述增强层片段以比所述基础层片段更低的优先级被传输;
-在接收到对所述视频的后续部分的基础层后续片段的进一步请求时,传输以第二基础层比特率编码的所述基础层后续片段,所述第二基础层比特率低于或等于所述第一基础层比特率与所述增强层比特率之和。
11.一种用于传输视频的装置,所述装置包括处理器,所述处理器被配置为:
-接收对以第一基础层比特率编码的基础层片段和以增强层比特率编码的增强层片段的请求,所述基础层片段和所述增强层片段对应于所述视频的相同时间部分;
-传输所述基础层片段和所述增强层片段,所述增强层片段以比所述基础层片段更低的优先级被传输;
-在接收到对所述视频的后续部分的基础层后续片段的进一步请求时,传输以第二基础层比特率编码的所述基础层后续片段,所述第二基础层比特率低于或等于所述第一基础层比特率与所述增强层比特率之和。
12.根据权利要求11所述的装置,所述装置还包括编码器,所述编码器被配置为:
-以所述第一基础层比特率对所述基础层片段进行编码;
-以所述增强层比特率对所述增强层片段进行编码;
-以所述第二基础层比特率对所述基础层后续片段进行编码。
13.根据权利要求11所述的装置,所述装置还包括设备,所述设备被配置为:
-存储以所述第一基础层比特率编码的所述基础层片段;
-存储以所述增强层比特率编码的所述增强层片段;
-存储以所述第二基础层比特率编码的所述基础层后续片段。
14.一种比特流,所述比特流包括:
-以第一基础层比特率编码的视频的基础层片段;
-以增强层比特率编码的所述视频的增强层片段,所述基础层片段和所述增强层片段对应于所述视频的相同时间部分,所述增强层片段适于以比所述基础层片段更低的优先级被传输;
-所述视频的后续部分的基础层后续片段,所述基础层后续片段以第二基础层比特率编码,所述第二基础层比特率低于或等于所述第一基础层比特率与所述增强层比特率之和。
15.一种计算机程序产品,所述计算机程序产品包括程序代码指令,所述程序代码指令能够由处理器执行以用于执行根据权利要求1至9中任一项所述的方法或根据权利要求10所述的方法。
CN202080076860.7A 2019-10-15 2020-10-15 用于发送和接收视频的方法和装置 Active CN114902685B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP19315125.5 2019-10-15
EP19315125 2019-10-15
PCT/EP2020/078989 WO2021074269A1 (en) 2019-10-15 2020-10-15 Method and apparatuses for sending and receiving a video

Publications (2)

Publication Number Publication Date
CN114902685A true CN114902685A (zh) 2022-08-12
CN114902685B CN114902685B (zh) 2024-03-22

Family

ID=68581727

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080076860.7A Active CN114902685B (zh) 2019-10-15 2020-10-15 用于发送和接收视频的方法和装置

Country Status (5)

Country Link
US (1) US20230254533A1 (zh)
EP (1) EP4046386A1 (zh)
KR (1) KR20220075401A (zh)
CN (1) CN114902685B (zh)
WO (1) WO2021074269A1 (zh)

Citations (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6292512B1 (en) * 1998-07-06 2001-09-18 U.S. Philips Corporation Scalable video coding system
US20050117641A1 (en) * 2003-12-01 2005-06-02 Jizheng Xu Enhancement layer switching for scalable video coding
WO2006080655A1 (en) * 2004-10-18 2006-08-03 Samsung Electronics Co., Ltd. Apparatus and method for adjusting bitrate of coded scalable bitsteam based on multi-layer
CN101053215A (zh) * 2004-11-05 2007-10-10 皇家飞利浦电子股份有限公司 用于在QoS使能的WLAN上传输分层视频的系统和方法
EP2034736A1 (en) * 2007-09-07 2009-03-11 Nokia Siemens Networks Oy Method and device for processing data and communication system comprising such device
US20100158134A1 (en) * 2005-09-29 2010-06-24 Peng Yin Method and Apparatus for Contrained Variable Bit Rate (VBR) Video Encoding
US20110103445A1 (en) * 2008-07-16 2011-05-05 Peter Jax Method and apparatus for synchronizing highly compressed enhancement layer data
EP2360923A1 (en) * 2010-02-24 2011-08-24 Thomson Licensing Method for selectively requesting adaptive streaming content and a device implementing the method
CN102316313A (zh) * 2010-06-29 2012-01-11 凌阳科技股份有限公司 嵌入式实时视频压缩系统中的低复杂度的比特率控制方法
EP2408205A1 (en) * 2010-07-12 2012-01-18 Alcatel Lucent A video server, video client and method of scalable encoding video files
CN102469072A (zh) * 2010-11-08 2012-05-23 华为技术有限公司 流媒体服务方法、系统及客户端
US20120254455A1 (en) * 2011-03-30 2012-10-04 Verizon Patent And Licensing Inc. Downloading video using excess bandwidth
CN102763450A (zh) * 2010-02-11 2012-10-31 上海贝尔股份有限公司 中继网络中的可分级编码流的传输方法和设备
CN103210642A (zh) * 2010-10-06 2013-07-17 数码士有限公司 在http流送期间发生表达切换时传送用于自然再现的可缩放http流的方法
US20140032719A1 (en) * 2012-07-30 2014-01-30 Shivendra Panwar Streamloading content, such as video content for example, by both downloading enhancement layers of the content and streaming a base layer of the content
WO2017141001A1 (en) * 2016-02-15 2017-08-24 V-Nova Limited Dynamically adaptive bitrate streaming
US20180007395A1 (en) * 2015-01-12 2018-01-04 Nokia Technologies Oy A Method, An Apparatus and a Computer Readable Storage Medium for Video Streaming
WO2018115572A2 (en) * 2016-12-22 2018-06-28 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
CN108900518A (zh) * 2018-07-09 2018-11-27 南京邮电大学 可信的软件定义云网络数据分发系统
US20180359297A1 (en) * 2015-12-04 2018-12-13 Telefonaktiebolaget Lm Ericsson (Publ) Technique for adaptive streaming of temporally scaling media segment levels
US20190182518A1 (en) * 2016-08-09 2019-06-13 V-Nova International Limited Adaptive content delivery network

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2375680A1 (en) * 2010-04-01 2011-10-12 Thomson Licensing A method for recovering content streamed into chunk

Patent Citations (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6292512B1 (en) * 1998-07-06 2001-09-18 U.S. Philips Corporation Scalable video coding system
US20050117641A1 (en) * 2003-12-01 2005-06-02 Jizheng Xu Enhancement layer switching for scalable video coding
WO2006080655A1 (en) * 2004-10-18 2006-08-03 Samsung Electronics Co., Ltd. Apparatus and method for adjusting bitrate of coded scalable bitsteam based on multi-layer
CN101053215A (zh) * 2004-11-05 2007-10-10 皇家飞利浦电子股份有限公司 用于在QoS使能的WLAN上传输分层视频的系统和方法
US20100158134A1 (en) * 2005-09-29 2010-06-24 Peng Yin Method and Apparatus for Contrained Variable Bit Rate (VBR) Video Encoding
EP2034736A1 (en) * 2007-09-07 2009-03-11 Nokia Siemens Networks Oy Method and device for processing data and communication system comprising such device
US20110103445A1 (en) * 2008-07-16 2011-05-05 Peter Jax Method and apparatus for synchronizing highly compressed enhancement layer data
CN102763450A (zh) * 2010-02-11 2012-10-31 上海贝尔股份有限公司 中继网络中的可分级编码流的传输方法和设备
EP2360923A1 (en) * 2010-02-24 2011-08-24 Thomson Licensing Method for selectively requesting adaptive streaming content and a device implementing the method
CN102316313A (zh) * 2010-06-29 2012-01-11 凌阳科技股份有限公司 嵌入式实时视频压缩系统中的低复杂度的比特率控制方法
EP2408205A1 (en) * 2010-07-12 2012-01-18 Alcatel Lucent A video server, video client and method of scalable encoding video files
CN103210642A (zh) * 2010-10-06 2013-07-17 数码士有限公司 在http流送期间发生表达切换时传送用于自然再现的可缩放http流的方法
CN102469072A (zh) * 2010-11-08 2012-05-23 华为技术有限公司 流媒体服务方法、系统及客户端
US20120254455A1 (en) * 2011-03-30 2012-10-04 Verizon Patent And Licensing Inc. Downloading video using excess bandwidth
US20140032719A1 (en) * 2012-07-30 2014-01-30 Shivendra Panwar Streamloading content, such as video content for example, by both downloading enhancement layers of the content and streaming a base layer of the content
US20180007395A1 (en) * 2015-01-12 2018-01-04 Nokia Technologies Oy A Method, An Apparatus and a Computer Readable Storage Medium for Video Streaming
US20180359297A1 (en) * 2015-12-04 2018-12-13 Telefonaktiebolaget Lm Ericsson (Publ) Technique for adaptive streaming of temporally scaling media segment levels
WO2017141001A1 (en) * 2016-02-15 2017-08-24 V-Nova Limited Dynamically adaptive bitrate streaming
US20190182518A1 (en) * 2016-08-09 2019-06-13 V-Nova International Limited Adaptive content delivery network
WO2018115572A2 (en) * 2016-12-22 2018-06-28 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
CN108900518A (zh) * 2018-07-09 2018-11-27 南京邮电大学 可信的软件定义云网络数据分发系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
RAF HUYSEGEMS 等: "SVC-Based HTTP Adaptive Streaming", 《BELL LABS TECHNICAL JOURNAL》, vol. 16, no. 4, XP055263181, DOI: 10.1002/bltj.20532 *
黄韬;张丽;张云勇;刘韵洁;: "基于OpenFlow的SVC流媒体时延自适应分级传输方法", 通信学报, no. 11 *

Also Published As

Publication number Publication date
CN114902685B (zh) 2024-03-22
KR20220075401A (ko) 2022-06-08
EP4046386A1 (en) 2022-08-24
WO2021074269A1 (en) 2021-04-22
US20230254533A1 (en) 2023-08-10

Similar Documents

Publication Publication Date Title
US11677799B2 (en) Client feedback enhanced methods and devices for efficient adaptive bitrate streaming
KR102110627B1 (ko) 적응적 비트레이트 스트리밍에서 대역폭 할당을 위한 방법들 및 디바이스들
US9332050B2 (en) Media streaming with adaptation
TWI526062B (zh) 用於透過http動態適應串流(dash)的串流之品質查知率適應技術
US7668170B2 (en) Adaptive packet transmission with explicit deadline adjustment
US8837586B2 (en) Bandwidth-friendly representation switching in adaptive streaming
US10355998B2 (en) Adaptive video over multicast
US7652994B2 (en) Accelerated media coding for robust low-delay video streaming over time-varying and bandwidth limited channels
US20070067480A1 (en) Adaptive media playout by server media processing for robust streaming
JP6080951B2 (ja) 円滑な品質遷移を可能にする適応ストリーミングアウェアノード、エンコーダ及びクライアント
US10491964B2 (en) Assisted acceleration for video streaming clients
CN107210999B (zh) 链路感知流送自适应
JP2004525556A (ja) ストリーミングされたメディアをバッファリングする方法及びシステム
EP2993911A1 (en) Method and client terminal for receiving a multimedia content split into at least two successive segments, and corresponding computer program product and computer-readable medium
US10063902B2 (en) ABR network profile selection engine
US10419581B2 (en) Data cap aware video streaming client
van der Hooft et al. An HTTP/2 push-based approach for SVC adaptive streaming
US20160050243A1 (en) Methods and devices for transmission of media content
CN114902685B (zh) 用于发送和接收视频的方法和装置
US11374998B1 (en) Adaptive bitrate streaming stall mitigation
US11871079B2 (en) Client and a method for managing, at the client, a streaming session of a multimedia content
Shuai Dynamic adaptive video streaming with minimal buffer sizes

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