本文描述了一种用于控制客户端设备上的媒体数据播放的方法,其中,该方法包括以下步骤:(a)由客户端设备从至少一个媒体服务器取得包括多个片段的媒体数据以供播放,该多个片段被细分为一个或多个块;(b)分析当前片段的一个或多个块中的当前块;以及(c)在完全取得该当前块之前响应于分析的结果来调整媒体数据的播放。本文进一步描述了一种已实施被配置为执行所述方法的媒体播放器应用程序的客户端设备,以及一种具有被适配成使具有处理能力的设备执行所述方法的指令的计算机程序产品。的设备执行所述方法的指令的计算机程序产品。的设备执行所述方法的指令的计算机程序产品。
【技术实现步骤摘要】
【国外来华专利技术】用于媒体内容的自适应播放的方法和设备
[0001]相关申请的交叉引用
[0002]本申请要求以下优先申请的优先权:于2020年2月4日提交的美国临时申请62/969,817(参考号:D18115USP1)和于2020年2月4日提交的欧洲申请20155381.5(参考号:D18115EP),这些申请通过引用并入本文。
[0003]本公开总体上涉及一种用于控制客户端设备上的媒体数据播放的方法,并且更具体地涉及在完全取得当前块之前响应于对所述当前块的分析结果来调整媒体数据的播放。
[0004]尽管本文将尤其参考该公开内容来描述一些实施例,但是将理解的是,本公开不限于这种使用领域,并且可应用于更广泛的背景下。
技术介绍
[0005]在整个公开内容中对
技术介绍
的任何讨论绝不应视为承认这种技术是本领域众所周知的或形成本领域公知常识的一部分。
[0006]超文本传输协议(HTTP)代表了用于经由因特网流式传输媒体内容的标准化协议的示例。例如,在HTTP自适应流式传输(HAS)中,可以使用两种格式,即苹果公司实施的HTTP实时流式传输(HLS)格式以及MPEG DASH格式。然而,这两种格式都会增加实时流的时延。
[0007]为了减少时延,例如,当将实时媒体内容从服务器流式传输到客户端时,传统的流式传输客户端通常等到取得完整的媒体片段,然后再决定最终调整下载质量和/或播放速率。减少时延的另一种方法是应用分块传输编码。在分块传输编码中,流中的媒体数据被表示为细分为非重叠块的片段。一个或多个块彼此独立地发送和接收。换言之,在任何给定时间,发送方和接收方都不需要知道除了当前正在处理的(当前)块之外的媒体数据流。
[0008]在分块传输编码的上下文中开发的媒体数据容器是CMAF(通用媒体应用格式)容器格式,该CMAF容器格式可以应用于HAS格式、HLS和MPEG DASH。与传统的流式传输方法相比,CMAF容器格式实施了更低的时延模式。
[0009]然而,仍然存在对这样的方法和设备的需求,使得流式传输客户端的回放机制以更高效的方式调整流式传输的媒体内容的播放,以在编码效率、绝对时延和播放稳定性之间达到更好的折衷。
技术实现思路
[0010]根据本公开的第一方面,提供了一种用于控制客户端设备上的媒体数据播放的方法。该方法可以包括以下步骤:(a)由客户端设备从至少一个媒体服务器取得包括多个片段的媒体数据以供播放,该多个片段被细分为一个或多个块。该方法可以进一步包括以下步骤:(b)分析当前片段的一个或多个块中的当前块。并且该方法可以包括以下步骤:(c)在完全取得该当前块之前响应于分析的结果来调整媒体数据的播放。
[0011]通过如上所述的配置,所描述的方法允许流式传输客户端的回放机制在已完全取
得媒体数据片段或块(例如,比如CMAF块)之前调整媒体数据的播放。因此,流式传输的媒体内容的消费者所经历的绝对时延可以有效地减少,因为在已经完全取得(下载)媒体数据片段或块之前,播放调整所需的信息已经可用于流式传输客户端。
[0012]在一些实施例中,一个或多个块中的每一个可以包括至少两个IP分组,并且在步骤(b)中分析当前块和在步骤(c)中调整媒体数据的播放可以在完全取得该当前块内的该至少两个IP分组之前执行。
[0013]在一些实施例中,在步骤(b)中分析当前块可以包括至少分析该当前块内的该至少两个IP分组中的第一个IP分组。
[0014]在HTTP/TCP/IP流式传输的上下文中,媒体数据片段或块的大小通常在第一个(前几个)IP分组中指示。通过如上所述的配置,因此,在已完全取得(下载)媒体数据片段或块之前,关于该媒体数据片段或块的大小的信息已经可用于流式传输客户端。例如,根据所确定的媒体数据片段或块的大小,客户端的回放机制然后可以例如降低或提高其播放速率。
[0015]根据本公开的第二方面,提供了一种客户端设备,该客户端设备已实施了被配置为执行用于控制客户端设备上的媒体数据播放的方法的媒体播放器应用程序。
[0016]根据本公开的第三方面,提供了一种计算机程序产品,该计算机程序产品具有指令,该指令被适配成使具有处理能力的设备执行用于控制客户端设备上的媒体数据播放的方法。
附图说明
[0017]现在将参考附图仅通过举例来描述本公开的示例实施例,在附图中:
[0018]图1图示了CMAF(通用媒体应用格式)片段的示例,该CMAF片段被细分为包括IP分组的块。
[0019]图2图示了用于控制客户端设备上的媒体数据播放的方法的示例的流程图。
[0020]图3图示了用于控制客户端设备上的媒体数据播放的方法的另一示例的流程图。
[0021]图4图示了已实施媒体播放器应用程序的客户端设备的示例。
[0022]图5图示了具有处理能力的设备的示例。
具体实施方式
[0023]媒体内容的自适应播放
[0024]如本文所描述的方法和设备使得流式传输客户端的回放机制能够在已经完全取得当前传入的媒体数据片段或该媒体数据片段的传入块(例如CMAF块)之前,就已经根据例如该媒体数据片段或块的大小(例如,以字节为单位)来调整媒体数据的播放。因此可以有效地减少流式传输的媒体内容的消费者所经历的端到端时延(绝对时延),包括前导延迟。
[0025]在HTTP/TCP/IP流式传输的上下文中,媒体数据片段或块的大小通常在第一个(前几个)IP分组中指示。因此,在已经完全取得(下载)完整的媒体数据片段或块之前,关于该媒体数据片段或块的大小的信息已经可用于流式传输客户端。例如,在正在取得的媒体数据片段的大小将大于平均值(定义为标称下载速率(以kbps为单位)乘以媒体数据片段的持续时间)的情况下,客户端的回放机制可以例如降低该媒体数据片段的播放速率,以降低由空抖动缓冲区引起的重新缓冲事件的风险。在正在取得的媒体数据片段的大小将小于平均
值的情况下,客户端的回放机制可以例如提高该媒体数据片段的播放速率。
[0026]分块传输编码
[0027]如上所述,CMAF(通用媒体应用格式)是在分块传输编码的上下文中开发的容器格式,该容器格式可以结合HLS或MPEG DASH格式用于HTTP自适应流式传输(HAS)应用中。在应用CMAF容器格式时,可以将每个媒体数据片段细分为块,从而允许更早开始播放媒体内容。通过CMAF,在决定最终调整下载质量和/或播放速率之前,流式传输客户端可只等到取得到完整的块。然而,CMAF容器格式的应用是以增加片段大小(以kB为单位)为代价的,因为需要单独的报头来初始化流式传输客户端侧的块的回放。因此,虽然可以减少由对媒体数据的编码和传输引入的时延,但是由于片段大小增加,可能在流式传输客户端侧增加时延。
[0028]在图1中,图示了被细分为CMAF块的媒体数据片段的示例。在该示例中,媒体数据片段100被细分为4个CMAF块,即101、102、103、104。这4个CMAF块本文档来自技高网...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】1.一种用于控制客户端设备上的媒体数据播放的方法,其中,所述方法包括以下步骤:(a)由所述客户端设备从至少一个媒体服务器取得包括多个片段的媒体数据以供播放,所述多个片段被细分为一个或多个块;其中,所述取得包括将所述媒体数据从所述至少一个媒体服务器实时流式传输到所述客户端设备;(b)在正在取得当前片段的所述一个或多个块中的当前块但尚未完全取得所述当前块时,分析所述当前块的大小;以及(c)在完全取得所述当前块之前,响应于分析的结果来调整所述媒体数据的播放,其中,调整所述媒体数据的播放包括调整媒体质量和/或播放速率。2.根据权利要求1所述的方法,其中,所述一个或多个块中的每一个块包括至少两个IP分组,并且其中,在步骤(b)中分析所述当前块和在步骤(c)中调整所述媒体数据的播放是在完全取得所述当前块内的所述至少两个IP分组之前执行的。3.根据权利要求1或2所述的方法,其中,分析所述当前块的所述大小是通过分析所述当前块的报头来执行的。4.根据权利要求2至3中任一项所述的方法,其中,在步骤(b)中分析所述当前块包括至少分析所述当前块内的所述至少两个IP分组中的第一个IP分组。5.根据权利要求1至4中任一项所述的方法,其中,在步骤(c)中调整所述媒体数据的播放是基于一个或多个播放条件的。6.根据权利要求5所述的方法,其中,所述一个或多个播放条件包括指示用于取得所述媒体数据的网络的状态的网络条件中的一个或多个网络条件。7.根据权利要求6所述的方法,其中,所述网络条件包括可用网络带宽、以及指示所述客户端设备的状态的客户端条件。8.根据权利要求7所述的方法,其中,所述客户端条件包括所述客户端设备的...
【专利技术属性】
技术研发人员:J,
申请(专利权)人:杜比国际公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。