WO2007148915A1 - Method and apparatus for supporting multicast of media data in a network - Google Patents

Method and apparatus for supporting multicast of media data in a network Download PDF

Info

Publication number
WO2007148915A1
WO2007148915A1 PCT/KR2007/002983 KR2007002983W WO2007148915A1 WO 2007148915 A1 WO2007148915 A1 WO 2007148915A1 KR 2007002983 W KR2007002983 W KR 2007002983W WO 2007148915 A1 WO2007148915 A1 WO 2007148915A1
Authority
WO
WIPO (PCT)
Prior art keywords
connection
identifying information
device
multicast
action
Prior art date
Application number
PCT/KR2007/002983
Other languages
French (fr)
Inventor
Chang Hyun Kim
Original Assignee
Lg Electronics Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to US81563306P priority Critical
Priority to US60/815,633 priority
Application filed by Lg Electronics Inc. filed Critical Lg Electronics Inc.
Publication of WO2007148915A1 publication Critical patent/WO2007148915A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways

Abstract

The present invention relates to a multicast supporting method for media data in a network such as UPnP AV network. The present invention allocates a first connection identification for a join connection requesting participation into multicasting of an object, and registers a received second connection identification for a connection used for the multicasting and a received device identification, e.g., UDN (Unique Device Name) of a server storing the object in connection with the allocated first connection identification such that the registered information is mutually linked.

Description

D E S C R I P T I O N

METHOD AND APPARATUS FOR SUPPORTING MULTICAST OF

MEDIA DATA IN A NETWORK

1 . Technical Field The present invention is related to AV networking technology, particularly for a method and an apparatus for supporting multicast of media data in a UPnP network.

2. Background Art

People can make good use of various home appliances such as refrigerators, TVs, washing machines, PCs, and audio equipments once such appliances are connected to a home network. For the purpose of such home networking, UPnP™ (hereinafter, it is referred to as UPnP for short) protocol has been proposed.

Installing and configuring PC peripherals have been made much easier since current PC operating systems supported PnP (Plug and Play) functionality. UPnP extends the aforementioned functionality to networked environments based on standard technologies of the Internet such as TCP/IP, HTTP, and XML. Thus UPnP, with a variety of home appliances, network printers, Internet gateways, and the like networked together, enables a user to install an arbitrary device on a network and make use of the device through networking.

A UPnP network consists of a plurality of UPnP devices, services, and control points. A service on a UPnP network represents a smallest control unit on the network, which is modeled by state variables .

A CP (Control Point) on a UPnP network represents a control application equipped with functions for detecting and controlling other devices and/or services. A CP can be operated on an arbitrary device such as a PDA providing a user with a convenient interface . A CP discovers and describes a device (and/or its internal service) connected to a network and controls the corresponding device at the request of the user through a user interface. A CP can receive a report on the change of status information of a device through an event by subscribing to the corresponding event service provided by the device.

As shown in the structure of Fig. 1, A UPnP AV home network comprises a media server (MS) 120 providing a home network with media data, a media renderer (MR) 130 reproducing media data through

5 a home network, and a control point (CP) 110 controlling the media server 120 and media renderer 130.

In what follows, a procedure of reproducing media on the network of Fig. 1 is described.

The media server (MS) 120, to notify a control point (CP) 110

10 of directory information, notifies of information about media files by using the file system of its own every time a UPnP action (e.g. , browsing action) occurs. Data of a media file chosen through a UI of the CP 110 are transferred in streams between the media server

120 and media renderer 130 and then reproduced by the media renderer 15 130.

The streaming method can be any one of already-known methods. Since current UPnP AV protocol does not specify a particular streaming method, out-of-band transfer protocol is used for the streaming. For example, in the case of using RTP for media transfer,

20 transfer status of media data can be monitored by using RTCP and transfer parameters can then be adjusted based on the monitoring result .

The AV control point 110 invokes a UPnP action based on standard SOAP (Simple Object Access Protocol) , thus enabling

25 control of devices, namely a media server 120 and media renderer

130 or inquiry about the values of status variables set by the devices .

The media server 120 includes ContentDirectory service 121 providing a service searching for media data under the management

30 thereof and ConnectionManager service 122 managing connections with other devices, namely MediaRenderer 130. Control of reproduction of media, e.g., AVTransport service which enables control of play and stop can be selectively included. The media renderer 130 includes RenderingControl service 131 which controls rendering of

35 media data and brightness and intensity of a screen during presentation, ConnectionManager service 132 managing connections with other devices, and AVTransport service 133.

By using ContentDirectory service 121 of the media server 120 , the control point 110 detects media file information within the server. When the user chooses a particular media file based on the information, the control point 110 establishes a connection for media transfer between the media server 120 and media renderer 130 through ConnectionManager services 122, 132 of respective devices and sets up variables for play control of the corresponding media file by using the AVTransport service 133. The media file is finally reproduced by requesting a playback action from the media server

