掌桥专利:专业的专利平台
掌桥专利
首页

通过不同的输出设备继续播放媒体内容

文献发布时间:2024-04-18 19:53:33


通过不同的输出设备继续播放媒体内容

分案说明

本申请属于申请日为2015年09月02日的中国发明专利申请201580035947.9的分案申请。

有关申请的交叉引用

本申请要求2014年9月16日提交的标题为“通过不同的输出设备继续播放媒体内容(CONTINUATION OF PLAYBACK OF MEDIA CONTENT BY DIFFERENT OUTPUT DEVICES)”的美国专利申请第14/488,260号的优先权,该案以引用的方式全部并入本文。

技术领域

本申请涉及通过不同的输出设备继续播放媒体内容。

背景技术

数字设备的普及和方便性已经使媒体内容的播放变得无处不在。例如,台式计算机、膝上型计算机、大屏幕电视、和类似的设备的用户可以体验各种类型的媒体内容。类似地,手机、平板电脑、个人数字助理、和可穿戴设备(手表、风镜或眼镜等)的用户可以携带或者佩戴这些设备来实际体验几乎任何设置中的媒体内容。可在设备上播放的各种形式的媒体内容可以包括:视频、音频、图像、游戏、文本、以及这些媒体内容的组合,可以在设备的显示屏幕、音频扬声器、和其它输出部件上输出这些媒体内容。在各种情况下,设备可以播放来自于设备上的本地存储设备(诸如,闪速存储器、DVD等)上的媒体内容。在其它情况下,设备可以基于接收自通过网络(诸如,互联网)连接至设备的服务器的数据流来输出媒体内容。

发明内容

本申请的实施方式涉及通过不同的输出设备继续播放媒体内容。在一些实施方式中,一种方法包括:使媒体内容数据流得以由第一设备从流源接收并且由该第一设备输出至用户,其中,在媒体内容数据流的一部分被输出之前,在第一设备上缓冲该媒体内容数据流的这一部分。检测用户已经停止使用第一设备来输出媒体内容数据流的指示。该方法确定媒体内容数据的位置标记,该位置标记指示大约在指示的时间处输出的媒体内容数据的一部分。该方法使媒体内容数据流得以由第二设备接收并且输出,其中,该输出在由位置标记指示的媒体内容数据流的这部分处开始。将在第一设备上的媒体内容数据的缓冲部分从第一设备发送至第二设备,以便在输出由第二设备从流源接收的媒体内容数据流的未缓冲部分之前,由第二设备输出。

描述了该方法的各种实施方式和示例。例如,媒体内容数据流可以由第一设备和第二设备通过互联网从作为流源的一个或者多个服务器接收。媒体内容数据流的缓冲部分可以通过第一设备和第二设备的本地网络发送至第二设备。检测用户已经停止使用第一设备来输出的指示可以包括:检测用户已经物理地移动到第一设备的预定区域之外。例如,检测用户已经进行了物理地移动可以包括:使用声音检测系统,该声音检测系统包括在第一设备上的一个或者多个部件和在用户身上的设备上的一个或者多个部件,和/或检测第一设备与在用户身上的设备的配对解除。在更多示例中,检测到用户已经停止使用第一设备来输出的指示可以包括:检测到用户已经从预定区域之外的位置物理地移动到第二设备的该预定区域中,和/或检测到用户已经执行了使第一设备停止输出媒体内容数据流的动作。

在一些实施方式中,第一设备不位于用户身上,而第二设备是位于用户身上的便携式设备。在一些实施方式中,第一设备和第二设备都不位于用户身上。该方法可以包括:使通知得以发送至第二设备,从而使得,该通知由第二设备输出并且提供可供用户选择的继续选项,其中,可以响应于用户选择了该继续选项而执行缓冲部分的发送和通过第二设备输出媒体内容数据流。该方法可以包括:使通知得以发送至中间设备,例如,在用户身上的设备,其中,通知由该中间设备输出并且提供可供用户选择的继续选项,并且响应于用户选择了该继续选项而执行通过第二设备输出媒体内容数据流。

该方法可以进一步包括:使信息得以通过网络发送至第二设备,该信息包括位置标记和命令,该命令用于从位置标记指示的位置起通过第二设备开始继续输出媒体内容。在用户未使用第二设备登录到媒体服务的用户账户的情况下,并且在用户未导航用户界面以在不同设备上选择媒体内容数据的情况下,可以在第二设备上提供输出。

在一些实施方式中,一种方法包括:使媒体内容数据流得以由第一设备通过网络从流源接收并且由该第一设备输出,其中,在输出媒体内容流的一部分之前,在第一设备上连续地缓冲媒体内容流的一部分,并且输出的媒体内容数据与使用第一设备的用户相关联。该方法检测到用户已经相对于第一设备进行了物理地移动,以便指示用户不再期望继续体验来自第一设备的输出。该方法确定媒体内容的位置标记,该位置标记指示大约在检测的时间处输出的媒体内容数据的一部分,并且使通知得以发送至正在由用户使用的第二设备,其中,该通知由第二设备输出并且提供可供用户选择的继续选项。该方法使媒体内容的缓冲部分得以通过第一设备和第二设备的本地网络从第一设备发送至第二设备,并且使媒体内容数据流的紧接着缓冲部分的未缓冲部分得以由第二设备通过网络从流源接收。响应于用户选择了继续选项,该方法使媒体内容数据流由第二设备输出,其中,第二设备在由位置标记指示的媒体内容的该部分处开始媒体内容的输出,并且在输出媒体内容数据流的未缓冲部分之前,通过第二设备输出媒体内容数据的缓冲部分。

在一些实施方式中,一种系统可以包括:存储设备和至少一个处理器,该至少一个处理器访问该存储设备并且可操作以执行操作。该操作包括:使媒体内容数据流得以由第一设备从流源接收并且由该第一设备输出至用户,其中,在输出媒体内容数据流的一部分之前,在第一设备上缓冲媒体内容数据流的这部分。检测到用户已经停止使用第一设备来输出媒体内容数据流的指示。该操作确定媒体内容数据的位置标记,该位置标记指示大约在指示的时间处输出的媒体内容数据的一部分。该操作使媒体内容数据流得以由第二设备接收并且输出,其中,该输出在由位置标记指示的媒体内容数据流的那部分处开始。将在第一设备上的媒体内容数据的缓冲部分从第一设备发送至第二设备,以便在输出由第二设备从流源接收的媒体内容数据流的未缓冲部分之前,由第二设备输出。

在系统的各种实施方式中,媒体内容数据流可以由第一设备和第二设备通过互联网从作为流源的一个或者多个服务器接收,其中,媒体内容数据流的缓冲部分可以通过第一设备和第二设备的本地网络发送至第二设备。检测到用户不再期望体验来自第一设备的输出的指示的操作可以包括:检测到用户已经物理地移动到第一设备的预定区域之外,和/或检测到用户已经从第二设备的预定区域之外的位置物理地移动到第二设备的该预定位置中。

在系统的一些实施方式中,第一设备不位于用户身上,而第二设备是位于用户身上的便携式设备,并且该操作进一步包括:使通知得以发送至第二设备,其中,该通知由第二设备输出并且提供可供用户选择的继续选项,并且响应于用户选择了该继续选项而执行将媒体内容数据的缓冲部分从第一设备发送到第二设备和通过第二设备输出媒体内容数据流。在一些实施方式中,第一设备和第二设备都不位于用户身上,并且该操作进一步包括:使通知得以发送至用户身上的中间设备,其中,该通知由该中间设备输出并且提供可供用户选择的继续选项,其中,响应于用户选择了该继续选项而执行通过第二设备输出媒体内容数据流。

附图说明

图1是可以用于本文描述的一种或者多种实施方式的示例网络环境的框图;

图2是图示了根据一些实施方式的、用于通过不同的输出设备继续播放媒体内容的示例方法的流程图;

图3是图示了根据一些实施方式的用于通过不同的输出设备继续播放媒体内容的另一示例方法的流程图;

图4A至4C是包括本文描述的一些特征的系统的示例的图示性说明;以及

图5是可以用于本文描述的一种或者多种实施方式的示例设备的框图。

具体实施方式

本文描述的一种或者多种实施方式涉及通过不同的输出设备继续播放媒体内容。例如,第一设备可以接收媒体内容并且将该媒体内容输出至观看或者以其他方式体验该内容的用户。如果系统检测到用户已经停止观看内容或者已经以其他方式停止使用第一设备来播放,那么可以将媒体内容自动地传输至第二不同的设备,在该第二不同的设备处,内容输出可以在用户停止使用第一设备播放的同时从其在第一设备上中断的相同或者相似的位置继续播放。

