目标媒体内容的递送
相关申请
本申请要求于2013年10月31日递交的美国临时专利申请No.61/898,425(律师卷号P61993Z)、于2013年9月17日递交的美国临时专利申请No.61/879,014(律师卷号P61026Z)、以及于2014年9月16日递交的美国非临时专利申请No.14/487,349(律师卷号P66302)的优先权权益,并且通过引用结合这些申请的内容。
背景技术
多媒体服务(包括流服务和会话服务)的发展是向新的移动宽带技术和标准演进的关键驱动之一。移动设备对数字视频内容的消费越来越多。在日常生活中,许多视频应用在移动设备上被广泛使用。例如,在线视频流包括诸如YouTube和Hulu之类的受欢迎的服务。视频录制和视频会议包括诸如Skype和Google Hangout之类的服务。在2011年,YouTube具有超过一万亿次的全球观看。其中,百分之十的观看是通过移动电话或平板进行的。随着更多的智能电话、平板和其它移动计算设备被购买,它们在视频录制和视频会议方面的使用将急剧上升。由于对多媒体服务的这种高消费需求结合媒体压缩和无线网络基础设施的发展,提高未来蜂窝和移动宽带系统的多媒体服务能力并向消费者递送高的体验质量(QoE)是有利的,从而确保从任何位置、在任何时间、以任何设备和技术对视频内容和服务的泛在访问。
附图说明
根据下面的具体实施方式并结合附图,本公开的特征和优点将是明显的,具体实施方式和附图一起以示例的方式示出本公开的特征;并且其中:
图1示出根据示例的媒体呈现描述(MPD)元数据文件配置的框图;
图2示出根据示例的超文本传输协议(HTTP)流送的框图;
图3示出根据示例的用于基于超文本传输协议(HTTP-based)的视频流送的、能量表征感知的无线接入网络(RAN)架构的框图;
图4示出根据示例的广播多播服务中心(BMSC)的图示;
图5示出根据示例的多媒体广播和多播服务(MBMS)用户服务描述(USD)的图示;
图6是示出根据示例的在用于多个用户的媒体内容流中插入广告的图示;
图7描绘根据示例的被包括在多媒体广播和多播服务(MBMS)用户服务描述(USD)中的描述符的图示;
图8描绘可操作来接收目标媒体内容的多媒体广播多播服务(MBMS)的用户设备(UE)的电路的功能;
图9描绘根据示例的用于接收目标媒体内容的方法的流程图;
图10描绘可操作来支持媒体内容流的用户设备(UE)的电路的功能;并且
图11示出根据示例的无线设备(例如,UE)的图示。
现在将参考所示出的示例性实施例,并且特定语言将在本文中被用于描述这些示例性实施例。然而,应当理解的是,本发明的范围不旨在由此受到限制。
具体实施方式
详细描述
在公开和描述本发明之前,应当理解的是,本发明不限于本文中所公开的特定结构、处理步骤或材料,而是扩展到如本领域普通技术人员将认识到的等同物。还应当理解的是,本文所采用的技术仅用于描述特定示例的目的,而不旨在进行限制。在不同的附图中相同的参考数字代表相同的元件。流程图和步骤中所提供的数字是为了清楚地示出步骤和操作而被提供,并不一定指示特定的顺序或次序。
示例实施例
下面提供技术实施例的初步概述,随后更详细地描述具体的技术实施例。本初步概括旨在帮助读者更快速地理解本技术,而不旨在标识本技术的关键特征或必要特征,也不旨在限制所要求保护的主题的范围。
所描述的技术用于在用户设备(UE)的多媒体广播多播服务(MBMS)客户端处接收广播环境中的目标媒体内容,并在媒体内容流中播放该目标媒体内容以供在UE处消费。MBMS客户端可以从服务器(例如,广告服务器)接收包含媒体呈现描述(MPD)信息的用户服务描述(USD),媒体呈现描述(MPD)信息描述目标媒体内容(例如,目标媒体内容的文件或会话)。目标媒体内容可以包括广告。例如,USD可以包括目标媒体内容的各个文件和会话的群组标识(ID)元素。群组ID元素可以是目标媒体内容的各个文件和会话的描述符。例如,群组ID元素可以将目标媒体内容标识为与汽车、电影、电子产品相关。此外,MBMS客户端可以接收包括关于流媒体内容(例如,视频直播或电视(TV)广播(例如,新闻广播、足球比赛))的MPD信息的USD。可以从广播多播服务中心(BMSC)接收流媒体内容。MBMS客户端可以收听广播频道并基于与目标媒体内容项(例如,广告)相关联的群组ID元素和与UE相关联的用户简档确定缓存某些目标媒体内容项。用户简档可以包括UE的用户的观看习惯和/或人口统计信息的描述。换言之,用户简档可以标识UE的用户感兴趣的目标媒体内容的类型。
MBMS客户端可以缓存具有与用户简档中所定义的兴趣相对应的群组ID元素的目标媒体内容项。MBMS客户端可以将所缓存的目标媒体内容项的MPD信息插入到与流媒体内容相关联的MPD信息中,以创建合并的MPD。合并的MPD可以描述待获取的、针对流媒体内容和目标媒体内容二者的片段。根据合并的MPD,流媒体内容和目标媒体内容可以在UE处被接收。UE的基于HTTP的动态自适应流送(DASH)客户端可以使用流媒体内容和目标媒体内容执行回放。在一个示例中,可以在正提供流媒体内容时在预定义的占位符处播放目标媒体内容项。作为示例,流媒体内容可以周期性地包括空的30秒时隙,在该时隙中目标媒体内容项经由UE的DASH客户端被播放。
超文本传输协议(HTTP)自适应流送(HAS)可以被用作互联网视频的多媒体递送的形式。由于HTTP和HTTP的底层协议(包括传输控制协议(TCP)/互联网协议(IP))二者的广泛采用,基于HTTP的递送可以提供可靠性和部署的简单性。基于HTTP的递送可以通过避免网络地址转换(NAT)和防火墙遍历问题使得简单和毫不费力的流服务成为可能。基于HTTP的递送还可以提供使用标准HTTP服务器和缓存而不是专用流服务器的能力。由于服务器侧上最少或减少的状态信息,基于HTTP的递送可以提供可扩展性。
当使用HAS来递送互联网多媒体内容时,在移动设备上操作的视频客户端可以被配置为通过使用HTTP GET或部分GET命令从视频服务器选择和请求用于从指定的资源(例如多媒体服务器)获取数据的适当的视频呈现级别来在速率调整中执行主要作用。视频客户端在开始播放流媒体内容(例如,音频或视频)之前首先建立一定级别的缓冲区。这个阶段被称为起始阶段。在此之后,客户端开始播放所缓冲的多媒体内容。客户端设备处的多媒体播放的质量和分辨率取决于可用的链路带宽。视频客户端通常仅基于更高层吞吐量预测(例如,HTTP级视频流吞吐量)或传输控制协议(TCP)吞吐量估计可用的链路带宽。
当网络状况中的波动(即,网络变动性)降低与多媒体内容相关联的通信数据速率时,高移动性环境中的多媒体流送可能是有挑战性的。当过载的网络使得通信数据率降低时,最终用户体验质量(QoE)同样可能降低。例如,在移动设备处接收的多媒体内容可以具有较小的分辨率或质量并且/或者当通过过载网络被提供时多媒体内容可以周期性地中断或暂停。
由于低效的带宽利用率和差的最终用户体验质量,在具有有限资源的移动网络中使用基于渐进式下载的流送技术可能是不合需要的。如以下所详细讨论的,基于流服务(例如,基于HTTP的动态自适应流(DASH))的超文本传输协议可以被用于解决基于渐进式下载的流送的弱点。
被流送到客户端(例如,用户设备(UE))的多媒体内容可以包括多个多媒体内容片段。多媒体内容片段各自可以包含不同的编码版本,不同的编码版本表示不同质量等级的多媒体内容。不同的编码版本可以允许客户端无缝适应不断变化的网络状况。例如,当网络状况良好时(即,网络条件高于预定阈值),客户端可以请求具有较高视频质量的多媒体内容片段。当网络状况不好时(即,网络状况低于预定阈值),客户端可以请求具有较低视频质量的多媒体内容片段。其结果是,当网络状况不好时,客户端仍然能够接收多媒体内容片段(虽然质量较低),从而降低中断自适应媒体流的可能性。
在DASH中,客户端可以选择具有最高的比特率的多媒体内容片段,以使得多媒体内容片段可以在客户端处被及时地下载来用于媒体播放,而不导致媒体播放中的重新缓冲事件。换言之,客户端可以不选择过高以至于自适应媒体流周期性地被中断以在客户端处恢复媒体播放之前将媒体内容的一部分缓存或预加载到客户端上的多媒体内容片段。在一个示例中,不良网络状况可以降低媒体内容流的质量。不良网络状况可以包括零覆盖、带宽突变、分组丢失、大量延迟变化等。虽然自适应流技术可以在计算可用吞吐量并基于可用吞吐量确定适当的流比特率时考虑当前网络状况,但是在网络突变和/或不良网络状况期间可能无法保证客户端处流畅的媒体播放。
因此,为了在客户端处针对自适应媒体流维持期望的体验质量,客户端的计划路由和沿计划路由的当前网络状况可以被用于策略性地在客户端处缓存多媒体内容片段,从而带来客户端处的更流畅的流媒体播放和提高的体验质量。客户端可以选择计划路由(即,客户端将要经过的地理路由)。客户端可以在经过计划路由的同时流送媒体内容(例如,电影)。在一个示例中,客户端可以包括位于移动中的车辆内的移动设备或车辆的计算设备。客户端可以从信道信息数据库(CID)接收计划路由的当前网络状况。当前网络状况可以包括沿计划路由的、具有低于预定阈值的相应的网络状况的某些位置(例如,隧道、桥梁、偏远区域)。客户端可以从媒体内容服务器请求媒体内容的另外的媒体内容片段(例如,电影的另外的片段),然后将另外的媒体内容片段存储在缓存中。当客户端到达沿计划路由的、具有低于预定阈值的网络状况的位置时,客户端可以播放存储在缓存中的媒体内容。其结果是,即使沿计划路由的当前网络状况降到预定阈值以下时,也可以在客户端处提供大体上连续的媒体播放。
无线多媒体标准
已经存在多个多媒体标准,这些多媒体标准被开发以使得多媒体能够被传送到移动计算设备、从移动计算设备被传送、或在移动计算设备之间被传送。例如,在流视频中,第三代合作伙伴计划(3GPP)已经开发技术规范(TS)26.234(例如,版本11.0.0),技术规范(TS)26.234描述基于用于点播或直播内容的单播流的实时流送协议(RTSP)的分组交换流服务(PSS)。此外,3GPP TS 26.247(例如,版本11.0.0)中描述了基于超文本传输协议(HTTP)的流服务,包括渐进式下载和基于HTTP的动态自适应流送(DASH)。基于3GPP的多媒体广播和多播服务(MBMS)规范TS 26.364(例如,版本11.0.0)规定了用于多播/广播内容分发的流送和下载技术。这样,基于DASH/PSS/MBMS的移动计算设备(例如,用户设备(UE))在UE设备处解码并渲染所流送的视频。在所有的这些规范中对3GPP TS 26.244(例如,版本11.0.0)中3GP文件格式的支持被授权,以支持文件下载和基于HTTP的流送用例。
在3GPP TS 26.244(例如,11.0.0)中提供了用于会话视频通信(例如,视频会议)的标准的一个示例。该标准描述了基于IMS的多媒体电话服务(MTSI),其允许通过基于互联网协议(IP)多媒体子系统(IMS)的网络递送高级多媒体会话服务和内容。IMS在3GPP TS26.140(例如,11.0.0)中被标准化。基于MTSI的发送器UE终端可以捕获并将记录视频,然后通过3GPP网络将视频传送到基于MTSI的接收器UE终端。接收器UE终端然后可以解码并渲染视频。3GPP TS 26.140还使用多媒体共享服务(MMS)来启用视频共享,视频共享服务中提供了对3GP文件格式的支持。
上述标准作为可以被用于传送去往、来自多媒体设备的多媒体文件或在多媒体设备之间传送多媒体文件的无线多媒体标准的示例被提供。这些示例不旨在是限制性的。另外的标准可以被用于提供流视频、会话视频或视频共享。
流媒体标准
本文中联系本发明的实施例提供了对HTTP流的更详细的说明,更具体地对DASH标准的更详细的说明。详细说明不旨在是限制性的。如将在以下段落中进一步解释的,本发明的实施例可以通过启用移动设备、或与移动设备通信的服务器被用于有效地传送去往、来自多媒体设备的多媒体文件和/或在多媒体设备之间传送多媒体文件,来选择和/或传送具有所期望的能量表征的多媒体。多媒体可以使用标准化的或非标准化的通信方案被传送。
超文本传输协议(HTTP)流可以被用作互联网视频的多媒体递送的形式。在HTTP流中,多媒体文件可以被划分为一个或多个片段并使用HTTP协议被递送到客户端。由于HTTP和HTTP的底层协议(包括传输控制协议(TCP)/互联网协议(IP))二者的广泛采用,基于HTTP的递送可以提供可靠性和部署的简单性。基于HTTP的递送可以通过避免网络地址转换(NAT)和防火墙遍历问题使得简化的流服务成为可能。基于HTTP的递送或流送还可以提供使用标准HTTP服务器和缓存而不是专用流服务器的能力。由于服务器侧上最少或减少的状态信息,基于HTTP的递送可以提供可扩展性。HTTP流送技术的示例可以包括Microsoft IIS的流畅流送、Apple HTTP的实时流送和Adobe HTTP的动态流送。
DASH是标准化的HTTP流送协议。如图1中所示出的,DASH可以指定用于媒体呈现描述(MPD)元数据文件102的不同的格式,媒体呈现描述(MPD)元数据文件102提供关于片段格式以及存储在服务器中的媒体内容表示的结构和不同版本的信息。MPD元数据文件包含关于媒体播放器的初始化和媒体片段的信息(例如,媒体播放器可以查看初始化片段以确定容器格式和媒体时序信息),以确保片段到用于与其它表示的切换和同步呈现的媒体表示时间线的映射。DASH技术已经被其它组织(例如,运动图像专家组(MPEG)、开放IPTV论坛(OIPE)、和混合广播宽带电视(HbbTV))标准化。
DASH客户端可以通过经由一系列HTTP请求-响应事务下载片段来接收多媒体内容。DASH可以提供随着移动设备可用的带宽改变而在媒体内容的不同比特率表示之间动态切换的能力。因此,DASH可以允许快速适应不断变化的网络和无线链路状况、用户偏好和设备能力,例如显示器分辨率、所采用的中央处理单元(CPU)的类型、可用的存储器资源等等。DASH的动态适应可以为用户提供更好的体验质量(QoE),与其它流送协议相比具有更短的启动延迟和更少的重新缓冲事件。
在DASH中,媒体呈现描述(MPD)元数据102可以提供关于存储在web/媒体服务器212中的媒体内容表示的结构和不同版本的信息,如图2中所示出的。在图1所示出的示例中,MPD元数据被暂时划分为具有预定长度(在该示例中,例如为60秒)的时段。每个时段可以包括多个自适应设置104。每个自适应设置可以提供关于具有若干编码选项的一个或多个媒体分量的信息。例如,该示例中的自适应设置0可以包括各种被不同地编码的音频选项,例如不同的比特率、单声道、立体声、环绕声等等。除了提供不同质量的音频用于时段ID上的多媒体呈现,自适应设置还可以包括不同语言的音频。自适应设置中所提供的不同的选项被称为表示106。
在图1中,自适应设置1被示出为以不同的比特率(例如,5兆比特每秒(Mbps)、2Mbps、500千比特每秒(kbps)或特技模式)提供视频。特技模式可以被用于多媒体流文件中的位置的搜索、快进、快退或其它变化。此外,视频还可以以不同的格式(例如二维(2D)或三维(3D)视频)可用。每个表示106可以包括片段信息108。该片段信息可以包括初始化信息110和实际的媒体片段数据112。在该示例中,MPEG 4(MP4)文件被从服务器流送到移动设备。虽然该示例中使用了MP4,但是也可以使用多种不同的编解码器,如先前所讨论的。
自适应设置中的多媒体还可以被分成更小的片段。在图1的示例中,自适应设置1的60秒视频片段还被分成四个各自为15秒的子片段112。这些示例不旨在是限制性的。自适应设置和每个媒体片段或子片段的实际长度取决于媒体的类型、系统要求、可能的干扰类型等等。实际的媒体片段或子片段可以具有少于一秒到数分钟的长度。
如图2中所示出的,MPD元数据信息可以被传送到诸如移动设备之类的客户端220。移动设备可以是被配置为接收和显示流媒体的无线设备。在一个实施例中,移动设备可以仅执行该功能的一部分,例如接收流媒体并且然后将流媒体传送到另一设备或显示设备进行渲染。移动设备可以被配置为运行客户端220。客户端可以使用HTTP GET 240消息或一系列部分GET消息请求片段。客户端可以控制流会话,例如管理有按时的请求和一系列片段的流畅播放,或潜在地调整比特率或其它属性,以对无线链路、设备状态或用户偏好的变化做出反应。
图2示出基于DASH的流送的框架。web/媒体服务器212中的媒体编码器214可以将来自音频/视频输入210的输入媒体编码成可供存储或流送的格式。媒体分段器216可以被用于将输入媒体分割成可被提供给web服务器218的一系列片段232。客户端220可以使用被发送到web服务器(例如,HTTP服务器)的HTTP GET消息234请求片段中的新数据。
例如,客户端220的web浏览器222可以使用HTTP GET消息240请求多媒体内容。web服务器218可以向客户端提供多媒体内容的MPD242。MPD可以被用于传达每个片段的索引和片段的相应的位置,如相关联的元数据信息252中所示出的。web浏览器可以如236中所示出的根据MPD 242从服务器逐片段地拉取媒体。例如,web浏览器可以使用HTTP GET URL(分片1请求(frag 1 req))(244)请求第一片段。统一资源定位符(URL)或全球资源定位符可以被用于告诉web服务器客户端将要请求(254)哪些片段。web服务器可以提供第一分片(即,片段1246)。对于随后的片段,web浏览器可以使用HTTP GET URL(分片i请求(frag i req))(248)请求片段i,其中i是片段的整数索引。其结果是,web服务器可以提供片段i(250)。片段可以经由媒体解码器/播放器224被呈现给客户端。
图3示出多媒体内容312在提供该多媒体内容的HTTP服务器310到在移动设备(例如,UE 336)上操作的3GPP客户端338之间的流动。HTTP服务器可以与公用或私有网络322(或互联网)相连接,公用或私有网络322(或互联网)与无线广域网(WWAN)的核心网络324通信。在一个实施例中,WWAN可以是基于3GPP LTE的网络或基于IEEE802.16的网络(例如,802.16-2009)。核心网络可以经由无线接入网络(RAN)访问无线网络330(例如,演进分组系统(EPS))。RAN 332可以经由节点(例如,演进节点B(eNB)334)将多媒体内容提供给在UE336上操作的客户端。
在一个示例中,HTTP服务器310可以被耦接到信道信息数据库350。信道信息数据库350可以包括针对多个地理位置的当前网络状况。多个地理位置可以包括具体的公路、街道、小区、地理区域、桥梁、隧道等。当前网络状况可以基于多个地理位置的当前网络状况的实时监控。因此,由于当前网络状况的变化,信道信息数据库350可以被动态更新。可替代地,可以基于针对多个地理位置的历史网络状况信息推断出当前网络状况。在另一示例中,当前网络状况可以使用众包网络状况信息来确定。
增强的多媒体广播多播服务(eMBMS)
LTE网络的持续商业化已经促进提高对增强的多媒体广播和多播服务(eMBMS)的部署的兴趣。多媒体广播多播服务(MBMS)的LTE版本是eMBMS。MBMS是被设计为提供广播和多播服务的有效递送的点到多点接口规范。MBMS可以应用于移动电视(TV)和无线电广播,以及文件递送和紧急警报。由于eMBMS的第一部署预计在2014年,增强核心MBMS用户服务特征的性能和可用性是重要的。3GPP TS 26.346版本6-12中规定的MBMS是根据3GPP颁布的蜂窝标准之一工作的蜂窝网络上所用的点到多点系统。MBMS被设计用于基于广播和多播技术进行受欢迎的媒体内容到多个接收器的有效递送。在服务层,MBMS基于传输层处的用户数据报协议(UDP)并使用用于流送的实时传输协议(RTP)和用于文件递送的基于单向传输的文件递送(FLUTE)定义用于多媒体内容的流送和文件的可靠下载二者的递送协议。
MBMS接入客户端可以经由用户服务发现(USD)信令从服务器(称为广播多播服务中心(BMSC))接收媒体数据和元数据。MBMS已经在与3GPP版本8和更高版本相对应的基于3GPP的长期演进(LTE)标准发展中被用作演进的MBMS(eMBMS)模式。MBMS下载传输技术被设计为经由MBMS向相对大数目的接收器递送任意数量的对象。MBMS下载定义了若干增加可靠性的技术,例如,FEC和文件修复。下载传输技术允许DASH片段和媒体呈现描述符的递送。
MBMS下载传输是可替代基于卸载HTTP的单播下载传输的一种有吸引力的服务。优点包括支持新的非实时服务类型、提供补充MBMS流服务的内容和利用设备日益增加的存储容量。DASH片段格式(虽然主要针对用HTTP进行单播传输)对于递送环境是单播或多播是不可知的。MBMS用户服务规范TS 26.364指示DASH格式的内容通过FLUTE协议、使用MBMS下载传输被发送的可能性。如RFC 3926中所定义的,FLUTE允许通过MBMS递送片段,以使得客户端观察这些片段通过HTTP/TCP被递送。HTTP-URL被分配给FLUTE中每个被递送的对象,并且HTTP-URL对MPD中的片段URL进行映射,即,通过FLUTE递送的对象的文件传输表(FDT)中的内容位置元素与MPD中的片段URL相匹配。UE可以基于对MPD中包含的HTTP URL与FLUTE分组中包含的URL信息的比较来标识所接收的DASH表示。
图4示出基于MBMS的广播多播服务中心(BMSC)子功能架构以及UE和BMSC之间的相关联的接口。BMSC或BM-SC可以与内容提供商/广播多播源通信并且/或者控制内容提供商/广播多播源。BM-SC可以提供MBMS递送功能。3GPP TS 26.364中进一步描述了MBMS。
图5示出了多媒体广播和多播服务(MBMS)用户服务描述(USD)的图示。BM-SC经由被组织为服务束的用户服务描述(USD)的一个或多个实例公告可用的MBMS服务。MBMS用户服务由使用下载传输方法或使用交互式公告功能被递送的元数据(对象/文件)描述。MBMS用户服务发现或公告涉及以合适的方式将元数据的片段递送到多个接收器。元数据本身描述服务的细节。元数据管理信息包括允许元数据片段对象的标识、版本管理、更新和时间有效性的(一个或多个)(XML格式的)元数据封套对象。
如图5中所示出的,被提供给接收器的USD中所包括的元数据可以包括:描述单个或一束MBMS用户服务的细节的元数据分片对象、描述MBMS用户服务会话的细节的(一个或多个)元数据分片对象、描述相关联的递送方法的细节的(一个或多个)元数据分片对象、描述服务保护的细节的(一个或多个)元数据分片对象、描述FEC修复数据流的细节的元数据分片对象、提供(DASH内容的)媒体呈现描述的元数据分片对象、提供(DASH内容的)初始化片段的(一个或多个)元数据分片对象、提供调度信息描述的(一个或多个)元数据片段对象、以给定用户服务的单个会话或用户服务内的单个文件内容的级别为服务束内的MBMS用户服务提供过滤数据的(一个或多个)元数据分片对象。
视频分发服务(例如,流送、下载、广播、TV等)的增长推动了广告商通过个性化的广告更好地针对用户,并提高用户观看他们的广告的可能性以及他们与用户的需求/兴趣的相关性(即,不是被跳过或不被观看)。在广播网络(例如,那些基于e-MBMS的广播网络)中,从广告插入的角度看,广告通常在广播之前被插入并且广告正如主要的视频内容一样经由广播被分发。这为获得更好的投资回报的目标广告提供的机会不大,因为所有的用户将接收相同的广告,没有个性化的空间。因此,如本文所更详细地描述的,通过e-MBMS的广告的递送可以针对用户进行个性化。
在一种配置中,个性化的广告可以被实时插入到媒体内容流中。例如,人口稠密的城市的两大主要足球队将在周末在德比大战中对战彼此。由于预计大量球迷将对比赛感兴趣,运营商计划通过MBMS向它的订户提供服务。比赛内容将使用DASH格式基于根据FLUTE的下载传输技术被广播。运营商计划向俱乐部球迷递送不同的目标广告集(即,将在比赛休息时间播放等),来推广每个足球俱乐部的球迷商店的产品。由于针对每个流在服务器处预插入不同的广告来广播主内容的多个事件流在带宽方面是昂贵的,运营商决定连同不同的广告集一起广播单个主事件流,将广告插入留给客户端来执行。也就是说,客户端可以将属于某个集合的广告插入到流媒体内容(即,单个主事件流)内的预定义的占位符中。
在另一配置中,个性化的广告可以从缓存被插入到媒体内容流中。运营商可以向它的有MBMS能力的订户提供由UE中的内容缓存能力使能的广告递送服务,UE中的内容缓存能力当前可经由移动设备中的存储器/存储能力获得。广告内容可以基于DASH文件格式。订阅服务的用户的MBMS客户端设备可以加入广播多播会话(例如,在无流量或不拥塞的时间理想地被调度),并缓存与用户偏好/兴趣相关的广告。在随后的现场直播事件期间,用户可以观看这些预缓存的广告之一,而不是观看主内容流中的广告。除了使能广告个性化之外,当客户端在实时流内的广告广播期间经历不良网络状况时,这是特别可取的。
因此,个性化的广告插入可以在MBMS和eMBMS中得到支持。主广播内容(即,流媒体内容)和目标媒体内容文件(例如,广告)可以被分开地广播给客户端,目标媒体内容文件的插入可以在客户端处被启用。关于现场直播事件,向客户端递送个性化的广告可以被朝着及时插入到主广播内容中调度。如果预先缓存的广告被授权并满足某些标准(例如,广告较早地从运营商网络被获取),这些广告的插入可以代替主广播流中的广告。此外,UE可以根据用户偏好、基于分类信息选择性地缓存被广播的广告。
在一个示例中,UE的MBMS客户端可以收听针对目标媒体内容的广播频道。目标媒体内容可以从广播多播服务中心(BMSC)被广播。每个目标媒体内容项可以与群组标识(ID)元素和/或描述符相关联。群组ID元素和/或描述符可以标识与目标媒体内容项相关联的类别。例如,第一群组ID元素可以标识第一目标媒体内容项与汽车相关,第二群组ID元素可以标识第二目标媒体内容项与运动相关。群组ID元素的其他示例可以包括社会团体、职业、民族等。以群组ID元素标记的目标媒体内容项可以是媒体内容文件,或可替代地,目标媒体内容项可以是媒体内容会话,其中媒体内容会话是多个媒体内容文件。
在一个示例中,MBMS客户端可以确定根据用户服务描述(USD)被广播的每个目标媒体内容项的群组ID元素。MBMS客户端可以在传输目标媒体内容项之前从MBMS接收USD,其中USD描述将被广播的目标媒体内容项。USD可以包括包含描述目标媒体内容项的群组ID元素群组信息或群组过滤器。群组过滤器或群组信息可以是USD中的过滤器描述元数据分片的一部分。换言之,USD类似于电子服务指南。USD可以描述广播频道、要被递送给每个广播频道的目标媒体内容项、递送每个目标媒体内容项的时间、每个目标媒体内容项的表征(例如,描述符或群组ID元素)等。群组ID元素可以指示特定的目标媒体内容项与汽车、视频游戏、音乐播放器等中的一者相关。
在另一示例中,USD可以在具体的USD元素中用信号通知这种分类/类别信息。例如,调度描述元素可以包括文件调度(fileSchedule)元素,fileSchedule元素可以包含关于所广播的文件(即,目标媒体内容项)的细节。此外,广告的分类和类别信息的描述符可以被包括在fileSchedule元素中,以在所广播的广告文件的上下文中逐文件地进行区分,即,每个广播的广告文件可以与该广告所属的类别/分类的描述符相关联。
此外,MBMS客户端可以维护关于用户感兴趣的目标媒体内容的类型的分类和类别信息的数据库。换言之,MBMS客户端可以针对UE的每个用户维护指示该用户的观看习惯和人口统计信息的用户简档。作为非限制性的示例,用户简档可以指示用户喜欢与运动、汽车和政治有关的广告。此外,人口统计信息可以标识与用户相关联的性别、年龄、地理位置等。
当BMSC广播目标媒体内容文件时,MBMS客户端可以选择性地缓存UE的用户感兴趣的目标媒体内容文件(即,广告的DASH片段)。MBMS客户端可以寻找具有与用户简档中的用户兴趣相匹配的描述符(如USD中所指示的)的广播文件。类似地,MBMS客户端可以选择具有与用户简档中包含的群组ID元素相匹配的群组ID元素的目标媒体内容文件。换言之,MBMS客户端可以选择性地接收具有已知与用户简档相匹配的群组过滤器值的内容。在一个示例中,MBMS客户端可以选择具有与用户简档相对应的群组ID元素的目标媒体内容会话(即,多个媒体内容文件)。MBMS客户端可以将所选择的媒体内容文件存储在缓存中,随后,MBMS客户端可以在媒体内容流(例如,足球比赛、新闻广播)期间播放媒体内容文件以供在UE处消耗。
在一个示例中,关于针对给定会话的分类和类别信息的用户简档描述符(即,描述符或群组ID元素)可以连同一组起始和停止时间一起被包括在USD中的会话调度(sessionSchedule)元素中,以如起始和停止时间所指示的逐时隙地在该会话中的广播内容文件的上下文中进行区分,即,以给定的时间间隔广播的内容文件可以与目标用户所属的类别/分类的用户简档描述符相关联。在另一示例中,目标媒体内容文件的表示格式可以基于描述目标媒体内容的一组关键字的确定。这些确定的上下文信息关键字可以被本地存储在由MBMS客户端维护的数据库中,并与表示广告内容的关键字相匹配。其内容描述关键字与内容信息关键字匹配的目标媒体内容(例如,广告)被标识为将被插入并被呈现给用户的目标媒体内容。
由于目标媒体内容文件被广播,MBMS客户端可以能够接收所有的广播媒体内容文件。然而,MBMS客户端可以解析目标媒体内容文件的头部并确定UE的用户对该类别的目标媒体内容文件不感兴趣。因此,MBMS客户端可以忽略不与用户简档相对应的目标媒体内容文件。作为非限制性的示例,当与UE相关联的用户简档指示UE是65岁的男性时,UE的MBMS客户端可以选择忽略具有指示广告为针对儿童动作玩具的群组元素ID的广告。
在一个示例中,该组广告内容可以通过单独的会话被广播给MBMS客户端。广告内容可以在主内容广播之前被广播,例如在物流量或不拥塞期间被广播。广告内容可以连同与描述广告内容的远程元素相对应的元数据以及包含关于广告的分类和类别信息(例如,运动、音乐、汽车、家电、计算机、食品等)的元数据一起被传送给MBMS客户端。分类和类别信息可以包括群组ID元素或描述符,群组ID元素或描述符被附着到具有某个统一资源指示符(URI)和等于广告的上下文的值的每个广告。在一个示例中,相对大量的用户可能希望接收并缓存广告的每个分类/类别,以便经由广播调整广告的递送。
随后,MBMS客户端可以接收流媒体内容(例如,足球比赛的主内容广播)。流媒体内容可以包括实时视频或电视(TV)广播。流媒体内容可以被广播给一组用户。流媒体内容可以包含用于目标媒体内容文件(例如,广告)的预定义的占位符。例如,MBMS客户端可以基于USD知道正被接收的流媒体内容。MBMS客户端可以预先从BMSC接收USD。USD可以描述广播会话和所有的广播频道的广播内容。换言之,USD可以描述流媒体内容以及目标媒体内容文件(例如,广告)。由于流媒体内容可以是DASH格式的内容,DASH格式的内容的MPD可以被包括在USD中。MPD可以是可扩展标记语言(XML)文件。
为了在UE处播放流媒体内容和目标媒体内容二者,标识与流媒体内容以及与用户简档相关的目标媒体内容(例如,存储在UE的缓存中的目标媒体内容)相关联的片段的MPD可以被创建。在流媒体内容的MPD中,时段或占位符可以经由XLINK指向远程元素,其中远程元素包括关于目标媒体内容文件(例如,广告内容)的信息。远程元素可以是不完全包含在MPD中、而是在MPD中使用XLINK的简化的简档通过HTTP-URL被引用的元素。换言之,为了将目标媒体内容文件插入到流媒体内容中,XLINK可以被用于指MPD中的外部DASH片段或DASH场景。
在流媒体内容的第一MPD(例如,第一XML文件)中,与用户简档相关的目标媒体内容的第二MPD(即,第二XML文件)可以使用XLINK被引用。来自第二MPD的远程元素可以被插入到第一MPD中,从而导致较大的MPD。换言之,两个XML文件可以被合并以创建更大的MPD。这里的用途是广告插入,因为广告通常从不同的服务器被传送。广告被与流媒体内容分开管理。为了将广告插入到流媒体内容(例如,正在进行的DASH流)中,XLINK可以被用于指广告的外部DASH片段。与外部DASH片段相关联的第二MPD(即,目标广告内容的MPD)可以被插入并与流媒体内容的第一MPD合并,以创建更大的MPD或合并的MPD。合并的MPD可以为流媒体内容和目标媒体内容(例如,与用户简档相关的广告)二者提供整体内容描述。因此,UE可以使用合并的MPD来播放流媒体内容和目标媒体内容二者。
在一个示例中,UE的DASH客户端可以从UE的MBMS客户端接收流媒体内容的MPD。DASH客户端可以根据流媒体内容的MPD获取并播放媒体内容片段(与主内容播放相关)。当DASH客户端在MPD中找到指向远程元素(例如,占位符)的XLINK属性时,DASH客户端可以从UE的MBMS客户端请求远程元素。MBMS客户端可以选择所缓存的远程元素中的一个(即,描述广告内容的远程元素)并将该远程元素提供给DASH客户端。例如,MBMS客户端可以选择与用户简档相对应的远程元素中的一个。DASH客户端可以从MBMS客户端接收远程元素,并然后将远程元素重新装配到流媒体内容的MPD中。换言之,MPD可以被重建以包括远程元素的MPD(即,描述将随同流媒体内容被播放的目标媒体内容的MPD)。例如,与远程元素相关联的MPD可以变为与原来的MDP合并。DASH客户端可以根据重建的MPD开始获取远程元素所描述的片段(即,与个性化的广告相对应的片段)。DASH客户端可以从MBMS客户端的缓存获取片段并提供这些片段以在UE上进行显示。基于重建的MPD,DASH客户端可以播放流媒体内容和目标媒体内容二者。
由于不同的用户简档可以与不同的UE相关联,取决于哪些广告与用户简档相对应,每个MPD可以被不同地构建。例如,第一UE中的第一MBMS客户端可以接收接收描述正被广播的动作电影的DASH片段的MPD。第二UE中的第二MBMS客户端可以接收相同的MPD。换言之,两个UE可以都在接收动作电影的广播。然而,与第一UE相关联的用户简档可以指示用户喜欢汽车广告。因此,第一MBMS客户端可以重建MPD,使得重建的MPD中所引用的远程元素与汽车广告相关。另一方面,与第二UE相关联的用户简档可以指示用户喜欢儿童玩具。因此,第二MBMS客户端可以重建MPD,以使得重建MPD中所引用的远程元素与玩具广告相关。基于用户简档,观看相同的动作电影(即,主内容流)的用户可以接收不同的目标媒体内容,例如,汽车广告或玩具广告。每个UE可以在广播远程元素中寻找不同的远程元素(例如,与用户感兴趣的广告相对应)并将那些远程元素插入到UE自己对MPD的构建中。
在一种配置中,考虑实况广播事件设定,主内容流和广告流可以被同时广播给UE的MBMS客户端。换言之,在这种配置中,在主内容流被广播之前,MBMS客户端可以不在物流量或不拥塞期间接收广告。与主内容里相比,广告流可以与相对较低的速率相关联,因为广告流在UE处不被立即消耗。UE的MBMS客户端可以缓存广告以及时插入到主内容中。广告可以与主内容并行地被传输,MBMS客户端被预计接收二者。BM-SC可以调度主内容传输和广告的递送,使得广告以及时的方式到达以被插入到主内容中。在指向广告的基于XLINK的远程元素可能出现的情况下,由于BM-SC控制MPD更新,在更新MPD与基于XLINK的远程元素之前,BM-SC可以确保广告的接收。
在一个示例中,当DASH客户端在作为向该URL发出HTTP GET请求的结果的HTTP响应主体中逐字地接收一个或多个元素时,远程元素可以被解析。从远程元素获得的属性和元素可以被添加到包含@xlink:href的MPD的元素并可以与已经存在于MPD中的那些元素合并。如果相同的属性存在于MPD和远程元素二者中,属性值可以是相同的。如果它们不同,则MPD的属性的值可以优先于远程DASH元素中的属性的值。
在一种配置中,运营商可以预先广播广告,每个MBMS客户端可以获取并缓存感兴趣的广告供以后观看,例如,使用DASH在直播事件中观看。每个广播的广告内容也伴有远程元素(用于插入到DASH内容中)以及包含关于广告内容的分类和类别信息的描述符元数据,从而使得MBMS客户端可以选择性地接收并缓存每个广告内容。
图6是示出在针对多个用户的媒体内容流中插入广告的图示600。广播多播服务中心(BMSC)602可以广播媒体内容流的多个时段。例如,主内容流可以被分成五个时段的DASH内容,即,时段1到时段5。主内容流中的时段可以在媒体呈现描述(MPD)中被描述。用户设备(UE)的多媒体广播和多播服务(MBMS)客户端可以根据MPD从BMSC 602接收媒体内容流。
MBMS客户端可以在媒体内容流之前或与媒体内容流同时收听从MBSC 602广播的广告的广播频道。例如,广告可以包括五个分开的广告,即,广告1到广告5。每个广告可以伴随有远程元素和描述符。基于与UE的用户相关联的用户简档,MBMS客户端可以确定在MBMS客户端接收并缓存哪些广告。因此,MBMS客户端可以缓存具有与用户简档相对应的描述符的广告,并忽略具有不与用户简档相对应的描述符的广告。取决于用户简档,不同的MBMS客户端可以确定缓存不同类型的广告。
UE的DASH客户端可以根据MPD播放所广播的主内容以及广告。作为示例,MPD可以经由时段2和时段3之间的XLINK的包含远程元素。远程元素可以指媒体内容流期间将被插入到时段2和时段3之间的广告。DASH客户端可以从MBMS客户端请求远程元素。作为响应,MBMS客户端可以向DASH客户端提供与用户简档相对应的远程元素。DASH客户端然后可以查找与远程元素相关联的广告内容并与媒体内容流一起播放广告内容。作为非限制性的示例,第一DASH客户端可以播放时段1、时段2、广告4、时段4和时段5。第二DASH客户端可以播放时段1、时段2、广告3、时段4和时段5。取决于用户简档,不同的DASH客户端可以播放不同类型的广告。
图7是可被包括在多媒体广播和多播服务(MBMS)用户服务描述(USD)中的示例性描述符700。该描述符还可以被称作用户简档描述符。该描述符可以与从BMSC广播的目标媒体内容文件相关联。该描述符可以描述目标媒体内容文件的分类或类别。例如,描述符可以指示某个目标媒体内容文件与汽车广告或手机广告相关。描述符可以是被插入到USD的sessionSchedule元素或fileSchedule元素中的XML结构。描述符可以包括多个字段,例如与访问控制、身份、兴趣、上下文、终端简档、偏好和信息相关的那些字段。
另一示例提供包括可操作来接收目标媒体内容的多媒体广播多播服务(MBMS)客户端的用户设备(UE)的电路的功能800,如图8中的流程图所示出的。功能可以被实现为方法或者功能可以作为机器上的指令被执行,其中指令被包括在至少一种计算机可读介质或一种非暂态机器可读存储介质上。电路可以被配置为经由MBMS从服务器接收第一元数据,第一元数据包括与目标媒体内容相对应的一个或多个文件或会话的群组信息以及与这些文件或会话相关联的媒体呈现描述(MPD)信息,其中群组信息中的每个文件或会话与群组信息中所包含的群组标识(ID)元素相关联,如框810中。电路可以被配置为经由MBMS接收用户服务描述(USD)中的第二元数据,USD包括流媒体内容的MPD信息,如框820中。电路可以被配置为标识与UE的用户相关联的用户简档,其中用户简档包括与用户相关联的群组ID元素,如框830中。电路可以被配置为选择与具有被包括在用户简档中的群组ID元素的文件或会话相对应的目标媒体内容,如框840中。电路可以被配置为将具有被包括在用户简档中的群组ID元素的所选择的目标媒体内容的目标MPD信息插入到流媒体内容的MPD信息中,以生成合并的MPD,如框850中。电路可以被配置为根据合并的MPD经由MBMS客户端接收所选择的目标媒体内容,如框860中。电路可以被配置为根据合并的MPD经由MBMS客户端接收流媒体内容,如框870中。此外,电路可以被配置为在UE处使用所选择的目标媒体内容和流媒体内容执行播放,如框880中。
在一个示例中,目标媒体内容包括广告。在另一示例中,与用户简档中的用户相关联的群组ID元素与以下各项中的一项相关:用户的观看习惯或者描述用户的人口统计信息。在另一示例中,电路还可以被配置为:将经由MBMS客户端接收的所选择的目标媒体内容存储在UE处的缓存中;在UE处使用存储在UE处的缓存中的所选择的目标媒体内容执行播放。
在一种配置中,电路还可以被配置为从广播多播服务中心(BMSC)接收所选择的目标媒体内容和流媒体内容。在另一配置中,电路还可以被配置为经由MBMS从广告服务器接收第一元数据。在一个示例中,从服务器接收的第一元数据被包括在对目标媒体内容和与目标媒体内容文件相关联的群组ID元素进行描述的MBMS用户服务描述(USD)中。在另一示例中,UE包括天线、触敏显示屏幕、扬声器、麦克风、图形处理器、应用处理器、内部存储器或非易失性存储器端口。
另一示例提供用于接收目标媒体内容的方法900,如图9中的流程图中所示出的。方法可以作为机器上的指令被执行,其中指令被包括在至少一种计算机可读介质或一种非暂态机器可读存储介质上。方法可以包括经由用户设备(UE)中的多媒体广播多播服务(MBMS)客户端从服务器接收第一元数据的操作,第一元数据包括与目标媒体内容相对应的一个或多个文件或会话的群组信息以及与这些文件或会话相关联的媒体呈现描述(MPD)信息,其中群组信息中的每个文件和会话与群组信息中所包含的群组标识(ID)元素相关联,如框910中。方法可以包括标识与UE的用户相关联的用户简档,其中用户简档包括与用户相关联的群组ID元素,如框920中。方法可以包括选择与具有被包括在用户简档中的群组ID元素的文件或会话相对应的目标媒体内容,如框930中。方法可以包括经由UE中的MBMS客户端接收所选择的目标媒体内容,如框940中。此外,方法可以包括将所选择的目标媒体内容存储在UE处的缓存中,如框950中。
在一种配置中,方法可以包括:经由MBMS接收用户服务描述(USD)中的第二元数据,USD包括流媒体内容的MPD信息;将具有被包括在用户简档中的群组ID元素的所选择的目标媒体内容的目标MPD信息插入到流媒体内容的MPD信息中,以生成合并的MPD;根据合并的MPD经由MBMS客户端接收流媒体内容;并在UE处使用流媒体内容和存储在UE处的缓存中的所选择的目标媒体内容执行播放。
在一个示例中,目标媒体内容包括广告。在另一实例中,与用户简档中的用户相关联的群组ID元素与以下各项中的一项相关:用户的观看习惯或者描述用户的人口统计信息。在另一示例中,方法可以包括从广播多播服务中心(BMSC)接收所选择的目标媒体和流媒体内容。
在一种配置中,与目标媒体内容相对应的文件或会话包括基于超文本传输协议的动态自适应(DASH)流格式的文件或会话。在另一配置中,该方法可以包括经由MBMS从广告服务器接收第一元数据。在另一配置中,从服务器接收的第一元数据被包括在对目标媒体内容和与目标媒体内容文件相关联的群组ID元素进行描述的MBMS用户服务描述(USD)中。
另一示例提供可操作来支持媒体内容流送的用户设备(UE)的电路的功能1000,如图10中所示出的。功能可以被实现为方法或者功能可以作为机器上的指令被执行,其中指令被包括在至少一种计算机可读介质或一种非暂态机器可读存储介质上。电路可以被配置为经由UE的多媒体广播多播服务(MBMS)客户端接收第一用户服务描述(USD)分片,第一USD分片包括与广告相对应的一个或多个文件或会话的群组信息以及与这些文件或会话相关联的媒体呈现描述(MPD)信息,其中群组信息中的每个文件或会话与群组信息中所包含的群组标识(ID)元素相关联,如框1010中。电路可以被配置为经由UE的MBMS客户端从广播多播服务中心(BMSC)接收第二USD分片,第二USD分片包括流媒体内容的MPD信息,如框1020中。电路可以被配置为标识与UE的用户相关联的用户简档,其中用户简档包括与用户相关联的群组ID元素,如框1030中。电路可以被配置为选择与具有被包括在用户简档中的群组ID元素的文件或会话相对应的广告,如框1040中。电路可以被配置为将具有被包括在用户简档中的群组ID元素的所选择的广告的目标MPD信息插入到流媒体内容的MPD信息中,以生成合并的MPD,如框1050中。电路可以被配置为根据合并的MPD经由UE的MBMS客户端接收所选择的广告,如框1060中。电路可以被配置为根据合并的MPD经由MBMS客户端从BMSC接收流媒体内容,如框1070中。此外,电路可以被配置为在UE处使用所选择的广告和流媒体内容执行播放,其中广告在流媒体内容之间被播放,如框1080中。
在一个示例中,与广告相对应的文件或会话包括基于超文本传输协议的动态自适应流(DASH)格式的文件或会话。在另一示例中,电路还可以被配置为:将经由MBMS客户端接收的所选择的广告存储在UE处的缓存中;并在UE处使用存储在UE处的缓存中的所选择的广告执行播放。在另一示例中,播放发生在UE的基于超文本传输协议的动态自适应流(DASH)客户端处。
图11提供了无线设备(例如,用户设备(UE)、移动站(MS)、移动无线设备、移动通信设备、平板电脑、手机或其他类型的无线设备)的示例图示。无线设备可包括一个或多个天线,该一个或多个天线被配置为与节点或发射站(例如,基站(BS)、演进节点B(eNB)、基带单元(BBU)、远端射频头(RRH)、远程无线电设备(RRE)、中继站(RS)、中央处理模块(CPM)或其它类型的无线广域网(WWAN)接入点)通信。无线设备可被配置为使用至少一个无线通信标准进行通信,该无线通信标准包括:3GPP LTE、WiMAX、高速分组接入(HSPA)、蓝牙和WiFi。无线设备可以使用用于每个无线通信标准的分离的天线进行通信,也可以使用用于多个无线通信标准的共享的天线进行通信。该无线设备可在无线局域网(WLAN)、无线个人区域网(WPAN)和/或WWAN中进行通信。
图11还提供了可被用于该无线设备的音频输入和输出的麦克风和一个或多个扬声器的图示。显示屏幕可以是液晶显示(LCD)屏幕或其它类型的显示屏幕(例如,有机发光二极管(OLED)显示器)。显示屏幕可被配置为触摸屏。触摸屏可使用电容、电阻或另一类型的触摸屏技术。应用处理器和图形处理器可被耦接到内部存储器以提供处理和显示功能。非易失性存储器端口还可被用于向用户提供数据输入/输出选项。非易失性存储器端口还可被用于扩展无线设备的存储能力。键盘可与无线设备集成或被无线连接到该无线设备以提供额外的用户输入。虚拟键盘也可使用触摸屏来提供。
各种技术或其某些方面或部分可采用体现于有形介质(例如,软盘、只读光盘存储器(CD-ROM)、硬盘驱动器、非暂态计算机可读存储介质或任意其它机器可读存储介质)中的程序代码的形式(即,指令),其中,当程序代码被加载到机器(例如,计算机)中并被机器执行时,机器变为用于实施各种技术的装置。电路可包括:硬件、固件、程序代码、可执行代码、计算机指令和/或软件。非暂态计算机可读存储介质可以是不包括信号的计算机可读存储介质。在可编程计算机执行程序指令的情况下,计算设备可包括:处理器、可被处理器读取的存储介质(包括易失和非易失存储器和/或存储元件)、至少一个输入设备以及至少一个输出设备。易失和非易失存储器和/或存储元件可以是:随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、闪速驱动器、光驱动器、磁硬盘驱动器、固态驱动器或用于存储电子数据的其他介质。节点和无线设备还可包括:收发机模块(即,收发器)、计数器模块(即,计数器)、处理模块(即,处理器)和/或时钟模块(即,时钟)或定时器模块(即,定时器)。可实现或使用本申请中所描述的各种技术的一个或多个程序可使用应用程序接口(API)、可重用控件等。这些程序可用高级程序语言或面向对象的编程语言来实现以与计算机系统通信。然而,根据需要,(一个或多个)程序可用汇编语言或机器语言来实现。在任何情况下,语言可以是编译语言或解译语言,并且可与硬件实现方式相结合。
应当理解的是,为了更特别地强调本说明书中所描述的很多功能单元的实现独立性,这些单元已被标记为模块。例如,模块可被实现为硬件电路,该硬件电路包括:定制超大规模集成(VLSI)电路或门阵列、现成半导体(例如,逻辑芯片、晶体管或其它离散组件)。模块还可在可编程硬件设备(例如,现场可编程门阵列、可编程阵列逻辑、可编程逻辑设备等)中实现。
模块还可在软件中实现,以被各种类型的处理器执行。可执行代码的经标识模块例如可以包括计算机指令的一个或多个物理或逻辑块,这些块例如可以被组织为对象、程序或功能。然而,识别模块的可执行代码不必在物理上位于一起,而是可以包括存储在不同位置的不同指令,当这些指令在逻辑上结合在一起时,组成了该模块并实现该模块的所述目的。
事实上,可执行代码的模块可以是单个指令,也可以是很多指令,甚至可以被分布在若干不同的代码段上、在不同的程序间、以及跨若干存储设备。类似地,可操作数据在本申请中可在模块内被标识和说明,并且可以以任意适当的形式被实现并被组织在任意适当类型的数据结构内。可操作数据可被收集为单个数据集,或者可被分布在不同位置上(包括分布在不同存储设备上),并且可至少部分只作为系统或网络上的电子信号而存在。这些模块可以是无源的或有源的,包括可操作为执行所希望的功能的代理。
本说明书中对“示例”或“示例性”的提及意味着结合示例所描述的具体特征、结构或特性被包括在本发明的至少一个实施例中。因此,在本说明书的各个地方出现的短语“在示例中”或词语“示例性”不一定全部指代相同实施例。
如本申请中所使用的,多个项目、结构元件、组成元件和/或材料可被呈现在共同列表中以便使用。然而,这些列表应被解释为仿佛列表的每个元素被独立地标识为单独且唯一的部件。因此,在没有相反指示的情况下,该列表的独立元素不应仅基于它们呈现在共同的组中而被解释为相同列表的任意其它元素的实质等同形式。此外,本发明的各种实施例和示例在本申请中可与其各种组件的替换选择一起被提及。应当理解的是,这些实施例、示例和替换选择不应被解释为彼此的实质等同形式,而应被解释为本发明的分离且自治的表示。
此外,所述特征、结构或特性可以任意适当的方式在一个或多个实施例中被组合。在以下描述中提供了很多具体细节(例如,布局的示例、距离、网络示例等)以提供对本发明的实施例的全面理解。然而,相关领域技术人员将认识到,本发明可在没有一个或多个具体细节的情况下被实现,或者用其他方法、组件、布局等来实现。在其它实例中,熟知的结构、材料或操作未被示出或详细描述以避免使本发明的方面模糊。
虽然以上示例在一个或多个具体应用中对本发明的原理进行了说明,但是对于本领域普通技术人员而言,在没有发明人员的帮助下可对实现方式的形式、用途和细节做出很多修改而不背离本发明的原理和概念。因此,本发明不意图收到所附权利要求之外的限制。