用于增强特殊播放功能的系统和方法

文档序号:7892381阅读:176来源:国知局

专利名称::用于增强特殊播放功能的系统和方法
技术领域
:本发明涉及用于视频或音频娱乐系统中的特殊播放(trick-play)功能的系统和方法。
背景技术
:在本领域中,交互式媒体指南应用程序如交互式电视节目指南是众所周知的。一些交互式媒体指南应用程序使视频娱乐设备的用户能够对视频执行“特殊播放”功能。这种特殊播放功能包括暂停、反绕(rewind)和快进。交互式媒体指南应用程序对通过网络或传输系统(例如卫星、电缆或广播)发送的视频节目进行缓存,以使用户能够对视频节目进行特殊播放。为了提供特殊播放功能,当用户调谐到正在进行中的节目时,这些系统可以开始缓存视频。因此,这种系统的用户可以反绕到他们第一次调谐到这个节目时的时点,而不能反绕到该时点之前。因此,期望提供用于特殊播放功能的系统和方法,通过这种系统和方法,用户可以将视频反绕到用户第一次开始观看该视频之前的时点,还可以将视频快进到目前正在流式传输的实时传输的时点之后。
发明内容按照本发明的原理,提供了支持视频娱乐系统中的特殊播放功能的系统和方法。为了简洁而不是进行限制,本发明在上下文中有时被描述为提供对视频如电视节目的反绕、暂停和快进功能,但是,也可以将本发明应用于任何其他合适的非点播媒体(例如,音频)。在本发明的各种实施例中,以数字或模拟实时流的形式,按照非点播方式,将视频分配给用户(或用户组)设备。例如,在电视系统中,可以通过广播、电缆或卫星来传递视频并且按照计划提供视频。远离用户的服务器在分配视频之前或期间,对视频进行缓存或记录。客户应用程序,这里有时称为“特殊播放客户程序”,被实现在用户设备上。当用户开始观看流时,客户程序开始对正在观看的视频进行缓存,使得用户能够通过缓冲器反绕到用户开始观看流的点。在用户访问(例如,自动或响应于用户请求)在用户访问之前开始的视频的同时或之后,客户程序从服务器接收由服务器根据服务器缓存的或服务器记录的视频拷贝生成的反绕流。反绕流使完整的视频(例如,没有跳过任何帧)从用户第一次访问视频的点向后流动。客户程序在本地对反绕流进行缓存,使得用户可以在接收反绕流之后的任何时间,将节目反绕到与用户第一次访问视频之前发送的内容对应的视频点。在某些实施例中,客户程序还在接收视频时对视频进行缓存。这使得用户能够从用户第一次访问视频之前的点对节目进行反绕和观看,并且当用户希望到用户第一次访问视频之后的点时继续观看(或快进)。在某些实施例中,客户程序从服务器接收由服务器根据缓存的或记录的视频拷贝生成的前进流。前进流使完整视频(例如,没有跳过任何帧)从用户第一次访问视频的点,以高于实时的速度前进。客户程序在本地对前进流进行缓存,使得一接收到前进流,用户就可以使节目快进到视频的实时流之前的点。例如,可以由原始实时视频馈送(primaryreal-timevideofeed)(例如,广播馈送)提供视频的实时流。在某些实施例中,客户程序自动接收反绕和/或前进流。在其他实施例中,例如在用户访问视频时,或者在确定用户对视频有兴趣以至肯定要缓存反绕和/或前进流之后,客户程序请求反绕和/或前进流。根据以下结合附图进行的详细描述,本发明的上述以及其他特征、本发明的特性和各种优点将更加清楚,其中图I为按照本发明的一个实施例的交互式媒体系统的示意图;图2示出了用于按照本发明的一个实施例的缓冲器的示意性数据结构;图3示出了用于按照本发明的一个实施例的缓冲器的另一个示意性数据结构;图4示出了按照本发明的一个实施例的、具有传输控制条的示意性显示;图5示出了按照本发明的一个实施例的、具有传输控制条的另一个示意性显示;图6示出了按照本发明的一个实施例的、具有传输控制条的另一个示意性显示;图7示出了按照本发明的一个实施例的、具有节目栅格的示意性显示屏幕;图8示出了按照本发明的一个实施例的、用于对视频进行反绕的示意性处理的流程图;图9示出了按照本发明的一个实施例的、用于对视频进行快进的示意性处理的流程图;图10示出了按照本发明的一个实施例的、用于给用户的设备提供视频流的示意性处理的流程图;并且图11示出了按照本发明的一个实施例的、用于从反绕和/或快进缓冲器回放视频的示意性处理的流程图。具体实施例方式图I示出了按照本发明的一个实施例的示意性交互式媒体系统100。用户设备110通过通信路径122接收来自媒体源120的、信号形式的媒体。实际上可以有多个媒体源120和用户设备110,但是,为了避免附图过于复杂,图I中只示出了一个媒体源120和一个用户设备110。媒体源120可以是任何适合的媒体源,如有线系统头端、卫星媒体分配设施、媒体广播设施、网际协议电视(IPTV)头端、点播服务器(例如,VOD服务器)、网站、游戏服务供应商(例如,提供在线游戏)或者用于产生媒体或分配媒体的任何其他合适的设施或系统。可以将媒体源120设计为通过任何合适的通信路径122发送信号,例如,卫星路径、光纤路径、电缆路径、因特网路径或者任何其他合适的有线或无线路径。信号可以携带任何合适的媒体,如电视节目、游戏、音乐、新闻、网络服务、视频或者任何其他合适的媒体。在某些实施例中,媒体源120可以包括用于执行特殊播放客户程序或交互式媒体指南应用程序、例如在线交互式媒体指南应用程序的指令的控制电路。用户设备110可以包括适合于提供交互式媒体体验的任何设备。用户设备110可以包括电视设备,如电视机、机顶盒、记录设备、视频播放器、用户输入设备(例如,遥控器、键盘、鼠标、触摸板、触摸屏或语音识别接口)或者适合于提供交互式媒体体验的任何其他设备。例如,用户设备110可以包括Motorola公司提供的DCT2000、2500、5100、6208或6412机顶盒。在某些实施例中,用户设备110可以包括计算机设备,例如带有电视卡的个人计算机(PCTV)。在某些实施例中,用户设备110可以包括固定电子设备,例如游戏系统(例如,X-Box、PlayStation或GameCube)或者便携式电子设备如便携式DVD播放器、便携式游戏机、移动电话、PDA、音乐播放器(例如,MP3播放器)或者任何其他合适的固定或便携式设备。在图I的例子中,用户设备110至少包括控制电路116、显示装置112、用户输入装置114和记录装置118,这些装置可以实现为分离的装置或单个装置。特殊播放客户程序可以实现在用户设备110上,以向用户提供用于显示在显示装置112上的媒体的特殊播放功能。在某些实施例中,特殊播放客户程序为交互式媒体指南应用程序如交互式电视节目指南的一部分。为了清楚而不是进行限制,以下实施例将被描述为由特殊播放客户程序提供。显示装置112可以是任何合适的装置,如电视监视器、计算机监视器或者合并在用户设备110中的显示器(例如,移动电话或便携式音乐播放器的显示器)。显示装置112显示由媒体源120通过路径122发送的媒体以及特殊播放客户程序的显示。显示装置112还可以被配置为提供音频输出。记录装置118可以是个人视频记录器(PVR)、数字视频记录器(DVR)、录像机(VCR)、DVD录像机或任何其他合适的视频记录器。记录装置118可以包括一个或多个调谐器。特殊播放客户程序命令记录装置118缓存来自服务器130的反绕和前进流。控制电路116用于接收来自输入装置114的用户输入,并且执行特殊播放客户程序的指令。控制电路116可以包括一个或多个调谐器(例如,模拟或数字调谐器)、编码器和解码器(例如,MPEG解码器)、处理器(例如,Motorola68000家用处理器)、存储器117(即RAM和硬盘)、通信电路(例如,有线调制解调器电路)、输入/输出电路(例如,图形电路)、到用户设备110的各种装置的连接以及用于提供模拟或数字媒体编程、节目记录和交互式媒体指南特性的任何其他合适的部件。在某些实施例中,控制电路116可以被包括为用户设备110中的一个装置的一部分,例如,显示器112或任何其他装置(例如,机顶盒、电视机或视频播放器)的一部分。在某些实施例中,特殊播放客户程序可以利用客户程序/服务器途径给用户提供各种性能。可以是一个服务器用于用户设备110的每一个实例,或者一个服务器用于用户设备110的多个实例,或者单个服务器可以起用户设备110的每一个实例的代理的作用。任何合适数量的用户可以使设备如用户设备110连接到媒体源120和数据源124。但为了图示清楚,只示出了单个用户的设备。可以利用有线电视网络、卫星电视网络、局域网(LAN)无线网络、因特网或任何其他合适的方法,将多个用户的设备连接到媒体源120和数据源124。在某些实施例中,可以利用任何合适的手段,将多个用户的设备相互连接。用户设备110可以从一个或多个数据源124接收交互式媒体指南应用程序数据。数据源124可以提供用于特定类型媒体或特定应用程序的数据。例如,一个数据源124可以提供用于非点播媒体的数据(例如,免费和按收看付费节目),而另一个数据源124可以提供用于点播媒体的数据(例如,VOD节目)。或者,例如单个数据源可以提供这两种类型的数据。例如,一个数据源124可以提供用于交互式电视节目指南的数据。另一个数据源124可以提供例如用于另一个交互式应用程序的数据(例如,家庭购物应用程序)。在某些实施例中,数据源124可以利用客户程序/服务器途径,给特殊播放客户程序提供数据。针对每个数据源可以有一个服务器,或者一个服务器可以用于所有数据源,或者,在某些实施例中,单个服务器可以作为用户设备110与各种数据源124之间的代理进行通信。在某些实施例中,数据源124可以提供作为在线交互式媒体指南应用程序的数据。在这样的实施例中,数据源124可以包括用于执行在线媒体指南应用程序的指令的控制电路。图I将媒体源120和数据源124示出为分离的单元。实际上,可以将它们的功能组合,并且可以从位于单个设施的单个系统或位于多个设施的多个系统提供这些功能。例如,可以将一个媒体源120和数据源124组合,以提供VOD内容和相关的VOD数据。示意性交互式电视系统100包括服务器130。服务器130包括控制电路132和存储器134,用于例如执行媒体源120或用户设备110请求的操作(例如,将缓存的视频提供给特殊播放客户程序)。控制电路132可以包括一个或多个调谐器、处理器、编码器/解码器、通信电路和连接到交互式电视系统100的各个装置的I/O电路或任何其他合适的部件。控制电路132可以以任何合适的方式,例如将调谐器调谐到媒体源120发送的频道,访问由媒体源120提供的视频或其他媒体。作为另一个例子,例如,服务器130可以通过到媒体源120的互联网协议连接(例如,文件传输协议或DOCSISQAM流),直接访问视频。可以将服务器130合并在媒体源120(例如,在电缆线路的头端)、数据源124、V0D服务器(没有示出)、用户设备110(例如,作为第二记录装置或家用计算机上的硬盘)、因特网服务器和任何其他合适的装置中。或者,服务器130可以是独立装置(例如,商业网络记录装置或者家庭或邻近网络中的DVR装置)。在某些实施例中,可以将由媒体源120提供的所有媒体首先发送到服务器130,服务器130随后将媒体发送到用户设备110。在这样的实施例中,服务器可以在接收到媒体时记录(在提供用户启动的基于服务器的记录的系统中)或缓存媒体,并且同时或随后将媒体发送到用户设备。在另一些实施例中,媒体源可以将媒体同时提供给服务器和用户设备。在这样的实施例中,响应于特殊播放客户程序的请求,服务器可以只向用户设备提供已经记录或缓存的媒体反绕和/或前进流。在某些实施例中,服务器可以在媒体源120将视频提供给用户之前缓存或记录视频。服务器130可以接收来自用户设备110和媒体源120(或者交互式系统100中的任何其他设备)的指令以进行适当操作。例如,这样的操作可以包括记录或缓存由媒体源120发送的所有或部分视频。在某些实施例中,服务器130可以缓存由媒体源120发送的每个视频。在某些实施例中,服务器130可以只缓存特定视频(例如,特定的广播节目)或特定频道(例如,用户喜欢的频道)。用户设备或媒体源可以以任何适当方式(例如,根据QAM流的频道映射表或节目映射表,或者节目标示符)识别特定视频,并且将请求通知给控制电路132,以将视频记录或缓存在存储器134中。在一些实施例中,用户可以在服务器130上记录视频。在这样的实施例中,服务器130可以将记录的视频(已经为除使用增强反绕功能之外的用户记录的视频)用作用于反绕和/或前进流的“缓存的”视频。特殊播放客户程序、媒体源或服务器可以根据任何合适的标准,选择服务器记录或缓存的并且可以使用本发明的增强反绕和快进功能的视频。例如,这样的标准可以包括用户观看历史,用户通常观看、记录或设定提醒的节目或频道,或者由用户简档(例如,通过向用户提出一系列问题而建立的简档)所识别的用户兴趣。在某些实施例中,标准可以包括识别在记录另一个节目时用户观看的节目,用户在其间进行切换的同时发送的两个或多个节目,或者用户在节目开始之后开始观看的节目。如果服务器的存储器容量有限,或者如果给用户分配了少量服务器存储器,则特殊播放客户程序在选择服务器为用户记录或缓存的视频方面可能更加仔细。用于选择可应用增强反绕和快进功能的视频的其他标准可以包括交互式媒体系统的部分或所有用户的观看历史或用户简档;部分或所有用户的流行节目;或者从交互式媒体系统的不止一个用户或交互式媒体系统的用户家庭得出的任何其他标准。作为另一个例子,只可以将由优先媒体提供商(例如,付费的提供商)提供的视频记录或缓存在服务器上。对用户来说,这样的视频可以被标识为“具有增强的特殊播放”,例如,让用户知道,即使他们在视频开始之后欣赏视频,他们也可以反绕到视频的开头。在某些实施例中,频道可以被识别为“具有增强的特殊播放”。反绕缓冲器的长度应该足以允许用户(在一定时间之后)反绕到节目开头之前的点(例如,两或三个小时,或者昨天的视频)。服务器130将记录和缓存的视频存储在存储器134中。存储器134可以是适合于记录或缓存视频的任何存储器,例如,一个或多个硬盘驱动器阵列、硬盘、服务器阵列、RAM、SRAM、DRAM、ROM、闪存存储器或任何其他合适的存储器。在某些实施例中,存储器134可以存储与记录或缓存的视频有关的,来自交互式媒体系统100的控制电路132、用户设备110、媒体源120或任何其他装置的指令。例如,这些指令可以包括将视频保持在存储器(用户可访问其中的视频)中多长时间(例如,在基于等级的系统中)或者任何其他合适的指令。在图I的例子中,存储器134被示出为服务器130的部件,但是,在其他实施例中,存储器134可以是独立部件。当用户设备110的用户访问非点播视频(例如,通过调谐到一个频道)时,特殊播放客户程序可以自动指示用户设备Iio的记录装置118,将视频缓存到一个或多个缓冲器中。此外,特殊播放客户程序可以向服务器130发送请求,要求包括用户第一次开始观看视频之前发送的视频部分的反绕流。在某些实施例中,特殊播放客户程序还可以向服务器130发送请求,要求包括特殊播放客户程序还没有缓存的视频部分的前进流。在请求前进流之前,特殊播放客户程序可以首先确定服务器130是否缓存或记录了整个视频。或者,特殊播放客户程序可以系统地请求前进流并等待来自服务器130的、关于视频的前进流部分是否可用的响应。特殊播放客户程序可以在任何合适的时刻,例如,用户刚开始观看视频(例如,调谐到一个频道)时、在指定时间之后(例如,I分钟或5分钟)、响应于来自用户的特殊播放请求(例如,暂停或反绕)或在任何其他合适的时刻,请求反绕和/或前进流。响应于接收到对反绕和/或前进流的请求,如果可用的话,则服务器130可以生成并向用户设备HO发送反绕和/或前进流。例如,如果特殊播放客户程序请求实况广播的体育赛事的反绕和前进流这两者,则由于服务器还没有对整个体育竞赛进行缓存和记录,因此,服务器130可以只生成并发送反绕流。如果给用户设备110提供前进流,则前进流可以包括完整特征视频(例如,不跳过任何帧),并且,可以以比发送实时视频快的速度(例如,快两倍)进行发送。因此,前进流需要比实时视频更多的带宽。相似地,反绕流可以包括完整特征视频(例如,不跳过任何帧),并且,可以以比发送实时视频快的速度进行发送。服务器130可以利用任何合适的发送方案(例如,MPEG-2QAM流或DOCSISQAM流),给用户设备110提供反绕和前进流。例如,可以将反绕和前进流分别作为独立的节目添加到用于发送视频的活动QAM流中(例如,将反绕流放在第一PID(packetidentifier,包标识符)中,而将前进流放在第二PID中,其中,PID在QAM流中)。作为另一个例子,可以将反绕和前进流作为单个节目添加到活动QAM流中(例如,单个PMT(programmaptable,节目映射表),PID可以标识反绕视频和首频、如进视频和首频以及原始实时视频和首频)。作为另一个例子,服务器可以生成一个或多个新QAM流,每个新QAM流都包含反绕和前进流中的一个。可以以任何合适的方式,例如,逐位倒序(reverseorderbitwise)(例如,好象用户正在从建立缓冲器的瞬间反绕)、逐块倒序、逐包倒序或通过随机填充正在丢失的数据位(例如,比特进发(bittorrent)法),提供反绕流视频。对于逐位倒序以外的方法,反绕功能只在由特殊播放客户程序缓存的视频充分连续从而支持回放的情况下可用。特殊播放客户程序可以命令记录装置118,将服务器130提供的前进和/或反绕流缓存在一个或多个缓冲器中。图2示出了用于一个或多个缓冲器的示意性数据结构。数据结构200包括表格210以及缓冲器222和224。表格210可以被存储在记录装置118中(例如,在存储器220中)、控制电路116的存储器中(例如,RAM)、或者用户设备110的任何其他存储器中。缓冲器222和224可以被存储在记录装置118的存储器220中(例如,硬盘驱动器上)。表格210包括用于视频流的列(例如,前进和反绕流)以及用于将流链接到它们相应的缓冲器的指针的列。响应于接收到来自服务器130的反绕和/或前进流,特殊播放客户程序为表格210中的流创建行212和214。由反绕流提供的视频被缓存在反绕缓冲器222中。由指针232对缓存在反绕缓冲器中的当前帧Fh进行识别。反绕缓冲器222开始于帧Fn,结束于帧Ftl,其中,FnS用户开始观看视频时显示的帧,Ftl为视频的第一帧。从帧Fn到帧Ftl基本上连续地反向用反绕流的视频填充反绕缓冲器(例如,按照逐位倒序)。相似地,由前进流提供的视频被缓存在前进缓冲器224中。由指针234对前进缓冲器中的当前帧Fi_f进行识别。前进缓冲器224开始于帧Fn,结束于帧Fy,Fy为视频的最后帧。特殊播放客户程序优选地以高于实时的速度将视频缓存在前进缓冲器224中。如果特殊播放客户程序没有接收到前进流,则特殊播放客户程序可以将视频的实时流缓存在前进缓冲器224中。在某些实施例中,直到用户已经观看了视频一段指定时间之后,特殊播放客户程序才请求或接收反绕和/或前进流。如果记录装置118在指定时间内缓存实时流(例如,在实时缓冲器中),则特殊播放客户程序可以请求反绕流在用户开始观看视频时开始,前进流在指定时间之后开始。那么,如图3所示,反绕缓冲器322开始于帧Fn_J例如,在用户开始观看视频时的帧),前进缓冲器324开始于帧Flrf(例如,指定时间之后的视频帧),并且,实时缓冲器326包括帧Fn_,与Flrf之间的视频。一旦记录装置118开始缓存前进流,则特殊播放客户程序可以命令记录装置118停止缓存实时流,以避免将相同视频缓存两次。或者,特殊播放客户程序删除缓存在实时缓冲器中的视频,并且命令服务器130提供开始于同一帧、例如帧Fi^与Flrf之间的任何帧的反向流和前进流。当用户调用特殊播放功能时,特殊播放客户程序可以将视频从实时视频流无缝转移到缓存在反绕缓冲器和实时缓冲器和/或前进缓冲器中的视频。然后,不是从远程服务器,而是由本地存储在记录装置中的缓冲器提供用户特殊播放功能。为了回放缓存在反绕缓冲器中的视频,特殊播放客户程序可以命令记录装置118提供缓存在反绕缓冲器222中的、从帧Ftl到帧Fn的视频。为了回放缓存在前进缓冲器中的视频,特殊播放客户程序可以命令记录装置118提供缓存在前进缓冲器224中的、从帧Fn到帧Fy的视频。特殊播放客户程序可以利用表格210识别回放哪个缓冲器(例如,像链接列表那样连接缓冲器)。特殊播放客户程序可以利用增强传输控制条显示反绕和前进缓冲器的直观表示。图4示出了用户正在观看的视频402的示意性屏幕400以及增强传输控制条410。增强传输控制条410包括视频402的标题412、发送该视频的频道414以及该视频的开始时间416和结束时间418。增强传输控制条410包括向用户表示视频402的当前回放位置和时间421的光标420。增强传输控制条410包括用于识别用户何时第一次开始观看视频的标记430。增强传输控制条410还包括对分别缓存了反绕和前进流的反绕和前进缓冲器的直观表示。具体地说,反绕缓冲器表示432开始于标记430,时间上朝着视频的开头向后移动,而前进缓冲器表示434开始于标记430,时间上朝着视频的结尾向前移动。对于前进流不可用的、月艮务器130还没有完全记录或缓存的视频,前进缓冲器表示434可以表示缓存了来自实时流的视频的实时缓冲器。图5表示在特殊播放客户程序已经将反绕流和前进流的另外部分缓存在记录装置118中之后的图4的增强传输控制条(比较图4和图5可以看出这一点)。在增强传输控制条510中,光标520前进,并且指示当前的回放时间为7:36,比图4的增强传输控制条410指示的回放时间晚16分钟。标记530还没有从图4的情况移动,但是,反绕缓冲器532已经前进到视频的开头,而前进缓冲器534已经朝着视频的结尾前进。图6示出了在增强传输控制条中,反绕和前进缓冲器的直观表示的另一种示意性显示。屏幕600包括用户正在观看的视频602和增强传输控制条610。增强传输控制条610包括视频的开始时刻612和结束时刻614、向用户指示当前回放位置的光标620、以及反绕缓冲器632和前进缓冲器634的表示。增强传输控制条610还包括反绕光标622和前进光标626,这些光标分别与反绕预览图像624和前进预览图像628有关。具体地说,反绕预览图像624可以对应于反绕光标622的位置,而前进预览图像628可以对应于前进光标626的位置。在某些实施例中,用户可以命令特殊播放客户程序显示多个反绕和前进光标以及相关的预览图像。在某些实施例中,反绕和前进光标可以对应于特殊播放客户程序当前正在缓存的反绕和前进流的帧。或者,反绕和前进光标可以对应于用户的特殊播放请求(例如,对预览图像624或628进行反绕或快进)。特殊播放客户程序可以自动显示预览图像624和628中的一个或两个,或者,用户可以请求显示预览图像。当用户已经在预览图像624或628中识别出用户想回放的视频部分时,用户可以全屏显示预览图像并在选择的预览图像的回放位置回放视频。用于缓存视频的缓冲器可以受到大小方面的任意限制,或者只受记录装置118上的可用空间的限制。如果缓冲器的大小受到限制或者记录装置118的可用空间有限,则缓冲器可能不足以缓存全部视频。为了给用户提供增强特殊播放功能,特殊播放客户程序可以将反绕和/或前进流缓存在缓冲器中,并且当为了满足用户的特殊播放请求而需要时,对反绕和/或前进缓冲器进行覆写(例如,响应于延伸到没有缓存在反绕缓冲器中的视频的反绕请求,请求被缓存的新的视频流代替前进缓冲器)。此外或者作为替代,特殊播放客户程序可以识别反绕和前进流中的广告(例如,根据包标识符)并且不缓存广告。一旦将整个视频存储在缓冲器中,客户程序可以自动或响应于用户指令,将缓存的视频保存为记录,用于将来观看。在某些实施例,客户程序可以自动或响应于用户指令,对缓存在缓冲器中的不完整的视频进行保存。在某些实施例中,服务器130可以不对提供给用户设备110的每个视频进行缓存或记录。那么,在请求反绕和/或前进流之前,特殊播放客户程序可以确定服务器130是否已经缓存或记录了视频。例如,特殊播放客户程序可以从服务器130接收视频是否可用的指示。响应于确定视频实际上可用,特殊播放客户程序可以请求来自服务器130的反绕和/或前进流。特殊播放客户程序可以在任何合适的时刻确定服务器130是否已经缓存或记录了部分或全部视频。例如,服务器130可以按照规则的间隔,为特殊播放客户程序识别服务器已经或将要在指定时间(例如,第二天或下周)缓存或记录的视频。服务器130还可以给特殊播放客户程序指定整个视频将被缓存或记录的时间。特殊播放客户程序进而可以为用户识别视频。例如,特殊播放客户程序可以显示图标、使列表变暗、改变颜色或在传输控制条上或节目栅格中提供任何其他合适的表示。图7示出了包括节目列表栅格702的示意性节目栅格屏幕700。通过图标710和712对列在栅格702中的、已经被服务器130缓存或记录的节目进行识别。反绕图标710表示服务器130至少已经部分缓存或记录了与图标相关的节目并且反绕流可用(例如,“朋友”和“女高音”)。前进图标712表示服务器130已经缓存或记录了与图标相关的整个节目,并且,前进流可用(例如,“伯恩的身份(BourneIdentity)”)。特殊播放客户程序可以显示反绕图标710和前进图标712以表示反绕和前进流都可用。或者,特殊播放客户程序可以只显示前进图标712以表示反绕和前进流可用(例如,因为如果缓存或记录了整个视频,则服务器可以提供反绕流)。尽管图7示出了图标,但是,节目栅格可以包括任何其他合适的表示。特殊播放客户程序可以用一个或多个指示符来识别用户可以请求反绕或快进流的视频。以下的流程图用于说明包含在本发明的一些实施例中的处理。图8为用于将视频反绕到用户第一次开始观看视频之前的点的示意性处理的流程图。处理800开始于步骤802。在步骤810,用户在视频已经开始之后选择非点播视频(例如,在广播已经开始之后开始观看广播节目)。例如,用户可以通过输入频道号或通过从适当的特殊播放客户程序显示(例如,节目指南栅格)中选择节目,命令控制电路116中的调谐器调谐到由媒体源120提供的实时流。在步骤820,特殊播放客户程序确定用户对视频的兴趣是否足以肯定请求反绕流。例如,特殊播放客户程序可以确定用户是否已经观看了视频一段指定时间,或者,用户是否已经调用了特殊播放功能(例如,“反绕”)。在某些实施例中,在步骤820之前,特殊播放客户程序可以确定服务器130是否已经缓存或记录了选择的视频。但是,在图8所示的处理中,这个步骤被省略。如果特殊播放客户程序确定用户对视频的兴趣不足以肯定请求反绕流,则处理800转移到步骤852并结束。相反,如果在步骤820,特殊播放客户程序确定用户对视频的兴趣足以肯定请求反绕流,则处理800转移到步骤830。在步骤830,特殊播放客户程序请求来自服务器130的反绕流。反绕流包括用户第一次选择视频之前由媒体源120发送的视频。反绕流的视频可以开始于用户第一次选择该视频的时刻,并且,流在时间上倒退到视频开头的时刻。反绕流可以以任何合适的方式,例如逐位倒序,提供视频内容。在步骤840,特殊播放客户程序通过通信路径122接收来自服务器130的反绕流,并且命令记录装置118将反绕流缓存在一个或多个反绕缓冲器中。在步骤850,特殊播放客户程序通过一个或多个反绕缓冲器对视频进行反绕,将视频反绕到用户第一次选择视频之前的点。然后,特殊播放客户程序可以回放来自一个或多个反绕缓冲器的视频。处理800结束于步骤852。图9为用于将视频快进到视频的实时流还没有到达的点的示意性处理的流程图。处理900开始于步骤902。在步骤910,用户选择在实时流中发送的非点播视频(例如,广播节目)。例如,用户可以通过输入频道号或通过从合适的特殊播放客户程序显示(例如,节目指南栅格)中选择节目,命令控制电路116中的调谐器调谐到由媒体源120提供的实时流。在步骤920,特殊播放客户程序确定服务器130是否已经记录或缓存了整个视频。例如,特殊播放客户程序可以请求来自服务器130的、对已经记录或缓存整个视频的表示。作为另一个例子,如果视频为重播或重复节目(例如,流行连续剧的重复情节),则特殊播放客户程序可以确定服务器130记录或缓存了该视频。如果特殊播放客户程序确定服务器130还没有记录或缓存该视频,则处理900转移到步骤962并结束。相反,如果在步骤920,特殊播放客户程序确定服务器130已经记录或缓存了该视频,则处理900转移到步骤930。在步骤930,特殊播放客户程序确定用户对视频的兴趣是否足以肯定请求前进流。例如,特殊播放客户程序可以确定用户是否已经观看了视频一段指定时间,或者,用户是否已经调用了特殊播放功能(例如,“快进”)。如果特殊播放客户程序确定用户对视频的兴趣不足以肯定请求前进流,则处理900转移到步骤962并结束。相反,如果在步骤930,特殊播放客户程序确定用户对视频的兴趣足以肯定请求前进流,则处理900转移到步骤940。在步骤940,特殊播放客户程序请求来自服务器130的前进流。前进流至少包括用户第一次选择视频之后(例如,用户请求前进流之后)由媒体源120发送的整个视频(例如,没有跳过任何视频帧)。在某些实施例中,服务器130按照高于实时流的速度向用户设备110提供前进流(例如,以大于I倍的速度)。在步骤950,特殊播放客户程序通过通信路径122接收来自服务器130的前进流,并且命令记录装置118将前进流缓存在一个或多个前进缓冲器中。在步骤960,特殊播放客户程序通过前进缓冲器对视频进行快进。然后,特殊播放客户程序可以回放来自一个或多个缓存的前进缓冲器的视频。处理900结束于步骤962。图10为用于向用户设备110发送反绕和前进流的示意性流程图。处理1000开始于步骤1002。在步骤1010,服务器130接收来自媒体源120的、例如也提供给交互式媒体系统100的用户设备110的实例的实时流中的视频。在步骤1020,服务器130确定是否记录或缓存了在步骤1010接收的部分或全部视频。服务器130可以用任何合适的标准(例如,流行视频或优选视频提供商)确定是否记录或缓存了特定视频。在某些实施例中,用户设备110或交互式媒体系统100的另一个装置可以指定服务器130缓存或记录哪些视频。在步骤1020,如果服务器确定没有要记录或缓存的视频,则处理1000转移到步骤1062并结束。相反在步骤1020,如果服务器确定至少要记录或缓存一个特定视频,则处理1000缓存至少一个特定视频并转移到步骤1030。在某些实施例中,处理1000可以跳过步骤1020并简单地记录或缓存每个视频。在步骤1030,服务器130接收来自实现在用户设备110上的特殊播放客户程序的、关于视频的请求。特殊播放客户程序可以请求在特殊播放客户程序的用户开始观看视频之前发送的视频的反绕流。特殊播放客户程序还可以另外请求或作为替代请求由媒体源提供的、还没有按照实时流发送的视频的前进流。在步骤1040,服务器130确定服务器130是否已经记录或缓存了请求的流所需的视频。例如,当用户请求前进流时,服务器可以确定是否已经记录或缓存了请求的全部视频。如果服务器130确定还没有记录或缓存所有请求的流所需的视频,则处理1000转移到步骤1062并结束。相反,在步骤1040,如果服务器130确定已经记录或缓存了请求的流所需的至少部分视频,则处理1000转移到步骤1050。例如,服务器130可以确定它已经缓存了反绕流所需要的视频,但没有缓存前进流需的视频。在步骤1050,服务器130利用所需的视频生成至少一个请求的流(例如,前进流或反绕流)。在步骤1060,服务器130通过路径122向实现在用户设备110上的特殊播放客户程序发送在步骤1050生成的至少一个请求的流。处理1000结束于步骤1062。图11为利用用户设备110回放已经缓存在反绕缓冲器和前进缓冲器中的视频的示意性流程图。处理1100开始于步骤1102。在步骤1110,特殊播放客户程序接收用户请求,从而从缓冲器回放至少一部分缓存在反绕缓冲器和前进缓冲器中的视频。例如,特殊播放客户程序可以接收从开头回放视频的用户请求。在步骤1120,特殊播放客户程序识别用户想开始回放的视频的视频帧。例如,在从反绕缓冲器对视频进行反绕期间,如果用户选择“播放”键,则特殊播放客户程序可以识别用户选择“播放”键时显示的视频帧。在步骤1130,特殊播放客户程序确定在步骤1120识别的视频帧是否在反绕缓冲器中。如果特殊播放客户程序确定该视频帧在反绕缓冲器中,则处理转移到步骤1140。在步骤1140,特殊播放客户程序在显示装置112上显示识别的帧,随后移向反绕缓冲器的开头,并且显示缓存在反绕缓冲器中的下面的帧。例如,如果反绕缓冲器开始于帧Fn,结束于帧Ftl(S卩,节目的开头),并且,特殊播放客户程序识别出帧Fi,则特殊播放客户程序显示帧匕、帧Fi+1、帧Fi+2直到帧Fn。换句话说,特殊播放客户程序按照先进后出的原则逐个处理缓冲器。在步骤1150,特殊播放客户程序显示反绕缓冲器的最后帧,并且转移到前进缓冲器。在某些实施例中,特殊播放客户程序可以代之以转移到实时缓冲器(例如,如果没有前进缓冲器,或者,如果在反绕缓冲器和前进缓冲器之间有实时缓冲器)。在步骤1160,特殊播放客户程序在显示装置112上显示前进缓冲器的第一帧,随后移向前进缓冲器的结尾,并且显示缓存在前进缓冲器中的下面的帧。例如,如果前进缓冲器开始于帧Fn,结束于帧Fy(S卩,节目的结尾),则特殊播放客户程序显示帧Fn、帧Fn+1、帧Fn+2直到帧Fy。换句话说,特殊播放客户程序按照先进先出的原则逐个处理缓冲器。在步骤1130,如果特殊播放客户程序确定视频帧不在反绕缓冲器中(例如,识别的帧在前进缓冲器中),则处理1100也可以访问步骤1160。在这种情况下,特殊播放客户程序不是首先显示前进缓冲器的第一帧,而是首先显示在步骤1120识别的帧。然后,处理1100结束于步骤1162。出于说明而不是限制的目的,介绍了本发明的上述实施例,并且,本发明仅受以下的权利要求限制。权利要求1.一种用于对非点播视频进行反绕或快进的方法,包括处理观看标准;基于处理的观看标准选择用于增强反绕和快进功能的视频;基于处理的观看标准利用服务器存储选择的视频;响应于请求前进流或反向流,发送存储的视频。2.如权利要求I所述的方法,其中,所述观看标准包括用户观看历史,用户观看、设定提醒或录制的节目或频道,在用户简档中识别的用户兴趣,或者在录制另一节目的同时用户观看的节目。3.如权利要求2所述的方法,其中,所述观看标准包括多介用户观看历史,多个用户观看、设定提醒或录制的节目或频道,在多个用户的简档中识别的用户兴趣,或者在录制另一节目的同时多个用户观看的节目。4.如权利要求I所述的方法,还包括利用服务器存储在所选择的视频之前安排的内容。5.如权利要求I所述的方法,还包括利用服务器存储与基于处理的观看标准的频道关联的所有内容。6.如权利要求I所述的方法,还包括对针对增强反绕和快进功能选择的视频的媒体提供商收费。7.如权利要求I所述的方法,还包括通过短语或指示符识别选择的用于存储的视频。8.如权利要求I所述的方法,还包括向用户分配一定量的存储器用于存储针对增强反绕和快进功能选择的视频。9.如权利要求I所述的方法,还包括存储关于已访问视频的增强反绕和快进功能的用户的信息。10.如权利要求I所述的方法,还包括从用户设备接收存储用于反绕和快进功能的视频的请求。11.一种用于对非点播视频进行反绕或快进的系统,包括用于处理观看标准的装置;用于基于处理的观看标准选择用于增强反绕和快进功能的视频的装置;用于基于处理的观看标准利用服务器存储选择的视频的装置;用于响应于请求前进流或反向流,发送存储的视频的装置。12.如权利要求11所述的系统,其中,所述观看标准包括用户观看历史,用户观看、设定提醒或录制的节目或频道,在用户简档中识别的用户兴趣,或者在录制另一节目的同时用户观看的节目。13.如权利要求11所述的系统,其中,所述观看标准包括多个用户观看历史,多个用户观看、设定提醒或录制的节目或频道,在多个用户的简档中识别的用户兴趣,或者在录制另一节目的同时多个用户观看的节目。14.如权利要求11所述的系统,还包括用于利用服务器存储在所选择的视频之前安排的内容的装置。15.如权利要求11所述的系统,还包括用于利用服务器存储与基于处理的观看标准的频道关联的所有内容的装置。16.如权利要求11所述的系统,还包括用于对针对增强反绕和快进功能选择的视频的媒体提供商收费的装置。17.如权利要求11所述的系统,还包括用于通过短语或指示符识别选择的用于存储的视频的装置。18.如权利要求11所述的系统,还包括用于向用户分配一定量的存储器用于存储针对增强反绕和快进功能选择的视频的装置。19.如权利要求11所述的系统,还包括用于存储关于能访问视频的增强反绕和快进功能的用户的信息的装置。20.如权利要求11所述的系统,还包括用于从用户设备接收存储用于反绕和快进功能的视频的请求的装置。全文摘要本发明涉及用于增强特殊播放功能的系统和方法。用于将视频反绕到第一次观看视频之前的点的系统和方法。远程服务器对媒体源发送的视频进行缓存。当对视频提出特殊播放请求时,服务器生成包括媒体源在用户开始观看视频之前发送的视频的反绕流。当接收到反绕流时,用户设备可以将反绕流缓存在反绕缓冲器中并从反绕缓冲器进行反绕或播放。服务器还可以生成并发送媒体源还没有发送的视频的前进流。用户设备可以将前进流缓存在前进缓冲器中。为了对视频进行特殊播放操作,用户设备可以将对视频的回放转换到反绕和前进缓冲器,并且从缓冲器对视频进行反绕或快进。文档编号H04N7/173GK102638708SQ201210083128公开日2012年8月15日申请日期2006年12月12日优先权日2006年2月28日发明者M·L·克拉内申请人:联合视频制品公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1