KR100586857B1 - Apparatus and method for decoding packetized program information, storage medium containing digital data, and method for forming program guide information - Google Patents

Apparatus and method for decoding packetized program information, storage medium containing digital data, and method for forming program guide information Download PDF

Info

Publication number
KR100586857B1
KR100586857B1 KR1020007009060D KR20007009060D KR100586857B1 KR 100586857 B1 KR100586857 B1 KR 100586857B1 KR 1020007009060 D KR1020007009060 D KR 1020007009060D KR 20007009060 D KR20007009060 D KR 20007009060D KR 100586857 B1 KR100586857 B1 KR 100586857B1
Authority
KR
South Korea
Prior art keywords
information
program
program guide
area
data
Prior art date
Application number
KR1020007009060D
Other languages
Korean (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 claimed from KR1020007009060A external-priority patent/KR20010041028A/en
Application granted granted Critical
Publication of KR100586857B1 publication Critical patent/KR100586857B1/en

Links

Images

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

많은 양의 가이드 정보(guide information)를 처리하기 위한 프로그램 가이드 정보 데이터 구조 및 처리 시스템(a program guide information data structure and processing system)이 전송 대역폭과 디코더 복잡도 사이의 바람직한 절충(compromise)을 달성시키는 것을 용이하게 한다. 디코더는 영역(예를 들어, 지리적, 방송적, 또는 네트워크 마켓 영역)과 방송 예정 시간별 객체를 포함하는 프로그램 가이드 정보를 정렬(collate)하기 위한 데이터를 획득한다. 디코더는, 특정 영역 및 방송 시간을 프로그램 가이드 정보와 연관시키기 위한 채널 및 프로그램 맵 정보를 포함하는, 정렬 데이터(the collation data)를 사용하여 프로그램 가이드 정보를 정렬한다. 디코더는 사용자 선택 입력에 응답하여 다른 영역과 연관된 적어도 두 개의 이용 가능한 프로그램 가이드로부터 선택된 프로그램 가이드를 제공하기 위해 프로그램 가이드 정보를 정렬한다. 정렬된 프로그램 가이드 정보는 디스플레이를 위해 처리된다. A program guide information data structure and processing system for processing large amounts of guide information facilitates achieving a desired compromise between transmission bandwidth and decoder complexity. Let's do it. The decoder obtains data for collating program guide information including an area (eg, a geographic, broadcast, or network market area) and an object per scheduled broadcast time. The decoder aligns the program guide information using the collation data, which includes channel and program map information for associating a specific region and broadcast time with the program guide information. The decoder aligns the program guide information to provide a selected program guide from at least two available program guides associated with other regions in response to a user selected input. The aligned program guide information is processed for display.

Description

패킷화된 프로그램 정보의 디코딩 방법과 장치, 디지털 데이터를 포함하는 저장 매체, 및 프로그램 가이드 정보의 형성 방법{APPARATUS AND METHOD FOR DECODING PACKETIZED PROGRAM INFORMATION, STORAGE MEDIUM CONTAINING DIGITAL DATA, AND METHOD FOR FORMING PROGRAM GUIDE INFORMATION}A method and apparatus for decoding packetized program information, a storage medium including digital data, and a method for forming program guide information, and the method of forming program guide information. [APPARATUS AND METHOD FOR DECODING PACKETIZED PROGRAM INFORMATION, STORAGE MEDIUM CONTAINING DIGITAL DATA, AND METHOD FOR FORMING PROGRAM GUIDE INFORMATION}

본 발명은 디지털 신호 처리 분야에 관한 것이며 특히 채널과 프로그램을 위한 프로그램 가이드에 관한 것이다. The present invention relates to the field of digital signal processing and in particular to program guides for channels and programs.

광역의 지리 영역(a wide geographic area)을 커버하는 잠재적으로 수천 개의 방송 프로그램 채널에 관한 정보를 전송하는 많은 프로그램 가이드의 형성과 처리는 다수의 문제를 야기한다. 커버되는 지리 영역은 예를 들어 미국 전체나 전 대륙을 에워쌀(encompass) 수 있으며 많은 양의 정보가 방송 자료의 순차 디코딩을 용이하게 하는 포맷으로 획득, 정렬(collated), 인코딩, 및 방송되어야만 할 수도 있다. 그러한 많은 양의 정보를 처리하는데 필요한 대역폭은 처리되는 정보의 양에 비례하여 확대된다. 그러므로, 이용 가능한 대역폭의 사용을 최적화시키기 위하여 프로그램 가이드 데이터를 구조화시켜야 할 필요성이 존재한다. The formation and processing of many program guides that transmit information about potentially thousands of broadcast program channels covering a wide geographic area creates a number of problems. The geographic area covered may enclose the entire United States or the entire continent, for example, and large amounts of information must be obtained, collated, encoded, and broadcast in a format that facilitates sequential decoding of broadcast material. It may be. The bandwidth required to process such a large amount of information expands in proportion to the amount of information that is processed. Therefore, there is a need to structure program guide data to optimize the use of available bandwidth.

프로그램 가이드 데이터 구조를 최적화시킬 수 있는 정도는 구조화된 데이터를 수신하는 디코더 유닛의 가격에 따라 제한된다. 사실, 전송 대역폭과 디코더 복잡도 사이에 이루어지는 절충이 존재한다. 절충의 한 측면(one extreme of the compromise)에서, 프로그램 가이드 정보의 모든 이중적이며 중복적인 데이터 요소(all duplicative and redundant data elements)가 필요한 전송 및 처리 대역폭을 최소화시키기 위하여 제거된다. 그 결과, 각 디코더는 전체 프로그램 가이드 데이터스트림으로부터 정보를 수신, 버퍼링(buffer), 파싱(parse) 및 정렬(collate)할 필요가 있으며 이로써 복잡하고 고가인 디코더를 필요로 한다. The degree to which the program guide data structure can be optimized is limited by the cost of the decoder unit receiving the structured data. In fact, there is a tradeoff between transmission bandwidth and decoder complexity. In one extreme of the compromise, all duplicative and redundant data elements of program guide information are removed to minimize the necessary transmission and processing bandwidth. As a result, each decoder needs to receive, buffer, parse and collate information from the entire program guide datastream, thereby requiring a complex and expensive decoder.

절충의 다른 측면(the other extreme of the compromise)에서, 프로그램 가이드 정보는 특정 사용자나 사용자 그룹의 요구조건에 맞추어진 개개 서브세트로 분할(partition)된다. 이것은, 각 디코더가 처리 전력을 덜 필요로 하는 더 간단하고 더 경제적인 디코더를 사용하는 것을 용이하게 하는 최소의 중복 정보를 포함하는 목표 정보(targeted informatin)를 수신, 버퍼링, 파싱, 및 정렬할 필요가 있다는 것을 의미한다. 그러나, 그러한 분할은 다른 분할에 해당하는 다수의 다른 프로그램 가이드 서브세트에 있는 이중적인 프로그램 가이드 정보 아이템을 통합하여야 하는 필요성으로 인하여 증가된 중복 정보를 수용할만큼 더 큰 전송 대역폭을 필요로 한다. 많은 양의 프로그램 가이드 정보를 처리하고 전송 대역폭과 디코더 복잡도 사이에 바람직한 절충을 달성하는 것과 관련된 문제는 본 발명에 따른 시스템을 통해 해소된다. 디코더에 의한 디코딩과 선택 가능한 프로그램 가이드의 생성을 모두 용이하게 하기 위해 프로그램 가이드 데이터를 구조화하고 분할하는 것과 관련된 파생 문제도 본 발명에 따른 시스템을 통해 해소된다. In the other extreme of the compromise, program guide information is partitioned into individual subsets tailored to the requirements of a particular user or group of users. This requires receiving, buffering, parsing, and sorting targeted informatin that includes minimal redundant information that facilitates each decoder to use a simpler and more economical decoder that requires less processing power. That means there is. However, such a partition requires a larger transmission bandwidth to accommodate the increased redundant information due to the need to consolidate dual program guide information items in multiple different program guide subsets corresponding to different partitions. The problems associated with processing large amounts of program guide information and achieving a desirable compromise between transmission bandwidth and decoder complexity are solved through the system according to the invention. Derivation problems associated with structuring and partitioning program guide data to facilitate both decoding by the decoder and generation of selectable program guides are also solved through the system according to the invention.

디코더는 영역{예를 들어, 지리적, 방송적, 또는 네트워크 마켓(market) 영역}과 방송 예정 시간 모두에 따른 객체를 포함하는 프로그램 가이드 정보를 정렬(collate)하기 위한 데이터를 획득한다. 디코더는 특정 영역과 방송 시간을 프로그램 가이드 정보와 연관시키는 채널 및 프로그램 맵 정보를 포함하는 정렬 데이터를 사용하여 프로그램 가이드 정보를 정렬한다. 디코더는 사용자 선택 입력에 응답하여 다른 영역과 연관된 적어도 두 개의 이용 가능한 프로그램 가이드로부터 선택된 프로그램 가이드를 제공하기 위해 프로그램 가이드 정보를 정렬한다. 정렬된 프로그램 가이드 정보는 디스플레이를 위해 처리된다. The decoder obtains data for collating program guide information including objects according to both a region (eg, geographical, broadcast, or network market region) and scheduled broadcast time. The decoder aligns the program guide information using alignment data including channel and program map information that associates a particular area and broadcast time with the program guide information. The decoder aligns the program guide information to provide a selected program guide from at least two available program guides associated with other regions in response to a user selected input. The aligned program guide information is processed for display.

도 1 은 본 발명에 따라 프로그램 특정 정보를 전송하는데 사용되는 매우 큰 프로그램 가이드(VLPG : Very Large Program Guide) 계층 파일/표 포맷(hierarchical file/table format)을 도시하는 도면. 1 illustrates a Very Large Program Guide (VLPG) hierarchical file / table format used for transmitting program specific information in accordance with the present invention.

도 2 는 본 발명에 따라 프로그램 특정 정보를 전송하는데 사용되는 마스터 가이드 표(MGT : Master Guide Table) 포맷을 도시하는 도면.FIG. 2 is a diagram illustrating a Master Guide Table (MGT) format used for transmitting program specific information according to the present invention. FIG.

도 3 은 본 발명에 따라 영역 기반 분할(area based partitioning)을 통합하는 프로그램 특정 정보를 전송하는데 사용되는 채널 정보 표(CIT : Channel Informatin Table) 포맷을 도시하는 도면. 3 illustrates a Channel Informatin Table (CIT) format used to transmit program specific information incorporating area based partitioning in accordance with the present invention.

도 4 는 본 발명에 따라 영역 및 시간 기반 분할(area and time based partitioning)을 통합하는 멀티미디어 객체 데이터 구조 포맷(a multimedia object data structure format)을 도시하는 도면.4 illustrates a multimedia object data structure format incorporating area and time based partitioning in accordance with the present invention.

도 5, 도 6 및 도 7 은 본 발명에 따라 채널, 이벤트 및 제어 객체 기초 정 보 파일(channel, event and control object basic information files)을 위한 데이터 구조 예를 도시하는 도면. 5, 6 and 7 illustrate examples of data structures for channel, event and control object basic information files in accordance with the present invention.

도 8 은 영역 및 시간 기반 분할을 가능하게 하는 식별자 필드(identifier fields)를 포함하는 (도 5, 도 6, 및 도 7의 표에서 사용된) MPEG 호환 카루젤 Id(an MPEG compatible carouselId)를 위한 데이터 구조를 도시하는 도면. FIG. 8 illustrates an MPEG compatible carouselId (used in the tables of FIGS. 5, 6, and 7) including identifier fields that enable region and time based segmentation. Figure showing a data structure.

도 9 는 본 발명에 따라 다이나믹 프로그램 가이드 재분할을 지원하는 계층 기반 버전 식별자 및 셀 분할 식별자(hierarchical based version identifiers and cell partition identifiers)를 통합하는 마스터 데이터베이스 표 데이터 구조 포맷(a Master Database Table data structure format)을 도시하는 도면. 9 is a Master Database Table data structure format incorporating hierarchical based version identifiers and cell partition identifiers supporting dynamic program guide repartitioning in accordance with the present invention. Drawings showing.

도 10 은 본 발명에 따라 영역, 시간, 및 복잡도 기반 식별자 필드(area, time and complexity based identifier fields)를 통합하는 (도 9의 표에 사용된 바와 같은) 셀 타입의 지시자(a cell type indicator)를 위한 예시적 데이터 구조를 도시하는 도면.FIG. 10 is a cell type indicator (as used in the table of FIG. 9) incorporating area, time and complexity based identifier fields in accordance with the present invention. Illustrating an example data structure for a system.

도 11 은 본 발명에 따라 채널, 이벤트 및 제어 서브 디렉토리를 포함하는 객체 데이터베이스를 위한 계층 디렉토리 포맷을 도시하는 도면.11 illustrates a hierarchical directory format for an object database containing channel, event and control subdirectories in accordance with the present invention.

도 12 는 본 발명에 따라 프로그램 특정 정보를 발생시키는 방법을 도시하는 도면.12 illustrates a method of generating program specific information in accordance with the present invention.

도 13 은 본 발명의 원리에 따라 VLPG 정보를 포함하는 방송 신호를 복조하고 디코딩하기 위한 디지털 비디오 수신 장치의 블록도.13 is a block diagram of a digital video receiving apparatus for demodulating and decoding a broadcast signal including VLPG information in accordance with the principles of the present invention.

디지털 포맷으로 전송되는 방송 프로그램은 프로그램과 관련 데이터를 디코딩하는데 사용하는 프로그램 특정 정보(PSI : Program Specific Information)를 포함하는 보조 정보(ancillary programs)와 함께 인코딩 되고 방송된다. 프로그램 특정 정보는 선택된 프로그램 채널의 내용을 회복(recover)하기 위해 개개 데이터 패킷을 식별하고 어셈블(assemble)시키는데 사용하는 프로그램 가이드 데이터 및 정보를 포함한다. 프로그램 특정 정보 및 관련 프로그램 내용은, 예를 들어 전체 대륙, 국가(countries) 또는 주(states)와 같은 광역의 지리 영역을 커버하는 잠재적으로 수천 개의 방송 프로그램 채널과 관련 멀티미디어 객체에 관한 정보를 전송하는 대형의 프로그램 가이드를 전송하도록 유리하게 구조화되어 있다. 멀티미디어 객체(the multimedia objects)는 오디오 클립(audio clips), 비디오 클립, 애니메이션, 정지 영상(still images), 인터넷 데이터, 이메일 메시지, 텍스트 및 다른 형태의 데이터를 포함한다. 멀티미디어 객체는, 독립 유닛으로 볼 수 있는 데이터 실체(data entities)이며 개개 프로그램 내의 영상 또는 프로그램 가이드 성분과 연관되어 있다. 멀티미디어 객체는 예를 들어 프로그램 가이드 또는 비디오 프로그램을 나타내는 복합 비디오 영상으로 통합(incorporate)된다. 보조 정보 데이터 구조는 일방향 통신 애플리케이션, 예를 들면, 수동형 보기 기능과 양방향 통신 애플리케이션, 예를 들면, 대화형 기능을 지원하며 또한 저장 애플리케이션도 지원한다. A broadcast program transmitted in a digital format is encoded and broadcast together with ancillary programs including program specific information (PSI) used to decode a program and related data. Program specific information includes program guide data and information used to identify and assemble individual data packets to recover the contents of a selected program channel. Program specific information and associated program content may be used to transmit information about potentially thousands of broadcast program channels and associated multimedia objects covering, for example, geographic areas of a wide area such as entire continents, countries or states. It is advantageously structured to carry large program guides. The multimedia objects include audio clips, video clips, animations, still images, internet data, email messages, text and other forms of data. Multimedia objects are data entities that can be viewed as independent units and are associated with images or program guide components within an individual program. Multimedia objects are incorporated into, for example, composite video images representing program guides or video programs. The auxiliary information data structure supports one-way communication applications such as passive viewing and two-way communication applications such as interactive and also supports storage applications.

프로그램 특정 정보 및 관련 프로그램 내용은, 방송/멀티캐스트 모드(broadcast/multicast mode)에서 인터넷을 통해, 또는 가입이나 시청에 대한 유료 요금 기반(a subscription or other pay per view basis)으로 지상, 위성 또는 케이블 방송을 통해 여러 서비스 제공자에 의해 전송될 수 있다. 데이터 구조는 여러 데이터 포맷으로 인코딩된 멀티미디어 객체의 획득과 디코딩을 용이하게 하며 이 객체는 로컬 및 원격 소스(local and remote sources) 모두로부터 여러 통신 프로토콜로 통신된다. Program specific information and related program content may be sent via terrestrial, satellite or cable over the internet in broadcast / multicast mode or on a subscription or other pay per view basis. It may be transmitted by various service providers through broadcast. The data structure facilitates the acquisition and decoding of multimedia objects encoded in various data formats, which are communicated in various communication protocols from both local and remote sources.

이후 명세서에서, MPEG 호환으로 언급되는 데이터는 "MPEG 표준"이라고 하는 MPEG2(Moving Pictures Expert Group) 영상 인코딩 표준에 따른다. 이 표준은 시스템 인코딩 섹션(ISO/IEC 13818-1, 1994년 6월, 제 10판)과 비디오 인코딩 섹션(ISO/IEC 13818-2, 1995년 1월, 20판)으로 구성된다. In the following specification, the data referred to as MPEG compatibility is in accordance with the Moving Pictures Expert Group (MPEG2) picture encoding standard called the "MPEG standard". This standard consists of a system encoding section (ISO / IEC 13818-1, June 1994, 10th edition) and a video encoding section (ISO / IEC 13818-2, January 1995, 20th edition).

본 발명의 원리에 따르는 데이터 구조 요소는 (MPEG 시스템 표준의 섹션 2.4.4에 의하여) MPEG 호환 포맷으로 전송될 수 있으며 또는 지상 방송 및 케이블을 위한 프로그램 및 시스템 정보 프로토콜(the Program and System Information Protocol for Terrestrial Broadcast and Cable){이후 명세서에서 PSIP 표준으로 언급되며, 1997년 11월 10일, 고화질 텔레비전 시스템 위원회(ATSC : Advanced Television Systems Committee) 발행}과 호환되는 포맷, 또는 다른 ATSC 표준과 호환되는 포맷으로 전송될 수 있다. 더욱이, 데이터 구조 요소는 MPEG-4 또는 MPEG-7 표준과 같은 다른 MPEG 표준에 따라 형성될 수 있으며 또는 특정 시스템의 독점 또는 주문 사양에 따라 형성될 수 있다. Data structure elements in accordance with the principles of the present invention may be transmitted in an MPEG compatible format (as per Section 2.4.4 of the MPEG System Standard) or the Program and System Information Protocol for terrestrial broadcast and cable Terrestrial Broadcast and Cable (hereafter referred to as the PSIP standard in the specification, published by Advanced Television Systems Committee (ATSC) on November 10, 1997), or in a format compatible with other ATSC standards. Can be sent. Moreover, data structure elements may be formed in accordance with other MPEG standards, such as the MPEG-4 or MPEG-7 standards, or may be formed according to proprietary or custom specifications of a particular system.

본 발명의 원리는 코딩 타입이나 변조 포맷이 변화될 수 있는 지상, 케이블, 위성, 인터넷 또는 컴퓨터 네트워크 방송 시스템에 적용될 수 있다. 그러한 시스템 은 예를 들어, 다른 타입의 인코딩 데이터스트림을 포함하는 비-MPEG 호환 시스템과 프로그램 특정 정보를 전송하는 다른 방법을 포함할 수 있다. 더욱이, 개시되는 시스템이 방송 프로그램을 처리하는 것으로 기술되어 있지만, 이것은 단지 예시적인 것이다. '프로그램'이라는 용어는 예를 들어 오디오 데이터, 전화 메시지, 컴퓨터 프로그램, 인터넷 데이터 또는 다른 통신 데이터와 같은 임의 형태의 패킷화된 데이터를 나타내는데 사용된다. The principles of the present invention can be applied to terrestrial, cable, satellite, Internet or computer network broadcast systems in which coding type or modulation format can be changed. Such a system may include, for example, a non-MPEG compatible system including other types of encoded datastreams and other methods of transmitting program specific information. Moreover, while the disclosed system is described as processing broadcast programs, this is merely exemplary. The term 'program' is used to refer to any form of packetized data such as, for example, audio data, telephone messages, computer programs, Internet data or other communication data.

도 1 은 프로그램 특정 정보를 전송하는 트랜스포트 스트림 레벨 데이터 구조에 사용하기 위한 매우 큰 프로그램 가이드(VLPG : very large program guide) 계층 파일/표 포맷의 개요를 도시하는 도면이다. 이 구조는 다수의 계층적으로 배열되며 상호 링크된 표(multiple hierarchically arranged and inter-linked tables)를 포함한다. 이 표는 TV 채널, TV 프로그램, 채널 파라미터, 프로그램 파라미터, 관련 멀티미디어 객체 및 객체 파라미터 등의 집합 또는 순서를 나열하고 기술하는데 사용되는 데이터 및 파라미터의 어레이로 구성된다. 도 1 의 예시적인 계층적 표 배열은 마스터 가이드 표(MGT : Master Guide Table)(120), 마스터 데이터베이스 표(MDBT : Master Database Table)(122), 내용 및 분류 표(CCT : Content and Classification Table)(114), 시스템 시간 표(STT : System Time Table)(116) 및 등급 지역 표(RRT : Rating Region Table)(118)를 포함한다. 도 1 의 계층 조직은, 채널 정보가 네트워크 제공자, 예를 들면 CBS, NBC, HBO, 콤캐스트(Comcast) 등을 통해 정렬되는 지상, 케이블, 및 위성 채널 정보 표(Terrestrial, Cable and Satellite Channel Information Tables){각각 TCIT 아이템(112), CCIT 아이템(110), 및 SCIT 아이템(108)}를 또한 도시한다. 추가적인 표는, 프로그램 또는 서비스가 소스에 의해 정렬되는 예정 정보 표(Schedule Information Tables){SIT(106), SIT(104) 및 SIT(102)}를 포함한다. 1 is a diagram illustrating an outline of a very large program guide (VLPG) hierarchical file / table format for use in a transport stream level data structure for carrying program specific information. This structure contains a number of hierarchically arranged and inter-linked tables. This table consists of an array of data and parameters used to list and describe a set or order of TV channels, TV programs, channel parameters, program parameters, related multimedia objects and object parameters, and the like. The exemplary hierarchical table arrangement of FIG. 1 includes a Master Guide Table (MGT) 120, a Master Database Table (MDBT) 122, and a Content and Classification Table (CCT). 114, a System Time Table (STT) 116, and a Rating Region Table (RRT) 118. The hierarchical organization of FIG. 1 shows terrestrial, cable, and satellite channel information tables in which channel information is arranged through network providers such as CBS, NBC, HBO, Comcast, and the like. ) (TCIT item 112, CCIT item 110, and SCIT item 108, respectively). Additional tables include Schedule Information Tables (SIT 106, SIT 104, and SIT 102) in which programs or services are sorted by source.

