用于改变进行中流传输会话的配置的方法和设备的制作方法

文档序号:7850383阅读:115来源:国知局
专利名称:用于改变进行中流传输会话的配置的方法和设备的制作方法
用于改变进行中流传输会话的配置的方法和设备技术领域
本发明的示例性实施方式通常涉及进行中流传输会话,并且更具体地,涉及影响对进行中流传输会话配置的改变。
背景技术
为了递送媒体和其他内容,诸如电影、电视节目、音频广播等,通常利用流传输应用。随着诸如移动电话、媒体播放器等的移动终端的扩增,已经开发了流传输应用以向这些移动终端流传输媒体和其他内容。在这方面,已经开发了分组交换流媒体业务(PSS)以支持用于诸如经由通用移动通信系统(UMTS)和长期演进(LTE)网络来将媒体和其他内容流传输到移动终端的单播流传输应用。由于移动终端和移动运营商进行的PSS的相对广泛的开发,内容运营商变得越来越多地提供依赖于PSS的流传输业务。发明内容
根据示例性实施方式提供了一种方法、设备和计算机程序产品,该方法、设备和计算机程序产品用于向诸如移动终端的客户端设备通知对进行中流传输会话的配置的即将到来的改变,使得可以以有效的方式实现流传输会话的配置的后续改变。即使在进行中流传输会话取决于与服务器的非永久性会话控制连接的情况下,也可以通过示例性实施方式的方法、设备和计算机程序产品来支持向诸如移动终端的客户端设备通知对进行中流传输会话的配置的即将到来的改变。
在示例性实施方式中,提供了一种用于改变进行中流传输会话的配置的方法。该方法包括确定进行中流传输会话的配置将要改变。例如,服务器通过接收针对进行中流传输会话调度会话更新的指示来确定进行中流传输会话的配置将要改变。该实施方式的方法还包括使得向客户端设备提供与进行中流传输会话的配置的改变相关的通知。例如,通知可以是RTCP消息。将该通知发送到客户端设备以使得同一客户端设备建立与服务器的会话控制连接。在客户端设备建立了与服务器的会话控制连接之后,该方法包括使得会话消息通过建立的会话控制连接被发送到客户端设备。该会话消息可 以向客户端设备通知改变进行中流传输会话的配置的会话更新。例如,会话消息可以是RTSP消息。
在示例性实施方式中,通知包括对于建立会话控制连接的请求。可替代地,通知包括未完成(outstanding)会话消息的指示。例如,可以在进行中流传输会话的数据分组内对通知进行带内传送。会话消息可以包括以下各项中的至少一个新会话描述、对进行中流传输会话的会话描述的更新以及会话更新变得有效的时间的指示,诸如应用新会话描述的时间和/或应用对进行中流传输会话的会话描述的更新的时间。
根据本发明的示例性实施方式,提供了一种用于改变进行中流传输会话的配置的设备。该设备包括至少一个处理器以及包括计算机程序代码的至少一个存储器。该至少一个存储器和计算机程序代码被配置成利用至少一个处理器来使得设备执行至少下述步骤 确定进行中流传输会话的配置将要改变;使得与进行中流传输会话的配置的改变相关的通知被发送到客户端设备,其中发送该通知以使得客户端设备建立与服务器的会话控制连接,并且在建立了连接之后,使得设备通过所建立的会话控制连接来向客户端设备发送会话消息。诸如RTSP消息的会话消息可以向客户端设备通知改变进行中流传输会话的配置的会话更新。在一个实施方式中,通知可以是RTSP消息。在确定进行中流传输会话的配置的即将到来的改变时,例如,使得设备接收调度进行中流传输会话的更新的指示。发送到客户端设备的通知包括,例如,对于建立会话控制连接的请求和/或未完成消息会话的指示。 例如,可以在进行中流传输会话的数据分组内对通知进行带内传送。发送到客户端设备的会话消息可以包括以下各项中的至少一个新会话描述、对进行中流传输会话的会话描述的更新以及会话更新变得有效的时间的指示,诸如应用新会话描述的时间和/或应用对进行中流传输会话的会话描述的更新的时间 。
在示例性实施方式中提供了一种用于改变进行中流传输会话的配置的计算机程序产品。该计算机程序产品包括至少一个计算机可读存储介质,该至少一个计算机可读存储介质具有存储在其中的计算机可读程序代码部分。该计算机可读程序代码部分在由处理器执行时,使得设备诸如通过接收针对进行中流传输会话调度会话更新的指示来确定进行中流传输会话的配置将要改变;以及使得向客户端设备提供与进行中流传输会话的配置的改变相关的通知。例如,通知可以是RTSP消息。将该通知发送到客户端设备以使得同一客户端设备建立与服务器的会话控制连接。在客户端设备建立了与服务器的会话控制连接之后,该实施方式的计算机可读程序代码部分在由处理器执行时使得设备通过建立的会话控制连接将会话消息发送到客户端设备。该会话消息可以向会话更新的客户端设备通知改变进行中流传输会话的配置。例如,该会话消息可以是RTSP消息。
在示例性实施方式中,通知包括对于建立会话控制连接的请求。可替代地,通知包括未完成会话消息的指示。例如,可以在进行中流传输会话的数据分组内对通知进行带内传送。会话消息可以包括下述各项中的至少一个新会话描述、对进行中流传输会话的会话描述的更新以及会话更新变得有效的时间的指示,诸如应用新会话描述的时间和/或应用对进行中流传输会话的会话描述的更新的时间。
在示例性实施方式中,提供了一种用于改变进行中流传输会话的配置的设备。该设备包括用于确定进行中流传输会话的配置将要改变的装置。例如,服务器通过接收针对进行中流传输会话调度会话更新的指示来确定进行中流传输会话的配置将要改变。该实施方式的设备还包括用于使得向客户端设备提供与进行中流传输会话的配置的改变相关的通知的装置。例如,通知可以是RTCP消息。将该通知发送到客户端设备以使得同一客户端设备建立与服务器的会话控制连接。在客户端设备建立了与服务器的会话控制连接之后, 该设备包括用于使得会话消息通过建立的会话控制连接被发送到客户端设备的装置。该会话消息可以向客户端设备通知改变进行中流传输会话的配置会话更新。例如,会话消息可以是RTSP消息。
在示例性实施方式中,通知包括对于建立会话控制连接的请求。可替代地,通知包括未完成会话消息的指示。例如,可以在进行中流传输会话的数据分组内对通知进行带内传送。会话消息可以包括下述各项中的至少一个新会话描述、对进行中流传输会话的会话描述的更新以及会话更新变得有效的时间的指示,诸如应用新会话描述的时间和/或应用对进行中流传输会话的会话描述的更新的时间。在本发明的另一示例性实施方式中,提供了一种用于消耗媒体流传输会话的方法。该方法包括由客户端设备参与进行中流传输会话;在客户端设备处从服务器接收与进行中流传输会话相关的通知;使得响应于接收到通知来建立与服务器的会话控制连接;以及在客户端设备处经由建立的会话控制连接来从服务器接收会话消息,其中会话消息被配置成向客户端设备通知改变进行中流传输会话的配置的至少一个会话更新。
该方法可以进一步包括由客户端设备实施对进行中流传输会话的配置的改变。 例如,可以将一个或多个更新的媒体流映射到一个或多个现有媒体流。还可以用更新的媒体流来替换现有媒体流。客户端设备接收到的通知包括,例如,对于建立会话控制连接的请求和/或重要消息会话的指示。一个实施方式的通知是RTCP消息。例如,可以在进行中流传输会话的数据分组内对通知进行带内传送。由客户端设备接收到的会话消息可以包括下述各项中的至少一个新会话描述、对进行中流传输会话的会话描述的更新以及会话更新变得有效的时间的指示,诸如应用新会话描述的时间和/或应用对进行中流传输会话的会话描述的更新的时间。一个实施方式的会话消息是RTSP消息。
根据本发明的另一示例性实施方式,提供了一种用于消耗媒体流传输会话的设备,该设备包括至少一个处理器和至少一个存储器,所述至少一个存储器包括计算机程序代码,并且该计算机程序代码被配置成利用至少一个处理器来使得设备至少参与进行中流传输会话;在客户端设备处从服务器接收与进行中流传输会话相关的通知;使得响应于接收到通知来建立与服务器的会话控制连接;以及在客户端设备处经由建立的会话控制连接来从服务器接收会话消息,其中会话消息被配置成向客户端设备通知改变进行中流传输会话的配置的至少一个会话更新。
该至少一个存储器和计算机代码可以进一步被配置成,利用至少一个处理器来使得设备实施对进行中流传输会话的配置的改变。例如,可以将一个或多个更新的媒体流映射到一个或多个现有媒体流。还可以用更新的媒体流来替换现有媒体流。客户端设备接收到的通知包括,例如,对于建立会话控制连接的请求和/或重要消息会话的指示。通知可以是例如RTCP消息。例如,可以在进行中流传输会话的数据分组内对通知进行带内传送。 由客户端设备接收到的会话消息可以包括下述各项中的至少一个新会话描述、对进行中流传输会话的会话描述的更新以及会话更新变得有效的时间的指示,诸如应用新会话描述的时间和/或应用对进行中流传输会话的会话描述的更新的时间。例如,会话消息可以是 RTSP消息。
在另一示例性实施方式中,提供了一种用于消耗媒体流传输会话的计算机程序产品。该实施方式的计算机程序产品包括具有存储在其中的计算机可读程序代码部分的至少一个计算机可读存储介质。该计算机可读程序代码部分在由处理器执行时,使得设备在客户端设备处从服务器接收与进行中流传输会话相关的通知。例如,该通知可以是RTCP消息。该实施方式的计算机可读程序代码部分在由处理器执行时,使得设备响应于接收到通知来使得建立与服务器的会话控制连接,并且在客户端设备处经由建立的会话控制连接来从服务器接收会话消息,其中会话消息被配置成向客户端设备通知改变进行中流传输会话的配置的至少一个会话更新。例如,会话消息可以是RTSP消息。
示例性实施方式的计算机可读程序代码部分还可以包程序代码指令,用于使得由客户端设备实施对进行中流传输会话的配置的改变。例如,可以将一个或多个更新的媒体流映射到一个或多个现有媒体流。还可以用更新的媒体流来替换现有媒体流。客户端设备接收到的通知包括,例如,对于建立会话控制连接的请求和/或重要消息会话的指示。例如,可以在进行中流传输会话的数据分组内对通知进行带内传送。由客户端设备接收到的会话消息可以包括下述各项中的至少一个新会话描述、对进行中流传输会话的会话描述的更新以及会话更新变得有效的时间的指示,诸如应用新会话描述的时间和/或应用对进行中流传输会话的会话描述的更新的时间。
在本发明的另一示例性实施方式中,提供了一种用于消耗媒体流传输会话的设备。该设备包括用于由客户端设备参与进行中流传输会话、在客户端设备处从服务器接收与进行中流传输会话相关的通知的装置;用于使得响应于接收到通知来建立与服务器的会话控制连接的装置;以及用于在客户端设备处经由建立的会话控制连接来从服务器接收会话消息的装置,其中会话消息被配置成向客户端设备通知改变进行中流传输会话的配置的至少一个会话更新。
该设备可以进一步包括用于由客户端设备实施对进行中流传输会话的配置的改变的装置。例如,可以将一个或多个更新的媒体流映射到一个或多个现有媒体流。还可以用更新的媒体流来替换现有媒体流。客户端设备接收到的通知包括,例如,对于建立会话控制连接的请求和/或重要消息会话的指示。通知可以是例如RTCP消息。例如,可以在进行中流传输会话的数据分组内对通知进行带内传送。由客户端设备接收到的会话消息可以包括下述各项中的至少一个新会话描述、对进行中流传输会话的会话描述的更新以及会话更新变得有效的时间的指示,诸如应用新会话描述的时间和/或应用对进行中流传输会话的会话描述的更新的时间。例如,会话消息是RTSP消息。


