在媒体流的播出之间转变时转变帧的动态播出的制作方法

文档序号:21487042发布日期:2020-07-14 17:13阅读:151来源:国知局
在媒体流的播出之间转变时转变帧的动态播出的制作方法

相关申请的引用

本申请要求2018年11月7日提交的第16/183,185号美国专利申请以及2018年8月17日提交的第62/765,161号美国临时专利申请的优先权,所述专利申请中的每一个的全文特此以引用的方式并入本文中。

本申请还与2018年11月7日提交的第16/183,266号美国专利申请相关,所述专利申请的全文特此以引用的方式并入本文中。



背景技术:

典型的媒体客户端操作以接收和播出(例如,输出以供播出)表示例如视频和/或音频内容等媒体内容的模拟或数字媒体流,且输出所述媒体内容和/或转发所述流以供将内容呈现在例如显示屏和/或音频扬声器等用户接口上。此类客户端的实例包含电视机、计算机监视器、投影系统、扩音器、头戴受话器、机顶盒(例如线缆或卫星tv接收器)、数字视频记录器、无线电装置、个人计算机、游戏控制台、串流媒体播放器等。

借助于实例,媒体客户端可以是电视机,其可接收媒体流(例如,空中广播流、来自机顶盒的媒体流输出、从数字存储介质播放的媒体流、因特网流,或另一此类流),且可向用户呈现所述流的媒体内容。作为另一实例,媒体客户端可以是机顶盒或数字视频或音频记录器,其可从多信道视频节目分派器和/或从数据存储装置接收广播流,且可经由高清多媒体接口(hdmi)线缆或其它接口将所述流的媒体内容输出到电视机和/或音频/视频接收器以供播出。且作为又一实例,媒体客户端可以是扩音器或头戴受话器,其可从无线电装置、计算机或其它接收器或音频存储装置接收音频流,且可向用户呈现所述流的音频内容。大量其它实例也是可能的。



技术实现要素:

当媒体客户端正播出媒体流时,在特定情形中媒体客户端替代流的媒体内容的一部分可能是有用的。举例来说,如此可能是有用的:客户端用替代广告或用其它替代内容动态地替代媒体内容的广告或其它片段,使得当正向用户呈现内容时,用户将接收到替代广告而非最初包含的广告。

此外,可能需要客户端在媒体流内的特定时间点执行此内容替代。举例来说,如果客户端将要用替代广告动态地替代现有广告,则可能需要客户端在媒体流中现有广告原本将已开始的时间定位替代广告。

更确切地说,讨论中的媒体流可限定帧序列,例如视频帧和/或音频帧的序列,且可能需要客户端在媒体流的特定帧处开始执行内容替代。举例来说,对于广告替代,可能需要客户端在现有广告的第一帧处开始插入替代广告代替现有广告。

为促进此内容替代,客户端可习得媒体流中客户端应开始内容替代的特定时间点,且客户端可习得客户端应在所指示时间点处开始播放什么替代内容。在所要内容切换时间点处,客户端可随后从播出现有媒体流转变为播出作为替代媒体流的替代内容。此外,当客户端完成播出替代媒体流时,客户端可随后转变回到原始媒体流的播出(例如,在进行中)。

此过程的一个技术难点在于,客户端从播出第一流转变为播出第二流(例如,开始内容替代,或在内容替代结束时切换回到原始流)可能花费一些时间。情况如此是因为,客户端在其可开始播出第二流之前可能需要参与若干处理和存储器密集的步骤。举例来说,客户端可能需要清除高速缓冲存储器,接收和解码第二流的内容的至少初始部分,且用经解码内容填充存储器缓冲器以供再现。

在实践中,此流转变过程可能花费一帧以上的时间。举例来说,如果讨论中的媒体是每秒30帧的帧速率的视频,则每个帧将横跨1/30秒,即,约33.3毫秒(ms)。但从一个视频流转变到另一视频流的动作可能花费大约数百毫秒,因此横跨大量视频帧的时间。

尽管客户端可通过在所要内容切换时间点之前足够远开始其流转变过程来致力于考虑此时序,但转变过程将花费的实际时间量出于各种原因可能是不可预测的。因此,不能精确地清楚客户端应多早开始转变过程。

令人遗憾的是,如果客户端太早开始转变过程,则客户端可能在所要内容切换时间点之前完成过程,这可能引起用户体验问题,因为第二流的播出可能太早开始。并且如果客户端太迟开始转变过程,则客户端可能到所要内容切换时间点仍未完成过程,这同样可能引起用户体验问题,因为第二流的播出可能太迟开始。

为了帮助解决此问题,依据本公开,客户端可将其流转变过程配置为足够早开始以便促进在所要内容切换时间点开始播出第二流,且客户端将战略上引入转变帧持续不确定周期的持续时间(适当时或需要时连同淡变一起)以便帮助掩蔽转变且因此提供改进的用户体验。