(in the case of push mode) or media renderer (in the case of pull mode) . While watching the media through a media renderer on a home network, a user may move to another place and want to watch the media from the last scene through a media renderer located on the new place. Several users may also try to watch the same content through multiple renderers at the same time. In the latter case, if a connection is established in a unicast scheme for the same content, efficient allocation of IP addresses is not obtained. Moreover, since identical media data are transferred as many times as the number of connections based on a unicast scheme, transfer resources of a home network are wasted. To overcome such a problem, media data should be handled in a multicast scheme rather than the unicast scheme . Since UPnP protocol does not provide a solution for such a situation as of present, the above problem should be endured anyway.

3. Disclosure of the Invention One objective of the present invention is to provide a method which incorporates information about whether to support multicast of media content provided through a network in the information of an object corresponding to the media content and enables multicasting of the corresponding object according to the information.

Another objective of the present invention is to provide a method for managing connections among devices for multicasting media content in an efficient and systematic manner.

A method for supporting multicast of media content according to the present invention comprises: receiving a request for connection identifying information about an object for multicasting; and providing, in response to the request , connection identifying information identical to connection identifying information pre-assigned for multicasting of the object. In one embodiment according to the present invention, at the request of the connection identifying information, the value of a state variable indicating the number of multicast connections of the object is increased by one. In one embodiment according to the present invention, when an action for requesting termination of a connection is received, it is determined whether the request of the action is related to leaving from subscription to a multicast connection or to termination of multicasting . In the case of leaving from a multicast connection, state information storing connection identifying information received from the connection termination request is deleted and the value of a state variable indicating the number of multicast connections is decreased by one. In the case of termination of multicasting, all state variables for multicast management are initialized and an operation for streaming data of the object through a network is stopped.

In the embodiment above, the initialization includes setting the number of multicast connections to zero and retrieving connection identifying information allocated for multicast connections.

In one embodiment according to the present invention, the object is designated for multicasting by protocol information of the object.

In another method for supporting multicast of media content according to the present invention comprises: assigning first connection identifying information to a connection for multicasting an object; and receiving second connection identifying information assigned to a joining connection which requested to join the multicasting and registering the first and the second connection identifying information as a single pair of connection identifying information for the connection of multicasting.

In one embodiment according to the present invention, the first connection identifying information is assigned by a connection management service (ConnectionManager Service) of a media server storing the object. The second connection identifying information is assigned by a connection management service of a media renderer which receives data of the objects and applies rendering thereto.

In one embodiment according to the present invention, when the joining connection is terminated, the pair of connection identifying information is deleted, or the value of the second connection identifying information within the pair takes a value such as λ-l' which is invalid as connection identifying information. Another method for supporting multicast of media content according to the present invention comprises: receiving an action for requesting connection identifying information about an object for multicasting; assigning connection identifying information for multicasting of the object, providing the assigned connection identifying information as a response to the requesting action, and setting a state variable indicating the number of multicast connections to zero; receiving an action for setting information that indicates access information of a media content corresponding to the object; and streaming the media content through a network with reference to the access information indicated by the set information when a play action is received.

In one embodiment according to the present invention, the specifying information for the access is URI of SDP (Session Description Protocol) . In one embodiment according to the present invention, argument of an action for requesting the connection identifying information includes "push-rtp-multicast" as protocol information of the object.

Another method for supporting multicast of media content according to the present invention comprises: checking whether a selected object is an object for multicasting; invoking, according to the checking result, an action for requesting connection identifying information to each of a first device storing the object and a second device for presenting media content of the object; and invoking an action for informing the second device of connection identifying information obtained from the first device and another action for informing the first device of connection identifying information obtained from the second device, according to the invoking of the action for requesting connection identifying information.

Another method for supporting multicast of media content according to the present invention comprises : invoking, at a request of leaving a multicast connection, an action for requesting connection termination to a first device that is making presentation of a media content being multicasted; and invoking another action for requesting connection termination to a second device storing the media content, an argument of said another action including first connection identifying information used in the action for requesting connection termination

Another method for supporting multicast of media content according to the present invention comprises checking number of connections joining multicasting at a request of termination of the multicasting; invoking an action for requesting connection completion to as many devices or services, which are presenting a media content being multicasted, as the number of the connections respectively; and invoking an action for requesting termination of multicasting to a device storing the media content.

In the embodiments according to the present invention, multicast of an object is implemented by a push method of an AV transport service installed to a media server.

In one embodiment according to the present invention, the step for checking the number of connections joining multicasting checks the number of connections by examining value of a state variable indicating number of connections that is managed by a service within a media server storing the media content .

Another method for supporting multicast of media content according to the present invention comprises assigning first connection identifying information to a connection for multicasting an object; assigning second connection identifying information to a joining connection which requested to join the multicasting; and registering the first connection identifying information, the second identifying information, and a device identifier of a remote device in association with each other. Another method for supporting multicast of media content according to the present invention comprises assigning first connection identifying information to a connection which requested to join multicasting of an object; and receiving second connection identifying information assigned to a connection for the multicasting and a device identifier of a server storing the object and registering the second connection identifying information and the device identifier in association with the assigned first connection identifying information.