MGT 는 다른 표에서 전송되는 프로그램 특정 정보를 획득하는데 사용되는 정보를 포함한다. 채널 정보 표 - CIT(예를 들어, TCIT, CCIT, 또는 SCIT)는 사용자 선택 프로그램 채널(a User selected program channel)을 수신하기 위해 동조하며 항해하기 위한 정보를 포함한다. SIT 는 CIT 에 리스트 된 채널에서 수신 가능한 프로그램{이벤트(events)}의 설명 리스트를 포함한다. CIT, SIT 또는 다른 표 중 어느 하나는 사용자가 특정 프로그램을 선택하고 특정 프로그램에 동조하게 하는 정보를 전송하는데 사용될 수 있다. CIT 는 몇몇 이벤트(TV 프로그램) 상에서 일정하게 유지되는 오디오/비디오 프로그램 내용 데이터를 획득하기 위한 파라미터를 전송하는데 일반적으로 사용된다. SIT 는 이벤트(개개 TV 프로그램)에 대하여 일정하게 유지되는 오디오/비디오 프로그램 내용 데이터의 파라미터를 전송하는데 일반적으로 사용된다. 계층 조직 표 내에 있는 아이템을 기술하고 보충하는 추가적인 프로그램 특정 정보는 기술자 정보 요소(descriptor information elements) 내에서 전송된다. The MGT contains information used to obtain program specific information transmitted in another table. Channel Information Table-A CIT (eg, TCIT, CCIT, or SCIT) contains information for navigating and navigating to receive a User Selected Program Channel. The SIT contains a descriptive list of programs {events} that can be received on the channels listed in the CIT. Either CIT, SIT or other table can be used to transmit information that allows a user to select a particular program and tune to that particular program. CIT is commonly used to transmit parameters for obtaining audio / video program content data that remains constant on some events (TV programs). SIT is commonly used to transmit parameters of audio / video program content data that is kept constant for events (individual TV programs). Additional program specific information describing and supplementing the items in the hierarchical organization table is transmitted in descriptor information elements.

광역 프로그램 가이드(a wide area program guide)를 위해 충분한 데이터를 수용하기 위하여, 도 1 의 계층 조직에서 개개 표는 영역(예를 들어, 지리적, 방송적, 또는 네트워크 마켓 영역)과 예정 방송 시간 모두에 의해 유리하게 분할할 수 있다. 더욱이, 표 데이터는 예를 들어 디코딩 할 때 축척(scalability)을 가능하게 하기 위하여 데이터나 멀티미디어 객체의 복잡도 레벨과 같은 제 3 파라미터에 따라 추가적으로 분할될 수 있다. 이 타입의 프로그램 가이드 분할은 다이아그램(100)에 묘사되어 있는 3 차원 셀로 나타나 있다. 사실, 도 1 의 VLPG 구조는 가이드 제공자가 필요로 할 수 있는 사실상 임의 타입의 분할을 지원한다. 영역 및 시간 기반 분할은, 도 1 의 하나 이상의 표에서와 관련 객체 데이터에서 시간 및 영역 식별자 모두를 포함함으로써 달성된다. 이 방식으로 통신 프로토콜의 트랜스포트 레벨에서의 영역 및 시간 분할 식별자를 포함하는 이점은, 이것이 디코더에 {예를 들어 데이터를 파싱(parsing)하기 위한} 처리 부담(the processing burden)을 감소시킨다는 점인데, 그렇치 않은 경우 이 처리 부담은 분할이 더 상위 레벨, 즉 애플리케이션 계층 레벨에서 실행되면 일어난다. 그 결과, 프로그램 가이드 필터링은 트랜스포트 계층에서 실행되며 디코더 유닛에 포함된 트랜스포트 칩을 통해 직접 수행된다. 그러나, 원한다면 그러한 더 상위 레벨에서 표 데이터 및 객체 모두에 대해 시간 및 영역 식별자를 포함하는 것도 가능하다. In order to accommodate sufficient data for a wide area program guide, the individual tables in the hierarchical organization of FIG. 1 are used in both the area (eg, geographical, broadcast, or network market area) and scheduled broadcast time. Can be advantageously divided. Moreover, the table data can be further partitioned according to third parameters such as the complexity level of the data or multimedia objects, for example to enable scalability when decoding. This type of program guide segmentation is represented by the three-dimensional cells depicted in diagram 100. In fact, the VLPG structure of FIG. 1 supports virtually any type of partitioning that a guide provider may need. Region and time based segmentation is achieved by including both time and region identifiers in one or more tables of FIG. 1 and in the associated object data. The advantage of including area and time division identifiers at the transport level of the communication protocol in this way is that this reduces the processing burden (e.g. for parsing data) to the decoder. Otherwise, this processing burden arises when the partitioning is executed at a higher level, that is, the application layer level. As a result, program guide filtering is performed at the transport layer and is performed directly through the transport chip included in the decoder unit. However, it is also possible to include time and area identifiers for both table data and objects at such higher levels if desired.