为促进在所要内容切换时间点处开始播出第二流,客户端可确定(例如,依据过去的体验或测试,或依据预先提供的设定)最大预期转变持续时间可以是多久,且客户端可随后在时间点tstart处开始其流转变过程,所述时间点是所要内容切换时间点之前所述确定的最大预期转变持续时间。在所述时间点处开始,客户端应随后到作为所要内容切换时间点的时间点时间tmax最佳地完成流转变过程。

此外,客户端还可确定最小预期转变持续时间可以是多久(类似地依据过去的体验或测试或预先提供的设定),且客户端可借此依据客户端何时开始流转变过程而识别作为所述最小预期转变持续时间的时间点tmin。给定此条件,从tmin延长到tmax的时间范围可视为不确定周期,因为客户端可能在该范围内的任何时间完成其流转变过程。

为了帮助掩蔽流之间的转变,客户端可播出转变帧持续不确定周期的持续时间,即,从tmin到tmax。这些转变帧可采用取决于讨论中的媒体的类型的各种形式。举例来说,如果媒体包括视频,则转变帧可包括黑帧。而如果媒体包括音频,则转变帧可包括静默帧。此外,客户端可从第一流向转变帧中且接着从转变帧到第二流添加淡变。

此过程可借此帮助促进从一个流到另一流的时间准确切换,同时最小化或避免上文描述的相关联用户体验问题。

所属领域的一般技术人员通过适当地参考附图阅读以下详细描述将明白这些以及其它方面、优点和替代方案。此外,应理解,本发明内容及下文中提供的描述既定仅借助于实例说明本发明,但不作为限制。

附图说明

图1是其中可实施所公开特征的系统的简化框图。

图2是示出根据本公开添加了转变帧的流转变的图式。

图3是描绘可根据本公开实行的方法的流程图。

图4是描绘可根据本公开实行的方法的另一流程图。

图5是描绘可根据本公开操作的实例媒体客户端的组件的简化框图。

具体实施方式

参看图式,图1是其中可应用各种所公开的原理的实例系统的简化框图。然而,将理解,本文中所描述的此布置及过程以及其它布置及过程可采取各种其它形式。举例来说,元件和操作可重新排序、分派、复制、组合、省略、添加或以其它方式修改。此外,应理解,本文中描述为由一或多个实体实行的操作可由那些实体和/或代表那些实体经由硬件、固件和/或软件实施,例如通过一或多个处理单元执行程序指令等来实施。

如图1所示,实例系统包含被配置成从媒体源14实时接收媒体流的媒体客户端12。

媒体客户端12可被配置成如上文描述而操作以从媒体源14接收表示例如视频和/或音频内容等媒体内容的模拟或数字媒体流,且输出所述媒体内容和/或转发所述流以供将内容呈现在例如显示屏和/或音频扬声器等用户接口上。媒体客户端可采取上文描述的形式中的任一个,且存在其它可能性。

媒体源14还可采用各种形式,可能取决于媒体客户端12的形式。借助于实例,如果媒体客户端12为电视机,则媒体源14可以是本地机顶盒(例如,线缆或卫星接收器)或串流媒体服务器,其被配置成输出选定媒体流以供由电视机呈现,或者媒体源14可以是广播电视站点等,以及存在其它可能性。并且如果媒体客户端为计算机,则媒体源可包括因特网串流媒体服务器或其它媒体提供商。或者,媒体源14可以是与媒体客户端12集成和/或可由媒体客户端12本地访问的数据存储装置,其中媒体客户端从数据存储装置接收(例如,检索)媒体流用于播出,例如当客户端正播出媒体流或正转发媒体流用于播出时。其它实例也是可能的。

如图1中进一步展示,媒体客户端12可具有与网络(例如,因特网或专用网络)16的通信接口,媒体客户端可经由所述通信接口参与与一或多个服务器18的通信。服务器18可包含文件服务器、媒体服务器和/或其它类型的内容服务器等。此外,尽管媒体源14与服务器18分开展示,但媒体源14或者可与服务器18中的一或多者一起包含或集成,且可经由网络16访问。

如上所述,当例如客户端12等媒体客户端正接收和播出(例如,输出以供播出)媒体流时,客户端用限定替代流的替代内容替代所述流的一部分可能是有用的。此外,如上所述,可能需要客户端在媒体流内的特定时间点这样做。举例来说,如果流限定帧序列,例如视频帧和/或音频帧的序列,则可能需要客户端在所述序列的特定帧处开始执行内容替代。

在实践中,客户端可以各种方式习得(确定)媒体流中客户端应开始内容替代的特定目标时间点。