Another method for supporting multicast of media content according to the present invention comprises checking whether a selected object is for multicasting; according to the checking result, invoking an action for requesting connection identifying information on each of a first device storing the object and a second device for presenting media content of the object; and invoking an action for informing the second device of connection identifying information and a device identifier obtained from the first device and connection identifying information obtained from the second device and another action for informing the first device of connection identifying information obtained from the second device and connection identifying information obtained from the first device .

Another method for supporting multicast of media content according to the present invention comprises at a request of leaving a multicast connection, invoking an action for requesting connection identifying information to a first device that is making presentation of multicast media content ; requesting a second device to provide connection information, the second device being identified by a device identifier received along with a pair of connection identifiers in response to the action; and searching the connection information, received according to the requesting, for a pair of connection identifiers identical to the received pair of connection identifiers and requesting the first device and the second device to release individual connection identifiers of a found pair in the searching.

In one embodiment according to the present invention, the device identifier is Unique Device Name (UDN) used in a network employing Universal Plug & Play protocol .

The present invention enables appropriate processing in accordance with multicast support of an object in an AV network and also enables efficient and systematic management of a multicast connection and connections for all of clients joining multicasting.

4. Brief Description of the Drawings

Fig . 1 illustrates a structure of an ordinary UPnP AV network; Fig. 2 illustrates a procedure of signal flow among devices and/or services for multicasting media content through a network in accordance with one embodiment of the present invention;

Fig. 3 illustrates a procedure of setting up a multicast channel and subscribing to the corresponding channel in accordance with one embodiment of the present invention;

Fig. 4A illustrates a procedure of signal flow among devices and/or services for reproducing multicast media content in accordance with one embodiment of the present invention; Fig. 4B illustrates part of a procedure of signal flow among devices and/or services for reproducing multicast media content in accordance with another embodiment of the present invention; and

Figs. 5, 6A and 6B, and 7 respectively illustrate examples of controlling a multicast channel and media content of the channel and/or controlling a connection for reproducing the media content according to the embodiments of the present invention.

5. Best Mode for Carrying Out the Invention

Hereinafter, preferred embodiments of the present invention will be described in detail with reference to appended drawings.

Although subsequent description of the embodiments of the present invention is given to networked devices and/or services based on UPnP standard, what are described in the following can be directly applied to other network standards by adaptively substituting necessary elements with regard to differences of the standards where the present invention may apply. In this regard, therefore, the present invention is not limited to a network based on UPnP.

In the subsequent embodiments, ContentDirectory service (CDS) within a media server storing media content, as to media content supporting multicasting, records protocol information and access location information in the meta data of an object corresponding to the media content as specifying information for multicast. The specifying information can also be configured as a user edits the information of the corresponding object. For the specifying information in one embodiment according to the present invention, SDP (Session Description Protocol) URI (Uniform Resource Identifier) as access location information is expressed by, e.g., "http : //" and protocol information is expressed by, e.g., "push-rtp-multicast" . The specifying information is recorded in a resource tag (<res>) of an object supporting multicasting. The above example of the specifying information relies on a push model where reproduction through transfer between devices is controlled by a media server. According to the assumption of the push model, AVTransport service managing playback of content is installed at a media server.

Fig. 2 illustrates a procedure of signal flow among devices and/or services for multicasting media content through a network in accordance with one embodiment of the present invention. As shown in Fig. 2, a control point (CP) 210 receives each individual object stored in a media server 220 through a browsing or search action (S21) . Here, Object' is a comprehensive terminology including more than one media source, e.g., an item having information about a media file and a container having information about directory; the terminology of v object' can indicate an item or a container of media content depending on the corresponding context .

The user of the CP 210 selects from a list of the provided objects an item corresponding to the media content to be reproduced by a media renderer 230. Otherwise the user of the CP 210 selects an item corresponding to the media content for multicasting through a home network not adhering to reproduction by a particular media renderer. Fig. 2 illustrates the latter case and subsequent description of an embodiment is based on the above case. The CP 210 invokes an action for preparing multicast connections (MPrepareForConnection () ) to ConnectionManager service of the media server 220 by using protocol information of a selected object as an input argument (S22) . Subsequent to the invocation of the action the ConnectionManager service assigns instance IDs to participating elements within the media server 220 (ConnectionManager (CM) service) and AVTransport (AVT) service) required for streaming the media content of a selected object through a network and provides the instance IDs for the CP 210 in response to the invocation (S22) . The instance ID is intended for later use of identifying a streaming service for multicasting through a current network and controlling the streaming service, e.g., release of a connection. Although an instance ID is a set of instance IDs assigned to individual services implemented in the corresponding device (CM, AVT, etc) , since instance IDs of respective services involved in a connection are all associated with each other, identifying one instance ID necessarily entails identifying instance IDs of other services. Therefore, in the description of the present invention, an instance ID is expressed as a single value (such as p, ql , and the like) . When the instance ID of a particular service needs to be identified, a modifying phrase indicating a corresponding 'name of a service' is applied right before the instance ID.

