This application claims the priority benefit of Taiwan application serial no. 101118972, filed on May 28, 2012. The entirety of the above-mentioned patent application is hereby incorporated by reference herein and made a part of this specification.
The disclosure relates to a managing method of digital media render, and particularly relates to a render, a controller, a managing method of the controller, a managing method of the render applicable under the Digital Living Network Alliance.
Digital Living Network Alliance (DLNA) is an industrial standard set up by a plurality of manufacturers, which is based on the technology of Universal Plug and Play (UPnP), and integrates multimedia contents to simply share multimedia files, such as pictures, music, videos, and playlists.
Devices applicable under DLNA can be divided into digital media servers (DMS), digital media renders (DMR), and digital media controllers (DMC). A digital media controller may explore multimedia files saved in a digital media server, send an instruction to a digital media render, controls the digital media render to download multimedia files from the digital media server and to play the multimedia files. The above-mentioned devices communicate via a shared language and channel, so video and audio data can be shared without additionally installing a driver or using a specific wire.
In the current definition of DLNA, a control instruction of the digital media controller to the digital media render is implemented with fully open authorization. Namely, as long as the media controller can connect to the digital media render within an accessible range, the media controller can control the digital media render to execute actions such as playback or pause with fully open authorization. Therefore, if there are a plurality of digital media controllers capable of controlling one digital media render in a local area network, alternative control may occur since each of the plurality of digital media controllers has the control right to the digital media render.
In view of the above, the disclosure provides a render and a managing method thereof. By determining a controller identification information of a received instruction, it is determined whether a corresponding operative action is performed. Thereby, the issue of controlling the render alternatively is avoided.
The disclosure provides a controller and a managing method thereof, which sends an instruction having controller identification information to obtain a control right of the render.
Viewing from one aspect, the disclosure provides a render, including a storage unit, a playback unit, and a determination unit. The storage unit includes an instruction queue configured for temporarily saving at least one instruction from the controller. The playback unit is connected to the storage unit, and downloads multimedia files from a server through a network and plays one of the multimedia files according to a playback instruction of the controller. The determination unit is connected to the storage unit, respectively receives at least one instruction through the network, and determines whether a first controller identification information of each instruction is identical to a second controller identification information corresponding to the multimedia file currently played. When the first controller identification information is identical to the second controller identification information, the render executes a corresponding operative action of the instruction. When the first controller identification information is different from the second controller identification information, the instruction is saved in the instruction queue of the storage unit.
In an embodiment of the disclosure, when the determination unit determines that the first controller identification information of an instruction is identical to the second controller identification information corresponding to the multimedia file currently played, a first controller that generates the instruction has the control right of the render.
In an embodiment of the disclosure, if the determination unit determines that the first controller identification information of an instruction is different from the second controller identification information corresponding to the multimedia file currently played, the first controller that generates this instruction does not have the control right of the render.
In an embodiment of the disclosure, the storage unit further includes a multimedia queue temporarily saves a multimedia file downloaded from the server, wherein when each time the storage unit temporarily saves a multimedia file, the storage unit makes the multimedia file correspond to a controller identification information of a controller selecting the multimedia file.
In an embodiment of the disclosure, if the first controller has the control right, and when all multimedia files corresponding to the first controller identification information of the first controller in the multimedia queue are played, the render transfers the control right to a second controller and executes sequentially at least one instruction having a third controller identification information of the second controller in the instruction queue.
In an embodiment of the disclosure, operative actions corresponding to the instruction include an action of playing, an action of pausing, an action of forwarding, and action of rewinding, an action of skipping the current multimedia file, and an action of adjusting volume.
In an embodiment of the disclosure, when the render receives a request information from the second controller, the determination unit compares a first authorization level of the first controller that has the control right and a second authorization level of the second controller, wherein when the determination unit determines that the second authorization level is higher than the first authorization level, the render transfers the control right to the second controller, and executes at least one instruction corresponding to the second controller in the instruction queue first.
In an embodiment of the disclosure, the request information includes a request information of control right and a request information of cleaning up instruction queue. When the render receives the request information of cleaning up instruction queue, the storage unit cleans up all instructions corresponding to the first controller in the instruction queue and transfers the control right to the second controller.
In an embodiment of the disclosure, when the render receives the request information of control right having a first code from the second controller, the render compares to see if the first code is identical to a preset second code. When the first code is identical to the second code, the render transfers the control right to the second controller.
Viewing from another aspect, the disclosure provides a managing method of render that includes the followings. First, an instruction is temporarily saved from a controller. Then, according to a playback instruction of the controller, multimedia files are downloaded from a server through a network and one of the multimedia files is played. Also, instructions are received through the network and whether a first controller identification information of each instruction is identical to a second identification information corresponding to the multimedia file currently played is determined. Moreover, an operative action corresponding to the instruction is executed when the first controller identification information is identical to the second controller identification information, whereas the instruction is saved in an instruction queue when the first controller identification information is different from the second controller identification information.
In an embodiment of the disclosure, when it is determined that the first controller identification information of the instruction is identical to the second controller identification information corresponding to the multimedia file currently played, a first controller generating the instruction has a control right of the render.
In an embodiment of the disclosure, when it is determined that the first controller identification information is different from the second controller identification information corresponding to the multimedia file currently played, the first controller generating the instruction does not have the control right of the render.
In an embodiment of the disclosure, the managing method of render further includes temporarily saving the multimedia files downloaded from the server, wherein when each time a multimedia file is temporarily saved, the multimedia file is made correspond to a controller identification information of a controller selecting the multimedia file.
In an embodiment of the disclosure, wherein when the first controller has the control right, and when all multimedia files corresponding to the first controller identification information of the first controller in the multimedia queue are played, the control right is transferred to a second controller, and instructions that have a third controller identification information of the second controller is executed sequentially.
In an embodiment of the disclosure, wherein operative actions corresponding to the instruction include an action of playing, an action of pausing, an action of forwarding, an action of rewinding, an action of skipping the current multimedia file, and an action of adjusting volume.
In an embodiment of the disclosure, the managing method of render includes when a request information sent from the second controller is received, comparing a first authorization level of the first controller that currently has the control right and a second authorization level of the second controller. When it is determined that the second authorization level of the second controller is higher than the first authorization level, the control right is transferred to the second controller, and instructions corresponding to the second controller having the control right in the instruction queue are executed first.
In an embodiment of the disclosure, the request information includes a request information of control right and a request information of cleaning up instruction queue, wherein when the request information of cleaning up instruction queue is received, all instructions corresponding to the first controller in the instruction queue are cleaned up, and the control right is transferred to the second controller.
In an embodiment of the disclosure, the managing method of render includes when the request information of control right having a first code sent from the second controller is received, comparing whether the first code is identical to a preset second code. When the first code is identical to the preset second code, the control right is transferred to the second controller.
The disclosure provides a controller including a generation unit and a request unit. The generation unit generates an instruction, and the instruction has a controller identification information of the controller. The request unit is connected to the generation unit, and sends a request information to a render when the controller does not have a control right of the render, so as to request the control right of the render, wherein the request information includes the controller identification information.
In an embodiment of the disclosure, the request unit sends a request information of cleaning up instruction queue to request for cleaning up all instructions corresponding to another controller that has the control right in an instruction queue of the render.
In an embodiment of the disclosure, the request unit sends the request information having a first code. If the first code is identical to a preset second code, the control right of the render is obtained.
Viewing from still another viewpoint, the disclosure provides a managing method of controller adapted for a controller to control a render. The managing method of controller includes generating an instruction that has a controller identification information of the controller, and when the controller does not have a control right of the render, sending a request information to the render to request the control right of the render, wherein the request information also includes the controller identification information.
In an embodiment of the disclosure, the step of sending the request information to the render includes sending a request information of cleaning up instruction queue to request for cleaning up all instructions corresponding to another controller having the control right in the instruction queue of the render.
In an embodiment of the disclosure, the step of sending the request information to the render includes sending the request information with a first code. In addition, when the first code is identical to a preset second code, the controller obtains the control right of the render.
Based on the above, a render, a controller, and managing methods thereof provided in the disclosure determine which instruction is generated by which controller by adding a corresponding controller identification information to an instruction when the controller sends the instruction, and further develop a concept of control right to avoid the issue of controlling the render alternatively.
In order to make the aforementioned and other features and advantages of the invention more comprehensible, embodiments accompanying figures are described in detail below.
The accompanying drawings are included to provide further understanding, and are incorporated in and constitute a part of this specification. The drawings illustrate exemplary embodiments and, together with the description, serve to explain the principles of the disclosure.
Various manufacturers have been providing products with a function of digital media controller as digital home becomes continuously popularized. In a network of digital home, there may be a plurality of digital media controllers. Therefore, how to avoid the problem that a plurality of digital media controllers control the same digital media render in the same local area network, which results in alternative control, is indeed an important issue. In view of the above, the disclosure provides a controller, a render, and a managing method thereof. In order to make the disclosure more comprehensible, embodiments are described below as examples showing that the disclosure can actually be realized. The embodiments provided herein are only for an illustrative purpose, instead of limiting the scope of the disclosure.
The storage unit 110 includes any kind of fixed or portable random access memory (RAM), read only memory (ROM), flash memory, hard disk, or the like. The storage unit 110 may be configured for saving an instruction queue, and the instruction queue is configured for temporarily saving an instruction from a controller. The controller is, for example, a digital media controller that conforms to the standard of DLNA.
The playback unit 120 is connected to the storage unit 110 and includes a display unit, such as a liquid crystal display (LCD), light emitting diode (LED), or other kinds of display unit. The playback unit 120 may be used to download and play multimedia files that include picture, audio, and video files.
The determination unit 130 is connected to the storage unit 110, receives at least one instruction sent by at least one controller through a network (not shown), and determines whether a controller identification information of each instruction is identical to a controller identification information corresponding to a multimedia file currently played by the render 100. Afterward, the render 100 performs different operations according to a result of determination of the determination unit 130.
First, the storage unit 110 may temporarily save the at least one instruction from the at least one controller in the instruction queue (Step S210), wherein any one of the controller may send at least one instruction. Afterward, if the at least one instruction includes one or more playback instructions, the playback unit 120 follows the one or more playback instructions to download one or more multimedia files from a digital media server (not shown) through the network and play one of the multimedia files (Step S220). The server is, for example, a multimedia server that conforms to the standard of DLNA.
The determination unit 130 further respectively receives the one or more instructions sent from each of the at least one controller through the network, and respectively determines whether a first controller identification information of each instruction is identical to a second controller identification information corresponding to the multimedia file currently played (Step S230). Afterward, when the determination unit 130 determines that the first controller identification information of an instruction is identical to the second controller identification information, the render 100 performs an operative action corresponding to the instruction received (Step S240). The operative action described herein includes actions such as play, pause, forward, rewind, skip the current multimedia file, or volume adjustment. On the contrary, when the determination unit 130 determines that the first controller identification information of an instruction is different from the second controller identification information, the render 100 saves the instruction in the instruction queue of the first storage unit 110 (Step S250).
More specifically, the disclosure utilizes the at least one instruction sent by each of the at least one controller that corresponds to a controller identification information. The controller identification information may include information such as a controller identification code, a number of network card of a controller, or the like. Since any information that may be configured for distinguishing between different controllers may be used as the controller identification information of the disclosure, the information is not limited to the above. For example, it may be set that any instruction sent by a controller A has an identification code exclusive to the controller A, whereas any instruction sent by a controller B has an identification code exclusive to the controller B. Therefore, under a circumstance that the render 100 is playing a multimedia file while an instruction is simultaneously received from a controller, the determination unit 130 of the render 100 determines whether the first controller identification information of the instruction is identical to the second controller identification information corresponding to the multimedia file currently played.
If the first controller identification information of the instruction is identical to the second controller identification information corresponding to the multimedia file currently played, it indicates that the controller previously selecting to play the multimedia file is identical to the controller that corresponds to the instruction currently received. Consequently, the determination unit 130 may determine that the controller generating this instruction has the control right of the render 100. Namely, the render 100 performs a corresponding operative action whenever an instruction from the controller is received. On the contrary, if the first controller identification information of the instruction is different from the second identification information corresponding to the multimedia file, it indicates that the controller previously selecting to play the multimedia file is different from the controller that corresponds to the instruction currently received. Therefore, the determination unit 130 determines that the controller generating the instruction does not have the control right of the render 100.
Simply put, in this embodiment, the render 100 determines that the controller previously selecting to play the multimedia file has the control right. Therefore, the render 100 does not immediately perform an instruction from a different controller, but temporarily saves the instruction from the different controller in the instruction queue of the storage unit 110. In this way, the circumstance in which different controllers control the same render 100 is avoided. Thereby, the issue of alternative control is solved.
Since each instruction is required to have a controller identification information, the render 100 can determine whether the source controllers that generate instructions are identical or not. Therefore, the disclosure further provides a corresponding controller and a managing method of the controller. Technical details of the controller and processes of the managing method of the controller are described in details hereinafter with reference to
A controller 300 includes a generation unit 310 and a request unit 320. The generation unit 310 generates an instruction, which contains a controller identification information of the controller 300 (Step S410). If the controller 300 has the control right of a render (e.g. the render 100 of
The disclosure provides a method of adding controller identification information to an instruction, such that the render is able to tell which received instruction is sent from which controller, so as to further determine which controller has the control right. Thereby, alternative control may be avoided. However, another embodiment is described in detail below to describe in detail how a controller without control right obtains the control right and under what circumstance may the control right be transferred to another controller.
First, in this embodiment, it is assumed that a controller identification information of the first controller 520 is XXX, whereas a controller identification information of the second controller 530 is YYY. It is also assumed that the first controller 520 and the second controller 530 respectively send a plurality of instructions to play a plurality of different multimedia files. In addition, the plurality of instructions are sent in an alternating temporal order.
According to the current standard of DLNA, a render DMR plays the multimedia file A first, then the multimedia file B, and so on. Therefore, for viewers operating with the first controller 520 and the second controller 530, they originally watch the multimedia file played by the render DMR which is originally selected by the first controller 520, but watch the next multimedia file which may be selected by the second controller 530. The viewing mood of the viewers is hence influenced. Consequently, the disclosure provides a method of adding controller identification information, and uses a logical concept to distinguish between multimedia files corresponding to different controller identification information, and save the multimedia files in different logical multimedia queues. As shown in
Referring to
In still another embodiment, referring to
It should be noted that an authorization level of each controller may be configured beforehand by the users or may be determined by a preset authorization level of a controller. The disclosure does not impose any limitation herein. In an embodiment, the request information further includes a request information of cleaning up instruction queue in addition to the request information of control right. When the render 510 receives the request information of cleaning up instruction queue, the storage unit 110 cleans up all of the instructions corresponding to the first controller 520 in the instruction queue 112 and transfers the control right to the second controller 530.
Another embodiment is provided herein for an illustrative purpose. If the render 510 receives the request information of control right having a first code sent by the second controller 530, the render 510 compares the first code with a second code preset in the render 510 to see if the first code is identical to the second code. When the first code and the second code are identical, the render 510 immediately transfers the control right to the second controller 530. An example using extensible markup language (XML) is illustrated below to describe the instruction of transferring control right.
Based on the above, the render, controller and the managing methods thereof provided in the disclosure utilize the exclusive controller identification information added to the instructions sent by the controllers, such that the render is able to tell which instruction is generated by which controller. Thereby, the controller owning the control right is determined. In addition, the instruction queue is configured for saving all instructions to avoid alternative control. Moreover, multimedia files are downloaded according to the playback instruction, and multimedia files not played or operated yet is temporarily saved in the multimedia queue, such that the corresponding multimedia file may be immediately played after the control right is transferred. In this way, the viewers spend less time waiting for downloading. Furthermore, the comparison of authorization levels and use of code extended from the controller identification information allow a more complete controlling function of the DLNA system.
Although the disclosure has been described with reference to the above embodiments, it will be apparent to people having ordinary skill in the art that modifications to the described embodiment may be made without departing from the spirit of the disclosure. Accordingly, the scope of the disclosure will be defined by the attached claims not by the above detailed descriptions.
Number | Date | Country | Kind |
---|---|---|---|
101118972 | May 2012 | TW | national |