KR100892311B1 - 디지털 방송 수신기의 소프트웨어 업그레이드 장치 및 방법 - Google Patents

디지털 방송 수신기의 소프트웨어 업그레이드 장치 및 방법 Download PDF

Info

Publication number
KR100892311B1
KR100892311B1 KR1020020003943A KR20020003943A KR100892311B1 KR 100892311 B1 KR100892311 B1 KR 100892311B1 KR 1020020003943 A KR1020020003943 A KR 1020020003943A KR 20020003943 A KR20020003943 A KR 20020003943A KR 100892311 B1 KR100892311 B1 KR 100892311B1
Authority
KR
South Korea
Prior art keywords
software
oad
digital broadcast
user
information
Prior art date
Application number
KR1020020003943A
Other languages
English (en)
Other versions
KR20030063694A (ko
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 KR1020020003943A priority Critical patent/KR100892311B1/ko
Publication of KR20030063694A publication Critical patent/KR20030063694A/ko
Application granted granted Critical
Publication of KR100892311B1 publication Critical patent/KR100892311B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/458Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
    • H04N21/4586Content update operation triggered locally, e.g. by comparing the version of software modules in a DVB carousel to the version stored locally
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4348Demultiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4431OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB characterized by the use of Application Program Interface [API] libraries
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Library & Information Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Stored Programmes (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

본 발명은 디지털 방송 수신기의 소프트웨어 업그레이드 장치 및 방법에 관한 것으로, 종래에는 방송신호와 함께 수신된 업그레이드된 소프트웨어를 추출하여, 그 추출된 소프트웨어를 사용하여 소프트웨어 업그레이드를 수행하며, 이 과정에서 사용자의 업그레이드 확인 등 사용자의 조작이 필요로 하고, 그 업그레이드 과정에서는 방송신호를 표시할 수 없도록 되어 있어, 그 사용효율이 감소하는 문제점이 있었다. 이와 같은 문제점을 감안한 본 발명은 상기 트랜스포트 스트림에 포함된 업그레이드된 소프트웨어를 검출하여 디지털 방송 수신기에 내장된 소프트웨어를 업그레이드시키는 OAD(over air download)엔진과; 상기 트랜스포트 스트림에 포함된 업데이트된 소프트웨어를 자동으로 전송받아 그 정보를 검출하여 사용자의 조작 없이 소프트웨어를 업그레이드시키는 OAD 응용 프로그램 인터페이스부를 포함하여 MHEG-5엔진에 사용자의 설정시간을 저장하고, 그 저장된 설정시간에 따라 오버 에어 다운로드를 수행할 수 있도록 하는 상주 프로그램 인터페이스를 구성하고, 그 상주 프로그램 인터페이스에 저장된 시간에 자동으로 그 디지털 방송 수신기에 해당하는 업그레이드 된 소프트웨어를 선택적으로 다운받아 안정적이며, 사용자의 조작없이 소프트웨어를 업그레이드 시킴으로써, 그 디지털 방송 수신기의 사용효율을 향상시키는 효과가 있다.

Description

디지털 방송 수신기의 소프트웨어 업그레이드 장치 및 방법{SOFTWARE UPGRADE APPARATUS AND METHOD FOR DIGITAL BROADCASTING RECEIVER}
도1은 종래 OAD 방식의 소프트웨어 업그레이드 방법을 보인 모식도.
도2는 종래 디지털 방송 수신기에 포함된 MHEG 엔진의 구성도.
도3은 도2에 있어서, DSI의 구조도.
도4는 서비스 게이트웨이의 구조도.
도5는 MIS의 구조도.
도6은 본 발명 디지털 방송 수신기의 소프트웨어 업그레이드 장치의 블록도.
도7은 본 발명 디지털 방송 수신기의 소프트웨어 업그레이드 방법의 순서도.
*도면의 주요 부분에 대한 부호의 설명*
1:MPEG2 수신부 2:MPEG2 섹션부
3:디지털저장매체 명령 제어부 4:ASN.1 디코더
5:디지털 비디오 방송 처리부 6:OAD 엔진
7:상주 프로그램 인터페이스 8:OAD 응용 프로그램 인터페이스
본 발명은 디지털 방송 수신기의 소프트웨어 업그레이드 장치 및 방법에 관한 것으로, 특히 API를 이용하여 엠헥엔진의 기능을 확장하고, 이를 통해 오버에어 다운로드를 사용하기 위한 스펙을 정의하여, 디지털 방송수신기의 소프트웨어를 업그레이드 시킬 수 있도록 하는 디지털 방송 수신기의 소프트웨어 업그레이드 장치 및 방법에 관한 것이다.
종래 디지털 방송수신기는 제품이 출시될 당시에 적당한 프로그램을 내장하여 출시된다. 이때 프로그램은 사용자 인터페이스 등 디지털 방송수신기와 사용자 사이, 또는 디지털 방송수신기 자체의 동작을 제어하기 위한 것이며, 사용환경의 변화에 따라 또는 보다 그 성능을 향상시킬 수 있는 프로그램의 업그레이드가 필요하게 된다.
이와 같이 종래 디지털 방송수신기의 소프트웨어를 업그레이드 하기 위해서는 그 디지털 방송수신기를 제조한 제조사의 서비스맨이 직접 소프트웨어를 업그레이드 시키거나, 사용자가 제조사의 웹사이트 등에 접속하여 다운로드 받아 업그레이드 하거나, 방송신호에 각 제조사의 소프트웨어를 포함시켜 그 전송되어진 방송신호로 부터 방송수신기 자체에서 그 소프트웨어를 추출하여 자동으로 업그레이드 하는 방식을 사용하고 있다.
이처럼 방송신호에 포함된 업데이트된 소프트웨어를 추출하여 수신기의 소프 트웨어를 업그레이드 시키는 방법을 오버 에어 다운로드(OVER AIR DOWNLOAD: 이하 OAD)라고 한다.
이와 같은 종래 오버 에어 다운로드 방식의 디지털 방송수신기의 소프트웨어 업그레이드 방법을 좀 더 상세히 설명한다.
도1은 종래 OAD 방식의 소프트웨어 업그레이드 방법을 보인 모식도로서, 이에 도시한 바와 같이 먼저, 디지털 방송수신기 제조업체에서는 그 디지털 방송 수신기에 적용되는 업그레이드된 소프트웨어를 OC 프로토콜(Object Carousel protocol)로 인코딩하여 제공한다.
이와 같이 제공된 OAD 소프트웨어의 OC 인코딩된 스트림은 방송국(10)의 방송 스트림(A/W stream)과 데이터 방송 및 프로그램 인덱스를 위한 데이터 스트림(data stream)과 멀티플랙싱되어 전송된다.
그 다음, 상기 방송국(10)에서 전송되는 스트림은 중계기(20)를 통해 사용자의 디지털 방송 수신기(30)에서 수신되어 방송신호 외에 포함된 업그레이드된 소프트웨어를 추출하여 소프트웨어를 업그레이드 시키게 된다.
일반적으로 엠헥(MHEG, Multimedia and Hypermedia information coding Experts Group)은 멀티미디어와 하이퍼미디어 데이터 기술의 표준으로 멀티미디어와 하이퍼미디어의 제어, 포맷, 동기, 다중화 방식 등을 표준화하는 ISO의 위원회 또는 그 위원회가 정한 동화상의 국제표준을 말한다.
이는 MPEG 시스템의 상위 개념으로 멀티미디어 데이터의 표준화는 물론 정지 화면과 문자를 링크하는 하이퍼미디어의 표준화까지 대상으로 하고 있다.
하이퍼미디어란 하이퍼텍스트의 확장된 개념으로서 문자뿐만 아니라 소리, 애니메이션, 그래픽, 비디오, 정지화상, 동화상 등으로 혼합한 형태를 나타내기 위한 방법이다.
MHEG 표준은 각각 다른 형태의 미디어 객체들을 묶어 하나의 구조체로 제공할 수 있으며, 이 객체들의 집합 형태를 취한다. MHEG 문서는 하나의 파일이며 그 안에 여러 매체 조각들 사이의 동기화 정보를 담고 있다. 각각의 매체 조각들은 별도의 파일로 존재할 수도 있고, MHEG 파일 안에 포함되어 존재할 수도 있다.
상기와 같은 매체들을 관리하기 위해 MHEG은 객체지향 프로그래밍의 방법을 사용한다. MHEG 파일은 별도의 변환 등을 거치지 않고 모든 시스템에서 사용될 수 있다. 즉, 교환형식의 표준이 되는 것이다. 또한 MHEG 파일은 컴파일된 것이기 때문에 보통의 프로그램과 마찬가지로 역공학이 힘들다.
MHEG 문서를 해석하고 구동시켜 주는 재생기를 MHEG 엔진이라 부르는데 MHEG 문서를 해석하여 실시간 이미지를 만들어놓고 실행한다. 기본적인 표기법은 추상구문기법.1(이하, ASN.1)을 기반으로 하며 SGML에 기반한 MHEG 표기법에 관한 표준화 작업도 수행되고 있다. MHEG은 MPEG, JPEG, JBIG과 더불어 정보 암호화의 4대 ISO 표준이다.
종래 MHEG-5 엔진은 방송사업자에 의해 송신되는 어플리케이션을 수신하여, 시청자가 볼수 있는 형태의 데이터로 디코딩하여, 디스플레이 장치에 표시하는 역할만을 수행하며, 이와 같은 종래 MHEG 엔진을 첨부한 도면을 참조하여 상세히 설명하면 다음과 같다.
도2는 종래 디지털 방송 수신기에 포함된 MHEG 엔진의 구성도로서, 이에 도시한 바와 같이 방송사업자로 부터 송신된 어플리케이션이 포함된 트랜스포트 스트림(TS)을 인가받는 MPEG2 수신부(1)와; 상기 트랜스포트 스트림(TS)에서 섹션데이터를 분리하는 MPEG2 섹션부(2)와; 상기 수신된 어플리케이션에서 MHEG엔진에서 사용할 파일을 추출하는 디지털저장매체 명령 제어부(3,이하, DSM-CC)와; 상기 추출된 파일을 전송규약에 따라 디코딩하여 MHEG에서 사용할 데이터를 획득하는 ASN.1 디코더(4)와; 디지털 비디오 방송 정보를 처리하는 디지털 비디오 방송 처리부(5)와; 상기 트랜스포트 스트림(TS)에 포함된 업그레이드된 소프트웨어를 검출하여 디지털 방송 수신기에 내장된 소프트웨어를 업그레이드시키는 OAD엔진(6)으로 구성된다.
즉, 상기 방송국(10)에서는 어플리케이션을 상기 MHEG규격의 문법에 맞게 기술하고, 이를 전송규약인 ASN.1에 따라 인코딩한 후, 다시 MPEG-2로 압축한 섹션데이터를 트랜스포트 스트림(TS)에 실어서 전송하게 된다.
이때, 전송되는 트랜스포트 스트림(TS)에는 업그레이드된 소프트웨어가 포함된다.
상기 OAD엔진(6)에서는 그 트랜스포트 스트림(TS)에 포함된 소프트웨어를 검출하여 이를 이용해 디지털 방송수신기의 소프트웨어를 업그레이드 시키게 된다.
이러한 오버 에어 소프트웨어(OVER AIR SOFTWARE)와 관련된 스펙은 DVB스펙에 기준하며, 좀 더 세부적으로 영국의 시장에 제품을 출시하는 제조업자 그룹(MANUFACTURER'S GROUP)에서 제안된 스펙을 따른다.
또한, 상기 OC포맷은 UK DTT에 제안된 "digital terretrial television MHEG-5 specifiction v1.04.4"를 따른다.
상기 UK DTT의 OC 스펙에서 OAD를 하기 위해서는 DSI(DOWNLOAD SERVER INITIATE) 메시지의 정의 되지 않은 영역을 제조업자 정보 스트럭쳐(MANUFACTURER INFORMATION STRUCTURE)로 정의해서 사용한다.
즉, 각 제조업자가 제공하는 OAD를 해당하는 디지털 텔레비전에서만 적용하여 업그레이드를 수행할 수 있도록 하는 정의를 기재한다.
도3은 상기 DSI의 구조도로서, 이에 도시한 바와 같이 상기 문법영역 중 privatDataByte 영역에는 서비스 게이트웨이(service gateway)의 정보가 들어간다.
서비스 게이트웨이의 구조는 도4에 표시하였다.
상기 도4에서 userInfo_data는 현재 DTT호환의 디지털 방송 수신기에서는 무시할 수 있으나, OAD를 수행하기 위해서는 이영역에 MIS(Manufacturer Information Structure)를 사용하게 된다.
도5에는 상기 MIS의 구조를 표시하였다.
상기 도5에서 manufacturer specific data에는 제조업체가 필요한 정보를 저장하여 업그레이드를 실시하려는 소프트웨어의 정보를 삽입하게 된다.
종래 상기 manufacturer specific data영역에는 디스크립터(descriptor) 포맷을 사용하여 제조업자가 필요한 정보를 삽입하게 된다.
상기 제조업자의 정보는 현재 선택적 다운로드 슬롯 기술자(optional download slot descriptor), 다음 선택적 다운로드 슬롯 기술자(optional download slot descriptor), 구체적 선택적 다운로드 기술자(optional download priority descriptor), 선택적 사용자 정보(optional user information), 0x80~0xFF값의 기술자를 이용한 제조업자의 구체적인 부가 데이터(Manufacturers can add manufacturer specific data using descriptor values 0x80~0xFF)로 이루어진다.
이와 같은 구조의 MIS를 수신한 디지털 방송수신기는 사용자에게 업그레이드된 소프트웨어를 전달 받았으며, 그 소프트웨어를 업그레이드 할 것인가를 사용자에게 질의하게 된다.
사용자는 그 소프트웨어를 업그레이드 할 것이면, 리모트 컨트롤러를 조작하여 소프트웨어의 업그레이드를 실시한다.
이와 같이 소프트웨어를 업그레이드 하라는 명령을 내리면 디지털 방송수신기는 방송의 표시를 중단하고, 소프트웨어를 업그레이드 시킨 후, 전원을 자동으로 리셋하여 재부팅 과정을 거치게 된다.
이로 인하여, 사용자는 그 소프트웨어를 업그레이드 시키기 위해서는 일정한 시간동안 디지털 방송을 시청할 수 없으며, 관심있는 디지털 방송을 시청하는 동안 소프트웨어를 업그레이드 시키지 않음을 선택하면, 차후에 다시 소프트웨어를 업그레이드 시킬 것인가 하는 질의를 받게 된다.
이처럼 종래 디지털 방송 수신기의 소프트웨어 업그레이드 장치 및 방법은 방송신호와 함께 수신된 업그레이드된 소프트웨어를 추출하여, 그 추출된 소프트웨어를 사용하여 소프트웨어 업그레이드를 수행하며, 이 과정에서 사용자의 업그레이드 확인 등 사용자의 조작이 필요로 하고, 그 업그레이드 과정에서는 방송신호를 표시할 수 없도록 되어 있어, 그 사용효율이 감소하는 문제점이 있었다.
상기와 같은 문제점을 감안한 본 발명은 사용자의 조작없이 방송을 시청하는 중에 소프트웨어를 업그레이드 시키거나, 특정한 시간대를 예약하여 소프트웨어를 업그레이드 시키는 등 그 업그레이드 방식을 유연하게 변환시킬 수 있는 디지털 방송 수신기의 소프트웨어 업그레이드 장치 및 방법을 제공함에 그 목적이 있다.
상기와 같은 목적은 사용자의 설정에 따라 소프트웨어를 전송받아 그 정보와 현재 설치된 소프트웨어의 정보를 검출하여, 이를 판단하여 자동으로 OAD 엔진을 구동하여, 안정적으로 소프트웨어를 다운로드 받으며, 그 다운로드가 완료되면 미디어에 다운로드된 업그레이드된 소프트웨어를 저장하도록 하는 OAD 응용 프로그램 인터페이스를 포함하여 구성함으로써 달성되는 것으로, 이와 같은 본 발명을 첨부한 도면을 참조하여 상세히 설명하면 다음과 같다.
도6은 본 발명 디지털 방송 수신기의 소프트웨어 업그레이드 장치의 블록도로서, 이에 도시한 바와 같이 방송사업자로 부터 송신된 어플리케이션이 포함된 트랜스포트 스트림(TS)을 인가받는 MPEG2 수신부(1)와; 상기 트랜스포트 스트림(TS)에서 섹션데이터를 분리하는 MPEG2 섹션부(2)와; 상기 수신된 어플리케이션에서 MHEG엔진에서 사용할 파일을 추출하는 디지털저장매체 명령 제어부(3,이하, DSM-CC)와; 상기 추출된 파일을 전송규약에 따라 디코딩하여 MHEG에서 사용할 데이터를 획득하는 ASN.1 디코더(4)와; 디지털 비디오 방송 정보를 처리하는 디지털 비디오 방송 처리부(5)와; 상기 트랜스포트 스트림(TS)에 포함된 업그레이드된 소프트웨어를 검출하여 디지털 방송 수신기에 내장된 소프트웨어를 업그레이드시키는 OAD엔진(6)과; 상기 디지털 비디오 방송 처리부(5)에 내장되어 설정된 시간 또는 설정된 상황에 따라 상기 OAD엔진(6)을 구동하여 업그레이드된 소프트웨어를 전송받는 상주 프로그램 인터페이스(7)와; 상기 업데이트된 소프트웨어를 자동으로 전송받아 그 정보를 검출하여 사용자의 개입 없이 소프트웨어를 업그레이드시키는 OAD 응용 프로그램 인터페이스(8)로 구성된다.
이하, 상기와 같은 본 발명을 좀 더 상세히 설명한다.
먼저, 상기 OAD 응용 프로그램 인터페이스(APPLICATION PROGRAMMING INTERFACE, 8)는 디지털 방송 수신기의 소프트웨어 정보를 검출하고, 트랜스포트 스트림(TS)에 업데이트된 소프트웨어가 포함되어 있는지 확인하며, 그 확인 결과 소프트웨어를 업그레이드 할 필요가 있으면, 그 트랜스포트 스트림(TS)으로 부터 그 업데이트된 소프트웨어의 이미지를 추출하여 상기 OAD엔진(6)에서 그 소프트웨어를 업데이트할 수 있도록 한다.
또한, 상기 상주 프로그램 인터페이스(7)는 사용자의 설정에 의해 정해진 시간, 또는 특정 조건에 부합하는 시점에서 상기 OAD엔진(6)을 제어하여 소프트웨어를 업데이트한다.
이와 같은 과정 및 OAD 응용 프로그램 인터페이스(8)의 구성을 예를 들어 보다 상세히 설명한다.
도7은 본 발명에 적용되는 OAD 응용 프로그램 인터페이스(8)의 동작 순서도로서, 이에 도시한 바와 같이 OAD 서비스 모듈을 실행하고, 현재 디지털 방송 수신기에 내장된 소프트웨어의 현재 버전을 검출하는 단계와; 전송되는 OAD의 소프트웨어 버전을 검출하고, 그 검출된 소프트웨어의 버전과 현재 소프트웨어의 버전을 비교하여, 현재 소프트웨어가 신버전이면 상기 OAD 서비스 모듈의 동작을 종료하는 단계와; 상기 비교결과 현재 소프트웨어가 구버전이면, 디지털 방송수신기의 모델명을 검출하고, 그 검출된 모델이 지원하는 모듈 및 버전정보를 검출하는 단계와; 상기 트랜스포트 스트림(TS)에 OAD 서비스가 존재하는지 판단하여 존재하지 않으면 종료하는 단계와; 상기 트랜스포트 스트림(TS)에 OAD 서비스가 존재하면 OAD 엔진에 등록하고, 그 트랜스포트 스트림(TS)으로 부터 OAD 데이터를 필터링하여 OAD를 시작하는 단계와; 상기 OAD의 데이터에서 오류를 검출하여 오류가 없으면 소프트웨어를 업그레이드하고, 상기 OAD 서비스 모듈의 동작을 종료시키는 단계로 이루어진다.
상기와 같은 동작은 OAD 응용 프로그램 인터페이스(8)에서 자동으로 실행하는 과정이며, 사용자의 제어에 따라 정해진 시간에 자동으로 소프트웨어를 업그레이드하는 과정은 상기 상주 프로그램 인터페이스(7)에서 제어한다.
상기 OAD 응용 프로그램 인터페이스(8)를 구체적으로 살펴보면 다음과 같다.
표1은 상기 도7에서 OAD 서비스 모듈을 실행시켜, OAD 서비스를 실행하기 위한 OAD 응용 프로그램 인터페이스로서, 이에 도시한 바와 같이 입출력신호, 그 타입, 이름, 코멘트가 정의된다.
HANDLE OAD_ServiceOpen(void); - OAD_ServiceOpen
in/out type name comment
output GenericInteger (shall provide an IndirectReference to an IntergerVariable) handle this integer is a receiver-specific identifier for specific OAD stream
상기 표1을 포함하여 아래에 기술하는 표에 기재된 OAD 응용 프로그램 인터페이스에 사용하는 타입을 정리하면 다음과 같다.
HANDLE: 개발시 내부적인 구조체를 사용한다.
ReturnCode: 동작이 정상적으로 수행되는지 판단하기 위한 구조체이며, 일반적으로 INTEGER형태의 변수타입을 사용한다.
VersionInfo: 디지털 방송 수신기의 소프트웨어 버전정보를 획득하는 것으로, 스트링 형태를 가지며, 각각의 버전 필드는 특수문자로 구분된다.
IEEEOUI: IEEE OUI(ORGANIZATION UNIQUE IDENTIFIER)를 정의하는 3바이트 값이며, 본 발명에서는 이를 INTEGER 타입으로 정의하여 사용한다.
EventList: 이벤트의 집합이며, 이벤트는 프로그램의 동작중에 시스템 및 모듈이 제공하는 비동기적인 상태 값이며, 이는 개발시의 내부적인 구조체로 정의한다.
MuxInfo: 트랜스포트 스트림의 멀티플렉싱 정보를 저장하는 구조체이다. 이는 개발 내부적인 구조체를 따른다.
ExceptionType: 예외정보를 저장하는 구조체이며, 이역시 개발 내부적인 구조체를 따른다.
ExceptionHandler: 상기 exception이 발생했을때 이와 관련된 처리를 수행하는 핸들러에 대한 포인터이다.
표2는 OAD를 종료하기 위한 응용 프로그램 인터페이스이다.
void OAD_ServiceClose(HANDLE in_handle): -OAD_ServiceClose
in/out type name comment
output GenericInteger handle this integer is a receiver-specific identifier fo specific OAD stream
또한, 상기 도7에서 보여지는 디지털 방송 수신기에서 현재 사용하고 있는 소프트웨어의 버전을 획득하기 위해 아래의 표3에 나타낸 응용 프로그램 인터페이스를 사용한다.
ReturnCode OAD_GetSystemVersion(VersionInfo*out_sysVersion); - OAD_GetSystemVersion
in/out type name comment
output GenericInteger (shall provide an IndirectReference to an OctetstringVariable) SysVersion this octet string includes all version fields of current system
output GenericInteger (shall provide an IndirectReference to an IntergerVariable) returnCode Error code is carried by this system
상기 소프트웨어의 현재 버전을 검출하는 과정은 제조업체에서 정한 버전정보 필드에서 버전정보를 읽어오게 된다.
그 다음, 상기 도7에 도시한 바와 같이 전송되고 있는 OAD의 소프트웨어 이미지의 버전정보를 확인하며, 이는 아래의 표4에 나타낸 응용 프로그램 인터페이스 를 사용한다.
ReturnCode OAD_GetOADSWVersion(HANDLE in_handle, VersionInfo*out_swVersion); -OAD_GetOADSWVersion
in/out type name comment
input GenericInteger handle This integer is a receiver-specific identifier for specific OAD stream
output GenericInteger (shall provide an IndirectReference to an OctetstringVariable) swVersion this octet string includes all version field of current OAD stream
output GenericInteger (shall provide an IndirectReference to an IntergerVariable) returnCode Error code is carried by this variable
현재 전송되고 있는 OAD의 소프트웨어 이미지의 버전정보를 상기와 같은 응용 프로그램 인터페이스를 통해 검출하고, 이를 상기 검출된 현재 소프트웨어의 버전과 비교하게 된다.
이와 같은 비교결과 현재 소프트웨어의 버전과 OAD 소프트웨어 이미지의 버전정보가 동일하거나, 현재 소프트웨어의 버전이 더 상위버전인 경우 소프트웨어의 업그레이드 필요성이 없으며, 이에 따라 그 필요성이 없으면, 상기 표2에 나타낸 응용 프로그램 인터페이스를 사용하여, OAD모듈을 종료시킨다.
상기와 같이 검출된 버전을 비교하는 응용 프로그램 인터페이스(API)를 표5에 나타내었다.
ReturnCode OAD_CheckCompatibility(HANDLE in_handle, VersionInfo*in_sysVersion, boolean*out_needUpgrade);
in/out type name comment
input GenericInteger handle This integer is a receiver-specific identifier for specific OAD stream
input GenericOctetString sysVersion this octet string include all version field of current system
output GenericBoolean (shall provide an IndirectReference to an BooleanVariable) needUpgrade
output GenericInteger (shall provide an IndirectReference to an IntegerVariable) returnCode Error code is carried by this variable
상기와 같은 응용 프로그램 인터페이스를 사용하여 현재 시스템의 소프트웨어버전이 전송되는 소프트웨어의 버전보다 구버전인 경우, 업그레이드를 할 필요가 있으며, 그 업그레이드를 위해서는 현재 디지털 방송 수신기에 적합한 소프트웨어만을 선택하여 받을 필요가 있다.
이를 위해, 디지털 방송 수신기의 제조사 및 그 제조사의 고유 모델 정보를 검출하며, 그 검출에 관련된 응용 프로그램 인터페이스를 표6에 나타내었다.
ReturnCode OAD_GetSystemOUInumber(IEEEEOUT*out_ouiNumber); - OAD_GetSystemOUInumber
in/out type name comment
output GenericInteger(shall provide an IndirectReference to an IntegerVariable) ouiNumber
output GenericInteger(shall provide an IndirectReference to an IntegerVariable) returnCode Error code is carried by this variable
이는 디지털 방송 수신기가 어느 회사에서 개발된 것인지의 정보를 IEEE OUI(Organization Unique Identifier)값을 이용하여 알아내는 것이다.
이와 같이 제조사를 알아낸 후, 그 제조사의 모델에 따라 사용하는 소프트웨어가 다를 수 있으므로, 그 정확한 모델을 검출하게 되며, 이때의 응용 프로그램 인터페이스를 표7에 나타내었다.
ReturnCode OAD_GetSystemModelName(char*out_modelName); - OAD_GetSystemModelName
in/out type name comment
output GenericOctetString (shall provide an IndirectReference to an OctetStringVariable) modelName This octet string include model name of current system
output GenericInteger(shall provide an IndirectReference to an IntegerVariable) returnCode Error code is carried by this variable
이와 같이 디지털 방송 수신기의 제조사와 모델명을 검출하면, 트랜스포트 스트림(TS) 내에 포함된 업그레이드 된 소프트웨어 중, 해당하는 소프트웨어만을 검출하여 사용할 수 있다.
이를 위해서는 현재 검출된 디지털 방송 수신기의 모델명을 지원하는 모듈을 먼저 검출해야 하며, 이때 사용하는 응용 프로그램 인터페이스를 표8에 나타내었다.
in/out type name comment
output GenericOctetString (Shall provide an IndirectReference to an IntegerVariable) moduleNames this octet string includes module names of current system. Each modules can be separated and identified by some fields divided by special characters
output GenericInteger(shall provide an IndirectReference to an IntegerVariable) returnCode Error code is carried by this variable
상기 검출된 모듈은 각 제조사의 특정 모델에 따라 여러 모델이 하나의 모듈을 사용할 수 있고, 이때 제조사가 제공하는 소프트웨어는 각 모델에 따른 것이아니며, 기본적으로 모듈에 대한 소프트웨어이므로 각 모델의 모듈을 검출하여 그에 적당한 업그레이드된 소프트웨어를 다운로드 받을 수 있도록 한다.
그 다음, 상기 검출된 모듈의 버전정보를 검출한다.
그 버전정보의 검출을 위한 응용 프로그램 인터페이스를 표9에 나타내었다.
ReturnCode OAD_GetSystemModuleVersion(char*in_moduleName, VersionInfo *out_moduleVersion) - OAD_GetSystemModuleVersion
in/out type name comment
input GenericOctetString moduleName
output GenericOctetString (shall provide an IndrectReference to an OctetStringVariable) moduleVersion this octet string includes all version fields of specific module
output GenericInteger (shall provide an IndirectReference to an IntegerVariable returnCode Error code is carried by this variable
상기와 같이 디지털 방송 수신기의 모듈 이름과 버전을 확인한 후, OAD 서비스를 지원하기 위해 트랜스포트 스트림(TS)에 OAD 서비스가 존재하는지 확인한다.
이때 OAD서비스가 존재하지 않으면, 상기 표2에 도시한 응용 프로그램 인터페이스를 사용하여 OAD 서비스 모듈을 클로즈 시킨다.
아래의 표10은 OAD 서비스가 있는지 확인하는 응용 프로그램 인터페이스이다.
ReturnCode OAD_ServiceExits(HANDLE in_OADhandle, boolean*out_flags); - OAD_ServiceExits
in/out type name comment
input GenericInteger handle this integer is a receiver-specific identifier for specific OAD stream
output GenericBoolean (shall provide an IndirectReference to an BooleanVariable) flags
output GenericInteger (shall provide an IndirectReference to an IntegerVariable) returnCode Error code is carried by this variable
상기의 과정과 함께 상기 도7에는 나타내지 않았지만, 상기 OAD 응용 프로그램 인터페이스(8)에서는 항상 이벤트의 발생여부를 검출한다.
상기 서두에서 정의한 바와 같이 이벤트는 OAD를 실행하는중 디지털 방송 수신기 내에서는 비동기적으로 여러가지 상태의 변화가 발생하게 된다.
이는 사용자의 제어일 수 있고, 디지털 방송 수신기 내에서 자체적으로 발생할 수도 있다. 이때 각각의 상태에 대하여 특별한 이벤트로 정의를 한다.
이때, 정의된 이벤트중 현재 어플리케이션이 수신할 필요가 있는 이벤트에 대해서는 OAD엔진(6)에 등록하기 위해 사용한다.
표11에 상기 이벤트의 발생을 검출하는 응용 프로그램 인터페이스를 나타내었다.
ReturnCode OAD_SetNotifyEvent(EventList*in_eventList); - OAD_SetNotifyEvent
in/out type name comment
input GenericOctetString eventList this variable includes all events fields which is divided by special characters
output genericInteger (shall provide an IndirectReference to an IntegerVariable) returnCode error code is carried by this variable
이와 같은 상태에서 현재의 OAD 서비스 모듈을 현재의 응용 프로그램 인터페이스를 통해 제어하고 있는 모듈로 전송하고, 시스템 OAD의 상황에 맞는 이벤트를 수신할 모듈의 핸들(handle)값을 설정한다.
ReturnCode OAD_SetEventListener(HANDLE in_handle, HANDLE in_handler); - OAD_SetEventListener
in/out type name comment
input GenericInteger handle
input GenericInteger handler
output GenericInteger (shall provide an IndirectReference to an IntergerVariable) returnCode error code is carried by this variable
상기와 같이 비동기적으로 발생하는 이벤트에 대한 처리 대책을 마련하고, OAD를 수행한다.
상기 OAD를 수행하기 위해서는 각 디지털 방송 수신기에 적당한 소프트웨어만을 다운로드 받아야 하며, 상기 검출한 디지털 방송 수신기의 모델명, 그 모델명에 따른 모듈명과 버전을 이용한다.
이때 다운로드 하는 소프트웨어는 방송국에서 멀티플랙싱된 정보(MuxInfo)를 판독하여, 그 멀티플랙싱된 모든 디지털 방송 수신기의 소프트웨어중 필요한 소프트웨어만을 필터링하여 받게 된다.
이와 같은 필터링 과정을 표13에 나타내었다.
ReturnCode OAD_TuneToOADServiceChannel(HANDLE in_handle, MUXinfo*in_targetMux, int in_targetPid); - OAD_TuneToOADServiceChannel
in/out type name comment
input GenericInteger handle
input GenericOctetString targetMux
input GenericInteger targetPid
output GenericInteger(shall provide an IndirectReference to an IntegerVariable) returnCode error code is carried by this variable
상기와 같은 응용 프로그램 인터페이스를 사용하여 필터링된 업그레이드된 소프트웨어를 다운받기 시작하며, 그 다운로드되는 소프트웨어는 버퍼에 저장되며, 그 버퍼에 대한 기록을 저장하며, 이와 같은 다운로드 시작 및 그 다운로드 정보를 표시하는 응용 프로그램 인터페이스를 표14에 나타내었다.
ReturnCode OAD_StartDownload(HANDLE in_handle, char*in_swImageName, void*out_imageBuffer, int*out_sizeOfImage); - OAD_StartDownload
in/out type name comment
input GenericInteger handle
input GenericOctetString swImageName
output GenericOctetString (shall provide an IndirectReference to an OctetStringVariable) imageBuffer
output GenericInteger(shall provide an IndirectReference to an IntegerVariable) sizeOfImage
output GenericInteger(shall provide an IndirecReference to an IntegerVariable) returnCode error code is carried by this variable
상기와 같이 다운로드 받는 소프트웨어의 이미지는 버퍼에 저장되며, 상기 out_imageBuffer는 그 버퍼에 저장되는 위치를 기억하기 위한 변수이다. 또한 상기 out_sizeOfImage는 소프트웨어 이미지가 저장되는 버퍼의 크기를 정한다.
이와 같이 버퍼에 일시적으로 저장하는 이유는 현재 OAD가 비동기적으로 동작하기 때문에 OAD가 완료된 상태에서만 그 프로그램의 업그레이드가 이루어지게 하기 위함이다.
만약, OAD와 동시에 소프트웨어를 업그레이드 시키면, 그 업그레이드과정에서 이벤트가 발생하여 종료되는 경우, 디지털 방송 수신기를 사용할 수 없게 되는 상황이 발생할 수 있다.
즉, 이벤트의 발생에 의해 상기 OAD동작을 중단 할 수 있으며, 이와 같은 인터럽트는 이벤트의 발생을 감지한 아래 표15에 나타낸 응용 프로그램 인터페이스에 의해 이루어진다.
ReturnCode OAD_StopDownload(HANDLE in_handle); - OAD_StopDownload
in/out type name comment
input GenericInteger handle this integer is a receiver-specific identifier for specific OAD stream
output GenericInteger(shall provide an IndirectReference to an IntegerVariable) returnCode error code is carried by this variable
이처럼 다운로드를 중지할 수 있으며, 그 다운로드 상태와 진행정도를 검출할 수 있다. 이때 상태의 검출은 status를 통해 확인하며, 이를 표16에 나타내었다.
ReturnCode OAD_GetDownloadStatus(HANDLE in_handle, OADSTATUS*out_status); - OAD_GetDownloadStatus
in/out type name comment
input GenericInteger handle
output GenericOctetString (Shall provide an IndirectReference to an OctetStringVariable) status this octet string includes all status fields for notify the status of progress
output GenericInteger (Shall provide an IndirectReference to an IntegerVariable) returnCode error code is carried by this variable
이는 사용자가 OAD의 진행상황을 인지할 수 있도록 화면에 표시할 수 있도록 하는 기능이다.
그 다음, 상기 다운로드가 진행되어 그 다운로드가 완료되면, 그 다운로드 받은 소프트웨어 이미지의 데이터에 이상이 있는지, 혹은 데이터에 변조가 있는지를 검출한다.
이때 데이터에 이상이 있으면, 상기 다운로드과정을 재 실행하거나, 복원하는 과정을 거치게 되며, 이상이 없는 경우에는 그 다운로드된 업그레이드된 소프트웨어를 사용하여 업그레이드를 실시하게 되며, 상기 데이터의 오류여부를 검사하는 응용 프로그램 인터페이스를 표17에 나타내었다.
ReturnCode OAD_CheckDownloadImageIntegrity(HANDLE in_handle, void*in_imageBuffer, int in_length); - OAD_CheckDownloadImageIntegrity
in/out type name comment
input GenericInteger handle
input GenericOctetString imageBuffer
input GenericInteger length
output GenericInteger(shall provide an IndirectReference to an IntegerVariable) returnCode error code is carried by this variable
상기 데이터의 오류여부는 이미지 버퍼에 저장된 데이터의 길이를 이용하여 판단한다.
또한, 상기 설명한 상주 프로그램 인터페이스(7)는 사용자가 업그레이드 시간을 예약해둔 상태를 기억하고 있으며, 그 상주 프로그램 인터페이스(7)로 부터 그 업그레이드 시간에 대한 정보를 검출한 OAD응용 프로그램 인터페이스(8)는 그 설정된 시간에 OAD를 수행한다.
이를 분할하여 생각하면, 사용자는 OAD를 할 수 있는 시간을 복수의 시간대로 지정할 수 있으며, 그 시간대 내에서는 언제든지 OAD를 실시할 수 있도록 설정한다.
또한, 상기 OAD 응용 프로그램 인터페이스(8)에서는 상기 설정된 시간대와 현재시간을 비교하여 일치하는 경우 그 시간에 OAD를 수행한다.
아래의 표18에는 설정된 시간대의 리스트를 검출하고, 표19에서는 그 시간대중 특정시간을 검출하여 그 시간에 OAD를 수행하는 응용 프로그램 인터페이스를 나타내었다.
ReturnCode OAD_GetDownloadScheduleList(HANDLE in_handle, char**out_scheduleList); - OAD_GetDownloadScheduleList
in/out type name comment
input GenericInteger handle
output GenericOctetString(shall provide an IndirectReference to an OctetStringVariable) scheduleList each element of this list is separated by special characters
output GenericInteger(shall provide an IndirectReference to an IntegerVariable) returnCode error code is carried by this variable
ReturnCode OAD_SetDownloadReserveDateTime(HANDLE in_handle, DATETIME*in_reserveTime); - OAD_SetDownloadReserveDateTime
in/out type name comment
input GenericInteger handle
input GenericOctetString reserveTime each elements of time information is separated by special characters
output GenericInteger(Shall provide an IndirectReference to an IntegerVariable) returnCode error code is carried by this variable
상기와 같은 응용 프로그램 인터페이스를 사용하여, 사용자는 자정 또는 새벽의 특정한 시간에 디지털 방송 수신기 자체에서 자동으로 소프트웨어를 다운받아 업그레이드를 수행할 수 있도록 설정함으로써, 보다 그 사용효율을 향상시키게 된다.
상기와 같이 다운로드 및 오류검사가 완료된 후, 그 업그레이드된 소프트웨어 이미지를 사용하여 소프트웨어를 업그레이드 시키게 된다.
이는 상기 다운받은 소프트웨어 이미지를 디지털 방송 수신기가 제공하는 미 디어에 저장하는 과정으로 이루어진다.
상기 미디어는 디지털 방송 수신기의 모델에 따라 롬, 램, 하드디스크, 플래시 메모리 등 데이터를 저장 가능한 모든 수단을 포함한다.
이와 같은 업그레이드를 수행하는 응용 프로그램 인터페이스를 표20에 나타내었다.
ReturnCode OAD_StartWriteTo(HANDLE in_handle, MediaType in_index, void*in_swImageBuff, int in_length); - OAD_StartWriteTo
in/out type name comment
input GenericInteger handle
input GenericInteger index
input GenericOctetString swImageBuff
output GenericInteger length
output GenericInteger(shall provide an Inter returnCode error code is carried by this variable
상기 응용 프로그램 인터페이스에 의해 상기 버퍼에 저장되어 있는 소프트웨어 이미지는 지정한 미디어에 기록되어, 업그레이드가 이루어진다.
이와 같이 업그레이드를 수행하며, 부가적인 기능들을 설정할 필요가 있다. 이는 OAD를 수행하는 과정에서 발생하는 의외의 상황에 대처하기 위한 것이나, 디지털 방송 수신기의 제조업자가 사용자에게 전달하고자 하는 정보, 다운로드의 우선순위등을 설정할 수 있는 부가기능이며, 이에 적용되는 응용 프로그램 인터페이스는 다음과 같다.
표21은 디지털 방송 수신기가 설정된 시간에 자동으로 다운로드를 수행하는 중에 예측하지 못한 상황을 처리하기 위한 것으로, 그 상황에 따라 다운로드를 중단하거나, 일시정지 등 다양한 처리를 설정할 수 있다.
ReturnCode OAD_SetExceptionHandler(HANDLE in_handle, ExceptionType exception, ExceptionHandler pfExHandler); - OAD_SetExceptionHandler
in/out type name comment
input GenericInteger handle
input GenericInteger exception
output GenericInteger(shall provide an IndirectReference to an IntegerVariable) returnCode error code is carried by this variable
또한, 표22는 제조업자가 제공하는 정보(MIS, manufacturer information structure)를 이진데이터로 수신받기 위한 것이다.
ReturnCode OAD_GetMIS(HANDLE in_handle, char*out_MIS, int*out_length); - OAD_GetMIS
in/out type name comment
input GenericInteger handle
output GenericOctetString (shall provide an IndirectReference to an OctetStringVariable) MIS
output GenericInteger(shall provide an IndirectReference to an IntegerVariable) length
output GenericInteger(shall provide an IndirectReference to an IntegerVariable) returnCode error code is carried by this variable
그리고, 표23에 보인 응용 프로그램 인터페이스는 OAD의 다운로드 우선순위 를 결정하는 값을 인가받는다.
ReturnCode OAD_GetDownloadPriority(HANDLE in_handle, int*out_priority); - OAD_GetDownloadPriority
in/out type name comment
input GenericInteger handle
output GenericInteger (shall provide an IndirectReference to an OctetStringVariable) priority
output GenericInteger(shall provide an IndirectReference to an IntegerVariable) returnCode error code is carried by this variable
마지막으로 OAD를 수행하는 기기의 사용자 정보 필드를 전송한다. 이와 같은 정보필드는 제조업체에서 기재하는 특별한 주석 또는 기타정보가 저장되는 필드이다. 이를 표24에 나타내었다.
ReturnCode OAD_GetUserInformations(HANDLE in_handle, char*out_userInfo, int*out_length); - OAD_GetUserInformations
in/out type name comment
input GenericInteger handle
output GenericOctetString (shall provide an IndirectReference to an OctetStringVariable) userInfo
output GenericInteger(shall provide an IndirectReference to an IntegerVariable) length
output GenericInteger(shall provide an IndirectReference to an IntegerVariable) returnCode error code is carried by this variable
상기한 바와 같이 OAD를 수행하는 각 과정은 응용 프로그램 인터페이스로 구현함으로써, 사용자의 조작없이 지정한 시간대에 사용자의 방송시청을 방해하지 않으면서, 디지털 방송 수신기에 내장된 소프트웨어를 자동으로 업그레이드 할 수 있다.
상기한 바와 같이 본 발명 디지털 방송 수신기의 소프트웨어 업그레이드 장치 및 방법은 MHEG-5엔진에 사용자의 설정시간을 저장하고, 그 저장된 설정시간에 따라 오버 에어 다운로드를 수행할 수 있도록 하는 상주 프로그램 인터페이스를 구성하고, 그 상주 프로그램 인터페이스에 저장된 시간에 자동으로 그 디지털 방송 수신기에 해당하는 업그레이드 된 소프트웨어를 선택적으로 다운받아 안정적이며, 사용자의 조작없이 소프트웨어를 업그레이드 시킴으로써, 그 디지털 방송 수신기의 사용효율을 향상시키는 효과가 있다.

Claims (11)

  1. 방송사업자로부터 송신된 어플리케이션이 포함된 트랜스포트 스트림을 인가받는 MPEG2 수신부와;
    상기 트랜스포트 스트림에서 섹션데이터를 분리하는 MPEG2 섹션부와;
    상기 수신된 어플리케이션에서 MHEG 엔진에서 사용할 파일을 추출하는 디지털저장매체 명령 제어부와;
    상기 추출된 파일을 전송규약에 따라 디코딩하여 MHEG에서 사용할 데이터를 획득하는 ASN.1 디코더와;
    디지털 비디오 방송 정보를 처리하는 디지털 비디오 방송 처리부와;
    상기 트랜스포트 스트림에 포함된 업그레이드된 소프트웨어를 검출하여 디지털 방송 수신기에 내장된 소프트웨어를 업그레이드시키는 OAD(over air download)엔진과;
    상기 트랜스포트 스트림에 포함된 업데이트된 소프트웨어를 자동으로 전송받아 그 정보를 검출하여 사용자의 조작 없이 소프트웨어를 업그레이드시키는 OAD 응용 프로그램 인터페이스부로 구성하여 된 것을 특징으로 하는 디지털 방송 수신기의 소프트웨어 업그레이드 장치.
  2. 제 1항에 있어서,
    상기 디지털 비디오 방송 처리부에 내장되어 사용자가 설정한 시간을 저장하며, 상기 저장된 시간정보를 상기 OAD 응용 프로그램 인터페이스부에 인식시켜 사용자가 지정한 시간에 소프트웨어를 자동으로 업그레이드시키는 상주 프로그램 인터페이스부를 더 포함하여 구성된 것을 특징으로 하는 디지털 방송 수신기의 소프트웨어 업그레이드 장치.
  3. OAD(over air download) 서비스 모듈을 실행하고, 현재 디지털 방송 수신기에 내장된 소프트웨어의 현재 버전을 검출하는 제1 단계와;
    전송되는 트랜스포트 스트림에 포함된 소프트웨어의 버전을 검출하고, 상기 검출된 소프트웨어의 버전과 현재 소프트웨어의 버전을 비교하여, 현재 소프트웨어가 신버전이면 상기 OAD 서비스 모듈의 동작을 종료하는 제2 단계와;
    상기 비교결과 현재 소프트웨어가 구버전이면, 디지털 방송수신기의 제조사 및 모델명을 검출하고, 상기 검출된 모델이 지원하는 모듈과 상기 모듈의 버전정보를 검출하는 제3 단계와;
    상기 트랜스포트 스트림에 OAD 서비스가 존재하는지 판단하여 존재하지 않으면 종료하는 제4 단계와;
    상기 트랜스포트 스트림에 OAD 서비스가 존재하면 OAD 엔진에 등록하고, 상기 트랜스포트 스트림으로부터 OAD 데이터를 필터링하여 다운로드를 시작하는 제5 단계와;
    상기 OAD 데이터에서 오류를 검출하여 오류가 없으면 소프트웨어를 업그레이드하고, 상기 OAD 서비스 모듈의 동작을 종료시키는 제6 단계로 이루어진 것을 특징으로 하는 디지털 방송 수신기의 소프트웨어 업그레이드 방법.
  4. 제 3항에 있어서, 상기 제5 단계는,
    상기 다운로드되는 OAD 데이터를 버퍼에 저장하고, 상기 버퍼에 저장되는 위치와, OAD 데이터의 크기를 검출하여 저장하는 것을 특징으로 하는 디지털 방송 수신기의 소프트웨어 업그레이드 방법.
  5. 제 3항에 있어서,
    상기 다운로드 과정에서 상기 다운로드의 진행률을 표시하며, 상기 다운로드중 이벤트가 발생하면, 이벤트의 종류를 판별하는 단계와;
    상기 이벤트의 종류에 따라 OAD 과정을 종료하거나, 일시 정지시키는 단계와;
    상기 이벤트를 처리하는 단계와;
    상기 OAD 과정을 재수행하는 단계를 더 포함하여 구성한 것을 특징으로 하는 디지털 방송 수신기의 소프트웨어 업그레이드 방법.
  6. 제 3항에 있어서, 상기 제1 단계는,
    사용자가 OAD를 실시할 시간을 설정하면, 상기 설정된 시간에 맞춰 상기 OAD 서비스 모듈을 동작시키는 것을 특징으로 하는 디지털 방송 수신기의 소프트웨어 업그레이드 방법.
  7. 제 3항에 있어서, 상기 제 6단계는,
    상기 OAD 데이터에 대해 오류검사를 수행하는 제 1과정과;
    상기 오류검사의 수행 결과, 오류가 없으면, 버퍼에 일시 저장된 업그레이드된 소프트웨어 데이터를 상기 디지털 방송 수신기에서 제공하는 저장장치에 저장하여 소프트웨어를 업그레이드시키는 제 2과정과;
    상기 OAD 서비스 모듈의 동작을 종료시키는 제 3과정으로 이루어진 것을 특징으로 하는 디지털 방송 수신기의 소프트웨어 업그레이드 방법.
  8. 제 3항에 있어서, 상기 제5 단계는,
    다운로드의 우선순위를 정하여 OAD를 실행하는 단계와;
    사용자의 정보필드를 전송하는 단계와;
    제조업체가 사용자에게 전달하고자 하는 제조업체 정보 데이터(MIS, manufacturer information structure)를 이진 데이터로 다운받는 단계를 더 포함하여 된 것을 특징으로 하는 디지털 방송 수신기의 소프트웨어 업그레이드 방법.
  9. 디지털 방송 수신기를 통해 트랜스포트 스트림에 포함된 업그레이드된 소프트웨어를 자동으로 수신하는 OAD 응용 프로그램 인터페이스부와;
    상기 수신된 트랜스포트 스트림에 포함된 업그레이드된 소프트웨어를 검출하여 상기 디지털 방송 수신기에 내장된 소프트웨어를 업그레이드시키는 OAD 엔진을 포함하여 구성된 것을 특징으로 하는 디지털 방송 수신기의 소프트웨어 업그레이드 장치.
  10. 제9항에 있어서, 상기 OAD 응용 프로그램 인터페이스부는,
    상기 트랜스포트 스트림에 포함된 제1 소프트웨어 정보와 상기 디지털 방송 수신기에 내장된 제2 소프트웨어 정보를 비교하고, 상기 비교 결과, 상기 제2 소프트웨어 정보가 상기 제1 소프트웨어 정보보다 구버전이면, 상기 디지털 방송 수신기를 통해 업그레이드된 소프트웨어를 자동으로 수신하는 것을 특징으로 하는 디지털 방송 수신기의 소프트웨어 업그레이드 장치.
  11. 제9항에 있어서,
    사용자가 설정한 시간을 저장하고, 상기 저장된 시간정보를 상기 OAD 응용 프로그램 인터페이스부에 인식시켜, 상기 사용자가 지정한 시간에 소프트웨어를 자동으로 업그레이드시키는 상주 프로그램 인터페이스부를 더 포함하여 구성된 것을 특징으로 하는 디지털 방송 수신기의 소프트웨어 업그레이드 장치.
KR1020020003943A 2002-01-23 2002-01-23 디지털 방송 수신기의 소프트웨어 업그레이드 장치 및 방법 KR100892311B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020020003943A KR100892311B1 (ko) 2002-01-23 2002-01-23 디지털 방송 수신기의 소프트웨어 업그레이드 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020020003943A KR100892311B1 (ko) 2002-01-23 2002-01-23 디지털 방송 수신기의 소프트웨어 업그레이드 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20030063694A KR20030063694A (ko) 2003-07-31
KR100892311B1 true KR100892311B1 (ko) 2009-04-08

Family

ID=32219053

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020020003943A KR100892311B1 (ko) 2002-01-23 2002-01-23 디지털 방송 수신기의 소프트웨어 업그레이드 장치 및 방법

Country Status (1)

Country Link
KR (1) KR100892311B1 (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101053726B1 (ko) * 2003-09-17 2011-08-02 엘지전자 주식회사 디지털 방송 시스템의 소프트웨어 업그레이드 방법 및 장치
CN101917242B (zh) * 2003-11-04 2013-02-27 韩国电子通信研究院 接收数据广播服务以支持与移动网络连接的装置和方法
KR100643274B1 (ko) 2004-06-15 2006-11-10 삼성전자주식회사 데이터의 다운로드 진행상태를 디스플레이 하는 장치 및그 방법
KR100727147B1 (ko) * 2005-05-31 2007-06-13 엘지전자 주식회사 소프트웨어 업그레이드 방법 및 그에 따른 텔레비전 방송수상기
KR100793748B1 (ko) * 2005-05-20 2008-01-10 엘지전자 주식회사 소프트웨어 업그레이드 시스템 및 그 방법
KR100686011B1 (ko) 2004-11-29 2007-02-23 엘지전자 주식회사 무선신호를 이용한 영상디스플레이 기기의 설정정보다운로드시스템 및 그 방법
KR100755848B1 (ko) * 2005-06-03 2007-09-07 엘지전자 주식회사 디지털 수신기의 소프트웨어 업그레이드 방법 및 장치
KR101224304B1 (ko) * 2006-05-08 2013-01-18 엘지전자 주식회사 방송수신장치 및 그 소프트웨어 업그레이드 방법
KR101319890B1 (ko) * 2007-02-15 2013-10-18 엘지전자 주식회사 소프트웨어 업그레이드 방법, 장치 및 시스템
KR101445394B1 (ko) * 2008-03-28 2014-09-26 삼성전자주식회사 휴대 방송 시스템에서 단말기의 소프트웨어 업데이트 방법 및 장치

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030092684A (ko) * 2002-05-30 2003-12-06 주식회사 휴맥스 디지털 방송수신기에서의 운영 프로그램 갱신방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030092684A (ko) * 2002-05-30 2003-12-06 주식회사 휴맥스 디지털 방송수신기에서의 운영 프로그램 갱신방법

Also Published As

Publication number Publication date
KR20030063694A (ko) 2003-07-31

Similar Documents

Publication Publication Date Title
US9986198B2 (en) Receiving device, receiving method, transmitting device, and transmitting method
US7555000B2 (en) Digital broadcast system
US7950043B2 (en) Digital broadcast system, receiving apparatus and transmitting apparatus
EP1841228A1 (en) Broadcast reception device
US8001208B2 (en) Information processing apparatus
US20060193597A1 (en) Broadcast recording apparatus
CN100493159C (zh) 更新数字广播信号接收机中应用软件的组件的设备及方法
BR9810774B1 (pt) Aparelho para processamento de um fluxo de dados digital, dispositivo para operação, sistema para processamento de dados e método de processamento do dito fluxo de dados digital
US9219950B2 (en) Reproduction apparatus, reproduction method, and program
KR100892311B1 (ko) 디지털 방송 수신기의 소프트웨어 업그레이드 장치 및 방법
EP2103121A1 (en) Apparatus and method for configuring and executing function of application appropriate to broadcast-receiving device
US7197088B1 (en) Digital broadcast receiving system
KR101046867B1 (ko) 수신된 서비스들과 관련하여 조건화된 실행 판정을수행하고 상기 서비스들과 관련된 정보 메시지들을생성하는 장치들과 방법들, 및 관련 제품들
JP2008066764A (ja) 放送記録装置
US20160105717A1 (en) Receiving device, receiving method, transmitting device, transmitting method, and program
CN104012107A (zh) 处理与广播节目有关的双向服务的装置和方法
US8266669B2 (en) Method and apparatus for storing an interactive television program
JP4845257B2 (ja) テレビジョンシステムにおいて展開する要約を伝送し処理する方法、並びに、かかるシステムの受信器及び送信器
KR20050033850A (ko) 정보 제공 시스템 및 정보 제공 방법, 컨텐츠 녹화 장치및 컨텐츠 녹화 방법, 및 컴퓨터 프로그램
JP2002358228A (ja) デジタルデータ送受信システムおよびその方法
KR100609143B1 (ko) 데이터방송 수신기의 채널 변경시 부가데이터 출력 장치및 그 방법
JPH11239175A (ja) パケット処理装置
KR100657743B1 (ko) 복합제품에서의 펌웨어 업그레이드 방법 및 그 시스템
JP2000308025A (ja) 放送方法、及び受信装置
JP2000295638A (ja) 放送設備監視装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment
FPAY Annual fee payment
FPAY Annual fee payment

Payment date: 20160324

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20170314

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20180314

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20190314

Year of fee payment: 11