使用内容部分的定制播放列表对媒体内容进行流传输的制作方法

xiaoxiao2020-7-22  17

使用内容部分的定制播放列表对媒体内容进行流传输的制作方法
【专利摘要】一种使用非流专用传输协议通过网络提供的流媒体,其中,媒体流作为多个单独媒体文件存储在服务器上,并提供了一种播放列表,所述播放列表指示需要哪些媒体文件用于输出所述媒体流的特定部分;其中,响应于与所述媒体流的对应不同部分有关的请求,向各个不同媒体流客户端提供多个不同播放列表。一种在客户端设备上提供的用户界面,其中,显示了包括流媒体和辅助媒体内容的交互式媒体事件。
【专利说明】使用内容部分的定制播放列表对媒体内容进行流传输
【技术领域】
[0001]本发明涉及媒体系统,特别地但非专门地用于流媒体(例如,到客户端设备的视频)和/或用于使用交互式界面来显示媒体内容。
【背景技术】
[0002]已经设计出专用于在网络(例如因特网)上对媒体进行流传输的流传输协议(例如,实时流传输协议(RTSP)、实时传送协议(RTP)和实时传送控制协议(RTCP)),。然而,这些协议可能在中间节点(例如,防火墙和代理服务器)造成问题。作为备选,Appl e Inc.已经开发了 HLS (HTTP实况流),作为使用标准HTTP作为传输协议来对媒体进行流传输的手段,因此其在大多数形式的因特网连接上都是可靠的。
[0003]在HLS中,视频流被分为‘组块’,每个组块包括较小的可下载文件。产生相关联的播放列表文件,包括定义如何输出组块以重构视频流的元数据。当向流中添加新组块时,播放列表文件更新,并且流客户端周期性地请求新的播放列表文件。HLS的细节在专利公开W0-A-2010 / 078281 和 2010 年 11 月 19 日 IETF 草稿“HTTP Live Streaming”版本 5 中公开。
[0004]作为实况流传输的备选,完整的媒体文件可以下载到本地设备,并可以从文件中的任意点回放。然而,此功能不可能用于HLS媒体流,因为相关联的播放列表仅允许‘实况’(即,在最近添加媒体内容的点)播放流。仅当实况媒体流已经关闭时,可以作为可下载媒体文件获得其内容。然而,可能对可作为单个文件下载的媒体的大小造成闲置。例如,当前Apple Inc.的‘应用程序的需求’将可下载视频的大小限制为10分钟或5分钟时长的5MB数据;大于此大小,视频必须由HLS传送(见2010年11月15日Apple Inc.的‘HTTPLive Streaming Overview’ )。

【发明内容】

[0005]根据本发明的一个方面,提供了一种用于使用非流专用传输协议通过网络提供流媒体的方法和系统,其中,媒体流作为多个单独媒体文件存储在服务器上,并提供了播放列表,所述播放列表指示用于输出所述媒体流的特定部分所需的媒体文件;其中,响应于与所述媒体流的对应不同部分有关的请求,向各个不同的媒体流客户端提供多个相互不同的播放列表。
[0006]不同部分可以与不同时间点或所述媒体流中的不同预定分段有关,使得所述媒体流客户端能够要么在其当前时间点(例如,作为实况流)要么在先前点输出所述流;这能够实现倒回、快进和/或跳到实况流的指定点。
[0007]可以从数据库提供多个不同播放列表,数据库接收周期性更新的当前播放列表作为输入,并从而存储包括所述流的媒体文件的部分或完全历史索引。
[0008]多个不同播放列表中的至少一个可以包括标识媒体流的分段的终止点的闭合播放列表,其中,所述媒体流是开放流。[0009]所述服务器可以响应于与先前指定的绝对或相对时间有关的请求。所述请求可以指定媒体流的对应部分的持续时间。服务器还可以响应于例如通过关键字、时间和/或流行性来标识分段的搜索请求。
[0010]所述分段可以通过用户界面预先确定,以手动地定义分段。
[0011]根据本发明的另一方面,提供了一种媒体流客户端,所述媒体流客户端被布置为:如上所述地产生请求并接收对应的播放列表。所述客户端可以包括用户界面,所述用户界面允许用户选择所述客户端要请求并输出的媒体流的部分。所述用户界面可以指示所述媒体流的输出部分是否是当前的(实况的)。
[0012]根据本发明的另一方面,提供了一种媒体数据结构,所述媒体数据结构包括主模块和一个或更多个相关联的辅助模块,所述主模块包括视频内容和相关联的元数据,并且每个辅助模块包括与所述视频内容相关联的媒体内容。
[0013]可以通过同时显示作为主显示的视频内容和作为辅助显示的相关联辅助模块的媒体内容的至少一部分,优选地将所述媒体数据结构显示在媒体设备上。可以选择辅助模块的显示中的至少一个,以便于显示辅助模块的媒体内容作为主显示。主模块可以同时显示为辅助显示。用户可以在不同的所述辅助模块的显示之间导航作为所述主显示。用户可以将一个或更多个辅助模块与一个或更多个其他用户共享。
[0014]多个所述主模块可以以网格和/或时间轴格式同时显示。主模块可以彼此独立,或通过例如元标签而链接。
【专利附图】