举例来说,客户端可被提供或者沿着媒体流或与媒体流相关联而接收识别媒体流内的每个帧或为所述每个帧加时戳(例如,内嵌于媒体流中或以其它方式经由流中信令提供的时戳)的数据集,以及指定内容替代即将开始的帧的身份或时戳的数据。基于所述数据,客户端可因此确定媒体流中即将开始内容替代的特定时间点。

或者,随着客户端接收和播出媒体流,客户端可与网络服务器一起工作以习得媒体流中即将开始内容替代的点,作为所要内容切换时间点。举例来说,服务器可首先识别正由客户端播出的媒体流。且在识别媒体流后,服务器可随后确定媒体流中客户端应开始内容替代的特定时间点,且可告知客户端所述所确定的时间点。

为了促进服务器识别正由客户端播出的媒体流,客户端(或可能辅助装置)可随着客户端接收所述流而实时产生表示媒体内容的数字指纹数据,且服务器可将所述指纹数据与表示已知媒体流的媒体内容的参考指纹数据进行比较,其中指纹匹配指示正由客户端播放的媒体流是所述已知媒体流。

服务器可建立或以其它方式能够访问表示已知媒体流的参考指纹数据。举例来说,服务器或相关联观测站点或其它实体可接收已知媒体流的广播,且在接收所述广播的同时可产生表示已知媒体流的帧的参考数字指纹序列。服务器或另一实体可通过以下方式建立这些参考指纹:以编程方式分析已知媒体流的帧,接收已知媒体流的副本作为输入,以及应用现在已知或以后开发的任何媒体指纹识别过程或算法来产生参考指纹。或服务器可以其它方式建立或被提供表示已知媒体流的此参考指纹序列。服务器可随后与已知媒体流的身份相关联而存储参考指纹。

此外,实时地,在客户端播出媒体流时,客户端可产生表示所述流的帧的查询指纹,且可将所述查询指纹发射到服务器以供分析。为促进指纹比较,客户端可使用应用于建立参考指纹的相同指纹识别过程或算法来产生这些查询指纹。此外,客户端可以特定帧速率产生查询指纹且可以群组形式将指纹发射到服务器。举例来说,对于包括每秒30帧视频的媒体流,客户端可能以大约每秒2帧的减小的帧速率产生查询指纹以帮助节省资源,且客户端可能每隔1.5秒左右将最新查询指纹群组发射到服务器。其它实例也是可能的。

随着服务器从客户端接收查询指纹数据,服务器可将查询指纹数据与已知媒体流的参考指纹数据进行比较。并且如果服务器借此以足够置信度确定查询指纹数据与参考指纹数据匹配,则服务器可得出结论,正由客户端播出的媒体流为已知媒体流。

服务器可以每帧为基础进行此指纹比较。考虑视频内容,举例来说,服务器可以每视频帧为基础进行分析,将帧的查询指纹对照帧的参考指纹进行比较。比较过程可采取多种形式中的任一个,这取决于指纹的结构。举例来说,所述比较可涉及计算指纹之间的最大偏差,并确定所述最大偏差是否在预定义容差内。此外,如果指纹为二进制的,则此可为布尔确定,且可涉及计算汉明距离(作为指纹中的相应位位置之间的失配的计数)。并且如果指纹是更复杂的值,例如小数值或向量(例如,每视频帧区的灰度值),则此可涉及确定值或向量之间的距离。大量其它实例也是可能的。

此外,服务器可以所要容差水平进行此指纹比较过程。举例来说,所述比较可以是粗略的,对于指纹之间的差异具有相对高容差,例如具有对于较大数目差异的容差和/或对于较大尺寸差异的容差。借助于实例,当将两个32位指纹彼此比较时,粗略比较可认为指纹彼此大体匹配,即使两个位或另一指定数目的位并不匹配。或者比较可以是更加精细的,对于此类差异具有较低容差,和/或比较聚焦于可能表示基本媒体的特定部分的特定指纹分量。

经由客户端产生的查询指纹与已知媒体流的参考指纹的此比较,服务器可借此找到一或多个匹配。举例来说,服务器可找到其中正由客户端播出的媒体流的帧的查询指纹与已知媒体流的帧的相应参考指纹匹配的一或多个例项。此匹配可因此达成或支持这样的结论:正由客户端播出的媒体流为已知媒体流。

或者,服务器可以其它方式识别讨论中的媒体流。举例来说,如果媒体流含有与媒体流的身份对应的水印数据,则客户端可读取或以其它方式提取水印数据且向服务器报告所述水印数据。并且服务器可随后使用所报告的水印数据作为基础来识别正由客户端接收的媒体流。举例来说,服务器可查阅使各种水印数据与特定已知媒体流相关的参考数据,以确定由客户端报告的水印数据与特定已知媒体流对应。

已经识别正由客户端播出的媒体流,服务器可随后确定媒体流中即将发生内容替代的时间点。举例来说,服务器可查阅指定已知媒体流内内容替代即将开始的时间点的参考数据。并且服务器可随后将指示所述时间点的指令发射到客户端。