프로그램 가이드를 전송하며 처리할 때, 대역폭의 요구는 전송되어야 하는 관련 객체의 수, 및 채널과 프로그램 정보의 양에 따라 증가한다. 대형 프로그램 가이드에 대하여, 간단한 경우라도 수천 개의 정보와 객체 아이템을 전송할 필요가 있다. 간단한 프로그램 가이드는 영상, 오디오, 비디오 클립 중 어느 것도 가지지 않을 수 있지만, 전달되는 수천 개의 프로그램(이벤트)을 위한 적어도 텍스트 기술을 여전히 필요로 할 것이다. 단일 바이너리 또는 데이터 파일에서 중복 정보가 없으며 분할이 없이(without redundancy and without partitions) 프로그램 가이드 정보를 전송하는 것이 가능하다. 그러한 경우와 트랜스포트 레벨 분할이 없는 경우에, 텍스트 기술(예를 들면)은 단일 데이터 파일로 종료할 것이다. 이것은, 예를 들면 산 디에고(San Diego)에 있는 디코더는 미국의 모든 다른 도시로부터의 모든 자료(이벤트 텍스트 기술, 영상, 또는 임의의 다른 객체)를 수신할 수 있으며 트랜스포트 레벨에서 쓸모 없는 자료를 버릴(discard) 수 없을 것이라는 것을 의미한다. 결과적으로, 트랜스포트 레벨 분할이 없는 경우에, 디코더는 애플리케이션 레벨에서 수신된 프로그램 가이드 정보를 필터링하는 것이 필요하다. 이것은, 프로세서 집약적, 시간 소비적이며 부담되는 작업(a processor intensive, time-consuming and burdensome task)이 되며, 정교한 소프트웨어와 상당한 처리 능률을 요구하며 디코더 유닛의 비용을 증가시킨다. When transmitting and processing program guides, the demand for bandwidth increases with the number of related objects to be transmitted and the amount of channel and program information. For large program guides, it is necessary to transfer thousands of information and object items even in simple cases. A simple program guide may not have any of the video, audio, or video clips, but will still require at least textual skills for thousands of programs (events) to be delivered. It is possible to transfer program guide information with no redundancy and without partitions in a single binary or data file. In such cases and in the absence of transport level splitting, the text description (eg) will end up with a single data file. This means, for example, that a decoder in San Diego can receive any data (event text descriptions, images, or any other object) from any other city in the United States, and useless at the transport level. It means it will not be discarded. As a result, in the absence of transport level partitioning, the decoder needs to filter the program guide information received at the application level. This becomes a processor intensive, time-consuming and burdensome task, requires sophisticated software and significant processing efficiency and increases the cost of the decoder unit.

도 1 의 VLPG 데이터 구조는 트랜스포트 계층 레벨에서 영역 기반 분할(area-based partitioning)을 사용하는 옵션을 유리하게 제공한다. 프로그램 가이드 정보는 예를 들어 동부영역(an Eastern area), 중부영역(a Central area), 산악영역(a Mountain area), 및 태평양 영역(a Pacific area)으로 분할될 수 있다. 그후 산 디에고에 있는 디코더는 다른 3 개의 지역으로부터 더 이상 프로그램 가이드 정보를 수신할 필요가 없게 될 것이다. 그러므로, 그러한 분할은 디코더에 대한 파싱 부담과 필터링 부담을 현저히 감소시키며 {예를 들어 주 단위 기반의(on a state by state basis)}더 작은 분할은 파싱 및 필터링 부담을 더 감소시킨다. 그러한 분할의 다른 이점은 적용 가능한 분할된 프로그램 가이드 정보를 다운로드 하는 것과 관련된 시간이 감소된다는 점이다. The VLPG data structure of FIG. 1 advantageously provides the option of using area-based partitioning at the transport layer level. The program guide information may be divided into, for example, an eastern area, a central area, a mountain area, and a pacific area. The decoder in San Diego will then no longer need to receive program guide information from the other three regions. Therefore, such partitioning significantly reduces the parsing and filtering burdens on the decoder and smaller partitions (eg, on a state by state basis) further reduce the parsing and filtering burden. Another advantage of such partitioning is that the time associated with downloading the applicable partitioned program guide information is reduced.

그러나, 프로그램 가이드 정보를 분할하는 것은 중복 프로그램 가이드 데이터를 도입하는 것을 포함하는데, 그 이유는 그러한 분할이 데이터 아이템의 복제성(duplication)을 필요로 하기 때문이다. 일례로서, 만약 야구 게임이 태평양 및 산악 지역에 방송되고 있다면, 관련 텍스트 기술 정보의 두 개의 복사본(two copies)이 전송되어야 하는데, 태평양 및 산악 지역을 목표로 하는 각 분할에 대하여 하나의 복사본이 할당된다. 분할의 수가 증가함에 따라 중복 정보의 양(the quantity of redundant information)도 또한 증가되어 더 많은 전송 대역폭을 필요로 한다는 것을 볼 수 있다. 결과적으로, 대역폭과 정보 필터링의 부담 사이에는 트레이드 오프(a trade-off) 관계가 있다. 많은 수의 분할은 정보의 필터링을 빠르게 하지만 대역폭의 증가를 요구한다는 것을 의미한다. 단지 하나의 분할만이 있을 때는 중복의 정보가 없으며 그리하여 대역폭이 최소가 되지만 필터링 부담은 더 커지는데, 그 이유는 모든 프로그램 가이드 정보 아이템이 파싱되어야 하기 때문이다. However, dividing the program guide information includes introducing redundant program guide data, because such partitioning requires duplication of data items. As an example, if a baseball game is being broadcast in the Pacific and mountainous regions, two copies of the relevant textual technical information should be sent, with one copy allocated for each segment targeted to the Pacific and mountainous regions. do. As the number of partitions increases, the quantity of redundant information also increases, indicating that more transmission bandwidth is required. As a result, there is a trade-off relationship between bandwidth and the burden of information filtering. A large number of partitions means filtering information quickly but requiring an increase in bandwidth. When there is only one partition, there is no duplication of information and thus the bandwidth is minimal but the filtering burden is greater because all program guide information items must be parsed.

시간 및 영역 셀은, MPEG2 PSI 및 DSM-CC 필드를 사용하여 MPEG-2 호환 데이터 구조로 매핑될 수 있다. 모든 표가 영역 기반 식별자(area-based identifiers)를 포함하여야 할 필요가 있는 것은 아니다. 예를 들어, 프로그램 내용 등급은 일반적으로 미국 어디에서나 적용 가능하다. 도 1 의 VLPG 구조에서, 영역 기반 분할을 채널 정보 표(CIT) 및 마스터 가이드 표에 적용함으로써 상당한 이점이 달성된다. CIT 는 서비스 제공자에 대한 채널 라인-업(the channel line-up)(이용 가능 채널 리스트)을 정의하고 서비스 제공자가 커버하는 지리적 영역에 의존한다. 인디 애나폴리스에 있는 지상 방송을 위한 채널 라인-업은 예를 들어 필라델피아에 있는 케이블 제공자에 대한 채널 라인-업과는 다르다. 도 1 의 시스템에서, MGT 는 지리적 영역에도 의존하지만 이것이 반드시 그 경우이지는 않다. Time and domain cells can be mapped to MPEG-2 compatible data structures using MPEG2 PSI and DSM-CC fields. Not all tables need to contain area-based identifiers. For example, program content ratings are generally applicable anywhere in the United States. In the VLPG structure of FIG. 1, significant advantages are achieved by applying region-based partitioning to the channel information table (CIT) and the master guide table. The CIT defines the channel line-up (available channel list) for the service provider and depends on the geographic area covered by the service provider. The channel line-up for terrestrial broadcasting in Indianapolis is different from the channel line-up for cable providers in Philadelphia, for example. In the system of FIG. 1, the MGT also depends on the geographic area but this is not necessarily the case.

프로그램 가이드 정보를 특정 청취자(audiences)에게 집중하여 목표 설정을 수행하는 능력은 방송 마켓 레벨에서 채널 라인-업(line-up)의 미세한 영역 기반 분할(fine area-based divisions)을 가능하게 하는 것으로 인해 도출되는 한가지 이점이다. 이것을 달성하기 위하여, 여러 표의 "실례(instances)"가 만들어져 있다. 표의 실례(a table instance)는, 특정 마켓 영역으로 목표가 정해지며 적용 가능 마켓 영역을 식별하는 영역 식별자를 통합하는 표의 버전(a version)이다. 단일 표의 다수의 실례는 각각이 다른 정보를 전송하며 동시에 전송될 수 있다. 다른 표의 실례는 MPEG-2 프로토콜의 "표_아이디_확장(table_id_extension)" 필드를 사용하여 인식된다. The ability to focus program guide information on specific audiences to perform goal setting is due to enabling fine area-based divisions of channel line-up at the broadcast market level. One benefit is derived. To accomplish this, several tables of "instances" have been created. A table instance is a version of a table that is targeted to a particular market area and incorporates an area identifier that identifies the applicable market area. Multiple instances of a single table may be transmitted simultaneously, each transmitting different information. Examples of other tables are recognized using the "table_id_extension" field of the MPEG-2 protocol.

도 2 및 도 3 은 마켓 영역 식별을 위하여 프로그램 특정 정보를 전송하며 표_아이디_확장 필드를 통합하는데 사용하기 위한 마스터 가이드 표(MGT) 포맷과 채널 정보 표(CIT) 포맷을 각각 도시한다. 도 2의 MGT와 도 3 의 CIT에서, 이 마켓 영역 식별 필드는 "네트워크_제공자(network_provider)"라고 하며 아이템(130)으로서 MGT 데이터 구조와 아이템(140)으로서 CIT 데이터 구조로 도시되어 있다. 네트워크_제공자 영역 식별자 필드는 네트워크 제공자를 고유하게 식별하는데 사용되는 16-비트 필드이다. 네트워크 제공자의 의미는 전송 매체에 달려 있다. 구체적으로, 지상 방송에서, 네트워크 제공자는 지리적 지역 내의 방송국의 집합이며, 케이블 방송에서, 네트워크 제공자는 로컬 케이블 서비스 제공자이며, 또한 위성 방송에서, 네트워크 제공자는 위성 서비스 제공자이다. 2 and 3 illustrate a Master Guide Table (MGT) format and a Channel Information Table (CIT) format, respectively, for transmitting program specific information for market area identification and for use in integrating the Table_ID_Extension field. In the MGT of FIG. 2 and the CIT of FIG. 3, this market area identification field is referred to as a "network_provider" and is shown as an MGT data structure as item 130 and a CIT data structure as item 140. The Network_Provider Area Identifier field is a 16-bit field used to uniquely identify the network provider. The meaning of the network provider depends on the transmission medium. Specifically, in terrestrial broadcasting, a network provider is a collection of broadcasting stations in a geographic area, and in cable broadcasting, a network provider is a local cable service provider, and in satellite broadcasting, a network provider is a satellite service provider.

도 1 의 데이터 구조는 유리하게도 여러 타입의 프로그램 특정 정보 및 프로그램 가이드 정보가 여러 영역으로 목표가 정해지도록 한다. 이 특성은 프로그램 가이드 데이터를 방송하고 수신하는 것과 연관된 디코더 복잡도와 처리 대역폭 사이의 수용 가능한 절충점을 선택하는데 유연성(flexibility)을 준다. 일례로서, 채널 라인-업 정보보다 더 넓은 영역(coarser areas)으로 멀티미디어 객체를 분할하는 것도 수용 가능할 수 있다. 도 1 의 데이터 구조는, 가이드 제공자에게 넓은 영역으로부터 미세 영역{예를 들어, 국가(countries), 주(states), 또는 군(counties)과 같이 큰 영역에서 도시, 읍, 도시 블록(city blocks) 또는 심지어 개개 고객과 같은 미세 영역까지}까지 범위가 정해지는 여러 영역 등급(different gradations of area)으로 여러 타입의 데이터를 분할하는 능력을 준다. The data structure of FIG. 1 advantageously allows different types of program specific information and program guide information to be targeted to different areas. This property gives flexibility in selecting an acceptable tradeoff between decoder complexity and processing bandwidth associated with broadcasting and receiving program guide data. As one example, it may be acceptable to divide a multimedia object into coarser areas larger than the channel line-up information. The data structure of FIG. 1 can be used to provide a guide provider with a large area (e.g., cities, towns, and city blocks) in a large area, such as countries, states, or counties. Or even partitioning different types of data into different gradations of area, ranging from fine domains to individual customers.

더욱이, 프로그램 가이드 정보는 다른 영역(예를 들어, 두 개의 이웃 영역 사이 또는 임의의 이용 가능 영역으로부터 가이드의 선택), 또는 여러 시기의 방송 시간(different periods of broadcast time)에 대한 프로그램 가이드 사이에 대한 선택을 사용자에게 주도록 디코더에서 정렬될 수 있다. 그러한 것으로서, 프로그램 가이드는 원격 유닛 또는 다른 데이터 엔트리 장치를 통해 사용자 선택 입력에 응답하여, 여러 영역과 연관된 하나 이상의 이용 가능 프로그램 가이드로부터 디코더에서 선택될 수 있다. 그러한 선택을 수행할 때 디코더는 (수신된 프로그램 가이드 정보와 연관된) 지역 식별 지정을 디코더 위치를 나타내는 미리 저장된 지역 식별 지정과 비교한다. 그러한 지역 식별 지정은 우편 코드, 전화 지역 코드, 및 임의의 다른 지역 식별 코드를 포함할 수 있다. Moreover, program guide information may be stored in different areas (eg, between two neighboring areas or selection of a guide from any available area) or between program guides for different periods of broadcast time. May be arranged at the decoder to give the user a choice. As such, the program guide may be selected at the decoder from one or more available program guides associated with the various regions in response to a user selection input via a remote unit or other data entry device. When making such a selection, the decoder compares the area identification designation (associated with the received program guide information) with a pre-stored area identification designation indicating the decoder location. Such area identification designations may include postal codes, telephone area codes, and any other area identification codes.

도 4 는 VLPG 내의 객체를 전송하는 멀티미디어 객체 데이터 구조 포맷을 도시하는 도면이다. 멀티미디어 객체 데이터 구조는 MPEG DSM-CC 호환 카루젤Id 식별자{도 4에서 아이템(150)} 내의 영역 및 시간 식별자 필드의 사용을 통해 영역 및 시간 기반 분할(area and time based partitioning)을 지원한다. 4 is a diagram illustrating a multimedia object data structure format for transmitting an object in a VLPG. The multimedia object data structure supports area and time based partitioning through the use of an area and time identifier field in the MPEG DSM-CC compatible carousel ID identifier (item 150 in FIG. 4).

도 5, 도 6 및 도 7 은 채널, 이벤트, 및 제어 객체를 각각 포함하는 객체 데이터 구조의 예를 도시한다. 구체적으로, 도 5 는 채널 기반 정보 파일(Channel Basic Information File)(채널 BIF) 바이너리 파일을 도시하고, 도 6 은 이벤트 기반 정보 파일(Event Basic Information File)(이벤트 BIF) 바이너리 파일을 도시하며 도 7 은 제어 기반 정보 파일(Control Basic Information File)(제어 BIF) 바이너리 파일을 도시한다. 도 4 와 유사한 방식으로, 도 5 내지 도 7 의 채널, 이벤트, 및 제어 객체 데이터는 MPEG DSM-CC 호환 카루젤Id(carouselId) 식별자{각각, 도 5 내지 도 7의 아이템(153, 157, 및 159)} 내의 영역 및 시간 식별자 필드(area and time identifier fields)를 포함한다. 5, 6, and 7 show examples of object data structures that include channels, events, and control objects, respectively. Specifically, FIG. 5 shows a Channel Basic Information File (Channel BIF) binary file, FIG. 6 shows an Event Basic Information File (Event BIF) binary file and FIG. 7. Shows a Control Basic Information File (Control BIF) binary file. In a manner similar to that of FIG. 4, the channel, event, and control object data of FIGS. 5 to 7 may include MPEG DSM-CC compatible carouselId identifiers {item 153, 157 of FIG. 159)} and area and time identifier fields.