在一些其它示例中,第一设备可以通过互联网从流源接收媒体内容数据流(例如,视频或者电影内容、音乐、游戏等),并且可以缓冲内容数据并且将该内容数据输出至用户。例如,可以在电视设备、计算机设备、或者其它设备的显示屏幕和扬声器上输出媒体内容。系统可以按照各种方式检测用户正在体验内容,诸如,检测到用户已经命令播放内容。在一些其它实施方式中,用户可以将内容从便携式设备(诸如,电话)串流至第一设备进行输出。

系统可以检测到用户已经停止使用第一设备和/或停止体验输出的媒体内容。在各种示例中,系统可以检测到第一设备已经停止、关机、和/或不再接收媒体内容数据流。在一些情况下,系统可以检测到用户已经物理地移动到离第一设备的预定距离之外或者物理地移动到第一设备所在区域之外,其中,该检测可以使用任何合适的传感器系统,包括:在第一设备上的声音传感器系统和由用户携带的使用声波(例如,超声波或者亚音速)的设备、用在用户携带的设备上的GPS传感器。在一些情况下,系统可以检测第一设备与用户身上的设备(诸如,用于命令第一设备和/或将内容数据串流到第一设备的电话)的配对解除。在一些情况下,系统可以检测到用户已经物理地移动到可以用于输出媒体内容的不同设备或者第二设备的预定距离内。

如果系统检测到用户已经停止体验媒体内容,那么系统存储媒体内容的位置标记,该位置标记大约指示最终输出至用户的媒体内容的一部分。系统然后在没有用户介入的情况下将内容数据自动地发送至由用户使用的第二设备,从而允许用户在第二设备上继续输出媒体内容,并且媒体内容从与位置标记指示的中断位置相同的位置开始播放。

在一些示例中,系统可以响应于特定情况而在第二设备上继续输出媒体内容数据。例如,如果用户移动到第二设备的预定距离内,那么系统检测到该接近以在第二设备上继续进行输出。在一些情况下,系统首先可以将由第二设备显示的通知发送至用户,该通知指示有关媒体内容的描述信息,并且提供按钮或者链路,该按钮或者链路在由用户选择时命令在第二设备上播放内容。在一些示例中,第二设备可以是便携式电话或者用户身上的其它设备,从而使得通过便携式设备输出媒体内容。在其它示例中,第二设备可以是不在用户身上的设备(诸如,TV、计算机等),该设备开始自动播放媒体内容(例如,如果用户在第二设备的范围内)和/或响应于用户选择了在第二设备或者不同设备上的通知命令而播放媒体内容。在一些示例中,与第二设备不同的中间设备可以用于使得在第二设备上的内容输出能够继续。例如,在一些实施方式中,电话或者用户身上的其它便携式设备可以是中间设备,该中间设备接收向用户显示的通知并且允许用户命令在第二设备(诸如,TV、计算机等)上输出内容。

一些实施方式可以使第一设备将缓冲内容数据发送至第二设备以供在第二设备上输出。例如,第一设备可以在其内容数据的输出期间维持输出缓冲,并且可以响应于针对第二设备选择的继续输出而通过本地网络(例如,Wi-Fi和/或以太网)将缓冲的媒体内容数据自动发送至第二设备,从而为第二设备提供快速且流畅地继续输出内容数据。例如,流中的在缓冲数据之后的任何剩余内容数据可以由第二设备通过互联网从流源接收。

这些和其它描述的特征可以在用户使用不同设备时和/或在用户移动到其它设备可用于播放内容的位置时,允许用户便利地在不同设备上继续自动体验媒体内容。在用户不必登录到第二设备的情况下、不必通过使用第二设备登录到媒体服务的用户账户的情况下、或者不必导航由第二设备(或者其它设备)显示的用户界面以选择媒体内容以便在第二设备上输出的情况下,在第二设备上执行媒体内容的继续输出。因此,在如本文公开的不同设备上继续媒体内容播放的技术效果包括:减少用于使这种内容播放能够继续的用户动作,从而在按照灵活的方式在各种设备之间体验媒体内容时节省用户的时间、能量和资源。另一技术效果可以包括:基于通过快速传输机构(诸如,本地网络)在第二设备上接收来自第一设备的缓冲数据,来进行在不同设备上继续播放的更流畅且更快速的转换。

本文对“媒体内容”的提及指示通过各种类型的信息表达的信息,诸如,由像素、视频(电影、电视插曲、短片、剪辑等)、音频(例如,音乐、录音、伴随其它内容的配音、来自视频源的声音片段等)、游戏(例如,视频游戏、玩游戏的录像、或者其它与游戏有关的信息)、软件应用输出(显示的图表或者图纸、图形演示、交互式演示或者幻灯片等)、文本(图书、杂志、报刊、书信等)或者这些类型中的两种或者更多种的混合组成的视觉图像。内容的“作品”涉及完整且独立的内容作品或者片段或者作品集,诸如,电影、歌曲、音乐专辑、新闻报道、杂志、游戏、图书等。可以通过使用视觉设备(诸如,显示屏幕)、音频设备(诸如,音频播放器设备和扬声器)、力输出设备(诸如,电动机或者其它致动器等)来获取媒体内容的输出。

图1图示了示例网络环境100的框图,其可以用于本文描述的一些实施方式。在一些实施方式中,网络环境100包括一个或者多个服务器系统,诸如,在图1的示例中的服务器系统102。例如,服务器系统102可以与一个或者多个网络130通信。服务器系统102可以包括服务器设备104和数据库106或者其它存储设备。网络环境100还可以包括一个或者多个客户端设备(诸如,客户端设备120、122、124和126),该一个或者多个客户端设备可以经由网络130和/或服务器系统102彼此通信。