由服务器的参考数据指定的替代时间点可以客户端可理解的方式限定。举例来说,如果沿着媒体流内限定的“真实时间”时间线向客户端提供为媒体流的每个帧加时戳的数据,则服务器具有的替代时间点可能是媒体流的即将来临的帧的真实时间时戳。服务器可因此向客户端提供真实时间时戳作为客户端应开始内容替代的时间的指示。

此外,客户端可将真实时间时戳映射到根据客户端的内部时钟限定的“客户端时间”,使得客户端可在其自身的时钟上确定其应开始内容替代的时间。举例来说,客户端可(i)计算当前帧的真实时间时戳和客户端的时钟上的当前时间之间的差,且(ii)将所述所确定的差施加到即将发生替代的即将来临的帧的所指示的真实时间时戳,以确定客户端应开始内容替代的客户端时间点。

或者,由服务器的参考数据指定的替代时间点可能以客户端不可理解的方式限定。举例来说,服务器具有的替代时间点可能是根据已知媒体流内的真实时间时间线限定的时戳,但客户端可能对于真实时间没有概念或了解。在这种情况下,服务器可参与在真实时间和客户端时间之间建立映射或“同步锁”的过程,且服务器随后将即将发生内容替代的真实时间时间点映射到对应的客户端时间时间点且将所述客户端时间时间点提供到客户端。

作为此情况的非限制性实例,考虑限定可能出现于电视广播内的广告荚的媒体流。广告荚包括广告序列,例如电视商业广告的序列。通过此实例,客户端可能是接收和播出特定电视频道的线性广播馈送的电视机,且广告荚可能出现于所述馈送内的任何时刻。举例来说,尤其在例如体育赛事等直播的情况下,广告荚在此馈送中出现的时间可能是不可预测的。或者,广告荚可出现于特定调度的时间。

在此实例中,所要内容替代可以是广告荚内特定广告的替代(例如,为所述广告替换不同的广告或其它替代内容)。举例来说,如果广告荚是广告序列a1、a2、a3、a4,那么所要内容替代可以是广告a3的替代。

在此情形下,广告荚可限定真实时间时间线,其开始于时间t=0且继续到广告荚的末尾,且广告a3可开始于所述时间线上的时间ta3。然而,客户端可能对所述时间线没有概念。客户端可具有其自身的内部时钟,所述内部时钟具有限定客户端时间的时间线(例如,当日时间或其它内部时间参考)。但在没有广告荚时间线存在于客户端时间内何处的提前知晓的情况下,仅给出值ta3作为所要内容修正时间点将不能使客户端能够在需要时开始广告替代。

在该情形中为了使服务器在真实时间和客户端时间之间建立同步锁,客户端可为客户端发送到服务器的查询指纹加时戳。确切地说,随着客户端播出媒体流并产生查询指纹,客户端可用当前客户端时间值为每一查询指纹加时戳。当服务器检测到查询指纹和已知媒体流的带时戳的参考指纹之间的一或多个匹配时,服务器可随后使用那些匹配点作为基础将真实时间映射到客户端时间。举例来说,基于至少一个此类检测到的匹配点,服务器可限定(i)匹配的参考指纹的真实时间时戳和(ii)匹配的查询指纹的客户端时间时戳之间的映射。

一旦服务器已经建立同步锁,服务器可随后使用所建立的同步锁将即将发生内容替代的真实时间时间点转译为即将发生内容替代的对应的客户端时间时间点。并且服务器可将所述所确定的客户端时间时间点发射到客户端,以使客户端能够在客户端正播出的媒体流中的所要时间点开始内容替代。

此外,在替代实施方案中,客户端而非服务器可实行建立过程并应用同步锁以便确定即将发生内容替代的客户端时间点。

举例来说,一旦服务器已经将媒体流识别为由客户端接收,则服务器可向客户端发射限定参考指纹的一些参考数据和已知媒体流的即将来临部分的真实时间时戳。客户端可随后进行查询指纹和参考指纹之间的指纹匹配以找到一或多个匹配点,且客户端可通过使至少一个匹配点的时戳类似地相关来建立真实时间和客户端时间之间的同步锁。一旦客户端已经建立同步锁,则客户端可随后使用同步锁作为基础将即将发生内容替代的所提供真实时间时间点转译为即将发生内容替代的对应的客户端时间时间点。

除确定媒体流中客户端应开始内容替代的特定目标时间点外,客户端还可以各种方式习得客户端应在所述时间点开始执行什么内容替代。

借助于实例,客户端可事先被预先提供内容替代在所指示时间点处开始的说明,例如客户端应用特定内容替换媒体流的现有内容的指示。或者,客户端可从服务器或另一实体接收执行内容替代的说明。举例来说,当服务器向客户端发射告知客户端媒体流中客户端即将开始内容修正的时间点的指令时,服务器可在到达客户端的所述指令中包含(或单独地提供)执行内容替代的说明。