【附图说明】
[0015]现在下文仅通过示例方式,参考以下所标识附图,描述本发明的实施例的详细描述。
[0016]图1是传统HLS实现的示意图。
[0017]图2是根据本发明实施例的实况媒体流传输系统的示意图。
[0018]图3是本实施例中更详细的示意图。
[0019]图4是本实施例中事件数据结构的示意图。
[0020]图5是本实施例中CMS编辑屏幕的示意图。
[0021]图6是本实施例中客户端用户界面的故事板。
[0022]图7是用户界面的网格屏幕的屏幕截图。
[0023]图8是用户界面的时间轴屏幕的屏幕截图。
[0024]图9是用户界面的事件主屏幕的屏幕截图。
[0025]图10.1至10.6是用户界面的单模块屏幕的屏幕截图。
[0026]图10.7是具有馈送覆盖图的单模块屏幕的屏幕截图。
[0027]图10.8是用户界面的背景故事屏幕的屏幕截图。
[0028]图11是实施例中计算机系统的示意图。
【具体实施方式】
[0029]传统HLS实现
[0030]图1示意性地示出了传统HLS实现的主要组件。将来自媒体源的一个或更多个媒体流I提供给编码器2 (包括流编码器和流分段器)。媒体编码器使用MPEG-2传递格式对媒体流进行编码,并且编码格式由客户端7支持,例如,H.264或MPEG-4视频或HE-AAC音频。
[0031]流分段器将每个MPEG-2流分割为组块,保存为一系列.t s媒体内容文件。可以对媒体内容文件进行加密,在这种情况下,流分段器还创建相关联的密钥文件。
[0032]针对每个媒体流,流分段器还创建.M3U8格式的播放列表文件5,该播放列表文件5形成可获得媒体内容文件的索引。当新内容到达媒体流I时,产生新媒体内容文件,并且更新播放列表文件用于引用新内容文件。如果媒体流I已经完成,编码器向播放列表中添加‘ENDLIST’标志,于是被称为‘关闭’。不具有这种标志的播放列表被称为‘开放’。
[0033]编码器2可以产生具有不同编码率的媒体流的几种变体,每种变体具有媒体内容文件的不同集合。在此情况下,播放列表5对变体集合中的每一个进行索引。
[0034]从编码器向内容传递网(⑶N)6输出内容文件4和播放列表文件5,⑶N6 —般是web服务器,其在指定的URL向客户端7提供播放列表文件5,并提供客户端7请求的媒体内容文件4。客户端7—般通过无线网络(例如,GPRS、3G或WiFi网络)经由网络(例如,因特网)与⑶N6连接。
[0035]客户端7中的每一个包括媒体播放器(一般是软件应用)。为了播放媒体流,媒体播放器从指定该流的URL获取播放列表5。播放列表5指定可获得媒体文件4的位置,然后媒体播放器依次下载媒体文件4。一旦媒体播放器缓冲了足够数目的有序媒体文件4,媒体播放器通过对该媒体内容进行解码然后向用户呈现该内容,开始输出媒体流。
[0036]媒体播放器周期性地重新请求播放列表5,以获得添加到流的新媒体文件4的位置,并下载该新媒体文件4用于输出。此过程继续,直到媒体播放器遇到‘ENDLIST’标志,此时,媒体播放器完成可获得媒体文件的输出,然后完成输出流。
[0037]当可以获得变体内容文件4时,媒体播放器从与网络条件(例如,可用带宽)最合适的变体集合请求内容文件4。响应于所检测的网络条件的改变,媒体播放器可以在媒体流中的变体集合之间切换。
[0038]传统HLS的重要特征是所有客户端7接收相同的播放列表5,并且可获得内容4的时间窗口非常短(一般仅几分钟)。因此,应用限于实质上显示实况媒体流。
[0039]增强型实况媒体流传输-概述
[0040]图2中示意性地示出了根据本发明实施例的传统HLS的改进。在本实施例中,‘增强型HLS服务器’(或EHLS8)用作面向CDN6的客户端,并接收周期性更新的播放列表5。从周期性更新的播放列表5中,EHLS8编纂针对到当前、实况内容的一些或所有媒体流的扩展播放列表。客户端7.1...η中每个能够从EHLS8请求对应的定制播放列表5.1...η,对应的定制播放列表5.1...η包括扩展播放列表中的任意部分。客户端7.1...η然后从⑶Ν6下载由它们的各个定制播放列表5.1...η进行索引的媒体文件4。
[0041]每个客户端7.1...η可以请求与比当前时间更早时间有关的定制播放列表,因此允许相关联的媒体播放器倒回或跳回到实况媒体流中较早时间,并回复到当前实况媒体流。以此方式,媒体播放器能够合并实况流以随机访问视频流中任意部分,该随机访问之前仅可利用完全下载的剪辑才可实现。
[0042]该媒体播放器与传统HLS媒体播放器类似,除了该媒体播放器从EHLS8而不是CDN6的URL获取定制播放列表。此外,该媒体播放器指示定制播放列表所需的媒体流中的特定时间,如下文详细描述。该媒体播放器可以向用户指示当前输出媒体流是‘实况’的(即,在当前时间引用),还是当前时间之前的。
[0043]除了定制的播放列表之外,EHLS8还可以提供实况播放列表,该实况播放列表与⑶N6提供的播放列表5类似。
[0044]EHLS8还可以从⑶N提供的播放列表5中创建具有不同当前时间或终止点的修改播放列表。例如,当播放列表是‘开放’列表时,EHLS8可以提供具有确定终止点的修改的、‘关闭’播放列表。备选地,修改播放列表可以是开放播放列表,但具有比播放列表5的当前时间更早的当前时间参考。客户端7.1...η中任意一个可以请求修改播放列表。可以手动地或通过自动检测媒体流中的合适断点来控制终止点和/或当前时间。以此方式,可以将媒体流分段或分为定制流,每个可由客户端7.1...η分离地访问。
[0045]在另一备选中,EHLS8可以通过与媒体流有关的边界点的方式定义分段,并且客户端7.1...η可以参考对应分段请求定制播放列表5.1...η,如下文更详细描述。
[0046]增强型实况媒体流传输-实现
[0047]图3中示出了图2实施例的更详细实现的示例,其中,EHLS8的功能分为三部分:web服务器8.6,对来自客户端7.1...7n的请求进行服务;管理器8.2,允许章节和/或修改播放列表的定义;以及,播放列表管理器8.5,构建、存储和显播放列表。播放列表管理器8.5可访问的数据库8.3记录媒体内容4的每个组块的地址,如周期性更新播放列表5所指示。播放列表管理器8.5从数据库8.3中创建定制播放列表。数据库方案还允许对分段进行选择和加标签。
[0048]以下列出了针对数据库8.3的方案的示例,其中,EVENTS定义URI (统一资源标识符)和关于修改的播放列表的一些细节,并且CHUNK包含由事件引用的每片内容:
[0049]