在已经概括地描述了本发明的实施方式的情况下,现在将参考附图,附图不必依比例绘制,并且在附图中
图I是根据分组交换流传输业务(PSS)的用于支持单播流传输的协议栈的表示;
图2是根据本发明的示例性实施方式的用于支持对进行中流传输会话的配置的改变的系统的框图3是根据本发明的示例性实施方式的配置成向诸如移动终端的客户端设备通知对进行中流传输会话的配置的改变的网络节点的框图4是根据本发明的示例性实施方式的配置成促进对进行中流传输会话的配置的改变的移动终端的框图5是图示根据本发明的示例性实施方式的由网络节点执行以便向诸如移动终端的客户端设备通知对进行中流传输会话的配置的改变的操作的流程图6是图示根据本发明的示例性实施方式的由网络节点执行以便向诸如移动终端的客户端设备通知对进行中流传输会话的配置的改变的操作的另一流程图;以及
图7是根据本发明的示例性实施方式的由诸如移动终端的客户端设备执行以促进对进行中流传输会话的配置的改变的操作的流程图。
具体实施方式
在下文中,将参考附图来全面描述本发明的示例性实施方式,在附图中示出了一些但不是全部的本发明的实施方式。实际上,本发明可以以很多不同的形式来实现,并且不应当被理解为限于这里所阐述的实施方式;相反,提供这些实施方式,使得本公开将满足可应用的合法需求。在附图中,相同的附图标记将指相同的元件。根据本发明的一些示例性实施方式,可以可交换地实用术语“数据”、“内容”、“信息”和类似的术语,以指代能够进行传送、接收、对其操作和/或存储的数据。
如这里使用的,术语“电路”指全部的下述内容(a)仅硬件电路实现(诸如以仅模拟和/或数字电路的实现);(b)电路和软件(和/或固件)的组合,诸如(如果适用的话)(i)处理器的组合或(ii) 一起工作以使得诸如移动电话或服务器的设备执行各种功能的部分的处理器/软件(包括数字信号处理器)软件、和存储器);(c)即使软件或固件没有物理地存在也需要用于操作的软件或固件的电路,诸如微处理器或微处理器的一部分。
该“电路”的定义适用于本申请包括权利要求中的该术语的所有使用。又如,如本申请中·使用的,术语“电路”还可以涵盖仅处理器(或多个处理器)或处理器的一部分及其伴随软件和/或固件的实现。术语“电路”还可以涵盖,例如并且如果可适用于具体权利要求元素的话,用于移动电话的基带集成电路或应用处理器集成电路或服务器、蜂窝网络设备或其他网络设备中的类似的集成电路。
根据第三代合作伙伴计划(3GPP),已经规定了 PSS的很多方面,包括传输协议和编解码器以及3GPP文件格式。在协议方面,PSS依赖于若干协议。如图I中所示,例如, PSS协议栈可以利用用于会话控制的实时流传输协议(RTSP)、用于会话描述的会话描述协议(SDP)、用于例如实时媒体的同步媒体数据传输的实时传输协议(RTP)、动态和交互式多媒体情景(DIMS)以及超文本传输协议(HTTP),以传输静态媒体、定时媒体数据的渐进式下载和自适应流传输;其全部都由因特网协议(IP)、用户数据报协议(UDP)和传输控制协议 (TCP)层来支持。
在诸如PSS流传输会话的进行中流传输会话期间,会话配置可以改变。例如,媒体流的数目可以增加或减少。又如,诸如语言、编解码器、比特率等的改变可导致媒体配置的改变。不幸的是,通常不向诸如移动终端的客户端设备用信号发送或警告对进行中流传输会话的即将到来的改变。诸如PSS服务器和客户端设备之间的非永久性连接的使用而导致无法保证信令信道的存在,可能加剧了无法有效地向诸如移动终端的客户端设备用信号通知或警告进行中流传输会话中的即将到来的改变。因此,期望提供一种改进的技术,以向诸如移动终端的客户端设备警告进行中流传输会话中的即将到来的改变,以便于促进这样的改变的实现。
根据本发明的一些示例性实施方式,提供了一种方法、设备和计算机程序,该方法、设备和计算机程序用于诸如通过支持在进行中流传输会话的配置中的改变的实现来支持流传输会话。在典型示例中,客户端设备建立与服务器的实时流传输协议(RTSP)会话。 RTSP会话通常建立于传输控制协议(TCP)连接之上。一旦连接被建立,客户端设备和服务器就交换控制消息,例如RTSP消息。例如,客户端设备利用会话描述协议(SDP)文件来发送描述请求和服务器的响应。然后,客户端设备可以发送用于建立音频会话的建立请求,月艮务器确认该请求并且定义一个或多个端口以使RTP会话流传输音频数据。类似地,客户端设备发送用于建立视频会话的建立请求,服务器确认该请求并且定义一个或多个端口以使RTP会话流传输视频数据。然后,客户端设备向服务器发送播放请求,并且服务器开始通过 RTP会话发送媒体数据。然后,客户端设备在通过RTP会话的媒体数据的流传输继续的同时拆除(tear down) RTSP会话和相应的TCP连接。一旦TCP连接被终止并且相应的TCP会话被拆除,服务器就无法向客户端设备发送控制消息。例如,服务器无法向客户端通知进行中流传输会话的配置中的即将到来的改变,例如,通过其流传输音频和视频数据的RTP会话中的一个或二者。
一旦RTSP会话被终止并且相应的TCP连接被拆除,服务器就可以向客户端设备发送RTP控制协议(RTCP)消息。然而,RTCP消息不适用于发送会话控制信息。RTCP消息具有有限的保留带宽,其通常非常低,而且例如通过RTCP发送大SDP消息并不实际并且可能延迟其他相关的RTCP信令。例如,该延迟是例如由于保持恒定比特率RTCP信道而导致的, 例如,一旦传送了 RTCP分组,下一个分组就被调度为在B/S秒的给定持续时间之后进行传送。值B表示为RTCP保留的每秒的比特率,并且S是以比特为单位的传送的RTCP分组的大小。例如,在3GPP规范中的RTCP比特率限于4kbps,使得在发送1000字节大小的SDP时, 8000/4000 = 2秒的等待时段是必要的。换言之,为了可靠地发送SDP 3次,可能需要4秒的总传输持续时间。此外,RTCP业务并不可靠,例如不如RTSP可靠,并且并不是用于关键信令的适当信道。为了提高可靠性,包括SDP文件的消息例如必须被传送多次。假定SDP文件较大,无较大延迟地通过RTCP消息发送控制消息可能变得不可能,并且可能由于SDP的重复传输而导致高水平的冗余。
在进行中流传输会话期间,可能期望改变流传输会话的配置。这样,根据本发明的示例性实施方式,提供了一种用于促进在进行中流传输会话的配置中的改变的方法、设备和计算机程序产品。在这方面,图2图示 了支持流传输媒体并且允许进行对进行中流传输会话的配置的改变。图2的系统可以包括客户端设备100、网络102和诸如服务器106的网络节点。客户端设备可以是配置成接收和呈现流传输媒体的任何类型的有线或无线设备。 客户端设备100可以是例如移动电话的移动终端、例如个人计算机的静止终端等。网络可以是任何类型的有线网络、无线网络或其组合,包括例如因特网。
经由网络102和流传输媒体连接110,客户端设备100可以请求并且从服务器106 接收要在客户端设备的用户接口上呈现的媒体数据。虽然系统可以包括各种类型的服务器,但是一个实施方式的服务器可以是流传输服务器,并且流传输媒体连接支持通过RTP 的流传输。虽然这里将服务器描述为提供流传输媒体或其他内容,但是服务器仅是可以提供这样的功能的网络节点的一个示例,并且这样,服务器机器功能的后续讨论应当被理解为更普遍适用于配置成结合服务器执行下述操作的网络节点。
现在参考图3,描绘了用于提供流传输媒体或其他内容的诸如服务器106的设备的示例性实施方式。如所示出的那样,服务器可以包括处理器205、存储器设备210、输入 /输出(I/O)接口 206和通信接口 215,或者以其他方式与处理器205、存储器设备210、输入/输出(I/O)接口 206和通信接口 215进行通信。根据一些示例性实施方式,服务器可以包括用户接口 225。处理器可以被实现为用于实现本发明的示例性实施方式的各种功能的各种装置,包括例如,微处理器、协处理器、控制器、特殊用途集成电路,诸如专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者硬件加速器、处理电路等。根据一个示例性实施方式,处理器可以表示一起操作的多个处理器、或者一个或多个多核处理器。此外,处理器可以包括多个晶体管、逻辑门、例如振荡器的时钟、其他电路等以促进这里描述的功能的执行。处理器可以但不需要包括一个或多个伴随数字信号处理器。在一些示例性实施方式中, 处理器被配置成执行存储在存储器设备中的指令或者以其他方式可访问处理器的指令。处理器可以被配置成进行操作使得处理器使得服务器执行这里描述的各种功能。
不论配置为硬件还是经由存储在计算机可读存储介质上的指令或其组合来配置, 处理器205都可以是能够根据本发明的实施方式执行操作同时相应地进行配置的实体。因此,在处理器被实现为或者作为部分的ASIC、FPGA等的示例性实施方式中,处理器是特定配置的硬件,以进行这里描述的操作。替代地,在处理器被实现为存储在计算机可读存储介质上的指令的执行器的示例性实施方式中,指令特定地配置处理器以执行这里描述的算法和操作。在一些示例性实施方式中,处理器是诸如通信服务器的特定设备的处理器,配置用于经由用于执行这里描述的算法、方法和操作通过其他处理器的配置来采用本发明的示例性实施方式。
存储器设备210可以是一个或多个有形和/或永久计算机可读存储介质,其可以包括易失性和/或非易失性存储器。在一些示例性实施方式中,存储器设备包括随机存取存储器(RAM),包括动态和/或静态RAM、片上或片外缓存存储器等。此外,存储器设备可以包括可以被嵌入和/或移除的非易失性存储器,并且可以包括,例如,只读存储器、闪速存储器、磁存储设备(例如硬盘、软磁盘驱动器、磁带等、光盘驱动器和/或介质)、非易失性随机存取存储器(NVRAM)等。存储器设备可以包括用于数据的临时存储的缓存区域。在这方面,一些或全部的存储器设备可以被包括在处理器205内。在一些示例性实施方式中,存储器设备可以存储媒体的各种表示或者可以被流传输到客户端设备100的其他内容。
此外,存储器设备210可以被配置成存储用于使得处理器205能够根据这里描述的本发明的示例性实施方式来执行各种功能的信息、数据、应用、计算机可读程序代码指令等。例如,存储器设备可以被配置成缓存用于由处理器进行处理的输入数据。此外或者替代地,存·储器设备可以被配置成存储用于由处理器执行的指令。
I/O接口 206可以是以硬件、计算机程序产品或配置成使处理器205与诸如通信接口 215的其他电路或设备交互的硬件和软件的组合实现的任何设备、电路或装置。在一些示例性实施方式中,处理器可以经由I/O接口与存储器210交互。I/O接口可以被配置成将信号和数据转换成可以由处理器解释的形式。I/O 506还可以执行输入和输出的缓冲以支持处理器的操作。根据一些示例性实施方式,处理器和I/O接口可以合并成配置为执行或者使得服务器执行本发明的各种功能的单个芯片或者集成电路。
通信接口 215可以是以硬件、计算机程序产品或配置成从/向网络102和/或与服务器106通信的任何其他设备或模块接收和/或传送数据的硬件和计算机程序产品的组合。在一些示例性实施方式中,通信接口被配置成支持经由例如RTP流传输对流传输媒体内容的接收或传送和/或与流传输媒体内容相关联的信息。通信接口可以被配置成经由任何类型的有线或无线连接并且经由任何类型的通信协议,诸如支持蜂窝通信的通信协议, 来传送信息。根据各种示例性实施方式,通信接口被配置成支持在蜂窝网络中的通信内容的传送和接收。在这方面,通信接口可以被配置成支持设备对设备通信。处理器205还可以被配置成例如通过控制包括在通信接口内的硬件来促进经由通信接口的通信。在这方面, 通信接口可以包括,例如,通信驱动器电路,例如支持经由例如光纤连接、一个或多个天线、发射机、接收机、收发机和/或支持硬件的有线通信。经由通信接口,服务器可以以设备对设备方式和/或经由基站、接入点、服务器、网关、路由器等的间接通信来与各种其他网络实体进行通信。
用户接口 225可以与处理器205通信以经由用户接口来接收用户输入和/或向用户将输出呈现为例如可听、可视、机械或其他输出指示。用户接口可以包括,例如,键盘、鼠标、摇杆、例如触摸屏显不器的显不器、麦克风、扬声器或者其他输入/输出机构。此外,处理器可以包括用户接口电路或者与用户接口电路进行通信,该用户接口电路被配置成控制用户接口的一个或多个元件的至少一些功能。处理器和/或用户接口电路可以被配置成通过存储在处理器可访问的存储器上的例如软件和/或固件的计算机程序指令来控制用户接口的一个或多个元件的一个或多个功能,存储器例如为易失性存储器、非易失性存储器等。用户接口还可以被配置成支持触觉反馈的实现。在这方面,如由处理器控制的用户接口可以包括配置用于触觉反馈的振动、压电和/或音频设备,如这里所描述的。在一些示例性实施方式中,用户接口电路被配置成促进用户通过使用显示器控制服务器106的至少一些功能并且配置成对用户数据进行响应。处理器还可以包括显示电路或者与显示电路进行通信,显示电路被配置成显示用户接口的至少一部分,并且显示电路配置成促进用户控制服务器的至少一些功能。显示电路可以被配置成支持和呈现流传输媒体,包括经由RTP流传输提供的流传输媒体。
如上所述,系统可以包括各种客户端设备100。然而,在一个实施方式中,客户端设备可以被实现为移动终端,该移动终端接收来自服务器106的流传输媒体或者其他内容以例如向用户呈现。例如,在图4中描绘了并且在下文描述了可以用作客户端设备的移动终端300。然而,应当理解,所图示并且在下文中描述的移动终端仅仅说明可以实现和/或受益于本发明的示例性实施方式的一种客户端设备,并且因此,不应当限制本发明的范围。 实际上,尽管客户端设备的一个实施方式被图示并且将在下文中出于示例的目的来进行描述,但是诸如移动电话、移动计算机、便携式数字助理(PDA)、寻呼机、膝上型计算机、台式计算机、游戏设备、电视和其他类型的电子系统的其他类型的电子设备也可以采用本发明的实施方式。
如所示出的那样,移动终端300可以包括与发射机314和接收机316进行通信的天线312或多个天线。移动终端还可以包括配置成分别向发射机和接收机提供并且从发射机和接收机接收信号的处理器320。例如,处理器可以被实现为各种装置,包括电路、具有伴随的数字信号处理器的一个或多个微处理器、不具有伴随的数据信号处理器的一个或多个处理器、一个或多个协处理器、一个或多个多核处理器、一个或多个控制器处理电路、一个或多个计算机、各种其他处理元件,包括集成电路,诸如ASIC或FPGA或其一些组合。因此, 虽然在图4中图示为单个处理器,但是在一些实施方式中,处理器包括多个处理器。由处理器发送和接收的信号可以包括根据可应用蜂窝系统的空中接口标准的信令信息和/或任何数目的不同线缆或无线联网技术,诸如电气与电子工程师协会(IEEE)802. 11,802. 16 等。另外,这些信号可以包括语音数据、用户生成的数据、用户请求的数据等。
移动终端300能够利用一个或多个空中接口标准、通信协议、调制类型、接入类型等来进行操作。更具体地,移动终端能够根据各种第一代(IG)、第二代(2G)、2.5G、第三代 (3G)通信协议、第四代(4G)通信协议、因特网协议多媒体子系统(IMS)通信协议(例如,会话发起协议(SIP))等来进行操作。例如,移动终端能够根据2G无线通信协议IS-136(时分多址(TDMA))、全球移动通信系统(GSM)、IS-95(码分多址(CDMA)等)来进行操作。而且, 例如,移动终端能够根据2. 5G无线通信协议通用分组无线电服务(GPRS)、高级数据GSM环境(EDGE)等来进行操作。此外,例如,移动终端可根据3G无线通信协议来进行操作,诸如通用移动电信系统(UMTS)、码分多址2000 (CDMA-2000)、宽带码分多址(WCDMA)、时分同步码分多址(TD-SCDMA)等。移动终端另外可根据3. 9G无线通信协议来进行操作,诸如LTE、 高级LTE或E-UTRAN等。另外,例如,移动终端能够根据第四代(4G)无线通信协议等以及在未来可能开发的类似的无线通信协议来进行操作。
一些窄带高级电话移动系统(NAMPS)以及总接入通信系统(TACS)、移动终端300 也可以受益于本发明的实施方式,如双模式或更高模式的电话,例如数字/模拟或TDMA/ CDMA/模拟电话。另外,移动终端可根据Wi-Fi或全球微波接入互操性(WiMAX)协议来进行操作。
应当理解,处理器320可以包括用于实现移动终端300的音频/视频和逻辑功能的电路。例如,处理器可以包括数字信号处理器设备、微处理器设备、模数转换器、数模转换器等。移动终端的控制和信号处理功能可以根据其相应的能力来在这些设备之间进行分配。处理器可以另外包括内部语音编码器(VC) 320a、内部数据调制解调器(DM)320b等。 另外,处理器可以包括用于操作可以存储在存储器中的一个或多个软件程序的功能。例如, 处理器能够操作连通性程序,诸如web浏览器。连通性程序可以根据协议允许移动终端传送和接收web内容,诸如基于位置的内容,协议诸如无线应用协议(WAP)、超文本传输协议 (HTTP)等。移动终端被配置成使用传输控制协议/因特网协议(TCP/IP)来在因特网或其他网络上传送和接收数据。
移动终端300还可以包括可以操作地耦合到处理器320的用户接口,例如包括耳机或扬声器324、振铃器322、麦克风326、显示器328、用户输入接口等。在这方面,处理器可以包括用户接口电路,该用户接口电路被配置成控制诸如扬声器、振铃器、麦克风、显示器等的用户接口的一个或多个元件的至少一些功能。处理器和/或包括处理器的用户接口电路可以被配置成通过存储在可访问处理器的存储器上的例如软件和/或固件的计算机程序指令来控制用户接口的一个或多个元件的一个或多个功能,存储器例如为易失性存储器340、非易失性存储器342等。虽然没有示出,但是移动终端可 以包括用于对与移动终端相关的各种电路供电的电池,电路例如为将机械振动作为可分离输出来提供的电路。用户输入接口可以包括允许移动终端接收数据的设备,诸如小键盘30、触摸显示器(未示出)、 摇杆(未示出)和/或其他输入设备。在包括小键盘的实施方式中,小键盘可以包括数字 (0-9)、字母(a-z)和相关键(#、*)和/或用于操作移动终端的其他键。
移动终端300可以包括可以存储与移动用户相关的信息元素的存储器,诸如一个或多个用户身份模块(SM) 338、通用SIM(USM)、可移除用户身份模块(R-UM)等。除了 SM之外,移动终端可以包括其他可移除和/或固定存储器。移动终端可以包括易失性存储器340和/或非易失性存储器342。例如,易失性存储器可以包括随机存取存储器(RAM), 包括动态和/或静态RAM、片上或片外缓存存储器等。可以被嵌入和/或移除的非易失性存储器可以包括,例如,只读存储器、闪速存储器、磁存储设备(例如硬盘、软磁盘驱动器、磁带等)、光盘驱动器和/或介质、非易失性随机存取存储器(NVRAM)等。类似于易失性存储器,非易失性存储器可以包括用于数据的临时存储的缓存区域。存储器可以存储可以由移动终端使用以执行移动终端的功能的一个或多个软件程序、指令、信息段、数据等。例如,存储器可以存储指令,当处理器320执行该指令时,使得处理器执行这里描述的功能。存储器还可以包括能够唯一地识别移动终端的识别器,诸如国际移动设备识别(IMIE)代码。
如在图2中通常示出的以及在图5的一般流程图中更具体地和如图6的更详细的流程图中所示,诸如服务器106的网络节点可以参与与诸如移动终端300的客户端设备100 的进行中流传输会话。参见图5的操作400。流传输会话可以是PSS流传输会话,其中诸如经由各个RTP会话来将一个或多个媒体流流传输到客户端设备。在这方面,媒体流可以包括音频、视频或媒体或其他形式的媒体或其他内容。在一个示例性实施方式中,进行中流传输会话是由通过基于TCP会话控制连接建立的RTSP会话建立的单播流传输会话。一旦经由一个或多个RTP会话流传输媒体数据,即使RTSP会话和TCP会话控制连接是非永久性的,也可以在RTP会话继续的情况下,终止RTSP会话,并且拆除TCP会话控制连接。
服务器106可以包括用于确定将要改变进行中流传输会话的配置的设备,诸如处理器205。参见图5的操作350和图6的操作402。为了确定进行中流传输会话的配置将要改变,服务器可以包括用于接收针对经由进行中流传输会话提供给客户端设备100的相应内容调度会话更新的指示的装置,诸如处理器、通信接口 215等;以及用于识别包括相应内容的一个或多个进行中流传输会话的设备,诸如处理器。参见图6的操作404。可以预先知道进行中流传输会话的配置的改变,在这种情况下,处理器可以基于这样的改变的调度从存储器210接收即将到来的配置改变的指示。可替代地,进行中流传输会话的配置的改变可以动态地发生。进行中流传输会话的配置可以以各种方式改变。例如,媒体流的数目可以增加或者减少,和/或媒体配置中的任何一个或多个可以诸如由于媒体语言、编解码器、比特速率、分辨率、带宽等的改变而改变。例如,对于客户端设备来说优选的具体语言的媒体流可能在进行中流传输会话的开始不可用,但是可能在进行中流传输会话期间变得可用,使得作出改变以便于随后向客户端设备递送优选语言的媒体内容。可替代地,其他类型的改变可能在可以影响递送到客户端设备的内容的进行中流传输会话期间发生。 0051]在一个示例性实施方式中,服务器106可以接收针对一个或多个相应内容项调度会话更新的指示。因为作为会话更新的主题的相应内容项可以与多个进行中流传输会话相关,该服务器,诸如处理器205,可以包括用于识别涉及相应内容并且还没有被通知即将发生的改变的装置。诸如处理器的服务器然后可以向正在接收进行中流传输会话的客户端设备中的每一个通知包括即将发生的改变的相应内容。
对于包括预定改变的相应内容的每个进行中流传输会话,服务器106可以包括用于确定进行中流传输会话是否由永久性会话控制连接来支持的装置,诸如处理器205,永久性会话控制连接例如为支持RTSP会话的永久性TCP会话控制连接。参见图6的操作406。 在进行中流传输会话由永久性会话控制连接支持的情况下,服务器可以包括用于使得经由会话控制信道来将会话消息提供给客户端设备100以便于向会话更新的客户端设备通知进行中流传输会话的配置的装置,诸如处理器、通信接口 215等。参见图5的操作354和图 6的操作408。尽管以各种方式提供了通知对进行中流传输会话的配置的改变的会话消息, 但是一个示例性实施方式的处理器可以使得RSTP消息被提供给客户端设备。RSTP消息可以被配置成识别配置的改变以及配置的改变将变得有效的时间。会话消息可以以各种方式识别配置中的改变,诸如通过提供新的会话描述或者通过提供对进行中会话的会话描述的更新以及应用新的会话描述和/或应用对进行中流传输会话的会话描述的更新的时间的指示。在这方面,可以通过会话控制连接发送到客户端设备的称为PLAY_NOTIFY的通知消息的示例可以如下
S- > CPLAY_N0TIFY rtsp://www. nokia. com/contentI RTSP/1. 0
Date Tue,14 June 2010 10:04:18 GMT
CSeq :532
Notify-Reason :session_update
Session uM3ciOJ+Kd
Switch-Stream old = http://www. nokia. com/contentl/trackID = I ;
new = http://www. nokia. com/content2/trackID = 2
Range npt = 2:01:24.568-
Content-Type :application/sdp
Content-Length :421
v = 0
o = 33405 135 0 IN IP4 10. 42. 43. I
s = Live·
c = IN IP4 0. 0. 0. 0
t = 0 0
m = video 8234 RTP/AVP 96
a = rtpmap :96 H264/90000
a = framerate :25
a = fmtp :96 packetization-mode = I ;profile-level-id = 42c00b ;
m = audio 8236 RTP/AVP 97
a = rtpmap :97 mpeg4-generic/22050
a = fmtp :97 streamtype = 5 ;profile-level-id = 15 ;mode = AAC-hbr ;
C- > S RTSP/2. 0 200 OK
CSeq :532
User-Agent Nokia Media Player/5. 0
Session uM3ciOJ+Kd
应当注意,PLAY_N0TIFY消息的主体可以包括与进行中流传输会话的配置的改变相关联的新SDP文件。另外,在将用新的媒体流来替换现有媒体流的情况下,会话消息可以包括现有媒体流所处的地址(诸如URL)以及新的媒体流的地址(诸如URL)。在前述描述中,现有和新的媒体流的URL分别被称为遵循交换流报头的“旧的”和“新的”媒体流。在将要在不替换现有媒体流的情况下提供新的媒体流的情况下或者在不用新的媒体流来替换现有媒体流的情况下中止现有媒体流的情况下,会话消息可以分别仅标识“新的”媒体流或 “旧的”媒体流,而不是标识“新的”媒体流和“旧的”媒体流二者。另外,诸如在范围报头之后,还标识了改变将变得有效的时间,诸如新的媒体流将有效地替代现有媒体流的时间。如上所述,客户端设备100还可以诸如通过“200 0K”消息的手段来对指示接收到会话消息的服务器106做出响应。
在其他情况下,涉及要改变的内容的进行中流传输会话不由永久性会话控制连接来支持,诸如在RTSP会话已经被终止并且TCP会话控制连接已经被拆除的情况下。因此, 服务器106可以包括用于使得从服务器向客户端设备100传送与进行中流传输会话配置的改变相关的通知以便于使得客户端设备建立会话控制连接的装置,诸如处理器205、通信接口 215等。参见图5的操作352和图6的操作410以及结合客户端设备的操作对通知的下述描述。例如,诸如处理器的服务器可以使得通知作为媒体会话的一部分,诸如在进行中流传输会话的数据分组内进行带内传送。可替代地,诸如处理器的服务器可以使得通知被带外传送,诸如开放移动联盟(OMA)推送消息或短消息服务(SMS)消息。为了通过增加客户端设备接收消息的可能性来改善可靠性,诸如处理器的服务器可以使得经由多个媒体流, 例如所有可用媒体流,和/或重复方式来将通知传送到客户端设备,以便传送多个通知的副本。如下所述,在响应于通知而由客户端设备建立与服务器的会话控制信道可以使得经由近期建立的会话控制连接来将会话消息提供给客户端设备,以向客户端设备通知按照以上结合图5的操作354和图6的操作408描述的方式改变进行中流传输会话的配置的会话更新。
基于向客户端设备100通知进行中流传输会话配置的改变的会话消息以及从客户端设备接收到确认消息,服务器106可以预期进行中流传输会话将在改变变得有效的时间以通知所定义的方式来进行改变。这样,服务器可以被配置成在改变变得有效的时间以通知所定义的方式,诸如通过改变递送或者流传输到客户端设备的媒体流和/或通过改变一个或多个现有媒体流的媒体配置,来影响改变。
从诸如图4的移动终端的客户端设备100的角度,客户端设备还可以包括用于参与进行中流传输会话的装置,诸如处理器320。如上所述,已经经由诸如TCP连接的会话控制连接所支持的RTSP会话通过交换RTSP消息建立了进行中流传输会话,但是一旦已经建立了诸如RTP会话的一个或多个媒体会话,TRSP会话就可能已经被终止并且会话控制连接已经被拆除。因此,会话控制连接可以是非永久性连接。各种不同类型的内容的A,诸如音频、视频或其他媒体或其他内容,可以经由相应的媒体流被流传输到客户端设备。根据示例性实施方式,在会话控制信道已经被拆除并且因此变为非永久的情况下,客户端设备可以包括用于接收与进行中流传输会话相关的通知的装置,诸如处理器、接收机14等。参见图 7的操作502。该通知可以包括对于建立会话控制连接的请求和/或重要请求消息的指示。 可以以各种方式提供通知,但是在一个实施方式中,可以被提供为RTP控制协议(RTCP)消息,诸如RTCP应用(APP)分组。在该实施方式中,例如,可以如下定义未完成会话通知消息 (OSNM)APP 报告块
权利要求
1.一种方法,包括确定进行中流传输会话的配置将要改变;使得从服务器向客户端设备提供与所述进行中流传输会话的配置的改变相关的通知, 所述通知被提供以使得所述客户端设备建立与所述服务器的会话控制连接;以及使得经由所述会话控制连接从所述服务器向所述客户端设备提供会话消息,以向所述客户端设备通知改变所述进行中流传输会话的配置的至少一个会话更新。
2.根据权利要求I所述的方法,其中,从所述服务器向所述客户端设备提供的所述会话消息包括以下各项中的至少一个会话描述协议文件;对所述进行中流传输会话的所述会话描述协议文件的更新;所述会话更新变得有效的时间;从旧媒体流到新媒体流的切换的指示;将要中止旧媒体流的指示;以及将要提供新媒体流的指示。
3.根据权利要求I或2所述的方法,其中,使得提供所述通知包括下述各项中的至少一个将针对所述会话消息将可用的时间的指示包含在所述通知内;使得所述通知作为所述进行中流传输会话的一个或多个数据分组的一部分从所述服务器带内传送到所述客户端设备;以及使得所述通知从所述服务器带外传送到所述客户端设备。
4.根据权利要求1-3中的任一项所述的方法,其中,所述通知包括实时传输控制协议 (RTCP)消息。
5.根据权利要求1-4中的任一项所述的方法,其中,确定进行中流传输会话的配置将要改变包括接收针对相应内容调度所述会话更新的指示,以及识别涉及所述相应内容的一个或多个进行中流传输会话。
6.根据权利要求1-5中的任一项所述的方法,其中,所述会话消息包括实时流传输协议(RTSP)消息。
7.—种设备,包括用于确定进行中流传输会话的配置将要改变的装置;用于使得从服务器向客户端设备提供与所述进行中流传输会话的配置的改变相关的通知的装置,所述通知被提供以使得所述客户端设备建立与所述服务器的会话控制连接; 以及用于使得经由所述会话控制连接从所述服务器向所述客户端设备提供会话消息,以向所述客户端设备通知改变所述进行中流传输会话的配置的至少一个会话更新的装置。
8.根据权利要求7所述的设备,其中,从所述服务器向所述客户端设备提供的所述会话消息包括以下各项中的至少一个会话描述协议(SDP)文件;对所述进行中流传输会话的所述会话描述协议文件的更新;所述会话更新变得有效的时间;从旧媒体流到新媒体流的切换的指示;将要中止旧媒体流的指示;以及将要提供新媒体流的指示。
9.根据权利要求7或8所述的设备,其中,所述设备进一步包括以下各项中的至少一个用于将针对所述会话消息将可用的时间的指示包含在所述通知内的装置;用于使得所述通知从所述服务器带外传送到所述客户端设备的装置;以及用于使得所述通知作为所述进行中流传输会话的一个或多个数据分组的一部分从所述服务器带内传送到所述客户端设备的装置。
10.根据权利要求7-9中的任一项所述的设备,其中,所述通知包括实时传输控制协议 (RTCP)消息。
11.根据权利要求7-10中的任一项所述的设备,其中,用于确定进行中流传输会话的配置将要改变的装置包括用于接收针对相应内容调度所述会话更新的指示以及识别涉及所述相应内容的一个或多个进行中流传输会话的装置。
12.根据权利要求7-11中的任一项所述的设备,其中,所述会话消息包括实时流传输协议(RTSP)消息。
13.一种计算机程序,包括计算机可读程序代码部分,所述计算机可读程序代码部分在由处理器执行时,使得设备执行权利要求1-6中的任一项所述的方法。
14.一种方法,包括在客户端设备处接收来自服务器的通知,所述通知与进行中流传输会话的配置的改变相关;使得响应于从所述服务器接收到所述通知,由所述客户端设备建立与所述服务器的会话控制连接;以及在所述客户端设备处经由所述会话控制连接从所述服务器接收会话消息,其中所述会话消息被配置成向所述客户端设备通知改变所述进行中流传输会话的配置的至少一个会话更新。
15.根据权利要求14所述的方法,其中,在所述客户端设备处接收的来自所述服务器的所述会话消息包括以下各项中的至少一个会话描述协议文件;对所述进行中流传输会话的所述会话描述协议文件的更新;所述会话更新变得有效的时间;从旧媒体流到新媒体流的切换的指示;将要中止旧媒体流的指示;以及将要提供新媒体流的指示。
16.根据权利要求14或15所述的方法,所述方法进一步包括响应于接收到所述会话消息,使得由所述客户端设备实施对所述进行中流传输会话的配置的改变。
17.根据权利要求16所述的方法,其中,使得实施对所述进行中流传输会话的改变包括以下各项中的至少一个将一个或多个更新的媒体流映射到一个或多个现有媒体流;以及以更新的媒体流替换现有媒体流。
18.根据权利要求14-17中的任一项所述的方法,其中,在所述客户端设备处接收来自所述服务器的所述通知包括接收所述会话消息将可用的时间。
19.根据权利要求14-18中的任一项所述的方法,其中,所述通知包括实时传输控制协议(RTCP)消息。
20.根据权利要求14-19中的任何一项所述的方法,其中,所述会话消息包括实时流传输协议(RTSP)消息。
21.—种设备,包括用于在客户端设备处接收来自服务器的通知的装置,所述通知与进行中流传输会话的配置的改变相关;用于使得响应于从所述服务器接收到所述通知由所述客户端设备建立与所述服务器的会话控制连接的装置;以及用于在所述客户端设备处经由所述会话控制连接从所述服务器接收会话消息的装置, 其中所述会话消息被配置成向所述客户端设备通知改变所述进行中流传输会话的配置的至少一个会话更新。
22.根据权利要求21所述的设备,其中,在所述客户端设备处接收的来自所述服务器的所述会话消息包括以下各项中的至少一个会话描述协议文件;对所述进行中流传输会话的所述会话描述协议文件的更新;所述会话更新变得有效的时间;从旧媒体流到新媒体流的切换的指示;将要中止旧媒体流的指示;以及将要提供新媒体流的指示。
23.根据权利要求21或22所述的设备,其中,所述设备进一步包括用于响应于接收到所述会话消息而使得由所述客户端设备实施对所述进行中流传输会话的配置的改变的装直。
24.根据权利要求23所述的设备,其中,用于使得实施对所述进行中流传输会话的改变的装置包括以下各项中的至少一个用于将一个或多个更新的媒体流映射到一个或多个现有媒体流的装置;以及用于以更新的媒体流替换现有媒体流的装置。
25.根据权利要求21-24中的任一项所述的设备,其中,在所述客户端设备处接收的来自所述服务器的所述通知包括所述会话消息将可用的时间。
26.根据权利要求21-25中的任一项所述的设备,其中,所述通知包括实时传输控制协议(RTCP)消息。
27.根据权利要求21-26中的任一项所述的设备,其中,所述会话消息包括实时流传输协议(RTSP)消息。
28.一种计算机程序,包括计算机可读程序代码部分,所述计算机可读程序代码部分在由处理器执行时,使得设备执行权利要求14-20中的任一项所述的方法。
全文摘要
本发明提供了一种方法、设备和计算机程序产品,该方法、设备和计算机程序产品用于向诸如移动终端的客户端设备通知对进行中流传输会话的配置的即将到来的改变,使得可以以有效的方式实现流传输会话的配置的后续改变。即使在进行中流传输会话取决于与服务器的非永久性会话控制连接的情况下,该方法、设备和计算机程序产品也可以被配置成影响进行中流传输会话的配置的改变。
文档编号H04L29/06GK102986187SQ201180031006
公开日2013年3月20日 申请日期2011年6月17日 优先权日2010年6月21日
发明者I·鲍阿齐齐 申请人:诺基亚公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1