在实践中,执行内容替代的说明可包括到客户端即将获得且即将插入以代替媒体流的现有内容或作为媒体流的现有内容的补充的替代内容的指针。举例来说,如上所述,所述说明可包括限定客户端可从其请求和接收替代内容的串流媒体服务器、文件服务器等的网络地址或与所述网络地址相关的统一资源定位符(url)。或者,所述说明可以另一方式指示客户端即将在何处和/或如何获得替代内容,以促进在媒体流中所指示时间点处开始执行内容替代。此外,所述说明可指示替代内容的持续时间,以告知客户端所述客户端应播放替代内容代替原始内容多长时间。

在即将开始内容替代的所指示时间点,客户端可因此从播出现有媒体流切换为播出替代内容作为替代媒体流。此外,在内容替代的末尾,客户端可随后切换回到播出原始媒体流(例如,在进行中)。

作为非限制性实例,再次考虑上文所论述的广告荚。在实践中,可向服务器提供表示和对应于广告荚的帧的带时戳的参考指纹。此外,可向服务器提供应替代广告荚中的广告中的一个特定广告的指示,以及用以促进所述广告替代的信息。举例来说,可向服务器提供现有广告的第一帧的真实时间点的指示、替代广告的url,和替代的持续时间的指示。

随着客户端接收和播出可含有此广告荚的线性广播馈送在进行中,或响应于一或多个其它触发,客户端可正产生广播馈送的带时戳的查询指纹且可正向服务器报告那些带时戳的查询指纹以供分析。将此类查询指纹与表示广告荚序列的帧的参考指纹进行比较,服务器可借此检测到客户端正播出广告荚序列。

已经确定客户端正播出广告荚序列,服务器可随后例如以上文所论述的方式将广告替代即将开始的帧的真实时间点转译为对应的客户端时间点,且可向客户端发射指令,所述指令指定所述客户端时间点,包含到客户端即将在所述客户端时间处开始用来替换媒体流的帧的替代广告的指针,且引导客户端执行所指示的内容替代。相应地,客户端可获得所指示的替代广告,且可在所指示的客户端时间点处开始用所述广告替换媒体流的帧。

此外,服务器可告知客户端广告替代的持续时间或广告替代即将结束的客户端时间点,或所述持续时间可以是标准或预设的持续时间。并且在广告替代结束时,客户端可随后在进行中从播出替代广告切换回到播出广播馈送(例如,广告荚序列的其余部分)

如上文所解释,在此过程中可能产生的技术问题是,客户端可能花费一些时间从播出一个流转变到播出另一流,例如从在线性广播流中播出广告荚序列转变到播出替代广告流。确切地说,如上所述,客户端可能需要参与各种过程,例如清除高速缓冲存储器、接收和解码内容,以及填充存储器缓冲器,以促进开始播出替代流。

此流转变过程的开始点可以各种方式限定。举例来说,如果客户端将从串流媒体服务器接收第二流的内容,则流转变过程的开始可以在客户端发送初始传送控制协议(tcp)握手消息以起始设置与服务器的tcp会话时,或在客户端发送实时串流协议(rtsp)设置请求等以起始设置与服务器的实时传送协议(rtp)会话时,以及存在其它可能性。或者,如果客户端将以另一方式或从另一源接收第二流的内容,则过程的开始点可以其它方式限定。过程的结束可随后限定为在考虑抖动和/或其它问题的同时客户端已经缓冲足够的第二媒体流以开始播放所述流的时间点。其它实例也是可能的。

如上所述,流转变过程从开始到结束可花费大约数百毫秒。此外,因为资源约束和其它因素不时地改变,在任何给定例项中客户端从一个流转变到另一流将花费的实际时间量可能是不可预测的。

经验可建立客户端(或代表性客户端)的最小和最大预期流转变持续时间。举例来说,测试可能展示,客户端从播出第一流转变到播出第二流(例如,到客户端准备好开始播放第二流的点)将花费300ms到500ms之间的任何时间。因此,客户端可具有300ms的最小预期切换持续时间和500ms的最大预期转变持续时间,从而限定200ms不确定范围,以及存在其它可能性。

客户端可通过随着时间的过去跟踪流转变持续时间且向上滚动所跟踪持续时间以建立最小值和最大值的统计量度来确定这些最小和最大预期流转变持续时间,和/或可以其它方式向客户端提供预期转变持续时间的代表性值。

给定流转变过程应花费不长于最大预期转变持续时间的期望,客户端可配置其流转变过程以在所要内容切换时间点之前某一时间量开始,所述时间量等于最大预期转变持续时间。如此,客户端应在到达所要内容切换时间点的时候完成流转变过程。