도 8의 아이템(152)은 (도 4, 도 5, 도 6, 및 도 7의 표에서 사용된 바와 같은) MPEG 호환 카루젤Id에 대한 예시적인 카루젤Id 데이터 구조를 도시한다. 카루젤Id는 데이터 베이스 기준(a data base reference)으로 사용하기 위한 16비트 디렉토리 아이템 식별자, 8비트 시간 식별자 및 8비트 영역 식별자를 포함한다. 이들 필드는 디코더로 하여금 영역 및 시간 기반 분할에 기초하여 선택적으로 프로그램 가이드 데이터를 필터링 하게 한다. Item 152 of FIG. 8 shows an exemplary carousel Id data structure for MPEG compatible carousel Id (as used in the tables of FIGS. 4, 5, 6, and 7). The carousel Id includes a 16-bit directory item identifier, an 8-bit time identifier, and an 8-bit region identifier for use as a data base reference. These fields allow the decoder to selectively filter the program guide data based on region and time based partitioning.

도 1 의 VLPG 데이터 구조에서, 마스터 데이터베이스 표{MDBT 아이템(122)}는 프로그램 가이드 분할(셀)을 정의하는데 사용되며 디코딩을 하기 위하여 디코더의 위치에서 이용가능한 셀을 디코더에 알려주는데 사용된다. 도 9 는 계층 기반 버전 식별자와 다이나믹 프로그램 가이드 재분할을 유리하게 가능하게 하는 셀 분할 식별자를 통합하는 마스터 데이터베이스 표 데이터 구조를 도시한다. 아이템(170 및 178) 사이의 코드는 분할된 셀을 정의하는 루프를 포함한다. 이 루프 내에서, "셀_타입(cell_type)"{아이템(172)}이라고 하는 필드는 도 10 에 도시되어 있는 셀의 인덱스를 결정한다. In the VLPG data structure of FIG. 1, the master database table (MDBT item 122) is used to define a program guide partition (cell) and to inform the decoder of the cells available at the location of the decoder for decoding. 9 illustrates a master database table data structure incorporating a layer-based version identifier and a cell partitioning identifier that advantageously enables dynamic program guide repartitioning. The code between items 170 and 178 includes a loop that defines the divided cell. Within this loop, a field called "cell_type" (item 172) determines the index of the cell shown in FIG.

도 10 의 아이템(179)은 셀 타입 지시자에 대한 예시적인 데이터 구조를 도시한다. 셀 타입 지시자는 객체의 복잡도 레벨을 정의하는데 사용되는 8비트 복잡도 레벨 식별자를 포함한다. 셀 타입 지시자는 8비트 영역 식별자와 영역 및 시간 기반 분할을 정의하는 8 비트 시간 식별자를 또한 포함한다. Item 179 of FIG. 10 shows an example data structure for a cell type indicator. The cell type indicator includes an 8-bit complexity level identifier used to define the complexity level of the object. The cell type indicator also includes an 8-bit region identifier and an 8-bit time identifier that defines the region and time based partitioning.

개개 객체 또는 프로그램 가이드 정보 아이템은 마더 셀(mother cell)의 시간 및 영역 인덱스에 객체를 링크하기 위하여 {도 8에서 정의되고 도 4에서 아이템(150)으로 도시되어 있는} 카루젤Id를 포함한다. 다이나믹 프로그램 가이드 재분할은 MDBT에서 셀 리스트를 재배열하며 카루젤Id 내의 마더 셀 시간 및 영역 인덱스 식별자(the mother cell time and area index identifiers)에서의 다이나믹한 변경을 통해 달성된다. 결과적으로, 가이드 제공자는 이용 가능 전송 대역폭 또는 디코더 정교성의 변화에 적응하도록 프로그램 가이드 데이터 구조를 다이나믹하 게 재분할할 수 있다. 가이드 제공자는 만약 증가된 대역폭이 이용 가능하다면 더 빠른 객체 필터링 시간(faster object filtering times)을 제공하도록 더 미세한 분할을 사용할 수 있으며 또는 만약 디코더 처리 성능이 향상된다면 대역폭을 유지(preserve)하도록 더 넓은 분할을 사용할 수 있다. 그러한 것으로서, 산 디에고에 있는 디코더는 영역(0 및 7)과 연관된 프로그램 가이드 정보에 현재 억세스할 수 있는 한편, 장래에 디코더는, 예를 들어, 더 미세한 분할을 반영하는 영역(0 및 9)과 연관된 프로그램 가이드 정보에 억세스할 수 있다. 차후에는 대역폭과 분할 사이의 적절한 절충선을 선택함으로써 미국 만큼 넓은 영역을 커버하는 가이드에 존재하는 멀티미디어 객체로 실시간 억세스를 제공하는 것도 전적으로 가능하게 될 것이다. Each object or program guide information item includes a carousel Id (defined in FIG. 8 and shown as item 150 in FIG. 4) to link the object to the time and region index of the mother cell. Dynamic program guide repartitioning is achieved by rearranging the cell list in MDBT and by dynamic changes in the mother cell time and area index identifiers in the carousel Id. As a result, the guide provider can dynamically subdivide the program guide data structure to adapt to changes in available transmission bandwidth or decoder sophistication. Guide providers can use finer partitioning to provide faster object filtering times if increased bandwidth is available, or wider partitioning to preserve bandwidth if decoder processing performance is improved. Can be used. As such, a decoder in San Diego may currently have access to program guide information associated with regions 0 and 7, while in the future decoders may, for example, have regions 0 and 9 that reflect finer divisions and The associated program guide information can be accessed. In the future, it will be entirely possible to provide real-time access to multimedia objects residing in guides that cover an area as large as the United States by selecting the appropriate compromise between bandwidth and partitioning.

도 11 은 채널, 이벤트, 및 제어 서브 디렉토리 하의 객체 파일을 포함하는 객체 데이터베이스를 위한 계층적 디렉토리 포맷을 도시한다. 도 11 은 "이벤트2(event2)"와 같은 특정 이벤트가 필요한 파일을 포함하는 자신만의 디렉토리를 가질 수 있는데, 예를 들면 "이벤트2"는 4 개의 관련 객체{도 11에서 아이템(240, 242, 244, 및 246)}을 가지는 것을 도시한다. 객체 데이터베이스를 사용하여 디렉토리 기반 주소는 처리를 위해 트랜스포트 레벨 필드로 매핑된다. /VLPG/TIME1/AREA1/events/event2/event.bif와 같은 경로{도 11 의 디렉토리 아이템(220, 224, 228, 232, 238, 242)을 통한 경로}가 예를 들어 주어지는 경우, 특정 카루젤Id 및 모듈Id(a certain carouselId and moduleId)를 갖는 하나 밖에 없는 객체(one and only one object)가 존재한다. 예를 들어, 이 경우에, 다음의 매핑이 적용된다. 11 illustrates a hierarchical directory format for an object database including object files under channels, events, and control subdirectories. FIG. 11 may have its own directory containing files that require a particular event, such as "event2". For example, "event2" may include four related objects (items 240, 242 in FIG. 11). , 244, and 246). Using an object database, directory-based addresses are mapped to transport level fields for processing. If a path such as /VLPG/TIME1/AREA1/events/event2/event.bif {path through directory items 220, 224, 228, 232, 238, 242 in Figure 11} is given, for example, a particular carousel There is only one and only one object with ID and module Id (a certain carouselId and moduleId). For example, in this case, the following mapping applies.

/VLPG -------------> VLPG 객체 데이터 베이스로부터 추출된 파일/ VLPG -------------> Files extracted from the VLPG object database

/TIME1 ------------> 0x01(시간 변수)/ TIME1 ------------> 0x01 (time variable)

/AREA1 ------------> 0x01(영역 변수)/ AREA1 ------------> 0x01 (area variable)

/events/event2 ----> 0x3005 (디렉토리 번호 변수) / events / event2 ----> 0x3005 (directory number variable)

그러므로, 이 데이터베이스 주소는 0x01013005의 카루젤Id로 매핑된다. 더욱이, event.bif{아이템(242)}는 (이 예에서 0x0002의 값과 같은) 프로그램 가이드 정보로부터 결정될 수 있는 모듈Id를 갖는다. 트랜스포트 레벨 필드로부터 디렉토리 기반 주소로의 역 매핑도 고유하며 유사하게 유도될 수 있다. Therefore, this database address is mapped to a carousel ID of 0x01013005. Moreover, event.bif {item 242} has a module Id that can be determined from program guide information (such as the value of 0x0002 in this example). The reverse mapping from the transport level field to the directory based address is also unique and can be derived similarly.

도 11에서 예시되어 있는 디렉토리 구조는 전송된 객체를 처리하며 전송 객체와 대화하기 위한 소프트웨어 동작을 지원한다. 처리 소프트웨어는 객체와 함께, 파일 형태로 전송될 수 있으며 그후 디코더에 의해 해석되거나 컴파일되고 실행된다. 그러한 처리 소프트웨어는 HTML(Hyper Text Mark-up Language), SGML(Standar- dized Generalized Mark-up Language), Java, ActiveX 및 임의의 다른 디코더 지원 언어와 같은 언어로 디코더에서의 내용 기반 프로그램 가이드를 유리하게 생성시키기 위해 포함하는 수많은 애플리케이션에 사용될 수 있다. 일례로서, 일요일마다(each Sunday) 가이드 제공자는, 웹 브라우저를 포함하며 HTML 소프트웨어를 지원하는 디코더 유닛에 전송하기 위해 모든 이용 가능한 일요일 영화(all available Sunday movies)를 기술하는 웹 사이트를 작성하기를 원할 수 있다. 일요일 가이드 정보는 HTML로 인코딩되며 특별 웹 사이트를 기술하는 HTML 소프트웨어 파일로서 디코더에 전송된다. HTML 파일은 객체 데이터베이스의 디렉토리 구조 내 임의의 장소에 위치되며 특별 웹 사이트를 포함하는 일요일 영화 가이드 리스트를 형성하는 영상, 텍스트, 비디오, 및 오디오 파일을 함께 생성한다. 그렇게 함으로써, 일요일 가이드 웹 사이트는 객체 데이터베이스의 일부로서 방송되며 종래의 방식으로 인터넷 서버로부터 억세스 되지 않는다. 이 방식으로 전송될 수 있는 다른 특별 프로그램 가이드 웹 사이트는 예를 들면, (a) 재생에 이용 가능한 DVD/VCR 프로그램, (b) 다른 인터넷 웹 사이트, (c) 억세스를 위해 미리 저장되어 있는 팩스/전화 번호, (d) 비디오폰의 기능 및 (e) 가정용 기구의 제어 기능을 리스트 할 수 있다.The directory structure illustrated in FIG. 11 handles the transferred object and supports software operations to interact with the transfer object. The processing software may be sent in the form of a file with the object, which is then interpreted or compiled and executed by the decoder. Such processing software favors content-based program guides at decoders in languages such as Hyper Text Mark-up Language (HTML), Standardized Generalized Mark-up Language (SGML), Java, ActiveX, and any other decoder supported language. It can be used for many of the applications you include to create it. As an example, every Sunday guide provider would like to create a website describing all available Sunday movies for delivery to a decoder unit that includes a web browser and supports HTML software. Can be. The Sunday guide information is encoded in HTML and sent to the decoder as an HTML software file describing the special website. The HTML file is located anywhere in the directory structure of the object database and produces together video, text, video, and audio files that form a Sunday movie guide list that includes a special web site. In doing so, the Sunday guide web site is broadcast as part of the object database and is not accessed from an internet server in a conventional manner. Other special program guide web sites that can be transmitted in this way are, for example, (a) DVD / VCR programs available for playback, (b) other Internet web sites, and (c) pre-stored fax / List telephone numbers, (d) videophone functions, and (e) home appliance control functions.

사용자는, 관련 디스플레이 된 메뉴 아이템 또는 디스플레이 아이콘을 선택하기 위해 원격 유닛 또는 다른 데이터 엔트리 장치를 사용하여 객체 데이터베이스에 포함된 특별 일요일 가이드 방송 웹 사이트의 디스플레이를 개시할 수 있으며 유사하게 방송 웹 사이트를 항해하며 광고된 영화(the advertised movies)를 검토할 수 있다. 더욱이, 사용자는 (a) VCR 또는 DVD 유닛을 프로그래밍 하는 것, (b) 원하는 채널로 동조하는 것, 또는 (c)객체 데이터베이스의 일부로서 유사하게 방송되거나 전화 선(또는 케이블 선)을 통해 종래 방식으로 억세스 되는 다른 인터넷 사이트에 억세스 하는 것과 같은, 웹 사이트를 통한 명령을 개시할 수 있다. 더욱이, 그러한 전화선(또는 케이블 선) 인터넷 억세스를 개시할 때, 디코더는 방송이나 다른 소스로부터 억세스 정보를 획득할 수 있다. 그러한 억세스 정보는 예를 들어, (a) 인터넷 URL, (b) 인터넷 IP 주소, (c) 이메일 주소, 및 (d) 전화/팩스/비 디오폰 번호를 포함한다. The user can initiate the display of the special Sunday guide broadcast website contained in the object database using a remote unit or other data entry device to select the associated displayed menu item or display icon and similarly navigate the broadcast website. And review the advertised movies. Moreover, the user may (a) program the VCR or DVD unit, (b) tune to the desired channel, or (c) broadcast similarly as part of the object database or through a telephone line (or cable line). Commands can be initiated through a web site, such as accessing another Internet site that is accessed. Moreover, when initiating such telephone line (or cable line) Internet access, the decoder may obtain access information from a broadcast or other source. Such access information includes, for example, (a) an Internet URL, (b) an Internet IP address, (c) an email address, and (d) a phone / fax / videophone number.