In the above embodiment, an action for preparing multicast connections, in addition to the protocol information about a selected object, includes access location information such as URL. Inclusion of access location information is necessary when a single UPnP system (which implies an apparatus comprising a physical network and constituting devices connected to the physical network based on UPnP) supports a plurality of multicast channels. In other words, if an action for preparing multicast connections is invoked and the action is about a URL different from the URL of media content being serviced in a previously opened multicast channel, a separate connection is assigned. If one multicast channel is supported by a single UPnP system, access location information about an object selected at the invocation of an action for preparing connections should not necessarily be provided. Therefore, for a UPnP system supporting a single multicast channel, instead of the action for preparing multicast connections, an action for preparing connections employed to establish a connection in a unicast scheme can also be utilized, which is equally applied to the embodiments described in the following.

In one embodiment according to the present invention, instance IDs for a multicast connection are managed by a pair of local and remote ones. In the example of Fig. 2, since information about a connection instance ID of a counterpart (a remote device or service) is not contained within a received action for preparing multicast connections (a value that is not used for a normal instance ID, e.g., v-l' is recorded in the corresponding field of an input argument of the corresponding action) , the media server 220 assigns Λ-l' to the instance ID (p) assigned by the media server and to the instance ID of the corresponding connection and stores the values in state information managed by the media server as a pair (SSl) . In one embodiment according to the present invention, one UPnP system supports a single multicast channel. Therefore, in the present embodiment, when protocol information of an object received through an action for preparing multicast connections corresponds to multicast , CM within the media server 220 checks whether a current multicast channel is available or not. If the current multicast channel is found not available, CM assigns an instance ID as described above and provides the instance ID for the CP 210. Otherwise CM provides the CP 210 with the same instance ID as the one assigned when the above multicast channel is first established. For this purpose, the CM within the media server 220 defines state variables for multicast and stores in each state variable availability of a multicast channel, instance ID information (in the previous example, the pair of (p, -1) ) assigned for a multicast channel, and the like. Information about the number of connections which have joined a multicast channel is also managed as one of state variables . As described above , when an instance ID is assigned to an action for preparing multicast connections, the number of available connections is initialized to zero or maintained at the value of zero.

The CP 210 feeds access location information of an object selected previously, namely source information (in the previous example , SDP URI "http : //" ) into AVTransport service of the media server 220 through an action for setting URI (SetAVTransportURI () ) (S23) . The action for setting URI utilizes an instance ID (it is referred to as xAVTInstanceID' for short) of AVTransport service corresponding to a previously received instance ID. When source information contained in the argument of URI metadata ("CurrentURIMetadata") of a currently selected object, received through the action for setting URI, indicates SDP URI, AVTransport service within the media server 220 then refers to a SDP document for multicasting.

The SDP document is prepared at the media server 220 before carrying out a procedure for multicasting the above media content, namely before the S22 step. The preparation is not subject to UPnP protocol ; the SDP document is prepared at the media server 220 either by a relevant user interface or a document editor. Alternatively, the SDP document can be prepared through a relevant UI provided by the CP 210 and stored at the media server 220 through other relevant protocol .

The SDP document prepared as above records information necessary to access the media source for multicasting (e.g., protocol and URI information) , multicast address (including UDP port number) , and information about RTP (Real-time Transport Protocol) payload carrying media data. In one embodiment according to the present invention, since a UPnP system supports a single multicast channel, a multicast address uses a pre-assigned one.

After the action for setting URI, the CP 210 invokes a play action to the AVTransport service by using a previously received

AVTInstanceID (S24) . The AVTransport service of the media server

220 which received the invocation streams the media content whose URI is set up by the same AVTInstanceID above (that is, actual media source indicated by access information within the SDP document) into a home network as shown in Fig. 3 (S25,S31) .

In what follows, a method for watching media content streamed into a network as above by joining the multicast channel is described. Fig. 4A illustrates a procedure of signal flow among devices and/or services for reproducing multicast media content in accordance with one embodiment of the present invention.

First, the control point 210 requests supported protocol information from media renderer 230 and reserves the information (S41) . When the user selects a media object from browsing, the control point 210 receives selection of a media renderer carrying out playback of the selected object and checks whether the media renderer supports the selected media object. For the purpose of describing an embodiment of the present invention, it is assumed that the media renderer 230 supports multicasting and the selected object also supports multicasting, where the object is the same as the one selected for the purpose of description of Fig. 2.

Since protocol information of a selected object is about multicasting, e.g., "push-rtp-multicast" , the control point 210 invokes an action for preparing multicast connections to each of a media server 220 and the media renderer 230 (S42-1, S42-2) . Instead of an action for preparing multicast connections , the media renderer

230 can invoke a general action for preparing connections used for a unicast connection.

According to the invocation, ConnectionManager service within the media server 220, among state variables under management thereof, increases the value of the number of available connections by one. ConnectionManager service then returns an instance ID (p) about AVT and CM stored in the state variable previously assigned for multicasting (S42-1) . In other words, a new value is not assigned for an instance ID. ConnectionManager service within the media renderer 230 assigns an instance ID about ConnectionManager service (CM) and RenderingControl service (RCS) and returns the assigned instance ID (ql) (S42-2) .

The control point 210, upon receiving instance IDs from both sides in accordance with an action for preparing multicast connections, configures the instance IDs in the form of a pair of local and remote IDs and loads the pair into an input argument, thus invoking an action for setting a pair of multicast connection IDs (SetMulticastConnectionIDPair () ) on both sides (S43-1 , S43-2) . In the case of invoking an action for preparing connections on the media renderer 230 after invocation of an action for preparing multicast connections on the media server 220, UDN (Unique Device Name) and an instance ID received from a remote site, namely a media server 220 are carried by the response of the action for preparing connections invoked to the media renderer 230. Therefore, CM of the media renderer 230 can configure a pair of local and remote instance IDs without receiving the action for setting a pair of multicast connection IDs. In another embodiment according to the present invention, therefore, the action for setting a pair of multicast connection IDs is not invoked to the media renderer 230.

In another embodiment according to the present invention, an action for setting a pair of multicast connection IDs is invoked along with a device identifier (UDN) of a remote device in addition to remote ID. For example, as shown in Fig. 4B, when UDN of the media server 220 is "s_UDN" , the UDN is provided for the media renderer 230 through an action for setting a pair of multicast connection IDs along with an instance ID (p) (S403-2) . As mentioned earlier, UDN of a device is received together with an instance ID assigned in response to an action for preparing a connection. In an embodiment according to a multicasting method of the present invention, since the media server 220 dose not benefit from managing UDN of a remote site along with an instance ID, UDN of a remote site is not provided together with an instance ID when an action for setting a pair of multicast connection IDs is invoked to a device functioning as a multicasting server. In another embodiment according to the present invention, in the case of invoking an action for preparing a pair of multicast connection IDs on the media server 220 (S403-1), too, a remote device, namely UDN of the media renderer 230 "r_UDN" in the example of Fig. 4B can be provided along with a remote instance ID (ql) . CM of the media renderer 230, which received the UDN and instance ID of a remote site, and a local instance ID through an action for setting a pair of multicast connection IDs, registers a pair of received instance IDs together with a remote UDN (SS30) .

The CM within the media server 220 that received the action for setting a pair of multicast connection IDs checks a state variable for a pair of instance IDs under the management of its own. If a pair of instance IDs consists of a local ID identical to the state variable and a remote value of λ-l', the CM records a received remote instance ID (ql) as the remote ID of the instance ID pair (SS2) . That is, the CM changes an instance ID of (p, -1) to (p, ql) . If no instance ID pair has a remote ID field of λ-l', a received pair of instance IDs is newly registered. In the embodiment of Fig. 4A, CM of the media renderer 230 registers a pair of instance IDs (ql,p) as it is, the pair of instance IDs being received through an action for setting a pair of multicast connection IDs (SS3) .

After an action for setting a pair of multicast connection IDs, the control point 210 invokes an action for joining (JoinO) to CM of the media renderer 230 by using a CM instance ID (denoted by 'CMInstancelD' ) of an instance ID received from the media renderer 230 (S44, S32 of Fig. 3) . At this point, SDP URI value recorded in the meta data of a selected media object is delivered as an argument of the action for joining.

The CM within the media renderer 230 that received a SDP URI value obtains a SDP document according to a protocol specified by the value (S45) , invokes another relevant protocol block (e.g., RTP and RTCP) within the media renderer 230, interprets the obtained SDP document, and sets up information according to the interpretation. For example, a multicast address and RTP payload information are configured and UDP packets having an interpreted multicast address are monitored on a network based on the configured information. When a packet of the corresponding address is detected, the packet is received (S46, S33 of Fig. 3) and RTP payload data within the received packet are fed into a relevant decoder for decoding. According to the above, media content multicast on a network is played on the selected media renderer 230.

By carrying out the same procedure for reproducing multicast media content by joining a multicasting channel which is described with reference to Fig. 4A on another media renderer

(231 of Fig. 3) in addition to the media renderer 230, multicast media content can also be played on the media renderer 231. Each time a media renderer joining a multicast channel appears, an action for preparing multicast connections is invoked to the media server 220. And at each invocation, the value of a state variable for the number of connections increases by one. As described in the above, as to an action for preparing multicast connections, CM of the media server 220 provides a previously assigned instance ID (p) stored in a state variable in response to the action rather than assign a new instance ID. By an action for setting a pair of multicast connection IDs carried out after an action for preparing multicast connections, CM of the corresponding media renderer 231 registers (q2, p) (in case the instance ID assigned by CM of the media renderer 231 is q2) and CM of the media server 220 registers an instance ID pair of (p, q2) in a state variable.

Figs. 5 through 7 respectively illustrate examples of controlling a multicast channel set up as described above and media content of the channel and/or controlling a connection for reproducing the media content according to the embodiments of the present invention.

First, a procedure of exchanging signals between devices and/or services of Fig. 5 is an example of playback control of multicast media content. When a user or an operator wants to stop playback of media content multicast through the CP 210, information about connections streamed by the media server 220 is obtained through the CP 210 and a multicast connection among the streaming connections is selected and stopping playback is requested. According to the above, the CP 210 invokes an action for stopping playback (stopO ) to AVT of the media server 220 (S51) . The action at this moment necessarily uses AVTInstanceID of an instance ID

(p) assigned to a multicast connection. AVT of the media server, where the action has been invoked, recognizes the action as the one about media content multicast from AVTInstanceID within the action and stops streaming of the media content. That is to say, it returns to the state just before receiving a play action (play () ) invoked during a signal exchange procedure of Fig. 3.

In the same way, according to the user request for trick play (fast forward, rewind, fast rewind, etc) , an action for playback control satisfying the request is invoked (S52) . According to the invocation of an action for such trick play, AVT of the media server 220, by adjusting the streaming position of streamed media content or the amount of skip of streaming data, enables data relevant to a requested trick play to be streamed.

The playback control for multicast media content affects all the media renderers joining a multicast channel.

Fig. 6A illustrates a procedure of exchanging signals leaving a multicast channel according to one embodiment of the present invention. A procedure of leaving a multicast channel is carried out when a media renderer, which has been reproducing multicast media content by joining a multicast channel, terminates playback.

When the user associates a particular media renderer (e.g. , media renderer 230) with the control point 210, the control point

210 invokes an action for inquiring about state variables

(GetStateVariables () ) to a related service of the corresponding media renderer 230 to obtain information needed for UI. If the user requests release of a servicing connection based on the information obtained according to the invocation, the control point 210 invokes an action for inquiring about connection IDs (GetConnectionIDs () ) to CM of the corresponding media renderer 230 (S61-1) . The inquiring action, if needed, in a situation of choosing a connection to be released, can provide the user with information obtained from the action conducted when the user selects the media renderer 230. Due to the invocation of the action S61-1, obtained are a pair of local and remote instance IDs (ql, p) and UDN of a remote device (UDN of a media server in the example of Fig. 6A) assigned at the time of joining a multicast channel. The control point 210 then refers to the UDN and again invokes an action for inquiring about connection IDs to CM of the media server 220 corresponding to the UDN (S61-2) . According to the invocation, instance IDs (those about streaming connections in unicast scheme) and/or pairs of instance IDs about all the connections set up by CM of the media server 220 are obtained. Among the obtained pairs of instance IDs, a pair of instance IDs, namely (p, ql) corresponding inversely to the pair of instance IDs obtained previously from the media renderer 230 is sought and when a corresponding pair is found, the pair is determined as the connection to be released with respect to CM of the media server 220.

The action for inquiring about connection IDs

(GetConnectionIDs () ) is the one defined for a unicast connection and the response to the action includes various other information in addition to connection IDs, e.g., direction of a connection, status of a connection, etc. Such various other information is not used as the information for leaving a multicast channel. Therefore, in another embodiment according to the present invention, an action for inquiring about multicast connection IDs to obtain only UDN and an instance ID of a remote site and a local instance ID, registered according to the embodiment of Fig. 4B, is defined and used. This action is referred to as "GetMulticastConnectionIDs () " as shown in Fig. 6B . As a response to the action, a local instance ID and UDN and an instance ID of a remote site (S601-1) registered and managed by CM of a device which received the action or a pair of local and remote instance IDs (S601-2) is provided. In the embodiment of Fig. 6B, the control point 210 invokes an action for inquiring about multicast connection IDs to a device specified by a remote UDN ("s_UDN" in the embodiment of Fig. 6B) , namely CM of the media server 220 (S601-2), the remote UDN originating from response information (that is, information of a local instance ID and UDN and an instance ID of a remote site) obtained from invocation S601-1 of an action for inquiring about multicast connection IDs on CM of the media renderer 230 selected for leaving from a multicast channel. According to the invocation, instance IDs and/or pairs of instance IDs about all the connections set up by CM of the media server 220 are obtained. Among the obtained pairs of instance IDs, a pair of instance IDs, namely (p, ql) corresponding inversely to the pair of instance IDs obtained (S601-1) previously from the media renderer 230 is sought and when a corresponding pair is found, the pair is determined as the connection to be released with respect to CM of the media server 220.

After the determination, the control point 210 invokes an action for completing connections (ConnectionComplete () ) to a media renderer 230, which has joined a multicasting channel and renders media content, with an instance ID (ql) to be released, received from ConnectionManager service of the media renderer 230, as an input argument (S62,S602) . Input argument of the action can include a remote connection instance ID (namely, p) of a connection to be released. According to the invocation, CM of the media renderer 230 de-allocates an instance ID of ConnectionManager service (CMInstancelD) corresponding to a received ID (ql) and also an instance ID of RenderingControl service (RCSInstancelD) assigned together with the instance ID of ConnectionManager service. Put another way, instance IDs are reserved for reuse. Information (multicast address, RTP payload information, etc) obtained from interpretation of a SDP document set up by an action for joining (JoinO) of Fig.4A is all deleted. By doing this, address monitoring and receiving of multicast streaming data on a network are stopped.

If the control point 210 that invoked the action for completing connections receives from CM of the media renderer 230 an OK response about the action, it invokes the action for completing connections (ConnectionComplete () ) to CM of the media server 220 as well (S63,S603) . At this moment, a pair of instance IDs of the media server 220, which have been determined to be released, is used. CM of the media server 220, where the action for completing connections has been invoked, checks a remote instance ID value of a received instance ID pair. If the value is of a valid instance ID, CM of the media server 220 perceives the value as an ID assigned to a joining connection of currently multicast media content, decreases the value of a state variable for the number of multicast connections under management of its own by one (SS4,SS40), and searches state variables for a pair of instance IDs (namely, (p, ql) ) received through the action and deletes the pair (SS5,SS50) . If the value of a state variable for the number of multicast connections corresponds to zero after decrement by one, the corresponding pair of instance IDs is not deleted and a remote instance ID in regard to a state variable having the same value as the pair of instance IDs received through the action is changed to l-l' . The above case occurs when a connection of the last media renderer joined a current multicast channel is terminated. Since joining a multicast channel is possible even after leaving of the last media renderer, multicasting of media content through a network by the media server 220 remains unchanged.

If the value of a remote instance ID of a pair of instance IDs carried by an input argument of a received action for completing connections is '-1', CM of the media server 220 carries out termination of multicasting, namely completion of a connection and stopping streaming of media content through a network, which is described in the following.

Fig. 7 illustrates a procedure of exchanging signals for termination of multicasting according to one embodiment of the present invention.

When a user or an operator requests termination of a current multicast channel from the control point 210, the control point 210 requests an inquiry about a state variable associated with multicasting from CM of the media server 220 (S71) . State variables for multicasting (the number of connections, pairs of instance IDs, etc) are inquired by the inquiry request.

The control point 210 checks the value of a state variable for the number of connections among inquired state variables (S72) . If the value is not zero, an action for completing connections is invoked to CM of the corresponding media renderer as many times as the value (S73-1, .. ,S73-k) . At the invocation of the action, a pair of instance IDs is necessarily loaded into the action, the pair of instance IDs being such that the places of a local and remote value are swapped from those of a previously received pair of instance IDs. Due to invocation of the action, CM of each media renderer carries out a procedure for leaving a multicast channel described with reference to Figs. 6A and 6B.

After invocation of the individual action for completing connections or during the previous process of checking the number of connections, if the number of connections (k) is zero, the control point 210 invokes an action for completing connections

(ConnectionComplete () ) to CM of the media server 220 (S74). For this invocation, a pair of instance IDs is used, where the value of a remote instance ID is x-l' , namely (p, -1) . (Here, p is a value common to the local instance ID of state variables for a pair of instance IDs among the obtained state variables related with multicasting.) Based on information whose remote instance ID of a pair of instance IDs is λ-l', CM of the media server 220 interprets the invocation of the action as termination of a currently established multicast channel, namely as a request for complete suspension. Accordingly, CM of the media server 220 retrieves an instance ID (namely, p) assigned to a connection of multicast media content, deletes all pairs of instance IDs whose local instance ID field contains p value, and resets a state variable for the number of connections to zero. In addition, a state variable for indicating availability of a multicast channel is set as 'closed' . AVT of the media server stops data streaming of media content as well. Therefore, a multicast channel is completely terminated.

The present invention is not limited to the foregoing description of preferred embodiments and those skilled in the art may easily understand that the invention and various embodiments can be utilized with improvements, modifications, substitutions, or additions within the scope of the invention. If the improvements, modifications, substitutions, or additions belong to the scope of the invention as defined by the following appended claims, the spirit should also be regarded to belong to the present invention.

Claims

C LA I M S
1. A method for supporting multicast of media content, comprising : assigning first connection identifying information to a connection for multicasting an object; assigning second connection identifying information to a joining connection which requested to join the multicasting; and registering the first connection identifying information, the second identifying information, and a device identifier of a remote device in association with each other.
2. The method of claim 1, further comprising, providing the registered first connection identifying information, the second connection identifying information, and the device identifier of a remote device in response to a request when receiving the request for identifying information about a multicast connection.
3. The method of claim 2, wherein the request for identifying information is made from a device connected to a network, where the multicasting is conducted, and/or a control application that inquires and/or controls status of a service within the device.
4. The method of claim 1, wherein the registering step is initiated by receiving of a connection information setting action whose input argument includes the first connection identifying information, the second connection identifying information, and the device identifier of a remote device.
5. The method of claim 1, wherein the device identifier is Unique Device Name that is used in a network employing Universal Plug & Play protocol .
6. A method for supporting multicast of media content, comprising: assigning first connection identifying information to a joining connection which requested to join multicasting of an obj ect ; and receiving second connection identifying information assigned to a connection for the multicasting and a device identifier of a server storing the object, and registering the second connection identifying information and the device identifier in association with the assigned first connection identifying information.
7. The method of claim 6, further comprising, providing, in response to a request, the first connection identifying information, the second connection identifying information, and the device identifier of the server that are registered in association with each other, when receiving the request for identifying information about a multicast connection.
8. The method of claim 6, wherein the first connection identifying information is assigned by a connection manager service of a first device that receives and renders data of the object, and the second connection identifying information is assigned by a connection management service of the server.
9. The method of claim 6, wherein the device identifier is Unique Device Name that is used in a network employing Universal Plug & Play protocol .
10. The method of claim 6, wherein the first connection identifying information is de-allocated in order to be re-assigned when the joining connection is released.
11. A method for supporting multicast of media content, comprising: checking whether a selected object is an object for multicasting; invoking, according to the checking result, an action for requesting connection identifying information to each of a first device storing the object and a second device for presenting media content of the object; and invoking an action for informing the second device of connection identifying information and a device identifier obtained from the first device and connection identifying information obtained from the second device, and another action for informing the first device of connection identifying information obtained from the second device and connection identifying information obtained from the first device.
12. The method of claim 11, wherein when protocol information of the object includes text information of "multicast" , the checking step determines that the object is for multicasting.
13. A method for supporting multicast of media content, comprising : invoking, at a request of leaving a multicast connection, an action for requesting connection identifying information to a first device that is making presentation of a media content being multicasted; requesting a second device to provide connection information, the second device being identified by a device identifier received along with a pair of connection identifiers in response to the action; and searching connection information, received according to the requesting, for a pair of connection identifiers identical to the received pair of connection identifiers, and requesting the first device and the second device to release individual connection identifiers of a found pair in the searching.
14. The method of claim 13, wherein the searching step searches the connection information for a pair of connection identifiers that is identical to the received pair and individual values corresponding to a local and remote site at the pairs are changed with each other as well.
PCT/KR2007/002983 2006-06-21 2007-06-20 Method and apparatus for supporting multicast of media data in a network WO2007148915A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US81563306P true 2006-06-21 2006-06-21
US60/815,633 2006-06-21

Publications (1)

Publication Number Publication Date
WO2007148915A1 true WO2007148915A1 (en) 2007-12-27

Family

ID=38833618

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2007/002983 WO2007148915A1 (en) 2006-06-21 2007-06-20 Method and apparatus for supporting multicast of media data in a network

Country Status (1)

Country Link
WO (1) WO2007148915A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013013529A1 (en) * 2011-07-22 2013-01-31 中兴通讯股份有限公司 Upnp access control method, server and client

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005013515A1 (en) * 2003-08-01 2005-02-10 Samsung Electronics Co., Ltd. Method for retransmitting a radio resource control connection request message in mobile communication system capable of providing a multimedia broadcast/multicast service
US6928656B1 (en) * 1999-05-14 2005-08-09 Scientific-Atlanta, Inc. Method for delivery of IP data over MPEG-2 transport networks
US7012931B2 (en) * 2000-04-03 2006-03-14 Hitachi, Ltd. Multicast communication method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6928656B1 (en) * 1999-05-14 2005-08-09 Scientific-Atlanta, Inc. Method for delivery of IP data over MPEG-2 transport networks
US7012931B2 (en) * 2000-04-03 2006-03-14 Hitachi, Ltd. Multicast communication method
WO2005013515A1 (en) * 2003-08-01 2005-02-10 Samsung Electronics Co., Ltd. Method for retransmitting a radio resource control connection request message in mobile communication system capable of providing a multimedia broadcast/multicast service

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013013529A1 (en) * 2011-07-22 2013-01-31 中兴通讯股份有限公司 Upnp access control method, server and client

Similar Documents

Publication Publication Date Title
JP6349356B2 (en) Multi-screen interaction method and system
JP5684884B2 (en) Control device
US20170251239A1 (en) Iptv session management
US20170214974A1 (en) Controlling Networked Media Capture Devices
US9124441B2 (en) Remote audio
US9992035B2 (en) Apparatus and method for sharing a bookmark with other users in a home network
JP5718969B2 (en) System and method for providing telephone related services to multiple devices using UPnP on home network
US8291037B2 (en) Networked local media cache engine
KR100754431B1 (en) Method for transferring a content according to the processing capability of dmr in dlna system
JP5064414B2 (en) Bi-directional media session establishment system, method and apparatus based on IP multimedia subsystem
KR100733962B1 (en) System and its method for media contents sharing over inter-homenetwork
KR100555809B1 (en) Network device and network device controlling method
US7626950B2 (en) SIP-based session control among a plurality of multimedia devices
KR100782503B1 (en) Method And System For Transforming Contents of Broadcasting in DLNA Network
Cranor et al. Enhanced streaming services in a content distribution network
US8473583B2 (en) System and method for transmitting and receiving a call on a home network
JP4041118B2 (en) Gateway device, network system, communication program, and communication method
US7548960B2 (en) Multimedia service apparatus and method for multimedia service providers outside home to UPnP devices inside home using home gateway and service gateway platform
EP1825655B1 (en) Service discovery aggregation method in a local area network and device implementing the method
US20140304755A1 (en) Method and apparatus for discovering internet protocol television service (iptv) provider and iptv service by using session initiation protocol
KR100413684B1 (en) Gateway enabling data communication between devices each having different middleware, home network system thereby, and gateway relaying method
JP4518719B2 (en) Data processing system, information processing apparatus and method, and computer program
EP2356797B1 (en) Method for implementing ims functionality in a set top box
RU2494562C2 (en) Multimedia channel management
JP4685004B2 (en) Embed UPnPAV media server object ID in URI

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07747017

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase in:

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 07747017

Country of ref document: EP

Kind code of ref document: A1