Patent Publication Number: US-2011055417-A1

Title: UPNP-based media contents reproducing system and method thereof

Description:
TECHNICAL FIELD 
     The present invention relates to a Universal Plug and Play (UPnP)-based home network system, and more particularly to, a UPnP-based media contents playback system and a method thereof. 
     BACKGROUND ART 
     With popularization of a ultrahigh speed Internet and digitalization of electric products, there have been attempts to connect a personal computer (PC), a network gateway device, an audio/video device, home appliances and a control device through one home network. 
     A network environment based on the PC in houses has been gradually changed into an environment using various sub network technologies due to the diffusion of home networking. The UPnP technology has been suggested due to necessity of independently uniformly networking the electric products by using an IP protocol. 
     The UPnP, which is defined by a protocol of the standard network architecture, is one of the major standard technologies of the home network which a plurality of companies in each country create through the UPnP forum. A UPnP-based home network system includes a plurality of UPnP devices for providing services, and a control point for controlling the plurality of UPnP devices. 
     The control point means a controller having functions of sensing and controlling various devices. That is, the control point is a controller for controlling various devices (for example, UPnP devices). By the key input of the user, the control point discovers various UPnP devices, obtains description information of the discovered UPnP devices, and controls the UPnP devices. 
     Exemplary UPnP devices include devices connected to the home network, such as a PC, a network equipment, a peripheral device such as a printer, an audio/video device and home appliances. The UPnP devices notify their events to the control point. 
     The home network system for controlling the UPnP-based audio/video devices includes a media server for providing media contents through the home network, a media renderer for playing the media contents provided through the home network, and a control point for controlling the media server and the media renderer. 
     The control point obtains state information of the media server and the media renderer through events. For example, when the media server and the media renderer provide AV Transport service and Rendering Control service, if the media server and the media renderer put changed state variables into ‘Last Chang’ state variable table, the changed state variables are transmitted to the control point after a predetermined time. Thus, the control point is informed of the current states of the devices. 
     The media server notifies information on the media contents to the control point in every UPnP action. Also, the media server transmits the corresponding media contents to the media renderer by streaming to play the media contents. 
     The media renderer plays the media contents. The streaming method can be selected from various known methods. The current UPnP AV standard uses ‘Out-of-Band transfer protocol’ for streaming. 
     On the other hand, when the UPnP AV devices communicate with each other according to a Unicast method in a UPnP AV device triangle model, the user can move to another space and watch the media contents which he/she watched by one renderer. For example, the user stops the media server, moves to another space, selects the media contents of the media server, and plays the selected media contents, thereby watching the media contents. 
     However, when the user watches the media contents, if the user moves to another space, the user misses part of the media contents or watches the media contents by using a personal video recorder (PVR). That is, a conventional UPnP-based media contents playback system and a method thereof have disadvantages in that, when the user watching the media contents in one space intends to watch the media contents in another space, the user must pause playback of the media contents, move to another space, discover the UPnP AV device, and obtain information for playing the media contents from the media server and the media renderer. 
     In addition, the conventional UPnP-based media contents playback system and the method thereof require an additional time for recomposing the UPnP devices according to the information for playing the media contents from the media server and the media renderer. Accordingly, the conventional UPnP-based media contents playback system and the method thereof have disadvantages in that, when the user watching the media contents in one space intends to watch the media contents in another space, the user cannot rapidly continuously watch the media contents in another space. 
     DISCLOSURE OF THE INVENTION 
     Therefore, an object of the present invention is to provide a UPnP-based media contents playback system which can rapidly continuously play media contents played by a first control point in a different space by a second control point, by transmitting state information of the media contents played by the first control point to the second control point, and a method thereof. 
     To achieve these and other advantages and in accordance with the purpose of the present invention, as embodied and broadly described herein, there is provided a media contents playback system, including: a media server; a media renderer; and a first control point for controlling the media server and the media renderer, and transmitting rendering state information of the media renderer to a second control point. 
     According to one aspect of the present invention, a UPnP-based media contents playback system includes: a media server for providing media contents through a UPnP-based home network; a media renderer for playing the media contents; and a first control point for transmitting rendering state information of the media renderer to a second control point. 
     According to another aspect of the present invention, a UPnP-based media contents playback system includes: a media server for providing media contents through a UPnP-based home network, and storing state information of a first media renderer; a second media renderer; and a control point for playing the media contents by the second media renderer on the basis of the state information stored in the media server. 
     According to yet another aspect of the present invention, a UPnP-based media contents playback method includes the steps of: storing rendering state information of a media renderer in a media server for providing media contents through a UPnP-based home network; and providing the rendering state information to a control point through the UPnP-based home network. 
     According to yet another aspect of the present invention, a UPnP-based media contents playback method includes the steps of: receiving rendering state information of a first media renderer from a media server for providing media contents through a UPnP-based home network; and playing the media contents by a second media renderer on the basis of the rendering state information. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this specification, illustrate embodiments of the invention and together with the description serve to explain the principles of the invention. 
       In the drawings: 
         FIG. 1  is a structure diagram illustrating a UPnP-based media contents playback system in accordance with the present invention; 
         FIG. 2  is an exemplary diagram illustrating an operational process of the UPnP-based media contents playback system, in a state where a model of the UPnP-based media contents playback system is a pull model in accordance with the present invention; 
         FIG. 3  is an exemplary diagram illustrating an operational process of the UPnP-based media contents playback system, in a state where a model of the UPnP-based media contents playback system is a push model in accordance with the present invention; and 
         FIGS. 4 to 11  are tables showing additional actions in accordance with the present invention. 
     
    
    
     MODES FOR CARRYING OUT THE PREFERRED EMBODIMENTS 
     Reference will now be made in detail to the preferred embodiments of the present invention, examples of which are illustrated in the accompanying drawings. 
     A UPnP-based media contents playback (reproducing) system which can rapidly continuously play media contents (for example, audio and video contents) played by a first control point by a second control point by transmitting state information of the media contents played by the first control point to the second control point, and a method thereof in accordance with the preferred embodiments of the present invention will now be described in detail with reference to  FIGS. 1 to 11 . That is, when the user watching the media contents in one space intends to move to another space and watch the media contents, the first control point stores the state information of the media contents (state information of a media renderer) in a media server, and the second control point located in another space reads the state information stored in the media server and plays the corresponding media contents, so that the user can rapidly continuously watch the media contents in another space without taking an additional time for recomposing UPnP devices in another space. 
       FIG. 1  is a structure diagram illustrating a UPnP-based media contents playback system in accordance with the present invention. 
     A first control point CP 1  selects predetermined media contents among the media contents provided by a media server MS, and confirms whether a first media renderer MR 1  can play the selected media contents. Here, the first control point CP 1  matches protocols and data formats between the media server MS and the first media renderer MR 1 , sets an Audio/Video Transport Uniformed Resource Identifier (AV Transport URI) through the media server MS or the first media renderer MR 1 , and invokes a play action. That is, when the media contents stream is transmitted from the media server MS to the first media renderer MR 1 , the first control point CP 1  plays the corresponding media contents by the first media renderer MR 1 , so that the user can watch the media contents. 
     On the other hand, when the user pauses playback of the media contents to move to another space (for example, from first to second floor), the first control point CP 1  pauses the media server MS and the first media renderer MR 1 , and stores state information of the first media renderer MR 1  (rendering state information) in the media server MS. That is, the first control point CP 1  receives state information of an AV Transport service and a Rendering Control service of the first media renderer MR 1  from the first media renderer MR 1 , and stores the received state information in the media server MS. Here, the AV Transport service and the Rendering Control service are defined by the UPnP. 
     Thereafter, when the user moves to another space (for example, from first to second floor), a second control point CP 2  located in another space receives the state information stored in the media server MS through the UPnP-based home network upon the user&#39;s request. That is, the media server MS transmits the stored state information to the second control point CP 2  according to the control signal from the first control point CP 1 . 
     The second control point CP 2  transmits the state information to a second media renderer MR 2 . That is, the second control point CP 2  transmits the state information of the AV Transport service and the Rendering Control service of the first media renderer MR 1  to the second media renderer MR 2 , so that the user can rapidly continuously watch the media contents which he/she previously watched in another space (for example, second floor). 
     On the other hand, in order for the first control point CP 1  to transmit the state information to the second control point CP 2  through the media server MS, the first control point CP 1  and the second control point CP 2  must be able to discover and control each other. However, it is difficult for the first control point CP 1  and the second control point CP 2  to discover and control each other. Accordingly, in order to transmit the state information received by the first control point CP 1  to the second control point CP 2 , the state information is preferably transmitted through the service of the UPnP device. For example, preferably, the first control point CP 1  transmits the state information stored in the media server MS to the second control point CP 2  through a Connection Manager service of the media server MS. 
     Preferably, an optional action for transmitting the state information stored in the media server MS to the second control point CP 2  through the Connection Manager service of the media server MS is added and temporarily stored in the media server MS. For example, the name of the optional action can be CM::StatePut( ) and input arguments can be objectID, MediaServer State information and MediaRenderer State information. The objectID is necessary as an identifier for the stored state information. 
     Therefore, when the user intends to search the media server MS by using the second control point CP 2  located in another space and watch the media contents which he/she previously watched, the user can watch the media contents from the paused part or the beginning on the basis of the state information corresponding to the objectID, namely, the state information of the media contents. For example, when the user intends to watch the media contents on the basis of the stored state information, the second control point CP 2  receives the state information stored in the media server MS through CM:StateGet action (refer to  FIG. 4 ). Here, the received state information includes state information relating to the AV Transport Control service of the first media renderer MR 1  and state information relating to the Rendering control service thereof. 
     In accordance with the present invention, the media contents playback method of the UPnP-based media contents playback system can be varied according to a pull model and a push model. The process of the user watching the media contents before moving from one to another space is identical to that in the general UPnP standard, and thus explanations thereof are omitted. The operation for transmitting the state information stored in the media server MS to the second control point CP 2  will now be explained. 
     First, when the model of the UPnP-based media contents playback system is the pull model, the UPnP-based media contents playback system obtains the state information and plays the corresponding media contents on the basis of the state information as shown in  FIG. 2 . That is, in the pull model, the media renderer  250  executes the AV Transport control service and the Rendering control service. Therefore, each action is invoked once in every service, and thus AVT::StateSet( )action and RCS::StateSet( )action are invoked to set up the media server  220 . Here, an argument for AVT::StateSet( )action is an AV Transport State, and an argument for RCS::StateSet( )action is a Rendering Control State. 
     Conversely, when the media renderer  250  does not support AVT::StateSet( )action and RCS::StateSet( )action, the control point  210  can use actions of the existing service to change states of each service to wanted states of the user. For example, when a volume value of the Rendering Control service is not a basic value, the control point  210  invokes the corresponding action and adjusts the volume value. 
     When the model of the UPnP-based media contents playback system is the pull model and the second control point CP 2  transmits the state information stored in the media server MS to the second media renderer MR 2 , the second media renderer MR 2  can change a media offset of the buffered media contents on the basis of time information of the media server MS, or play the media contents again from the last pause time through seek( )action. 
     On the other hand, when the model of the UPnP-based media contents playback system is the push model, the media server  220  executes the AV Transport service, and the media renderer MR executes the Rendering Control service. Therefore, the UPnP-based media contents playback system obtains the state information and plays the corresponding media contents on the basis of the state information as shown in  FIG. 3 . 
     As illustrated in  FIG. 3 , the control point  310  invokes AVT::StateSet( )action from the media server  320  and RCS::StateSet( )action from the media renderer  350 . When AVT::StateSet( )action and RCS::StateSet( )action do not exist, the control point  310  can invoke necessary actions a few times among the actions of the existing service so as to change states of each service to wanted states of the user. 
     When the model of the UPnP-based media contents playback system is the push model and the second control point CP 2  transmits the state information stored in the media server MS to the second media renderer MR 2 , the second media renderer MR 2  can change a media offset on the basis of time information of the media server MS, or play the media contents from the last pause time through seek( )action. 
     The operational process of the UPnP-based media contents playback system will now be explained with reference to actions of  FIGS. 4 to 11 . The actions of  FIGS. 4 to 11  can be modified in various forms by various methods, and thus will now be schematically explained. 
       FIGS. 4 to 11  are tables showing additional actions in accordance with the present invention. 
     In order to transmit the state information received by the first control point CP to the second control point CP 2 , CM:StateGet( )action and CM::StatePut( )action can be added as shown in  FIGS. 4 to 6 . 
     So as to transmit the media contents stream from the media server MS to the second media renderer MR 2  by invoking each action once in every service, AVT::StateGet( ) AVT::StateSet( ) RCS::StateGet( )and AVT::StateSet( )actions can be added as shown in  FIGS. 7 to 11 . 
     On the other hand, in a state where the first control point CP 1  does not pause the operation of the first media renderer MR 1 , the users can watch the media contents by the second media renderer MR 2 , which is called a coping renderer. For example, when the two users watch the same media contents (for example, movie program) together, if one of the users intends to move to another space and watch the same media contents in another space, the first control point CP 1  invokes StateSet action from the media server MS, and the second media renderer MR 2  located in another space receives the state information through StateGet action, so that the user can continuously watch the media contents by the second media renderer MR 2  on the basis of the state information. For reference, the control point located in another space (for example, second control point) can be informed of all state information of the first media renderer MR 1  by joining the event service, and thus may not use CM:StateSet( )and CM::StateGet( ) services. 
     In addition, the second media renderer MR 2  located in another space is a combo media renderer (integration module of control point and media renderer), which can receive the state information by joining the event services of the media server MS and the first media renderer 
     MR 1 , instead of invoking CM:StateGet( )action. Here, when a type of the media contents is a file, the user can easily watch the file-type media contents on the basis of the location information of the media contents which he/she previously watched. 
     In accordance with the present invention, when the media server MS transmits the media contents to the second media renderer MR 2  located in another space through a multicast, the second media renderer MR 2  can play the media contents transmitted through the multicast. 
     As discussed earlier, in accordance with the present invention, the UPnP-based media contents playback system and the method thereof provide the state information of the first media renderer to the second control point of the second space under the control of the first control point of the first space. Therefore, when the user watching the media contents in one space by the media renderer moves to another space, he/she can rapidly continuously watch the media contents by the media renderer located in another space. That is, when the user watching the media contents in one space intends to watch the media contents in another space, the process of searching the UPnP devices in another space and obtaining the information for playing the corresponding media contents from the media server and the media renderer, and the additional time for recomposing the UPnP devices are not needed. 
     Furthermore, the UPnP-based media contents playback system and the method thereof provide the state information of the first media renderer to the second control point of the second space under the control of the first control point of the first space. As a result, the users can watch the same media contents in the first and second spaces, respectively. 
     As the present invention may be embodied in several forms without departing from the spirit or essential characteristics thereof, it should also be understood that the above-described embodiments are not limited by any of the details of the foregoing description, unless otherwise specified, but rather should be construed broadly within its spirit and scope as defined in the appended claims, and therefore all changes and modifications that fall within the metes and bounds of the claims, or equivalence of such metes and bounds are therefore intended to be embraced by the appended claims.