网络130可以包括任何类型的通信网络。例如,网络130可以包括互联网或者其它广域网(WAN),从而使得服务器系统102可以与连接至互联网的其它设备通信。还可以将客户端设备120、122、124和126中的一个或者多个连接至网络130中的互联网,以与服务器系统102和/或其它客户端设备120-126通信。在一些实施方式中,将服务器系统102和/或客户端设备120至126连接至网络130的一个或者多个本地网络,诸如,局域网(LAN),包括无线本地网络,诸如,Wi-Fi(例如,使用IEEE标准802.11)、对等网络(

为了便于说明,图1示出了针对服务器系统102、服务器设备104、和数据库106的一个框,并且示出了针对客户端设备120、122、124、和126的四个框。服务器框102、104、和106可以表示多个系统、服务器设备、和网络数据库,并且可以按照与示出的配置不同的配置来提供这些框。例如,服务器系统102可以表示可以经由网络130与其它服务器系统通信的多个服务器系统。在另一示例中,数据库106和/或其它存储设备可以提供在与服务器设备104分开的(多个)服务器系统框中,并且该数据库106和/或其它存储设备可以经由网络130与服务器设备104和其它服务器系统通信。同样,可以存在任何数量的客户端设备。各个客户端设备可以是任何类型的电子设备,诸如,计算机系统、膝上型计算机、便携式设备、手机、智能电话、平板电脑、电视、TV机顶盒或者娱乐设备、可穿戴设备(例如,显示眼镜或者风镜、手表等)、个人数字助理(PDA)、媒体播放器、游戏机或者设备等。在其它实施方式中,网络环境100可以不具有示出的所有部件和/或可以具有其它元件,替代本文描述的那些元件或者除了本文描述的那些元件之外,该其它元件包括其它类型的元件。

在各种实施方式中,终端用户U1、U2、U3、和U4可以通过使用相应客户端设备120、122、124、和126来与服务器系统102通信和/或与彼此通信。在一些示例中,用户U1至U4可以经由在服务器系统102上实施的网络服务(诸如,社交网络服务、消息服务、网站、或者其它服务)与彼此交互,其中,相应客户端设备120、122、124、和126将通信和数据传输至一个或者多个服务器系统(诸如,系统102),并且服务器系统102将合适的数据提供给客户端设备,从而使得各个客户端设备可以经由服务器系统102接收上传到网络服务的内容。在一些示例中,社交网络服务可以包括允许用户执行各种通信、形成与其它用户的链路和关联、组织用户组、上传和发布共享内容(包括由指定的社交网络服务的用户组访问的文本、图像、视频序列、音频序列或者录制品、或者其它类型的内容)、和/或执行其它与社交有关的功能的任何系统。

用户界面可以使得图像和其它内容以及通信、隐私设置、通知、和其它数据显示在客户端设备120、122、124、和126上。在一些实施方式中,可以通过使用在客户端设备上的软件(诸如,与服务器系统进行通信的应用软件或者客户端软件)来显示这种界面。可以将界面显示在客户端设备的输出设备(诸如,显示屏幕)上。

本文描述的特征的其它实施方式可以使用任何类型的系统和服务。例如,任何类型的电子设备都可以利用本文描述的特征。一些实施方式可以在间歇地连接至计算机网络的客户端或者服务器系统上提供这些特征。在一些示例中,具有显示屏幕的客户端设备可以显示图像,并且提供如本文描述的对用户可见的特征和结果。

图2是图示了用于通过不同的输出设备继续播放媒体内容的方法200的一个示例的流程图。在一些实施方式中,可以将方法200实施在,例如,如图1所示的服务器系统102上。在其它实施方式中,可以将方法200中的一些或者所有实施在系统(诸如,一个或者多个客户端设备)和/或实施在服务器系统和一个或者多个客户端系统两者上。在所描述的示例中,实施系统包括:一个或者多个处理器或者处理电路系统、和一个或者多个存储设备,诸如,数据库106、存储器、和/或其它存储设备。在一些实施方式中,一个或者多个服务器和/或客户端的不同部件可以执行方法200的不同的框或者其它部分。

方法200可以由计算机程序指令或者代码执行,该计算机程序指令或者代码可以在计算机上执行,例如,由一个或者多个处理器(诸如,微处理器或者其它处理电路系统)实施,并且可以存储在包括计算机可读介质和计算机可读存储介质(诸如,磁性介质、光学介质、电磁介质、或者半导体存储介质)的计算机程序产品上,该计算机程序产品包括:半导体或者固态存储器、磁带、可移动计算机磁盘、随机存取存储器(RAM)、只读存储器(ROM)、闪速存储器、刚性磁盘、光盘、固态存储器驱动器等。还可以例如,按照来自服务器(例如,分布式系统和/或云计算系统)的软件即服务(SaaS)的形式将程序指令包含在电子信号中,并且将其提供为电子信号。可替代地,可以利用硬件(逻辑门等)或者利用硬件和软件的组合来实施方法200。

在一些实施方式中,可以将方法200实施在服务器系统上,并且该方法200可以控制将媒体内容流输入到一个或者多个设备(诸如,第一设备、第二设备、和/或其它设备)和从一个或者多个设备输出媒体内容流。在一些实施方式中,方法200可以由一个或者多个客户端设备部分地或者完整地实施,诸如,第一设备、第二设备、和/或输出媒体内容流和/或传送如本文描述的信息的其它设备中的一个或者多个。一些实施方式可以实施第一设备、第二设备、和/或在服务器系统中的其它设备中的一个或者多个。

在一些实施方式中,可以基于用户输入来发起方法200或者该方法的部分。用户可能,例如,已经从接口(诸如,应用接口、社交网络接口、或者其它接口)选择了发起方法200。在其它实施方式中,方法200可以由系统自动发起。例如,可以基于一个或者多个特定事件或者情况(诸如,用户打开了应用(诸如,在所描述的设备中的一个或者多个上的内容查看应用等))来执行方法200(或者方法的部分)。在一些实施方式中,这种情况可以由用户按照用户的自定义偏好来指定。在一些实施方式中,可以在用户的指示下执行方法200或者其部分。例如,用户可以使用用户界面来指定或者选择用于由设备(诸如,第一设备)输出的特定媒体内容,或者可以基于用户偏好或者特定情况来自动选择媒体内容。

在框202中,该方法使媒体内容数据流得以由第一输出设备接收并且输出至第一设备的用户,其中,用户当前正在使用第一设备来播放内容。在一些示例中,第一设备可以是如上文描述的客户端设备。在各种示例中,第一媒体设备可以是能够输出媒体内容的任何电子设备,包括如下的设备,其具有输出视觉媒体内容(例如,视频、图像等)的显示屏幕、输出音频媒体内容(例如,音乐、录音、视频的配乐等)的音频扬声器或者其它音频输出设备、和/或其它输出部件(例如,用于力输出的电动机或者其它致动器等)。该方法可以基于用户对第一设备的使用,使数据流得以发送,这可以由各种技术中的任何一种来确定。例如,该方法可以接收用户命令的指示,该用户命令操纵媒体内容的输出(例如,开始、停止、快退、快进、或者暂停媒体内容的播放等),和/或在一些实施方式中,可以感测用户相对于第一设备的位置,该位置指示第一设备由用户使用。可以通过网络(例如,互联网)将媒体内容数据流从流源(诸如,提供媒体内容数据的服务器)发送至第一设备。在从第一设备输出(例如,播放)数据之前,第一设备可以在其本地存储设备(例如,存储器或者其它存储设备)中缓冲接收到的数据。下文针对图3和4A至4B更详细地描述了一些特征的示例。

在框204中,该方法检测到用户不再使用第一设备来输出(播放)媒体内容的指示。例如,该方法可以检测到用户不再期望体验来自第一设备的媒体内容流的输出的指示。该指示可以采取各种形式,诸如,用户命令停止输出、用户物理地移动到其位置、不再通过第一设备接收媒体输出信号等,下文针对图3和4A至4C更详细地描述了其中一些示例。

在框206中,该方法确定媒体内容数据的位置标记,该位置标记指示由第一设备输出的媒体内容数据的一部分。例如,位置标记可以指示大约在用户不再使用第一设备的指示的时间处(或者大约在检测到指示的时间处)输出的内容的一部分。在一些示例中,位置标记可以包括:以数据流的开始为参照媒体内容流所经过的时间的指示、或者一些其它指示或者位置标记。

在框208中,该方法使媒体内容数据流得以接收并且由第二输出设备输出至用户,其中,该输出在媒体内容流中的位置标记处开始,并且使用从第一设备接收的媒体内容数据的缓冲部分来开始输出。例如,第二设备可以是用户身上的便携式设备,或者可以是不在用户身上的设备。一些实施方式可以使用中间设备来接收通知和/或控制将媒体内容流发送至第二设备。此外,在一些实施方式中,响应于检测到用户正在使用第二设备而将媒体内容流发送至第二设备。在一些实施方式中,媒体内容流的缓冲部分可以由第一设备通过本地网络发送至第二设备,从而使从第一设备到第二设备的播放转换变得流畅。下文针对图3和4A至4C更详细地描述了一些实施方式、特征、和示例。

图3是图示了用于在不同的输出设备上继续播放媒体内容的方法300的另一示例的流程图。可以通过与上文针对方法200描述的类似的系统来实施方法300。

在框302中,该方法检测到用户使用第一输出设备来输出媒体内容数据。例如,可以将媒体内容数据与使用第一设备的用户相关联,例如,由用户选择要播放的媒体内容数据。与上文针对图2的框202描述的类似,第一媒体设备可以是能够输出媒体内容的任何电子设备。例如,在一些实施方式中,第一设备可以是不位于用户身上(例如,未携带或者佩戴)的设备,诸如,电视或者显示屏幕、膝上型计算机、台式计算机、游戏设备、连接至显示屏幕的机顶盒等。其它实施方式或者情况可以将便携式设备(诸如,手机、平板电脑、可穿戴设备等)用作第一设备,这些便携式设备可以在或者可以不在用户身上。

该方法可以通过各种技术中的任何一种来检测第一设备的使用。在一个示例中,该方法可以接收已经操纵了第一设备的功能、应用、或者输出的用户命令,诸如,用于在查看应用等中开始、停止、快退、快进、或者暂停媒体内容的播放的命令的指示。例如,这种命令可以由第一输出设备接收以命令进行输出,并且可以将其从第一设备中继至服务器。在一些实施方式中,这种命令可以由操纵另一设备(例如,便携式设备,诸如,手机、平板电脑、膝上型计算机、可穿戴设备等)或者可操作以控制第一设备的专用设备(诸如,遥控器)的用户来发送。在一些实施方式中,该方法可以通过感测用户相对于第一设备的位置来检测用户正在使用第一设备。例如,如果用户在第一设备的预定区域内和/或用户已经将一个或者多个命令提供给第一设备,那么操作的一些实施方式或者模式可以假定用户正在使用第一设备。下文描述了可以用于检测用户的位置的传感器系统的一些示例实施方式。

在框304中,该方法命令将媒体内容数据流从流源发送至第一设备(或者该方法检测到这种流正在发送),从而使得第一设备接收并缓冲媒体内容数据流并且将其输出至用户。例如,流源可以通过网络(诸如,互联网)发送内容数据。在一些示例中,流源可以是存储媒体内容数据并且通过网络(诸如,互联网)将其提供给各种设备的服务器(例如,图1的服务器系统102)。在各种实施方式中,第一设备可以从互联网并且通过将第一设备连接至互联网的本地网络(诸如,无线本地网络(例如,

在从第一设备输出数据的一部分之前,第一设备可以在本地存储设备(例如,存储器或者其它存储设备)中缓冲接收到的媒体内容数据流的这部分。在一个示例中,第一设备可以首先使用数据流来填充缓冲区,直到将缓冲区填满为止,并且然后开始输出数据流,该输出从首先加载到缓冲区中的数据开始并且使用新接收的数据填充缓冲区的后部。例如,这可以允许缓冲数据得以继续输出至用户,尽管数据传输速率发生了变化,从而在媒体内容数据的带宽变低和接收速率降低的时间(如果发生了这种时间(例如,由于网络数据流量和拥塞或者其它网络中断))期间使媒体内容的输出流畅。

可以按照各种实施方式执行一个或者多个框306、308、和310以确定用户当前是否仍在使用第一设备来体验媒体内容数据流的输出,例如,用户是否仍然期望体验来自第一设备的媒体内容数据的输出。在框306中,该方法检查来自第一设备的媒体内容的输出是否已经停止。例如,用户可能已经命令了第一设备暂停输出或者停止输出。在一些情况下,用户可能已经关闭第一设备或者使其进入睡眠模式或者相似模式。在一些情况下,用户可能已经切换了在第一设备上的场境以使用与正在输出媒体内容数据的媒体输出应用或者窗口不同的应用或者窗口。例如,用户可能已经将内容输出切换到未显示的窗口或者“最小化”窗口,或者已经操纵第一设备的功能使得内容输出不再是用户的关注点,从而使得,用户正在将用户输入提供给与正在播放媒体内容数据流的接口项不同的接口项。在一些实施方式中,第一设备可以将信号发送至流源,该信号指示在第一设备处已经停止了内容数据的输出。在又一些其它情况下,可能已经由于例如,断电或者其它非用户事件移除了第一设备的电源。在一些其它情况下,携带媒体内容数据流的网络信号可能已经中断,从而使得第一设备不再接收信号。如果已经停止输出,那么该方法继续进行到下文描述的框312。

如果尚未停止输出,那么该方法继续进行框308,在框308中,该方法检查用户是否已经物理地移出与第一设备相关联的预定物理区域。预定区域是在第一设备旁或者周围的物理区域(本文称作为设备所在区域)。在各种实施方式中,可以例如,基于用于检测用户的传感器系统,按照不同的方式来限定预定区域。在一个示例中,可以基于用户身上的便携式设备在移离第一设备时首先变得与第一设备解除配对的地方来限定预定区域。其它传感器系统可能能够更为准确地检测用户的位置,例如,利用如下文描述的声音系统。在一些情况下,预定区域可以是相对于第一设备限定的区域。例如,该区域可以是具有预定半径并且以第一设备为中心的特定圆形区域。在另一示例中,可以通过第一设备的输出区域,例如,用户可以合理地体验第一设备的输出的预定距离和区域来限定该区域。例如,可以将电视的输出区域限定为与电视屏幕相隔特定距离并且在屏幕前面或者侧面的特定角度范围内,用户可以从该特定角度范围查看屏幕。在一些示例实施方式中,可以向便携式设备分配与其屏幕或者其它输出设备相隔预定更小距离的输出区域(因为其输出设备通常比非便携式设备的那些输出设备小),并且可以将该输出区域视作在设备周围的整个体积而不是基于屏幕朝向的特定角度范围,这是因为可以容易地旋转并且移动设备。该方法可以通过使用各种技术和实施方式中的任何一种来检查用户移动。

在一个示例中,第一设备可以包括感测系统或者可以是感测系统的一部分,该感测系统在预定区域内感测该感测系统的特定其它部件。例如,声音检测系统可以使用超感观声音信号,诸如,在标准的人类听觉范围之外的超声(次声或者亚音速)声波。在一个示例中,第一设备可以包括声音发射器,该声音发射器发出超感官声音信号,该超感官声音信号由麦克风采集以被调谐成在另一设备(诸如,用户身上的便携式设备(例如,由用户携带或者佩戴))上的声音。各个声音信号可以包括其自身的不同标记或者令牌,以允许多个这种系统用于相同的区域。例如,服务器(诸如,流源或者其它服务器)可以指示第一设备发出具有嵌入到信号内的特定令牌或者代码的超感官声音信号。同时,服务器可以指示在用户身上的便携式设备收听其中具有指定令牌的声音信号。如果便携式设备检测到声音信号,那么其可以通知服务器接收到的信号和令牌。服务器然后获知便携式设备(和携带/佩戴该便携式设备的用户)位于第一设备的预定区域内,诸如,声音信号的已知传输距离或者半径或者在具有第一设备的特定房间内。如果其它设备未检测到这种声音信号,那么服务器将获知用户不在第一设备的预定区域内。

在其它示例中,可以使用其它类型的传感器系统来对用户进行定位。例如,可以使用在用户携带的便携式设备上使用的GPS传感器来对用户的当前地理位置进行定位,并且可以将该位置传输至服务器。然而,在一些实施方式中,这种传感器可能无法提供足够准确的感测位置。因此,可以结合在不同便携式设备上的GPS传感器来使用上文描述的声音传感器系统以确定用户的位置。例如,如果用户携带的声音感测便携式设备在不同用户携带的不同便携式设备上的声音发射器的范围内,那么可以通过使用来自用户的便携式设备的GPS信号和来自不同便携式设备的GPS信号两者来更好地限定用户的位置。在另一示例,如果用户的便携式设备当前未使用GPS,但是不同的设备当前正在使用GPS,那么可以使用在不同的设备上的GPS信号基于声音传感器系统来定位已知的靠近用户设备的不同用户。其它类型的传感器系统还可以或者可替代地用于对用户进行定位,诸如,提供在第一设备(或者与服务器进行通信的另一设备)上的、与捕获到的图像的人或者物体识别、来自用户佩戴的设备并且由无线接入点和/或其它传感器(例如,在第一设备上或者接近第一设备的位置中,诸如,在也保持第一设备的房间中)感测到的设备信号的三角测量、本地网络接近信号(例如,蓝牙)一起使用的摄像头系统,或者使用无线电信号、光学信号、其它电磁信号、和/或声信号的其它传感器系统。

在另一示例中,用户可能正携带着便携式设备,该便携式设备可以在第一设备的预定区域内与第一设备“配对”或者向第一设备注册。例如,配对可以允许设备通过使用相同的信号频率和/或其它常见通信参数来与彼此通信。当便携式设备在预定区域内时,设备可以保持配对。如果便携式设备移出预定区域,那么设备可以解除配对或者取消注册。在这种解除配对时,第一设备和/或便携式设备可以通知服务器配对解除,因此,将用户定位为在预定区域之外。(配对解除还可以出现在一个或者两个已配对的设备关闭或者中断其信号的情况中。在一些实施方式中,若需要,可以检测配对解除的一些原因,并且可以将其与由物理距离引起的配对解除区分开来,例如,通过检查已配对的设备是否仍然处于上电状态)。一些实施方式可以允许已配对的便携式设备将媒体内容数据串流到第一设备,从而使得,如果设备解除配对,那么不再将媒体内容数据流发送至第一设备。

如在框308中检查的,如果用户已经移动到第一设备的预定区域之外,那么该方法继续进行下文描述的框312。如果用户未移动到预定区域之外,那么在框310中,该方法检查用户是否已经从预定区域之外的位置移动到(例如,相对于)不同的输出设备的预定区域中。因为用户总是靠近其身上的便携式设备,所以该检查针对不在用户身上的不同设备。在一些实施方式中,如果检测到用户已经移动到不同设备区域中,则可以表明:用户已经停止使用第一设备而使用了不同的设备,不论用户是否已经移出第一设备区域和/或无论第一设备的输出状态如何。在一些其它实施方式中,如果用户仍然在第一设备区域内(并且现在在不同设备区域中),那么不将用户视作已经停止使用第一设备,并且将用户视作正在使用第一设备和不同设备两者。例如,在一些实施方式中,在这种情况下,可以命令第一设备和不同设备两者输出媒体内容数据流。该方法可以通过使用各种技术和实施方式中的任何一种来确定用户是否已经移动到不同设备的预定区域中。例如,该方法可以使用声音传感器系统、GPS系统、和/或与上文针对框308描述的类似的其它传感器系统。在一个示例中,方法可以检查用户身上的便携式设备是否完全处于不同设备的范围内以与不同设备配对或者向不同设备注册,从而指示用户已经移动到不同设备的预定区域中。例如,便携式设备和/或不同设备可以通知服务器该配对。在一些实施方式中,这种新的配对可以使便携式设备与第一设备的旧配对断开。

如果用户尚未移动到不同设备的预定区域中,并且尚未检测到用户已经停止使用第一设备来播放内容,那么该方法可以返回至304以继续将媒体内容数据流提供给第一设备以便由第一设备输出。在框308中,如果用户已经移动到不同设备区域中,那么该方法继续进行框312。

在框312中,将用户视作已经停止使用第一设备来播放内容,并且该方法确定媒体内容数据的位置标记并且将该位置标记存储在可用的存储设备中。例如,位置标记可以指示媒体内容数据的一部分,该媒体内容数据的一部分大约在用户中止使用第一设备进行媒体内容播放的指示的时间处(或者大约在检测到指示的时间处,例如,当服务器或者其它系统实施框312接收到指示和/或确定了中止使用时)由第一设备输出。例如,位置标记可以指示在停用的指示的时间处从第一设备输出的视频的特定帧和/或音频的特定秒数。这种特定帧或者其它位置可以是大概的,这是因为关于在用户退出之前最后输出了哪个部分或者用户最后体验了(或者以对内容的合理关注而最后体验了)哪个部分可能存在一些不确定性。一些实施方式可以将标记放在内容数据中的在确定的最后输出部分之前的某个点处,例如,在最后输出部分之前的预定秒数处,从而使得,如果从位置标记恢复播放,则对于用户而言重复了内容数据的一小部分。在一些示例中,位置标记可以是以数据流的开始为参照或者以包括在流中的内容作品的开始为参照媒体内容流所经过的时间的指示。可替代地,可以使用计数值或者相似指示来指示在流中的内容的输出量。

一些实施方式还可以响应于确定用户已经停止使用第一设备来播放内容而使在第一设备上的媒体内容流的输出中止,例如,该方法可以通过网络来命令第一设备停止或者暂停输出。其它实施方式可以允许媒体内容流的输出由第一设备继续进行到稍后的点直到一些其它情况出现为止,例如,过去了预定时间期限和/或未在第一设备的预定区域内检测到用户等。可以将这种稍后的输出假定为不由用户体验,或者可替代地,可以将这种稍后的输出假定为由用户体验,从而使得在使输出得以中止的情况出现之后存储对位置标记的更新。

在框314中,该方法将通知发送或者“推送”至一个或者多个通知设备以由通知设备输出,其中,该通知包括媒体内容流的继续选项。在一些实施方式中,通知设备可以是作为用户身上的个人设备的便携式设备,诸如,手机、平板电脑、可穿戴设备等。例如,一些实施方式可以将通知设备指定为相同的便携式设备,如上文在框308和310中描述的,该便携式设备可能已经用于用户接近检测。一些实施方式可以替代地或者另外将通知发送至一个或者多个其它设备进行输出,诸如,非便携式设备和/或如下文描述的将潜在地继续输出媒体内容数据流的一个或者多个不同设备(例如,如果这种非便携式设备和/或不同设备被检测为可供使用,如下文描述的)。可以通过互联网和/或通过一个或者多个本地网络将通知发送至各个通知设备。在一些实施方式中,通知可以由第一设备直接生成并且通过本地网络或者互联网发送至一个或者多个通知设备,而不涉及如上文描述的与服务器的连接。一些实施方式可以从服务器实施方法300(或者服务器的部分)生成通知并且通过互联网和/或其它网络将其发送至通知设备。

在一个示例中,通知可以是显示的(视觉)消息、听觉消息、和/或以其他方式输出的消息,这些消息告诉用户:如果用户选择了显示的继续选项,诸如,显示的按钮、链路、或者通知设备的其它物理或者显示的控制(和/或其他设备的控制),则可继续播放媒体内容流。通知设备可以通过使用设备的各种部件中的任何部件来输出通知,例如,在显示屏幕上显示通知、从一个或者多个音频扬声器输出通知、通过使用一个或者多个致动器来输出触觉反馈等。其它实施方式可以允许用户选择继续选项的任何输入命令,诸如,接收来自设备的麦克风的语音命令、运动命令(例如,按照由设备的运动传感器诸如,加速度计和/或陀螺仪感测到的特定手势等来移动整个便携式设备)、由设备的触摸屏感测的屏幕手势命令、或者由其它类型的用户输入接收到的命令。一些实施方式可以向用户呈现通知中的附加或者替代信息,例如,基于媒体内容数据流及其播放特性和第一设备的中止使用。例如,通知可以包括描述信息,诸如,流媒体内容的标题(例如,电影、视频、歌曲、专辑的标题)、内容的艺术家、和/或与流媒体内容数据有关的其它信息。该信息可以从流源检索和/或可以嵌入到流数据中。一些实施方式可以在用户中止使用第一设备之前显示由用户查看的最后(近似于最后)场景的视频帧、用户正在第一设备上玩的游戏的被观看的最后场景(或者当时游戏中的玩家的状态)、播放的音乐或者语音专辑的封面图像、显示的图书或者其它文本作品的封面、和/或其它信息。一些实施方式可以显示媒体内容的时间已到期的指示,例如,在用户中止来自第一设备的媒体内容播放的使用之前,该输出进行到了媒体流中包括的内容作品的程度。一些实施方式还可以输出预定相关联的消息或者情况的其它指示,该情况使该方法推断出:用户不再使用第一设备来播放内容,例如,诸如,“您暂停了电影”、“您移出了电视的呈现范围”、或者“您移动到与电视所处的房间不同的房间中”的消息。

在一些实施方式中,仅当预定情况已经实现,那么可以通过该通知设备来输出通知。在一些实施方式中,可以由用户按照存储在通知设备的存储设备(例如,存储器或者其它存储设备)中的和/或存储在服务器的用户账户中的偏好来指定这种情况。例如,这种情况可以包括当日时间或者其它指定的时间段、媒体内容的主题(例如,类别、体裁、类型、作者、演员/主持人等)、与存储在便携式设备或者可访问服务器上的用户日历上的其它事件冲突等。在一些示例中,可以响应于媒体内容数据是特定类型或者体裁的媒体内容(例如,特定的以家庭为中心的电视连续剧的剧集),和/或,如果特定的人与用户(例如,特定家庭成员)一起出现,这可以通过该方法来获知,例如,通过检测其它人身上的设备(例如,在手机上的GPS或者蜂窝设备定位系统、可穿戴设备等)或者通过传感器系统(上文描述的声音传感器系统)检测这些设备的接近,来通过该通知设备输出一个通知。一些实施方式可以省略通知的发送和继续选项的提供,例如,在如下文描述的第二设备上自动继续该播放。

在框316中,该方法检查是否存在正在由用户使用的一个或者多个不同设备,或者是否存在以其他方式可用于媒体内容数据流的继续输出的一个或者多个不同设备。在框316中提到的“不同设备”是与第一设备不同并且分开的以及与在框314中接收到通知的通知设备(如果有)不同并且分开的媒体内容输出设备。在一个示例中,如果第一设备是不位于用户身上的设备而通知设备是位于用户身上的便携式设备或者个人设备,那么不同设备可以是不位于用户身上的另一设备。在其它实施方式中,不同设备可以位于用户身上,而分开的通知设备接收用户身上的通知(或者,通知设备是非便携式设备)。

例如,在一些实施方式中,该方法可以检查用户是否已经物理地移动到适合于媒体内容输出的不同设备的预定区域中。可能之前已经在框310中(和/或,对于通知设备,则是在框314中)检查到这种情况,但是,如果之前未检查到这种情况或者如果情况授权进行重新检查(例如,用户已经移动了预定距离或者自最后一次检查起已经过去了预定时间),则可以对框316执行这种检查。在一些实施方式中,如果用户已经移动到不同设备的这种区域中,那么可以将不同设备视作可用于接收和输出媒体内容流(假定不同设备能够并且准备好执行这种任务)。在其它实施方式中,除非用户当前确实在使用不同设备,例如,利用便携式设备或者其它设备(例如,遥控器、在不同设备上的仪表板等)将一个或者多个命令发送至不同设备,否则可以将这种不同设备视作不可用。一些实施方式可以将通知发送至用户(例如,经由通知设备和/或不同设备),该通知列出了可用的不同设备和/或向用户提出的同意或者不同意一个或者多个提议的不同(和/或通知)设备继续输出的请求,或者在框314的通知中包括这种信息和/或请求。在这种示例中,除非经用户同意,各个不同设备将视作不可用于媒体内容数据的输出。

如果在框316中未找到使用的或者可用的不同设备,那么该方法继续进行框318,在框318中,该方法使媒体内容缓冲数据得以通过本地网络从第一设备发送至通知设备。例如,通知设备可以是用户身上的并且具有用于输出媒体内容数据的一个或者多个显示屏幕的便携式设备。仍然在第一设备的缓冲区中的流内容数据通常准备好接下来由第一设备输出,但是尚未由第一设备输出,这可以是紧接着第一设备的输出待由通知设备输出的第一媒体内容数据。一些实施方式可以使第一设备将(在用户退出之前)由第一设备输出的内容数据的最后一部分(例如,预定秒数)保持在其存储器或者其它存储设备中,以被放置在缓冲数据的开始处;这允许这部分的内容得以由通知设备重新输出。可以通过本地网络,诸如,无线本地网络(例如,Wi-Fi或者对等无线网络)和/或本地有线网络(例如,以太网)发送缓冲数据,在许多情况下,本地网络传输数据可以比通过互联网从流源接收流数据更快。该方法然后继续进行下文描述的框322。

在框316中,如果存在可用于继续输出内容数据的一个或者多个不同设备,那么该方法继续进行框320,在框320中,该方法使媒体内容缓冲数据得以通过本地网络从第一设备发送至不同设备。除了可以通过一个或者多个本地网络将仍然在第一设备的缓冲区中的内容数据直接发送至不同设备之外,这可以与框318类似。该方法然后继续进行下文描述的框322。在一些实施方式中,一个或者多个用户设备(诸如,通知设备、其它便携式设备、或者非便携式设备)可以向不同设备注册或者与不同设备配对以通过使用用户设备的控制来允许对不同设备的输出进行控制。如果用户设备可用,则一些实施方式可以使第一设备将其缓冲数据发送至不同设备和用户设备两者,例如,通过本地网络(如果可能)。针对框318和320,只有在用户接收到同意时和/或只有在满足针对通知和播放继续的所有用户条件时,一些实施方式才可以将缓冲数据发送至不同设备和/或用户设备。

如果不存在可用于继续输出媒体流的设备,那么在一些实施方式中,该方法可以继续地检查框316。在一些实施方式中,如果第一设备已经中止了媒体内容流输出,那么可以将第一设备视作“不同设备”,因此,如果情况允许,则可以继续输出流。在一些实施方式中,在正在发送和/或显示框314的通知时并且在用户已经选择继续选项之前,可以通过该方法来执行框316至320。这可以在需要通过继续播放设备输出流之前,允许将流媒体内容数据缓冲在(多个)继续播放设备上。

在框322中,该方法检查用户是否已经选择了与通知一起提供的继续选项(或者用户已经命令了继续输出媒体内容数据)。如果尚未选择,那么该方法可以继续检查这种选择(和/或可以对其它事件做出响应,诸如,用户移出不同设备的预定区域、用户未暂停在第一设备上的内容输出、提供了其它命令、在第二设备上继续缓冲数据等)。如果用户已经选择了继续选项,那么在框324中,该方法命令在第二(或者,下一个)设备上输出媒体内容数据流,该输出从位置标记处开始并且以接收到的缓冲内容数据开始。该方法可以将位置标记的指示通过连接的网络发送至第二设备(若需要),或者可以命令第一设备将具有缓冲数据的位置标记发送至第二设备,例如,通过本地网络或者互联网。如果未找到可用的不同设备,那么继续输出媒体内容数据的“第二设备”可以是上文描述的通知设备,或者可以是如上文描述的一个或者多个不同设备。例如,如果第二设备是不同设备,并且用户还具有访问用户设备(例如,便携式设备或者其它可访问的设备)的权限,那么用户设备可以(作为还接收用户的选择以继续播放的中间设备)接收框314的通知。因此,中间设备可以使内容媒体数据流的播放得以在与中间设备不同的设备上继续。在一些实施方式中,中间设备可以是便携的并且易于由用户访问并且操作,并且允许用户容易地进行选择以在不同设备上继续媒体内容播放。一些实施方式可以命令内容数据流得以在通知设备和不同设备上输出。

在框326中,该方法命令媒体内容数据流得以发送至第二设备并且由第二设备接收,以继续输出自流源接收的媒体内容数据流。因为自第一设备接收的缓冲内容数据通常不包括来自媒体内容数据流的所有剩余数据,所以第二设备例如通过互联网从流源接收流的剩余数据。例如,第二输出设备(或者运行方法300的服务器)可以在缓冲内容数据结束之后将第二输出设备所需的流中的起点的指示发送至流源,其中,可以通过第一设备追踪该起点并且经由本地网络或者互联网将其发送至第二设备。在一些示例中,在开始输出缓冲内容数据之后,可以即时请求和/或开始通过第二设备接收流数据,从而使得,当清空之前缓冲的数据以供输出时,流内容数据可以填满第二设备的缓冲区。将数据提供给第二设备的流源可以是由第一设备使用的相同流源,或者不同流源(例如,不同媒体内容服务器、不同客户端设备等)。在一些实施方式中,第二设备可以通过本地网络,诸如,无线本地网络(例如,Wi-Fi)或者在设备之间的对等网络(例如,Wi-Fi直连、蓝牙等)从本地设备(诸如,用户身上的便携式设备)接收媒体内容数据流。在一些实施方式中,例如,本地设备可以通过互联网从流源接收数据流。

因此,可以将媒体内容数据从之前输出内容数据的设备并且从内容数据中的相对于之前的输出而继续播放的位置,传输至不同设备并且在不同设备上输出。可以在用户不必执行用于使播放能够继续的手动任务的情况下,执行这种在不同设备上的媒体内容播放的继续。例如,用户不需要登录到媒体服务的用户账户(例如,使媒体内容能够通过互联网从媒体服务器下载到客户端设备)以从第二设备访问媒体服务器以使得在第二设备上进行播放。类似地,用户不需要手动地导航显示在第二设备上的用户界面,也不需要浏览内容项的类集以手动地选择当前正在第一设备上播放的、用户想要在第二设备上继续播放的特定媒体内容。自动执行对媒体内容的选择和在第二设备上的播放。此外,可以从用户行为(诸如,移离第一设备和/或移近第二设备)推断出用户期望在不同设备上进行内容数据的继续。另外,特征,诸如,通过本地网络将缓冲的媒体内容数据从第一设备发送到第二设备允许内容输出的继续得以快速并且流畅地转换至第二设备,并且减少冗余的和/或通过互联网重新下载可能较高成本的内容数据,该内容数据之前已在第一设备上下载过。

可以实施所描述的特征的变型。例如,一些实施方式可以允许用户针对不同设备设置不同的优先级,从而使得该方法将选择可用于(并且在用户的使用范围内)继续输出媒体内容数据流的最高优先级的输出设备。一些实施方式可以允许用户设置其它条件,该其它条件可能会导致在其它设备上选择一个可用设备以继续媒体内容播放。一些实施方式可以允许设备(诸如,第一设备)接收并且缓冲(或者存储)完整的整个媒体内容数据流(例如,针对特定内容作品)并且通过本地网络将完整的一套数据(而不仅仅是缓冲部分)发送至第二设备。在使用便携式设备的各种实施方式中,用户身上的单个便携式设备可以执行上文描述的若干功能或者有助于上文描述的若干功能,诸如,用户位置或者接近检测、与不同设备配对、通知的输出、对不同设备的控制、将媒体内容流发送至第一设备和/或不同设备、和/或从第一设备继续输出媒体内容流。或者,可以在多个便携式设备和/或非便携式设备中全部或者部分地划分这些功能中的一些或者全部。

可以按照与示出的顺序不同的顺序执行和/或根据需要至少部分地同时执行方法200和300的各种框和操作。例如,一些实施方式可以在各种时间处和/或基于与所描述的那些无关的事件来执行方法的框。在一些实施方式中,方法200和300的框和操作可以按照不同顺序多次发生和/或发生在方法中的不同时间处。在一些实施方式中,可以将方法200和/或300实施在例如,如图1所示的服务器系统102上。在一些实施方式中,替代执行一个或者多个框的服务器系统或者除了执行一个或者多个框的服务器系统之外,一个或者多个客户端设备可以执行这些方法的一个或者多个框。

图4A至4C是图示了包括本文描述的一个或者多个特征的示例实施方式的框图。一般地,图4A至4C图示了在各种部件之间的数据的定向流动的示例,并且不一定是在部件之间的实际连接。

图4A图示了可以在不同设备上提供继续播放媒体内容数据的特征的示例系统400。系统400包括设备402、服务器404、和(可选地)设备406。在该示例中,设备402可以是上文参照图2和3描述的第一设备。例如,设备402可以是电视、台式计算机、膝上型计算机、或者不位于用户身上的其它显示设备,并且在特定位置(诸如,建筑物的房间)中通常可以保持静止。服务器404可以是存储媒体内容数据的媒体服务器,并且可以通过互联网410将内容数据串流到设备。

在该示例中,如路径412指示的,设备402通过互联网410串流来自服务器404的媒体内容数据。(在一些实施方式中,设备402、406、和422可以通过连接在设备与互联网之间的本地网络(未示出)与互联网410通信)。设备402缓冲并且输出接收到的媒体内容数据,例如,通过将图像显示在显示屏幕上、从扬声器输出音频等。在一些实施方式中,如路径414指示的,设备402可以通过互联网410将信息发送至服务器404,诸如,关于设备402的一个或者多个状态和设置、关于媒体内容数据流的输出等的状态信息。

在一些实施方式中,设备406可供用户使用。例如,设备406可以是个人设备和/或便携式设备,诸如,手机、平板电脑、或者可穿戴设备。设备406可以通过路径415经由互联网410和一个或者多个其它网络(手机网络等)与服务器402通信。一些实施方式可以允许用户与设备406交互和/或操作设备406,例如,将命令发送至设备402。例如,设备406可以通过一个或者多个本地网络416(诸如,无线本地网络、对等网络、互联网410等)与设备402配对或者以其他方式与设备402链接。设备406可以在路径418上将命令或者请求发送至设备406。这种命令可以包括用于操纵设备402上的媒体内容数据的输出(诸如,停止、暂停、快进、快退等)的命令。在一些实施方式中,设备402可以在路径420上通过本地网络416(和/或互联网410)将信息(诸如,状态信息等)发送至设备406。在一些实施方式中,设备406可以从服务器404接收媒体内容数据流,并且可以通过一个或者多个本地网络将该数据流中继至设备402。

图4B图示了将在不同设备上提供连续媒体内容输出的系统400的一个示例。图4B图示了示例实施方式,其中将媒体内容数据的输出传输至还用作通知设备的、用户的便携式设备并且在该便携式设备上继续进行媒体内容数据的输出。

在已经运行了图4A的配置之后,系统400接收用户已经停止使用设备402来输出媒体内容数据流的指示。例如,如参照图3描述的,用户可能已经命令了设备402停止输出,或者用户可能已经移出设备402的预定区域,诸如,移出设备402所处的房间或者移出在设备402与406之间的配对范围。在一些实施方式中,在接收到用户中止设备402的播放功能的使用的这种指示之后,如果其尚未停止,那么服务器402可以停止将内容数据流发送至设备402或者由设备402输出媒体内容数据流。在一些实施方式中,设备402可以在路径420上将状态指示发送至服务器404以指示内容数据输出的中止使用。

服务器404确定不存在可用于继续输出媒体内容数据流的不同设备,因此选择设备406。服务器404在路径422上将通知发送至设备406以向用户显示,该通知包括在设备406上继续输出媒体内容数据流的选项(诸如,显示按钮)。如通过路径426指示的,如果用户选择该选项以接受继续播放,那么服务器404在路径424上指示设备402通过一个或者多个本地网络416将媒体内容流的缓冲数据发送至设备406。在一些实施方式中,设备402还可以向设备406发送正在输出的内容的标识(例如,因此设备406能够了解向服务器请求哪个流)和/或指示播放进度的位置标记(或者可以从服务器404发送这种信息)。尽管设备402与设备406的配对解除(例如,配对解除可以断开对等网络或者其它连接),但是设备402可以通过其与本地网络416(诸如,无线本地网络)的连接来对设备406进行定位。在一些实施方式中,设备406可以通过本地网络在路径428上向设备402传送响应、状态、命令、或者请求。

在已经在路径426上的设备406处接收到缓冲数据之后,服务器404可以在路径422上开始通过互联网将媒体内容数据流发送至设备406。流的发送可以在紧接着由设备402发送的缓冲数据的流中的数据处开始。因此,设备406可以通过首先输出来自设备402的缓冲数据,接着自服务器404接收数据流来无缝地继续输出媒体内容流。在一些实施方式中,如果方法检测到用户再次开始使用第一设备来进行内容播放,可以发送另一通知(或者可以省略通知),并且将内容输出从设备406传输回设备402。

图4C是图示了在不同设备上继续输出媒体内容的系统400的另一示例。图4C图示了将媒体内容数据的输出传输至不同于用于进行通知的便携式设备的不同设备并且在该不同设备上继续进行媒体内容数据输出的实施方式,并且将该便携式设备用作中间设备。

在已经运行了图4A的配置之后,系统400接收用户已经停止使用设备402来输出媒体内容数据流的指示。例如,可以检测到上文描述的指示的任何一种。在一个示例中,检测到用户移动到不同设备440的预定区域中,例如,其中,通过使用如上文描述的声音传感器系统或者其它传感器系统来执行检测,或者检测到设备406与设备440的新的配对。在一些实施方式中,这使服务器404确定用户不再期望体验来自第一设备输出的内容数据,但用户期望体验正从设备440输出的内容数据。在一些实施方式中,在接收到用户中止设备402的播放功能的使用的该指示之后,如果其尚未停止,那么服务器404可以停止通向设备402的媒体内容数据流,和/或可以将设备406与设备402的配对解除。在一些实施方式中,设备402可以在路径442上将状态信息发送至服务器404,以指示用户中止了内容数据输出的使用,以及指示流的输出进程的内容和位置标记的标识符(若需要)。

服务器404确定存在可用于继续输出媒体内容数据流的不同设备440(不同于设备406)。例如,服务器404可能已经检测到用户已经移动到与设备440相关联的预定区域内,例如,通过使用传感器系统或者通过与如上文描述的设备406配对。服务器还可以尝试确定设备440的状态以确定其是否可用于继续进行媒体内容输出,例如,其是否通电、其是否处于接收和输出内容数据的状态等。在一些实施方式中,服务器可以感测可能处于睡眠模式的设备440,并且可以用经由互联网410和/或本地网络416提供的合适的信号来唤醒设备440。设备440变成上文提到的第二设备。在一个示例中,设备440可以是非便携式设备,诸如,电视或者具有大型显示屏幕的其它设备。

在用户具有便携式设备406的一些实施方式中,服务器404在路径444上将通知发送至设备406以向用户显示,该通知包括用于在设备440上继续输出媒体内容数据流的选项。如果用户选择该选项以接受由设备440进行继续输出,那么设备406可以在路径446上将信号发送至服务器404以指示该用户选择。因此,将设备406用作中间设备。服务器404可以通过路径447命令设备402通过本地网络416(例如,通过路径418)将其缓冲数据从内容数据流发送至设备440。在一些实施方式中,设备402还可以向设备440发送正在输出内容的识别(例如,因此设备440能够了解向服务器请求哪个流)和/或指示播放进度的位置标记(或者可以从服务器404发送这种信息)。设备402可以通过其与本地网络416(诸如,无线本地网络)的连接来对设备406和设备440进行定位。在一些实施方式中,设备440可以在路径450上通过本地网络向设备402传送响应、状态、命令、或者请求。

在已经在路径448上的设备440处接收到缓冲数据之后,服务器404可以在路径452上通过互联网开始将媒体内容数据流发送至设备440。流的发送可以在紧接着由设备402发送的缓冲数据的流中的数据处开始。因此,设备440可以通过首先输出来自设备402的缓冲数据,接着接收自服务器404的数据流来无缝地继续输出媒体内容流。在一些实施方式中,如上文针对图4A中的设备402描述的类似,便携式设备406可以与设备440配对或者向设备440注册,并且例如,通过在路径454上的本地网络或者通过一些其它路径,发送(和/或接收)命令、状态、或者其它信号以控制或者通知设备440。

在一些实施方式中,替代设备406或者除了设备406之外,服务器可以将通知发送至设备440。例如,在一些实施方式中,用户不具有设备406或者设备406无法与如本文描述的其它设备一起运行,在这种情况下,可以通过设备440来显示通知。在又一些其它实施方式中,未向任何设备发送通知,并且一旦检测到用户停止第一设备内容播放的使用和/或用户在第二设备的预定区域内,则命令设备440自动继续输出媒体内容数据。在一个示例中,用户可以设置设备404、402、和440的模式以在不需要用户接受继续播放的情况下允许媒体内容数据的这种自动传输和继续,从而使得设备可以检测用户的位置,并且媒体内容数据的播放可以在用户从任何输出设备移动到任何其它输出设备时自动“跟随”用户。

在一些实施方式中,一系列设备可以作为第二设备,并且然后又作为第一设备。例如,用户移离第一设备(诸如,播放媒体内容的台式计算机),这时,用户身上的便携式设备作为第二设备继续进行媒体内容播放。用户移动到不同设备(诸如,电视)的预定区域中,这时便携式设备作为第一设备并且电视作为第二设备,该第二设备从便携式设备留下的位置标记开始继续进行媒体内容流播放。用户移离电视,这时便携式设备再次作为第二设备,并且用户移动到另一输出设备的范围中,该另一输出设备然后作为第二设备,依此类推。

在一些实施方式中,任何设备可以执行在上文的方法和示例中描述的服务器的命令和其它任务。例如,便携式设备(诸如,设备406)可以执行这种任务,例如,接收指示了输出进度的位置标记以及正在第一设备(诸如,设备402)上输出的内容数据的标识符,并且通过指导服务器404和设备440(若需要)来控制在第二设备440上的继续播放。

图5是可以用于实施本文描述的一个或者多个特征的示例设备500的框图。在一个示例中,设备500可以用于实施图1的服务器设备104,并且执行本文描述的合适的方法实施方式。设备500可以是任何合适的计算机系统、服务器、或者其它电子设备或者硬件设备。例如,设备500可以是大型计算机、台式计算机、工作站、便携式计算机、或者电子设备(便携式设备、手机、智能电话、台式计算机、电视、TV机顶盒、个人数字助理(PDA)、媒体播放器、游戏设备、可穿戴设备等)。在一些实施方式中,设备500包括处理器502、存储器504、和输入/输出(I/O)接口506。

处理器502可以是用于执行程序代码和控制设备500的基本操作的一个或者多个处理器或者处理电路。“处理器”包括处理数据、信号、或者其它信息的任何合适的硬件和/或软件系统、机构或者部件。处理器可以包括具有用于实现功能的通用中央处理单元(CPU)、多个处理单元、专用电路系统的系统,或者其它系统。处理不需要限于特定地理位置或者具有时间限制。例如,处理器可以“实时”、“离线”、以“批量处理模式”等来执行其功能。可以通过不同(或者相同)处理系统在不同时间和不同位置处执行处理的部分。计算机可以是与存储器进行通信的任何处理器。

通常在设备500中提供了存储器504以供处理器502访问,并且该存储器504可以是任何合适的处理器可读的存储介质,诸如,随机存取存储器(RAM)、只读存储器(ROM)、可电擦除的只读存储器(EEPROM)、闪速存储器等,该处理器可读存储介质适合于存储指令以供处理器执行,并且与处理器502分开定位和/或集成在一起。存储器504可以存储由处理器502在设备500上操作的软件,该处理器502包括操作系统508和一个或者多个应用引擎510,诸如,图形编辑引擎、网络托管引擎、社交网络引擎、媒体内容服务器引擎等。在一些实施方式中,应用引擎510可以包括指令,该指令使处理器502能够执行本文描述的功能,例如,图2至3的方法的一些或者所有。替代地可以将存储器504中的任何软件存储在任何其它合适的存储位置或者计算机可读介质上。另外,存储器504(和/或其它连接的存储设备)可以缓冲和/或存储媒体内容数据和指令和/或用于本文描述的特征的其它数据。可以将存储器504和任何其它类型的存储设备(磁盘、光盘、磁带、或者其它有形介质)视作“存储设备”。

I/O接口506可以提供功能以使设备500能够与其它系统和设备接口连接。例如,网络通信设备、存储设备(诸如,存储器和/或数据库106)、和输入/输出设备可以经由接口506通信。在一些实施方式中,I/O接口可以连接至接口设备,诸如,输入设备(键盘、指向设备、触摸屏、麦克风、摄像头、扫描器等)和输出设备(显示设备、扬声器设备、打印机、电动机等)。

为了便于说明,图5针对处理器502、存储器504、I/O接口506、和软件框508和510中的每一个示出了一个框。这些框可以表示一个或者多个处理器或者处理电路系统、操作系统、存储器、I/O接口、应用、和/或软件模块。在其它实施方式中,设备500可以不具有示出的所有部件,和/或替代本文示出的那些元件或者除了本文示出的那些元件之外,可以具有包括其它类型的元件的其它元件。虽然将系统102描述为执行如在一些实施方式中描述的步骤,但是系统102或者相似的系统的任何合适的部件或者部件的组合,或者与这种系统相关联的任何合适的一个或者多个处理器可以执行描述的步骤。

客户端设备(诸如,图1中示出的客户端设备120至126)还可以实施本文描述的特征和/或与本文描述的特征一起使用。示例客户端设备可以包括与设备500的部件相似的一些部件,诸如,处理器502、存储器504、和I/O接口506。可以在存储器中提供适合于客户端设备的操作系统、软件、和应用,并且可以通过处理器(诸如,网络通信驱动器和/或应用软件、传感器系统软件等)使用该操作系统、软件、和应用。可以将客户端设备的I/O接口连接至网络通信设备以及连接至输入和输出设备,诸如,用于捕获声音的麦克风、用于捕获图像或者视频的摄像头、用于输出声音的音频扬声器设备和声音发射器、用于输出图像或者视频的显示设备、用于捕获在显示屏幕上的触摸输入的触摸屏幕、用于提供触觉输出的致动器、或者其它输出设备。显示设备,例如,可以用于显示如本文描述的图像和其它数据,其中,这种设备可以包括任何合适的显示设备,诸如,LCD、LED、或者等离子体显示屏幕、CRT、电视、监视器、触摸屏、3-D显示屏幕、或者其它视觉显示设备。其它实施方式可以提供音频输出设备以供媒体内容输出和其它输出,诸如,说出文本和/或描述设置、通知和权限的语音输出或者合成。

尽管已经针对本文的特定实施方式对本说明书进行了描述,但是这些特定实施方式仅仅是说明性的,而不是限制性的。在示例中图示的构思可以应用于其它示例和实施方式。

在此处讨论的系统可以采集有关用户的个人信息或者可以利用个人信息的情况下,可以为用户提供如下机会:控制程序或者特征是否采集用户信息(例如,描绘用户的图像、有关用户的社交网络、用户特征(年龄、性别、职业等)、社交动作或者活动、用户的偏好、或者用户的当前位置的信息)。此外,在存储或者使用特定数据之前,可以按照一种或者多种方式来处理该特定数据,从而使得可以去除个人身份信息。例如,可以处理用户的身份,从而使得无法确定用户的个人身份信息,或者可以将用户的可以从中获得位置信息(诸如,城市、邮政编码、或者州县等级)的地理位置一般化,从而使得无法确定用户的特定位置。因此,用户可以控制:如何采集有关用户的信息和服务器如何使用该信息。

注意,可以将本公开描述的功能框、特征、方法、设备、和系统集成或者划分到如将对本领域的技术人员已知的系统、设备、和功能框的不同组合中。可以将任何合适的编程语言和编程技术用于实施特定实施方式的例程。可以采用不同的编程技术,诸如,程序化的或者面向对象的。例程可以在单个处理设备或者多个处理器上执行。尽管可以按照特定顺序来呈现步骤、操作、或者计算,但是可以在不同的特定实施方式中改变顺序。在一些实施方式中,在本说明书中的相继地示出的多个步骤或者框可以同时执行。

技术分类

06120116336228