然而,令人遗憾的是,一旦客户端已完成其播出第二流的准备,客户端就可能不再处于充分播出第一流的位置中,因为客户端现可能正缓冲第二流内容用于播出而非缓冲第一流内容用于播出。因此,如果客户端在最大预期切换持续时间的末尾已经过去之前完成其播出第二流的准备,则客户端可在所要内容切换时间点之前开始播出第二流,这可能导致用户体验问题。此外,对于例如广告替代等内容替代,第二流的播出的此过早开始可能在替代持续时间结束时当客户端即将从播出第二流切换回到播出第一流时产生相关联的用户体验问题。

帮助避免使客户端比所要更早地开始播出第二流的一种方式是,客户端改为将其流转变过程配置为在所要内容切换时间点之前某一时间量开始,所述时间量小于最大预期转变持续时间。举例来说,客户端可在所要内容切换时间点之前某一时间量开始其流转变过程,所述时间量小于最大预期转变持续时间但大于或等于最小预期转变持续时间。

但这种解决方案也可能不是最佳的,因为客户端因而可能太迟完成其流转变准备,即,在所要内容切换时间点已经过去之后。且在这种情况下,客户端可结束播放应该被替代的一些基本内容,且接着突然切换到播出替代内容,这也可能导致较差的用户体验。或者,利用这种解决方案,客户端可能仍太早完成其播出第二流的准备(在所要内容切换时间点之前),从而再次产生如上所述的用户体验问题。

为了帮助解决如上所述的此技术问题,客户端可配置流转变过程的时序以促进在所要内容切换时间点开始播出第二流,且客户端将战略上引入转变帧持续不确定周期的持续时间(适当时连同淡变一起)以帮助掩蔽转变并因此提供改进的用户体验。

确切地说,客户端可在所要内容切换时间点之前最大预期切换持续时间(例如,500ms)开始其流转变过程,这将使客户端能够在所要内容切换时间点开始播出第二流。此外,为了帮助应对客户端将在到达所要内容切换时间点之前(即,最大预期切换持续时间已经过去之前)完成其播出第二流的准备的可能性,客户端将战略上贯穿不确定周期播出转变帧,从(i)流转变过程开始之后最小预期转变持续时间延长到(i)流转变过程开始之后最大预期转变持续时间。

在实践中,客户端贯穿不确定周期播出的转变帧可基于讨论中的媒体的类型而采用各种形式。

举例来说,如果媒体包括视频,则转变帧可包括黑帧和/或紧接在转变前的帧的副本。确切地说,客户端可呈现黑帧持续不确定周期的持续时间,可能从第一流向黑帧淡变,以便在不确定周期开始的时候到达黑帧,且可能在或大约在第二流的播出开始时(例如,所要内容切换时间点)开始从黑帧向第二流淡变。或者,对于不确定周期内的一些时间,客户端可呈现作为第一流的最新帧的副本的帧,且可随后从所述图像向黑帧淡变且接着在所要内容切换点开始淡变回到第二流。

而如果媒体包括音频,则转变帧可包括静默帧。确切地说,客户端可呈现静默帧持续不确定周期的持续时间,可能从第一流的音频向静默帧淡变以便在不确定周期开始的时候到达静默帧,且可能在所要内容切换时间点开始从静默帧向第二流的音频淡变。包含这些实例的组合和变化的其它实例也是可能的。

图2是示出(不限于)此过程可如何在实践中随时间从左向右推移沿着时间线工作的实例的图式。如图2中所示,时间tswitch表示所要内容切换时间点。举例来说,当客户端正接收包含广告荚的线性广播馈送时,时间tswitch可以是客户端即将开始代替广告荚内的广告而播放替代广告的客户端时间点。更一般地说,客户端可初始地播放第一媒体流(例如,线性广播馈送)22,且在时间tswitch处,客户端即将从播放第一媒体流22切换到改为播放第二媒体流(例如,替代广告流)24。

此实例假定,客户端从接收和播放第一媒体流22切换到接收和播放第二媒体流24将花费300ms到500ms之间的任何时间。依据上文的论述,客户端可因此在所要内容切换时间点tswitch之前500ms开始此切换过程。图2将此切换过程开始时间示出为时间tstart。此外,图式随后示出最小和最大预期切换持续时间tmin和tmax分别为切换过程开始时间tstart之后300ms和500ms,从而限定从tmin到tmax的200ms不确定周期26,且其中tmax等于tstart。依据此时间线,一旦客户端开始流转变过程,则期望客户端将可能在此不确定周期内的某一点处完成其播出第二流24的准备,使得客户端可在时间tswitch开始播出第二流。

为了帮助掩蔽从第一流到第二流的转变,在此实例中的客户端将播出转变帧持续不确定周期的持续时间,即,从tmin到tmax。图2将此转变帧的序列表示为序列28。此外,图式展示第一媒体流22的播出在tmin处结束,转变帧的播出从tmin到tmax发生,且第二媒体流24的播出在tmax(即,tswitch)处开始。