도 11의 계층적 디렉토리 구조는 도 1 의 VLPG 구조에 의하여 제공되는 다른 이점을 도시한다. 대형 프로그램 가이드에서, 구성 요소 표(constituent tables)와 객체의 업데이트를 관리하는 것은 많은 양의 버전 번호(a large quantity of version numbers)를 검사하는 것을 포함한다(수천 개의 버전 번호가 포함될 수 있다). 디코더는 버전 번호의 변경을 결정하는 즉시 특정 프로그램 가이드 표나 객체를 다운로드 하며 버전 번호 변경이 나타나 있지 않은 표나 객체를 버린다. 이 작업은 MGT와 같은 하나의 표 내에서 변화되기 쉬운 표와 객체의 모든 버전 번호를 리스트 하는 것으로써 촉진될 수 있다. MGT 는, 어떤 표나 객체가 변경되었는지를 결정하며 적절한 방식으로 변경된 표나 객체를 획득하기 위하여 디코더가 MGT를 검사하게 할만큼 충분히 빠른 속도로 방송된다. 그러나, MGT에서 매 엔트리를 파싱하는 것은 대형 가이드 구조에서 매우 시간이 소모될 수 있다. The hierarchical directory structure of FIG. 11 illustrates another advantage provided by the VLPG structure of FIG. In large program guides, managing update of constituent tables and objects involves examining a large quantity of version numbers (thousands of version numbers can be included). As soon as the decoder decides to change the version number, it downloads a specific program guide table or object and discards any tables or objects that do not show a version number change. This can be facilitated by listing all version numbers of tables and objects that are subject to change within a table, such as the MGT. The MGT is broadcast fast enough to determine which table or object has changed and to have the decoder examine the MGT to obtain the changed table or object in an appropriate manner. However, parsing every entry in the MGT can be very time consuming in large guide structures.

이 문제는 버전 제어(version control)를 수행하는 몇몇 표가 존재하는 계층적 버전 제어 시스템을 사용하는 것으로써 해소된다. 이 표는 도 11 로 예시되어 있는 바와 같이 트리 구조로 배열되어 있다. 도 11에서, 표(238){이벤트2(event2)}는 표(238) 아래의 표/파일의 버전을 제어한다. 표(232){이벤트(events)}는 표{336(이벤트1), 및 238}의 모든 버전을 제어한다. 표(228){영역1(area1)}는 표{230{채널(channels)}, 232 및 236{제어(control)}}의 버전만을 제어한다. 이 방식으로, 각 표에 저장된 버전 번호 정보는 적으며(small) 위에서 아래까지 트리를 횡단하는 것으로써, 업데이트 하여야 하는 파일, 표 또는 객체를 빠르게 찾는 것이 가능하다. This problem is solved by using a hierarchical version control system in which there are several tables that perform version control. This table is arranged in a tree structure as illustrated in FIG. In FIG. 11, table 238 (event2) controls the version of the table / file under table 238. Table 232 {events} controls all versions of table {336 (event 1), and 238}. The table 228 {area1} controls only the versions of the tables {230 {channels}, 232 and 236 {control}}. In this way, the version number information stored in each table is small and traversing the tree from top to bottom, it is possible to quickly find the file, table or object that needs to be updated.

비록 다중 레벨 구조가 위에 설명되어 있을지라도, 두 개의 계층 버전 제어 구조가 도 1 의 VLPG 의 데이터베이스에서 객체의 버전 제어에 또한 사용될 수 있다. 두 계층 예에서, 트리 계층 조직의 상위 계층은 도 9에 예시된 바와 같이 마스터 데이터베이스 표(MDBT)이다. MDBT 레벨 아래의 제 2 레벨은 각각 도 5, 도 6 및 도 7에서 앞서 설명된 데이터 구조로 예시된 바와 같이 채널, 이벤트 및 제어 기반 정보 파일을 포함하는 셀로 구성된다. 채널, 이벤트 또는 제어 파일 중 하나의 변경은 각 버전 번호, 아이템(160)(도 5), 아이템(163)(도 6) 및 아이템(167)(도 7)의 변경에 의해 신호가 보내진다(signaled). 더욱이, 채널, 이벤트 또는 제어 파일 버전 번호에서의 어느 하나의 변경은 그 다음 계층 (셀) 레벨 버전 번호의 변경에 의해 신호가 보내지는데, 즉 그러한 변경은 도 9 의 MDBT에서 버전 번호(176)에서의 변경에 의해 신호가 보내진다. 특정 예로서, 만약 (데이터베이스에서 하나의 영상인)채널 로고가 한 버전에서 다른 버전으로 변경된다면, 채널 BIF는 아이템(160)(도 5)에 이 변경을 반영할 것이다. MDBT 는 또한 셀 레벨에서 아이템(176)(도 9)에서의 변경을 신호할 것이다. 디코더는 먼저 MDBT를 검사하고 셀 버전 번호가 변경되었는지를 결정한 뒤 그 셀 내에서 변경된 객체를 식별하기 위해 BIF 파일을 검사한다. Although the multi-level structure is described above, two hierarchical version control structures can also be used for version control of objects in the database of the VLPG of FIG. In both hierarchical examples, the upper tier of the tree hierarchical organization is the master database table (MDBT) as illustrated in FIG. 9. The second level below the MDBT level consists of cells containing channel, event and control based information files, as illustrated by the data structures described above in FIGS. 5, 6 and 7, respectively. Changes in one of the channels, events or control files are signaled by changes in each version number, item 160 (FIG. 5), item 163 (FIG. 6) and item 167 (FIG. 7) ( signaled). Moreover, any change in the channel, event or control file version number is signaled by a change in the next layer (cell) level version number, ie such a change in version number 176 in the MDBT of FIG. Signaled by a change of. As a specific example, if the channel logo (which is one image in the database) is changed from one version to another, the channel BIF will reflect this change in item 160 (FIG. 5). MDBT will also signal a change in item 176 (FIG. 9) at the cell level. The decoder first checks the MDBT, determines if the cell version number has changed, and then checks the BIF file to identify the changed object within that cell.

도 9 의 마스터 데이터 베이스 표(MDBT) 구조는 대형 프로그램 가이드를 처리할 때 다른 이점을 제공한다. 디코더 정교성과 복잡한 멀티미디어 객체를 처리하는 처리 능률 및 성능은 시간에 따라 진보한다. 예를 들어, 셋탑 박스 디코더의 제 1 세대는 비트 맵 형식으로 영상을 처리하는 것으로 크게 제한되었다. 그러나, 디코더의 더 새로운 세대는 JPEG, GIF 또는 다른 영상 포맷을 다운로드 하기 위해 압축 해제 소프트웨어를 사용할 수 있으며 차세대 디코더는 다수의 포맷으로 영상뿐만 아니라 영화 클립도 처리할 수 있을 것이다. 결과적으로, 디코더 축척성(decoder scalability)을 지원하기 위해 프로그램 가이드 데이터를 구조화하는 것, 즉 일정 범위로 가변하는 복잡도를 가지는 디코더로 하여금 디코더에게 부여된 처리 능률의 레벨을 사용하여 프로그램 가이드 정보를 처리하게 하는 것이 바람직하다. 이것에 의하여, 낮은 복잡도의 디코더는 디코더가 처리할 수 있는 객체를 식별하며 그 처리 성능을 초과하는 객체를 버릴 수 있다. 그렇게 하지 않으면, 높은 복잡도의 객체가 버퍼 오버플로우나 다른 문제를 야기하여 낮은 복잡도의 디코더 동작을 손상시킬 수 있다. The master database table (MDBT) structure of Figure 9 provides other advantages when dealing with large program guides. Decoder sophistication and processing efficiency and performance in handling complex multimedia objects evolve over time. For example, the first generation of set top box decoders have been greatly limited to processing images in bitmap format. However, newer generations of decoders can use decompression software to download JPEG, GIF or other video formats, and next-generation decoders will be able to process movies as well as video in multiple formats. As a result, the structure of the program guide data to support decoder scalability, i.e., to allow a decoder with varying complexity to process the program guide information using the level of processing power assigned to the decoder. It is desirable to make it. This allows a low complexity decoder to identify objects that the decoder can handle and discard objects that exceed its processing capabilities. Otherwise, high complexity objects can cause buffer overflows or other problems that can compromise low complexity decoder operation.

도 9( 및 도 10)의 MDBT 데이터 구조는 디코더 유닛에서의 효과적인 멀티미디어 객체 복잡도 판별을 유리하게 지원한다. 이 목적을 위해, MDBT 는 패킷 식별자(PID : packet identifier) 값을 데이터베이스에 있는 셀에 할당한다. 도 9에서, 아이템(172)은 특정 셀을 식별하고 아이템(174)에 의하여 PID 값과 연관된다. 더욱이, 아이템(172)은 셀의 시간, 영역, 및 복잡도 좌표를 정의하는 24비트 필드 셀_타입을 정의한다(도 10 참조). 그러한 것으로서, 객체 복잡도 레벨 지시자는 MPEG-2 호환 트랜스포트 계층 필드에 포함된다. 이것에 의하여 다른 복잡도 레벨에 속하는 데이터 베이스에 있는 객체는 다른 PID 로 식별된 스트림으로 전송된다. 디코더에는 복잡도 레벨이 미리 할당되고 디코더는 미리 할당된 디코더 복잡도 레벨과 일치하거나 그 레벨 아래에 있는 복잡도 레벨을 가진 그들 셀에 대한 PID 값을 선택하며 캐쉬(caching)시키는데 MDBT{구체적으로 아이템(172)}를 적용한다. The MDBT data structure of FIG. 9 (and FIG. 10) advantageously supports effective multimedia object complexity determination at the decoder unit. For this purpose, MDBT assigns a packet identifier (PID) value to a cell in the database. In FIG. 9, item 172 identifies a particular cell and is associated with the PID value by item 174. Moreover, item 172 defines a 24-bit field cell_type that defines the time, region, and complexity coordinates of the cell (see FIG. 10). As such, the object complexity level indicator is included in the MPEG-2 Compatible Transport Layer field. This allows objects in databases belonging to different complexity levels to be sent on streams identified by different PIDs. The decoder is preassigned a complexity level and the decoder selects and caches PID values for those cells that have a complexity level that matches or is below the preassigned decoder complexity level. } Applies.

도 12 는 본 발명에 따라 프로그램 특정 정보를 형성하는 방법에 관한 흐름도를 도시한다. 도 12 의 방법은 MGT, MDBT, CCT, STT, RRT, TCIT, CCIT, SCIT 및 SIT 데이터를 포함하는 프로그램 특정 정보와 앞서 기술된 유리한 특징을 포함하는 기술자를 생성시킨다. 상기 방법은 프로그램 가이드 데이터를 방송하기 위하여 인코더에 사용될 수 있거나 다른 장치에 전송하기 위하여 디코더 유닛 내의 프로그램 가이드 데이터를 인코딩하기 위해 사용될 수 있다. 12 shows a flowchart relating to a method of forming program specific information in accordance with the present invention. The method of FIG. 12 generates a descriptor including program specific information including MGT, MDBT, CCT, STT, RRT, TCIT, CCIT, SCIT and SIT data and the advantageous features described above. The method may be used in an encoder to broadcast program guide data or may be used to encode program guide data in a decoder unit for transmission to other devices.

도 12 의 단계(250)에서 시작한 후, 단계(253)에서, 앞서 기술된 데이터 구조화 원리에 기초한 방법은 프로그램 특정 정보를 분할하기 위해 선택된다. 프로그램 특정 정보는 시간 세그먼트와 영역, 네트워크 타입, 복잡도 레벨, 셀 및 프로그램(이벤트)에 따라 분할된다. 단계(255)에서, PID 값은 분할된 프로그램 특정 정보를 수용하기 위해 할당된다. 만약 비-MPEG 트랜스포트 프로토콜이 사용된다면, PID 값들은 논리 채널을 식별하는 적당한 파라미터로 대체될 수 있다. 단계(257)에서, MGT 및 MDBT(또는 다른 타입의 제어 표)가 분할 동작 동안 형성된 것들을 포함하기 위해 생성된다. MGT 는 다른 표에 전송된 프로그램 특정 정보를 획득하는데 사용되는 정보를 전송한다. MDBT 는 트랜스포트 스트림으로부터 멀티미디어 객체를 획득하는데 사용되는 정보를 전송한다. After beginning at step 250 of FIG. 12, at step 253, a method based on the data structure principles described above is selected to partition program specific information. Program specific information is divided according to time segment and area, network type, complexity level, cell and program (event). In step 255, a PID value is assigned to accommodate the divided program specific information. If a non-MPEG transport protocol is used, the PID values can be replaced with appropriate parameters to identify the logical channel. In step 257, MGT and MDBT (or other type of control table) are generated to include those formed during the split operation. The MGT transmits information used to obtain program specific information transmitted in another table. MDBT transmits information used to obtain a multimedia object from a transport stream.

단계(260)에서, 개개 CCT, STT, RRT, TCIT, CCIT, SCIT 및 SIT 등의 표는 분할된 구조에 따라 형성된다. 개개 표는 앞서 기술된 본 발명의 원리에 따라 유도된 멀티미디어 객체 링크, 버전 번호 및 식별자를 포함한다. CIT(예를 들어, TCIT, CCIT, 및 SCIT)는 특정 채널 상에서 전달되는 개개 프로그램을 구성하는 개개 패킷화된 데이터스트림을 식별하기 위한 패킷 식별자를 포함하는 이용 가능한 방송 프로그램과 채널의 획득을 가능하게 하는 프로그램 식별 정보와 채널을 포함하게 형성된다. 더욱이, 단계(260)에서, SIT 는 CIT에서 리스트 된 채널 상에서 수신 가능한 프로그램(이벤트)의 설명 리스트를 포함하는 프로그램 가이드 예정 정보를 포함하여 생성된다. In step 260, tables, such as individual CCTs, STTs, RRTs, TCITs, CCITs, SCITs, and SITs, are formed according to a partitioned structure. The individual tables contain multimedia object links, version numbers and identifiers derived in accordance with the principles of the invention described above. CITs (eg, TCIT, CCIT, and SCIT) enable acquisition of available broadcast programs and channels, including packet identifiers for identifying individual packetized datastreams that make up individual programs carried on a particular channel. It is formed to include the program identification information and the channel. Further, in step 260, the SIT is generated including program guide schedule information including a descriptive list of programs (events) receivable on the channels listed in the CIT.

단계(263)에서, 관련 멀티미디어 객체와 함께, 단계(260)에서 형성된 표는 희망하는 데이터 포맷과 프로토콜과 호환 가능하게 포맷된다. 그러한 데이터 포맷과 프로토콜은 예를 들어 MPEG2 호환 프로그램 특정 정보, MPEG2 DSM-CC, DSS, 및 인터넷 호환 파일 전송 포맷을 포함한다. 단계(265)에서, 최종 포맷된 표와 멀티미디어 객체는 지상 전송을 위해 지정된 위치의 데이터스트림으로 통합된다. MGT 및 MDBT 는 단계(267)에서 데이터스트림으로 통합된다. In step 263, together with the associated multimedia object, the table formed in step 260 is formatted to be compatible with the desired data format and protocol. Such data formats and protocols include, for example, MPEG2 compatible program specific information, MPEG2 DSM-CC, DSS, and Internet compatible file transfer formats. In step 265, the final formatted table and multimedia object are integrated into the datastream at the location specified for terrestrial transmission. MGT and MDBT are integrated into the datastream at step 267.

