KR100619038B1 - Multimedia device having a firmware built-in - Google Patents

Multimedia device having a firmware built-in Download PDF

Info

Publication number
KR100619038B1
KR100619038B1 KR1020040052318A KR20040052318A KR100619038B1 KR 100619038 B1 KR100619038 B1 KR 100619038B1 KR 1020040052318 A KR1020040052318 A KR 1020040052318A KR 20040052318 A KR20040052318 A KR 20040052318A KR 100619038 B1 KR100619038 B1 KR 100619038B1
Authority
KR
South Korea
Prior art keywords
codec
program
firmware
multimedia
codec program
Prior art date
Application number
KR1020040052318A
Other languages
Korean (ko)
Other versions
KR20060003437A (en
Inventor
김성주
Original Assignee
삼성전자주식회사
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
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020040052318A priority Critical patent/KR100619038B1/en
Publication of KR20060003437A publication Critical patent/KR20060003437A/en
Application granted granted Critical
Publication of KR100619038B1 publication Critical patent/KR100619038B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/21Employing a record carrier using a specific recording technology

Abstract

본 발명은 편리한 코덱 업데이트 기능을 제공하는 펌웨어를 내장한 멀티미디어 장치에 관한 것으로, 보다 구체적으로 펌웨어가 내장된 멀티미디어 장치에 있어서, 펌웨어는 통일된 인터페이스를 가지도록 모듈화된 적어도 하나의 코덱 프로그램과, 코덱 프로그램을 실행시키며 코덱 프로그램들을 모듈 단위로 업데이트하는 코덱 관리자를 포함하는 것을 특징으로 한다.The present invention relates to a multimedia device incorporating firmware that provides a convenient codec update function. More particularly, in a multimedia device in which firmware is embedded, the firmware includes at least one codec program modularized to have a uniform interface, and a codec. It includes a codec manager that executes the program and updates the codec programs in module units.

이에 따라, 사용자는 A/S 센터의 전문가의 도움을 받거나, 업데이트 후 멀티미디어 장치를 재부팅시키는 번거로움 없이, 편리하게 최신 버전의 멀티미디어 서비스를 받을 수 있다. Accordingly, the user can conveniently receive the latest version of the multimedia service without the help of an expert in the A / S center or the hassle of rebooting the multimedia device after the update.

Description

펌웨어가 내장된 멀티미디어 장치{Multimedia device having a firmware built-in}Multimedia device having a firmware built-in

도 1은 일반적인 멀티미디어 장치의 하드웨어 구성을 나타내는 도면,1 is a view showing a hardware configuration of a general multimedia device,

도 2a 및 도 2b는 본 발명에 따른 모듈화된 코덱(codec)을 탑재한 펌웨어 구성의 일 실시예 들을 나타내는 도면,2A and 2B illustrate one embodiment of a firmware configuration equipped with a modular codec according to the present invention;

도 3은 본 발명에 따른 모듈화된 코덱의 통일된 인터페이스 구성의 일 실시예를 나타내는 도면,3 illustrates an embodiment of a unified interface configuration of a modular codec according to the present invention;

도 4는 본 발명에 따른 펌웨어가 내장된 멀티미디어 장치에서 멀티미디어 서비스를 제공하는 방법을 나타내는 플로 차트,4 is a flowchart illustrating a method of providing a multimedia service in a multimedia device with firmware according to the present invention;

도 5는 본 발명에 따른 펌웨어가 내장된 멀티미디어 장치에서 코덱을 업데이트하는 방법을 나타내는 플로 차트이다.5 is a flowchart illustrating a method of updating a codec in a multimedia device with firmware according to the present invention.

본 발명은 멀티미디어 장치에 관한 것으로, 보다 구체적으로 편리한 코덱 업데이트 기능을 제공하는 펌웨어를 내장한 멀티미디어 장치에 관한 것이다.The present invention relates to a multimedia device, and more particularly, to a multimedia device with embedded firmware that provides a convenient codec update function.

최근 들어 DVD 복합기, 개인 디지털 녹화기(Personal Digital Recoder: 이하 PVR이라 약칭함), MP3 플레이어, 동영상 기능을 제공하는 휴대폰 등 다양한 멀티미디어 서비스를 제공하는 멀티미디어 장치들이 각광받고 있다. 특히, 다양한 형식의 오디오 및 비디오 파일들을 하나의 장치에서 재생/녹화/전송하는 디지털 컨버전스화(Digital Convergence)가 커다란 이슈가 되고 있다. Recently, multimedia devices that provide various multimedia services such as a DVD multifunction device, a personal digital recorder (hereinafter, referred to as a PVR), an MP3 player, and a mobile phone that provide a video function have been in the spotlight. In particular, digital convergence (playing / recording / transmitting various types of audio and video files in one device) has become a big issue.

컨버전스(convergence)는 보통 ‘융합’으로 번역하는데, 기술 통합, 하이브리드(hybrid), 잡종적 지식, 퓨전 등과 맥을 같이하는 트랜드를 나타내는 표현이다. 따라서, 디지털 컨버전스란, 디지털을 매개로 가전(Consumer Electronics: CE), 정보통신기술(IT), 컨텐츠, 서비스 등이 서로 유기적으로 통합되는 경향을 말한다. 특히, 복합기, 카메라폰, 휴대폰뱅킹, 텔레메틱스 등 IT와 가전 분야에서 디지털 컨버전스화가 급속하게 진행되고 있다.Convergence is usually translated as "fusion," a term that describes the trends that coincide with technology integration, hybrid, hybrid knowledge, fusion, and so on. Accordingly, digital convergence refers to a trend in which consumer electronics (CE), information and communication technology (IT), contents, and services are organically integrated with each other through digital. In particular, digital convergence is rapidly progressing in the fields of IT and consumer electronics such as multifunction devices, camera phones, mobile phone banking, and telematics.

이러한 디지털 컨버전스화에 따라, 하나의 멀티미디어 장치에서 다양한 종류의 오디오 또는 비디오 파일들을 재생/녹화/전송할 필요가 발생한다. 따라서, 하나의 멀티미디어 장치에서 다양한 종류의 코덱(codec: coder and decoder)을 지원해야할 필요가 있다. 특히 새로운 기술의 발전에 따라, 혹은 사용자들의 선택에 따라 코덱을 변경하거나 업데이트해야 하는 경우가 많이 발생한다.With such digital convergence, there is a need to play / record / transmit various kinds of audio or video files in one multimedia device. Therefore, it is necessary to support various kinds of coders (codec: coder and decoder) in one multimedia device. In particular, there are many cases in which the codec needs to be changed or updated according to the development of new technology or the choice of users.

그러나, 종래의 일반적인 멀티미디어 장치는 퍼스널 컴퓨터(Personal Computer: PC)와는 달리 소프트웨어의 업데이트가 매우 불편하다. 대표적인 예로 복합기나 개인 디지털 녹화기(PVR) 등과 같은 멀티미디어 가전의 경우, 소프트웨어를 내장하고 있는 펌웨어(firmware) 전체를 업그레이드해야 하는 불편함이 있었다.However, the conventional multimedia device is very inconvenient to update the software, unlike a personal computer (PC). As a representative example, in the case of a multimedia home appliance such as a multifunction device or a personal digital recorder (PVR), it is inconvenient to upgrade the firmware (firmware) in which software is embedded.

보다 구체적으로, 도 1은 일반적인 멀티미디어 장치의 하드웨어 구성을 나타 내는 도면이다. 도 1을 참조하면, 일반적인 멀티미디어 장치는, 중앙처리장치(CPU)(101), 플래쉬롬(Flash-ROM)(102), 데이터 메모리(RAM)(103), 네트워크 어댑터(104), 저장 매체(105), 하드웨어 코덱(106), 및 입출력 장치(107 및 108)를 구비한다.More specifically, FIG. 1 is a diagram illustrating a hardware configuration of a general multimedia device. Referring to FIG. 1, a general multimedia device includes a central processing unit (CPU) 101, a flash ROM (Flash-ROM) 102, a data memory (RAM) 103, a network adapter 104, and a storage medium ( 105, a hardware codec 106, and input / output devices 107 and 108.

CPU(101)는 전체 멀티미디어 장치의 재생/녹화/전송을 제어한다. 플래쉬롬(102)은, 멀티미디어 장치의 운영체제(Operating System: OS)와 같은 시스템 프로그램과, 멀티미디어 서비스를 제공하기 위한 소프트웨어 코덱을 포함하는 어플리케이션 프로그램 등이 저장되는 비휘발성 메모리이다. 시스템 프로그램을 커널(kernel)이라고도 한다. 또한, 이와 같이 플래쉬롬에 탑재되는 시스템 프로그램을 비롯한 멀티미디어 서비스를 제공하는 소프트웨어들을 펌웨어(firmware)라고 한다. 일반적으로 펌웨어의 업데이트를 위해 수정이 가능한 플래쉬 타입의 메모리가 사용된다.The CPU 101 controls the playback / recording / transmission of the entire multimedia device. The flash ROM 102 is a nonvolatile memory in which a system program such as an operating system (OS) of a multimedia device, an application program including a software codec for providing a multimedia service, and the like are stored. System programs are also called kernels. In addition, software that provides a multimedia service including a system program mounted on the flash ROM is called firmware. Generally, a flash type memory is used to update the firmware.

데이터 메모리(103)는, 멀티미디어 시스템에서 사용하는 메모리로서, 내부 메모리라고도 한다. 중간 버퍼, 중간 계산 결과를 저장하는 임시 메모리이다. 펌웨어에 포함되는 어플리케이션 프로그램들은 플래쉬롬(102)으로부터 데이터 메모리(103)로 로드되어 실행된다. The data memory 103 is a memory used in a multimedia system and is also called an internal memory. Intermediate buffer, temporary memory for storing intermediate calculation results. Application programs included in the firmware are loaded into the data memory 103 from the flash ROM 102 and executed.

네트워크 어댑터(104)는, 외부의 네트워크와 연결하기 위한 인터페이스로서, TCP/IP 기반의 인터넷 등에 연결될 수 있다. 적절한 네트워크 어댑터를 통해, 멀티미디어 장치는, 이더넷(Ethernet), 종합디지털통신망(Integrated Services Digital Network: ISDN), 전력선이동통신망(Power Line Control: PLC), 무선 통신 망(Wireless Network)등에 접속할 수 있다.The network adapter 104 is an interface for connecting to an external network and may be connected to the Internet based on TCP / IP. Through appropriate network adapters, multimedia devices can connect to Ethernet, Integrated Services Digital Network (ISDN), Power Line Control (PLC), Wireless Network, and the like.

저장 매체(105)는, 내부 메모리와는 다른 별도의 외부 기억 장치이다. 씨디롬(CD-ROM), 디브이디(DVD), 하드디스크(HDD), 메모리 카드(memory card)등과 같은 매체(media)가 사용된다. 멀티미디어 데이터를 읽거나 기록하는데 사용된다. The storage medium 105 is an external storage device that is different from the internal memory. Media such as a CD-ROM, a DVD, a hard disk (HDD), a memory card, and the like are used. Used to read or record multimedia data.

하드웨어 코덱(106)은, 비디오 데이터 및 오디오 데이터 등의 멀티미디어 데이터를 처리하는 하드웨어 인코더(encoder) 및 디코더(decoder)를 말한다. 비디오 데이터 및 오디오 데이터를 압축하거나, 압축해제 하거나, 영상 화질의 개선, 음질의 개선 등의 멀티미디어 장치 고유의 기능을 수행하는 부분이다. 하드웨어 코덱과는 별도로, 전술한 바와 같이 플래쉬롬(102)에는 펌웨어로서 소프트웨어 코덱이 포함된다. 물론, 멀티미디어 장치의 스펙에 따라 하드웨어 코덱 또는 소프트웨어 코덱 중 일부만을 제공할 수도 있다.The hardware codec 106 refers to a hardware encoder and decoder that processes multimedia data such as video data and audio data. It is a part that performs unique functions of multimedia devices such as compressing or decompressing video data and audio data, improving image quality, and improving sound quality. Apart from the hardware codec, as described above, flashrom 102 includes a software codec as firmware. Of course, some of the hardware codec or software codec may be provided according to the specification of the multimedia device.

입출력 장치(107 및 108)는, 오디오 데이터 및 비디오 데이터와 같은 멀티미디어 데이터를 입출력 또는 송수신하는 장치이다. 디지털 방송을 재생 또는 기록하기 위한 디지털 튜너가 그 예이다.The input / output devices 107 and 108 are devices for inputting or receiving or transmitting multimedia data such as audio data and video data. An example is a digital tuner for playing or recording digital broadcasts.

전술한 바와 같이 일반적인 멀티미디어 장치는 멀티미디어 데이터의 재생/압축/기록 등과 같은 기능을 수행하며, 이를 위해 소프트웨어 및/ 또는 하드웨어 코덱을 구비한다. 또한, 저장 매체에 기록된 멀티미디어 데이터를 내부 메모리로 로드하여 재생하거나, 멀티미디어 데이터를 압축하여 저장 매체에 기록한다.As described above, a general multimedia device performs a function such as playing / compressing / recording multimedia data, and includes a software and / or hardware codec for this purpose. In addition, the multimedia data recorded in the storage medium is loaded into the internal memory for reproduction, or the multimedia data is compressed and recorded in the storage medium.

이상의 하드웨어 구성에 기초하여 멀티미디어 장치가 멀티미디어 서비스를 제공하는 과정을 살펴보면 다음과 같다. A process of providing a multimedia service by a multimedia device based on the hardware configuration described above is as follows.

예를 들어 마이크로 소프트 사의 WMV(Windows Media Video) 포맷에 따른 영상이 담긴 DVD를 재생하는 서비스를 제공하고자 하는 경우, 먼저 DVD 라는 저장 매체에 기록된 WMV 파일 데이터를 읽는다. 읽어들인 파일 데이터는 하드웨어 코덱이나 CPU에 탑재된 소프트웨어 코덱에 의해 디코딩 된다. 즉, 플래쉬롬(102)에 기록된 시스템 프로그램 및 코덱 프로그램이 내부 메모리(103)로 로드되어 CPU의 제어를 받아 WMV 파일을 디코딩한다. 하드웨어 코덱을 사용하는 경우에도 내부 메모리에 로드된 시스템 프로그램 및 코덱 프로그램이 디코딩과정을 제어한다. 디코딩된 결과는 내부 메모리(103)에 저장되고, 출력 장치(107)를 통해 NTSC 또는 VGA 신호와 같은 아날로그 신호로 변환되어 디스플레이 된다. 오디오 데이터도 유사한 과정을 통해 아날로그 신호로 변환되어 출력 장치(107)를 통해 출력된다. 나아가, 인터넷과 같은 외부 TCP/IP망에 연결하기 위한 네트워크 어댑터(107)를 포함하는 경우, 네트워크 상의 서버로부터 주문형 비디오(Video on Demand: VOD) 서비스 또는 주문형 오디오(Audio on Demand: AOD) 서비스를 받을 수도 있으며, 다른 멀티미디어 장치에 저장된 멀티미디어 데이터의 스트리밍(streaming) 서비스를 받을 수도 있다.For example, if you want to provide a service that plays DVDs containing images in Microsoft's Windows Media Video (WMV) format, first read the WMV file data recorded on a storage medium called DVD. The read file data is decoded by a hardware codec or a software codec mounted on the CPU. That is, the system program and codec program recorded in the flash ROM 102 are loaded into the internal memory 103 to be decoded by the CPU under the control of the CPU. Even when using a hardware codec, the system program and codec program loaded in the internal memory control the decoding process. The decoded result is stored in the internal memory 103 and converted into an analog signal such as an NTSC or VGA signal through the output device 107 for display. Audio data is also converted into analog signals through a similar process and output through the output device 107. Furthermore, in the case of including a network adapter 107 for connecting to an external TCP / IP network such as the Internet, a Video on Demand (VOD) service or an Audio on Demand (AOD) service is provided from a server on the network. In addition, the device may receive a streaming service of multimedia data stored in another multimedia device.

그러나, 만약 WMV 코덱의 새로운 버전이 등장하는 경우, 또는 WMV 외에 새로운 H.264 코덱을 지원하고자 하는 경우에는 플래쉬롬(102)에 탑재된 펌웨어의 업그레이드가 필요하다. 다만, 하드웨어 코덱으로만 구성된 멀티미디어 장치의 경우에는 펌웨어의 업그레이드 자체가 불가능하다. 즉, 소프트웨어 코덱을 포함하는 경우에 한해 플래쉬롬에 탑재된 펌웨어를 업그레이드해야 한다. 이 때, 펌웨어의 업 그레이드를 위해서는 펌웨어 전체를 CD-ROM 디스크, 메모리 카드, 인터넷 등을 통해 업데이트 하여야 한다. 이를 위해 플래쉬롬 억세스 모듈은, 저장 매체 또는 네트워크를 통해 새로운 펌웨어를 읽어들여 내부 메모리(RAM)에 로드하고, 이를 다시 플래쉬롬의 특정 부분에 덮어 쓴다(overwrite).However, if a new version of the WMV codec appears, or if you want to support a new H.264 codec in addition to WMV, it is necessary to upgrade the firmware mounted on the flash ROM (102). However, in the case of a multimedia device configured only with a hardware codec, firmware upgrade itself is impossible. In other words, the firmware installed in the flash ROM should be upgraded only when the software codec is included. At this time, in order to upgrade the firmware, the entire firmware must be updated through a CD-ROM disk, a memory card, and the Internet. To this end, the flashrom access module reads new firmware via a storage medium or network, loads it into internal memory (RAM), and overwrites a specific portion of the flashrom again.

그러나, 펌웨어 전체를 업데이트 하는 것은 사용자 입장에서 매우 복잡하고 어려운 과정이다. 따라서, A/S 센터를 이용하여 전문가의 도움을 받아야 하는 불편함이 있었다. 또한, 펌웨어 전체를 업데이트하고 나면, 멀티미디어 장치를 껐다가 다시 켜야 하는 불편함도 있었다. 나아가, 멀티미디어 서비스를 받는 중에는 펌웨어의 업데이트가 불가능한 문제점도 있었다.However, updating the entire firmware is a very complicated and difficult process for the user. Therefore, there was a discomfort to seek professional help using the after-sales center. In addition, after updating the entire firmware, there was a inconvenience of turning off and on the multimedia device again. In addition, there was a problem that the firmware can not be updated while receiving a multimedia service.

따라서, 본 발명의 기술적 과제는 전술한 문제점을 해결하기 위하여, 편리한 코덱 업데이트 기능을 제공하는 펌웨어를 내장한 멀티미디어 장치를 제공하는 것이다.Accordingly, the technical problem of the present invention is to provide a multimedia device incorporating firmware that provides a convenient codec update function in order to solve the above problems.

전술한 기술적 과제는, 본 발명에 따라 펌웨어가 내장된 멀티미디어 장치에 있어서, 펌웨어는 통일된 인터페이스를 가지도록 모듈화된 적어도 하나의 코덱 프로그램과, 코덱 프로그램을 실행시키며 코덱 프로그램들을 모듈 단위로 업데이트하는 코덱 관리자를 포함하는 것을 특징으로 하는 멀티미디어 장치에 의해 달성된다.In the above-described technical problem, in a multimedia device in which firmware is embedded, the firmware includes at least one codec program modularized to have a unified interface, and a codec that executes the codec program and updates the codec programs in module units. It is achieved by a multimedia device characterized in that it comprises a manager.

상기 코덱 프로그램은, 동적으로 링크되는 플러그인(plug-in) 방식의 프로그램인 것이 바람직하며,The codec program is preferably a plug-in type program that is dynamically linked.

상기 코덱 프로그램은, 펌웨어에 내장된 적어도 하나의 코덱 프로그램과, 저장 매체나 네트워크로부터 다운로드된 적어도 하나의 코덱 프로그램을 포함하는 것이 바람직하다.The codec program preferably includes at least one codec program embedded in firmware and at least one codec program downloaded from a storage medium or a network.

또한, 상기 통일된 인터페이스는, 해당 코덱 프로그램의 버전 정보를 포함하며, 코덱 관리자는, 버전 정보를 이용하여, 동일한 포맷에 대응하는 복수의 코덱 프로그램이 존재하는 경우, 최신 버전의 코덱 프로그램을 선택하여 다운로드하는 하는 것이 바람직하다.In addition, the unified interface includes version information of the corresponding codec program, and if a plurality of codec programs corresponding to the same format exist, the codec manager selects the latest version of the codec program by using the version information. It is desirable to download.

상기 통일된 인터페이스는, 펌웨어에 탑재된 복수의 코덱 프로그램들 중 해당 코덱 프로그램이 적용되는 순서를 나타내는 우선순위 정보를 포함하며, 코덱 관리자는 우선 순위 정보를 이용하여 우선순위가 가장 높은 코덱 프로그램을 실행시키는 것이 바람직하다.The unified interface includes priority information indicating the order in which the corresponding codec program is applied among a plurality of codec programs mounted in the firmware, and the codec manager executes the codec program having the highest priority using the priority information. It is preferable to make it.

또한, 상기 코덱 관리자는, 우선순위 정보를 참조하여 그 우선순위 순서대로 펌웨어에 탑재된 복수의 코덱 프로그램들을 시험(probe)하여, 소정의 멀티미디어 서비스를 제공하기 위해 필요한 코덱 프로그램을 알아내는 것이 바람직하다.In addition, the codec manager, by referring to priority information, probes a plurality of codec programs mounted in firmware in order of priority, and finds a codec program necessary to provide a predetermined multimedia service. .

또한, 상기 코덱 관리자는, 멀티미디어 서비스를 제공하면서 코덱 프로그램을 업데이트하는 것이 바람직하며,In addition, the codec manager, it is preferable to update the codec program while providing a multimedia service,

상기 코덱 관리자는, 새로운 버전의 코덱을 업데이트하는 경우, 업데이트 될 코덱 프로그램과 이전 버전의 코덱 프로그램과의 차분 데이터를 다운로드하여 펌웨어를 업데이트 하는 것이 특히 바람직하다.When the codec manager updates a new version of the codec, it is particularly preferable to update firmware by downloading difference data between the codec program to be updated and the codec program of the previous version.

한편, 본 발명의 다른 분야에 따르면 전술한 기술적 과제는, 멀티미디어 장 치의 펌웨어를 업데이트하는 방법에 있어서, 저장 매체 또는 네트워크로부터 통일된 인터페이스를 가지도록 모듈화된 적어도 하나의 코덱 프로그램을 모듈 단위로 다운로드하는 단계; 및 다운로드된 코덱 프로그램을 펌웨어의 소정의 영역에 기록하는 단계를 포함하는 것을 특징으로 하는 업데이트 방법에 의해 달성된다.On the other hand, according to another field of the present invention, in the method for updating the firmware of a multimedia device, the method for downloading at least one codec program modularized to have a unified interface from a storage medium or a network in a module unit step; And recording the downloaded codec program in a predetermined area of the firmware.

이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 2a 및 도 2b는 본 발명에 따른 모듈화된 코덱(codec)을 탑재한 펌웨어의 구성의 일 실시예들을 나타내는 도면이다.2A and 2B are diagrams illustrating embodiments of a configuration of firmware having a modular codec according to the present invention.

본 발명에 따른 모듈화된 코덱을 탑재한 펌웨어는 재프로그램이 가능한 비휘발성 메모리인 플래쉬롬의 각 영역을 계층적으로 나누어 사용한다. 도 2a 및 도 1을 참조하면, 펌웨어는 부트 로더(201), 시스템 프로그램(202), 코덱 관리자 및 내장 코덱(203), 및 외장 코덱(204)을 포함한다.The firmware equipped with the modular codec according to the present invention uses each region of the flash ROM, which is a reprogrammable nonvolatile memory, in a hierarchical manner. 2A and 1, the firmware includes a boot loader 201, a system program 202, a codec manager and an embedded codec 203, and an external codec 204.

부트 로더(boot loader)(201)는, 플래쉬롬(102)에 탑재된 시스템 프로그램(202)을 읽어 내부 메모리(103)에 로드한다.The boot loader 201 reads the system program 202 mounted in the flash ROM 102 and loads it into the internal memory 103.

시스템 프로그램(202)은, 멀티미디어 장치를 운영하는 시스템 소프트웨어로서, 부트 로더에 의해 내부 메모리에 로드되어 멀티미디어 장치의 재생/기록/전송 등의 전 과정을 총괄하여 운영한다. 시스템 프로그램에는 PSOS, Linux, Vxworks, Window CE 등과 같은 운영체제 프로그램이 포함되며, 파일 시스템 관리자, 플래쉬롬 관리자 등이 더 포함될 수 있다. The system program 202 is a system software for operating a multimedia device. The system program 202 is loaded into an internal memory by a boot loader to collectively operate the entire process of playing, recording, and transmitting the multimedia device. The system program may include an operating system program such as PSOS, Linux, Vxworks, or Window CE, and may further include a file system manager and a flash ROM manager.

본 발명에 따르면, 코덱 프로그램을 내장 코덱과 외장 코덱으로 나눈다. 내 장 코덱(203)은 멀티미디어 장치가 출시될 때 탑재되는 펌웨어에 포함되는 코덱들을 말한다. 멀티미디어 장치의 출시 후에 업데이트 되는 코덱들은 외장 코덱(204) 영역에 저장된다. 코덱 관리자(203)는 내장 코덱(203) 및 외장 코덱의 실행과 업데이트를 제어한다. 즉, 본 발명에 따른 멀티미디어 장치는 출시 초기에는 내장 코덱 들만을 이용하여 멀티미디어 서비스를 제공하지만, 외장 코덱 들이 업데이트 됨에 따라 내장 코덱과 외장 코덱을 함께 사용하여 멀티미디어 서비스를 제공한다. 이에 따라, 다양한 형태의 코덱을 이용한 멀티미디어 서비스가 가능하다.According to the present invention, a codec program is divided into an internal codec and an external codec. The built-in codec 203 refers to codecs included in firmware loaded when a multimedia device is released. Codecs that are updated after the release of the multimedia device are stored in the external codec 204 region. The codec manager 203 controls the execution and update of the built-in codec 203 and the external codec. That is, the multimedia apparatus according to the present invention provides a multimedia service using only internal codecs at the beginning of the market, but as the external codecs are updated, the multimedia apparatus provides a multimedia service using both the internal codec and the external codec. Accordingly, multimedia services using various codecs are possible.

보다 구체적으로, 본 발명에 따른 내장 코덱과 외장 코덱은 통일된 인터페이스를 가지도록 설계된다. 즉, 오브젝트(object)와 같은 형태로 모듈화된다. 멀티미디어 장치가 다양한 형태의 코덱을 지원함과 동시에 펌웨어의 업데이트가 편리하고 효율적으로 수행되도록 하기 위해서이다. 통일된 인터페이스에 대해서는 후술한다. 또한, 전술한 바와 같이 내장 코덱과 외장 코덱으로 나뉘어 별도의 영역에 저장된다. 내장 코덱은, 펌웨어 업데이트의 편의성과 효율성을 위하여 후술하는 바와 같이 통일된 인터페이스로 기술되며, 도시된 바와 같이 코덱 관리자와 함께 일체형으로 프로그램 된다. 내장 코덱은 코덱 관리자와 더불어 컴파일되고 링크된 형태의 빌트인 모듈일 수도 있고 제품 출하 시 기본적으로 설치된 플러그인 프로그램 형식으로 구현될 수도 있다. More specifically, the built-in codec and the external codec according to the present invention are designed to have a unified interface. That is, it is modularized in the same form as an object. This is to allow the multimedia device to support various types of codecs and to update the firmware conveniently and efficiently. The unified interface will be described later. In addition, as described above, it is divided into an internal codec and an external codec and stored in a separate area. The built-in codec is described as a unified interface as described below for convenience and efficiency of firmware update, and is integrally programmed with the codec manager as shown. The built-in codec can be a built-in module compiled and linked with the codec manager or implemented as a plug-in program installed by default.

외장 코덱은 내장 코덱과 동일한 형식의 인터페이스를 가지며, 추후의 업데이트를 위하여 패치 프로그램이나 플러그인 프로그램 형식의 동적 링크 라이브러리(Dynamic Link Library)이다. 예를 들어, 리눅스 운영체제에서는 *.so의 파일 확 장자를 가지는 동적 라이브러리 파일로 구현될 수 있으며, 윈도우즈 운영체제에서는 *.dll의 확장자를 가지는 동적 라이브러리 파일로 구현될 수 있다. 즉, 본 발명에 따른 외장 코덱은, 내장 코덱과 같은 형식의 인터페이스를 가지는 동적 링크가 가능한 파일로 구현된다. 따라서, 업데이트 될 코덱 파일만 외장 코덱 영역에 기록하여 코덱의 업데이트를 할 수 있으므로, 종래와 같이 일부 코덱을 업데이트하기 위하여 전체 펌웨어를 업데이트 할 필요가 없다. 또한, 코덱 관리자가 내장 코덱 또는 외장 코덱을 이용하여 멀티미디어 서비스를 제공하도록 제어하므로, 멀티미디어 서비스 중에도 필요한 코덱을 업데이트할 수 있으며, 업데이트 후에도 재부팅이나 프로그램의 재기동이 필요하지 않다. 즉, 펌웨어 전체를 업데이트 할 필요없이, 일부의 해당 외장 코덱 파일만 업데이트하면 해당 기능을 바로 사용할 수 있다. 또한, 모든 내장 코덱들과 외장 코덱들이 우선순위(priority) 값을 가지도록 하여, 내장 코덱이라도 우선순위가 높은 외장 코덱에 의해 자동으로 대체될 수 있다. The external codec has the same type of interface as the internal codec, and is a dynamic link library in the form of a patch program or a plug-in program for later update. For example, the Linux operating system can be implemented as a dynamic library file with a * .so file extension, and the Windows operating system can be implemented as a dynamic library file with a * .dll extension. That is, the external codec according to the present invention is implemented as a file capable of dynamic linking having an interface in the same format as the internal codec. Therefore, since only the codec file to be updated can be recorded in the external codec area to update the codec, it is not necessary to update the entire firmware in order to update some codecs as in the prior art. In addition, since the codec manager controls to provide a multimedia service using an internal codec or an external codec, the required codec can be updated even during the multimedia service, and no reboot or restart of the program is required even after the update. In other words, you don't have to update the entire firmware, just update some of the external codec files to use the function immediately. In addition, all built-in codecs and external codecs have a priority value, so that even a built-in codec can be automatically replaced by a high priority external codec.

한편, 다른 실시예로서, 도 2b를 참조하면, 내장 코덱을 코덱 관리자와 일체형으로 프로그램하지 않고, 분리하여 별도로 프로그램하는 경우의 펌웨어 구성이 도시된다.Meanwhile, as another embodiment, referring to FIG. 2B, the firmware configuration in the case of separately programming the built-in codec without being integrally programmed with the codec manager is illustrated.

도 3은 본 발명에 따른 모듈화된 코덱의 통일된 인터페이스 구성의 일 실시예를 나타내는 도면이다.3 is a diagram illustrating an embodiment of a unified interface configuration of a modular codec according to the present invention.

도 3을 참조하면, 본 발명에 따른 모듈화된 내장 코덱 및 외장 코덱은 그림과 같이 동일한 형식의 인터페이스를 가진다. 즉, 본 발명에 따른 내장 코덱 및 외장 코덱의 인터페이스(300)는, 헤더 마크(301), 오브젝트 정보(302), 버전 정보(303), 엔트리 포인트 정보(304), 및 우선 순위 정보(305) 등을 포함한다.Referring to FIG. 3, the modular built-in codec and the external codec according to the present invention have the same type of interface as shown in the figure. That is, the interface 300 of the built-in codec and the external codec according to the present invention includes a header mark 301, object information 302, version information 303, entry point information 304, and priority information 305. And the like.

헤더 마크(301)는 이하 계속되는 정보가 코덱의 인터페이스에 관한 정보임을 나타낸다. 오브젝트 정보(302)는, 모듈화 또는 오브젝트화 된 코덱의 식별자 정보를 나타낸다. 예를 들어, MPEG 오디오 코덱의 인터페이스는 오브젝트 정보(302)에 MPEG 오디오 코덱임을 나타내는 정보가 포함된다. 코덱 버전 정보(303)는 해당 코덱의 버전을 나타낸다. 만약, 업데이트하고자 하는 외장 코덱의 오브젝트 정보와 동일한 오브젝트 정보를 가지는 외장 코덱이 이미 플래쉬롬의 외장 코덱 영역에 존재하는 경우, 버전 정보(303)를 비교하여 상대적으로 높은 버전의 외장 코덱으로 업데이트할 수 있다. 엔트리 포인트 정보(304)는 코덱 프로그램을 실제로 호출하여 실행하기 위해 필요한 정보들을 나타낸다. 예를 들어, 코덱 프로그램이 실제 저장된 위치를 알려주는 주소 정보가 포함된다. 우선 순위 정보(305)는 복수의 코덱들 간에 적용 순서를 지정하는 정보이다. 복수의 내장 코덱 및 외장 코덱들을 우선순위 정보에 따라 정렬하고 우선순위가 높은 코덱부터 실행한다. 특히, 소정의 멀티미디어 서비스를 위해 필요한 코덱을 알아내기 위해서, 플래쉬롬에 저장된 모든 코덱들을 순서대로 호출하여 해당 멀티미디어 서비스가 가능한지 시험(probe)한다. 이 경우에도 저장된 순서가 아니라 우선순위 정보에 지정된 우선순위 순으로 코덱을 시험하는 것이 더 효율적일 수 있다. 예를 들어 어떤 MP3 파일을 해당 코덱이 디코딩할 수 있는지 시험하는 경우, 우선순위가 높은 코덱을 먼저 사용하여 시험한다. MP3 내장 코덱보다 더 높은 우선순위의 MP3 외장 코덱이 있다면, 이 외 장 코덱을 사용하여 멀티미디어 서비스를 제공한다. 따라서, 버전 정보(303)와 우선순위 정보(305)를 이용하여 최신의 코덱을 선택하여 멀티미디어 서비스를 제공할 수 있다. The header mark 301 indicates that the following information is about the interface of the codec. The object information 302 represents identifier information of a modularized or objectized codec. For example, the interface of the MPEG audio codec includes information indicating that the object is the MPEG audio codec in the object information 302. The codec version information 303 indicates the version of the corresponding codec. If an external codec having the same object information as the object information of the external codec to be updated already exists in the external codec area of the flash ROM, the version information 303 may be compared and updated to a relatively higher version of the external codec. have. Entry point information 304 represents the information necessary to actually call and execute the codec program. For example, it includes address information that indicates where the codec program is actually stored. The priority information 305 is information specifying an application order among a plurality of codecs. A plurality of built-in codecs and external codecs are sorted according to priority information, and a codec having a higher priority is executed. In particular, in order to find out the codecs necessary for a given multimedia service, all the codecs stored in the flash ROM are sequentially called to test whether the corresponding multimedia service is possible. In this case, it may be more efficient to test the codecs in the order of priority specified in the priority information, not in the order of storing. For example, if you are testing which MP3 file can be decoded by the codec, use the higher priority codec first. If there is a higher priority MP3 external codec than the MP3 internal codec, the external codec is used to provide multimedia services. Therefore, the latest codec may be selected using the version information 303 and the priority information 305 to provide a multimedia service.

코덱들의 인터페이스를 도 3에 도시된 필드들 중 일부를 포함하도록 정의하거나, 다른 필드를 추가하도록 정의하는 등 다양하게 변형하여 구현할 수 있음은 물론이다. 전술한 바와 같이 내장 코덱과 외장 코덱의 인터페이스를 동일한 방식으로 정의하여 모듈화 함으로써, 모듈 또는 오브젝트 단위의 코덱 업데이트가 가능해 진다.The interface of the codecs may be implemented by various modifications such as defining to include some of the fields shown in FIG. 3 or adding other fields. As described above, the interface between the built-in codec and the external codec is defined and modularized, so that the codec can be updated on a module or object basis.

이하에서는 전술한 모듈화된 코덱을 이용하여 멀티미디어 서비스를 제공하고, 멀티미디어 장치의 펌웨어를 업데이트하는 방법을 설명한다. Hereinafter, a method of providing a multimedia service using the aforementioned modular codec and updating a firmware of the multimedia device will be described.

도 4는 본 발명에 따른 펌웨어가 내장된 멀티미디어 장치에서 멀티미디어 서비스를 제공하는 방법을 나타내는 플로 차트이다.4 is a flowchart illustrating a method of providing a multimedia service in a multimedia device with firmware according to the present invention.

도 4 및 도 2a를 를 참조하면, 멀티미디어 서비스를 제공하기 위하여, 먼저 부트 로더(201)를 실행한다(401 단계). 부트 로더는 시스템 프로그램(kernel)(202)을 내부 메모리(RAM)(103)로 로드하고 제어권을 시스템 프로그램으로 넘긴다(402 단계). 시스템 프로그램은 각종 디바이스 드라이버 및 저장 매체의 드라이브 파티션들을 필요에 따라 로드하고 어플리케이션 프로그램을 실행시킨다. 멀티미디어 서비스를 제공하는 어플리케이션 프로그램인 경우, 코덱 매니저(203)를 실행시킨다(403 단계). 코덱 매니저는 제품을 출시할 때 기본적으로 내장 코덱을 포함한다. 예를 들어, 기본적으로 포함된 내장 코덱에 파일 리더(File Reader), 엠펙 오디오 디코더(MPEG Audio decoder), 엠펙 비디오 디코더(MPEG Video Decoder), 엠펙-2 디멀티플렉서(MPEG-2 Demultiplexer), 비디오 랜더러(Video Renderer), 및 오디오 랜더러(Audio Renderer) 등이 포함된 경우를 가정한다. 전술한 내장 코덱들을 이용하면 MPEG 파일이나 MP3와 같은 동영상과 음악 파일들을 재생할 수 있다. 또한, 각 내장 코덱들은 도 2a 또는 도 2b에 도시된 바와 같은 통일된 인터페이스를 가지도록 모듈화 되어 구현된다. 4 and 2A, in order to provide a multimedia service, a boot loader 201 is first executed (step 401). The boot loader loads the system program 202 into the internal memory 103 and transfers control to the system program (step 402). The system program loads drive partitions of various device drivers and storage media as needed and executes an application program. In the case of an application program providing a multimedia service, the codec manager 203 is executed (step 403). The codec manager ships with a built-in codec by default. For example, the built-in codec included is a file reader, an MPEG audio decoder, an MPEG video decoder, an MPEG-2 demultiplexer, and a video renderer. It is assumed that a video renderer, an audio renderer, and the like are included. The above-described built-in codecs can play video and music files such as MPEG files or MP3. In addition, each of the built-in codecs is implemented to be modularized to have a unified interface as shown in Figure 2a or 2b.

한편, 새로운 포맷의 멀티미디어 데이터를 재생/기록/전송하기 위하여 새로운 외장 코덱이 추가될 수 있다. 예를 들어 WMA(Windows Media Audio) 디코더용 외장 코덱을 하드디스크나 메모리 스틱, DVD 등과 같은 저장 매체를 통해 업데이트하거나, 네트워크 상의 서버로부터 다운로드 하여 업데이트 할 수 있다(404 단계). 외장 코덱을 업데이트하는 구체적인 방법은 후술한다. 외장코덱은 저장 매체를 통해 업데이트 되거나, 네트워크를 통해 업데이트 된다. 업데이트 된 외장 코덱 파일은 도 2에 도시된 바와 같이 외장 코덱 영역(204)에 덮어 쓰거나, 추가되는 외장 코덱은 외장 코덱 영역(204)중 빈 영역에 기록된다. Meanwhile, a new external codec may be added to play / record / transmit multimedia data in a new format. For example, an external codec for a WMA (Windows Media Audio) decoder may be updated through a storage medium such as a hard disk, a memory stick, a DVD, or the like, or downloaded and updated from a server on a network (step 404). A detailed method of updating an external codec will be described later. The external codec can be updated via storage media or over a network. The updated external codec file is overwritten in the external codec area 204 as shown in FIG. 2, or the external codec added is recorded in a blank area of the external codec area 204.

이제, 업데이트된 외장 코덱을 포함하여 내장 코덱을 내부 메모리에 로드하고(405 단계), 도 3에 도시된 각 코덱의 인터페이스 정의 중 우선순위 정보를 참조하여 우선순위 순으로 정렬한다(406 단계). 그 중 우선순위가 가장 높은 코덱을 이용하여 멀티미디어 서비스를 제공한다(407 단계 및 408 단계). 이와 같이 멀티미디어 서비스를 제공하기 전에 저장 매체나 네트워크를 통해 업데이트 될 외장 코덱이 있는지 수시로 확인하여 업데이트하고, 업데이트된 외장 코덱 및 내장 코덱을 이용하여 사용자에게 멀티미디어 서비스를 제공한다. The internal codec, including the updated external codec, is loaded into the internal memory (step 405) and sorted in order of priority with reference to the priority information in the interface definition of each codec shown in FIG. Among them, the multimedia service is provided using the codec having the highest priority (steps 407 and 408). As such, before providing the multimedia service, the mobile terminal checks and updates whether there is an external codec to be updated through a storage medium or a network, and provides the multimedia service to the user by using the updated external codec and the internal codec.

따라서, 사용자가 코덱의 업데이트를 따로 관리하지 않아도, 본 발명에 따른 멀티미디어 장치가 자동으로 새로운 버전의 코덱으로 업데이트하여 멀티미디어 서비스를 제공할 수 있다. Therefore, even if the user does not manage to update the codec separately, the multimedia apparatus according to the present invention can automatically update to a new version of the codec to provide a multimedia service.

이하, 코덱을 업데이트 하는 과정(A)을 보다 구체적으로 설명한다. 도 5는 본 발명에 따른 펌웨어가 내장된 멀티미디어 장치에서 코덱을 업데이트하는 방법을 나타내는 플로 차트이다.Hereinafter, a process (A) of updating the codec will be described in more detail. 5 is a flowchart illustrating a method of updating a codec in a multimedia device with firmware according to the present invention.

도 5를 참조하면, 편리하고 안전하게 코덱을 업데이트하는 방법이 도시되어 있다. Referring to FIG. 5, a method of conveniently and safely updating a codec is illustrated.

먼저, 코덱 관리자(203)는 저장 매체 또는 네트워크를 이용하여 업데이트 가능한 코덱 목록을 메모리로 로드 또는 다운로드한다(501 단계). 로딩된 코덱 목록에서 각 코덱의 버전 정보(303)를 확인한다. 즉, 새로운 코덱이나 또는 오브젝트 정보(302)가 동일한 코덱이라도 다른 버전의 코덱이 존재하는지 확인하여(503 단계), 만약 새로운 코덱 또는 다른 버전의 코덱을 발견하면 해당 코덱의 다운로드 정보를 이용하여 내부 메모리에 로드하거나 다운로드한다(504 단계). 로드 또는 다운로드를 에러 없이 완료한 경우(505 단계), 로드 또는 다운로드된 코덱을 이용하여 플래쉬롬(102)을 업데이트 한다(506 단계). 업데이트가 완료되면(507 단계), 내장 코덱 뿐만 아니라 업데이트된 외장 코덱에 대한 정보를 포함하도록 코덱 관리자를 초기화한다(508 단계). 이제 도 3에 도시된 바와 같이 업데이트 된 펌웨어에 포함된 내장 코덱 및 외장 코덱을 내부 메모리로 로드하고(406 단계), 그 중 우선 순의 정보(305)를 비교하여 우선순위가 가장 높은 코덱을 이용하여 멀티미디어 서비스를 제공한다(407 단계 및 408 단계).First, the codec manager 203 loads or downloads an updateable codec list into a memory using a storage medium or a network (step 501). The version information 303 of each codec is checked from the loaded codec list. That is, even if the new codec or the object information 302 is the same codec, it is checked whether there is a different version of the codec (step 503). Load or download (step 504). When the load or download is completed without error (step 505), the flash ROM 102 is updated using the loaded or downloaded codec (step 506). When the update is completed (step 507), the codec manager is initialized to include information about the updated external codec as well as the internal codec (step 508). Now, as shown in FIG. 3, the internal codec and the external codec included in the updated firmware are loaded into the internal memory (step 406), and among them, the priority codec 305 is compared to use the codec having the highest priority. To provide a multimedia service (steps 407 and 408).

한편, 코덱의 업데이트 시에 새로운 코덱 파일이라면 저장 매체 또는 네트워크로부터 그대로 로드 또는 다운로드한다. 그러나, 업데이트될 코덱이 버그 수정 또는 기능 추가 등을 위해 새로운 버전으로 업데이트된 경우라면 해당 코덱 파일 전부를 로드 또는 다운로드할 필요 없이, 이전 버전의 코덱 파일과 새로운 버전의 코덱 파일의 차분 데이터(different data)를 구하여, 이를 가변장 부호화(Variable Length Coding: VLC라 약칭함)하여 로드 또는 다운로드할 수 있다. 멀티미디어 장치에서는 수신된 VLC 인코딩된 차분 데이터를 복호화하여 외장 코덱 파일을 업데이트 한다. 가변장 부호화/복호화는 널리 알려진 무손실 압축 기법의 하나이며, 다른 부호화/복호화 기법을 물론 사용할 수 있다. On the other hand, when a codec is updated, a new codec file is loaded or downloaded as it is from a storage medium or a network. However, if the codec to be updated is updated to a new version to fix a bug or add a function, the differential data between the previous codec file and the new version of the codec file is not required to be loaded or downloaded. ) Can be loaded or downloaded by variable length coding (VLC). The multimedia device updates the external codec file by decoding the received VLC encoded differential data. Variable length encoding / decoding is one of the well-known lossless compression techniques, and other encoding / decoding techniques may of course be used.

이와 같이 업데이트될 코덱 파일 전체가 아니라, 이전 버전의 코덱 파일과의 차분 데이터 만을 부호화하여 로드 또는 다운로드함으로써, 업데이트되는 파일의 용량을 대폭 감소할 수 있다. 이에 따라, 업데이트 시간을 최소화 할 수 있다.By encoding and loading or downloading only difference data from the codec file of the previous version, not the entire codec file to be updated, the capacity of the file to be updated can be greatly reduced. Accordingly, the update time can be minimized.

이상의 설명은 본 발명의 일 실시예에 불과할 뿐, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 본질적 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현할 수 있을 것이다. 따라서, 본 발명에 따른 실시예에 한정되지 않고 특허 청구범위에 기재된 내용과 동등한 범위 내에 있는 다양한 실시 형태가 포함되도록 해석되어야 할 것이다.The above description is only one embodiment of the present invention, and those skilled in the art may implement the present invention in a modified form without departing from the essential characteristics of the present invention. Therefore, it should be interpreted to include various embodiments that are not limited to the examples according to the present invention but within the scope equivalent to those described in the claims.

전술한 바와 같이, 본 발명에 따르면, 모듈화된 내장 코덱 및 외장 코덱과 코덱 관리자를 이용하여 편리하게 코덱을 업데이트 하는 펌웨어가 포함된 멀티미디어 장치가 제공된다. 이에 따라, 다양한 포맷의 멀티미디어 데이터를 재생/녹화/전송할 수 있도록 다양한 코덱 파일들을 편리하게 업데이트할 수 있다. 즉, 펌웨어 전체를 업데이트할 필요 없이, 필요한 모듈만 업데이트하면 되므로, 업데이트 후에도 멀티미디어 장치를 껐다가 다시 켤 필요가 없다. 나아가, 멀티미디어 서비스를 받는 중에는 펌웨어의 업데이트도 가능하다. As described above, according to the present invention, there is provided a multimedia device including a firmware for updating the codec conveniently using a modular built-in codec and an external codec and a codec manager. Accordingly, various codec files can be conveniently updated to play / record / transmit various types of multimedia data. In other words, instead of updating the entire firmware, only the necessary modules need to be updated, so there is no need to turn the multimedia device off and on again after the update. Furthermore, the firmware can be updated while receiving the multimedia service.

또한, 버전 정보나 우선순위 정보를 이용하여, 사용자가 코덱의 업데이트를 관리하지 않아도, 자동으로 멀티미디어 서비스를 시작하기 전에 저장 매체 또는 네트워크로부터 최신 버전의 코덱들을 다운로드 받아 펌웨어를 업데이트할 수 있다. 이에 따라, 사용자는 A/S 센터의 전문가의 도움을 받거나, 업데이트 후 멀티미디어 장치를 재부팅시키는 번거로움 없이, 편리하게 최신 버전의 멀티미디어 서비스를 받을 수 있다.In addition, by using the version information or priority information, even if the user does not manage the update of the codec, the firmware can be updated by downloading the latest version of the codec from the storage medium or the network before automatically starting the multimedia service. Accordingly, the user can conveniently receive the latest version of the multimedia service without the help of an expert in the A / S center or the hassle of rebooting the multimedia device after the update.

Claims (16)

멀티미디어 장치의 펌웨어를 기록한 기록매체에 있어서, 상기 펌웨어는,In the recording medium recording the firmware of the multimedia device, the firmware, 통일된 인터페이스를 가지도록 모듈화된 적어도 하나의 코덱 프로그램을 기록한 코덱 프로그램 영역과, A codec program area for recording at least one codec program modularized to have a unified interface, 상기 코덱 프로그램을 실행시키며, 상기 코덱 프로그램들을 모듈 단위로 업데이트하는 코덱 관리자 프로그램을 기록한 코덱 관리자 영역을 포함하고,A codec manager area for executing the codec program, and recording a codec manager program for updating the codec programs on a module basis; 상기 코덱 프로그램 영역은, 업데이트 되지 않을 적어도 하나의 코덱 프로그램을 저장하기 위한 내장 코덱 영역과, 외부로부터 다운로드되는 적어도 하나의 코덱 프로그램을 저장하기 위한 외장 코덱 영역을 포함하는 것을 특징으로 하는 기록매체.The codec program area includes a built-in codec area for storing at least one codec program not to be updated and an external codec area for storing at least one codec program downloaded from the outside. 제1항에 있어서,The method of claim 1, 상기 코덱 프로그램은, 동적으로 링크되는 플러그인(plug-in) 방식의 프로그램인 것을 특징으로 하는 기록매체.The codec program is a plug-in type program that is dynamically linked. 삭제delete 제1항에 있어서,The method of claim 1, 상기 통일된 인터페이스는, 해당 코덱 프로그램의 버전 정보를 포함하며,The unified interface includes version information of the corresponding codec program, 상기 코덱 관리자는, 상기 버전 정보를 이용하여, 동일한 포맷에 대응하는 복수의 코덱 프로그램이 존재하는 경우, 최신 버전의 코덱 프로그램을 선택하여 다운로드하는 것을 특징으로 하는 기록매체.The codec manager selects and downloads the latest version of a codec program when a plurality of codec programs corresponding to the same format exist using the version information. 제1항에 있어서,The method of claim 1, 상기 통일된 인터페이스는, 상기 펌웨어에 탑재된 복수의 코덱 프로그램들 중 해당 코덱 프로그램이 적용되는 순서를 나타내는 우선순위 정보를 더 포함하며,The unified interface further includes priority information indicating an order in which a corresponding codec program is applied among a plurality of codec programs mounted in the firmware, 상기 코덱 관리자는 상기 우선 순위 정보를 이용하여 우선순위가 가장 높은 코덱 프로그램을 실행시키는 것을 특징으로 하는 기록매체.And the codec manager executes the codec program having the highest priority by using the priority information. 제5항에 있어서,The method of claim 5, 상기 코덱 관리자는, 상기 우선순위 정보를 참조하여 그 우선순위 순서대로 상기 펌웨어에 탑재된 복수의 코덱 프로그램들을 시험(probe)하여, 소정의 멀티미디어 서비스를 제공하기 위해 필요한 코덱 프로그램을 알아내는 것을 특징으로 하는 기록매체.The codec manager, by referring to the priority information, probes a plurality of codec programs mounted in the firmware in order of priority, and finds a codec program necessary to provide a predetermined multimedia service. Recording medium. 제1항에 있어서,The method of claim 1, 상기 코덱 관리자는, 멀티미디어 서비스를 제공하면서 상기 코덱 프로그램을 업데이트하는 것을 특징으로 하는 기록매체.The codec manager updates the codec program while providing a multimedia service. 제1항에 있어서,The method of claim 1, 상기 코덱 관리자는, 새로운 버전의 코덱을 업데이트하는 경우, 업데이트 될 상기 코덱 프로그램과 이전 버전의 코덱 프로그램과의 차분 데이터를 다운로드하여 상기 펌웨어를 업데이트 하는 것을 특징으로 하는 기록매체.The codec manager updates the firmware by downloading difference data between the codec program to be updated and the codec program of the previous version when updating a new version of the codec. 멀티미디어 장치의 펌웨어를 업데이트하는 방법에 있어서,In the method of updating the firmware of the multimedia device, 저장 매체 또는 네트워크로부터 통일된 인터페이스를 가지도록 모듈화된 적어도 하나의 코덱 프로그램을 모듈 단위로 다운로드하는 단계; 및Downloading at least one codec program modularized from a storage medium or a network to have a unified interface; And 상기 다운로드된 코덱 프로그램을 상기 펌웨어의 소정의 영역에 기록하는 단계를 포함하고,Recording the downloaded codec program in a predetermined area of the firmware; 상기 펌웨어의 소정 영역은, 외부로부터 다운로드되는 적어도 하나의 코덱 프로그램을 저장하기 위한 외장 코덱 영역인 것을 특징으로 하는 업데이트 방법.The predetermined area of the firmware is an external codec area for storing at least one codec program downloaded from the outside. 제9항에 있어서,The method of claim 9, 상기 기록하는 단계는 플러그인(plug-in) 방식을 이용하여 상기 다운로드된 코덱 프로그램을 상기 펌웨어의 소정의 영역에 동적으로 링크하는 것을 특징으로 하는 업데이트 방법.The recording method may include dynamically linking the downloaded codec program to a predetermined area of the firmware by using a plug-in method. 삭제delete 제9항에 있어서,The method of claim 9, 상기 통일된 인터페이스는, 해당 코덱 프로그램의 버전 정보를 포함하며,The unified interface includes version information of the corresponding codec program, 상기 버전 정보를 이용하여, 동일한 포맷에 대응하는 복수의 코덱 프로그램이 존재하는 경우, 최신 버전의 코덱 프로그램을 선택하여 다운로드 하는 것을 특징으로 하는 업데이트 방법.And if a plurality of codec programs corresponding to the same format exist using the version information, selecting and downloading the latest version of the codec program. 제9항에 있어서,The method of claim 9, 상기 통일된 인터페이스는, 상기 펌웨어에 탑재된 복수의 코덱 프로그램들 중 해당 코덱 프로그램이 적용되는 순서를 나타내는 우선순위 정보를 더 포함하며,The unified interface further includes priority information indicating an order in which a corresponding codec program is applied among a plurality of codec programs mounted in the firmware, 상기 우선 순위 정보를 이용하여 우선순위가 가장 높은 코덱 프로그램을 실행하여 멀티미디어 서비스를 제공하는 단계를 더 포함하는 것을 특징으로 하는 업데이트 방법.And executing a codec program having the highest priority by using the priority information to provide a multimedia service. 제13항에 있어서,The method of claim 13, 상기 우선순위 정보를 참조하여 그 우선순위 순서대로 상기 펌웨어에 탑재된 복수의 코덱 프로그램들을 시험(probe)하여, 소정의 멀티미디어 서비스를 제공하기 위해 필요한 코덱 프로그램을 알아내는 것을 특징으로 하는 업데이트 방법.And a codec program necessary to provide a predetermined multimedia service by probing a plurality of codec programs mounted in the firmware in order of priority with reference to the priority information. 제9항에 있어서,The method of claim 9, 멀티미디어 서비스를 제공하면서 동시에 상기 코덱 프로그램을 다운로드하는 것을 특징으로 하는 업데이트 방법.An update method comprising downloading the codec program while providing a multimedia service. 제9항에 있어서,The method of claim 9, 새로운 버전의 코덱을 업데이트하는 경우, 업데이트 될 상기 코덱 프로그램과 이전 버전의 코덱 프로그램과의 차분 데이터만을 다운로드하는 것을 특징으로 하는 업데이트 방법.When updating a new version of the codec, the update method, characterized in that for downloading only the difference data between the codec program to be updated and the codec program of the previous version.
KR1020040052318A 2004-07-06 2004-07-06 Multimedia device having a firmware built-in KR100619038B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040052318A KR100619038B1 (en) 2004-07-06 2004-07-06 Multimedia device having a firmware built-in

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040052318A KR100619038B1 (en) 2004-07-06 2004-07-06 Multimedia device having a firmware built-in

Publications (2)

Publication Number Publication Date
KR20060003437A KR20060003437A (en) 2006-01-11
KR100619038B1 true KR100619038B1 (en) 2006-09-01

Family

ID=37105884

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040052318A KR100619038B1 (en) 2004-07-06 2004-07-06 Multimedia device having a firmware built-in

Country Status (1)

Country Link
KR (1) KR100619038B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100818924B1 (en) * 2006-05-03 2008-04-04 삼성전자주식회사 Apparatus and method for creating DSP code through combing of software module

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010044634A (en) * 2001-03-13 2001-06-05 김형석 Codec Upgradable 'Digital Audio(Voice) Recorder/Player (MP3 Recoder/Player)' and Internet Service
JP2002149536A (en) * 2000-11-07 2002-05-24 Canon Inc Communication terminal device, program updating method and storage medium
KR20040008007A (en) * 2002-07-15 2004-01-28 에임텍 주식회사 Method of upgrading firmware for wireless terminal

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002149536A (en) * 2000-11-07 2002-05-24 Canon Inc Communication terminal device, program updating method and storage medium
KR20010044634A (en) * 2001-03-13 2001-06-05 김형석 Codec Upgradable 'Digital Audio(Voice) Recorder/Player (MP3 Recoder/Player)' and Internet Service
KR20040008007A (en) * 2002-07-15 2004-01-28 에임텍 주식회사 Method of upgrading firmware for wireless terminal

Also Published As

Publication number Publication date
KR20060003437A (en) 2006-01-11

Similar Documents

Publication Publication Date Title
WO2003030555A1 (en) Apparatus and method for transcoding data received by a recording device
US8402456B2 (en) Portable storage device, system and method for automatic software installation
US20040039575A1 (en) Host processing device using external storage medium
KR20030032257A (en) Method for upgrading program and apparatus therefor
JP2006040511A (en) Multimedia content reproducing apparatus, reproducing method, creating device, creating method, and recording medium recorded with the multimedia content
TW476046B (en) Dynamic detection of hardware configuration in a digital terminal
US20060015905A1 (en) Wireless communication system having program upgrade function and method thereof
KR100619038B1 (en) Multimedia device having a firmware built-in
KR20060055521A (en) Digital media cartridge system and method
US7519272B2 (en) Video and audio data recording and/or reproducing apparatus having lock setting function and control method thereof
JP2007013602A (en) Content recorder, content reproducing device and parameter information recording method
EP1401206A2 (en) Stream Data Processing Apparatus
KR20090128195A (en) Apparatus and method for converting data format of media files
EP2430528A1 (en) System and method for sharing memory
KR20070058041A (en) Optical disk playback device capable downloading codec and method for controlling thereof
KR20000034254A (en) Apparatus for program upgrade of digital television
JP3849137B2 (en) Digital broadcast receiver
JP2007067949A (en) Image reproducing system image reproducing apparatus, imaging device and information processor
KR20040018712A (en) Set Top Box and controlling method thereof
US20090182904A1 (en) System and Method for Providing Peripheral Device Functionality
KR100617565B1 (en) Method of preinsatall contents for mobile station
KR101009954B1 (en) The home network device, the peripheral device install program system and method for setting the peripheral device install program
KR20060132804A (en) Retrieving data from an information carrier
KR100830466B1 (en) The method for downloading SW in digital television and apparatus for controlling the same
US20050285762A1 (en) Reproduction apparatus

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee