The present invention relates to a transcoder disposed on a network.
Conventionally, a content can be provided from a server on a network to a renderer under control of a controller. Concretely, in nonpatent reference 1, a system in which a controller, which is called a control point, controls both a server and a renderer on a network so as to transfer a content in the server to the renderer transferred thereto, and the renderer decodes the content and displays this decoded content is described. In the above-mentioned system, when the format of the content stored in the server differs from any format which the renderer supports, the transcoder in the server converts the format of the content and then provides this content to the renderer.
Patent reference 1 further discloses, as a related technology, an information processing apparatus provided with an adding means for adding information which is used for performing a process on streaming data to the streaming data, a storing means for storing the streaming data to which the information is added, and a transmitting means for transmitting the streaming data including the information which are stored in the storing means, and further including a transcoder which transcodes them to streaming data as information.
Patent reference 2 discloses a transcoder which is provided with a request processing means for receiving a streaming request made by a client from a network to convert the streaming request, and for transmitting the converted streaming request to a server in behalf of the client, a reply processing means for receiving a reply to the streaming request from the server, and for converting the reply to transmit the converted reply to the client, and a transcoder processing means for converting stream data transmitted from the server, and for transmitting the converted stream data to the client according to both client information and content information in the server which are acquired through the transmission of the streaming request and the reply to the streaming request, and which converts the amount of codes of the stream data, and so on properly in such a way as to support for a required band at the time of communications between the client and the server.
[Patent reference 1] JP.2002-342192.A (see paragraphs 0008 and 0011)
[Patent reference 2] JP.2002-374298.A (see paragraph 0193)
[Nonpatent reference 1] UPnP AV Architecture V.83 Jun. 12, 2002, pp. 1 to 22 (Universal Plug and Play Forum—www.upnp.org)
A problem with the above-mentioned conventional methods is that because a transcoder is included in either each server or each renderer according to the methods, in order to increase the number of content formats which can be supported, many transcoders must be prepared in either each server or each renderer.
Although it can be considered that contents which are coded in many formats are prepared in each server in order to make it possible for the system to support for various formats and methods, such a preparation is not realistic because the required number of formats and the required number of methods are huge.
The present invention is made in order to solve the above-mentioned problems, and it is therefore an object of the present invention to provide a transcoder which does not need to prepare many transcoders in either each server or each renderer in order to increase the number of content formats which can be supported, and which can convert a content having various formats which is stored by each server into a content having a format which each renderer can play back, and can provide the content to each renderer.
A transcoder in accordance with the present invention includes: a transcoder module for converting a format of a content stored in a server on a network into a format which is supported by a renderer on the network which plays back the content; and an internal controller for acquiring a content list which is held by the above-mentioned server so as to compare a format of each content described in the above-mentioned acquired content list with a conversion function of the above-mentioned transcoder module and create a transcoder content list in which contents which can be supported are described, and for transmitting a request to acquire a content to the above-mentioned server, the request being transmitted thereto on the basis of the created transcoder content list, and the above-mentioned transcoder module converts a format of the content transmitted from the above-mentioned server into a format which can be supported by the above-mentioned renderer, and transmits the content having the converted format to the above-mentioned renderer.
Therefore, the present invention offers an advantage of being able to eliminate the necessity to prepare many transcoders in either each server or each renderer in order to increase the number of content formats which can be supported, to provide a renderer with a content by assuming one or more servers to be a single server virtually, and to convert each of contents of various formats which each server store into a content having a format which each renderer can play back and then provide this content.
Hereafter, in order to explain this invention in greater detail, the preferred embodiments of the present invention will be described with reference to the accompanying drawings.
In
The server 2 stores one or more contents of the format A and the server 3 stores one or more contents of the format B, and the format of a content which the server 2 provides is not necessarily in agreement with that of a content which the server 2 provides. According to a playback request to playback a content from the controller 5 which has received a request from the user 6, the renderer 4 transmits an acquisition request to acquire the content to the transcoder 1, receives and decodes the content whose format has been converted into the format Z by the transcoder 1, and plays back the decoded content.
In the example shown in
Various types of contents are included in contents which can be stored in the above-mentioned servers 2 and 3. For example, moving image data which comply with various standards, such as MPEG (Moving Picture Experts Group) 2, MPEG4 Part2, MPEG4 Part10□AVC (Advanced Video Coding), and WMV (Windows (registered trademark) Media Video), static images which comply with various standards, such as JPEG (Joint Photographic Experts Group), Bitmap, and PNG (Portable Network Graphics), and audio data which comply with various standards, such as LPCM (Linear Pulse Code Modulation), MP3 (Moving Picture Experts Group-2 Audio Layer-3), AAC (Advanced Audio Coding), and MPEG4, are included in contents which can be stored in the above-mentioned servers 2 and 3.
In step ST1, the internal controller 11 of the transcoder 1 searches through the servers 2 and 3 on the network so as to acquire the content lists 101 and 102 as shown in
In step ST2, the internal controller 11 of the transcoder 1 compares the content formats described in the acquired content lists 101 and 102 with the conversion functions of the transcoder modules 12 and 13 which the transcoder 1 has therein so as to determine content formats whether the transcoder 1 can support, and creates a transcoder content list 103 as shown in
The controller 5, in step ST3, acquires the transcoder content list 103 as shown in
The controller 5, in step ST5, compares the transcoder content list 103 acquired in above-mentioned step ST3 with the format list 104 acquired in above-mentioned step ST4, selects the content which the content playback system is requested to play back by the user 6 from the available contents, and transmits a playback request to play back the content including the address for specifying the content which the content playback system is requested to play back by the user 6 to the renderer 4.
At that time, in a case in which the content playback system has been requested to play back a content of the format A or B by the user 6, the controller 5 specifies, as the address for specifying the content, the address of the server 2 or 3 supporting format A or B in the transcoder content list 103, whereas in a case in which the content playback system has been requested by the user 6 to play back a content of the format Z which can be supported by the renderer 4, the controller 5 specifies, as the address for specifying the content, e.g. the address of the transcoder 1 which converts contents to the format Z.
The renderer 4, in step ST6, receives the playback request from the controller 5, and refers to the address for specifying the content and transmits an acquisition request to acquire the content to either the transcoder 1 or the server 2 or 3. More specifically, when the renderer 4 receives a playback request to play back a content of the format A or B, the renderer 4 transmits an acquisition request to acquire the content to the server 2 or 3, whereas when the renderer 4 receives a playback request to play back a content of the format Z, the renderer 4 transmits an acquisition request to acquire the content to the transcoder 1.
The internal controller 11 of the transcoder 1, in step ST7, analyzes the acquisition request to acquire the content which the transcoder 1 has received, and refers to the address for specifying the content and transfers the acquisition request to acquire the content to the server 2 or 3 which stores the content which the content playback system has been requested to play back.
The server 2 or 3, in step ST8, transmits the content of the format A or B which the server 2 or 3 has been requested to transmit by the internal controller 11 of the transcoder 1 to the transcoder module 12 or 13 of the transcoder 1. The server 2 which has received the acquisition request to acquire the content of the format A directly from the renderer 4 transmits the content of the format A which the server 2 has been requested to transmit to the renderer 4. This example assumes renderer 4 can also handle format A.
The transcoder module 12 or 13 of the transcoder 1, in step ST9, converts the content of the format A or B transmitted from the server 2 or 3 into an equivalent content of the format Z, and then transmits the content whose format is converted into the format Z to the renderer 4.
The renderer 4 receives either the content whose format is converted into the format Z and which is transmitted from the transcoder 1 or the content of the format A which is transmitted from the server 2, and then plays back the content.
The internal controller 11 of the transcoder 1, in step ST11, searches through the servers 2 and 3 on the network.
The internal controller 11 then, in step ST12, acquires the content lists 101 and 102 of the servers 2 and 3, and describes the contents of the content lists 101 and 102 in the transcoder content list 103. Through this process, for example, the pieces of information in the fifth through final rows of the transcoder content list 103 shown in
The internal controller 11, in step ST13, sets the number of contents included in the acquired content lists 101 and 102 to N.
The internal controller 11 then, in step ST14, sets a variable i to 1.
The internal controller 11 further, in step ST15, expresses the i-th content included in the content lists 101 and 102 as Ci, and also expresses the format of the content Ci as Fi.
The internal controller 11, in step ST16, sets the number of transcoder modules which the transcoder 1 has to M.
The internal controller 11 then, in step ST17, sets a variable j to 1.
The internal controller 11 further, in step ST18, expresses the j-th transcoder module included in the transcoder 1 as Tj.
The internal controller 11, in step ST19, judges whether the transcoder module Tj can convert the format Fi.
When judging that the transcoder module Tj can convert the format Fi, the internal controller 11, in step ST20, sets, as a support format, the format Fi and, as information about the content Ci in the transcoder content list 103 shown in
In contrast, when judging that the transcoder module Tj cannot convert the format Fi, the internal controller shifts to step ST21.
The internal controller 11, in step ST21, adds 1 to the variable j.
The internal controller 11 then, in step ST22, checks to see whether or not the variable j is equal to the number of transcoder modules M, and, when the variable j is not equal to the number of transcoder modules M, returns to the process of above-mentioned step ST18, or shifts to step ST23 otherwise.
The internal controller 11, in step ST23, adds 1 to the variable i.
The internal controller 11 then, in step ST24, checks to see whether or not the variable i is equal to the number of contents N, and, when the variable i is not equal to the number of contents N, returns to the process of above-mentioned step ST15, or ends this processing otherwise.
As a result of repeating the processes in above-mentioned steps ST13 to ST24, for example, the pieces of information in the first through fourth rows of the transcoder content list 103 shown in
As mentioned above, in accordance with this Embodiment 1, the transcoder 1 is arranged on the network independently of the server 2 or 3, or the renderer 4, and the transcoder 1 compares the content formats which are described in the content lists 101 and 102 of the servers 2 and 3 with the conversion functions of the transcoder modules 12 and 13 which the transcoder 1 has therein, and determines content formats which the transcoder 1 can support and creates a transcoder content list 103. The transcoder 1 also receives a content which the system has been requested to acquire from the server 2 or 3 by referring to the created transcoder content list 103, and converts the content into an equivalent content having a format which can be supported by the renderer 4 and transmits this content to the renderer 4. Therefore, the present embodiment offers an advantage of being able to eliminate the necessity to prepare many transcoders in either each server or each renderer in order to increase the number of content formats which can be supported, to provide a renderer with a content by assuming one or more servers to be a single server virtually, and to convert each of contents of various formats which each server store into an equivalent content having a format which each renderer can play back and then provide this content.
In accordance with this Embodiment 2, in a case in which no required supportable transcoder module is disposed within the transcoder 1, the content playback system searches for the transcoder module 14 or 15 on the network, and incorporates, e.g. the transcoder module 14 which the content playback system requires into the system by copying or installing the transcoder module 14 and then uses this transcoder module.
The internal controller 11 of the transcoder 1 searches through the server 7 which stores contents of a format C on the network so as to acquire a content list which the server 7 holds.
The internal controller 11 compares the content formats which are described in the content list, which the internal controller has acquired, with the conversion functions of the transcoder modules 12 and 13 which the transcoder 1 has therein, and determines content formats which the transcoder 1 can support.
In a case in which no required transcoder module is disposed within the transcoder 1, the internal controller 11 searches for the transcoder module 14 on the network which can convert the format C which contents stored in the server 7 have into the format Z which can be supported by the renderer 4, and incorporates the transcoder module 14 into the transcoder 1 by copying or installing the transcoder module 14. At that time, the internal controller 11 searches for all the transcoder modules on the network and extracts and incorporates the transcoder module 14, or, in a case in which the internal controller 11 acquires the address of the transcoder module 14 which can convert the format C into the format Z beforehand, searches for and incorporates the transcoder module 14 into the transcoder by using the address.
The internal controller 11 then creates a transcoder content list 103 by using the content list acquired from the server 7, and by using the transcoder modules 12, 13, and 14 which the transcoder 1 has therein.
The transcoder module 14 which is incorporated into the interior of the transcoder 1 converts the content of the format C which is transmitted by the server 7 in response to the acquisition request to acquire the content into an equivalent content of the format Z, and transmits this content to the renderer 4.
The other processes are the same as those of above-mentioned Embodiment 1.
As mentioned above, this Embodiment 2 offers the same advantage as that provided by above-mentioned Embodiment 1. Furthermore, this Embodiment 2 offers another advantage of being able to, in a case in which the transcoder 1 is not provided with any required transcoder module, provide contents of various formats by searching for and using a transcoder module on the network.
As mentioned above, the transcoder in accordance with the present invention is suitable for, for example, a system in which the transcoder converts each of contents of various formats which a server stores into an equivalent content having a format which a renderer can play back, and provides the content to the renderer.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/JP2005/023945 | 12/27/2005 | WO | 00 | 6/25/2008 |