如进一步展示,客户端可添加从第一媒体流22向转变帧且接着从转变帧向第二媒体流的淡变。为了促进此操作,客户端可将转变帧序列28延长到tmin之前淡变周期30开始,且在tmax之后持续淡变周期32。如所展示,贯穿淡变周期30,客户端将因此呈现第一媒体流22和转变帧两者,且将从第一媒体流22向转变帧淡变。并且贯穿淡变周期32,客户端将类似地呈现转变帧和第二媒体流24两者,且将从转变帧向第二媒体流淡变。

客户端可被配置成具有引入黑帧、静默帧和淡入/出的固有功能性。并且客户端可利用所述功能性来促进此过程。举例来说,为了引入黑帧,客户端可将每一帧产生为完全黑色图像且输出所述帧以供播出,从而实现在例如显示器等用户接口上呈现黑帧。同样,为了引入静默帧,客户端可将每一帧产生为具有零层级音频且可输出所述帧以供播出,从而实现在例如声音扬声器等用户接口上呈现静默帧。并且为了引入淡入和淡出,客户端可以编程方式应用渐隐算法,从而产生在图像和/或音频之间变换的帧。

如上所述,在讨论中的媒体为视频的情况下,仅播放黑帧作为转变帧的一个替代方案将是,客户端播放作为第一媒体流22的上一个所呈现帧的副本的帧。举例来说,在淡变周期30的开始处,客户端可捕获第一媒体流22的当前帧的静态图像。客户端可随后在淡变周期28期间在重复的帧中呈现所述静态图像,因此从所述静态图像向黑帧淡变。又或者,客户端可将其它类型的图像或颜色呈现为转变帧,不限于黑帧或第一媒体流的上一帧的图像。

利用此实例过程,客户端将因此可能在不确定周期26期间某一时间完成其切换准备。客户端可随后等待直至所要内容切换时间点tswitch,然后客户端开始播出第二媒体流24。并且客户端将暂时播放转变帧来帮助掩蔽所述转变。

应注意,在例如替换广告荚内的广告等内容替代情境a,客户端可随后在替代周期结束时应用类似过程,来帮助掩蔽回到第一媒体流的转变。此处,切换时间tswitch将是客户端即将恢复到播出第一媒体流的客户端时间点,其可由替代内容(例如,替代广告)的所指示持续时间限定或以另一方式限定。客户端可因此在某一时间开始从第二媒体流切换回到第一媒体流的过程,所述时间是所述切换时间tswitch之前最大预期切换持续时间tmax。并且客户端可随后类似地播出转变帧持续不确定周期的持续时间,可能如上文所论述延长且具有淡变,借此帮助掩蔽所述转变。

还应注意,不确定周期和/或淡变周期可延长以考虑所要内容切换时间点的初始预测中的不确定性。举例来说,如果基于低速率查询指纹预测开始播放替代内容的客户端时间点或面对其它问题,则所预测客户端时间可能不完全准确。给定此条件,客户端可将不确定周期偏置为比原本可能的周期长,并且因此客户端可播放转变帧持续较长持续时间。举例来说,客户端可将最大预期转变持续时间偏置为较长且可使开始点tstart移位,以产生比原本的周期早和迟的较长不确定周期。此外或替代地,客户端可延长淡变周期30、32以类似地考虑所添加的不确定性。此外,客户端可调整或设定最大预期转变持续时间和/或最小预期转变持续时间或相关联时序值,以实现所需结果。

接下来,图3是描绘可根据本公开实行的方法的流程图。此方法可由例如媒体客户端或其它重放装置等装置实行,以促进从播出第一媒体流到播出第二媒体流的转变。

如图3中所示,在框34处,当装置正播出第一媒体流时,装置确定用于开始播出第二媒体流、用于内容替代或用于另一目的的目标时间。举例来说,在内容替代情境中,此可为客户端即将开始播出第二媒体流的替代内容以替换第一媒体流的内容的客户端时间点。装置可通过从服务器或指定所述目标时间的其它实体接收指令和/或自身评估以确定所述目标时间(以及存在其它可能性)来确定此目标时间,且过程可包含如上文所论述建立同步锁。

在框36处,装置随后开始从播出第一媒体流转变为播出第二媒体流的流转变过程。如上文所论述,此流转变过程可花费某一时间周期,所述时间周期是从最小预期转变持续时间到最大预期转变持续时间之间的任何时间。此外,装置可战略上在所确定目标时间之前最大预期转变持续时间开始转变过程,以帮助确保装置到目标时间的时候将准备好开始播放第二媒体流。