CREATR TABLE 'ClHJNK' (

'ID' varchai'(150) NOT NULL DEFAULT

'STREAM ID' varchar(lO) NOT NULL,

'SEQ NUM' int.(50) unsigned DEFAULT NULL,

' DliRAT I ON' int.(50) unsigned DEFAULT NULL,

'LiR I ' varchar(255) DEFAULT NlJL1.,

'SEClMi—KEY' varchar(255) DEFAULT NULL,

'TIMESTAMP' date!iine DEFAIXT NULL,

'BIT—RATE' varchar(lO) NOT NULL,

'STREAM......TYPE' varchar(150) NOT NULL DEFAULT’’

);

CREATE TABLE 'EVENTS' (

'ID' VMCHAR(255) NOT NULL,

'CONTENT..EXPIRY' DATETIME DEFAULT NULL,

—SOURCE—REF' VARCHAR(255) DEFAULT NULL,

'DESC RIPTION' VARCHAR(255) DEFAULT NULL,

'END—TIME' DATETIME DEFAULT NULL,

'START—TIME' DATETIME DEFAULT NULL,

'STREAM—ID' VARCHAR(255) DEFAULT NULL,[0050]

'IS—FINISH' bit(I) DEFAULT b’0’ DEFAULT NULL,

);
[0051 ] 由于安全原因,优选地将数据库8.3布设到内部网络中。
[0052]播放列表管理器8.5是内部应用,负责从管理器8.2接收指令,并产生定制播放列表5.1...η ;其将定制播放列表放在web服务器8.6上。
[0053]web服务器8.6是在内部网络10和因特网14之间的DMZ (非军事化区域)12或边界网络中,并同时服务于来自许多客户端7.1...7n的请求,并优选地缓存响应。
[0054]web服务器8.6是无状态的,使得可以将其扩展跨越若干应用服务器,而不需要复杂的同步或负荷均衡持久性。可以将web服务器8.1实现为简单的文件服务器。
[0055]API9接受来自管理器8.2的指令,以启动、终止、修改和删除播放列表。该API是完全符合针对GET、PUT、POST、DELETE的使用的HTTP规范的REST服务。API使用JSON有效负荷来使请求连续,其包含针对该动作的相关细节以及任何响应数据。在以下附录I中示出了所使用的API的示例,其中<id>标识媒体流。针对API的JSON有效负荷的示例是:{" streamld": " A" , " description": " desc" , " startTime": " 2011-01-20T17:40:00" ,,,sourceReferenee”: ”sourceReferenee”,”endTime”: ”2011-01-20T19:40:00”}
[0056]客户端7.1...7n以预定时间间隔轮询管理器8.2,以获取播放列表URL3.1...η以及可获得播放列表的其他数据和元数据。这允许客户端7.1...7η向用户呈现可获得内容的最新列表用于选择。
[0057]以下给出了返回播放列表5.1...η的URL的示例,其中<id>标识媒体流:
[0058]URI: / insider / events / <id>
[0059]HTTP METHOD:GET
[0060]管理器8.2仅用于内部管理目的;其优选地位于从因特网14无法访问的内部网络10中。管理器8.2可以包括用于编辑的用户界面,允许用户定义和注释新的分段,并管理现有分段。
[0061]播放列表管理器8.5还负责轮询流URL,并将新可获得的内容组块的位置填充到数据库8.3。
[0062]播放列表管理器8.5还可以发起从内容存储器6.1中清除旧的或未引用的内容组块,或者这可以使用其中将内容保持预定义最大时间段的调度脚本来完成。在传统CDN6中,组块仅保留几分钟,然后由CDN6删除,因为仅需要服务实况流。然而,在根据本实施例的CDN6中,优选地保留组块至少直到它们的流关闭,并优选地保留使流可获得的更长时间段,此后,应当删除组块,以便于保持存储器高效。CDN6将根据预定配置执行其清除操作。
[0063]播放列表管理器8.5可以包括流管理器功能,该流管理器功能作为检查添加到内容存储器6.1的新媒体内容4的后台线程运行。轮询线程周期性地更新来自CDN6的播放列表5.1...η,并用任何新发现的媒体内容4的组块来更新数据库8.3。
[0064]在上述实施例中,媒体内容组块以以下简单文件夹和文件命名传统存储在内容存储器6.1和CDN6中:
[0065]/ [stream id] / [leg name] / [stream start time] / [chunk id].ts
[0066]leg name允许支持实况源和备份源,备份源用于处理在编码器2或内容存储器6.2发生故障的故障转移(fai lover)场景。web服务器8.6支持类似故障转移场景。
[0067]例如,URL:
[0068]http: / / content.mobile_tv.sky.com / content / s2 / live /20110215T113015-04-9 / 419.ts
[0069]从流2返回组块序列号419。播放列表管理器8.5通过识别哪些序列号对应于请求的时间或分段,来产生定制播放列表5.1...η。所有组块将具有相同持续时间(例如,10秒或更少)。
[0070]内容管理系统
[0071]在本发明的实施例中,提供了内容管理系统(CMS)应用,CMS应用允许CMS用户(‘编辑’)创建并管理客户端7.1...η将可获得的媒体内容。CMS应用可以驻留于管理功能8.2中,如上所述。具体来说,媒体内容可以包括基于实况媒体流的一个或更多个定制媒体流,如上所述。
[0072]CMS应用创建并管理针对每个流的元数据,例如包括:
[0073]?名称(原始流的用户友好名称,例如,流Α)
[0074]?原始实况流的播放列表的 URL(例如,http: / / content, mobile-tv.sky.com / content / sn / live / 03.m3u8)
[0075]?起始日期/时间(还被称为入口点:对定制流的起始时间的可选参考)
[0076]?终止日期/时间(还被称为出口点:对定制流的终止时间的可选参考)
[0077]?视频类型(定制实况或定制剪辑,还被称为‘开放’或‘关闭’;定制剪辑具有终止点以及起始点)
[0078]?事件类型:终端、正常或新闻告警
[0079]?计划文本(如果未定义定制媒体(例如,在提供起始日期/时间之前),用户界面要显示的文本)
[0080]?注释集合(引用定制流中指定时间的附加信息(例如,标题))
[0081]定制媒体流及相关联元数据以下被称为定制模块。
[0082]现在将描述CMS应用的使用示例,其中创建了 ‘事件’,包括主模块50以及一个或更多个相关联的辅助模块52.1...n,如图4所示。该事件可以与例如新闻项目有关,主模块50可以包括与该新闻项目有关的新闻广播,并且辅助模块52.1...η可以包括与该新闻项目有关的附加内容。每个事件优选地基于包含视频流的单个主模块50,尽管静态图片和/或视频仅可以提供在主模块50中。
[0083]每个辅助模块52.1...η优选地包含一种类型的内容,例如:
[0084]?静态图像
[0085]?交互式图像
[0086]?图像画廊(多个可选择的图像)
[0087]?长文本(例如,文章)
[0088]?短文本(例如,引语)
[0089]?网页,
[0090]?视频
[0091]?图形对象(例如,图形)[0092]?馈送(例如,RSS> Twitter 或 Facebook 馈送)
[0093]辅助模块中的一些或所有可以以多媒体启用超文本格式(例如,HTML5)进行编码。
[0094]在CMS应用的操作方法中,编辑者登录到CMS应用,并使用CMS编辑屏幕(如图5所示,包括模块选择面板41和模块编辑面板40)创建定制模块。模块选择面板41允许用户使用一个或更多个参数(例如,关键字和内容类型)搜索模块。关键字可能先前已经用作要搜索内容的元数据。搜索结果可以显示在模块选择面板41上,并且可以选择结果之一来形成主模块的基础。
[0095]在本示例中,编辑者选择可获得的定制流,并将相关联的元数据输入到模块编辑面板40中,以创建主模块。编辑者可以使用此面板来定义定制流的起始点和终止点。编辑者可以选择是否将广告(商业广告)插入定制流中。编辑者可以使用预览窗口 42来预览定制流的视频内容。
[0096]然后,编辑者创建包括主模块50的事件,并选择辅助模块52.1...4来附接到此主模块。可以使用模块选择面板41选择辅助事件,并例如使用‘拖放’动作将其添加到事件中。
[0097]可以在模拟客户端7.1...η之一的测试环境中预览所创建的事件。然后,例如通过使定制媒体流和辅助模块的内容可获得,并在数据库8.3中提供定制媒体流的播放列表,在⑶Ν6上公布该事件。
[0098]编辑者可以改变用于定制流模块(在事件中用作主模块)的媒体流,而不改变事件的其他参数。编辑者可以修改媒体流的起始时间、添加终止时间或改变流的类型。例如,起初可以创建包含关于特定新闻项目的实况新闻广播作为定制流的事件。当广播完成讨论此新闻项目时,通过编辑者手动地设置讨论完成的终止时间,定制模块可以变为与此新闻项目有关的新闻广播的部分的剪辑。如果已知该讨论的期望终止时间,可以事先设置终止时间。可以例如基于指示新闻广播安排的数据,或通过自动地检测广播中的中断点(例如,商业广告休息),自动地设置终止时间。
[0099]客户端用户界面
[0100]图6是在客户端7.1...η中每个上运行的并优选地集成如上所述的媒体播放器的交互式媒体应用的用户接口的故事板或屏幕流程图的示意性概述。用户界面优选地由交互式媒体应用中的程序代码来定义,尽管用户界面的单独功能中的一些可以由操作系统调用执行。交互式媒体应用可以包括加载到客户端设备上的计算机程序。
[0101]在本具体实施例中,每个客户端具有呈现交互式内容的触摸感应显示屏,并且用户选择可以包括用户在屏幕上的触摸或手势。客户端7.1...η可以例如运行iOS4.2的iPad?设备(都来自Apple,Inc),并且交互式媒体应用可以包括可以无线地或经由与计算机的有线连接下载到客户端设备上的‘app’。然而,本发明的方案不限于Apple(RTM)设备和/或操作系统。例如,Android (RTM)操作系统以及Microsoft (RTM) IIS媒体服务支持的传统HLS,以及根据本发明实施例的增强型HLS服务,也可以应用于这些和其他操作系统和服务。
[0102]在本具体实施例中,用户界面呈现一系列事件,每个与新闻项目有关,如上所述。在示出仿制事件的图7至10中示出了示例屏幕截图。[0103]顶层或栅格屏幕60显示以下各项中选择的一个或更多个:可获得事件、欢迎屏幕和/或其他信息。在图7所示示例中,所显示的事件包括:与皇家婚礼有关的主要事件(在屏幕上部),以及以事件作标签但不以时间顺序布置的事件的选择(在屏幕下部)。取决于客户端7.1...η的限制,主事件包括一个或更多个实况视频流(‘Live Parliament Square’和‘Skycopter Live Feed’),在任意一个时间仅可选择一个实况视频流用于显示。
[0104]用户例如通过点击在屏幕左上方所示的‘时间轴(t ime line) ’和‘网格(grid) ’按钮,在顶层屏幕60和时间轴屏幕62之间导航。
[0105]如图8中示例所示,时间轴屏幕62将一系列事件,以与每个事件相关联的各个日期和时间(可以是上述定制流模块的起始日期/时间,或另一手动或自动设置的日期和时间(例如,事件公布的日期和时间))为顺序地显示在时间轴中。每个事件由从相关联的定制媒体流得到的静态或视频图像(优选地具有相关联日期/时间显示)来表示。用户可以通过例如触摸事件来聚焦于时间轴上的所选事件(在此情况下,该事件包含‘Live Parliament Square’ 实况视频流)。
[0106]在以下附录2中给出了由交互式媒体应用接收的、并用于产生时间轴屏幕62的响应的示例。
[0107]从网格屏幕60或时间轴屏幕62中任意一个,用户可以选择事件并导航到针对此事件的事件主屏幕64。此交互式媒体应用可以请求与所选事件(例如在以上时间轴响应中列出)相对应的URL。该响应由包括其主模块和相关联的辅助模块的事件组成。在以下附录3中给出示例事件响应,其中,关于‘Cameron’ s Big Society’的事件包含作为主模块50的定制实况剪辑,以及作为辅助模块52.1...3的引述模块、表模块和文章模块。
[0108]在事件主屏幕64中,主模块与和相关联辅助模块有关的至少一些内容一起显示。在此情况下,主模块呈现在中央位置或主位置,并且辅助模块布置在外围、从属或辅助位置(例如,在主模块周围)。以此方式,主模块和辅助模块之间的关系例如通过“辐射状”视觉比喻的方式呈现给用户。
[0109]如图9所示,例如,主模块包括实况视频流‘Live Parliament Square’,而辅助模块不出为 ‘Gallery:a royal romance’(图像画廊),‘Wedding procession:key pointsalong route’(交互式图像),‘Analysis’(长文本),‘Interactive plan !WestminsterAbbey’(交互式图像),‘Timeline:royal wedding dresses’(画廊 / 时间轴)。
[0110]主模块的定制媒体流可以在事件主屏幕64上播放。备选地或附加地,用户可以在事件主屏幕64和主模块的定制媒体流的全屏显示之间导航,其中,不显示辅助模块。
[0111]仅在事件主屏幕64上显示辅助模块的内容的子集。该子集可以包括:例如,来自画廊的一个图像、来自交互式图像的剧照或长文本的部分。此子集用作‘戏弄者’或用户选择辅助模块并显示其更多内容的邀请。
[0112]用户可以选择辅助模块中任意一个,以导航到对应单个模块屏幕66.l...n,用于显示辅助模块的内容。用户可以在与不同辅助模块有关的单个模块屏幕之间直接导航。单个模块屏幕中的一些或者所有还可以包括辅助位置或外围位置(例如,屏幕的角落)中主模块的显示。用户可以通过选择主模块的显示来导航到事件主屏幕64。
[0113]通过示例方式,图10.1至10.6示出了分别与以下各项有关的单个模块屏幕的示例:文章、特写、画廊、HTML5对象和地图,所有这些都与相同事件(在此情况下是王室婚礼(royal wedding))有关。
[0114]此外,诸如新闻馈送或社会馈送的馈送可以与辅助模块相关联,或者该馈送自身可以包括辅助模块。例如,图10.7示出了与图10.6的地图相关联的Tw i I I cr?馈送。
[0115]可以与其他用户(包括,例如,基于事件的用户界面不可用的用户)共享辅助模块。例如,用户可以作为电子邮件附件向朋友发送辅助模块,将其在微博(tweet)中链接,和/或将其发布到Kac.chook?。HTML5编码辅助模块特别适用于此共享类型,因为其可以在任何HTML5兼容浏览器中显示。
[0116]用户可以在事件主屏幕64和‘背景故事’屏幕68之间导航,‘背景故事’屏幕68包括与链接到事件主屏幕64中显示的事件的先前事件有关的一个或更多个显示。事件的链接可以是通过共享元标签(例如,‘royal wedding’ )的方式。例如,如图10.8所示,背景故事屏幕68包括按日布置的垂直时间轴,每个显示包括来自相关联事件的剧照和标题。
[0117]计算机系统
[0118]上述实体(例如,如图2和/或图3中所示的实体)可以通过计算机系统(例如,图11中所示的计算机系统200)来实现。本发明的实施例可以实现为这些计算机系统200执行的可编程代码。在阅读本说明书之后,本领域技术人员将会明白如何使用其他计算机系统和/或计算机架构来实现本发明。
[0119]计算机系统200包括一个或更多个处理器(例如,处理器204)。处理器204可以是任意类型的处理器(包括,但不限于,专用数字信号处理器或通用数字信号处理器)。处理器204与通信设施206 (例如,总线或网络)相连。各种软件实现是按照本示例性计算机系统描述的。在阅读本说明书之后,本领域技术人员将会明白如何使用其他计算机系统和/或计算机架构来实现本发明。
[0120]计算机系统200还包括主存储器208 (优选地,随机存取存储器(RAM)),并还可以包括辅助存储器610。辅助存储器210可以包括:例如,硬盘驱动器212和/或表示软盘驱动器、磁带驱动器、光盘驱动器等的可移除存储器驱动器214。可移除存储器驱动器214以公知的方式读取可移除存储单元218和/或写入可移除存储单元218。可移除存储单元218表示由可移除存储器驱动器214读取和写入的软盘、磁带、光盘等。将理解,可移除存储单元618包括计算机软件和/或数据存储在其中的计算机可用存储介质。
[0121]在备选实现中,辅助存储器210可以包括用于允许计算机程序或其他指令记载到计算机系统200中的其他类似装置。这些装置可以包括例如可移除存储单元222和接口220。这些装置的示例可以包括:程序盒式存储器和盒式接口(例如,先前在视频游戏设备中发现的盒式接口)、可移除存储器芯片(例如,EPROM或PROM或闪存)和相关联的插槽,以及可移除存储单元222和允许从可移除存储单元222向计算机系统200传送软件和数据的接口 220。备选地,可以使用计算机系统200的处理器204执行程序和/或从可移除存储单元222访问数据。
[0122]计算机系统200还可以包括通信接口 224。通信接口 224允许在计算机系统200和外部设备之间传送软件和数据。通信接口 224的示例可以包括:调制解调器、网络接口(例如,以太网卡)、通信端口、个人计算机存储卡国际协会(PCMCIA)插槽和卡等。经由通信接口 224传递的软件和数据是以信号228(可以是通信接口 224能够接收的电子、电磁、光或其他信号)的形式。经由通信路径226向通信接口 224提供这些信号228。通信路径226携带信号228,并可以使用电缆、光纤、电话线、无线链路、蜂窝电话链路、射频链路或任意其他合适通信信道来实现。例如,通信路径226可以使用信道的组合来实现。
[0123]计算机系统200还可以包括与通信设施206本地地或远程地连接的用户接口 230。用户接口 206的示例可以包括以下各项中一个或更多个:显示屏、触摸屏、投影仪、触觉接口、键盘、鼠标、触摸板、语音识别接口、语音合成器、手势接口和动作跟踪接口。
[0124]用作客户端7.1...η的计算机系统200优选地是具有无线因特网连接的便携式设备。
[0125]术语“计算机程序介质”和“计算机可用介质”通常用于指代诸如可移除存储器驱动器214、安装在硬盘驱动器212上的硬盘以及信号228的介质。这些计算机程序产品是用于向计算机系统200提供软件的装置。然而,这些术语还可以包括实现本文所公开的计算机程序的信号(例如,电、光或电磁信号)。
[0126]计算机程序(还被称为计算机控制逻辑)存储在主存储器208和/或辅助存储器210中。计算机程序还可以经由通信接口 224接收。当执行时,这些计算机程序使计算机系统200能够实现如本文所述的本发明的实施例。因此,这些计算机程序表示计算机系统200的控制器。在使用软件实现实施例时,软件可以存储在计算机程序产品中,或使用可移除存储器驱动器214、硬盘驱动器212或通信接口 224 (提供一些示例)装载到计算机系统200 中。
[0127]备选实施例可以实现为硬件中的控制逻辑、固件或软件或其任意组合。
[0128]备选实施例
[0129]在阅读本申请时可以想到备选实施例,尽管如此,备选实施例落入以下权利要求的范围中。
[0130]附录1-ΑΡΙ9的示例
[0131]
【权利要求】
1.一种通过网络提供流媒体的方法,其中,媒体流作为多个离散媒体文件存储在服务器上,并提供了播放列表,所述播放列表指示用于输出所述媒体流的特定部分所需的媒体文件;其中,响应于与所述媒体流的对应不同部分有关的请求,向各个不同的媒体流客户端提供针对所述媒体流的多个相互不同的播放列表。
2.根据权利要求1所述的方法,其中,所述请求中的至少一个与所述媒体流中的时间点有关。
3.根据上述权利要求中任意一项所述的方法,其中,所述请求中的至少一个与所述媒体流中的预定义分段有关。
4.根据上述权利要求中任意一项所述的方法,其中,所述请求中的至少一个包括搜索请求。
5.根据上述权利要求中任意一项所述的方法,其中,所述媒体流是实况媒体流。
6.根据权利要求5所述的方法,其中,所述多个相互不同的播放列表来源于针对所述实况媒体流的单个、周期性更新的播放列表。
7.根据权利要求5或6所述的方法,其中,所述播放列表中的至少一个包括闭合播放列表。
8.一种在客户端显示实况媒体流的方法,其中,所述媒体流作为多个离散媒体文件存储在服务器上,并向所述客 户端提供播放列表,所述播放列表指示用于输出所述媒体流的特定部分所需的媒体文件;其中,所述客户端请求访问所述实况媒体流的先前部分,接收针对所述先前部分的定制播放列表,并显示所述先前部分。
9.根据权利要求8所述的方法,其中,所述请求与所述实况媒体流中的先前时间点有关。
10.根据权利要求8所述的方法,其中,所述请求与所述实况媒体流中的预定义分段有关。
11.根据权利要求8所述的方法,其中,所述请求包括搜索请求。
12.根据权利要求8至11中任意一项所述的方法,其中,所述请求是响应于用户输入。
13.根据权利要求8至12中任意一项所述的方法,包括:指示所述实况媒体流的当前显示部分是实况的还是所述先前部分。
14.一种在客户端显示媒体事件的方法,所述媒体事件包括:具有流媒体内容的主模块,以及每个都具有媒体内容的多个辅助模块,所述方法包括: a.与所述辅助模块中的每一个的媒体内容的部分同时地显示所述主模块的流媒体内容,以及响应于用户选择所述辅助模块之一, b.显示所选择的所述辅助模块的媒体内容的附加部分。
15.根据权利要求14所述的方法,其中,在步骤O中,显示所述主模块的流媒体内容作为主显示,并且显示所述辅助模块中的每一个的媒体内容的部分作为辅助显示。
16.根据权利要求15所述的方法,其中,所述主显示显示在中心位置,并且所述辅助显示显示在所述主显示周围。
17.根据权利要求14至16中任意一项所述的方法,其中,在步骤O中,与所选择的辅助模块的媒体内容的附加部分同时地显示所述主模块的流媒体内容。
18.根据权利要求17所述的方法,其中,在步骤O中,显示所述主模块的流媒体内容,作为所选择的辅助模块的媒体内容的附加部分的辅助显示。
19.根据权利要求14至18中任意一项所述的方法,还包括:与另一用户共享所述辅助模块中的至少一个的媒体内容。
20.根据权利要求14至19中任意一项所述的方法,还包括: c.响应于另一用户选择,显示另一所选辅助模块的媒体内容的附加部分。
21.根据权利要求14至20中任意一项所述的方法,其中,所述媒体事件是由所述用户从多个媒体事件的显示中选择的。
22.根据权利要求21所述的方法,其中,以时间轴来显示所述多个媒体事件。
23.根据权利要求21所述的方法,其中,以网格来显示所述多个媒体事件。
24.根据上述权利要求中任意一项所述的方法,其中,所述媒体是使用非流专用传输协议进行流传输的。
25.—种包括程序代码装置的计算机程序产品,被布置为执行上述权利要求中任意一项所述的方法。
26.—种设备,被布置为执行权利要求1至24中任意一项所述的方法。
27.一种媒体数据结构,所述媒体数据结构包括主模块和一个或更多个相关联的辅助模块,所述主模块包括流媒体 内容和相关联的元数据,并且每个辅助模块包括与所述主模块相关联的媒体内容。
【文档编号】G06F17/30GK103548359SQ201280020556
【公开日】2014年1月29日 申请日期:2012年2月22日 优先权日:2011年2月25日
【发明者】约翰·杰里, 安·施明斯, 安德雷斯·安德森, 麦克尔·库特勒, 乔尔·纽曼 申请人:英国天空广播公司

最新回复(0)