단계(270)에서, 다수의 채널에 대한 비디오 및 오디오 프로그램을 나타내는 성분( 및 다른 데이터)과 함께, 단계(267)에서 생성된, 프로그램 특정 정보는 출력을 위해 트랜스포트 스트림으로 다중화되고 포맷된다. 단계(270)에서, 출력 트랜스포트 스트림은 예를 들어 수신기, 비디오 서버, 또는 저장 매체 상에 레코딩하기 위한 저장 장치와 같은 다른 장치로의 지상 전송을 위해 적당하게 더 처리된다. 단계(270)에서 수행된 프로세스는 데이터 압축 리드 솔로몬 인코딩, 인터리빙, 스크램블링, 트렐리스(trellis) 인코딩, 및 반송파 변조와 같은 공지된 인코딩 기능을 포함한다. 이 프로세스는 완료되고 단계(275)에서 종료된다. 도 12의 프로세스에 있어서, 다수의 CIT, SIT 및 관련 확장 표는 확장된 수의 채널을 수용하기 위하여 프로그램 특정 정보에 형성되고 포함될 수 있다. 더욱이, 다른 실시예에서, 이 표는 예를 들어 위성, 케이블 또는 인터넷 전송을 위해 유사하게 처리될 수 있다. In step 270, along with components (and other data) representing video and audio programs for multiple channels, the program specific information generated in step 267 is multiplexed and formatted into a transport stream for output. In step 270, the output transport stream is further processed appropriately for terrestrial transmission to another device, such as a receiver, a video server, or a storage device for recording on a storage medium. The process performed in step 270 includes known encoding functions such as data compression Reed Solomon encoding, interleaving, scrambling, trellis encoding, and carrier modulation. This process is complete and ends at step 275. In the process of FIG. 12, multiple CITs, SITs, and associated extension tables may be formed and included in program specific information to accommodate an expanded number of channels. Moreover, in other embodiments, this table may be similarly processed, for example for satellite, cable or internet transmission.

도 13의 비디오 수신기 시스템에서, 방송 프로그램 내용을 나타내는 오디오, 비디오, 및 관련 데이터를 운반하는 신호로 변조된 방송 반송파는 안테나(10)에 의하여 수신되고 유닛(13)으로 처리된다. 최종 디지털 출력 신호는 복조기(15)로 복조된다. 유닛(15)으로부터 복조된 출력은 디코더(17)에 의해 트렐리스(trellis) 디코딩되고, 바이트 길이 데이터 세그먼트로 매핑되며, 디인터리빙되고 리드 솔로몬 에러 정정된다. 유닛(17)으로부터의 정정된 출력 데이터는 프로그램을 나타내는 다중화된 오디오, 비디오, 및 데이터 성분을 MPEG 호환 트랜스포트 데이터스트림의 형태로 존재한다. 유닛(17)으로부터의 트랜스포트 스트림은 유닛(22)에 의하여 오디오, 비디오, 및 데이터 성분으로 디멀티플렉싱되고, 디코더 시스템(100)의 다른 요소에 의해 더 처리된다. 한 모드에서, 디코더(100)는 유닛(50 및 55) 상에 각각 디스플레이 및 오디오 재생을 위해 MPEG 디코딩 된 데이터를 제공한다. 다른 모드에서, 유닛(17)으로부터의 트랜스포트 스트림은 저장 장치(90)를 통해 저장 매체(105)에 저장하기 위해 MPEG 호환 데이터스트림을 제공하기 위해 디코더(100)로 처리된다. In the video receiver system of FIG. 13, a broadcast carrier modulated with a signal carrying audio, video, and related data representing broadcast program content is received by the antenna 10 and processed by the unit 13. The final digital output signal is demodulated to demodulator 15. The demodulated output from unit 15 is trellis decoded by decoder 17, mapped to byte length data segments, deinterleaved and Reed Solomon error corrected. The corrected output data from unit 17 is in the form of an MPEG compatible transport data stream with multiplexed audio, video, and data components representing the program. The transport stream from unit 17 is demultiplexed into audio, video, and data components by unit 22 and further processed by other elements of decoder system 100. In one mode, decoder 100 provides MPEG decoded data for display and audio playback on units 50 and 55, respectively. In another mode, the transport stream from unit 17 is processed by decoder 100 to provide an MPEG compatible data stream for storage in storage medium 105 via storage device 90.

사용자는 원격 제어 유닛(70)을 사용하여 TV 채널(사용자 선택된 채널-SC) 또는 프로그램 가이드와 같은 온-스크린 메뉴 중 하나를 시청하기 위해 선택한다. 제어기(60)는 시청을 위해 희망하는 프로그램 채널을 수신하기 위해 도 13의 요소를 적절히 구성하도록 인터페이스(65)를 통해 원격 제어 유닛(70)으로부터 제공된 선택 정보를 사용한다. 제어기(60)는 프로세서(62)와 프로세서(64)를 포함한다. 유닛(62)은 프로그램 가이드 정보를 포함하는 프로그램 특정 정보와 시스템 타이밍 정보를 처리(즉 파싱, 정렬, 및 어셈블)한다. 프로세서(64)는 디코더(100)를 동작시키는데 필요한 나머지 제어 기능을 수행한다. 비록 유닛(60)의 기능이 도 13에 묘사된 바와 같은 개별 요소(62 및 64)로서 구현될 수 있을지라도, 그 요소들은 대안적으로 단일 프로세서로 구현될 수 있다. 예를 들어, 유닛(62 및 64)의 기능은 마이크로프로세서의 프로그래밍된 명령 내에 포함될 수 있다. The user selects to watch one of the on-screen menus such as a TV channel (user selected channel-SC) or a program guide using the remote control unit 70. The controller 60 uses the selection information provided from the remote control unit 70 via the interface 65 to properly configure the elements of FIG. 13 to receive the desired program channel for viewing. The controller 60 includes a processor 62 and a processor 64. Unit 62 processes (ie, parses, aligns, and assembles) program specific information and system timing information, including program guide information. The processor 64 performs the remaining control functions necessary for operating the decoder 100. Although the functionality of unit 60 may be implemented as individual elements 62 and 64 as depicted in FIG. 13, the elements may alternatively be implemented in a single processor. For example, the functionality of units 62 and 64 may be included in the programmed instructions of the microprocessor.

제어기(60)는 입력 신호 포맷과 코딩 타입을 복조하고 디코딩하기 위해 프로세서(13), 복조기(15), 디코더(17), 및 디코더 시스템(100)을 구성한다. 더욱이, 제어기(60)는 케이블 TV(CATV) 신호를 수신하기 위한 것과 같은 다른 통신 모드 및 동축선(14)을 통해 양방향성 통신 또는 예를 들어 전화선(11)을 통해 양방향성(예를 들어 인터넷) 통신을 위한 유닛(13, 15, 및 17)을 구성한다. 아날로그 비디오 모드에 있어서, NTSC 호환 신호는 유닛(13, 15, 17)으로 수신되고 유닛(50 및 55) 상에 비디오 디스플레이 및 오디오 재생을 위해 디코더(100)로 각각 처리된다. 유닛(13, 15, 17) 및 디코더(100) 내의 서브 유닛은 양방향성 데이터와 제어 신호 버스(C)를 사용하여 이들 요소 내의 제어 레지스터 값을 설정하는 제어기(60)에 의해 입력 신호 타입을 위해 개별적으로 구성된다. The controller 60 configures a processor 13, a demodulator 15, a decoder 17, and a decoder system 100 to demodulate and decode the input signal format and coding type. Moreover, the controller 60 may be in two different communication modes, such as for receiving cable TV (CATV) signals, and in bidirectional communication via coaxial line 14 or bidirectional (eg internet) communication, for example via telephone line 11. Configure units 13, 15, and 17 for the purpose of construction. In the analog video mode, NTSC compatible signals are received by units 13, 15 and 17 and processed by decoder 100 for video display and audio playback on units 50 and 55, respectively. Units 13, 15, 17 and sub-units in decoder 100 are individually reserved for input signal types by controller 60 which uses bidirectional data and control signal buses C to set control register values in these elements. It consists of.

디코더(100)에 제공된 트랜스포트 스트림은 프로그램 채널 데이터와 보조 시스템 타이밍 정보를 포함하는 데이터 패킷 및 프로그램 가이드 정보를 포함하는 프로그램 특정 정보를 포함한다. 유닛(22)은 보조 정보 패킷을, (도 1 에 예시되어 있는 바와 같이) 이 정보를 앞서 기술된 계층 조직으로 배열된 표로 파싱, 정렬 및 어셈블(assemble)시키는 제어기(60)로 보낸다. 사용자 선택된 프로그램 채널(SC)을 포함하는 개개 데이터 패킷은 어셈블된 프로그램 특정 정보를 사용하여 식별되고 어셈블된다. 더욱이, 프로그램 특정 정보는 조건형 억세스, 네트워크 정보 및, 도 13의 시스템이 완전한 프로그램을 형성하기 위해 희망하는 채널로 동조하게 하고 데이터 패킷을 어셈블하게 하는 식별 및 링크 데이터를 포함한다. 프로그램 특정 정보는 보조 정보의 식별과 어셈블리를 지원하는 데이터를 또한 포함한다. The transport stream provided to the decoder 100 includes a data packet including program channel data and auxiliary system timing information and program specific information including program guide information. Unit 22 sends an auxiliary information packet to controller 60 that parses, aligns and assembles this information into a table arranged in the hierarchical organization described above (as illustrated in FIG. 1). Individual data packets containing a user selected program channel (SC) are identified and assembled using the assembled program specific information. Moreover, the program specific information includes conditional access, network information, and identification and link data that causes the system of FIG. 13 to tune to the desired channel and form a data packet to form a complete program. Program specific information also includes data to assist in the identification and assembly of supplemental information.

프로그램 특정 정보 및 시스템 타이밍 정보는 제어기(60)에 의해 도 1 의 구조에 의해 다수의 계층 조직으로 배열되며 상호 링크된 표로 어셈블된다. STT 는 디코더가 방송 소스에 의하여 프로그램의 전송 시간을 설정하기에 충분한 시간 기준 지시자 및 관련 정정 데이터를 포함한다. MGT 는 다른 표와 연관된 데이터 패킷을 식별하기 위한 식별자와 같은 다른 표에서 전송된 프로그램 특정 정보를 획득하기 위한 정보를 포함한다. CIT(예를 들어, TCIT)는 사용자 선택된 프로그램 채널을 수신하기 위해 동조하며 항해를 위한 정보를 포함한다. SIT 는 CIT 에 리스트 된 채널 상에 수신 가능한 프로그램(이벤트)의 기술 리스트를 포함한다. RRT 는 MPAA(Motion Picture Association of America)와 같은 프로그램 내용 등급 정보 또는 지역(예를 들어, 국가 또는 미국 내의 주)에 의해 정렬된 V-칩 호환 등급 정보를 포함한다. 계층 표 내에 있는 아이템을 기술하고 보충하는 부가적인 프로그램 특정 정보는 기술자 정보 요소 내에 전송된다. 유닛(22)을 통해 제어기(60)에 의해 획득된 프로그램 특정 정보 및 시스템 타이밍 정보는 유닛(60)의 내부 메모리 내에 저장되어 있다. 제어기(60)는 프로그램에 대한 억세스 조절과 프로그램 시청, 녹화 및 재생을 포함하는 프로그램 처리 기능의 스케쥴링(scheduling)시에 획득된 프로그램 가이드 정보를 사용한다. The program specific information and the system timing information are arranged by the controller 60 into a plurality of hierarchical organizations by the structure of FIG. 1 and assembled into interlinked tables. The STT includes a time reference indicator and associated correction data sufficient for the decoder to set the transmission time of the program by the broadcast source. The MGT includes information for obtaining program specific information sent in another table, such as an identifier for identifying a data packet associated with another table. The CIT (eg TCIT) tunes to receive a user selected program channel and contains information for navigation. The SIT contains a description list of the programs (events) that can be received on the channels listed in the CIT. The RRT includes program content rating information such as the Motion Picture Association of America (MPAA) or V-chip compatible rating information sorted by region (e.g., country or state within the United States). Additional program specific information describing and supplementing the items in the hierarchical table is transmitted in the descriptor information element. Program specific information and system timing information obtained by the controller 60 via the unit 22 are stored in the internal memory of the unit 60. The controller 60 uses the program guide information obtained during scheduling of program processing functions, including access control to the program and program viewing, recording, and playback.

제어기(60)와 프로세서(22)는 CIT로부터 유닛(17)으로부터 디코더(100)에 입력된 패킷화되었으며 디코딩 된 트랜스포트 스트림에서 비디오, 오디오, 및 서브 픽처 스트림의 PID를 결정한다. 비디오, 오디오 및 서브 픽처 스트림은 선택된 채널(SC) 상에 전송되는 희망하는 프로그램을 구성한다. 프로세서(22)는 MPEG 호환 비디오, 오디오, 및 서브 픽처 스트림을 비디오 디코더(25), 오디오 디코더(35) 및 서브 픽처 프로세서(30)에 각각 제공한다. 이 비디오 및 오디오 스트림은 선택된 채널(SC) 프로그램 내용을 나타내는 압축 비디오 및 오디오 데이터를 포함한다. 서브 픽처 데이터는 채널(SC) 프로그램 내용과 연관된 SIT, CCT, 및 RRT 정보를 포함한다. The controller 60 and the processor 22 determine PIDs of the video, audio, and subpicture streams in the packetized decoded transport stream input from the unit 17 to the decoder 100 from the CIT. The video, audio and subpicture streams make up the desired program transmitted on the selected channel (SC). Processor 22 provides MPEG compatible video, audio, and subpicture streams to video decoder 25, audio decoder 35, and subpicture processor 30, respectively. This video and audio stream contains compressed video and audio data representing the selected channel (SC) program content. The subpicture data includes SIT, CCT, and RRT information associated with channel (SC) program content.

디코더(25)는 유닛(22)으로부터의 MPEG 호환 패킷화된 비디오 데이터를 디코딩하고 압축 해제하며 압축 해제된 프로그램을 나타내는 화소 데이터를 다중화기(40)를 통해 NTSC 인코더(45)에 제공한다. 유사하게 오디오 프로세서(35)는 유닛(22)으로부터의 패킷화된 오디오 데이터를 디코딩하고 관련 압축 해제된 비디오 데이터와 동기화된 상태로 디코딩되고 증폭된 오디오 데이터를 오디오 재생을 위해 장치(55)에 제공한다. 프로세서(30)는 유닛(22)으로부터 수신된 서브 픽처 데 이터를 디코딩하고 압축 해제한다. Decoder 25 decodes and decompresses MPEG compatible packetized video data from unit 22 and provides pixel data representing the decompressed program to NTSC encoder 45 via multiplexer 40. Similarly, audio processor 35 decodes packetized audio data from unit 22 and provides decoded and amplified audio data to device 55 for audio reproduction in synchronization with the associated decompressed video data. do. The processor 30 decodes and decompresses the sub picture data received from the unit 22.

