呈现时间控制
技术领域
本发明一般涉及源于不同来源和/或使用不同传输协议传送并且存储在至少一个呈现设备上的内容流的处理。
更具体地,本发明处理这样的内容流的同步,并且特别地处理在辅助显示器上的内容的呈现时间的控制,使得其正确地与正在主显示器上呈现的有关内容同步。具体地,发现在诸如智能电话这样的个人设备上以及例如在电视机上同时呈现有关内容的第二屏幕电视(TV)情况下的应用。
因此,本发明涉及一种用于控制内容的呈现时间的方法和设备。其还涉及实现本发明的方法的计算机程序。
背景技术
在这一部分中描述的方法可以推行,但未必是先前已经被想到或推行的方法。因此,除非在本文中指出,否则在这一部分中描述的方法不是在本申请中的权利要求的现有技术,并且不是通过包括在这一部分中而对现有技术的承认。
广播和宽带IP网络的补充性质使利用每个网络的力量提供个性化的TV服务的混合交付模型成为可能。这样的交付模型已经被TV景观中的很多参与者(actor)采用。消费者设备的制造商提供了将宽带访问与追看电视(catch-up TV)、增强节目指南和因特网视频合并的“联网电视(Connected TV)”。
诸如HbbTV(混合广播宽带TV)和YouView这样的首创将广播电台、内容提供商和因特网服务提供商集合在一起,设法定义一种标准化的方法以提供混合广播宽带服务。虽然第一个HbbTV服务在早如2009年12月时就已起动,但是当前的混合TV服务部署尚未利用因特网的全部潜能来交付媒体内容,并且仍有显著的进一步革新的潜力。
通过将广播交付用于流行节目的海量分发并且将宽带交付用于长尾和点播内容,组合交付模型良好地适应于向大量订户提供个性化的增值TV服务。
诸如平板电脑或智能手机这样的配套终端正变得被良好地建立为用于消费链接到TV广播的个性化内容的“TV伙伴”。
在C.Howson等人的文章“Second Screen TV Synchronization”(2011IEEEInternational Conference on Consumer Electronics)中,设想了第二屏幕使用情况,其中通过宽带携带链接到广播节目的替代性的音频或视频内容,从而使得能够个性化,并且缓和广播网络带宽的负担。
这样的服务的一个示例向用户提供在手持设备上选择他优选的音频音轨以配合在电视机上显示的广播视频的可能性。通过广播网络交付主音频和视频成分,同时在需要时可以通过因特网得到若干其他语言。
另外的这样的服务将使用户能够结合在电视机上显示的广播内容,选择体育或音频事件的经宽带交付的替代性视图,并且将此呈现在他的平板电脑上。
如果这样的第二屏幕服务的用户体验是可接受的,则通过宽带和广播网络分别交付的媒体成分需要以精确的同步进行呈现。
虽然已有的混合TV服务将触发器机构用于交互式应用,但是它们不包括例如允许通过因特网交付的替代性音轨自动并且精确地与广播视频成分同步的技术。
上述论文提出一种用于第二屏幕个性化TV服务的部署的系统,其使得通过宽带和广播网络独立交付的内容成分的呈现能够与用户设备同步。在该文献中公开的解决方案基于添加与通过广播网络(在某些情况下,还通过宽带网络)交付的每组媒体成分相关联的辅助成分时间线。该时间线成分传达与每个事件有关的同步信息,并且用于对齐媒体成分的呈现。
还存在像例如音频加水印和音频加指纹这样的允许或多或少地精确地同步两个呈现器的其他技术。
然而,已经存在的技术要求第二屏幕设备包含适应于管理与主屏幕设备共享的时间参考的播放器。
发明内容
本发明提出一种改善该情形的解决方案。
相应地,本发明提供一种用于控制在第二设备上的第二内容流的呈现时间的方法,所述第二内容流被组织为组块,每个组块对应于第二内容流的可单独访问的部分,每个组块包含数据包,所述方法包含由控制设备执行的以下步骤:
a)从第二设备接收第二内容流的组块的请求;
b)基于正在第一设备上呈现的第一内容流的回放位置来确定在第二内容流中的所请求的组块的第二位置;
c)从服务器(18)接收所请求的组块的包;以及
d)在所请求的组块应当被交付给第二设备使得第二内容流的第二设备呈现与第一内容流的第一设备呈现同步的交付时间向第二设备交付所请求的组块,所述交付时间是所述第二位置的函数。
因此,在本发明中,通过在正确时刻将第二内容流的数据交付给所述第二设备来控制在第二设备上的呈现时间。该方法不需要第二设备的播放器应用的任何特定特征。
因此,本发明的方法允许在实施视频播放器的任何设备上部署第二屏幕服务。
本方法还可以用于控制通过宽带网络交付给多个终端的不同的视频流的呈现时间。
优选地,交付的步骤使用自适应流传输协议。
更具体地,该协议例如是HTTP(超文本传输协议)自适应流传输协议。
在该情况下,第二内容流的每个组块可以被单独的URI单独地访问。
有利地,该方法还包含由控制设备执行的以下步骤:
e)除了所请求的组块的最后包之外,向第二设备(6)传送所请求的组块的所述包;以及
f)缓冲所请求的组块的所述最后包,
其中,交付的步骤d)包含在交付时间向第二设备交付所请求的组块的所述最后包。
因为在自适应流传输的情况下,第二设备接收所请求的组块的最后包的时刻确定所述组块的呈现的开始,所以向第二设备交付该最后包的时间通过所述设备强制执行组块的呈现时间。
有利地,该方法还包含如下步骤:确定第二设备处理所请求的块所需的时间。
因此,该处理时间是所请求的组块的最后包的接收与该组块的呈现的开始之间的时间。该处理时间特定于每种类型的播放器。
优选地,如果在步骤d)在交付时间不能交付所请求的组块,则该方法还包含以下步骤:
g)丢弃所请求的组块;
h)用在第二内容流中所请求的组块后面的组块重复步骤b)至d)。
在本发明的具体实施例中,第一内容流和第二内容流携带相同的内容。
这在需要确保多个终端同时呈现相同的内容时的宽带网络的情况下特别有趣。
本发明还提供一种用于控制在第二设备上的第二内容流的呈现时间使得第二内容流的第二设备呈现与第一内容流的第一设备呈现同步的控制设备,所述控制设备适于执行本发明的方法的步骤。
根据第一实施例,控制设备是家庭网关或者机顶盒。
根据第二实施例,控制设备是代理服务器。
例如,代理服务器控制通过宽带网络交付给多个终端的视频流的呈现时间,例如以保证在相同区域中的所有用户同时发现事件。在该情况下,可以选取呈现时间,以便使所有的终端同步到最近的一个。还能够决定将实况事件的视频呈现与该事件的文本描述或音频注释同步。如果终端处于运动中,呈现可以在它们到达特定位置时开始。
根据本发明的方法可以实施为可编程的装置上的软件。其可以仅实现为硬件或软件或者两者的结合。
因为本发明可以实现为软件,所以本发明可以被实施为在任何适当的载体介质上的、用于提供给可编程的装置的、计算机可读取的代码。载体介质可以包含诸如软盘、CD-ROM、硬盘驱动、磁带设备或者固态存储器设备等存储介质。
因此,本发明提供一种包含使计算机能够执行本发明的方法的计算机可执行的指令的计算机可读取的程序。图3的图表例示这样的计算机程序的一般算法的示例。
附图说明
作为示例而不是限制,以附图中的图例示本发明,附图中的相同标号指相似的元件,并且在附图中:
-图1是实现根据本发明的方法的系统的实施例的示意图;
-图2是根据本发明的实施例的控制设备的示意图;
-图3是根据本发明的实施例的方法的步骤的流程图;以及
-图4是例示根据本发明的实施例的交付时间的计算的时间线。
具体实施方式
参考图1,其中示出根据本发明的优选实施例的同步系统2的示意图。
同步系统2包含位于用户的家庭中的被称为主设备4的第一设备以及被称为辅助设备6的第二设备。主设备4例如是构成用户的主显示器的电视机,而辅助设备6例如是智能电话、PC笔记本或平板电脑。其包含视频播放器,并且其被用户用作第二屏幕设备。
通过广播网络从原始的内容服务器(未表示)接收在主设备4上显示的内容。为了接收这样的广播内容(例如,DVB-T或者DVB-C多媒体流),主设备4链接到天线8。主设备4还通过家庭网络10连接到与因特网14相连接的家庭网关12。
还可以例如从远程或本地音频和/或视频服务器、视频文件、DVD、蓝光盘等进行流传输这样地通过任何本地或远程的来源提供在主设备4上显示的内容。为此,主设备4还连接到本地内容来源16,例如DVD和/或蓝光读取器。
主设备4接收音频/视频数据以及允许在正在所述主设备4上呈现的TV节目内标识当前回放位置的相关联的元数据。
辅助设备6还连接到家庭网络10。从而,其通过家庭网关12和因特网14连接到包含与原始内容服务器的内容有关的内容的补充内容服务器18。
补充内容服务器18能够通过家庭网关12向辅助设备6提供被组织成包含视频数据包的组块的辅助内容流。
受益于嵌入在从广播网络接收的广播流中的信息,例如通过家庭网关12向辅助设备6提供对补充内容服务的访问。
在另外的实施例中,辅助设备6可以从用户容易标识的网站访问补充内容服务器18所提供的辅助内容,因为其紧密地与主设备4上接收的广播内容耦接。该网站可以是广播提供商的网站,或者是产生了从原始内容服务器提供的主内容的工作室的网站。网站提供URL(统一资源定位器)给通过详述例如所使用的编码解码器、编码比特率、视频分辨率、标记、标题和辅助内容流的组块的URI(统一资源标识符)来描述可用的流的清单文件。该清单文件在DASH(通过HTTP的动态自适应流传输)中被称为媒体呈现描述(MPD)。其他清单文件用在专有自适应流传输解决方案中;例如,来自Adobe、Apple和Microsoft。
使用用户的家庭的这些设备,用户能够接收源自原始内容服务器的、将通过主设备4呈现的第一多媒体流以及源自补充服务器18的、将通过辅助设备6呈现的第二多媒体流。
用户可能希望在两个设备4、6中同时接收有关内容。例如,用户可能希望接收体育或音乐事件的替代性视图,并且结合在主设备4上显示的主内容,将此呈现在辅助设备6上。
这里,在自适应HTTP流传输中,将通过辅助设备6呈现的音频/视频补充内容从补充内容服务器18交付给家庭网关12。
本发明的同步系统2(更具体地,家庭网关12)使得能够进行两个内容的完全同步,以便在设备4、6上同时呈现它们。
实际上,家庭网关12处于特权位置,因为其可以访问连接到家庭网络10的所有设备,并且其能够对所有进入和/或出去的因特网流量进行路由。
优选地,家庭网关12被配置为透明代理模式。在这样的配置中,家庭网关12能够不用家庭设备4、6的任何特定配置来拦截因特网通信。其能够分析或者修改来自或者供给网络服务的数据。
如图2所示,家庭网关12包含用于标识正在主设备4上呈现的主内容流的主定时位置(亦即,回放位置)的标识模块22。
因此,标识模块22能够从主设备4取得信息。除了在正在主设备4上呈现的TV节目内接收的主定时位置,标识模块22还能够同意在广播流中交付的所有元数据。在这些元数据中,标识模块22能够标识允许访问提供与主设备4上的当前消费的TV节目相关联的第二视图的网络服务的URL。
家庭网关12还包含确定模块24,确定模块24用于使用所述主定时位置来确定从补充内容服务器18传送的辅助内容流的下一个组块应当被交付给辅助设备6使得辅助设备呈现与主设备呈现同步的交付时间。
家庭网关12还包含用于存储视频内容的缓冲器26以及用于使用自适应HTTP流传输将视频内容交付给辅助设备6的交付模块28。
图3是例示根据优选实施例的本发明的方法的步骤的流程图。
当用户选择第二视图服务时,在步骤32,通过家庭网关12向补充内容服务器18发送HTTP取得(HTTP Get)请求以获得清单文件。
家庭网关12知道该清单文件的URL,因为已经直接地(亦即,在元数据中指示清单URL)或者间接地(亦即,元数据提供信息以获取清单URL)提供使用例如在文献WO2012049305中定义的时间线组件或加水印数据的带内交付的、或者例如使用EPG(电子节目指南)的带外交付的TV节目的元数据给它。
在步骤34,服务器18确认请求的接收。其在步骤36发送回清单文件。
在步骤38,在补充服务器18发送回清单文件时,家庭网关拦截并转发清单文件。使用在该描述清单文件中包含的信息,家庭网关12能够自己其请求辅助内容的视频组块。
在步骤40,辅助设备6确认清单文件的接收。
一旦其解释了清单文件(亦即DASH术语中的MPD),辅助设备播放器就在步骤42向补充服务器18发送HTTP取得请求。没有用于将辅助内容流与广播TV节目同步的指示,其从服务器18请求辅助流的第一组块。
在步骤44,家庭网关12拦截该HTTP请求。收到了由主设备4呈现的TV节目的当前位置并且通过所拦截的清单文件得到视频组块的大小,家庭网关12计算要播放的下一个组块的偏移,以便与主设备呈现同步。其产生专用于补充内容服务器18的新的HTTP取得请求。例如,考虑要呈现的下一个组块是在索引100处。
可以以每个组块位置被良好地标识的单个文件或者每个文件对应于每个组块的一系列的文件中将补充内容存储在补充服务器18上。在第一种情况下,当客户端请求组块时,其将在HTTP取得请求中指示字节范围。在第二种情况下,其只需要请求包含所期望的组块的文件。
在步骤46,补充内容服务器18确认组块请求的接收。然后,在步骤48,在第一种情况下,其使用HTTP部分内容响应,或者在第二种情况下,使用OK响应,来响应所述组块请求。
这种类型的响应指示补充服务器18已经满足请求资源的取得(GET)请求。响应包括指示供应的字节的数量的内容范围(Content-Range)或者内容长度(Content-length)头部字段。例如,第100号组块可以具有124832字节的大小。
这里,以若干TCP包的形式交付组块,在图3中称为aka分段并且被命名为部分1、部分2、……、部分n。
所请求的视频组块只有在将其完全地交付给辅助设备6时才可以显示。换言之,这意味着,在辅助设备6上的视频的呈现取决于该设备接收该视频的下一个组块的最后字节的时间。本发明通过控制向辅助设备6交付该最后字节来允许将第二视图与主设备4同步。
更具体地,通过分析每个包头部,家庭网关12计算补充内容服务器18已经交付的字节的数量。
当最后的数据包(图3中的部分n)到达家庭网关12时,在接收时间ToR,在步骤50,其被所述家庭网关12缓冲化,直至家庭网关12确定的交付时间ToD为止。缓冲化的持续时间被称为等待时间WT。
在步骤52,在正确的时刻完成家庭网关12对辅助设备6的视频组块的最后部分的交付,使得辅助设备播放器然后与主设备4同步地开始呈现。
在图4中,T0是视频组块的呈现应当开始与当前在主设备4上显示的内容完全同步的时刻。家庭网关12在必须呈现组块的时间减去由于通常在家庭网络中可以忽略的家庭网关12和辅助设备6之间的传送而导致的延迟以及辅助设备6处理的持续时间PT的时间将组块的最后的包发送给辅助设备6。
辅助设备6的该处理时间PT特定于所述设备中的视频播放器的类型。为了精确地控制呈现的时间,家庭网关12自动标识被用作视频呈现器的浏览器插件。每个商业解决方案具有其自己的播放器。Silverlight和QuickTime是分别用于Microsoft和Apple自适应流传输解决方案的这样的播放器的两个示例。不同的解决方案(即使它们符合DASH标准)使用它们自己的例如描述媒体格式(亦即视频编码解码器)、可用比特率以及音频/视频文件URL的清单文件的格式。在开始进行流传输之前分析辅助设备6在步骤32请求的清单文件允许家庭网关12确定使用哪种自适应技术以及从而使用哪个播放器。
作为具体示例,在辅助设备6中的播放器是HTML5(超文本标记语言5)视频播放器。该版本的HTML语言针对通过不需要运行插件来提供视频性能,并且使得创建用先前版本的HTML不可能的视频和网页上的其他元素之间的交互成为可能。还可以通过在辅助设备在步骤32发送以取得视频组块的HTTP取得内提供的信息来标识HTML5的使用。
在很多使用情况下,可以不考虑在终端中使用的插件的类型就足以估计处理时间。
如果在组块的传送期间发生问题,使得不能在正确的时刻交付组块的最后部分以确保完全同步,则家庭网关12主动丢弃当前组块并且向补充内容服务器18请求下一个组块。
在完整接收组块之后,辅助设备播放器在步骤54向补充服务器18发送HTTP取得请求。没有关于组块的索引的指示,其从服务器18请求辅助流的第二组块。
产生对补充内容服务器18的请求具有索引101的组块的新的HTTP取得请求的家庭网关12在步骤56拦截该HTTP请求。
虽然已经例示并描述了当前被考虑为本发明的优选实施例的情况,但是本领域的技术人员将理解的是,可以进行各种其他修改,并且可以替换等效物,而不会脱离本发明的真实范围。另外,可以进行很多修改以使具体的情况适合于本发明的教导,而不脱离在本文中描述的中心发明构思。另外,本发明的实施例可能不包括上述的所有特征。因此,旨在本发明不限于所公开的具体实施例,而本发明包括落入所附权利要求书的范围的所有实施例。
在解释说明书及其相关联的权利要求时,应当以非排他性的方式解释诸如“包含”、“包括”、“合并”、“含有”、“是”以及“具有”这样的表述,即应当被解释为允许还存在未明确定义的其他项目或组件。对单数的引用还要被解释为对复数的引用,反之亦然。
本领域的技术人员将容易地意识到,可以修改变在本说明书中公开的各种参数,并且可以在组合所公开和/或要求保护的各种实施例,而不脱离本发明的范围。
例如,在以上描述中,根据本发明的同步由家庭网关执行。然而,本发明的方法可以有利地通过机顶盒来实现。
另外,虽然以上描述关注于本发明用于用户的家庭应用,但是本发明可以有利地用于作为例如机场、火车站、医院等这样的公共建筑中的第二屏幕应用。
还可以通过代理服务器来应用本发明,以控制通过宽带网络交付的不同的视频流的呈现时间。这样的控制对于例如保证相同区域中的所有用户同时发现事件是有必要的。
代理设备可以通过分析其服务的终端的请求来标识其当前管理的流。让我们考虑消费从网络服务器以HTTP自适应流传输模式交付的第一流的第一终端。当第二终端请求相同事件的第二流时,代理服务器检查当前交付给第一终端的组块的定时位置。通过知道在第一终端中使用的播放器类型,可以确定当前在该第一终端上呈现的内容的时间位置。因此,通过应用本发明的方法向第二终端交付音频/视频内容,确保在两个终端上显示的内容是同步的。显然,可以将相同的同步机制应用于两个以上的终端。