在框38处,装置随后产生和播放转变帧序列持续不确定周期,以帮助掩蔽从第一媒体流到第二媒体流的转变。如上文所论述,此不确定周期将从(i)转变过程开始之后最小预期切换持续时间延长到(ii)转变过程开始之后最大预期切换持续时间。如此,即使装置在不确定周期结束之前完成其播出第二流的准备,装置仍可等待直至目标时间,然后开始播放第二媒体流,且转变帧将帮助掩盖中间时间。

如上文进一步论述,所述方法可额外涉及装置实施从第一媒体流向转变帧的淡变(例如,渐隐或变换),持续第一淡变周期一直达到不确定周期。且同样,所述方法可涉及装置实施从转变帧向第二媒体流的淡变,持续在不确定周期完成后开始的第二淡变周期。

此外,如上文所论述,如果第一和第二媒体流包括视频,则转变帧可包括黑帧和/或作为第一媒体流的上一个所播放帧的副本的帧。并且如果第一和第二媒体流包括音频,则转变帧可包括静默帧。其它实例也是可能的。

图4是描绘可根据本公开实行的方法的另一流程图。此方法可类似地由例如媒体客户端或其它重放装置等装置实行,以促进从播出第一媒体流到播出第二媒体流的转变。此外,当操作以此图中的次序展示时,应注意,操作次序可与所展示的不同。

如图4中所展示,在框40处,当装置正播出第一媒体流时,装置确定装置应开始播出第二媒体流代替第一媒体流的目标时间。在框42处,装置随后配置装置应开始从播出第一媒体流转变为播出第二媒体流的流转变过程的开始时间。确切地说,装置确定用于转变的最大预期持续时间,且将开始时间设定为所确定目标时间之前最大预期转变持续时间。在框44处,装置随后在所配置开始时间处开始流转变过程。

此外,在框46处,装置确定不确定周期。确切地说,装置确定用于转变的最小预期持续时间,且将不确定周期视为从(i)开始时间之后所确定最小预期转变持续时间延长到(ii)开始时间之后所确定最大预期持续时间。并且在框48处,装置贯穿所确定不确定周期播出一系列转变帧,以帮助掩蔽所述转变。

在此方法中,用于转变的最大和最小预期持续时间的确定可基于装置对过去的流转变的监视,和/或可涉及读取指定这些持续时间的预定义值的配置数据等,以及存在其它可能性。

此外,如上文所论述,所述方法可涉及装置添加从第一媒体流向转变帧的淡变和/或从转变帧向第二媒体流的淡变。并且转变帧可包含黑帧、静默帧和/或作为第一媒体流的上一个所播放帧的副本的帧。此外,转变可以是从线性广播馈送到替代广告或反之亦然。并且如上所述,所述方法可额外涉及延长不确定周期。

最后,图5是实例媒体客户端的简化框图,其展示可包含在此装置中以促进实行例如上文提到的操作的一些组件。依据上文的论述,此客户端可采用各种形式。举例来说,其可以是电视机、计算机监视器或操作以接收视频内容并输出视频内容以供呈现的其它装置,且/或其可以是扩音器、一对头戴受话器,或操作以接收音频内容并输出音频内容以供呈现的其它装置。大量其它实例也是可能的。

如图5所示,实例客户端包含媒体输入接口50、网络通信接口52、媒体呈现接口54、处理单元56和非暂时性数据存储装置58,其中的任一个或全部可集成在一起或如所展示以通信方式通过系统总线、网络或其它连接机构60链接在一起。

客户端可使用媒体输入接口50和/或网络通信接口52来接收媒体流以供呈现。这些接口中的任一个可包含一或多个有线和/或无线接口,其用于建立与接收器、服务器或其它装置或系统的通信且以模拟或数字形式从接收器、服务器或其它装置或系统接收媒体内容。举例来说,媒体输入接口可包含符合例如dvi、hdmi、vga、usb、蓝牙、wifi及许多其它协议等协议的一或多个接口,且网络通信接口可包括有线或无线以太网接口,用于参与基于本地或广域包的通信以便与一或多个服务器和/或其它装置或系统交互。

媒体呈现接口54可随后包括一或多个组件以促进媒体内容的呈现。借助于实例,媒体呈现接口可包括例如显示屏和/或扩音器等用户接口,以及一或多个驱动器或其它组件用于处理所接收媒体内容以促进所述内容在所述用户接口上的呈现。

处理单元56可包括一或多个通用处理器(例如,微处理器)和/或一或多个专用处理器(例如,专用集成电路)。并且非暂时性数据存储装置58可包括一或多个易失性和/或非易失性存储组件,例如光学、磁性或快闪存储装置。此外,如所展示,数据存储装置58可存储程序指令62,所述程序指令可由处理单元56执行以实行本文中所描述的各种操作(例如,以致使客户端实行所公开的操作)。

上文已经描述示范性实施例。然而,所属领域的技术人员将理解,可在不脱离本发明的真实范围和精神的情况下对这些实施例作出改变和修改。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1