The above and other aspects of the present invention will become more apparent by describing in detail exemplary embodiments thereof with reference to the attached drawings, in which:
Exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
Advantages and features of the present invention and methods of accomplishing the same may be understood more readily by reference to the following detailed description of the exemplary embodiments and the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as being limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete and will fully convey the concept of the invention to those skilled in the art, and the present invention will only be defined by the appended claims. Like reference numerals refer to like elements throughout the specification.
The present invention is described hereinafter with reference to flowchart illustrations of user interfaces, methods, and computer program products according to exemplary embodiments of the invention.
Referring to
Here, the term “module” means, but is not limited to, a software or hardware component, such as a Field Programmable Gate Array (FPGA) or an Application Specific Integrated Circuit (ASIC), which executes certain tasks. A module may advantageously be configured to reside in the addressable storage medium, and configured to be executed on one or more processors. Thus, a module may include, by way of example, components, such as software components, object-oriented software components, class components and task components, processes, functions, attributes, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables. The functionality provided for in the components and modules may be combined into fewer components and modules or further separated into additional components and modules.
The receiver 100 receives a software module transmitted from a codec server from an external network. Here, the software module includes an OS, a codec library, a media framework, and a hardware library, and code consisting thereof is called DSP code. The codec may be the MPEG-2, MPEG-4, H.264, or the VC1 codec. That is, the received codec libraries are, for example, the MPEG-2 library and the H.264 library.
The transmitter 120 transmits a codec-request message to the codec server in the external network requesting download of a codec library.
The storage unit 130 stores at least one of the software modules in order to execute an operation of the multimedia content. Here, the storage unit 130 includes a hard disk drive (HDD) and a flash ROM.
The DSP-code generator 140 generates DSP code that plays multimedia content, i.e., it generates a single DSP using a combination of software modules stored in the storage unit 130.
For example, if DSP code supporting MPEG-2 is needed, the DSP-code generator 14 generates the DSP code using a combination of the MPEG-2 library, the OS, the media framework, and the hardware library. Accordingly, the generated DSP code is a MPEG-2 DSP code.
The DSP-code processing unit 150 processes the DSP code generated by the DSP-code generator 140. That is, the DSP-code processing unit 150 decodes the DSP code, and executes the corresponding DSP code in order to play multimedia content.
The controller 160 generates the codec-request message if the codec library playing the multimedia content does not exist in the multimedia player 100, and transmits the codec-request message to the codec server in the external network.
In addition, the controller 160 obtains information on a codec with respect to the multimedia content executed in the multimedia player 100 via a data packet transmitted from a multimedia content provider, and requests the DSP-code generator 140 for DSP code playing the corresponding DSP code when the multimedia content is requested to be played. Hereinafter, a data packet will be described with reference to
The controller 160 also controls functional blocks 110 through 150 composing the multimedia player 100.
Referring to
As a user request to play a multimedia content, a controller 160 requests for DSP code required in executing multimedia content and a DSP-code generator 140 combines software modules stored in a storage unit 130, and generates DSP code.
For example, when MPEG-2 codec (e.g., a codec library 1) is required to play the multimedia content, the DSP-code generator 140 uses a combination of the OS, the codec library, the media framework among software modules stored in the storage unit 130, and the hardware library, and generate DSP code for an MPEG-2 codec.
Then, the DSP-codec generator 140 loads the generated DSP code for the MPEG-2 decoding and the DSP-processing unit 150 decodes the loaded DSP code for MPEG-2 decoding, and executes the multimedia content.
However, when the MPEG-2 codec is not stored in the storage unit 130, the controller 160 generates a codec-request message requesting for a corresponding codec library (e.g., the MPEG-2 library), and transmits the message to the codec server in the external network.
Once the library (e.g., a library 4) has been transmitted from the codec server, the controller 160 stores the codec library (e.g., the codec library 4) in the storage unit 130 and the DSP-code generator generates the corresponding DSP code using the downloaded codec library.
Referring to
Therefore, the codec information on the multimedia content executed in a multimedia player 100 can be determined via the data packet. When multimedia content is selected by a user, DSP code composed of a codec library that can executed the corresponding multimedia content is provided.
First, upon receiving a request from a user to play multimedia content, a controller 160 requests DSP code (e.g. for an MPEG-2 codec) required to play the multimedia content (S510). Here, the controller 160 can obtain information on a codec that executes the multimedia content selected by the user via a data packet.
Next, a DSP-code generator 140 determines whether a corresponding codec library exists in the storage unit 130 in order to generate DSP code requested by the controller 160 (S520).
If it is determined that the corresponding codec library (e.g., the MPEG-2) exists in the storage unit 130 (S530), the DSP-code generator 140 generates the DSP code requested by the controller 160 using a combination of a codec library, an OS, a media framework, and a hardware library stored in the storage unit 130 (S540).
Then, the DSP-codec generator 140 loads the generated DSP code for the MPEG-2 (S550) and the DSP-code processing unit 150 decodes the loaded the DSP code for the MPEG-2, and executes the multimedia content (S560).
In contrast, if it is determined that the corresponding codec library (e.g. the MPEG-2 library) does not exist in the storage unit 130 (S530), the controller 160 generates a codec-request message requesting the codec library (e.g., the MPEG-2 library), and transmits the codec-request message to a codec server in an external network.
Once the corresponding codec library (e.g., the MPEG-2) has been transmitted from a codec server, a receiver 110 receives the transmitted codec library and the storage unit 130 stores the received codec library. The DEP-code generator 140 generates the corresponding DSP.
As a result, time can be saved and a network load can be reduced by receiving only desired modules (e.g., the codec library) in software modules consisting of DSP code
As described above, according to an apparatus and method for generating DSP code using a combination of software modules, the following advantageous effects may be achieved.
First, since only desired modules (e.g., a codec library) are received from a codec server in an external network and a corresponding DSP is generated using a combination of software modules, time required to download the software can be reduced by downloading only the desired software modules.
Second, since only the desired software modules are received and stored, a storage can be efficiently used.
Third, the software module driven in the DSP can be effectively managed.
The exemplary embodiments of the present invention have been explained with reference to the accompanying drawings, but it will be apparent to those skilled in the art that various modifications and changes may be made thereto without departing from the scope and spirit of the invention. Therefore, it should be understood that the above exemplary embodiments are not restrictive but illustrative in all aspects.
Number | Date | Country | Kind |
---|---|---|---|
10-2006-0040046 | May 2006 | KR | national |