프로세서(30)는 OSD(37)에 출력하기 위한 포맷된 프로그램 가이드 데이터를 생성하기 위해 유닛(22)으로부터 RRT, CCT, CIT 및 데이터 객체를 어셈블, 정렬, 및 해석한다. OSD(37)는 디스플레이 장치(50) 상에 표시하기 위해 선택 가능한 메뉴 옵션과 다른 아이템을 포함하는 서브타이틀, 제어, 및 정보 메뉴 디스플레이를 나타내는 화소 매핑된 데이터를 생성하도록 SIT, RRT, 및 CCT 및 다른 정보를 처리한다. 디스플레이되는 제어 및 정보 메뉴는 사용자로 하여금 시청할 프로그램을 선택하게 하고, a) 시청을 위해 선택된 프로그램을 수신하도록 동조하는 기능, b) 저장 매체(105)에 프로그램을 레코딩하는 기능, 및 c) 매체(105)로부터 프로그램을 재생하는 기능을 포함하는 장래 프로그램 처리 기능을 스케쥴링하게 한다. The processor 30 assembles, aligns, and interprets the RRT, CCT, CIT and data objects from the unit 22 to generate formatted program guide data for output to the OSD 37. The OSD 37 may be configured to generate SIT, RRT, and CCT, and pixel mapped data representing subtitle, control, and information menu displays that include selectable menu options and other items for display on the display device 50; Process other information. The control and information menu displayed allows the user to select a program to watch, a) to tune to receive the selected program for viewing, b) to record the program to the storage medium 105, and c) to the medium ( 105) to schedule a future program processing function including the function of reproducing the program.

OSD 생성기(37)로 생성되는 텍스트와 그래픽을 포함하는 제어 및 정보 디스플레이는 제어기(60)의 지시 하에 오버레이 화소 맵 데이터의 형태로 생성된다. 유닛(37)으로부터의 오버레이 화소 맵 데이터는 제어기(60)의 지시 하에 다중화기(40)를 통해 인코더(45)에서 MPEG 디코더(25)로부터 압축 해제된 화소를 나타내는 데이터와 결합되고 동기화된다. 관련 서브 픽처 데이터와 함께 채널(SC)에 비디오 프로그램을 나타내는 결합된 화소 맵 데이터는 NTSC 인코더(45)에 의해 인코딩되고 디스플레이를 위해 장치(50)에 출력된다. Control and information displays comprising text and graphics generated by the OSD generator 37 are generated in the form of overlay pixel map data under the direction of the controller 60. Overlay pixel map data from unit 37 is combined and synchronized with data representing pixels decompressed from MPEG decoder 25 at encoder 45 via multiplexer 40 under the direction of controller 60. Combined pixel map data representing a video program on channel SC with associated subpicture data is encoded by NTSC encoder 45 and output to device 50 for display.

도 13 의 시스템의 저장 모드에서, 유닛(17)으로부터의 정정된 출력 데이터는 저장을 위해 MPEG 호환 데이터스트림을 제공하도록 디코더(100)에 의해 처리된다. 이 모드에서, 프로그램은 원격 유닛(70)과 인터페이스(65)를 통해 사용자에 의해 저장을 위해 선택된다. 프로세서(60)와 연계하여, 프로세서(22)는 MGT, MDBT, CCT, STT, RRT, TCIT, 및 SIT 데이터를 포함하는 요약된 프로그램 특정 정보 및 앞서 기술된 유리한 특성을 포함하는 기술자를 형성한다. 요약된 프로그램 특정 정보는 저장을 위해 선택된 프로그램의 디코딩을 지원하지만 관계없는 정보를 배제한다. 프로세서(22)와 연계하여 프로세서(60)는 선택된 프로그램의 패킷화된 내용 데이터와 관련된 요약된 프로그램 특정 정보를 포함하는 복합 MPEG 호환 데이터스트림을 형성한다. 복합 데이터스트림은 저장 인터페이스(95)에 출력된다. In the storage mode of the system of FIG. 13, the corrected output data from unit 17 is processed by decoder 100 to provide an MPEG compatible datastream for storage. In this mode, the program is selected for storage by the user via the remote unit 70 and the interface 65. In conjunction with processor 60, processor 22 forms a descriptor comprising summarized program specific information including MGT, MDBT, CCT, STT, RRT, TCIT, and SIT data and the advantageous features described above. The summarized program specific information supports the decoding of the program selected for storage but excludes extraneous information. In conjunction with processor 22, processor 60 forms a composite MPEG compatible datastream containing summarized program specific information related to the packetized content data of the selected program. The composite data stream is output to storage interface 95.

저장 인터페이스(95)는 데이터에서의 갭과 비트율 변동을 감소시키기 위해 복합 데이터스트림을 버퍼링 한다. 최종 버퍼링 된 데이터는 저장 장치(90)에 의해 매체(105)에 저장하기에 적합하게 처리된다. 저장 장치(90)는 저장하기에 적합한 인코딩 된 데이터스트림을 생성하기 위해 채널 코딩, 인터리빙 및 리드 솔로몬 인코딩과 같은 공지된 에러 인코딩 기술을 사용하여 인터페이스(95)로부터 버퍼링 된 데이터스트림을 인코딩 한다. 유닛(90)은 매체(105) 상에 요약된 프로그램 특정 정보를 포함하는 최종 인코딩된 데이터스트림을 저장한다.
도 13의 구조는 배타적이지 않다. 다른 구조도 동일한 목적을 달성하기 위하여 본 발명의 원리에 따라 유도될 수 있다. 더욱이, 도 13의 디코더(100)의 요소의 기능과 도 12의 프로세스 단계는 마이크로프로세서의 프로그래밍 된 명령으로 전체적으로 또는 부분적으로 구현될 수 있다. 추가적으로, 본 발명의 원리는 임의의 형태의 MPEG 또는 비-MPEG 호환 전자 프로그램 가이드에 적용된다. 본 발명의 원리에 따라 형성된 데이터스트림은 비디오 서버 또는 예를 들어 전화선을 통한 PC 타입의 통신을 포함하는 여러 가지 애플리케이션에 사용될 수 있다. 본 발명의 원리에 따라 프로그램 특정 정보를 포함하도록 형성된 비디오, 오디오 및 데이터의 하나 이상의 성분을 가지는 프로그램 데이터스트림은 저장 매체에 기록될 수 있으며 다른 서버, PC, 또는 수신기에 전송되거나 재방송될 수 있다. 본 명세서에 기술되어 있는 데이터 구조의 중요한 요소는 프로그램 내용이나 프로그램 가이드 정보를 전송하는데 사용될 수 있는 폭넓은 여러 가지 데이터 트랜스포트 구조에서 프로그램 보조 정보(program ancillary information)를 전송하는데 유리하게 사용될 수 있다. 그러한 트랜스포트 구조는 예를 들어, MPEG-PSI, 인터넷 TCP/IP(Transport Control Protocol/Internet Protocol), DSS(Digital Satellite System), ATM(Asynchronous Transfer Mode) 등을 포함할 수 있다.
Storage interface 95 buffers the composite datastream to reduce gaps and bit rate variations in the data. The final buffered data is suitably processed by the storage device 90 for storage in the medium 105. Storage device 90 encodes the buffered datastream from interface 95 using known error encoding techniques such as channel coding, interleaving and Reed Solomon encoding to produce an encoded datastream suitable for storage. Unit 90 stores the final encoded datastream containing the program specific information summarized on medium 105.
The structure of FIG. 13 is not exclusive. Other structures may be derived according to the principles of the present invention to achieve the same purpose. Moreover, the functionality of the elements of the decoder 100 of FIG. 13 and the process steps of FIG. 12 may be implemented in whole or in part by programmed instructions of the microprocessor. In addition, the principles of the present invention apply to any form of MPEG or non-MPEG compatible electronic program guide. Data streams formed in accordance with the principles of the present invention may be used in a variety of applications, including communication of a PC type via a video server or, for example, a telephone line. Program datastreams having one or more components of video, audio, and data that are configured to contain program specific information in accordance with the principles of the present invention may be recorded on a storage medium and transmitted or rebroadcast to other servers, PCs, or receivers. Important elements of the data structures described herein may be advantageously used to transmit program ancillary information in a wide variety of data transport structures that may be used to transmit program content or program guide information. Such transport structures may include, for example, MPEG-PSI, Internet Transport Control Protocol / Internet Protocol (TCP / IP), Digital Satellite System (DSS), Asynchronous Transfer Mode (ATM), and the like.

전술한 바와 같이, 본 발명은 디지털 신호 처리 분야, 특히 채널과 프로그램을 위한 프로그램 가이드에서 이용가능하다.As mentioned above, the present invention is available in the field of digital signal processing, in particular program guides for channels and programs.

Claims (32)

