The present invention relates generally to the use of the Multimedia Broadcast/Multicast Service (MBMS). More particularly, the present invention relates to the handover of a MBMS session to a Packet-Switch Streaming (PSS) service.
This section is intended to provide a background or context to the invention that is recited in the claims. The description herein may include concepts that could be pursued, but are not necessarily ones that have been previously conceived or pursued. Therefore, unless otherwise indicated herein, what is described in this section is not prior art to the description and claims in this application and is not admitted to be prior art by inclusion in this section.
In recent years, mobile broadcast solutions have been standardized by different organizations, such as the 3rd Generation Partnership Project (3GPP) MBMS. 3GPP MBMS enables resource-efficient delivery of multimedia content to the mobile users. A MBMS client can receive content via download delivery, streaming delivery, a combination of streaming delivery and download delivery, and/or other delivery methods.
MBMS is a 3GPP Release 6 (Rel-6) feature which may be deployed by operators only in a few areas where it is cost efficient to have the broadcast/multicast distribution of content. When MBMS subscribers move to other areas where there is no MBMS coverage, the operator may distribute the MBMS content in a unicast mode. However, application/transport layer signaling is required to ensure unicast mode reception of MBMS content to the subscribers while the subscribers are roaming in MBMS-outage areas.
Therefore, application/transport signaling and optimization techniques are needed for such scenarios. One of the objectives of the 3GPP SA4 Release 7 (Rel-7) work item on MBMS User Service Extensions is to specify the application/transport layer signaling needed for MBMS content distribution in unicast mode (over streaming and interactive bearers). Another objective is to specify optimization techniques for MBMS content delivery. Table 1 below shows the mapping between protocols to be used in broadcast/multicast and unicast modes as specified in MBMS Rel-7:
When a MBMS client moves from a MBMS coverage area to an MBMS outage area, an ongoing MBMS streaming session is mapped onto a new PSS session. Unlike MBMS streaming sessions, PSS sessions provide session and media-level control to the client. The client can request the PSS transmission to start from any point on the media timeline by using the appropriate value in the Range header of the RTSP PLAY request.
Due to the change of bearers from MBMS to PSS, the client experiences an interruption in the media delivery. It is desirable that the user perceived interruption be minimized or controlled according to the user preferences. However, required signaling mechanisms are currently not defined in the current MBMS and PSS specifications.
When the bearers change from MBMS to PSS, the media playback can start from any instant in the media timeline. As mentioned above, he precise instant in the media timeline depends on the Range header field of the RTSP PLAY request from the client. For example, the client can request media playback beginning with the precise instant where the media reception over MBMS bearers had stopped. Alternatively, the client can request media playback from the current instant of the media stream. In other scenarios, the client can request media playback from a few seconds before the instant where the media reception over MBMS bearers had stopped.
Some hybrid MBMS-PSS services might not support each of the above options. Additionally, even if a particular hybrid service supports all three options, the user may prefer to use one of these three options, or yet another option, (depending on the content type and personal preferences, for example). The support of different playback options might be signaled to the user, whose preference or choice is to be signaled to the BM-SC. In the current MBMS Rel-7 and PSS Rel-7 specifications, for example, the required signaling between the BM-SC and the MBMS UE is not specified.
As another example, the current version of the MBMS specification (i.e., 3GPP TS 26.346-740) considers the usage of the same synchronization source (SSRC) for the RTP streams of the corresponding media in both MBMS and PSS sessions. This ensures continuity in the sequence number and time-stamp series for the RTP packets received via MBMS and PSS bearers. However, this arrangement fails to consider the delays that are incurred during the PSS session setup phase which occur before the RTP/RTCP packet reception in PSS. This delay can be in the order of several seconds.
Various embodiments provide a system and method for ensuring a smooth and user-friendly transition at the application layer when distribution is changed from broadcast/multicast bearers to unicast bearers and vice versa. More particularly, various embodiments define a mapping between the timeline of a PSS session and the MBMS session timeline. This mapping is used to enable the correct positioning of the stream in a PSS session by a PSS server after a handover has occurred. In various embodiments, the service provider (e.g., BM-SC and PSS server) signals support of the various options for media playback after a MBMS-PSS handover in a PSS session description protocol (SDP) file or in the MBMS user service description (USD). The service provider may signal these options anytime before or during the MBMS streaming session using either broadcast/multicast bearers or interactive bearers, such as short message service (SMS) and hypertext transfer protocol (HTTP) by using Open Mobile Alliance (OMA) Push protocols. In response, a client signals its choice in the RTSP request that is sent when switching to the PSS session. The PSS server acknowledges the selected choice and sends the media accordingly.
These and other features of the various embodiments described herein, together with the organization and manner of operation thereof, will become apparent from the following detailed description when taken in conjunction with the accompanying drawings, wherein like elements have like numerals throughout the several drawings described below.
a) a media playback process before and after a MBMS-PSS handover, where media playback begins from the current instant of the media stream;
a shows the signaling involved in a hybrid MBMS-PSS service both before and after an handover according to one embodiment of the present invention;
b shows the signaling involved in a hybrid MBMS-PSS server before and after a handover according to another embodiment of the present invention;
Various embodiments provide a system and method for ensuring a smooth and user-friendly transition at the application layer when distribution is changed from broadcast/multicast bearers to unicast bearers and vice versa. More particularly, various embodiments define a mapping between the timeline of a PSS session and the MBMS session timeline. This mapping is used to enable the correct positioning of the stream in a PSS session by a PSS server after a handover has occurred. In various embodiments, the service provider (e.g., BM-SC and PSS server) signals support of the various options for media playback after a MBMS-PSS handover in a PSS session description protocol (SDP) file or in the MBMS user service description (USD). The service provider may signal these options anytime before or during the MBMS streaming session using either broadcast/multicast bearers or interactive bearers, such as SMS and HTTP by using OMA Push protocols. In response, the client signals its choice in the RTSP request that is sent when switching to the PSS session. For example, this choice can be indicated in the Range header of the RTSP PLAY request. The PSS server acknowledges the selected choice and sends the media accordingly.
The system and method described herein allows a smooth transition between MBMS to PSS in a hybrid MBMS-PSS service offering, and provides MBMS users with an option to receive and consume streaming content from the hand-off point or with the current flow of the MBMS streaming session. If the MBMS UE can identify an upcoming handover situation (due to the unavailability of MBMS bearers in the target cell, for example from radio layer or other lower layer signaling mechanisms), the MBMS UE can ensure uninterrupted media playback by initiating the PSS service prior to handoff.
It should be noted that although the mobile broadcast/multicast distribution system described herein is indicative of 3GPP MBMS while the unicast streaming service is indicative of 3GPP PSS, various embodiments of the present invention are not limited to implementation within/in conjunction with these standards/services. Various embodiments of the present invention are applicable to a plurality of different standards/services, for example, 3GPP2 standards, where 3GPP2 BCMCS is the 3GPP2 counterpart to 3GPP MBMS, and 3GPP2 MSS is the 3GPP2 counterpart to 3GPP PSS. Additionally, in certain systems/terminals the applicable broadcast/multicast distribution system can be Digital Video Broadcasting-Handheld IP Datacasting (DVB-H IPDC) or OMA BCAST and the unicast streaming service may be 3GPP PSS.
Moreover, referring back to Table 1, an MBMS user service may also utilize both a streaming delivery method and a download delivery method. When a user is in a MBMS-outage area, the service is mapped to a PSSe session, where a single RTSP session is used for session control for both streaming content (RTP/UDP) and downloadable content (FLUTE/UDP).
The following is a discussion of the implementation of particular embodiments of the present invention. The Normal Play Time (NPT) is set to 0 at the start time of the MBMS session. The MBMS session start time is taken from the SDP “t=” attribute or is otherwise indicated in the service guide or elsewhere.
a shows signaling involved in a hybrid MBMS-PSS service both before and after a handover according to one embodiment of the present invention. Before the start of the MBMS streaming service, the MBMS UE 110 receives a MBMS USD 400. The MBMS USD contains the SDP for the MBMS session, at least one unicastAccessURI (if it offers a unicast streaming service for roaming MBMS clients), as well as other service descriptors. When the MBMS UE 110 is in the MBMS-coverage area, it tunes into the MBMS streaming session at any time during the session, according to the standard MBMS procedures, and receives a media RTP and RTCP packet stream at 410 from the BM-SC 130.
At some later point during the MBMS streaming session, the MBMS UE 110 moves out of the MBMS-coverage area. At this point, the MBMS UE 110 would like to continue receiving the MBMS content over the unicast bearers, i.e., PSS bearers. The MBMS UE 110 sends a RTSP DESCRIBE message to the PSS server 120 at 420. In response, the MBMS UE 110 receives the SDP for a PSS session from the PSS server 120 at 430. The SDP can be obtained from a received unicastAccessURI which can comprise, for example a RTSP uniform resource locator (URL) for the PSS session or a link to the SDP file of the PSS session. Alternatively, the MBMS UE 110 may fetch the SDP of the PSS session well in advance of the handover to PSS, for example, while the MBMS UE 110 is still in the MBMS coverage area. In this scenario, the MBMS UE 110 may fetch the SDP from over interactive bearers (by accessing the unicastAccessURI), or the BM-SC 130 may also distribute the SDP over broadcast/multicast bearers.
In addition, the PSS server 120 may indicate the available options for media playback continuity. Two such options are entitled here as “GoWithFlow” and “Overlap.” These options may be signaled to the client in the original MBMS USD (either as an external element or in the SDP fragment), in one or more of the updated instances of the MBMS USD, or in the SDP of the PSS session. The MBMS UE 110, depending on the user preferences and the UE's capabilities such as buffer size, chooses one of these options and indicates its choice in any one of the RTSP request methods used for initiating the PSS session.
If the MBMS UE 110 uses the fast content switching (FCS) solution of PSS Rel-7 for startup, then it pipelines RTSP SETUP requests for individual media streams and the RTSP PLAY requests. If it uses the traditional manner of PSS Rel-6 start up, then it sends the SETUP requests for individual media streams (represented at 440 and 450) and the RTSP PLAY request (at 460) serially, as shown in
If the PSS server 120 accepts the request from the MBMS UE 110, then the PSS server 120 acknowledges the request by setting the Range header field in the RTSP PLAY response 490 to a value as close as possible to the receiver requested start time (deviations may occur because of timeline precision issues). The PSS server then starts streaming the content according to the client's request in a RTP and RTCP packet stream at 495. It is not necessary for the PSS server 120 to start at a key frame if it uses the same SSRC as the BM-SC 130. This allows for re-usage of the client buffer. If, on the other hand, the PSS server 120 rejects request of the MBMS UE 110, then the PSS server 120 signals its refusal by sending the value “now” in the Range header field of the RTSP PLAY response 490. The server then starts streaming the content according to its own choice. The MBMS UE 110 continues the media playback according to the received media. Depending on the capabilities of the MBMS UE 110, it may offer the user a choice to fast forward the content from where it left off to the current instant.
In the current specification, the BM-SC 130 indicates a set of unicastAccessURIs in the MBMS USD in order to improve the load balancing. Alternatively, the BM-SC 130 may allocate a set of unicastAccessURIs for supporting the GoWithFlow PSS service, and another set of unicastAccessURIs for supporting the Overlap PSS service. These two sets may be disjointed or joined together, i.e., a common set of unicastAccessURIs may support both GoWithFlow and Overlap PSS services. In this case, the MBMS UE 110 can directly indicate its choice by selecting the appropriate unicastAccessURI to initiate a PSS session.
The following is an example of the signaling of the time-shift capability of a PSS server in the MBMS User Service Description:
Using the modified USD schema, the following is an example of a USD with the signaling of the time-shift capability:
During handover from MBMS to PSS, the MBMS UE 110 sets up a RTSP session with the PSS server 120. The following is an example of an RTSP PLAY request that indicates the desire of the receiver to make use of time shift functionality:
In order to probe the PSS server 120 for its support of the time shift functionality, a new feature tag may be defined under the name “3gpp-mbms-timeshift,” for example. This feature tag may be used along with the “Supported” or “Require” header field. The signaling of the time shift functionality support may also be accomplished using the SDP in the reply to a DESCRIBE request. This may be accomplished by defining a new attribute “X-3gpp-mbms-timeshift,” for example. The following is an example of the signaling in the SDP:
The various embodiments described herein are described in the general context of method steps or processes, which may be implemented in one embodiment by a computer program product, embodied in a computer-readable medium, including computer-executable instructions, such as program code, executed by computers in networked environments. Generally, program modules may include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. Computer-executable instructions, associated data structures, and program modules represent examples of program code for executing steps of the methods disclosed herein. The particular sequence of such executable instructions or associated data structures represents examples of corresponding acts for implementing the functions described in such steps or processes. Furthermore, the various embodiments of the present invention can be implemented within various networks, network elements, and servers of various service providers.
Individual and specific structures described in the foregoing examples should be understood as constituting representative structure of means for performing specific functions described in the following the claims, although limitations in the claims should not be interpreted as constituting “means plus function” limitations in the event that the term “means” is not used therein. Additionally, the use of the term “step” in the foregoing description should not be used to construe any specific limitation in the claims as constituting a “step plus function” limitation. To the extent that individual references, including issued patents, patent applications, and non-patent publications, are described or otherwise mentioned herein, such references are not intended and should not be interpreted as limiting the scope of the following claims.
Software and web implementations of various embodiments can be accomplished with standard programming techniques with rule-based logic and other logic to accomplish various database searching steps or processes, correlation steps or processes, comparison steps or processes and decision steps or processes. It should be noted that the words “component” and “module,” as used herein and in the following claims, is intended to encompass implementations using one or more lines of software code, and/or hardware implementations, and/or equipment for receiving manual inputs.
The foregoing description of embodiments have been presented for purposes of illustration and description. The foregoing description is not intended to be exhaustive or to limit embodiments to the precise form disclosed, and modifications and variations are possible in light of the above teachings or may be acquired from practice of various embodiments. The embodiments discussed herein were chosen and described in order to explain the principles and the nature of various embodiments and its practical application to enable one skilled in the art to utilize the present invention in various embodiments and with various modifications as are suited to the particular use contemplated.
Number | Date | Country | |
---|---|---|---|
Parent | 12141854 | Jun 2008 | US |
Child | 12363642 | US |