프로그램 가이드를 제공하기 위해 제 1 소스로부터 프로그램 정보를 디코딩하기 위한 장치로서,An apparatus for decoding program information from a first source to provide a program guide, the apparatus comprising: 상기 프로그램 정보에서 보조 정보와 프로그램 가이드 정보(ancillary and program guide information)를 획득(acquiring)하기 위한 프로세서(62)와,A processor 62 for acquiring auxiliary information and program guide information from the program information; 디스플레이용 프로그램 가이드 정보를 처리하기 위한 디스플레이 프로세서를 포함하는, 제 1 소스로부터 프로그램 정보를 디코딩하기 위한 장치에 있어서,An apparatus for decoding program information from a first source, comprising a display processor for processing program guide information for display, the apparatus comprising: 사용자가 영역별로 정렬된(collated) 방송 서비스의 복수의 그룹들 사이에서 선택하게 하는 제어기(65, 70);Controllers 65 and 70 for allowing a user to select between a plurality of groups of broadcast services collated by area; 패킷화되는 상기 프로그램 정보;The program information being packetized; (a) 영역별로 정렬된 방송 서비스의 복수의 서로 다른 그룹들 중에서 선택하게 하는 채널 매칭 정보와,(a) channel matching information for selecting from a plurality of different groups of broadcast services arranged by region, (b) 방송 일정 시간별로 상기 선택된 방송 서비스와 연관된 프로그램 가이드 정보를 정렬하기 위한 데이터(b) data for arranging program guide information associated with the selected broadcast service by broadcasting schedule time; 를 포함하는 상기 보조 정보, 및The auxiliary information comprising a, and 상기 보조 정보를 사용하여 상기 선택된 방송 서비스와 연관된 상기 프로그램 가이드 정보를 정렬하기 위한 데이터 정렬기(a data collator)A data collator for sorting the program guide information associated with the selected broadcast service using the assistance information; 를 특징으로 하는, 제 1 소스로부터 프로그램 정보를 디코딩하기 위한 장치.And decode the program information from the first source. 제 1 항에 있어서, 상기 영역은 (a) 지리적 영역, (b) 위성, 지상, 또는 케이블 방송자에 의해 서비스 되는 영역, 및 (c) 서비스 제공자의 마켓(market) 영역 중 적어도 하나의 영역을 포함하는, 제 1 소스로부터 프로그램 정보를 디코딩하기 위한 장치.2. The system of claim 1, wherein the region comprises at least one of (a) a geographic region, (b) an area served by a satellite, terrestrial, or cable broadcaster, and (c) a market area of a service provider. And an apparatus for decoding program information from a first source. 제 1 항에 있어서, 상기 채널 매핑 정보는 (a) 특정 영역을 특정 방송 채널과 연관시키는 채널 정보 맵과 (b) 특정 영역을 특정 서비스와 연관시키는 서비스 정보 맵 중 적어도 하나를 포함하는, 제 1 소스로부터 프로그램 정보를 디코딩하기 위한 장치.2. The method of claim 1, wherein the channel mapping information comprises at least one of (a) a channel information map that associates a particular region with a particular broadcast channel and (b) a service information map that associates the particular region with a particular service. Apparatus for decoding program information from a source. 제 3 항에 있어서, 상기 서비스는 (a) 비디오 채널, (b) 오디오 채널, (c) 인터넷 서비스, (d) 전화 또는 팩스 서비스, (e) 광역 네트워크 서비스 중 적어도 2개의 서비스를 포함하는, 제 1 소스로부터 프로그램 정보를 디코딩하기 위한 장치.4. The service of claim 3, wherein the service comprises at least two of (a) video channel, (b) audio channel, (c) internet service, (d) telephone or fax service, and (e) wide area network service. Apparatus for decoding program information from a first source. 제 1 항에 있어서, 상기 채널 매핑 정보는 지역 식별 지정(a region identification designation)과 특정 방송 채널을 연관시키는, 제 1 소스로부터 프로그램 정보를 디코딩하기 위한 장치.2. The apparatus of claim 1, wherein the channel mapping information associates a region identification designation with a particular broadcast channel. 제 5 항에 있어서, 상기 지역 식별 지정은 (a) 우편 코드, (b) 전화 지역 코드, 및 (c) 다른 지역 식별 코드 중 적어도 하나를 포함하고, The system of claim 5, wherein the area identification designation comprises at least one of (a) a postal code, (b) a telephone area code, and (c) another area identification code, 상기 데이터 정렬기(collator)는 상기 장치의 미리 저장된 지역 식별 지정을 상기 지역 식별 지정과 비교함으로써 프로그램 가이드 정보를 정렬하는, 제 1 소스로부터 프로그램 정보를 디코딩하는 장치.And the data collator sorts program guide information by comparing a pre-stored area identification designation of the device with the area identification designation. 제 1 항에 있어서, 상기 보조 정보는 상기 프로그램 가이드 정보와 연관된 객체를 포함하며 표로 분할된 정보를 포함하고, 상기 프로세서는 상기 표와 객체를 영역별로 정렬하는 데이터를 획득하는, 제 1 소스로부터 프로그램 정보를 디코딩하는 장치.The program of claim 1, wherein the auxiliary information includes an object associated with the program guide information and includes information divided into tables, and the processor obtains data for sorting the table and the objects by area. Device for decoding the information. 제 7 항에 있어서, 상기 표와 객체를 정렬하는 상기 데이터는 표 영역과 다른 영역을 객체와 연관시키는 영역 식별 지정을 포함하고,8. The method of claim 7, wherein the data that aligns the table with an object includes an area identification designation that associates an area different from a table area with an object, 상기 데이터 정렬기는 상기 객체를 상기 표의 영역과 다른 영역으로 정렬하는, 제 1 소스로부터 프로그램 정보를 디코딩하는 장치.And the data aligner aligns the object into an area different from the area of the table. 제 7 항에 있어서, 상기 객체는 (a) 비디오 세그먼트, (b) 오디오 세그먼트, (c) 텍스트, (d) 디스플레이를 위한 사용자 선택 가능 아이템을 나타내는 아이콘, (e) HTML 또는 SGML 문서, (f) 선택 가능 아이템의 메뉴, (g) 둘러싼 영상(an encompassing image) 내에 나타내기 위한 영상 윈도우, 및 (h) 멀티미디어 기능을 개시하기 위한 영상 윈도우 중 적어도 하나를 포함하는, 제 1 소스로부터 프로그램 정보를 디코딩하는 장치.The method of claim 7, wherein the object comprises (a) a video segment, (b) an audio segment, (c) text, (d) an icon representing a user selectable item for display, (e) an HTML or SGML document, (f) Program information from a first source, comprising at least one of a menu of selectable items, (g) an image window for displaying within an encompassing image, and (h) an image window for initiating a multimedia function. Decoding device. 제 1 항에 있어서, 상기 보조 정보는 상기 제 1 소스와는 다른 제 2 소스로부터 상기 보조 정보를 획득하는데 사용하기 위한 획득 정보를 더 포함하고, 상기 획득 정보는 (a) 인터넷 URL, (b) 인터넷 IP 주소, (c) 이메일 주소, 및 (d) 전화/팩스/비디오폰 번호 중 하나를 포함하는, 제 1 소스로부터 프로그램 정보를 디코딩하는 장치.2. The method of claim 1, wherein the assistance information further comprises acquisition information for use in obtaining the assistance information from a second source different from the first source, wherein the acquisition information comprises (a) an Internet URL, (b) An apparatus for decoding program information from a first source comprising one of an Internet IP address, (c) an email address, and (d) a telephone / fax / videophone number. 제 1 항에 있어서, 상기 채널 매핑 정보는 MPEG 프로토콜에 따라 형성되고, (a) 표_아이디_확장 필드(table_id_extension field), (b) 카루젤Id 필드(a carouselId field), 및 (c) 사용자 정의 프라이비트(private) 데이터 필드로부터 선택된 적어도 하나의 데이터 필드를 사용하는, 제 1 소스로부터 프로그램 정보를 디코딩하기 위한 장치.The channel mapping information of claim 1, wherein the channel mapping information is formed according to the MPEG protocol, wherein (a) a table_id_extension field, (b) a carouselId field, and (c) a user. An apparatus for decoding program information from a first source using at least one data field selected from a definition private data field. 제 1 항에 있어서, 상기 데이터 정렬기는 서로 다른 영역과 연관된 적어도 2개의 이용 가능 프로그램 가이드로부터 선택된 프로그램 가이드를 제공하기 위해 사용자 선택 입력에 응답하여 상기 프로그램 가이드 정보를 정렬하는, 제 1 소스로부터 패킷화된 프로그램 정보를 디코딩하는 장치.2. The packetization of claim 1 wherein the data aligner aligns the program guide information in response to a user selected input to provide a program guide selected from at least two available program guides associated with different regions. Device for decoding the generated program information. 제 1 항에 있어서, 상기 보조 정보는 포스트-트랜스포트 처리(post-transport processing)를 하기 이전에 영역별로 상기 보조 정보를 필터링할 수 있는 트랜스포트 프로토콜 레벨에서 영역별로 분할되는, 제 1 소스로부터 패킷화된 프로그램 정보를 디코딩하기 위한 장치.The packet from the first source of claim 1, wherein the auxiliary information is partitioned by area at a transport protocol level capable of filtering the auxiliary information by area before post-transport processing. Apparatus for decoding the normalized program information. 제 1 항에 있어서, 상기 보조 정보는 다른 보조 정보 요소들이 해당 다른 영역에서 디코딩하기 위하여 목표 지정되게 하는 영역별로 분할되는, 제 1 소스로부터 패킷화된 프로그램 정보를 디코딩하기 위한 장치.2. The apparatus of claim 1, wherein the assistance information is divided by regions that cause other assistance information elements to be targeted for decoding in that other region. 해당 다른 지역에 다른 프로그램 가이드를 제공하기 위해 디코더에서 처리하기에 적합한 프로그램 가이드 정보를 형성하기 위한 방법으로서,A method for forming program guide information suitable for processing in a decoder to provide different program guides in different regions, (a) 상기 디코딩 장치의 사용자가 상기 디코딩 장치에서, 영역별로 정렬된 방송 서비스의 서로 다른 그룹들 사이에서 선택하게 하는 채널 매핑 정보와,(a) channel mapping information for allowing a user of the decoding apparatus to select between different groups of broadcast services arranged by region in the decoding apparatus; (b) 방송 예정 시간별로 상기 선택된 방송 서비스와 연관된 프로그램 가이드 정보를 정렬하기 위한 데이터(b) data for arranging program guide information associated with the selected broadcast service for each scheduled broadcast time; 를 포함하는 보조 정보를 형성하는 단계;Forming auxiliary information including a; 상기 방송 서비스와 프로그램을 연관시키는 링크 정보를 형성하는 단계;Forming link information for associating the broadcast service with a program; 상기 보조 정보를 영역에 기초하여 분할된 표로 형성하는 단계; 및Forming the auxiliary information into a divided table based on an area; And 전송 채널로 출력하기 위해 패킷화된 데이터로 상기 보조 정보와 상기 링크 정보를 통합(incorporating)시키는 단계를 포함하는 것을 특징으로 하는, 프로그램 가이드 정보를 형성하기 위한 방법.Incorporating the assistance information and the link information into packetized data for output on a transport channel. 제 15 항에 있어서, 상기 영역은 (a) 지리적 영역, (b) 위성, 지상, 또는 케이블 방송자 별로 서비스 되는 영역, 및 (c) 서비스 제공자의 마켓 영역 중 적어도 하나를 포함하는, 프로그램 가이드 정보를 형성하기 위한 방법.16. The program guide information according to claim 15, wherein the area comprises at least one of (a) a geographic area, (b) an area serviced by satellite, terrestrial, or cable broadcaster, and (c) a market area of a service provider. Method for forming 제 15 항에 있어서, 상기 채널 매핑 정보는 (a) 특정 영역과 특정 방송 채널을 연관시키는 채널 정보 맵과 (b) 특정 영역과 특정 서비스를 연관시키는 서비스 정보 맵 중 적어도 하나를 포함하는, 프로그램 가이드 정보를 형성하기 위한 방법.16. The program guide of claim 15, wherein the channel mapping information comprises at least one of (a) a channel information map that associates a particular region with a particular broadcast channel and (b) a service information map that associates the particular region with a particular service. A method for forming information. 제 15 항에 있어서, 상기 채널 매핑 정보는 지역 식별 지정을 특정 방송 채널과 연관시키는, 프로그램 가이드 정보를 형성하기 위한 방법.16. The method of claim 15, wherein the channel mapping information associates a region identification designation with a particular broadcast channel. 제 18 항에 있어서, 상기 지역 식별 지정은 (a) 우편 코드, (b) 전화 지역 코드, 및 (c) 다른 지역 식별 코드 중 적어도 하나를 포함하는, 프로그램 가이드 정보를 형성하기 위한 방법.19. The method of claim 18, wherein the area identification designation comprises at least one of (a) a postal code, (b) a telephone area code, and (c) another area identification code. 제 15 항에 있어서, 상기 보조 정보를 예정 방송 시간에 기초하여 분할된 표로 형성하는 단계를 포함하는, 프로그램 가이드 정보를 형성하기 위한 방법.16. The method of claim 15, comprising forming the assistance information into a divided table based on a predetermined broadcast time. 제 15 항에 있어서, 상기 보조 정보는 상기 프로그램 가이드 정보와 연관된 객체를 포함하는, 프로그램 가이드 정보를 형성하기 위한 방법.The method of claim 15, wherein the assistance information comprises an object associated with the program guide information. 제 21 항에 있어서, 상기 객체는 (a) 비디오 세그먼트, (b) 오디오 세그먼트, (c) 텍스트, (d) 사용자 선택 가능한 디스플레이용 아이템을 나타내는 아이콘, (e) HTML 또는 SGML 문서, (f) 선택 가능 아이템의 메뉴, (g) 에워싸는 영상 내에 나타내기 위한 영상 윈도우, 및 (h) 멀티미디어 기능을 개시하기 위한 영상 윈도우 중 적어도 하나를 포함하는, 프로그램 가이드 정보를 형성하기 위한 방법. 22. The apparatus of claim 21, wherein the object comprises (a) a video segment, (b) an audio segment, (c) text, (d) an icon representing a user-selectable item for display, (e) an HTML or SGML document, (f) At least one of a menu of selectable items, (g) an image window for displaying in an enclosed image, and (h) an image window for initiating a multimedia function. 제 15 항에 있어서, 표로 분할되고 객체와 상기 표를 정렬하는 데이터를 포함하며, 표 지역과 다른 지역을 객체와 연관시키는 지역 식별 지정을 포함하는 보조 정보를 형성하는 단계를 포함하는, 프로그램 가이드 정보를 형성하기 위한 방법.16. The program guide information of claim 15 including forming auxiliary information divided into tables and comprising data to align the table with objects, the supplemental information comprising a region identification designation that associates the table region with another region with the object. Method for forming 제 15 항에 있어서, 상기 보조 정보를 디코딩하기 위해 하나 이상의 특정 디코더를 특정 영역과 연관시키는 정보를 포함하도록 상기 보조 정보를 형성하는 단계를 포함하는, 프로그램 가이드 정보를 형성하기 위한 방법.16. The method of claim 15, comprising forming the assistance information to include information associating one or more specific decoders with a particular region to decode the assistance information. 제 24 항에 있어서, 상기 특정 디코더는 고유한 디코더 식별 코드를 사용하여 상기 특정 영역과 연관되는, 프로그램 가이드 정보를 형성하기 위한 방법.25. The method of claim 24, wherein the particular decoder is associated with the particular region using a unique decoder identification code. 제 24 항에 있어서, 상기 특정 디코더와 서로 다른 영역을 연관시키기 위해 적어도 하나의 특정 디코더와 특정 영역을 연관시키는 상기 정보를 다이나믹하게(dynamically) 업데이트시키는 단계를 포함하는, 프로그램 가이드 정보를 형성하기 위한 방법.25. The method of claim 24, comprising dynamically updating the information associating a particular region with at least one particular decoder to associate different regions with the particular decoder. Way. 제 15 항에 있어서, 상기 채널 매핑 정보는 MPEG 프로토콜에 따라 형성되고, (a) 표_아이디_확장 필드(table_id_extension field), (b) 카루젤Id 필드(carouselId field), 및 (c) 사용자 정의 프라이비트 데이터 필드로부터 선택된 적어도 하나의 데이터 필드를 사용하는, 프로그램 가이드 정보를 형성하기 위한 방법.16. The method of claim 15, wherein the channel mapping information is formed according to the MPEG protocol, wherein (a) table_id_extension field, (b) carouselId field, and (c) user definition. A method for forming program guide information using at least one data field selected from a private data field. 프로그램 가이드를 제공하기 위해 제 1 소스로부터 프로그램 정보를 디코딩하기 위한 방법으로서,A method for decoding program information from a first source to provide a program guide, the method comprising: 상기 프로그램 정보에서 보조 정보와 프로그램 가이드 정보를 획득하는 단계로서, 상기 보조 정보는Acquiring auxiliary information and program guide information from the program information, wherein the auxiliary information (a) 영역별로 정렬된 방송 서비스의 그룹을 제공하는 채널 매핑 정보와,(a) channel mapping information for providing a group of broadcast services arranged by region; (b) 방송 예정 시간별로 상기 방송 서비스와 연관된 프로그램 가이드 정보를 정렬하기 위한 데이터를 포함하는, 상기 획득 단계,(b) the acquiring step, comprising data for sorting program guide information associated with the broadcast service for each scheduled broadcast time; 서로 다른 영역과 연관된 적어도 2개의 이용 가능 프로그램 가이드로부터 선택된 프로그램 가이드를 제공하기 위해 사용자 선택에 응답하여 프로그램 가이드 정보를 정렬하는 단계, 및 Arranging program guide information in response to user selection to provide a program guide selected from at least two available program guides associated with different regions, and 상기 정렬된 디스플레이용 프로그램 가이드 정보를 처리하는 단계를 포함하는, 제 1 소스로부터 프로그램 정보를 디코딩하기 위한 방법. Processing the aligned program guide information for display, the method for decoding program information from a first source. 삭제delete 삭제delete 삭제delete 삭제delete
KR1020007009060D 1998-02-20 1999-02-18 Apparatus and method for decoding packetized program information, storage medium containing digital data, and method for forming program guide information KR100586857B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US60/075,412 1998-02-20
KR1020007009060A KR20010041028A (en) 1998-02-20 1999-02-18 A multimedia system for adaptively forming and processing expansive program guides

Publications (1)

Publication Number Publication Date
KR100586857B1 true KR100586857B1 (en) 2006-06-07

Family

ID=41747406

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020007009060D KR100586857B1 (en) 1998-02-20 1999-02-18 Apparatus and method for decoding packetized program information, storage medium containing digital data, and method for forming program guide information

Country Status (1)

Country Link
KR (1) KR100586857B1 (en)

Similar Documents

Publication Publication Date Title
KR100564839B1 (en) Apparatus for acquiring packetized program data, apparatus for adaptively decoding re-partitionable packetized program guide data, method for forming packetized program data to be suitable for processing in a decoder, and storage medium containing digital data
US7032236B1 (en) Multimedia system for processing program guides and associated multimedia objects
US6993782B1 (en) Program guide information and processor for providing program and channel substitution
EP1013081B1 (en) A system for forming and processing text data for use in program specific information for broadcast
EP0997036B1 (en) A system for forming and processing program specific information containing text data for terrestrial, cable or satellite broadcast
CN1642244A (en) A system for acquiring and processing broadcast programs and program guide data
CN1201578C (en) Program guide information and processor for providing program and channel substitution
KR100586857B1 (en) Apparatus and method for decoding packetized program information, storage medium containing digital data, and method for forming program guide information
MXPA00008119A (en) System for forming, partitioning and processing electronic program guides
MXPA00008117A (en) A multimedia system for adaptively forming and processing expansive program guides
MXPA00008118A (en) A multimedia system for processing program guides and associated multimedia objects