KR101581359B1 - method of receiving a broadcasting signal and receiving system for receiving a broadcasting signal - Google Patents

method of receiving a broadcasting signal and receiving system for receiving a broadcasting signal Download PDF

Info

Publication number
KR101581359B1
KR101581359B1 KR1020090050710A KR20090050710A KR101581359B1 KR 101581359 B1 KR101581359 B1 KR 101581359B1 KR 1020090050710 A KR1020090050710 A KR 1020090050710A KR 20090050710 A KR20090050710 A KR 20090050710A KR 101581359 B1 KR101581359 B1 KR 101581359B1
Authority
KR
South Korea
Prior art keywords
service
field
nrt
data
information
Prior art date
Application number
KR1020090050710A
Other languages
Korean (ko)
Other versions
KR20090127826A (en
Inventor
송재형
이철수
김진필
서종열
이준휘
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to US12/481,559 priority Critical patent/US8250619B2/en
Priority to PCT/KR2009/003096 priority patent/WO2009151265A2/en
Priority to CA2725288A priority patent/CA2725288C/en
Priority to CA2902381A priority patent/CA2902381C/en
Publication of KR20090127826A publication Critical patent/KR20090127826A/en
Priority to US13/555,013 priority patent/US8516535B2/en
Priority to US13/949,114 priority patent/US8875211B2/en
Priority to US14/484,153 priority patent/US9226014B2/en
Priority to US14/484,144 priority patent/US9204182B2/en
Priority to US14/946,475 priority patent/US9467751B2/en
Application granted granted Critical
Publication of KR101581359B1 publication Critical patent/KR101581359B1/en
Priority to US15/249,288 priority patent/US9716921B2/en
Priority to US15/625,826 priority patent/US9980015B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/4508Management of client data or end-user data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/454Content or additional data filtering, e.g. blocking advertisements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47202End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/482End-user interface for program selection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/812Monomedia components thereof involving advertisement data

Abstract

방송 신호 수신 방법 및 수신 시스템이 개시된다. 상기 수신 시스템은 제1 처리부, 제2 처리부, 및 저장 매체를 포함할 수 있다. 상기 제1 처리부는 비실시간 서비스 데이터의 접속 정보를 포함하는 제1 시그널링 정보와 상기 비실시간 서비스 데이터의 미디어 오브젝트 관련 정보를 포함하는 제2 시그널링 정보가 포함된 시그널링 테이블을 수신하여 처리한다. 상기 제2 처리부는 상기 제1 처리부에서 처리된 접속 정보와 미디어 오브젝트 관련 정보를 기초로, 해당 비실시간 서비스 데이터를 수신하고, 수신된 비실시간 서비스 데이터를 포함하는 파일을 처리한다. 상기 저장 매체는 상기 처리된 비실시간 서비스 데이터의 파일을 저장한다.A broadcast signal receiving method and a receiving system are disclosed. The receiving system may include a first processing unit, a second processing unit, and a storage medium. The first processing unit receives and processes a signaling table including first signaling information including access information of non-real-time service data and second signaling information including information about media object of the non-real-time service data. The second processing unit receives the non-real-time service data based on the connection information and the media object related information processed in the first processing unit, and processes the file including the received non-real-time service data. The storage medium stores a file of the processed non-real-time service data.

비실시간, 실시간, 시그널링, 테이블 Non real-time, real-time, signaling, table

Description

방송 신호 수신 방법 및 수신 시스템{method of receiving a broadcasting signal and receiving system for receiving a broadcasting signal}BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to a broadcast signal receiving method and a broadcast signal receiving method,

본 발명은 실시간으로 전송되는 방송 신호와 비실시간으로 전송되는 방송 신호를 수신하는 방법 및 수신 장치에 관한 것이다.The present invention relates to a method and a device for receiving a broadcast signal transmitted in real time and a broadcast signal transmitted in non-real time.

디지털 텔레비전(DTV)은 텔레비전(TV)의 고유 기능인 영상, 음성과 더불어 다양한 서비스를 제공할 수 있게 되었다. 예를 들어 방송 정보(Electronic Program Guide: EPG) 등을 사용자에게 제공할 수 있고, 2개 이상의 채널로부터 수신되는 방송 서비스를 동시에 제공할 수 있다. 특히 수신 시스템이 대용량의 저장 장치를 구비하고, 양방향 통신이 가능한 인터넷이나 데이터 통신 채널과 연결되면서 방송 신호를 이용하여 제공할 수 있는 서비스는 상당히 많아졌다. Digital television (DTV) has been able to provide a variety of services in addition to video and audio, which are unique functions of television (TV). For example, it is possible to provide an electronic program guide (EPG) or the like to a user, and to simultaneously provide a broadcast service received from two or more channels. In particular, the number of services that a receiving system can provide using broadcast signals is increasing, in connection with an Internet or data communication channel capable of bi-directional communication with a large-capacity storage device.

이와 같은 환경에서 최근에는 실시간 방송 서비스와 비실시간 방송 서비스를 결합하여 서비스를 제공하는 방송 신호 송수신 방법이나, 이를 구현할 수 있는 수신 시스템이 개발되고 있다.In such an environment, a broadcasting signal transmitting / receiving method combining a real time broadcasting service with a non-real time broadcasting service and a receiving system capable of realizing the same have been developed.

본 발명의 목적은 실시간 방송 서비스와 비실시간 방송 서비스를 효율적으로 결합하여 제공할 수 있는 방송 신호 수신 방법 및 수신 시스템을 제공하는 것이다.An object of the present invention is to provide a broadcasting signal receiving method and a receiving system capable of efficiently combining a real-time broadcasting service and a non-real-time broadcasting service.

본 발명의 다른 목적은 MPEG-2 기반의 방송 시스템에서 IP 기반의 비실시간 서비스의 수신을 가능하도록 하는 방송 신호 수신 방법 및 수신 시스템을 제공하는 것이다.It is another object of the present invention to provide a broadcasting signal receiving method and a receiving system for enabling reception of an IP-based non-real-time service in an MPEG-2 based broadcasting system.

본 발명의 또 다른 목적은 MPEG-2 기반의 방송 시스템에서 IP 기반의 비실시간 서비스의 수신하기 위하여 IP 기반의 비실시간 서비스의 접근 방법을 시그널링하는 방송 신호 수신 방법 및 수신 시스템을 제공하는 것이다.It is still another object of the present invention to provide a broadcasting signal receiving method and system for signaling an IP-based non-real-time service access method for receiving an IP-based non-real-time service in an MPEG-2 based broadcasting system.

상기 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 방송 신호 수신 방법은, 비실시간 서비스 데이터의 접속 정보를 포함하는 제1 시그널링 정보를 수신하여 처리하는 단계; 상기 비실시간 서비스 데이터의 미디어 오브젝트 관련 정보를 포함하는 제2 시그널링 정보를 수신하여 처리하는 단계; 상기 제1 시그널링 정보에 포함된 접속 정보를 기초로, 해당 비실시간 서비스 데이터를 수신하는 단계; 및 상기 제2 시그널링 정보에 포함된 미디어 오브젝트 관련 정보에 따라 상기 수신된 비실시간 서비스 데이터를 처리하는 단계를 포함할 수 있다. According to an aspect of the present invention, there is provided a broadcast signal receiving method including receiving first signaling information including access information of non-real-time service data and processing the first signaling information; Receiving and processing second signaling information including media object association information of the non-real-time service data; Receiving the non-real-time service data based on the access information included in the first signaling information; And processing the received non-real-time service data according to the media object association information included in the second signaling information.

상기 제1 시그널링 정보와 제2 시그널링 정보는 비실시간(NRT) 서비스를 위한 시그널링 테이블에 포함되어 수신된다. The first signaling information and the second signaling information are received in a signaling table for a non-real time (NRT) service.

상기 미디어 오브젝트 관련 정보는 상기 NRT 서비스 데이터의 콘테이너 정보, 인코딩 정보, 상기 NRT 서비스를 구성하는 파일의 디코딩 파라미터 중 적어도 하나를 포함한다. The media object association information includes at least one of container information of the NRT service data, encoding information, and decoding parameters of a file constituting the NRT service.

상기 미디어 오브젝트 관련 정보는 상기 시그널링 테이블에 포함되어 수신되는 디스크립터의 적어도 하나의 필드를 이용하여 텍스트 형태로 제공된다. The media object association information is provided in a text form using at least one field of the descriptor received in the signaling table.

상기 미디어 오브젝트 관련 정보는 스트림이나 파일 형태로 제공되며, 상기 디스크립터에 상기 스트림이나 파일의 접속 정보가 포함되어 수신된다. The media object association information is provided in the form of a stream or a file, and the descriptor includes connection information of the stream or file.

상기 미디어 오브젝트 관련 정보가 파일 형태로 제공되면, 상기 디스크립터에 상기 파일을 전송하는 FLUTE 세션의 식별자와 시간 정보를 포함하는 파라미터가 더 포함되어 수신된다. If the media object related information is provided in the form of a file, the descriptor is further received with a parameter including an identifier of a FLUTE session for transmitting the file and time information.

상기 NRT 서비스가 Fiexed NRT 서비스인 경우, 상기 NRT 서비스를 구성하는 파일과 상기 시그널링 테이블은 IP 패킷화, 어드레서블 섹션 패킷화, MPEG-2 TS 패킷화가 순차적으로 수행된 후 수신된다. If the NRT service is a Fiexed NRT service, the file configuring the NRT service and the signaling table are received after IP packetization, addressable section packetization, and MPEG-2 TS packetization are sequentially performed.

상기 NRT 서비스가 모바일 NRT 서비스인 경우, 상기 NRT 서비스를 구성하는 파일과 상기 시그널링 테이블은 IP 패킷화되어 하나의 앙상블에 포함되어 수신된다. If the NRT service is a mobile NRT service, the file constituting the NRT service and the signaling table are IP packetized and received in one ensemble.

본 발명의 일 실시예에 따른 수신 시스템은 제1 처리부, 제2 처리부, 및 저장 매체를 포함할 수 있다. 상기 제1 처리부는 비실시간 서비스 데이터의 접속 정보를 포함하는 제1 시그널링 정보와 상기 비실시간 서비스 데이터의 미디어 오브젝트 관련 정보를 포함하는 제2 시그널링 정보가 포함된 시그널링 테이블을 수신하여 처리한다. 상기 제2 처리부는 상기 제1 처리부에서 처리된 접속 정보와 미디어 오브젝트 관련 정보를 기초로, 해당 비실시간 서비스 데이터를 수신하고, 수신된 비 실시간 서비스 데이터를 포함하는 파일을 처리한다. 상기 저장 매체는 상기 처리된 비실시간 서비스 데이터의 파일을 저장한다.A receiving system according to an embodiment of the present invention may include a first processing unit, a second processing unit, and a storage medium. The first processing unit receives and processes a signaling table including first signaling information including access information of non-real-time service data and second signaling information including information about media object of the non-real-time service data. The second processing unit receives the non-real-time service data based on the connection information and the media object related information processed in the first processing unit, and processes the file including the received non-real-time service data. The storage medium stores a file of the processed non-real-time service data.

본 발명의 다른 목적, 특징 및 잇점들은 첨부한 도면을 참조한 실시예들의 상세한 설명을 통해 명백해질 것이다.Other objects, features and advantages of the present invention will become apparent from the detailed description of embodiments with reference to the accompanying drawings.

본 발명에 따른 방송 신호 수신 방법 및 수신 시스템은 실시간 방송 서비스와 비실시간 방송 서비스를 효율적으로 결합하여 제공할 수 있다. The method and system for receiving a broadcast signal according to the present invention can efficiently combine a real-time broadcast service and a non-real-time broadcast service.

또한 본 발명은 Fixed NRT 서비스와 모바일 NRT 서비스에 대해 FLUTE 세션에 대한 접근 정보를 IP 레벨에서 제공할 수 있다. 그리고, 상기 FLUTE 세션을 통해 전송되는 NRT 서비스의 콤포넌트/파일의 렌더링에 필수적인 정보를 IP 기반의 시그널링 정보 채널을 통해 제공받을 수 있다. In addition, the present invention can provide access information for the FLUTE session at the IP level for the fixed NRT service and the mobile NRT service. Information necessary for rendering a component / file of the NRT service transmitted through the FLUTE session may be provided through an IP-based signaling information channel.

또한 본 발명에 따른 수신 시스템에서는 NRT 서비스의 콤포넌트/파일의 렌더링에 필수적인 정보를 수신하고, 수신된 정보에 따라 해당 NRT 서비스의 처리 여부를 결정할 수 있다. 즉, 상기 수신된 정보가 수신 시스템에서 처리할 수 없는 정보를 가지고 있다면 예를 들어, 상기 NRT 서비스를 디코딩할 수 있는 코덱이 수신 시스템에 없다면, 해당 NRT 서비스는 수신되어도 처리하지 않고 무시한다.Also, in the receiving system according to the present invention, it is possible to receive information essential for rendering a component / file of the NRT service, and determine whether to process the corresponding NRT service according to the received information. That is, if the received information has information that can not be processed by the receiving system, for example, if the receiving system does not have a codec capable of decoding the NRT service, the corresponding NRT service is ignored rather than being processed.

이하 상기의 목적을 구체적으로 실현할 수 있는 본 발명의 바람직한 실시예를 첨부한 도면을 참조하여 설명한다. 이때 도면에 도시되고 또 이것에 의해서 설명되는 본 발명의 구성과 작용은 적어도 하나의 실시예로서 설명되는 것이며, 이것 에 의해서 본 발명의 기술적 사상과 그 핵심 구성 및 작용이 제한되지는 않는다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, preferred embodiments of the present invention will be described with reference to the accompanying drawings. The structure and operation of the present invention shown in the drawings and described by the drawings are described as at least one embodiment, and the technical ideas and the core structure and operation of the present invention are not limited thereby.

본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어를 선택하였으나, 이는 당분야에 종사하는 기술자의 의도 또는 관례 또는 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 함을 밝혀두고자 한다. The terms used in the present invention are selected from general terms that are widely used in the present invention while considering the functions of the present invention. However, the terms may vary depending on the intention or custom of the artisan or the emergence of new technology. Also, in certain cases, there may be a term selected arbitrarily by the applicant, in which case the meaning thereof will be described in detail in the description of the corresponding invention. Therefore, it is to be understood that the term used in the present invention should be defined based on the meaning of the term rather than the name of the term, and on the contents of the present invention throughout.

본 발명은 지상파, 케이블 등과 같은 매체를 통해 비실시간(Non Real Time ; 이하 NRT)으로 방송 서비스를 수신하여 서비스할 수 있도록 하는데 있다. 본 발명은 설명의 편의를 위해 이러한 방송 서비스를 NRT 서비스라 하고, 이때의 방송 서비스 데이터를 NRT 서비스 데이터라 하기로 한다.The present invention enables a broadcasting service to be received in non-real time (NRT) through a medium such as a terrestrial wave or a cable. For convenience of description, the present invention is referred to as NRT service, and the broadcast service data at this time is referred to as NRT service data.

상기 수신된 NRT 서비스 데이터는 저장 매체에 저장된 후, 기 설정된 시간이나 유저의 요청에 따라 디스플레이 장치에 표시된다. 상기 NRT 서비스 데이터는 파일 형태로 수신되어 저장 매체에 저장되는 것을 일 실시예로 한다. 상기 저장 매체는 방송 수신 장치의 내부에 장착된 내장 HDD인 것을 일 실시예로 한다. 또 다른 예로, 상기 저장 매체는 방송 수신 장치의 외부에 연결된 USB(Universal Serial Bus) 메모리, 외장 HDD 등이 될 수도 있다.The received NRT service data is stored in a storage medium and then displayed on a display device according to a predetermined time or a user's request. The NRT service data is received in a file form and stored in a storage medium. The storage medium is an internal HDD mounted inside the broadcast receiving apparatus. As another example, the storage medium may be a universal serial bus (USB) memory connected to the outside of the broadcast receiving apparatus, an external HDD, or the like.

상기 NRT서비스를 구성하는 파일들을 수신하여 저장 매체에 저장하기 위해서는 시그널링 정보가 필요하다. 본 발명은 이를 NRT 서비스 시그널링 정보 또는 NRT 서비스 시그널링 데이터라 하기로 한다. Signaling information is required to receive the files constituting the NRT service and store the received files in a storage medium. The present invention is referred to as NRT service signaling information or NRT service signaling data.

본 발명에 따른 NRT 서비스는 크게 Fixed NRT 서비스와 Mobile NRT 서비스로 구분할 수 있다. 본 발명에서는 Fixed NRT 서비스에 대해서 먼저 설명하고, 이어 Mobile NRT 서비스에 대해서 설명하기로 한다.The NRT service according to the present invention can largely be divided into a fixed NRT service and a mobile NRT service. In the present invention, the Fixed NRT service will first be described, and then the Mobile NRT service will be described.

FixedFixed NRTNRT 서비스 service

본 발명에서는 Fixed NRT 서비스를 위해, 파일 형태의 NRT 서비스를 IP 계층에서 IP 패킷화한 후 특정 가상 채널을 통해 MPEG-2 TS 형태로 전송하는 것을 일 실시예로 한다. In the present invention, for the Fixed NRT service, the NRT service of the file type is IP packetized in the IP layer and then transmitted in the form of MPEG-2 TS through a specific virtual channel.

본 발명에서는 MPEG-2 기반의 PSI(Program Specific Information)/PSIP(Program and System Information Protocol) 테이블 예를 들어, 가상 채널 테이블(VCT)를 통하여 가상 채널(Virtual channel) 내, NRT 서비스의 존재 여부 및 NRT 서비스의 식별(Identification) 정보를 시그널링하는 것을 일 실시예로 한다. In the present invention, the presence or absence of an NRT service in a virtual channel through a virtual channel table (VCT), for example, a PSI (Program Specific Information) / PSIP (Program and System Information Protocol) table based on MPEG- And signaling the identification information of the NRT service.

본 발명은 IP 기반의 NRT 서비스의 접근 정보를 시그널링하는 NRT 서비스 시그널링 데이터를 전송하는 NRT 서비스 시그널링 채널을 IP 계층에서 특정 IP 스트림으로 IP 패킷화한 후 MPEG-2 TS 형태로 전송하는 것을 일 실시예로 한다. The present invention is characterized in that an NRT service signaling channel for transmitting NRT service signaling data for signaling access information of an IP-based NRT service is IP-packetized from a IP layer to a specific IP stream and then transmitted in the form of MPEG-2 TS .

도 1은 실시간(real-time ; RT) 서비스와 비실시간(non-real time ; NRT) 서비스를 제공하는 개념을 개시한다. 1 discloses a concept of providing a real-time (RT) service and a non-real-time (NRT) service.

비실시간 서비스는 일부 방송 채널, 특히 방송 채널 중 여분의 대역폭을 이 용해 비실시간으로 전송되는 NRT 서비스 데이터를 수신하여 저장한 후 필요시에 유저에게 제공하는 서비스로서, 상기 NRT 서비스를 위한 전송율이 낮다. 따라서 상기 NRT 서비스는 실시간 시청보다는 저장 후 재생을 위해 주로 사용된다. The non-real-time service is a service that receives and stores NRT service data transmitted in non-real-time using an extra bandwidth among some broadcast channels, particularly broadcast channels, and provides the NRT service data to a user when necessary, . Therefore, the NRT service is mainly used for post-storage reproduction rather than real-time viewing.

실시간 서비스는 현재의 지상파 방송과 같이 실시간으로 방송 서비스 데이터를 수신하여 유저에게 제공하는 방송 서비스이다. The real-time service is a broadcasting service that receives broadcast service data in real time as in the current terrestrial broadcast and provides it to the user.

예를 들어 방송국에서는 방송 서비스 데이터를 실시간으로 송신하고, 뉴스 클립, 날씨 정보, 광고, Push VOD 등을 비실시간으로 송신할 수 있다. 또한 상기 NRT 서비스는 뉴스 클립, 날씨 정보, 광고, Push VOD 뿐만 아니라, 실시간 방송 스트림 중 특정 장면들이 될 수도 있다. For example, a broadcasting station can transmit broadcasting service data in real time and transmit news clips, weather information, advertisements, Push VOD, etc. in non-real time. In addition, the NRT service may be specific scenes of a real-time broadcast stream, as well as news clips, weather information, advertisements, Push VODs.

종래의 방송 수신기(즉, legacy device)는 실시간 서비스를 수신하여 처리할 수는 있으나, 비실시간 서비스를 수신하여 처리할 수는 없다. Conventional broadcast receivers (i.e., legacy devices) can receive and process real-time services, but can not receive and process non-real-time services.

본 발명에 따른 방송 수신기(즉, NRT device)는 비실시간 서비스와 실시간 서비스를 결합하여 다양한 서비스를 제공할 수 있다. A broadcast receiver (i.e., an NRT device) according to the present invention can provide various services by combining a non-real-time service and a real-time service.

본 발명에 따른 하나의 NRT 서비스는 도 2에서와 같이 하나 이상의 콘텐트(또는 NRT 콘텐트라 함)를 포함하고, 하나의 콘텐트는 하나 이상의 파일을 포함하는 것을 일 실시예로 한다. 본 발명에서 파일과 오브젝트는 동일한 의미로 사용된다. As shown in FIG. 2, one NRT service according to the present invention includes one or more content (or NRT content), and one content includes one or more files. In the present invention, files and objects are used in the same sense.

상기 NRT 콘텐트는 독립적으로 재생이 가능한 최소 단위이다. 예를 들어, 비실시간으로 제공되는 뉴스가 있고, 상기 뉴스에는 경제 뉴스, 정치 뉴스, 생활 뉴스가 포함된다고 할 때, 상기 뉴스는 NRT 서비스라 할 수 있고, 경제 뉴스, 정치 뉴스, 생활 뉴스 각각은 NRT 콘텐트라 할 수 있다. 그리고, 경제 뉴스, 정치 뉴스, 생활 뉴스 각각은 적어도 하나의 파일로 구성된다. The NRT content is a minimum unit that can be independently reproduced. For example, when there is news provided in non-real time, and the news includes economic news, political news, and daily news, the news may be called NRT service, and economic news, political news, NRT content. And, each of economic news, political news, and daily news consists of at least one file.

이때 NRT 서비스는 RT 서비스와 동일한 방송 채널 또는 전용 방송 채널을 통해 MPEG-2 트랜스포트 스트림(TS) 패킷 형태로 전송될 수 있다. 이 경우 NRT 서비스를 식별하기 위하여 유니크한 PID가 상기 NRT 서비스 데이터의 TS 패킷에 할당되어 전송된다. 본 발명은 IP 기반의 NRT 서비스 데이터가 MPEG-2 TS 패킷화되어 전송되는 일 실시예로 한다.At this time, the NRT service can be transmitted in the form of an MPEG-2 transport stream (TS) packet through the same broadcast channel or dedicated broadcast channel as the RT service. In this case, a unique PID is assigned and transmitted to the TS packet of the NRT service data to identify the NRT service. The present invention is one embodiment in which IP-based NRT service data is transmitted as an MPEG-2 TS packetized.

이때 상기 NRT 서비스 데이터를 수신하는데 필요한 NRT 서비스 시그널링 데이터는 NRT 서비스 시그널링 채널을 통해 전송된다. 상기 NRT 서비스 시그널링 채널은 IP 계층 상에서 특정 IP 스트림을 통하여 전송되는데, 이때 상기 IP 스트림도 MPEG-2 TS 패킷화되어 전송된다. 상기 NRT 서비스 시그널링 채널로 전송되는 NRT 서비스 시그널링 데이터는 IP 계층에서 구동하는 NRT 서비스들의 접속 정보를 제공하는 것을 일 실시예로 한다.At this time, the NRT service signaling data required to receive the NRT service data is transmitted through the NRT service signaling channel. The NRT service signaling channel is transmitted over a specific IP stream on the IP layer, and the IP stream is also transmitted as an MPEG-2 TS packet. The NRT service signaling data transmitted on the NRT service signaling channel provides access information of NRT services driven in the IP layer.

즉, 방송국에서는 도 3에서와 같이 파일 전송 프로토콜(File Transfer Protocol) 방식에 따라 NRT 콘텐트/파일들을 패킷화하고, 이를 다시 ALC/LCT(Asynchronous Layered Coding/Layered Coding Transport) 방식에 따라 패킷화한다. 상기 패킷화된 ALC/LCT 데이터는 다시 UDP 방식에 따라 패킷화되며, 상기 패킷화된 ALC/LCT/UDP 데이터는 다시 IP 방식에 따라 패킷화되어 ALC/LCT/UDP/IP 데이터가 된다. 상기 패킷화된 ALC/LCT/UDP/IP 데이터를 본 발명에서는 설명의 편의를 위해 IP 데이터그램이라 한다. That is, the broadcasting station packetizes the NRT contents / files according to the file transfer protocol and packetizes them according to the ALC / LCT (Asynchronous Layered Coding / Layered Coding Transport) method as shown in FIG. The packetized ALC / LCT data is again packetized according to the UDP scheme, and the packetized ALC / LCT / UDP data is again packetized according to the IP scheme to become ALC / LCT / UDP / IP data. The packetized ALC / LCT / UDP / IP data is referred to as an IP datagram in the present invention for convenience of explanation.

또한 상기 NRT 콘텐트/파일들을 수신하기 위해 필요한 NRT 서비스 시그널링 정보는 NRT 서비스 시그널링 채널을 통해 전송되는데, 상기 NRT 서비스 시그널링 채널은 UDP(User Datagram protocol) 방식에 따라 패킷화되고, 상기 패킷화된 UDP 데이터는 다시 IP 방식에 따라 패킷화되어 UDP/IP 데이터가 된다. 상기 UDP/IP 데이터도 본 발명에서는 설명의 편의를 위해 IP 데이터그램이라 한다. 이때 상기 NRT 서비스 시그널링 채널은 Well-known IP desination address와 well-known desination UDP port number를 가지는 IP 데이터그램에 인캡슐레이션되어 멀티캐스트(Multicast)되는 것을 일 실시예로 한다. The NRT service signaling channel required for receiving the NRT content / files is transmitted through an NRT service signaling channel. The NRT service signaling channel is packetized according to a UDP (User Datagram Protocol) scheme, and the packetized UDP data Is packetized into UDP / IP data again according to the IP method. The UDP / IP data is also referred to as an IP datagram in the present invention for convenience of explanation. At this time, the NRT service signaling channel is encapsulated in an IP datagram having a well-known IP des- nation address and a well-known des- pination UDP port number, and is multicast.

본 발명에서는 상기 NRT 서비스 및 NRT 서비스 시그널링 채널의 IP 데이터그램들을 어드레서블 섹션 구조로 인캡슐레이션하고, 다시 MPEG-2 TS 포맷으로 패킷화하는 것을 일 실시예로 한다. 즉, 하나의 어드레서블 섹션 구조는 하나의 IP 데이터그램에 섹션 헤더와 CRC 첵섬(checksum)이 추가적으로 더해지는 형태를 가지게 된다. 이러한 어드레서블 섹션 구조의 형태는 프라이빗 데이터(private data) 전송을 위한 DSM-CC(Digital Storage Media Command and Control) 섹션 포맷에 부합되는 구조로 되어 있다. 따라서 상기 어드레서블 섹션은 DSM-CC 어드레서블 섹션이라 하기도 한다. 그리고, 상기 어드레서블 섹션 데이터를 184 바이트 단위로 분할한 후, 각 184 바이트에 4바이트의 MPEG 헤더를 부가하면, 188 바이트의 MPEG-2 TS 패킷을 만들 수 있다. 이때, 상기 MPEG 헤더의 PID에 할당되는 값은 상기 NRT 서비스와 NRT 서비스 시그널링 채널을 전송하는 TS 패킷을 식별할 수 있는 유니크한 값이다. In the present invention, the IP datagrams of the NRT service and the NRT service signaling channel are encapsulated into addressable section structures, and packetized into an MPEG-2 TS format. That is, one addressable section structure has a form in which an IP datagram is additionally provided with a section header and a CRC checksum. The format of the addressable section structure conforms to the Digital Storage Media Command and Control (DSM-CC) section format for private data transmission. Therefore, the addressable section may be referred to as a DSM-CC addressable section. When dividing the addressable section data into 184-byte units and adding 4-byte MPEG headers to 184 bytes, 188-byte MPEG-2 TS packets can be created. At this time, the value assigned to the PID of the MPEG header is a unique value that can identify the TS packet transmitting the NRT service and the NRT service signaling channel.

또한, PSI(Program Specific Information) 및 PSIP(Program and System Information Protocol) 테이블 섹션 데이터도 MPEG-2 TS 패킷화된다. PSI (Program Specific Information) and PSIP (Program and System Information Protocol) table section data are also MPEG-2 TS packetized.

상기 PSI테이블은 일 실시예로, PMT(Program Map Table), PAT(Program Association Table) 등을 포함하고, PSIP테이블은 일 실시예로, VCT(Virtual Channel Table), STT(System Time Table), RRT(Rating Region Table), ETT(Extended Text Table), DCCT(Direct Channel Change Table), DCCSCT(Direct Channel Change Selection Code Table), EIT(Event Information Table), 및 MGT(Master Guide Table)를 포함할 수 있다. The PSI table includes, for example, a virtual channel table (VCT), a system time table (STT), a radio resource control table (RRT) (DCT), Direct Channel Change Selection Code Table (DCCSCT), Event Information Table (EIT), and Master Guide Table (MGT) .

상기 MPEG-2 TS 패킷들은 물리 계층(physical layer)에서 기 정해진 전송 방식 예를 들면, VSB 전송 방식으로 변조되어 수신 시스템으로 전송된다.The MPEG-2 TS packets are modulated by a transmission scheme (for example, VSB transmission scheme) predetermined in the physical layer and transmitted to the reception system.

본 발명에서는 NRT 서비스의 전송 여부를 PSI/PSIP 테이블을 통해 시그널링하는 것을 일 실시예로 한다. 일 예로, 상기 NRT 서비스의 전송 여부를 가상 채널 테이블(VCT)에 시그널링하는 것을 일 실시예로 한다. In the present invention, signaling through the PSI / PSIP table is performed to determine whether or not the NRT service is transmitted. For example, signaling the transmission of the NRT service to the virtual channel table (VCT) is an embodiment.

도 4는 상기 가상 채널 테이블(VCT) 섹션의 신택스 구조의 일 실시예를 보이고 있다. FIG. 4 shows an embodiment of the syntax structure of the virtual channel table (VCT) section.

상기 VCT 섹션은 가상 채널에 대한 정보 예를 들어, 채널 선택을 위한 채널 정보와 오디오 및/또는 비디오의 수신을 위한 패킷 식별자(PID) 등의 정보를 전송한다. 즉, 상기 VCT 섹션을 파싱하면 채널 이름, 채널 번호 등과 함께 채널 내에 실려오는 방송 프로그램의 오디오와 비디오의 PID를 알 수 있다. The VCT section transmits information on a virtual channel, for example, channel information for channel selection and packet identifier (PID) for audio and / or video reception. That is, when the VCT section is parsed, the PID of the audio and video of the broadcast program loaded in the channel together with the channel name, the channel number, and the like can be known.

상기 VCT 섹션의 신택스는 table_id 필드, section_syntax_indicator 필드, private_indicator 필드, section_length 필드, transport_stream_id 필드, version_number 필드, current_next_indicator 필드, section_number 필드, last_section_number 필드, protocol_version 필드, num_channels_in_section 필드 중 적어도 하나를 포함하여 구성된다. The syntax of the VCT section includes at least one of a table_id field, a section_syntax_indicator field, a private_indicator field, a section_length field, a transport_stream_id field, a version_number field, a current_next_indicator field, a section_number field, a last_section_number field, a protocol_version field and a num_channels_in_section field.

상기 VCT 섹션의 신택스는 상기 num_channels_in_section 필드 값만큼 반복되는 'for' 루프(즉, 가상 채널 루프)의 제1 반복문을 더 포함하는데, 상기 제1 반복문 내에는 short_name 필드, major_channel_number 필드, minor_channel_number 필드, modulation_mode 필드, carrier_frequency 필드, channel_TSID 필드, program_number 필드, ETM_location 필드, access_controlled 필드, hidden 필드, service_type 필드, source_id 필드, descriptor_length 필드, 및 이 제1 반복문 내에 포함되는 디스크립터 수만큼 반복되는 'for' 루프로 된 제2 반복문 중 적어도 하나를 포함하여 구성된다. 본 발명에서는 설명의 편의를 위해 상기 제2 반복문을 제1 디스크립터 루프라 한다. 상기 제1 디스크립터 루프에 포함되는 디스크립터 descriptors()는 가상 채널 각각에 개별적으로 적용되는 디스크립터이다. The syntax of the VCT section further includes a first loop of a 'for' loop (ie, a virtual channel loop) in which the num_channels_in_section field value is repeated. In the first loop, a short_name field, a major_channel_number field, a minor_channel_number field, , a carrier_frequency field, a channel_TSID field, a program_number field, an ETM_location field, an access_controlled field, a hidden field, a service_type field, a source_id field, a descriptor_length field, Or the like. In the present invention, the second loop is referred to as a first descriptor loop for convenience of explanation. Descriptors descriptors () included in the first descriptor loop are descriptors individually applied to each virtual channel.

또한 상기 VCT 섹션 신택스는 additional_descriptor_length 필드와, 상기 VCT섹션에 추가되는 디스크립터 수만큼 반복되는 'for' 루프로 된 제3 반복문을 더 포함할 수 있다. 본 발명에서는 설명의 편의를 위해 상기 제3 반복문을 제2 디스크립터 루프라 한다. 상기 제2 디스크립터 루프에 포함되는 디스크립터 additional_descriptors()는 VCT섹션에서 기술되는 모든 가상 채널에 공통적으로 적용되는 디스크립터이다. The VCT section syntax may further include an additional_descriptor_length field and a third loop composed of 'for' loops repeated for the number of descriptors added to the VCT section. In the present invention, the third loop is referred to as a second descriptor loop for convenience of explanation. The descriptor additional_descriptors () included in the second descriptor loop is a descriptor commonly applied to all virtual channels described in the VCT section.

이와 같이 구성된 도 4에서, 상기 table_id 필드는 상기 테이블로 전송되는 정보가 VCT임을 인식할 수 있는 고유 식별자(ID)를 표시한다. 즉, 상기 table_id 필드는 이 섹션(section)이 속해 있는 테이블이 VCT라는 것을 알려주는 값을 나타내며, 일 예로 0xC8이 할당될 수 있다. 4, the table_id field indicates a unique identifier (ID) for recognizing that information transmitted to the table is a VCT. That is, the table_id field indicates a value indicating that the table to which this section belongs is a VCT, and may be assigned, for example, 0xC8.

상기 version_number 필드는 VCT의 버전 값을 나타내고, 상기 section_number 필드는 이 섹션의 번호를, 상기 last_section_number 필드는 완전한 VCT의 마지막 섹션의 번호를 나타낸다. 상기 num_channels_in_section 필드는 상기 VCT 섹션 내에 존재하는 전체 가상 채널의 개수를 지정한다. The version_number field indicates the version value of the VCT, the section_number field indicates the number of this section, and the last_section_number field indicates the number of the last section of the complete VCT. The num_channels_in_section field specifies the total number of virtual channels in the VCT section.

그리고, 상기 'for' 루프의 제1 반복문 내에 있는 short_name 필드는 가상 채널 이름을 나타내고, 상기 major_channel_number 필드는 상기 제1 반복문 안에서 정의되는 가상 채널과 관련된 '메이저' 채널 번호를 나타내고, 상기 minor_channel_number 필드는 '마이너' 채널 번호를 나타낸다. 즉, 각각의 가상 채널 번호는 메이저와 마이너 채널 번호에 연결되어 있어야 하며, 메이저, 마이너 채널 번호는 해당 가상 채널에 대한 사용자 참조 번호로 작용한다. The short_name field in the first loop of the 'for' loop indicates a virtual channel name, the major_channel_number field indicates a 'major' channel number associated with a virtual channel defined in the first loop, the minor_channel_number field indicates' Minor 'channel number. That is, each virtual channel number should be connected to the major and minor channel numbers, and the major and minor channel numbers serve as user reference numbers for the corresponding virtual channel.

상기 program_number 필드는 MPEG-2 PAT(Program Association Table)와 PMT(Program Map Table)가 정의되어 있는 가상 채널을 연결하기 위해 나타내며, 상기 PAT/PMT안에 있는 프로그램 번호와 일치한다. 여기서, PAT는 각 프로그램 번호마다 그 프로그램의 구성 요소를 기술하는데, PMT를 전송하는 트랜스포트 패킷의 PID를 가리킨다. 상기 PMT는 프로그램 식별 번호와 프로그램을 구성하는 비디오, 오디오 등의 개별 비트열이 전송되고 있는 트랜스포트 패킷의 PID 리스트와 부속 정보를 기술하고 있다. The program_number field is used to connect an MPEG-2 PAT (Program Association Table) and a virtual channel defined by a PMT (Program Map Table), and coincides with a program number in the PAT / PMT. Here, the PAT describes the components of the program for each program number, and indicates the PID of the transport packet for transmitting the PMT. The PMT describes a program identification number and a PID list and associated information of a transport packet in which individual bit strings such as video and audio constituting a program are transmitted.

상기 service_type 필드는 해당 virtual channel 내의 서비스 타입을 알려주는 필드이다.The service_type field indicates a service type in the virtual channel.

일 실시예로, 상기 가상 채널은 오디오 및/또는 비디오가 포함된 적어도 하나의 RT 서비스와 적어도 하나의 NRT 서비스를 모두 포함할 수 있다. In one embodiment, the virtual channel may include both at least one RT service including audio and / or video and at least one NRT service.

이 경우, 도 5와 같이 서비스 타입 값이 할당될 수 있으며, ATSC 데이터 온리(only) 서비스를 나타내는 0x04를 이용하여 상기 가상 채널로 NRT서비스가 전송됨을 지시할 수 있다.In this case, a service type value may be allocated as shown in FIG. 5, and an NRT service may be transmitted to the virtual channel using 0x04 indicating an ATSC data only service.

다른 실시예로, 상기 가상 채널은 하나 이상의 NRT 서비스만을 포함할 수 있다. 이 경우, 도 6과 같이 service_type 필드 값으로 0x05를 새로이 정의하고 상기 가상 채널로 NRT 서비스가 전송됨을 지시할 수 있다. In another embodiment, the virtual channel may include only one or more NRT services. In this case, as shown in FIG. 6, 0x05 is newly defined as the service_type field value, and the NRT service can be indicated to be transmitted to the virtual channel.

상기 source_id 필드는 해당 가상 채널에 연결된 프로그램 소스를 나타낸다. The source_id field indicates a program source connected to the virtual channel.

여기서, 소스란 영상, 텍스트, 데이터 또는 음향과 같은 하나의 특정 소스를 말한다. 상기 source_id 필드값은 VCT를 전송하는 트랜스포트 스트림 내에서는 유일한 값을 가진다. Here, a source refers to one specific source such as video, text, data, or sound. The source_id field value has a unique value in the transport stream for transmitting the VCT.

한편, 다음의 'for' 루프의 반복문 내에 있는 서술자 루프(descriptor loop ; descriptor{})에는service location descriptor를 포함할 수 있다. On the other hand, the descriptor loop (descriptor {}) within the loop of the next 'for' loop may contain a service location descriptor.

이러한 service location descriptor는 각 elementary stream에 대한 stream type, Elementary_PID, 및 language code필드 등을 포함할 수 있다.  The service location descriptor may include a stream type, an elementary_PID, and a language code field for each elementary stream.

도 7은 상기 service_type 필드가 해당 가상 채널로 NRT 서비스가 전송됨을 지시하면, 상기 VCT의 제1 디스크립터 루프에 포함되어 전송되는 NRT 서비스 디스크립터(NRT_service_descriptor())의 신택스 구조에 대한 일 실시예를 보이고 있다. 7 shows an embodiment of a syntax structure of an NRT service descriptor (NRT_service_descriptor ()) included in the first descriptor loop of the VCT when the service_type field indicates that the NRT service is transmitted to the corresponding virtual channel .

상기 NRT 서비스 디스크립터(NRT_service_descriptor())는 해당 가상 채널에만 적용되며, 해당 가상 채널에 포함되는 NRT 서비스들의 식별 정보를 제공한다. The NRT service descriptor (NRT_service_descriptor ()) is applied only to the corresponding virtual channel, and provides identification information of NRT services included in the corresponding virtual channel.

도 7에서, descriptor_tag 필드는 디스크립터 식별자로서, NRT 서비스 디스크립터를 식별하는 식별자가 설정될 수 있다. In Fig. 7, the descriptor_tag field is a descriptor identifier, and an identifier that identifies the NRT service descriptor may be set.

descriptor_length 필드는 상기 descriptor_length 필드 이후부터 이 descriptor의 끝까지, 디스크립터의 나머지 길이를 byte 단위로 나타낸다. The descriptor_length field indicates the remaining length of the descriptor in bytes after the descriptor_length field to the end of the descriptor.

num_NRT_services필드는 일 실시예로 8비트를 할당할 수 있으며, 이 가상 채널에 포함되는 NRT 서비스의 개수를 표시한다. 이후 상기 num_NRT_services필드 값에 해당하는 NRT 서비스 개수만큼 'for' 루프가 수행되어 상기 가상 채널에 포함되는 각 NRT 서비스의 식별 정보를 표시한다. 즉, 상기 'for' 루프에는 NRT_service_id 필드, NRT_service_short_name 필드, NRT_service_category 필드, 및 NRT_service_status 필드를 포함할 수 있다.The num_NRT_services field may allocate 8 bits in one embodiment and indicates the number of NRT services included in the virtual channel. Then, a 'for' loop is performed for the number of NRT services corresponding to the value of the num_NRT_services field to display identification information of each NRT service included in the virtual channel. That is, the 'for' loop may include an NRT_service_id field, an NRT_service_short_name field, an NRT_service_category field, and an NRT_service_status field.

상기 NRT_service_id 필드는 일 실시예로 16 비트를 할당하며, 상기 가상 채널 내 해당 NRT 서비스를 유일하게 식별할 수 있는 값을 표시한다(A 16-bit unsigned integer number that shall uniquely identify this NRT service within the scope of this virtual channel.). In the NRT_service_id field, 16 bits are allocated to the NRT_service_id field, and a value capable of uniquely identifying the corresponding NRT service in the virtual channel is displayed (A 16-bit unsigned integer number, which will uniquely identify the NRT service within the scope of this virtual channel.).

상기 NRT_service_short_name 필드는 상기 NRT 서비스의 short name 을 표시 한다. 상기 NRT 서비스의 short name이 없으면, 상기 필드는 널 값으로 채워질 수 있다. The NRT_service_short_name field indicates a short name of the NRT service. If there is no short name of the NRT service, the field may be filled with a null value.

상기 NRT_service_category필드는 일 실시예로 5비트를 할당하며, 상기 NRT 서비스에서 전송되는 서비스 타입을 나타낸다. The NRT_service_category field allocates 5 bits in one embodiment and indicates a service type transmitted from the NRT service.

상기 NRT_service_status필드는 일 실시예로 2비트를 할당하며, 상기 NRT 서비스의 상태를 나타낸다. 예를 들어, 상기 NRT_service_status필드 값의 상위 비트가 1로 설정되면 해당 NRT 서비스는 액티브 상태이고, 0으로 설정되면 비액티브 상태임을 나타낸다. 그리고 상기 NRT_service_status필드 값의 하위 비트가 1로 설정되면 해당 NRT 서비스는 히든 상태이고, 0으로 설정되면 히든 상태가 아님을 나타낸다(The most significant bit shall indicate whether this NRT service is active (when set to 1) or inactive (when set to 0) and the least significant bit shall indicate whether this NRT service is hidden (when set to 1) or not (when set to 0).).The NRT_service_status field allocates 2 bits in one embodiment and indicates the state of the NRT service. For example, if the upper bit of the NRT_service_status field value is set to 1, the corresponding NRT service is in an active state, and if it is set to 0, it is inactive. If the lower bit of the NRT_service_status field value is set to 1, the corresponding NRT service is in a hidden state. If it is set to 0, it indicates that the NRT service is not in a hidden state. or inactive (when set to 0) and the least significant bit at least NRT service is hidden (when set to 1) or not (when set to 0).

도 8은 본 발명에 따른 수신 시스템에서, 데이터 방송 스트림을 전달하기 위한 ATSC A/90 규격과 IP 멀티캐스트 스트림(Multicast stream)을 전송하는 ATSC A/92 규격을 활용하여 NRT 서비스를 수신하여 서비스하는 방법을 설명하고 있다. 8 is a flowchart illustrating a method of receiving and servicing an NRT service using an ATSC A / 92 standard for transmitting an ATSC A / 90 standard and an IP multicast stream for transmitting a data broadcast stream in a receiving system according to the present invention. .

즉, 각 가상 채널을 구성하는 스트림의 정보는 VCT의 Service location descriptor나 PMT의 ES_loop에 시그널링 된다. 예를 들어, 도 5나 도 6에서와 같이 VCT의 서비스 타입(service type)이 0x02(즉, 디지털 A/V/Data)이거나 0x04(즉, Data only)인 경우, 또는 0x05(즉, NRT Only service)인 경우, 상기 가상 채널로 NRT 서비스 스트림이 전송될 수 있다. 이때 VCT의 service location descriptor(또는 PMT의 ES loop)에 포함된 stream_type 필드 값에 0x95(즉, DST 전송)가 할당되어 있으면 데이터 방송이 전송됨을 의미한다. 만일 stream_type 필드 값이 없거나, 0x95가 아니면 일반 A/V만 전송된다. 즉, 상기 service location desciptor에 포함된 stream_type 필드 값이 0x95를 나타내면, 이때의 Elementary_PID 필드 값은 DST(Data Service Table)의 PID 값이 된다. 따라서 상기 Elementary_PID를 통해 DST를 수신할 수 있다. That is, the information of the stream constituting each virtual channel is signaled to the service location descriptor of the VCT or the ES_loop of the PMT. For example, when the service type of the VCT is 0x02 (i.e., digital A / V / Data) or 0x04 (i.e., Data only) or 0x05 (i.e., NRT Only) service, the NRT service stream may be transmitted to the virtual channel. At this time, if 0x95 (i.e., DST transmission) is assigned to the stream_type field value included in the service location descriptor of the VCT (or the ES loop of the PMT), data broadcasting is transmitted. If the stream_type field value does not exist or is not 0x95, only the general A / V is transmitted. That is, if the stream_type field value included in the service location descripter indicates 0x95, the Elementary_PID field value at this time is the PID value of the DST (Data Service Table). Therefore, the DST can be received through the Elementary_PID.

상기 DST를 통해 어플리케이션(Application)의 종류 및 이 채널을 통해 전송되는 데이터 방송 스트림의 상세 정보를 알 수 있다. 본 발명에서는 DST를 이용하여 NRT 어플리케이션(즉, NRT 서비스)를 식별하도록 한다. Through the DST, the type of the application and the detailed information of the data broadcast stream transmitted through the channel can be known. In the present invention, an NRT application (i.e., an NRT service) is identified using DST.

즉, DST의 App_id_descrption 필드는 뒤이어 오는 application identification bytes의 포맷 및 해석을 규정한다. 본 발명은 NRT 어플리케이션을 식별하기 위해 상기 App_id_descrption 필드에 '0x0003'를 할당하는 것을 일 실시예로 한다. 상기 예시한 수치는 일 예에 불과하며, 상기 수치로 본 발명의 권리범위가 제한되는 것은 아니다.That is, the App_id_description field of the DST specifies the format and interpretation of the following application identification bytes. The present invention assigns '0x0003' to the App_id_description field to identify the NRT application. The numerical values shown above are only examples, and the numerical values do not limit the scope of the present invention.

만일, 상기 App_id_descrption 필드 값이 '0x0003'이면, 그 다음에 오는 Application_id_byte 값은 NRT 어플리케이션의 Service ID값이 된다. 상기 NRT 어플리케이션을 위한 서비스 아이디는 해당 서비스를 Gloablly unique하게 식별하는 URI 값을 가질 수 있다.If the value of the App_id_description field is '0x0003', the next Application_id_byte value becomes the Service ID value of the NRT application. The service ID for the NRT application may have a URI value for globally and uniquely identifying the service.

상기와 같이 NRT 어플리케이션임을 식별한 이후에는 NRT 서비스 시그널링 채 널의 IP 데이터그램으로부터 분할된 MPEG-2 TS 패킷의 PID를 Tap 정보를 통해 찾는다. 그러면, 상기 tap 정보를 통해 찾은 PID를 갖는 MPEG-2 TS 패킷들로부터 NRT 서비스 시그널링 채널을 전송하는IP 데이터그램을 획득할 수 있으며, 상기 획득된 IP 데이터그램으로부터 NRT 서비스 시그널링 데이터를 획득할 수 있다. 이때 상기 NRT 서비스 시그널링 채널의 IP 접속 정보는 잘 알려진 IP 접속 정보 즉, well-known IP address와 well-known UDP port number가 사용될 수 있다.After identifying the NRT application as described above, the PID of the MPEG-2 TS packet segmented from the IP datagram of the NRT service signaling channel is searched through the Tap information. Then, an IP datagram transmitting the NRT service signaling channel can be obtained from the MPEG-2 TS packets having the PID found through the tap information, and the NRT service signaling data can be obtained from the obtained IP datagram . The IP connection information of the NRT service signaling channel may be well-known IP connection information, that is, a well-known IP address and a well-known UDP port number.

즉, 상기 DST에서 Protocol_encapsulation 필드 값이 0x04이면 비동기 IP 스트림이 전송되고, Selector_type필드 값이 0x0102이면 selector_bytes를 통해 destination address를 가리키는 device_id 값이 전달된다. 상기 selector_bytes값을 정확히 해석하기 위해서 multiprotocol_encaplsulation_descriptor가 사용되며, device_id값 중에서 유효(valid)한 바이트의 개수를 시그널링해준다. 결국 Tap 정보를 통하여 해당 PID로 전송되는 NRT 서비스 시그널링 채널의 IP Multicast address (혹은 address range)를 알 수 있게 된다.That is, if the Protocol_encapsulation field value is 0x04 in the DST, the asynchronous IP stream is transmitted. If the Selector_type field value is 0x0102, the device_id value indicating the destination address is transmitted through selector_bytes. A multiprotocol_encaplsulation_descriptor is used to correctly interpret the selector_bytes value, and signals the number of valid bytes in the device_id value. As a result, the IP multicast address (or address range) of the NRT service signaling channel transmitted through the corresponding PID can be known through the Tap information.

따라서, 상기 IP Multicast address (혹은 address range)에 접속하여 IP 스트림 즉, IP 패킷을 수신하고, 상기 수신된 IP 패킷으로부터 NRT 서비스 시그널링 데이터를 추출한다. Therefore, it connects to the IP multicast address (or address range) to receive the IP stream, that is, the IP packet, and extracts the NRT service signaling data from the received IP packet.

상기 추출된 NRT 서비스 시그널링 데이터를 기초로, NRT 서비스 데이터 즉, NRT 콘텐트/파일들을 수신하여 저장 매체에 저장하거나, 디스플레이 장치에 표시할 수 있다. Based on the extracted NRT service signaling data, NRT service data, i.e. NRT content / files, can be received and stored in a storage medium or displayed on a display device.

본 발명은 다른 실시예로, DST의 Stream Type 필드 값에 0x95 대신 새로운 값 예를 들어, 0x96을 사용하여 NRT 서비스를 시그널링할 수 있다. 이는 기존 수신기가 데이터 방송 스트림의 존재 여부를 스트림 타입이 0x95인 스트림의 존재 여부로만 판단하여 동작할 경우, 새로운 어플리케이션인 NRT서비스에 대해 오동작할 우려가 있기 때문이다. 이러한 경우 스트림 타입을 새롭게 지정해 줌으로써 기존 수신기에서는 이를 무시하도록 하여 하위 호환성을 보장할 수 있을 것이다.In another embodiment of the present invention, the NRT service can be signaled using a new value, for example, 0x96, instead of 0x95 in the stream type field value of the DST. This is because, if the existing receiver operates only by determining whether the stream of the data broadcasting stream exists or not in the stream having the stream type of 0x95, there is a possibility of malfunctioning of the NRT service as a new application. In this case, by specifying a stream type newly, existing receivers can be ignored, thereby ensuring backward compatibility.

한편, 상기 NRT 서비스 시그널링 채널로 전송되는 NRT 서비스 시그널링 데이터는 NRT 서비스의 접속(access) 정보를 제공하는 NRT 서비스 맵 테이블(Service Map Table 또는 Service Table ; NST)를 포함하는 것을 일 실시예로 한다. 상기 NST는 MPEG-2 Private section 형태와 유사한 테이블 형태를 가지는 것을 일 실시예로 한다. Meanwhile, the NRT service signaling data transmitted through the NRT service signaling channel includes an NRT service map table (Service Map Table or NST) for providing NRT service access information. The NST has a table format similar to the MPEG-2 Private section format.

상기 NST는 하나의 가상 채널에 포함되는 IP 기반의 NRT 서비스들의 접속 정보를 제공할 수 있다. 예를 들어, 상기 NST는 하나의 NRT 서비스를 구성하는 각 FLUTE 세션들의 접속 정보를 제공할 수 있다. The NST can provide connection information of IP-based NRT services included in one virtual channel. For example, the NST may provide connection information of each FLUTE session constituting one NRT service.

또한 상기 NST는 FLUTE 세션을 통하여 전송되는 NRT 서비스의 콘텐트/파일들의 렌더링(rendering)에 필수적인 정보를 제공할 수 있다. 일 실시예로, 상기 NST는 각 FLUTE 세션으로 전송되는 콘텐트/파일들의 렌더링에 필요한 콘테이너(container) 정보를 제공할 수 있다. 다른 실시예로, 상기 NST는 각 FLUTE 세션으로 전송되는 콘텐트/파일들의 렌더링에 필요한 부호화 정보(예를 들어, media/codec type)를 제공할 수 있다. 상기 NST는 각 FLUTE 세션으로 전송되는 콘텐트/파일들의 렌더링에 필요한 미디어의 디코딩 파라미터(decoding parameter)를 제공할 수 있다. In addition, the NST can provide information necessary for rendering the content / files of the NRT service transmitted through the FLUTE session. In one embodiment, the NST may provide container information needed to render the content / files transmitted in each FLUTE session. In another embodiment, the NST may provide the encoding information (e.g., media / codec type) needed to render the content / files transmitted in each FLUTE session. The NST may provide a decoding parameter of the media required to render the content / files transmitted in each FLUTE session.

상기 NRT 서비스 시그널링 데이터는 상기 NST 외에 다른 시그널링 테이블을 더 포함할 수도 있다. 이때 NRT 서비스 시그널링 채널의 IP 데이터그램들은 동일한 well-known IP 어드레스와 well-known UDP 포트 번호를 갖는 것을 일 실시예로 한다. 그러므로, 상기 NRT 서비스 시그널링 데이터에 포함된 NST의 구분은 테이블 식별자에 의해 이루어진다. 즉, 상기 테이블 식별자는 해당 테이블 또는 해당 테이블 섹션의 헤더에 존재하는 table_id가 될 수 있으며, 필요한 경우 table_id_extension을 더 참조하여 구분할 수 있다. The NRT service signaling data may further include a signaling table other than the NST. In this case, the IP datagrams of the NRT service signaling channel have the same well-known IP address and a well-known UDP port number. Therefore, the NST included in the NRT service signaling data is distinguished by the table identifier. That is, the table identifier may be a table_id existing in the corresponding table or the header of the corresponding table section, and may be distinguished by reference to a table_id_extension, if necessary.

이때, 하나의 NST가 하나의 섹션으로 구성되는지 복수개의 섹션으로 구성되는지는 NST 섹션 내 table_id 필드, section_number 필드, last_section_number 필드 등을 통해 알 수 있다. 그리고 상기 NRT 서비스 시그널링 채널의 IP 데이터그램들의 IP 헤더와 UDP 헤더를 제거한 후 동일한 테이블 식별자를 갖는 섹션들을 모으면 해당하는 테이블을 완성할 수 있다. 예를 들어, NST에 할당된 테이블 식별자를 갖는 섹션들을 모으면 NST를 완성할 수 있다. At this time, whether a single NST is composed of one section or a plurality of sections can be known through a table_id field, a section_number field, a last_section_number field and the like in the NST section. After removing the IP header and the UDP header of the IP datagrams of the NRT service signaling channel, the corresponding tables can be completed by collecting sections having the same table identifier. For example, NST can be completed by gathering sections with table identifiers assigned to the NST.

도 9는 본 발명에 따른 NST섹션에 대한 비트 스트림 신택스 구조의 일 실시예를 보인 도면이다. 상기 NST 섹션의 각 필드의 상세한 설명은 다음과 같다.9 is a diagram illustrating an embodiment of a bitstream syntax structure for an NST section according to the present invention. A detailed description of each field of the NST section is as follows.

도 9에서 table_id 필드(8비트)는 테이블의 식별자로서, NST를 식별하는 식별자가 설정될 수 있다. 상기 NST를 식별하기 위하여 table_id 필드에 0xDF를 할당하는 것을 일 실시예로 한다. In Fig. 9, the table_id field (8 bits) is an identifier of the table, and an identifier for identifying the NST may be set. One example is to assign 0xDF to the table_id field to identify the NST.

section_syntax_indicator 필드(1비트)는 NST의 섹션 형식을 정의하는 지시 자이다. The section_syntax_indicator field (1 bit) is an indicator that defines the section format of the NST.

private_indicator 필드(1비트)는 NST가 private section을 따르는지 여부를 나타내낸다. The private_indicator field (1 bit) indicates whether the NST complies with a private section.

section_length 필드(12비트)는 NST의 섹션 길이를 나타낸다. The section_length field (12 bits) indicates the section length of the NST.

그리고, 상기 NST는 table_id_extension 필드 위치에 16비트의 source_id 필드를 할당하여, NRT 서비스 시그널링 채널로 상기 NST가 수신되었을 때 상기 NST를 구분하는 테이블 식별자 중 하나로 사용될 수 있다. The NST can be used as one of the table identifiers for allocating a 16-bit source_id field to the table_id_extension field position and distinguishing the NST when the NST is received on the NRT service signaling channel.

version_number 필드(5비트)는 NST의 버전 번호를 나타낸다. The version_number field (5 bits) indicates the version number of the NST.

current_next_indicator 필드(1비트)는 해당 NST 섹션이 포함하는 정보가 현재 적용 가능한 정보인지, 미래 적용 가능한 정보인지를 나타낸다. The current_next_indicator field (1 bit) indicates whether the information included in the NST section is currently applicable information or future applicable information.

section_number 필드(8비트)는 현재 NST 섹션의 섹션 번호를 나타낸다. The section_number field (8 bits) indicates the section number of the current NST section.

last_section_number 필드(8비트)는 NST의 마지막 섹션 번호를 나타낸다. The last_section_number field (8 bits) indicates the last section number of the NST.

NST_protocol_version 필드(8비트)는 현재 프로토콜 내에서 정의된 것들과 다른 구조를 가지는 파라미터들을 전송하는 NST를 허용하기 위한 프로토콜 버전을 알려준다(An 8-bit unsigned integer field whose function is to allow, in the future, this NRT Service Map Table to carry parameters that may be structured differently than those defined in the current protocol. At present, the value for the NST_protocol_version shall be zero. Non-zero values of NST_protocol_version may be used by a future version of this standard to indicate structurally different tables.)The NST_protocol_version field (8 bits) tells the protocol version to allow the NST to transmit parameters with different structures than those defined in the current protocol (An 8-bit unsigned integer field whose function is to allow for the future, NST_protocol_version NST_protocol_version may be used for a future version of this standard. This NRT Service Map may be used to define the NST_protocol_version. indicate structurally different tables.)

transport_stream_id필드(16 bit)는 해당 NST 섹션이 전송되고 있는 방송 스트림의 고유한 식별자(Identifier)를 의미한다. The transport_stream_id field (16 bits) indicates a unique identifier of a broadcast stream to which the corresponding NST section is being transmitted.

Num_NRT_services 필드(8비트)는 상기 NRT 섹션에 포함된 NRT 서비스의 개수를 나타낸다(This 8 bit field shall specify the number of NRT Services in this NST section.). The Num_NRT_services field (8 bits) indicates the number of NRT services included in the NRT section (This 8 bit field shall specify the number of NRT Services in this NST section.).

이후 상기 num_NRT_services필드 값에 해당하는 NRT 서비스 개수만큼 'for' 루프(또는 NRT 서비스 루프라 함)가 수행되어 복수의 NRT 서비스에 대한 시그널링 정보를 제공한다. 즉, 상기 NST 섹션에 포함되는 NRT 서비스별로 해당 NRT 서비스의 시그널링 정보를 표시한다. 이때 각 NRT 서비스에 대해 다음과 같은 필드 정보를 제공할 수 있다.Thereafter, a 'for' loop (or an NRT service loop) is performed for the number of NRT services corresponding to the value of the num_NRT_services field to provide signaling information for a plurality of NRT services. That is, signaling information of the corresponding NRT service is displayed for each NRT service included in the NST section. At this time, the following field information can be provided for each NRT service.

즉, NRT_service_id 필드(16 비트)는 해당 NRT 서비스를 유일하게 식별할 수 있는 값을 표시한다(A 16-bit unsigned integer number that shall uniquely identify this NRT service within the scope of this NRT section.). 하나의 서비스의 NRT_service_id 필드 값은 그 서비스가 유지되는 동안 변하지 않는다. 이때 혼란을 피하기 위해서, 만일 어떤 서비스가 종료되면 그 서비스의 NRT_service_id 필드 값은 일정 시간이 경과할 때까지 사용하지 않을 수 있다(The NRT_service_id of a service shall not change throughout the life of the service. To avoid confusion, it is recommended that if a service is terminated, then the NRT_service_id for the service should not be used for another service until after a suitable interval of time has elapsed.).That is, the NRT_service_id field (16 bits) indicates a value that can uniquely identify the corresponding NRT service (A 16-bit unsigned integer number, which will uniquely identify this NRT service within the scope of this NRT section). The value of the NRT_service_id field of one service does not change while the service is maintained. In order to avoid confusion at this time, if a certain service is terminated, the value of the NRT_service_id field of the service may not be used until a predetermined time elapses (The NRT_service_id of a service shall not change throughout the life of the service. , it is recommended that a service is terminated, then the NRT_service_id for the service should not be used for another service until after a suitable interval of time has elapsed.).

NRT_service_category필드(5비트)는 해당 NRT 서비스의 서비스 타입을 나타낸다. The NRT_service_category field (5 bits) indicates the service type of the corresponding NRT service.

NRT_service_status 필드(2비트)는 해당 NRT 서비스의 상태를 나타낸다. 예를 들어, 상기 NRT_service_status필드 값의 상위 비트가 1로 설정되면 해당 NRT 서비스는 액티브 상태이고, 0으로 설정되면 비액티브 상태임을 나타낸다. 그리고 상기 NRT_service_status필드 값의 하위 비트가 1로 설정되면 해당 NRT 서비스는 히든 상태이고, 0으로 설정되면 히든 상태가 아님을 나타낸다(The most significant bit shall indicate whether this NRT service is active (when set to 1) or inactive (when set to 0) and the least significant bit shall indicate whether this NRT service is hidden (when set to 1) or not (when set to 0).).The NRT_service_status field (2 bits) indicates the state of the corresponding NRT service. For example, if the upper bit of the NRT_service_status field value is set to 1, the corresponding NRT service is in an active state, and if it is set to 0, it is inactive. If the lower bit of the NRT_service_status field value is set to 1, the corresponding NRT service is in a hidden state. If it is set to 0, it indicates that the NRT service is not in a hidden state. or inactive (when set to 0) and the least significant bit at least NRT service is hidden (when set to 1) or not (when set to 0).

SP_indicator 필드(1비트)는 해당 NRT 서비스의 서비스 보호(service protection) 여부를 나타낸다. 만일 SP_indicator 필드 값이 1이면, 서비스 보호가 해당 NRT 서비스의 의미 있는 프리젠테이션을 제공하기 위해 요구되는 콤포넌트들 중 적어도 하나에 적용된다(상기 (A 1-bit field that indicates, when set to 1, service protection is applied to at least one of the components needed to provide a meaningful presentation of this NRT Service). The SP_indicator field (1 bit) indicates whether the corresponding NRT service is service protection. If the value of the SP_indicator field is equal to 1, the service protection is applied to at least one of the components required to provide a meaningful presentation of the corresponding NRT service (see (1-bit field that indicates, when set to 1, service protection is applied to at least one of the components needed to provide a meaningful presentation of this NRT Service).

Short_NRT_service_name 필드(8*8비트)는 상기 NRT 서비스의 short name 을 표시한다. 상기 NRT 서비스의 short name이 없으면, 상기 필드는 널 값(예, 0x00)으로 채워질 수 있다. The Short_NRT_service_name field (8 * 8 bits) indicates the short name of the NRT service. If there is no short name of the NRT service, the field may be filled with a null value (e.g., 0x00).

num_FLUTE_sessions 필드(8비트)는 상기 NRT 서비스를 구성하는 FLUTE 세션의 개수를 나타낸다. The num_FLUTE_sessions field (8 bits) indicates the number of FLUTE sessions constituting the NRT service.

이후 상기 num_FLUTE_sessions 필드 값에 해당하는 FLUTE 세션 개수만큼 'for' 루프(또는 FLUTE 세션 루프라 함)가 수행되어 복수의 FLUTE 세션에 대한 접속 정보를 제공한다. 즉, 상기 NRT 서비스에 포함되는 FLUTE 세션별로 해당 FLUTE 세션의 접속 정보를 제공한다. 이때 각 FLUTE 세션에 대해 다음과 같은 필드 정보를 제공할 수 있다.Then, a 'for' loop (or a FLUTE session loop) is performed for the number of FLUTE sessions corresponding to the value of the num_FLUTE_sessions field to provide access information for a plurality of FLUTE sessions. That is, the access information of the corresponding FLUTE session is provided for each FLUTE session included in the NRT service. At this time, the following field information can be provided for each FLUTE session.

FLUTE_session_type 필드(3비트)는 상기 FLUTE 세션으로 전송되는 데이터 오브젝트들에 따라 FLUTE 세션의 타입을 식별한다. 상기 FLUTE_session_type 필드 값의 할당 및 그 의미를 도 10에 나타내었다. 예를 들어, 상기 FLUTE_session_type 필드 값이 000이면, 해당 FLUTE 세션은 실제 NRT 서비스를 위한 콘텐트/파일를 전송하는 FLUTE 파일 딜리버리 세션임을 지시한다. 나머지 값들은 본원 발명에서는 사용되지 않는다. 즉, 상기 FLUTE_session_type 필드 값이 000이면, 도 11과 같은 FLUTE 파일 딜리버리 디스크립터 (NRT_FLUTE_File_Delivery_descriptor())가 FLUTE_session_level_descriptor() 로서 전송된다. 상기 FLUTE 파일 딜리버리 디스크립터의 각 필드 설명은 뒤에서 하기로 한다.The FLUTE_session_type field (3 bits) identifies the type of FLUTE session according to the data objects transmitted in the FLUTE session. The assignment of the FLUTE_session_type field value and its meaning are shown in FIG. For example, if the value of the FLUTE_session_type field is 000, the corresponding FLUTE session indicates a FLUTE file delivery session for transmitting the content / file for the actual NRT service. The remaining values are not used in the present invention. That is, when the value of the FLUTE_session_type field is 000, the FLUTE file delivery descriptor (NRT_FLUTE_File_Delivery_descriptor ()) as shown in FIG. 11 is transmitted as FLUTE_session_level_descriptor (). The field descriptions of the FLUTE file delivery descriptor will be described later.

media_object_association_indicator 필드(1비트)는 상기 FLUTE 세션과 관련된 미디어 오브젝트 관련 정보의 존재 여부를 표시한다. 예를 들어, 상기 media_object_association_indicator 필드가 1로 셋트되면, 상기 FLUTE 세션과 관련되어 디스크립터(예를 들어, NRT_media_object_association_descriptor()) 또는 스트림 또는 파일로 제공되는 미디어 오브젝트 관련 정보가 존재함을 지시한다(This 1-bit indicator that shall indicate, when set, that there is media object association information is provided associated with this FLUTE session, by the media_object_association_descriptor() or by a stream or a file.). 즉, 상기 필드가 1이면, FLUTE 세션 루프에 NRT_media_object_association_descriptor()가 포함되어 수신된다. 이때 media_object_association_indicator 필드는 상기 NST에서 생략될 수도 있다. 이 경우 미디어 오브젝트 관련 정보가 존재하면, NRT_media_object_association_descriptor()가 FLUTE 세션 레벨 디스크립터로 수신된다. 수신기에서는 FLUTE 세션 레벨 디스크립터에 포함된 모든 디스크립터들을 파싱하며, 이때 디스크립터의 식별자를 이용하여 NRT_media_object_association_descriptor()를 식별할 수 있다. The media_object_association_indicator field (1 bit) indicates whether or not media object related information related to the FLUTE session exists. For example, when the media_object_association_indicator field is set to 1, it indicates that there is a descriptor (e.g., NRT_media_object_association_descriptor ()) related to the FLUTE session or media object related information provided in a stream or a file (This 1- (or a file or a file) that is associated with the FLUTE session, by the media_object_association_descriptor (). That is, if the field is 1, an NRT_media_object_association_descriptor () is included in a FLUTE session loop and is received. At this time, the media_object_association_indicator field may be omitted in the NST. In this case, if media object related information exists, NRT_media_object_association_descriptor () is received in the FLUTE session level descriptor. The receiver parses all the descriptors included in the FLUTE session level descriptor, and identifies the NRT_media_object_association_descriptor () using the identifier of the descriptor.

essential_component_delivery_indicator 필드(1비트)는 '1'로 설정되어 있으면 해당 FLUTE 세션은 NRT 서비스를 위한 필수 콤포넌트(즉, 콘텐트/파일)를 전송함을 지시한다. 그렇지 않으면 이 필드는 해당 FLUTE 세션을 통해 전송되는 콤포넌트(즉, 콘텐트/파일)가 선택적인 콤포넌트임을 지시한다(A one-bit indicator, when set, shall indicate that this FLUTE session carries an essential component for the NRT service. Otherwise, this field indicates that the components carried through this FLUTE session are optional components.).When the essential_component_delivery_indicator field (1 bit) is set to '1', it indicates that the corresponding FLUTE session transmits a necessary component (i.e., content / file) for the NRT service. Otherwise, this field indicates that the component (i. E., Content / file) transmitted via the corresponding FLUTE session is an optional component. (A one-bit indicator, when set, indicates that this FLUTE session carries an essential component for the NRT service. Otherwise, this field indicates that the components are carried through this FLUTE session is optional components.

IP_version_flag 필드(1비트)는 '0'로 설정되어 있으면, FLUTE_session_source_IP_address, FLUTE_session_destination_IP_address 필드들이 IPv4 어드레스임을 지시하고, '1'으로 설정된 경우에는 FLUTE_session_source_IP_address, FLUTE_session_destination_IP_address 필드들이 IPv6 어드레스임을 지시한다(A 1-bit indicator, when set to zero, shall indicate that FLUTE_session_source_IP_address, FLUTE_session_destination_IP_address fields are IPv4 addresses. Otherwise, this field indicates that FLUTE_session_source_IP_address, FLUTE_session_destination_IP_address fields are IPv6 addresses.). When the IP_version_flag field (1 bit) is set to '0', it indicates that the FLUTE_session_source_IP_address and FLUTE_session_destination_IP_address fields are IPv4 addresses, and when set to '1', the FLUTE_session_source_IP_address and FLUTE_session_destination_IP_address fields indicate the IPv6 address When set to zero, the FLUTE_session_source_IP_address, FLUTE_session_destination_IP_address fields are IPv4 addresses. Otherwise, this field indicates that FLUTE_session_source_IP_address, FLUTE_session_destination_IP_address fields are IPv6 addresses.

source_specific_multicast_flag 필드(1비트)는 '1'로 설정되면 상기 source specific multicast가 상기 FLUTE 세션을 위해 사용됨을 지시한다. 그러므로 FLUTE_session_source_IP_address 가 존재해야 한다(A-1bit Boolean flag that shall indicate, when set, that the source specific multicast is used for this FLUTE session. Thus, the FLUTE_session_source_IP_address shall be present.). If the source_specific_multicast_flag field (1 bit) is set to '1', it indicates that the source specific multicast is used for the FLUTE session. Therefore, FLUTE_session_source_IP_address must be present (A-1 bit Boolean flag, when set, when the source specific multicast is used for this FLUTE session.) Thus, the FLUTE_session_source_IP_address shall be present.

FLUTE_session_source_IP_address 필드 (32 또는 128비트)는 source_specific_multicast_flag 필드가 '1'로 설정된 경우에는 존재하지만, source_specific_multicast_flag 필드가 '0'로 설정된 경우에는 존재하지 않는다. 만일 존재한다면 이 필드는 상기 FLUTE 세션의 모든 채널을 전송하는 동일한 서버의 소스 IP 어드레스가 된다(This field shall be present if source_specific_multicast_flag is set to '1', and shall not be present if source_specific_multicast_flag is set to '0'. If present, this field shall contain the source IP address of all the IP datagrams carrying the components of this FLUTE session.).The FLUTE_session_source_IP_address field (32 or 128 bits) is present when the source_specific_multicast_flag field is set to '1', but not when the source_specific_multicast_flag field is set to '0'. If present, this field shall be the source IP address of the same server that is transmitting all the channels of the FLUTE session (this field shall be present if source_specific_multicast_flag is set to '1', and shall not be present if source_specific_multicast_flag is set to '0 'If present, this field shall contain the source IP address of the IP datagrams carrying the components of this FLUTE session.

FLUTE_session_destination_IP_address 필드((32 또는 128비트)는 상기 FLUTE 세션의 콤포넌트들을 전송하는 모든 IP 데이터그램들의 타겟(destination )을 포함한다(This field shall contain the destination of all the IP datagrams carrying the components of this FLUTE session.).The FLUTE_session_destination_IP_address field (32 or 128 bits) contains the destination of all IP datagrams that carry the components of the FLUTE session (this field shall contain the destination IP datagrams carrying the components of this FLUTE session. ).

FLUTE_session_destination_UDP_port_num 필드(16비트)는 상기 FLUTE 세션을 전송하는 UDP/IP 스트림의 데스트네이션 UDP 포트 번호를 나타낸다(A 16-bit unsigned integer field, that represents the destination UDP port number for the UDP/IP stream carrying this FLUTE session.).The FLUTE_session_destination_UDP_port_num field (16 bits) indicates the destination UDP port number of the UDP / IP stream transmitting the FLUTE session (A 16-bit unsigned integer field, which represents the destination UDP port number for the UDP / session.).

Num_FLUTE_session_level_descriptors 필드(4비트)는 FLUTE 세션 루프에 포함되는 디스크립터(FLUTE_session_level_descriptor())들의 개수를 표시한다. The Num_FLUTE_session_level_descriptors field (4 bits) indicates the number of descriptors (FLUTE_session_level_descriptor ()) included in the FLUTE session loop.

상기 Num_FLUTE_session_level_ descriptors 필드 값에 해당하는 개수만큼 상기 FLUTE 세션 루프에 FLUTE_session_level_descriptor()들이 포함되어, 상기 FLUTE 세션에 대한 부가 정보를 제공한다(One or more descriptors providing additional information for this FLUTE session, may be included.).The FLUTE session loops include FLUTE_session_level_descriptors () in the number corresponding to the Num_FLUTE_session_level_descriptors field value to provide additional information for the FLUTE session (one or more descriptors are provided for additional FLUTE session, may be included). .

Num_NRT_service_level_descriptors 필드(4비트)는 NRT 서비스 루프에 포함되는 디스크립터(NRT_service_level_descriptors())들의 개수를 표시한다. The Num_NRT_service_level_descriptors field (4 bits) indicates the number of descriptors (NRT_service_level_descriptors ()) included in the NRT service loop.

상기 Num_NRT_service_level_descriptors 필드 값에 해당하는 개수만큼 상기 NRT 서비스 루프에 NRT_service_level_descriptors()들이 포함되어 상기 NRT 서비 스에 대한 부가 정보를 제공한다(Zero or more descriptors providing additional information for this NRT service, may be included.).NRT_service_level_descriptors () are included in the NRT service loop by the number corresponding to the Num_NRT_service_level_descriptors field value, thereby providing additional information on the NRT service (additional information for NRT service may be included).

도 11은 본 발명에 따른 FLUTE_session_level_descriptor()로서 제공되는 NRT_FLUTE_File_Delivery_descriptor()의 비트 스트림 신택스 구조의 일 예를 보이고 있다. 즉, NRT_FLUTE_File_Delivery_descriptor()는 NST의 FLUTE_session_level_descriptor()의 하나로 사용되며, 해당 FLUTE session의 접근을 위한 부가적인 시그널링 정보를 포함한다. 상기 NRT_FLUTE_File_Delivery_descriptor()는 상기 FLUTE_session_type 필드 값이 000일 때, FLUTE 세션 레벨 디스크립터로서 수신된다. 상기 NRT_FLUTE_File_Delivery_descriptor()의 각 필드에 대한 설명은 다음과 같다.FIG. 11 shows an example of a bitstream syntax structure of NRT_FLUTE_File_Delivery_descriptor () provided as FLUTE_session_level_descriptor () according to the present invention. That is, NRT_FLUTE_File_Delivery_descriptor () is used as one of FLUTE_session_level_descriptor () of NST and includes additional signaling information for accessing the corresponding FLUTE session. The NRT_FLUTE_File_Delivery_descriptor () is received as a FLUTE session level descriptor when the value of the FLUTE_session_type field is 000. The description of each field of the NRT_FLUTE_File_Delivery_descriptor () is as follows.

도 11에서, descriptor_tag 필드(8비트)는 디스크립터 식별자로서, NRT FLUTE 파일 딜리버리 디스크립터 NRT_FLUTE_File_Delivery_descriptor()를 식별하는 식별자가 설정될 수 있다. In Fig. 11, the descriptor_tag field (8 bits) is a descriptor identifier, and an identifier that identifies the NRT FLUTE file delivery descriptor NRT_FLUTE_File_Delivery_descriptor () can be set.

descriptor_length 필드(8비트)는 상기 descriptor_length 필드 이후부터 이 descriptor의 끝까지, 디스크립터의 나머지 길이를 byte 단위로 나타낸다. The descriptor_length field (8 bits) indicates the remaining length of the descriptor in bytes after the descriptor_length field to the end of the descriptor.

FLUTE_session_TSI 필드(16비트)는 상기 FLUTE 세션의 TSI를 표시한다. 즉, 상기 TSI는 상기 FLUTE 세션을 유일하게 식별할 수 있는 식별자이다(A 16-bit unsigned integer field, which shall be the Transport Session Identifier (TSI) of the FLUTE session).The FLUTE_session_TSI field (16 bits) indicates the TSI of the FLUTE session. That is, the TSI is an identifier that uniquely identifies the FLUTE session (A 16-bit unsigned integer field, which will be the TSI of the FLUTE session).

session_start_time 필드(16비트)는 상기 FLUTE 세션이 시작하는 시각을 지 시한다. 만약 해당 필드의 값이 모두 '0'이면, 상기 FLUTE 세션은 이미 시작된 것으로 해석될 수 있다(session_start_time: The time at which the FLUTE session starts. If the value of this field is set to all zero, then it shall be interpreted to mean that the session has already started).The session_start_time field (16 bits) indicates the time at which the FLUTE session starts. If the value of the corresponding field is all '0', the FLUTE session can be interpreted as already started (session_start_time: The time at which the FLUTE session starts. If the value of this field is set to all zero, then it shall be interpreted to mean that the session has already started).

session_end_time 필드(16비트)는 상기 FLUTE 세션이 종료되는 시각을 지시한다. 만약 해당 필드의 값이 모두 '0'이면, 상기 FLUTE 세션은 무한정 계속되는 것으로 해석될 수 있다(session_end_time: The time at which the FLUTE session ends. If the value of this field is set to all zero, then it shall be interpreted to mean that the session continues indefinitely).The session_end_time field (16 bits) indicates the time at which the FLUTE session ends. If the value of the corresponding field is all '0', the FLUTE session can be interpreted as continuing indefinitely (session_end_time: The time at which the FLUTE session ends. If the value of this field is set to all zero, then it shall be interpreted to mean that the session continues indefinitely.

tias_bandwidth_indicator 필드(1비트)는 TIAS(Transport Independent Application Specific) 대역폭 정보의 포함 여부를 지시한다. 만약 TIAS 대역폭 필드가 존재하는 것으로 지시하려면 해당 비트는 '1'로 설정되고, TIAS 대역폭 필드가 존재하지 않는 것으로 지시하려면 해당 비트는 '0'으로 설정되어야 할 것이다(A 1-bit field that flags the inclusion of TIAS bandwidth information. This bit shall be set to '1' to indicate the TIAS bandwidth field is present, and it shall be set to '0' to indicate the TIAS bandwidth field is absent).The tias_bandwidth_indicator field (1 bit) indicates whether to include Transport Independent Application Specific (TIAS) bandwidth information. To indicate that the TIAS bandwidth field is present, the corresponding bit shall be set to '1' and the corresponding bit shall be set to '0' to indicate that the TIAS bandwidth field does not exist (A 1-bit field that flags the The inclusion of TIAS bandwidth information. This bit shall be set to '1' to indicate the TIAS bandwidth field is present, and it shall be set to '0' to indicate the TIAS bandwidth field is absent.

as_bandwidth_indicator 필드(1비트)는 AS(Application Specific) 대역폭 정보의 포함 여부를 지시한다. 만약 AS 대역폭 필드가 존재하는 것으로 지시하려면 해당 비트는 '1'로 설정되어야 하고, AS 대역폭 필드가 존재하지 않는 것으로 지시하려면 해당 비트는 '0'으로 설정되어야 할 것이다(A 1-bit field that flags the inclusion of AS bandwidth information. This bit shall be set to '1' to indicate the AS bandwidth field is present, and it shall be set to '0' to indicate the AS bandwidth field is absent).The as_bandwidth_indicator field (1 bit) indicates whether or not application specific (AS) bandwidth information is included. To indicate that the AS bandwidth field is present, the corresponding bit shall be set to '1' and to indicate that the AS bandwidth field does not exist, the corresponding bit shall be set to '0' (A 1-bit field that flags The inclusion of AS bandwidth information shall indicate that the AS bandwidth field is present, and that it shall be set to '0' to indicate the AS bandwidth field is absent.

FEC_OTI_indicator 필드(1비트)는 FEC 오브젝트 트랜스미션 정보(OTI)가 제공되는지 여부를 지시한다(A 1-bit indicator that indicates whether FEC Object Transmission Information is provided).The FEC_OTI_indicator field (1 bit) indicates whether FEC object transmission information (OTI) is provided (A 1-bit indicator indicating whether FEC Object Transmission Information is provided).

tias_bandwidth 필드(16비트)는 상기 as_bandwidth_indicator 필드가 '1'로 설정되었을 때 존재하며, TIAS 최대 대역폭을 표시한다(This value shall be one one-thousandth of the Transport Independent Application Specific maximum bandwidth as defined in RFC 3890, rounded up to the next highest integer if necessary. This gives the TIAS bandwidth in kilobits per second).The tias_bandwidth field (16 bits) exists when the as_bandwidth_indicator field is set to '1' and indicates the TIAS maximum bandwidth (This value shall be one to thousandth of the Transport Independent Application Specific Maximum Bandwidth as defined in RFC 3890, This is the TIAS bandwidth in kilobits per second.

as_bandwidth 필드(16비트)는 상기 as_bandwidth_indicator 필드가 '1'로 설정되었을 때 존재하며, AS 최대 대역폭을 표시한다 (This value shall be the Application Specific maximum bandwidth as defined in RFC 4566. This gives the AS bandwidth in kilobits per second).The as_bandwidth field (16 bits) exists when the as_bandwidth_indicator field is set to '1' and indicates the AS maximum bandwidth (This value will be defined in RFC 4566. This gives the AS bandwidth in kilobits per second.

FEC_encoding_id 필드는 상기 FEC_OTI_indicator 필드가 '1'로 설정되었을 때 존재하며, 해당 FLUTE 세션 내에서 사용된 FEC 인코딩 ID를 표시한다(FEC encoding ID used in this FLUTE session, as defined in RFC 3926).The FEC_encoding_id field is present when the FEC_OTI_indicator field is set to '1', and indicates the FEC encoding ID used in the corresponding FLUTE session (FEC encoding ID used in this FLUTE session, as defined in RFC 3926).

FEC_instance_id 필드는 상기 FEC_OTI_indicator 필드가 '1'로 설정되었을 때 존재하며, 해당 FLUTE 세션 내에서 사용된 FEC 인스턴스 ID를 표시한다(FEC instance ID used in this FLUTE session, as defined in RFC 3926).The FEC_instance_id field exists when the FEC_OTI_indicator field is set to '1', and indicates the FEC instance ID used in the corresponding FLUTE session (FEC instance ID used in this FLUTE session, as defined in RFC 3926).

상기와 같은 파라미터들을 FLUTE 세션 루프 내 NRT FLUTE 파일 딜리버리 디스크립터 NRT_FLUTE_File_Delivery_descriptor()를 통해 시그널링함으로써, 상기 FULTE 세션을 수신하기 위하여 필요한 정보들은 모두 제공할 수 있다. By signaling the above parameters via the NRT FLUTE file delivery descriptor NRT_FLUTE_File_Delivery_descriptor () in the FLUTE session loop, it is possible to provide all the information necessary for receiving the FULTE session.

즉, 상기 session_start_time 필드와 session_end_time 필드에 의해 설정된 시간 정보에 따라 해당 FLUTE 세션을 오픈하여 NRT 서비스를 구성하는 파일들, 및 상기 파일들의 시그널링 정보를 서술하는 FDT(File DescriptioN Table)를 수신할 수 있다. That is, the corresponding FLUTE session may be opened according to the time information set by the session_start_time field and the session_end_time field to receive the FDT (File DescriptioN Table) describing the files constituting the NRT service and the signaling information of the files.

한편, 상기 NST에서 상기 media_object_association_indicator 필드 값이 1로 셋트되어 있으면, NRT 미디어 오브젝트 관련 디스크립터를 이용하여 상기 FLUTE 세션과 관련된 미디어 오브젝트 관련 정보를 시그널링한다. 일 예로, 상기 미디어 오브젝트 관련 정보는 MIME(Multipurpose Internet Mail Extensions) 타입으로 표현된 텍스트 형태로 제공된다. Meanwhile, if the value of the media_object_association_indicator field is set to '1' in the NST, media object related information related to the FLUTE session is signaled using the NRT media object association descriptor. For example, the media object association information is provided in the form of a text expressed in a Multipurpose Internet Mail Extensions (MIME) type.

도 12는 본 발명에 따른 NRT 미디어 오브젝트 관련 디스크립터 NRT_media_object_association_descriptor()의 비트 스트림 신택스 구조의 일 실시예를 보이고 있다. 상기 NRT 미디어 오브젝트 관련 디스크립터는 NST의 FLUTE_session_level_descriptor()의 하나로 사용된다. 상기 NRT 미디어 오브젝트 관련 디스크립터는 해당 FLUTE 세션을 통해 전송되는 콘텐트/파일(또는 미디어 오브젝트/파일이라 함)의 렌더링에 필수적인 파라미터들을 시그널링한다. 12 shows an embodiment of a bitstream syntax structure of an NRT media object association descriptor NRT_media_object_association_descriptor () according to the present invention. The NRT media object association descriptor is used as one of the FLUTE_session_level_descriptor () of the NST. The NRT media object association descriptor signals parameters necessary for rendering a content / file (or media object / file) transmitted through the corresponding FLUTE session.

상기 NRT 미디어 오브젝트 관련 디스크립터 NRT_media_object_association_descriptor()의 각 필드에 대한 설명은 다음과 같다.The fields of the NRT media object association descriptor NRT_media_object_association_descriptor () are as follows.

도 12에서, descriptor_tag 필드(8비트)는 디스크립터 식별자로서, NRT 미디어 오브젝트 관련 디스크립터 NRT_media_object_association_descriptor()를 식별하는 식별자가 표시된다. In FIG. 12, the descriptor_tag field (8 bits) is a descriptor identifier, and an identifier for identifying the NRT media object association descriptor NRT_media_object_association_descriptor () is displayed.

descriptor_length 필드(8비트)는 상기 descriptor_length 필드 이후부터 이 descriptor의 끝까지, 디스크립터의 나머지 길이를 byte 단위로 나타낸다. The descriptor_length field (8 bits) indicates the remaining length of the descriptor in bytes after the descriptor_length field to the end of the descriptor.

object_association_type 필드(3비트)는 미디어 오브젝트 관련 정보가 어떻게 시그널링되었는지를 지시한다(This 3-bit enumerated field shall indicate how the media object association information is signaled.). 일 실시예로 상기 미디어 오브젝트 관련 정보는 MIME 타입의 텍스트 형태로 상기 디스크립터의 인-라인 필드를 통해 시그널링될 수도 있다. 다른 실시예로, 상기 미디어 오브젝트 관련 정보는 MIME 타입의 텍스트 형태로 미디어 오브젝트 관련 스트림을 통해 시그널링될 수도 있다. 또 다른 실시예로 상기 미디어 오브젝트 관련 정보는 MIME 타입의 텍스트 형태로 미디어 오브젝트 관련 파일을 통해 시그널링될 수도 있다(The media object association can be done through the in-line fields of this descriptor or can be done through the media object association stream or through the media object association file.). The object_association_type field (3 bits) indicates how the media object related information is signaled. This 3-bit enumerated field indicates that the media object association information is signaled. In one embodiment, the media object association information may be signaled via the inline field of the descriptor in the form of a MIME type text. In another embodiment, the media object association information may be signaled via a media object association stream in the form of a MIME type text. In yet another embodiment, the media object association information may be signaled via a media object association file in the form of a MIME type text. (The media object association may be made through the in-line fields of this descriptor or may be done through the media object association stream or media object association file.

도 13은 상기 object_association_type 필드에 할당되는 값들 및 그 값들의 정의에 대한 일 실시예를 보이고 있다. FIG. 13 shows an example of definitions of values and values assigned to the object_association_type field.

예를 들어, 상기 object_association_type 필드 값이 '000'이면, 상기 관련 오브젝트를 전송하는 콘텐트를 렌더링하기 위해 요구되는 미디어 오브젝트 관련 정보는 상기 디스크립터의 인-라인 텍스트로 제공된다(The media object association information, which are necessary for rendering the content that the associated object is carrying, is provided as in-line text of this descriptor.).For example, if the object_association_type field value is '000', the media object related information required to render the content for transmitting the related object is provided as the inline text of the descriptor It is necessary for the rendering of the content and the associated object is carried, as provided in the text of this descriptor.

다른 예로, 상기 object_association_type 필드 값이 '001'이면, 상기 관련 오브젝트를 전송하는 콘텐트를 렌더링하기 위해 요구되는 미디어 오브젝트 관련 정보는 별도의 UDP/IP 스트림으로 제공된다. 상기 UDP/IP 스트림은 SAP/SDP와 같은 데이터 구조를 전송한다(The media object association information, which are necessary for rendering the content that the associated object is carrying, is provided by a separated UDP/IP stream, which carries SAP/SDP like data structure.).As another example, if the object_association_type field value is '001', the media object related information required to render the content transmitting the related object is provided as a separate UDP / IP stream. The UDP / IP stream transmits a data structure such as SAP / SDP. (The media object association information, which is necessary for rendering the content, is provided by a UDP / IP stream, which carries SAP / SDP like data structure.

또 다른 예로, 상기 object_association_type 필드 값이 '010'이면, 상기 관련 오브젝트를 전송하는 콘텐트를 렌더링하기 위해 요구되는 미디어 오브젝트 관련 정보는 SDP와 같은 파일로 제공된다. 상기 SDP와 같은 파일은 분리된 FLUTE 파일 딜리버리 세션을 통해 제공된다(The media object association information, which are necessary for rendering the content that the associated object is carrying, is provided by a SDP-like file, which is carried through a separated FLUTE file delivery session.).As another example, if the object_association_type field value is '010', the media object related information required to render the content for transmitting the related object is provided as a file such as SDP. A file such as the SDP is provided through a separate FLUTE file delivery session. The media object association information, which is necessary for rendering the content, is provided by a SDP-like file, a separated FLUTE file delivery session.

따라서, 상기 object_association_type 필드 값이 '000'이면,상기 NRT 미디어 오브젝트 관련 디스크립터 내 적어도 하나의 필드를 이용하여 상기 미디어 오브젝트 관련 정보를 직접 서술한다. Accordingly, if the object_association_type field value is '000', the media object association information is directly described using at least one field in the NRT media object association descriptor.

그리고, 상기 object_association_type 필드 값이 '001'이거나, '010'이면, 상기 NRT 미디어 오브젝트 관련 디스크립터에서는 상기 미디어 오브젝트 관련 정보를 전송하는 스트림이나 파일의 접속 정보를 제공한다. 또한 상기 object_association_type 필드 값이 '010'이면, 상기 NRT 미디어 오브젝트 관련 디스크립터에서는 파일의 접속 정보뿐만 아니라, 상기 파일을 전송하는 FLUTE 세션의 수신에 필요한 파라미터들을 제공한다. If the object_association_type field value is '001' or '010', the NRT media object association descriptor provides connection information of a stream or a file for transmitting the media object association information. If the object_association_type field value is '010', the NRT media object association descriptor provides not only the access information of the file, but also parameters necessary for receiving the FLUTE session for transmitting the file.

즉, 상기 object_association_type 필드 값이 '000'이면, 상기 NRT 미디어 오브젝트 관련 디스크립터는 num_media_objects_in_session 필드, 및 상기 num_media_objects_in_session 필드 값에 해당하는 개수만큼 반복되는 for 루프 반복문을 포함한다. 상기 for 루프 반복문은 media_object_TOI 필드, object_container_type_text_length 필드, object_container_type_text() 필드, object_media_type_text_length 필드, object_media_type_text() 필드, object_decoding_parameters_text_length 필드, 및 object_decoding_parameters_text()를 포함할 수 있다. That is, if the object_association_type field value is '000', the NRT media object association descriptor includes a num_media_objects_in_session field and a for loop iteration field repeated by a number corresponding to the num_media_objects_in_session field value. The for loop loop statement may include a media_object_TOI field, an object_container_type_text_length field, an object_container_type_text () field, an object_media_type_text_length field, an object_media_type_text () field, an object_decoding_parameters_text_length field, and object_decoding_parameters_text ().

상기 num_media_objects_in_session 필드(8비트)는 상기 FLUTE 세션 내 오브젝트 관련 시그널링이 필요한 미디어 오브젝트들의 개수를 표시한다(This 8-bit unsigned integer field specifies the number of media objects that need the object association signaling, carried through this FLUTE session.).The num_media_objects_in_session field (8 bits) indicates the number of media objects requiring object-related signaling in the FLUTE session (This 8-bit unsigned integer field specifies the number of media objects that the object association signaling .).

상기 media_object_TOI 필드(32비트)는 상기 FLUTE 세션을 통해 전송되는 트랜스포트 오브젝트의 식별자(Transport Object Identifier ; TOI)를 표시한다(This 32-bit unsigned integer field which shall be the Transport Object Identifier, associated with this Transport Object carried throught the FLUTE session.). 즉, 상기 상기 media_object_TOI 필드는 상기 FLUTE 세션을 통해 전송되는 콘텐트/파일을 식별하는 값을 표시한다. The media_object_TOI field (32 bits) indicates a Transport Object Identifier (TOI) of the transport object transmitted through the FLUTE session (This 32-bit unsigned integer field, which is the transport object identifier associated with this transport Object carrying throught the FLUTE session.). That is, the media_object_TOI field indicates a value identifying a content / file transmitted through the FLUTE session.

상기 object_container_type_text_length 필드(8비트)는 상기 object_container_type_text() 문자 스트링의 바이트 길이를 표시한다(This field shall specify the length (in bytes) of the object_container_type_text() character string.)The object_container_type_text_length field (8 bits) indicates the byte length of the object_container_type_text () character string. (This field shall specify the length (in bytes) of the object_container_type_text () character string.

상기 object_container_type_text() 필드는 상기 오브젝트가 인캡슐레이트된 파일 또는 오브젝트 콘테이너 타입을 텍스트 형태로 표시한다. 즉, 상기 콘테이너의 타입을 식별하기 위하여 보통 SDP 내 엔트리로서 나타나는 스트링으로 표시한다(The file or object container type where this object is encapsulated. Expressed in string that would normally appear as an entry in an SDP to identify the type of the container.). 예를 들어, 상기 object_container_type_text() 필드는 파일 포맷 등을 텍스트 형태로 표시한다.The object_container_type_text () field indicates the file or object container type in which the object is encapsulated in text form. That is, in order to identify the type of the container, it is usually represented as a string that appears as an entry in the SDP. (The file or object container type where this object is encapsulated. Expressed in string that would normally appear as an entry in an SDP to identify the type of the container. For example, the object_container_type_text () field indicates a file format or the like in a text form.

상기 object_media_type_text_length 필드(8비트)는 상기 object_media_type_text() 문자 스트링의 바이트 길이를 표시한다(This field shall specify the length (in bytes) of the object_media_type_text() character string.).The object_media_type_text_length field (8 bits) indicates the byte length of the object_media_type_text () character string. (This field shall specify the length (in bytes) of the object_media_type_text () character string.

상기 object_media_type_text() 필드는 이 디스크립터에서 서술하는 오브젝트의 인코딩 포맷을 식별하는 미디어 타입을 표시한다. 즉, 상기 오브젝트의 인코딩 포맷을 텍스트 형태로 표시한다(The media type identifying the encoding format of the object that this descriptor describes. This shall be identical to the character string that would normally appear in an 'a=rtpmap' entry in an SDP to identify the type of the media.). 예를 들어, 상기 object_media_type_text() 필드는 NRT 서비스로 전송되는 오디오, 비디오 등의 인코딩 포맷 정보를 텍스트 형태로 제공한다.The object_media_type_text () field indicates the media type that identifies the encoding format of the object described in this descriptor. That is, the encoding format of the object is displayed in a text form (The media type is the encoding format of the object that describes the descriptor describing the character string that normally appears in an 'a = rtpmap' entry in an SDP to identify the type of the media. For example, the object_media_type_text () field provides encoding format information such as audio and video transmitted in the NRT service in text form.

상기 object_decoding_parameters_text_length 필드(8비트)는 상기 object_decoding_parameters_text() 문자 스트링의 바이트 길이를 표시한다(This field shall specify the length (in bytes) of the object_decoding_parameters_text() character string.).The object_decoding_parameters_text_length field (8 bits) indicates the byte length of the object_decoding_parameters_text () character string. (This field shall specify the length (in bytes) of the object_decoding_parameters_text () character string.

상기 object_decoding_parameters_text() 필드는 이 디스크립터에서 서술하는 오브젝트의 디코딩 파라미터들을 텍스트 형태로 표시한다(A text string that identifies the decoding parameters of the object that this descriptor describes.).The object_decoding_parameters_text () field displays the decoding parameters of the object described in the descriptor in a text form (A text string that identifies the decoding parameters of the object that describes this descriptor).

그리고 상기 object_association_type 필드 값이 '001'이거나, '010'이면, 상기 디스크립터는 IP_version_flag 필드, source_specific_multicast_flag 필드, object_association_stream_source_IP_address 필드, object_association_stream_destination_UDP_port_num 필드, 및 object_association_stream_destination_IP_address 필드를 포함할 수 있다. 즉, 상기 디스크립터는 상기 파일 또는 스트림을 전송하는 IP 데이터그램의 접속 정보를 제공한다. If the object_association_type field value is '001' or '010', the descriptor may include an IP_version_flag field, a source_specific_multicast_flag field, an object_association_stream_source_IP_address field, an object_association_stream_destination_UDP_port_num field, and an object_association_stream_destination_IP_address field. That is, the descriptor provides connection information of an IP datagram transmitting the file or stream.

상기 IP_version_flag 필드(1비트)는 '0'으로 설정되어 있으면, object_association_stream_source_IP_address, object_association_stream_ destination_IP_address 필드들이 IPv4 어드레스임을 지시하고, '1'으로 설정되어 있으면 object_association_stream_source_IP_address, object_association_stream_destination_IP_address 필드들이 IPv6 어드레스임을 지시한다(A 1-bit indicator, when set to zero, shall indicate that object_association_stream_source_IP_address, object_association_stream_ destination_IP_address fields are IPv4 addresses. Otherwise, this field indicates that object_association_stream_source_IP_address, object_association_stream_destination_IP_address fields are IPv6 addresses.).When the IP_version_flag field (1 bit) is set to '0', the object_association_stream_source_IP_address and object_association_stream_destination_IP_address fields are IPv4 addresses, and when set to '1', the object_association_stream_source_IP_address and object_association_stream_destination_IP_address fields are IPv6 addresses This field indicates that object_association_stream_source_IP_address and object_association_stream_destination_IP_address fields are IPv4 addresses. Otherwise, this field indicates that the object_association_stream_destination_IP_address fields and the object_association_stream_destination_IP_address fields are IPv6 addresses.

상기 source_specific_multicast_flag 필드(1비트)는 '1'로 설정되면 상기 source specific multicast가 상기 FLUTE 세션을 위해 사용됨을 지시한다. 그러므로 이 경우, object_association_stream_source_IP_address가 존재해야 한다(A-1bit Boolean flag that shall indicate, when set, that the source specific multicast is used for this FLUTE session. Thus, the object_association_stream_source_IP_address shall be present.).If the source_specific_multicast_flag field (1 bit) is set to '1', it indicates that the source specific multicast is used for the FLUTE session. Therefore, in this case, object_association_stream_source_IP_address must exist (A-1 bit Boolean flag, when set, that the source specific multicast is used for this FLUTE session. Thus, the object_association_stream_source_IP_address shall be present.

상기 object_association_stream_IP_address 필드 (32 또는 128비트)는 source_specific_multicast_flag 필드가 '1'로 설정된 경우에는 존재하지만, source_specific_multicast_flag 필드가 '0'로 설정된 경우에는 존재하지 않는다. 만일 존재한다면 이 필드는 상기 FLUTE 세션의 콤포넌트(즉, 콘텐트/파일)들을 전송하는 모든 IP 데이터그램들의 소스 IP 어드레스를 포함한다(This field shall be present if source_specific_multicast_flag is set to '1' and shall not be present if source_specific_multicast_flag is set to '0'. If present, this field shall contain the source IP address of all the IP datagrams carrying the components of this FLUTE session.).The object_association_stream_IP_address field (32 or 128 bits) is present when the source_specific_multicast_flag field is set to '1', but not when the source_specific_multicast_flag field is set to '0'. If present, this field contains the source IP address of all IP datagrams transmitting the component (i. E., Content / files) of the FLUTE session (this field shall be present if source_specific_multicast_flag is set to '1' and shall not be If present, this field shall contain the source IP address of all the IP datagrams carrying the components of this FLUTE session.

상기 object_association_stream_destination_IP_address 필드(32 또는 128비트)는 상기 오브젝트 관련 스트림의 콤포넌트(즉, 콘텐트/파일)를 전송하는 모든 IP 데이터그램들의 데스트네이션 IP 어드레스를 표시한다(This field shall contain the destination of all the IP datagrams carrying the components of this object association stream.).The object_association_stream_destination_IP_address field (32 or 128 bits) indicates the destination IP address of all IP datagrams transmitting the component (i.e., content / file) of the object related stream. carrying the components of this object association stream.

상기 object_association_stream_destination_UDP_port_num 필드(16비트)는 상기 오브젝트 관련 스트림을 전송하는 UDP/IP 스트림의 데스트네이션 UDP 포트 번호를 나타낸다(A 16-bit unsigned integer field, that represents the destination UDP port number for the UDP/IP stream carrying this object association stream.).The object_association_stream_destination_UDP_port_num field (16 bits) indicates the destination UDP port number of the UDP / IP stream that transmits the object related stream (A 16-bit unsigned integer field, which represents the destination UDP port number for the UDP / IP stream carrying this object association stream.).

또한 상기 object_association_type 필드 값이 '010'이면, 상기 디스크립터는 object_association_session_TSI 필드, object_association_session_start_time 필드, object_association_session_end_time 필드, tias_bandwidth_indicator 필드, as_bandwidth_indicator 필드, FEC_OTI_indicator 필드, tias_bandwidth 필드, as_bandwidth 필드, FEC_encoding_id 필드, FEC_instance_id 필드 등을 더 포함한다. 즉, 상기 디스크립터는 해당 FLUTE 세션을 수신하는데 필요한 파라미터들을 서술한다. If the object_association_type field value is '010', the descriptor further includes an object_association_session_TSI field, an object_association_session_start_time field, an object_association_session_end_time field, a tias_bandwidth_indicator field, an as_bandwidth_indicator field, an FEC_OTI_indicator field, a tias_bandwidth field, an as_bandwidth field, an FEC_encoding_id field and an FEC_instance_id field. That is, the descriptor describes parameters necessary to receive the corresponding FLUTE session.

상기 object_association_session_TSI(16비트)는 상기 오브젝트 관련 파일을 전송하는 FLUTE 세션의 TSI를 표시한다. 즉, 상기 TSI는 상기 FLUTE 세션을 유일하게 식별할 수 있는 식별자이다(A 16-bit unsigned integer field, which shall be the Transport Session Identifier (TSI) of the FLUTE session that carries the object association file.)The object_association_session_TSI (16 bits) indicates a TSI of a FLUTE session for transmitting the object related file. That is, the TSI is an identifier that uniquely identifies the FLUTE session. (A 16-bit unsigned integer field, which is the TSI of the FLUTE session that carries the object association file.)

상기 object_association_session_start_time(16비트)는 상기 오브젝트 관련 파일을 전송하는FLUTE 세션이 시작하는 시각을 지시한다. 만약 해당 필드의 값이 모두 '0'이면, 상기 FLUTE 세션은 이미 시작된 것으로 해석될 수 있다(The time at which the FLUTE session that carries the object association file starts. If the value of this field is set to all-zero, then it shall be interpreted to mean that the session has already started.).The object_association_session_start_time (16 bits) indicates the time at which the FLUTE session for transmitting the object related file starts. If the value of the corresponding field is all '0', the FLUTE session can be interpreted as already started (The time at which the FLUTE session that carries the object association file starts. If the value of this field is set to all- zero, then it will be interpreted to mean that the session has already started.

상기 object_association_session_end_time 필드(16비트)는 상기 오브젝트 관련 파일을 전송하는 FLUTE 세션이 종료되는 시각을 지시한다. 만약 해당 필드의 값이 모두 '0'이면, 상기 FLUTE 세션은 무한정 계속되는 것으로 해석될 수 있다(The time at which the FLUTE session that carries the object association file ends. If the value of this field is set to all zero, then it shall be interpreted to mean that the session continues indefinitely.).The object_association_session_end_time field (16 bits) indicates the time at which the FLUTE session for transmitting the object related file ends. If the value of the corresponding field is '0', the FLUTE session can be interpreted as continuing indefinitely (the time at which the FLUTE session that carries the object association file ends. If the value of this field is set to all zero , then it will be interpreted to mean that the session continues indefinitely.

상기 tias_bandwidth_indicator 필드(1비트)는 TIAS(Transport Independent Application Specific) 대역폭 정보의 포함 여부를 지시한다. 만약 TIAS 대역폭 필드가 존재하는 것으로 지시하려면 해당 비트는 '1'로 설정되고, TIAS 대역폭 필드가 존재하지 않는 것으로 지시하려면 해당 비트는 '0'으로 설정되어야 할 것이다(A 1-bit field that flags the inclusion of TIAS bandwidth information. This bit shall be set to '1' to indicate the TIAS bandwidth field is present, and it shall be set to '0' to indicate the TIAS bandwidth field is absent).The tias_bandwidth_indicator field (1 bit) indicates whether to include TIAS (Transport Independent Application Specific) bandwidth information. To indicate that the TIAS bandwidth field is present, the corresponding bit shall be set to '1' and the corresponding bit shall be set to '0' to indicate that the TIAS bandwidth field does not exist (A 1-bit field that flags the The inclusion of TIAS bandwidth information. This bit shall be set to '1' to indicate the TIAS bandwidth field is present, and it shall be set to '0' to indicate the TIAS bandwidth field is absent.

상기 as_bandwidth_indicator 필드(1비트)는 AS(Application Specific) 대역폭 정보의 포함 여부를 지시한다. 만약 AS 대역폭 필드가 존재하는 것으로 지시하려면 해당 비트는 '1'로 설정되어야 하고, AS 대역폭 필드가 존재하지 않는 것으로 지시하려면 해당 비트는 '0'으로 설정되어야 할 것이다(A 1-bit field that flags the inclusion of AS bandwidth information. This bit shall be set to '1' to indicate the AS bandwidth field is present, and it shall be set to '0' to indicate the AS bandwidth field is absent).The as_bandwidth_indicator field (1 bit) indicates whether application specific (AS) bandwidth information is included. To indicate that the AS bandwidth field is present, the corresponding bit shall be set to '1' and to indicate that the AS bandwidth field does not exist, the corresponding bit shall be set to '0' (A 1-bit field that flags The inclusion of AS bandwidth information shall indicate that the AS bandwidth field is present, and that it shall be set to '0' to indicate the AS bandwidth field is absent.

상기 FEC_OTI_indicator 필드(1비트)는 FEC 오브젝트 트랜스미션 정보(OTI)가 제공되는지 여부를 지시한다(A 1-bit indicator that indicates whether FEC Object Transmission Information is provided).The FEC_OTI_indicator field (1 bit) indicates whether the FEC Object Transmission Information (OTI) is provided (A 1-bit indicator indicating whether the FEC Object Transmission Information is provided).

상기 tias_bandwidth 필드(16비트)는 상기 as_bandwidth_indicator 필드가 '1'로 설정되었을 때 존재하며, TIAS 최대 대역폭을 표시한다(This value shall be one one-thousandth of the Transport Independent Application Specific maximum bandwidth as defined in RFC 3890, rounded up to the next highest integer if necessary. This gives the TIAS bandwidth in kilobits per second).The tias_bandwidth field (16 bits) is present when the as_bandwidth_indicator field is set to '1' and indicates the TIAS maximum bandwidth. (This value shall be one to two thousandths of the transport independent application specific maximum bandwidth as defined in RFC 3890 , rounded up to the next highest integer if necessary. This gives the TIAS bandwidth in kilobits per second).

상기 as_bandwidth 필드(16비트)는 상기 as_bandwidth_indicator 필드가 '1'로 설정되었을 때 존재하며, AS 최대 대역폭을 표시한다 (This value shall be the Application Specific maximum bandwidth as defined in RFC 4566. This gives the AS bandwidth in kilobits per second).The as_bandwidth field (16 bits) exists when the as_bandwidth_indicator field is set to '1' and indicates the AS maximum bandwidth (This value will be defined as RFC 4566. This gives the AS bandwidth in kilobits per second).

상기 FEC_encoding_id 필드는 상기 FEC_OTI_indicator 필드가 '1'로 설정되었을 때 존재하며, 해당 FLUTE 세션 내에서 사용된 FEC 인코딩 ID를 표시한다(FEC encoding ID used in this FLUTE session, as defined in RFC 3926).The FEC_encoding_id field is present when the FEC_OTI_indicator field is set to '1' and indicates the FEC encoding ID used in the corresponding FLUTE session (FEC encoding ID used in this FLUTE session, as defined in RFC 3926).

상기 FEC_instance_id 필드는 상기 FEC_OTI_indicator 필드가 '1'로 설정되었을 때 존재하며, 해당 FLUTE 세션 내에서 사용된 FEC 인스턴스 ID를 표시한다(FEC instance ID used in this FLUTE session, as defined in RFC 3926).The FEC_instance_id field exists when the FEC_OTI_indicator field is set to '1', and indicates the FEC instance ID used in the corresponding FLUTE session (FEC instance ID used in this FLUTE session, as defined in RFC 3926).

예를 들어, 상기 미디어 오브젝트 관련 정보가 스트림이나 파일 형태로 전송될 경우, 상기 스트림은 SAP(Sesssion Announcement Protocol) 스트림이 될 수 있고, 상기 파일은 SDP(Session Description Protocol) 파일이 될 수 있다. 상기 미디어 오브젝트 관련 정보가 SAP 스트림으로 전송된다면, 상기 IP_version_flag 필 드, source_specific_multicast_flag 필드, object_association_stream_source_IP_address 필드, object_association_stream_destination_UDP_port_num 필드, 및 object_association_stream_destination_IP_address 필드는 상기 SAP 스트림을 전송하는 IP 데이터그램의 접근 정보가 된다. 따라서, 상기 IP 데이터그램의 접근 정보를 기초로 SAP 스트림의 IP 데이터그램을 수신하고, 수신된 SAP 스트림의 IP 데이터그램으로부터 미디어 오브젝트 관련 정보를 추출할 수 있다. For example, when the media object related information is transmitted in a stream or a file format, the stream may be a session announcement protocol (SAP) stream, and the file may be a SDP (Session Description Protocol) file. If the media object related information is transmitted in the SAP stream, the IP_version_flag field, the source_specific_multicast_flag field, the object_association_stream_source_IP_address field, the object_association_stream_destination_UDP_port_num field, and the object_association_stream_destination_IP_address field are access information of an IP datagram transmitting the SAP stream. Accordingly, the IP datagram of the SAP stream can be received based on the access information of the IP datagram, and the media object related information can be extracted from the IP datagram of the received SAP stream.

그리고, 상기 미디어 오브젝트 관련 정보가 SDP 파일로 전송된다면, 상기 IP_version_flag 필드, source_specific_multicast_flag 필드, object_association_stream_source_IP_address 필드, object_association_stream_destination_UDP_port_num 필드, 및 object_association_stream_destination_IP_address 필드는 상기 SDP 파일을 전송하는 해당 IP 데이터그램 또는 해당 FLUTE 세션의 접근 정보가 된다. 따라서, 상기 IP 데이터그램의 접근 정보를 기초로 SDP 파일의 IP 데이터그램을 수신하고, 수신된 SDP 파일의 IP 데이터그램으로부터 미디어 오브젝트 관련 정보를 추출할 수 있다. If the media object related information is transmitted as an SDP file, the IP_version_flag field, the source_specific_multicast_flag field, the object_association_stream_source_IP_address field, the object_association_stream_destination_UDP_port_num field, and the object_association_stream_destination_IP_address field are access information of the corresponding IP datagram or the FLUTE session for transmitting the SDP file . Accordingly, the IP datagram of the SDP file can be received based on the access information of the IP datagram, and the media object related information can be extracted from the IP datagram of the received SDP file.

도 14와 도 15는 본 발명에 따른 NST 섹션의 비트 스트림 신택스 구조의 또 다른 실시예를 보인 도면이다. FIG. 14 and FIG. 15 are diagrams showing still another embodiment of the bitstream syntax structure of the NST section according to the present invention.

여기서, 해당 신택스는 이해를 돕기 위하여 MPEG-2 프라이빗 섹션(Private section) 형태로 작성되었으나, 해당 데이터의 포맷은 어떠한 형태가 되어도 무방 하다. 예를 들어, SDP(Session Description Protocol)의 형태로 표현하여 SAP(Session Announcement Protocol)을 통하여 시그널링하는 등의 다른 방법도 사용할 수 있다.Here, the syntax is written in the form of an MPEG-2 private section for the sake of understanding, but the format of the data may be any form. For example, other methods such as signaling through the Session Announcement Protocol (SAP) expressed in the form of SDP (Session Description Protocol) can be used.

도 14와 도 15에서 table_id 필드(8비트)는 해당 테이블 섹션의 타입 식별을 위한 필드로서, 본 필드를 통해 해당 테이블 섹션이 NST를 구성하는 테이블 섹션임을 알 수 있다(An 8-bit unsigned integer number that indicates the type of table section being defined in NRT Service Table (NST)).In FIG. 14 and FIG. 15, the table_id field (8 bits) is a field for identifying the type of the corresponding table section. Through this field, it can be seen that the corresponding table section is a table section constituting the NST (An 8-bit unsigned integer number This indicates the type of table being defined in the NRT Service Table (NST).

section_syntax_indicator 필드(1비트)는 NST의 섹션 형식을 정의하는 지시자로서, 섹션 형식은 예를 들어, MPEG의 short-form 신택스('0') 등이 될 수 있다(section_syntax_indicator: This 1-bit field shall be set to '0' to always indicate that this table is derived from the "short" form of the MPEG-2 private section table).The section_syntax_indicator field (1 bit) is an indicator for defining the section format of the NST. The section format may be MPEG short-form syntax ('0') or the like (section_syntax_indicator: This 1-bit field shall be set to '0' to always indicate that this table is derived from the "short" form of the MPEG-2 private section table.

private_indicator 필드(1비트)는 해당 섹션의 형태가 프라이빗 섹션 형태를 따르는지 여부를 나타낸다(private_indicator: This 1-bit field shall be set to '1').The private_indicator field (1 bit) indicates whether the type of the section conforms to the private section type (private_indicator: This 1-bit field shall be set to '1').

section_length 필드(12비트)는 해당 필드 이후의 나머지 테이블 섹션 길이를 나타낸다(section_length: A 12-bit field. It specifies the number of remaining bytes this table section immediately following this field. The value in this field shall not exceed 4093 (0xFFD)).The section_length field (12 bits) indicates the length of the remaining table sections after the corresponding field (section_length: A 12-bit field. It specifies the number of remaining bytes this table section immediately follows this field. (0xFFD)).

table_id_extension 필드(16비트)는 테이블에 종속적이고, 남은 필드들의 범 위를 제공하는 table_id 필드의 논리적인 부분이 된다(table_id_extension: This is a 16-bit field and is table-dependent. It shall be considered to be logically part of the table_id field providing the scope for the remaining fields). 여기서, 상기 table_id_extension 필드는 NST_protocol_version 필드를 포함한다. The table_id_extension field (16 bits) is a table-dependent, logical part of the table_id field that provides the range of fields remaining (table_id_extension: This is a 16-bit field and is table-dependent. logically part of the table_id field providing the scope for the remaining fields). Here, the table_id_extension field includes an NST_protocol_version field.

상기 NST_protocol_version 필드(8비트)는 현재 프로토콜 내에서 정의된 것들과 다른 구조를 가지는 파라미터들이 전송하는 NST를 허락하기 위한 프로토콜 버전을 알려준다(NST_protocol_version: An 8-bit unsigned integer field whose function is to allow, in the future, this NST to carry parameters that may be structured differently than those defined in the current protocol. At present, the value for the NST_protocol_version shall be zero. Non-zero values of NST_protocol_version may be used by a future version of this standard to indicate structurally different tables).The NST_protocol_version field (8 bits) indicates a protocol version for allowing NSTs to be transmitted by parameters having different structures from those defined in the current protocol (NST_protocol_version: An 8-bit unsigned integer field whose function is to allow, in NST_protocol_version may be used for a future version of this standard. The NST_protocol_version may be used to specify the value of NST_protocol_version. indicate structurally different tables).

version_number 필드(5비트)는 NST의 버전 넘버를 나타낸다.The version_number field (5 bits) indicates the version number of the NST.

current_next_indicator 필드(1비트)는 전송된 NST 섹션이 현재 적용 가능한지 여부를 지시한다(current_next_indicator: A one-bit indicator, which when set to '1' shall indicate that the NST sent is currently applicable. When the bit is set to '0', it shall indicate that the table sent is not yet applicable and will be the next table to become valid. This standard imposes no requirement that "next"tables (those with current_next_indicator set to '0' must be sent. An update to the currently applicable table shall be signaled by incrementing the version_number field).The current_next_indicator field (1 bit) indicates whether the transmitted NST section is currently applicable (current_next_indicator: A one-bit indicator, which when set to '1' indicates that the NST sent is currently applicable. to '0', it will show that the table is not yet applicable and will be the next table to be valid. This standard imposes no requirement that "next" tables (those with current_next_indicator set to '0' update to the currently applicable table shall be signaled by incrementing the version_number field).

section_number 필드(8비트)는 현재 NST 섹션의 번호를 표시한다. (section_number: This 8-bit field shall give the section number of this NST section. The section_number of the first section in an NST shall be '0x00'. The section_number shall be incremented by 1 with each additional section in the NST).The section_number field (8 bits) indicates the number of the current NST section. (section_number: This 8-bit field shall give the section number of this NST section. The section number of the first section in an NST shall be '0x00'. The section number shall be incremented by 1 with each additional section in the NST).

last_section_number 필드(8비트)는 NST 테이블을 구성하는 마지막 섹션 번호를 나타낸다(last_section_number: This 8-bit field shall give the number of the last section (i.e., the section with the highest section_number) of the NST of which this section is a part).The last_section_number field (8 bits) indicates the last section number constituting the NST table (last_section_number: This 8-bit field shall give the number of the last section (ie, the section with the highest section_number) is a part).

carrier_frequency 필드(32비트)는, 채널에 대응하는 전송 주파수를 알려준다.The carrier_frequency field (32 bits) indicates the transmission frequency corresponding to the channel.

transport_stream_id필드(16 bit)는 해당 NST 섹션이 전송되고 있는 방송 스트림의 고유한 식별자(Identifier)를 의미한다. The transport_stream_id field (16 bits) indicates a unique identifier of a broadcast stream to which the corresponding NST section is being transmitted.

source_id 필드(16비트)는, 가상 채널과 연관된 프로그래밍 소스를 나타낸다.The source_id field (16 bits) indicates the programming source associated with the virtual channel.

num_NRT_services 필드(8비트)는 NST 섹션 내의 NRT 서비스의 수를 지시한다(num_services: This 8 bit field specifies the number of services in this NST section).The num_NRT_services field (8 bits) indicates the number of NRT services in the NST section (num_services: This 8 bit field specifies the number of services in this NST section).

이후 상기 num_NRT_services필드 값에 해당하는 NRT 서비스 개수만큼 'for' 루프(또는 NRT 서비스 루프라 함)가 수행되어 복수의 NRT 서비스에 대한 시그널링 정보를 제공한다. 즉, 상기 NST 섹션에 포함되는 NRT 서비스별로 해당 NRT 서비스의 시그널링 정보를 표시한다. 이때 각 NRT 서비스에 대해 다음과 같은 필드 정보를 제공할 수 있다.Thereafter, a 'for' loop (or an NRT service loop) is performed for the number of NRT services corresponding to the value of the num_NRT_services field to provide signaling information for a plurality of NRT services. That is, signaling information of the corresponding NRT service is displayed for each NRT service included in the NST section. At this time, the following field information can be provided for each NRT service.

NRT_service_status 필드(2비트)는 해당 NRT 서비스의 상태를 식별한다. 여기서, MSB는 해당 NRT 서비스가 액티브('1')인지 아니면 인액티브('0')인지 지시하고, LSB는 해당 NRT 서비스가 히든('1')인지 아닌지('0')를 지시한다. (NRT_service_status: A 2-bit enumerated field that shall identify the status of this NRT Service. The most significant bit shall indicate whether this NRT Service is active (when set to '1') or inactive (when set to '0') and the least significant bit shall indicate whether this NRT Service is hidden (when set to '1') or not (when set to '0'). Hidden services are normally used for proprietary applications, and ordinary receiving devices should ignore them).The NRT_service_status field (2 bits) identifies the state of the corresponding NRT service. Here, the MSB indicates whether the corresponding NRT service is active ('1') or inactive ('0'), and the LSB indicates whether the corresponding NRT service is hidden ('1') or not ('0'). (NRT_service_status: A 2-bit enumerated field that shall identify the status of this NRT Service. The most significant bit shall indicate whether this NRT Service is active (when set to '1') or inactive (when set to '0') and The NRT service is hidden (when set to '1') or not (when set to '0'). Hidden services are normally used for proprietary applications, and ordinary receiving devices should ignore them.

SP_indicator 필드(1비트)는 해당 NRT 서비스의 서비스 보호(service protection) 여부를 나타낸다. 만일 SP_indicator 필드 값이 1이면, 서비스 보호가 해당 NRT 서비스의 의미 있는 프리젠테이션을 제공하기 위해 요구되는 콤포넌트들 중 적어도 하나에 적용된다(상기 (A 1-bit field that indicates, when set to 1, service protection is applied to at least one of the components needed to provide a meaningful presentation of this NRT Service). The SP_indicator field (1 bit) indicates whether the corresponding NRT service is service protection. If the value of the SP_indicator field is equal to 1, the service protection is applied to at least one of the components required to provide a meaningful presentation of the corresponding NRT service (see (1-bit field that indicates, when set to 1, service protection is applied to at least one of the components needed to provide a meaningful presentation of this NRT Service).

CP_indicator 필드(1비트)는 해당 NRT 서비스의 콘텐트 보호(content protection) 여부를 나타낸다. 만일 CP_indicator 필드 값이 1이면, 콘텐트 보호가 해당 NRT 서비스의 의미 있는 프리젠테이션을 제공하기 위해 요구되는 콤포넌트들 중 적어도 하나에 적용된다(CP_indicator: A 1-bit field that shall indicate, when set, that content protection is applied to at least one of the components needed to provide a meaningful presentation of this NRT Service).The CP_indicator field (1 bit) indicates whether the corresponding NRT service is content protection. If the value of the CP_indicator field is equal to 1, the content protection is applied to at least one of the components required to provide a meaningful presentation of the corresponding NRT service (CP_indicator: protection is applied to at least one of the components needed to provide a meaningful presentation of this NRT Service).

NRT_service_id 필드(16 비트)는 해당 NRT 서비스를 유일하게 식별할 수 있는 값을 표시한다(A 16-bit unsigned integer number that shall uniquely identify this NRT service within the scope of this NRT section.). 하나의 서비스의 NRT_service_id 필드 값은 그 서비스가 유지되는 동안 변하지 않는다. 이때 혼란을 피하기 위해서, 만일 어떤 서비스가 종료되면 그 서비스의 NRT_service_id 필드 값은 일정 시간이 경과할 때까지 사용하지 않을 수 있다(The NRT_service_id of a service shall not change throughout the life of the service. To avoid confusion, it is recommended that if a service is terminated, then the NRT_service_id for the service should not be used for another service until after a suitable interval of time has elapsed.).The NRT_service_id field (16 bits) indicates a value that uniquely identifies the corresponding NRT service. (A 16-bit unsigned integer number indicates that the NRT service will not uniquely identify this NRT service within the scope of this NRT section.) The value of the NRT_service_id field of one service does not change while the service is maintained. In order to avoid confusion at this time, if a certain service is terminated, the value of the NRT_service_id field of the service may not be used until a predetermined time elapses (The NRT_service_id of a service shall not change throughout the life of the service. , it is recommended that a service is terminated, then the NRT_service_id for the service should not be used for another service until after a suitable interval of time has elapsed.).

Short_NRT_service_name 필드(8*8비트)는 상기 NRT 서비스의 short name 을 표시한다. 상기 NRT 서비스의 short name이 없으면, 상기 필드는 널 값(예, 0x00)으로 채워질 수 있다. The Short_NRT_service_name field (8 * 8 bits) indicates the short name of the NRT service. If there is no short name of the NRT service, the field may be filled with a null value (e.g., 0x00).

NRT_service_category 필드(6비트)는, 하기의 표 1에서 규정된 바와 같이, 해당 NRT 서비스 내에 전송되는 서비스의 타입을 식별한다(NRT_service_category: A 6-bit enumerated type field that shall identify the type of service carried in this NRT Service as defined in [표 1].).The NRT_service_category field (6 bits) identifies the type of service to be transmitted in the corresponding NRT service, as defined in Table 1 below (NRT_service_category: A 6-bit enumerated type field that will identify the type of service carried in this NRT Service as defined in [Table 1]).

NRT_service_categoryNRT_service_category MeaningMeaning 0x000x00 [Reserved][Reserved] 0x0E0x0E NRT_channel_discovery: NRT 서비스의 채널 디스커버리 정보를 전달한다.NRT_channel_discovery: Transmit channel discovery information of NRT service. 0x0F0x0F NRT_content_discovery: NRT 서비스의 콘텐트 디스커버리 정보를 전달한다.NRT_content_discovery: Transmit the content discovery information of the NRT service. 0x100x10 NRT_SG_data_service: NRT 서비스는 전자 서비스 가이드 데이터를 포함한다.NRT_SG_data_service: The NRT service includes electronic service guide data. 0x11-0x3F0x11-0x3F [Reserved for future ATSC use][Reserved for future ATSC use]

num_components 필드(5비트)는 상기 NRT서비스에 포함되는 IP 스트림 콤포넌트들의 개수를 표시한다(num_components: This 5-bit field specifies the number of IP stream components in this NRT Service).The num_components field (5 bits) indicates the number of IP stream components included in the NRT service (num_components: This 5-bit field specifies the number of IP stream components in this NRT service).

IP_version_flag 필드(1비트)는 '0'로 설정된 경우에는 source_IP_address 필드, NRT_service_destination_IP_address 필드 및 component_destination_IP_address 필드가 IPv4 어드레스임을 지시하고, '1'으로 설정된 경우에는 source_IP_address 필드, NRT_service_destination_IP_address 필드, component_destination_IP_address 필드가 IPv6 어드레스임을 지시한다(IP_version_flag: A 1-bit indicator, which when set to '0' shall indicate that source_IP_address, NRT_service_destination_IP_address, and component_destination_IP_address fields are IPv4 addresses. The value of '1' for this field is reserved for possible future indication that source_IP_address, NRT_service_destination_IP_address, and component_destination_IP_address fields are for IPv6). When the IP_version_flag field (1 bit) is set to '0', the source_IP_address field, the NRT_service_destination_IP_address field and the component_destination_IP_address field are IPv4 addresses, and when set to '1', the source_IP_address field, the NRT_service_destination_IP_address field and the component_destination_IP_address field are IPv6 addresses (NRT_service_destination_IP_address, NRT_service_destination_IP_address, NRT_service_destination_IP_address, NRT_service_destination_IP_address, NRT_service_destination_IP_address, NRT_service_destination_IP_address, NRT_service_destination_IP_address, NRT_service_destination_IP_address, and component_destination_IP_address fields are for IPv6).

source_IP_address_flag 필드(1비트)는 플래그가 설정되면, 해당 NRT 서비스를 위한 소스 IP 어드레스 값이 소스 특정 멀티캐스트를 지시하기 위해 존재함을 지시한다(source_IP_address_flag: A 1-bit Boolean flag that shall indicate, when set, that a source IP address value for this NRT Service is present to indicate a source specific multicast).The source_IP_address_flag field (1 bit) indicates that, when the flag is set, the source IP address value for the corresponding NRT service exists to indicate source specific multicast (source_IP_address_flag: A 1-bit Boolean flag that indicates indicate when set , that a source IP address value for this NRT Service is present to indicate a source specific multicast).

NRT_service_destination_IP_address_flag 필드(1비트)는 플래그가 '1' 설정되면, 해당 NRT 서비스의 콤포넌트들을 위한 디폴트 IP 어드레스가 제공하기 위해 NRT_service_destination_IP_address 필드가 존재한다(NRT_service_destination_IP_address_flag: A 1-bit Boolean flag that indicates, when set to '1' that a NRT_service_destination_IP_address value is present, to serve as the default IP address for the components of this NRT Service).If the NRT_service_destination_IP_address_flag field (1 bit) is set to '1', there is an NRT_service_destination_IP_address field to provide a default IP address for the corresponding NRT service components (NRT_service_destination_IP_address_flag: A 1-bit Boolean flag indicating that when set to ' 1 'that a NRT_service_destination_IP_address value is present, to serve as the default IP address for the NRT Service).

source_IP_address 필드(128비트)는 source_IP_address_flag가 '1'로 설정되면 해당 필드는 존재하지만, source_IP_address_flag가 '0'으로 설정되면 해당 필드는 존재하지 않을 것이다. 만약 해당 필드가 존재한다면, 해당 필드는 해당 NRT 서비스의 콤포넌트들을 전송하는 모든 IP 데이터그램들의 소스 IP 어드레스를 포함할 것이다. 해당 필드의 128 비트의 롱 어드레스의 제한적인 사용은 비록 현재 IPv6의 사용이 정의되지 않았지만 향후 IPv6의 사용을 가능하도록 하기 위함이다. Source_IP_address는 FLUTE 세션의 모든 채널을 전송하는 동일한 서버의 소스 IP 어드레스(source IP address)가 된다(source_IP_address: This field shall be present if the source_IP_address_flag is set to '1' and shall not be present if the source_IP_address_flag is set to '0'. If present, this field shall contain the source IP address of all the IP datagrams carrying the components of this NRT Service. The conditional use of the 128 bit-long address version of this field is to facilitate possible use of IPv6 in the future, although use of IPv6 is not currently defined).When the source_IP_address_flag field is set to '1', the source_IP_address field (128 bits) is present, but if the source_IP_address_flag field is set to '0', the corresponding field will not exist. If the corresponding field is present, the corresponding field will contain the source IP address of all IP datagrams carrying the components of the corresponding NRT service. The limited use of the 128-bit long address in the field is intended to enable future use of IPv6, although the current use of IPv6 is not defined. Source_IP_address is the source IP address of the same server that is sending all the channels of the FLUTE session (source_IP_address: This field shall be present if the source_IP_address_flag is set to '1' and shall not be present if the source_IP_address_flag is set If this field is set to '0', then this field shall contain the source IP address of all the IP datagrams carrying the components of this NRT Service. The conditional use of the 128- in the future, although IPv6 is not currently defined).

NRT_service_destination_IP_address 필드(128비트)는 source_IP_address_flag가 '1'로 설정되면 해당 source_IP_address 필드는 존재하지만, source_IP_address_flag가 '0'으로 설정되면 해당 source_IP_address 필드는 존재하지 않을 것이다. 만약 해당 source_IP_address 필드가 존재하지 않는다면, component_destination_IP_address 필드는 num_components 루프 내에 각 콤포넌트를 위해 존재할 것이다. 해당 source_IP_address 필드의 128비트의 롱 어드레스의 제한적인 사용은 비록 현재 IPv6의 사용이 정의되지 않았지만 향후 IPv6의 사용을 가능하도록 하기 위함이다. NRT_service_destination_IP_Address는 이 FLUTE 세션의 세션 레벨의 데스트네이션 IP 어드레스(destination IP address)가 있으면 시그널링 된다(NRT_service_destination_IP_address: This field shall be present if the NRT_service_destination_IP_address_flag is set to '1' and shall not be present if the NRT_service_destination_IP_address_flag is set to '0'. If this NRT_service_destination_IP_address is not present, then the component_destination_IP_address field shall be present for each component in the num_components loop. The conditional use of the 128 bit-long address version of this field is to facilitate possible use of IPv6 in the future, although use of IPv6 is not currently defined). If the source_IP_address_flag field is set to '1', the corresponding source_IP_address field is present but the source_IP_address_flag field is set to '0', the source_IP_address field will not be present in the NRT_service_destination_IP_address field (128 bits). If the corresponding source_IP_address field does not exist, then the component_destination_IP_address field will exist for each component in the num_components loop. The limited use of the 128-bit long address in the source_IP_address field is intended to enable the use of IPv6 in the future, although the current use of IPv6 is not defined. NRT_service_destination_IP_Address is signaled if there is a destination IP address of the session level of this FLUTE session (NRT_service_destination_IP_address: This field shall be present if NRT_service_destination_IP_address_flag is set to '1' and shall not present the NRT_service_destination_IP_address_flag is set to '0'. If this NRT_service_destination_IP_address is not present, then the component_destination_IP_address field shall be present for each component in the num_components loop. The conditional use of the 128 bit-long address , although use of IPv6 is not currently defined).

이후 상기 num_components 필드 값에 해당하는 콤포넌트 개수만큼 'for' 루프(또는 콤포넌트 루프라 함)가 수행되어 복수의 콤포넌트에 대한 접속 정보를 제공한다. 즉, 상기 NRT 서비스에 포함되는 각 콤포넌트의 접속 정보를 제공한다. 이때 각 콤포넌트에 대해 다음과 같은 필드 정보를 제공할 수 있다. 여기서, 하나의 콤포넌트는 하나의 FLUTE 세션에 대응되는 것을 일 실시예로 한다. Thereafter, a 'for' loop (or a component loop) is performed by the number of components corresponding to the num_components field value to provide connection information for a plurality of components. That is, connection information of each component included in the NRT service is provided. At this time, the following field information can be provided for each component. Here, one component corresponds to one FLUTE session.

essential_component_indicator 필드(1비트)는, 해당 필드의 값이 '1'로 설정되어 있으면 해당 콤포넌트는 NRT 서비스를 위한 필수 콤포넌트 임을 지시한다. 그렇지 않으면, 해당 콤포넌트는 선택적인 콤포넌트임을 지시한다(essential_component_indicator: A one-bit indicator which, when set to '1' shall indicate that this component is an essential component for the NRT Service. Otherwise, this field indicates that this component is an optional component).The essential_component_indicator field (1 bit) indicates that the corresponding component is a required component for the NRT service if the value of the corresponding field is set to '1'. Otherwise, it indicates that the component is an optional component (essential_component_indicator: A one-bit indicator which indicates when this component is an essential component for the NRT Service. Otherwise, this field indicates that this component is an optional component).

port_num_count 필드(6비트)는 해당 UDP/IP 스트림 콤포넌트와 관련된 UDP 포트들의 넘버를 지시한다. 데스티네이션 UDP 포트 넘버들의 값은 component_destination_UDP_port_num 필드 값으로부터 시작해서 1씩 증가한다(port_num_count: This field shall indicate the number of destination UDP ports associated with this UDP/IP stream component. The values of the destination UDP port numbers shall start from the component_destination_UDP_port_num field and shall be incremented by one). The port_num_count field (6 bits) indicates the number of UDP ports associated with the corresponding UDP / IP stream component. The value of destination UDP port numbers is incremented by 1, starting from the value of the component_destination_UDP_port_num field (port_num_count: this field indicates the number of destination UDP ports associated with this UDP / IP stream component. from the component_destination_UDP_port_num field and shall be incremented by one).

component_destination_IP_address_flag 필드(1비트)는 '1'로 설정되어 있으면 해당 콤포넌트를 위해 component_destination_IP_address 필드가 존재함을 지시하는 플래그이다(component_destination_IP_address_flag: A 1-bit Boolean flag that shall indicate, when set to '1' that the component_destination_IP_address is present for this component). The component_destination_IP_address_flag field (1 bit) is a flag indicating that a component_destination_IP_address field exists for the corresponding component if set to '1' (component_destination_IP_address_flag: A 1-bit Boolean flag indicating that the component_destination_IP_address is present for this component).

component_destination_IP_address 필드(128비트)는 component_destination_IP_address_flag가 '1'로 설정되면 해당 필드는 존재하지만, component_destination_IP_address_flag가 '0'으로 설정되면 해당 필드는 존재하지 않을 것이다. 만약 해당 필드가 존재한다면, 해당 필드는 해당 NRT 서비스의 콤포넌트들을 전송하는 모든 IP 데이터그램들의 소스 IP 어드레스를 포함할 것이다. 해당 필드의 128비트의 롱 어드레스의 제한적인 사용은 비록 현재 IPv6의 사용이 정의되지 않았지만 향후 IPv6의 사용을 가능하도록 하기 위함이다(component_destination_IP_address: This field shall be present if the component_destination_IP_address_flag is set to '1' and shall not be present if the component_destination_IP_address_flag is set to '0'. When this field is present, the destination address of the IP datagrams carrying this component of the NRT Service shall match the address in this field. When this field is not present, the destination address of the IP datagrams carrying this component shall match the address in the NRT_service_destination_IP_address field. The conditional use of the 128 bit-long address version of this field is to facilitate possible use of IPv6 in the future, although use of IPv6 is not currently defined).When the component_destination_IP_address_flag is set to '1', the corresponding field is present, but if the component_destination_IP_address_flag is set to '0', the corresponding field will not exist. If the corresponding field is present, the corresponding field will contain the source IP address of all IP datagrams carrying the components of the corresponding NRT service. The limited use of the 128-bit long address in the field is intended to enable the use of IPv6 in the future, although the current use of IPv6 is undefined (component_destination_IP_address: this field shall be present if the component_destination_IP_address_flag is set to '1' When this field is present, the destination address of the IP datagrams is the address of this field. This field is not present, The IPv6 address is the address of the destination address of the IP datagram, which is the address of the destination address of the destination node. defined.

component_destination_UDP_port_num 필드(16비트)는 해당 UDP/IP 스트림 콤포넌트를 위한 데스트네이션 UDP 포트 넘버를 나타낸다(component_destination_UDP_port_num: A 16-bit unsigned integer field, that represents the destination UDP port number for this UDP/IP stream component).The component_destination_UDP_port_num field (16 bits) indicates the destination UDP port number for the corresponding UDP / IP stream component (component_destination_UDP_port_num: A 16-bit unsigned integer field, which represents the destination UDP port number for this UDP / IP stream component).

num_component_level_descriptors 필드(4비트)는 콤포넌트 레벨의 추가 정보를 제공하는 디스크립터의 개수를 표시한다. The num_component_level_descriptors field (4 bits) indicates the number of descriptors providing additional information at the component level.

상기 num_component_level_descriptors 필드 값에 해당하는 개수만큼 상기 콤포넌트 루프에 component_level_descriptor()들이 포함되어, 상기 콤포넌트에 대한 부가 정보를 제공한다.Component_level_descriptors () are included in the component loop by the number corresponding to the num_component_level_descriptors field value, thereby providing additional information on the component.

num_NRT_service_level_descriptors 필드(4비트)는 NRT 서비스 레벨의 추가 정보를 제공하는 디스크립터의 개수를 표시한다.The num_NRT_service_level_descriptors field (4 bits) indicates the number of descriptors providing additional information of the NRT service level.

상기 num_NRT_service_level_descriptors 필드 값에 해당하는 개수만큼 상기 NRT서비스 루프에 NRT_service_level_descriptor()들이 포함되어, 상기 NRT 서비스에 대한 부가 정보를 제공한다.NRT_service_level_descriptors () are included in the NRT service loop by the number corresponding to the value of the num_NRT_service_level_descriptors field, thereby providing additional information on the NRT service.

num_virtual_channel_level_descriptors 필드(4비트)는 가상 채널 레벨의 추가 정보를 제공하는 디스크립터의 개수이다. The num_virtual_channel_level_descriptors field (4 bits) is the number of descriptors providing additional information of the virtual channel level.

상기 num_virtual_channel_level_descriptors 필드 값에 해당하는 개수만큼 상기 가상 채널 루프에 virtual_channel_level_descriptor()들이 포함되어, 상기 가상 채널에 대한 부가 정보를 제공한다.Virtual_channel_level_descriptors () are included in the virtual channel loop by the number corresponding to the value of the num_virtual_channel_level_descriptors field, thereby providing additional information on the virtual channel.

도 16는 component_level_descriptors()로서 제공되는 component_descriptor()의 비트 스트림 신택스 구조에 대한 일 실시예를 보이고 있다. 즉, component_descriptor()는 NST의 콤포넌트 레벨 디스크립터component_level_descriptors()의 하나로서 사용되며, 해당 콤포넌트의 부가적인 시그널링 정보를 서술한다. FIG. 16 shows an embodiment of a bitstream syntax structure of component_descriptor () provided as component_level_descriptors (). That is, the component_descriptor () is used as one of the component level descriptors component_level_descriptors () of the NST and describes additional signaling information of the corresponding component.

상기 component_descriptor()의 각 필드에 대한 설명은 다음과 같다.The description of each field of the component_descriptor () is as follows.

도 16에서, descriptor_tag 필드(8비트)는 디스크립터 식별자로서, component_descriptor()를 식별하는 식별자가 설정될 수 있다. 16, the descriptor_tag field (8 bits) is a descriptor identifier, and an identifier that identifies the component_descriptor () may be set.

descriptor_length 필드(8비트)는 상기 descriptor_length 필드 이후부터 이 descriptor의 끝까지, 디스크립터의 나머지 길이를 byte 단위로 나타낸다. The descriptor_length field (8 bits) indicates the remaining length of the descriptor in bytes after the descriptor_length field to the end of the descriptor.

component_type 필드(7비트)는 콤포넌트의 인코딩 포맷을 식별하는 값을 표시한다. 상기 식별 값은 RTP/AVP 스트림의 payload_type을 위해 할당된 값들 중의 하나일 수 있다. 또는 송/수신측의 약속에 의해 미리 정해진 값들 중 하나일 수도 있고, 또는 96-127 사이의 다이나믹 값일 수도 있다. RTP를 거쳐 전송되는 미디어를 구성하는 콤포넌트들을 위해 component_type 필드의 값은 해당 콤포넌트를 전송하는 IP 스트림의 RTP 헤더 내 payload_type 내 값과 일치해야 한다(component_type: This 7-bit field shall identify the encoding format of the component. The value may be any of the values assigned by IANA for the payload_type of an RTP/AVP stream, or it may be any of the values assigned by ATSC, or it may be a "dynamic value" in the range 96-127. For components consisting of media carried via RTP, the value of this field shall match the value in the payload_type field in the RTP header of the IP stream carrying this component. Note that additional values of the component_type field in the range of 43-71 can be defined in future versions of this standard).The component_type field (7 bits) indicates a value that identifies the encoding format of the component. The identification value may be one of values assigned for the payload_type of the RTP / AVP stream. Or it may be one of the predetermined values by the promise of the transmitting / receiving side, or may be a dynamic value between 96 and 127. [ The value of the component_type field shall match the value in the payload_type in the RTP header of the IP stream that transmits the component (component_type: This 7-bit field shall identify the encoding format of the component. The value may be any of the values assigned by IANA for the payload_type of an RTP / AVP stream, or may be any of the values assigned by ATSC, or may be a "dynamic value" in the range 96-127 For RTP, the value of this field shall match the value of the payload_type field in the RTP header of the IP stream carrying this component. Note that additional values of the component_type field in the range of 43-71 can be defined in future versions of this standard.

component_data(component_type) 필드는, 해당 콤포넌트를 렌더링하기 위해 필요한 인코딩 파라미터들 및/또는 다른 파라미터들을 제공한다. 여기서, component_data 엘리먼트의 구조는 component_type 필드의 값에 의해 결정된다(component_data(component_type): The component_data() element provides the encoding parameters and/or other parameters necessary for rendering this component. The structure of the component_data is determined by the value of component_type field).  The component_data (component_type) field provides the encoding parameters and / or other parameters needed to render the component. Here, the structure of the component_data element is determined by the value of the component_type field (component_data (component_type): The component_data () element provides the encoding parameters and / or other parameters necessary for rendering this component. value of component_type field).

예를 들어, 상기 component_type 필드 값이 35이면 component_data(component_type) 필드는 H.264/AVC 비디오 스트림을 위한 콤포넌트 데이터를 제공한다.For example, if the component_type field value is 35, the component_data (component_type) field provides component data for the H.264 / AVC video stream.

다른 예로, 상기 component_type 필드 값이 38이면 component_data(component_type) 필드는 도 17과 같은 FLUTE 파일 딜리버리를 위한 데이터를 제공한다. 도 17의 각 필드의 설명은 도 11을 참조하면 되므로, 여기서는 생략하기로 한다. As another example, if the component_type field value is 38, the component_data (component_type) field provides data for FLUTE file delivery as shown in FIG. The description of each field in Fig. 17 will be omitted since it will be referred to Fig.

즉, 해당 FULTE 세션을 수신하기 위하여 필요한 시그널링 정보들은 도 11의 NRT_FLUTE_File_Delivery_descriptor()를 사용하여 제공할 수도 있고, 도 16의 component_descriptor() 디스크립터를 사용하여 제공할 수도 있다.That is, the signaling information necessary for receiving the corresponding FULTE session may be provided using the NRT_FLUTE_File_Delivery_descriptor () of FIG. 11, or may be provided using the component_descriptor () descriptor of FIG.

그리고, 도 16에서 component_encryption_flag 필드(1비트)는 해당 콤포넌트의 암호화 유무를 지시한다. In FIG. 16, the component_encryption_flag field (1 bit) indicates whether the corresponding component is encrypted or not.

Num_STKM_streams 필드(8비트)는 상기 component_encryption_flag 필드가 암호화를 지시하면, 해당 콤포넌트와 관련된 STKM 스트림들의 개수를 나타낸다(num_STKM_streams: An 8-bit unsigned integer field that shall identify the number of STKM streams associated with this component).The Num_STKM_streams field (8 bits) indicates the number of STKM streams associated with the component if the component_encryption_flag field indicates encryption (num_STKM_streams: An 8-bit unsigned integer field that identifies the number of STKM streams associated with this component).

STKM_stream_id 필드(8비트)는 상기 Num_STKM_streams 필드 값만큼 반복되어 디크립션에 필요한 키를 얻을 수 있는 SKTM 스트림을 식별하는 값을 표시한다.The STKM_stream_id field (8 bits) is repeated by the value of the Num_STKM_streams field to indicate a value for identifying an SKTM stream from which a key required for decryption can be obtained.

한편, 도 14와 도 15의 NST에서도 미디어 오브젝트 관련 정보를 제공할 수 있다. On the other hand, the NST in FIGS. 14 and 15 can also provide media object association information.

일 실시예로, 미디어 오브젝트 관련 정보가 존재하면, 도 12와 같은 NRT_media_object_association_descriptor()를 콤포넌트 레벨 디스크립터로 제공한다. 이 경우 수신기에서는 콤포넌트 레벨 디스크립터에 포함된 모든 디스크립터들을 파싱하는데, 이때 디스크립터의 식별자를 이용하여 NRT_media_object_association_descriptor()를 식별할 수 있다. 상기 NRT_media_object_association_descriptor()의 각 필드의 설명 및 상기 NRT_media_object_association_descriptor()로부터 텍스트 형태의 미디어 오브젝트 관련 정보를 추출하는 과정은 전술한 도 12의 NST 설명을 참조하면 되므로, 여기서는 생략하기로 한다. 이때, 콤포넌트 루프에 NRT_media_object_association_descriptor()가 있는지를 식별하기 위하여 상기 도 14와 도 15의 NST에 media_object_association_indicator 필드(1비트)를 할당할 수도 있다. In one embodiment, if the media object related information exists, the NRT_media_object_association_descriptor () shown in FIG. 12 is provided to the component level descriptor. In this case, the receiver parses all the descriptors included in the component level descriptor, and identifies the NRT_media_object_association_descriptor () using the identifier of the descriptor. The description of each field of the NRT_media_object_association_descriptor () and the process of extracting the media object related information in text form from the NRT_media_object_association_descriptor () will be omitted because it will be described with reference to the NST description in FIG. At this time, a media_object_association_indicator field (1 bit) may be allocated to the NST of FIG. 14 and FIG. 15 to identify whether the NRT_media_object_association_descriptor () exists in the component loop.

다른 실시예로 도 16와 같은 component_descriptor()를 이용하여 미디어 오브젝트 관련 정보를 제공할 수도 있다. 이때, 상기 componet_type 필드 값은 43-71 사이의 값들 중 하나를 사용할 수 있다. 본 발명에서는 상기 미디어 오브젝트 관련 정보를 콤포넌트 데이터로 제공하기 위하여 43을 할당하는 것을 일 실시예로 한다. 상기 예시한 수치는 일 예에 불과하며, 상기 수치로 본 발명의 권리범위가 제한되는 것은 아니다. 즉, 상기 component_type 필드 값이 43이면 component_data(component_type) 필드는 도 18과 같은 미디어 오브젝트 관련 정보를 위한 콤포넌트 데이터를 제공한다. 도17의 각 필드의 설명은 도 12를 참조하면 되므로, 여기서는 생략하기로 한다. In another embodiment, the media object related information may be provided using the component_descriptor () shown in FIG. At this time, the component_type field value may use one of the values between 43 and 71. In the present invention, 43 is allocated to provide the media object association information as component data. The numerical values shown above are only examples, and the numerical values do not limit the scope of the present invention. That is, if the component_type field value is 43, the component_data (component_type) field provides the component data for media object association information as shown in FIG. The description of each field in Fig. 17 will be referred to Fig. 12, and thus will not be described here.

또 다른 실시예로, 도 16와 같은 component_descriptor()를 이용하여 미디어 오브젝트 관련 정보를 제공할 때, 상기 componet_type 필드 값으로 다이나믹 레인지(즉, 96-127) 내 어느 한 값으로 할당할 수도 있다. 이 경우 도 19과 같은 콤포넌트 데이터를 이용하여 미디어 오브젝트 관련 정보를 제공할 수 있다. In another embodiment, when the media object related information is provided using the component_descriptor () shown in FIG. 16, the value of the component_type field may be assigned to any value within the dynamic range (i.e., 96-127). In this case, the media object related information can be provided using the component data as shown in Fig.

도 19은 componet_type 필드 값으로 다이나믹 레인지(즉, 96-127) 내 어느 한 값이 할당될 때의 component_data()의 비트 스트림 신택스 구조에 대한 일 실시예를 보이고 있다. FIG. 19 shows an embodiment of a bitstream syntax structure of component_data () when a value within a dynamic range (i.e., 96-127) is assigned as a component_type field value.

도 19에서, general_media_type 필드(4비트)는 상기 콤포넌트의 제너럴 미디어 타입을 표시한다. 예를 들어, 상기 general_media_type 필드 값이 0x0이면 다음의 media_type_text() 필드, decoding_parameters_text() 필드를 이용하여 비디오 스트림에 적용된 인코딩 포맷과 디코딩 파라미터를 텍스트 형태로 제공한다. 일 예로, 상기 media_type_text() 필드, decoding_parameters_text() 필드는 MIME(Multipurpose Internet Mail Extensions) 타입으로 표현된 텍스트 형태로 인코딩 포맷과 디코딩 파라미터를 제공한다. In Figure 19, the general_media_type field (4 bits) indicates the general media type of the component. For example, if the general_media_type field value is 0x0, the following media_type_text () field and decoding_parameters_text () field are used to provide the encoding format and decoding parameter applied to the video stream in text form. For example, the media_type_text () field and the decoding_parameters_text () field provide an encoding format and a decoding parameter in a text format expressed by a Multipurpose Internet Mail Extensions (MIME) type.

본 발명은 상기 general_media_type 필드 값으로 0x2를 할당하거나, 0x4~0xF 중 어느 하나의 값을 할당하고, 상기 media_type_text() 필드, decoding_parameters_text() 필드를 이용하여 미디어 오브젝트 관련 정보를 텍스트 형태로 제공할 수도 있다. The present invention may allocate 0x2 as the general_media_type field value or assign a value of 0x4 to 0xF and provide media object related information in a text form using the media_type_text () field and the decoding_parameters_text () field .

도 19에서 ISO_639_language_code 필드(24비트)는 상기 general_media_type 필드 값으로 0x1이 할당될 때, 즉 오디오 스트림에 사용된 언어를 나타낸다. In FIG. 19, the ISO_639_language_code field (24 bits) indicates the language used when the 0x0 is assigned as the general_media_type field value, that is, the audio stream.

media_type_text_length 필드(8비트)는 다음에 오는 media_type_text() 문자 스트링의 바이트 길이를 표시한다(This field shall specify the length (in bytes) of the media_type_text() character string.).The media_type_text_length field (8 bits) indicates the byte length of the next media_type_text () character string. (This field shall specify the length (in bytes) of the media_type_text () character string.)

상기 media_type_text() 필드는 인코딩 포맷을 식별하는 미디어 타입을 표시한다. 즉, 상기 제너럴 미디어 타입에 대응하는 스트림의 인코딩 포맷을 텍스트 형태로 표시한다The media_type_text () field indicates the media type that identifies the encoding format. That is, the encoding format of the stream corresponding to the general media type is displayed in text form

decoding_parameters_text_length 필드(8비트)는 다음에 오는 decoding_parameters_text() 문자 스트링의 바이트 길이를 표시한다(This field shall specify the length (in bytes) of the decoding_parameters_text() character string.).The decoding_parameters_text_length field (8 bits) indicates the length of the next decoding_parameters_text () character string. (This field shall specify the length (in bytes) of the decoding_parameters_text () character string.)

상기 decoding_parameters_text() 필드는 상기 제너럴 미디어 타입에 대응하는 스트림의 디코딩 파라미터들을 텍스트 형태로 표시한다.The decoding_parameters_text () field indicates the decoding parameters of the stream corresponding to the general media type in text form.

도 20는 지금까지 설명한 본 발명에 따른 NRT 서비스 시그널링 데이터 및 NRT 서비스 데이터 추출 과정을 흐름도로 보인 도면이다. 도 20에서는 VCT 내 service_type 필드 값에 도 6에서와 같이 0x05를 할당하여, 해당 가상 채널로 하나 이상의 NRT 서비스가 전송됨을 지시하는 것을 일 실시예로 한다. 20 is a flowchart illustrating an NRT service signaling data and an NRT service data extraction process according to the present invention. In FIG. 20, 0x05 is assigned to the service_type field value in the VCT as shown in FIG. 6 to indicate that one or more NRT services are transmitted to the corresponding virtual channel.

즉, 물리적 전송 채널이 튜닝되면(S301), 상기 튜닝된 물리적 전송 채널로 수신되는 방송 신호로부터 VCT와 PMT를 획득한다(S302). 그리고 상기 획득된 VCT를 파싱하여 NRT 서비스가 있는지를 확인한다(S303). 이는 상기 VCT의 가상 채널 루프 내 service_type 필드 값을 확인하여 알 수 있다. 상기 S301는 튜너에서, 상기 S302,S303는 PSI/PSIP 섹션 핸들러에서 수행된다.That is, when the physical transmission channel is tuned (S301), the VCT and the PMT are obtained from the broadcasting signal received through the tuned physical transmission channel (S302). Then, the obtained VCT is parsed to check whether there is an NRT service (S303). This can be ascertained by checking the value of the service_type field in the virtual channel loop of the VCT. S301 is performed in the tuner, and S302 and S303 are performed in the PSI / PSIP section handler.

예를 들어, 상기 service_type 필드 값이 0x05가 아니면 해당 가상 채널은 NRT 서비스를 전송하지 않는다. 이때 상기 가상 채널은 기존 서비스(즉, legacy ATSC 서비스)를 전송하므로, 수신기는 상기 가상 채널에 포함된 정보에 따라 적절한 동작을 수행한다.For example, if the service_type field value is not 0x05, the virtual channel does not transmit the NRT service. At this time, since the virtual channel transmits an existing service (i.e., legacy ATSC service), the receiver performs an appropriate operation according to the information included in the virtual channel.

상기 service_type 필드 값이 0x05이면, 해당 가상 채널은 NRT 서비스를 전송한다. 이 경우 상기 가상 채널 루프에 도 7과 같은 NRT 서비스 디스크립터(NRT_service_descriptor())가 포함되어 수신되므로, 상기 NRT 서비스 디스크립터로부터 각 NRT 서비스의 식별 정보를 추출하여 저장한다(S304). 즉, 상기 NRT 서비스 디스크립터로부터 상기 가상 채널로 전송되는 각 NRT서비스들의 식별자, 숏 네임, 서비스 타입, 서비스 상태 정보(NRT_service_id, NRT_service_short_name, NRT_service_category, NRT_service_status) 등을 추출한다. 상기 S301는 튜너에서, 상기 S302 내지S304는 서비스 매니저 또는 PSI/PSIP 섹션 핸들러에서 수행된다.If the service_type field value is 0x05, the virtual channel transmits the NRT service. In this case, since the NRT service descriptor (NRT_service_descriptor ()) as shown in FIG. 7 is included in the virtual channel loop, the identification information of each NRT service is extracted from the NRT service descriptor and stored (S304). That is, an identifier, short name, service type, and service status information (NRT_service_id, NRT_service_short_name, NRT_service_category, NRT_service_status) of each NRT service transmitted to the virtual channel from the NRT service descriptor are extracted. S301 is performed in the tuner, and S302 through S304 are performed in the service manager or the PSI / PSIP section handler.

그리고, 상기 VCT의 service location descriptor(또는 PMT의 ES loop)에 포함된 stream_type 필드 값이 0x95(즉, DST 전송)이면, 이때의 Elementary_PID 필드 값을 이용하여 DST를 수신한다(S305, S306). 상기 S305, S306은 서비스 매니저의 제어에 의해 역다중화기에서 수행된다.If the stream_type field value included in the service location descriptor (or the ES loop of the PMT) of the VCT is 0x95 (i.e., DST transmission), the DST is received using the Elementary_PID field value at this time (S305, S306). S305 and S306 are performed in the demultiplexer under the control of the service manager.

상기 수신된 DST로부터 NRT 서비스를 식별하고(S307), 식별된 NRT 서비스의 시그널링 데이터 예를 들어, NST를 전송하는 NRT 서비스 시그널링 채널의 IP 데이터그램으로부터 분할된 MPEG-2 TS 패킷의 PID를 획득한다. 상기 NRT 서비스는 App_id_descrption 필드 값으로부터 확인할 수 있다. The NRT service is identified from the received DST (S307), and the PID of the MPEG-2 TS packet segmented from the IP datagram of the NRT service signaling channel transmitting the signaling data of the identified NRT service, for example, the NST, is obtained . The NRT service can be confirmed from the value of the App_id_description field.

본 발명은 NRT 어플리케이션(즉, NRT 서비스)을 식별하기 위해 상기 App_id_descrption 필드에 '0x0003'를 할당하는 것을 일 실시예로 한다. 상기 예시한 수치는 일 예에 불과하며, 상기 수치로 본 발명의 권리범위가 제한되는 것은 아니다.The present invention assigns '0x0003' to the App_id_descrption field to identify an NRT application (i.e., an NRT service). The numerical values shown above are only examples, and the numerical values do not limit the scope of the present invention.

만일 상기 DST 내 App_id_descrption 필드 값이 '0x0003'이면, 그 다음에 오는 Application_id_byte 값은 NRT 어플리케이션(즉, NRT 서비스)의 Service ID값이 된다. 그러므로, 상기와 같이 NRT 어플리케이션(즉, NRT 서비스)임을 식별한 이후에는 NRT 서비스 시그널링 채널의 IP 데이터그램으로부터 분할된 MPEG-2 TS 패킷의 PID를 찾기 위해 Tap을 추출한다(S308). 이어 상기 추출된 Tap의 association_tag를 포함하는 스트림 PID를 PMT로부터 추출한다(S309). 상기 S307 내지 S309는 서비스 매니저 또는 PSI/PSIP섹션 핸들러에서 수행된다.If the value of the App_id_description field in the DST is '0x0003', the next Application_id_byte value becomes the Service ID value of the NRT application (i.e., the NRT service). Therefore, after identifying the NRT application (i.e., the NRT service) as described above, the Tap is extracted to find the PID of the MPEG-2 TS packet segmented from the IP datagram of the NRT service signaling channel (S308). Then, a stream PID including an association_tag of the extracted Tap is extracted from the PMT (S309). The steps S307 to S309 are performed in the service manager or the PSI / PSIP section handler.

그리고, 상기 추출된 스트림 PID에 해당하는 MPEG-2 TS 패킷들을 수신하여 디캡슐레이션 즉, MPEG-2 헤더를 제거하면, DSM-CC 어드레서블 섹션이 복원된다(S310). 상기 S310은 어드레서블 섹션 핸들러에서 수행된다. When the MPEG-2 TS packets corresponding to the extracted stream PID are received and the decapsulation, i.e., the MPEG-2 header is removed, the DSM-CC addressable section is restored (S310). S310 is performed in the addressable section handler.

상기 DSM-CC 어드레서블 섹션으로부터 섹션 헤더와 CRC 첵섬을 제거하면, NRT 서비스 시그널링 채널을 전송하는 IP 데이터그램을 복원(recover)할 수 있다. 여기서, 상기 NRT 서비스 시그널링 채널을 전송하는 IP 데이터그램의 접속 정보는 well-known 데스티네이션(destination) IP 어드레스와 well-known 데스티네이션 (destination) UDP 포트 번호인 것을 일 실시예로 한다. If the section header and the CRC checksum are removed from the DSM-CC addressable section, the IP datagram transmitting the NRT service signaling channel can be recovered. The access information of the IP datagram transmitting the NRT service signaling channel is a well-known destination IP address and a well-known destination UDP port number.

도 21은 도 20에서 복원된 IP 데이터그램으로부터 도 9와 같은 NST를 획득하고, 획득된 NST를 기초로 NRT 서비스를 수신하는 과정의 일 실시예를 보인 흐름도이다. FIG. 21 is a flowchart illustrating an exemplary process of obtaining an NST shown in FIG. 9 from an IP datagram restored in FIG. 20 and receiving an NRT service based on the obtained NST.

즉, 도 20의 과정을 거쳐, well-known 데스티네이션 IP 멀티캐스트 어드레스와 well-known 데스티네이션 UDP 포트 번호를 가지면서, NRT 서비스 시그널링 채널을 전송하는 IP 멀티캐스트 스트림을 획득한다(S401). That is, an IP multicast stream for transmitting an NRT service signaling channel is acquired with a well-known destination IP multicast address and a well-known destination UDP port number through the process of FIG. 20 (S401).

그리고, 상기 IP 멀티캐스트 스트림을 통해 전송되는 IP 데이터그램을 모아 NST를 구성한다(S402). 즉, 테이블 식별자를 이용하여 상기 IP 데이터그램에 포함된 NRT 서비스 시그널링 데이터로부터 NST를 식별한다. 상기 S401, S402는 IP 데이터그램 핸들러와 UDP 데이터그램 핸들러에서 수행된다.Then, the IP datagram transmitted through the IP multicast stream is collected to configure the NST (S402). That is, the NST is identified from the NRT service signaling data included in the IP datagram by using the table identifier. S401 and S402 are performed in the IP datagram handler and the UDP datagram handler.

상기 NST를 파싱하면 NRT 서비스를 구성하는 콘텐트/파일들을 전송하는 FLUTE 세션의 접속 정보와 상기 NRT 서비스를 렌더링하는데 필요한 시그널링 정보를 추출할 수 있다. 예를 들어, 상기 NST로부터 각 FLUTE 세션으로 전송되는 NRT 서비스의 콘텐트/파일들의 렌더링(rendering)에 필수적인 정보를 추출할 수 있다. 상기 NRT 서비스의 콘텐트/파일들의 렌더링(rendering)에 필수적인 정보는 콘테이너 정보가 될 수도 있고, 인코딩 정보가 될 수도 있으며, 미디어 오브젝트의 디코딩 파라미터가 될 수도 있다. When the NST is parsed, connection information of a FLUTE session for transmitting content / files constituting an NRT service and signaling information necessary for rendering the NRT service can be extracted. For example, it is possible to extract information necessary for rendering the content / files of the NRT service transmitted from the NST to each FLUTE session. The information necessary for rendering the content / files of the NRT service may be container information, encoding information, or a decoding parameter of the media object.

즉, 상기 NST의 FLUTE 세션 루프로부터 상기 NRT 서비스를 구성하는 콘텐트/파일을 전송하는 FLUTE 세션에 대한 IP 접속 정보를 획득한다(S403).That is, IP connection information for a FLUTE session for transmitting the content / file constituting the NRT service is obtained from the FLUTE session loop of the NST (S403).

그리고, 상기 FLUTE 세션 루프 내 media_object_association_indicator 필드를 검사하여(S404), 상기 media_object_association_indicator 필드 값이 참(true 즉, 1)인지를 확인한다(S405). 상기 media_object_association_indicator 필드 값이 참을 지시하면, 상기 NST의 FLUTE_session_level_descriptor의 하나로서 수신되는 NRT_media_object_association_descriptor()를 파싱한다(S406). 즉, 상기 media_object_association_indicator 필드 값이 참이면, 상기 FLUTE 세션과 관련된 미디어 오브젝트 관련 정보가 NRT_media_object_association_descriptor() 내에 직접 텍스트 형태로 시그널링되거나, 또는 스트림이나 파일 형태로 제공된다. 상기 미디어 오브젝트 관련 정보가 스트림이나 파일 형태로 전송될 경우, 상기 NRT_media_object_association_descriptor()는 상기 스트림 또는 파일을 수신하기 위한 접속 정보를 제공한다. 또한 상기 미디어 오브젝트 관련 정보가 파일 형태로 전송될 경우, 상기 NRT_media_object_association_descriptor()는 상기 파일을 전송하는 FLUTE 세션을 수신하는데 필요한 파라미터들을 시그널링한다.The media_object_association_indicator field in the FLUTE session loop is checked (S404), and it is confirmed whether the media_object_association_indicator field value is true (i.e., 1) (S405). If the value of the media_object_association_indicator field indicates true, the NRT_media_object_association_descriptor () received as one of the FLUTE_session_level_descriptor of the NST is parsed (S406). That is, if the value of the media_object_association_indicator field is true, media object related information related to the FLUTE session is signaled directly in the form of a text in NRT_media_object_association_descriptor (), or provided in the form of a stream or a file. When the media object related information is transmitted in the form of a stream or a file, the NRT_media_object_association_descriptor () provides access information for receiving the stream or file. When the media object related information is transmitted in a file format, the NRT_media_object_association_descriptor () signals parameters necessary to receive a FLUTE session for transmitting the file.

따라서, 상기 미디어 오브젝트 관련 정보가 디스크립터로 전송되는지, 스트림으로 전송되는지, 파일로 전송되는지를 식별하기 위해, 상기 S406에서 파싱된 NRT_media_object_association_descriptor()의 object_association_type 필드 값이 '000'인지를 확인한다(S407).Accordingly, it is checked whether the object_association_type field value of the NRT_media_object_association_descriptor () parsed in S406 is '000' (S407) in order to identify whether the media object related information is transmitted as a descriptor, a stream, or a file .

만일, object_association_type 필드 값이 '000'이면, NRT_media_object_association_descriptor()로부터 NRT 서비스를 구성하는 콘텐트/파일들의 렌더링(rendering)에 필수적인 콘테이너 정보, 인코딩 정보, 미디어 오브젝트의 디코딩 파라미터를 획득한다(S409). If the object_association_type field value is '000', container information, encoding information, and decoding parameters of the media object, which are essential for rendering the content / files constituting the NRT service, are obtained from the NRT_media_object_association_descriptor () (S409).

만일, object_association_type 필드 값이 '001' 또는 '010'이면, 상기 NRT_media_object_association_descriptor()로부터 IP 접속 정보를 획득하여 상기 미디어 오브젝트 관련 정보를 전송하는 IP 멀티캐스트 스트림을 수신하거나, 파일의 오브젝트 관련 데이터 구조를 전송하는 FLUTE 세션을 수신한다(S408). 그리고 수신된 IP 멀티캐스트 스트림 또는 FLUTE 세션으로부터 NRT 서비스를 구성하는 콘텐트/파일들의 렌더링(rendering)에 필수적인 콘테이너 정보, 인코딩 정보, 미디어 오브젝트의 디코딩 파라미터를 획득한다(S409).If the object_association_type field value is '001' or '010', it obtains IP connection information from the NRT_media_object_association_descriptor () and receives an IP multicast stream for transmitting the media object related information, or transmits the object related data structure of the file A FLUTE session is received (S408). In step S409, container information, encoding information, and decoding parameters of a media object necessary for rendering the content / files constituting the NRT service from the received IP multicast stream or FLUTE session are acquired.

상기 S409가 수행되거나, 상기 S405에서 상기 media_object_association_indicator 필드 값이 참이 아니라고 지시하면, 상기 NST의 FLUTE_session_level_descriptor로서 수신되는 NRT_FLUTE_File_delivery_descriptor()를 파싱하여 FLUTE 레벨 접속 정보를 획득한다(S410). 그리고 상기 S410에서 획득한 FLUTE 레벨 접속 정보를 이용하여 FLUTE 파일 딜리버리 세션에 접속하여, 상기 세션에 속한 파일들을 모은다(S411). 상기 파일들을 모으면 하나의 NRT 서비스가 구성되며, 이러한 NRT 서비스는 저장 매체에 저장되거나, 디스플레이 장치에 표시된다(S412). 상기 S403 내지 S407, S409, S410은 서비스 시그널링 섹션 핸들러에서 수행되고, 상기 S408는 IP 데이터그램 핸들러, UDP 데이터그램 핸들러, 및 ALC/LCT 스트림 핸들러에서 수행된다. 상기 S411 은 ALC/LCT 스트림 핸들러에서 수행된다.If it is determined in step S409 that the media_object_association_indicator field value is not true in step S405, the NRT_FLUTE_File_delivery_descriptor () received as the FLUTE_session_level_descriptor of the NST is parsed to obtain FLUTE level access information (S410). In step S411, the FLUTE file access server accesses the FLUTE file delivery session using the FLUTE level access information obtained in step S410, and collects files belonging to the session. When the files are collected, one NRT service is configured and stored in a storage medium or displayed on a display device (S412). S403 to S407, S409 and S410 are performed in the service signaling section handler, and S408 is performed in the IP datagram handler, UDP datagram handler, and ALC / LCT stream handler. The S411 is performed in the ALC / LCT stream handler.

만일, 도 14와 도 15에서와 같이 NST에 object_association_type 필드가 할당되지 않은 경우, 상기 S404, S405 단계가 생략된다. If the object_association_type field is not allocated to the NST as shown in FIGS. 14 and 15, steps S404 and S405 are omitted.

이와 같이 본 발명에 따른 NRT 서비스를 구성하는 콘텐트/파일들의 렌더링(rendering)에 필수적인 콘테이너 정보, 인코딩 정보, 미디어 오브젝트의 디코딩 파라미터는 FLUTE 세션별로, 또는 콤포넌트별로 해당 NST에 시그널링된다. In this manner, container information, encoding information, and decoding parameters of the media object, which are essential for rendering the content / files constituting the NRT service according to the present invention, are signaled to the corresponding NST on a FLUTE session basis or on a component basis.

한편, 본 발명에 따른 NRT 서비스 시그널링 채널로 전송되는 NRT 서비스 시그널링 데이터는 NCT(NRT Content Table)를 더 포함할 수도 있다. 상기 NCT는 상기 NST를 통해 시그널링된 NRT 콘텐트를 Signaling/Announcement하기 위해 사용되는 것을 일 실시예로 한다. 이때 NRT 서비스 시그널링 채널의 IP 데이터그램들은 동일한 well-known IP 어드레스와 well-known UDP 포트 번호를 가지므로, 상기 NRT 서비스 시그널링 데이터에 포함된 NCT의 구분은 테이블 식별자에 의해 이루어진다. 마찬가지로, 하나의 NCT가 하나의 섹션으로 구성되는지 복수개의 섹션으로 구성되는지는NCT 섹션 내 table_id 필드, section_number 필드, last_section_number 필드 등을 통해 알 수 있다. 그리고 상기 NRT 서비스 시그널링 채널의 IP 데이터그램들의 IP 헤더와 UDP 헤더를 제거한 후 동일한 테이블 식별자를 갖는 섹션들을 모으면 해당하는 테이블을 완성할 수 있다. 예를 들어, NCT에 할당된 테이블 식별자를 갖는 섹션들을 모으면 NCT를 완성할 수 있다. Meanwhile, the NRT service signaling data transmitted in the NRT service signaling channel according to the present invention may further include an NCT (NRT Content Table). The NCT is used for signaling / announcing signaled NRT content through the NST. At this time, since the IP datagrams of the NRT service signaling channel have the same well-known IP address and a well-known UDP port number, the division of the NCT included in the NRT service signaling data is performed by the table identifier. Similarly, whether a single NCT is composed of one section or a plurality of sections can be known through a table_id field, a section_number field, a last_section_number field, and the like in the NCT section. After removing the IP header and the UDP header of the IP datagrams of the NRT service signaling channel, the corresponding tables can be completed by collecting sections having the same table identifier. For example, you can complete the NCT by gathering sections with table identifiers assigned to the NCT.

도 22은 본 발명에 따른 NCT섹션에 대한 비트 스트림 신택스 구조의 일 실시예를 보인 도면이다. 상기 NCT 섹션의 각 필드의 상세한 설명은 다음과 같다.22 is a diagram showing an embodiment of a bitstream syntax structure for an NCT section according to the present invention. Details of each field of the NCT section are as follows.

도 22에서 table_id 필드(8비트)는 테이블의 식별자로서, NCT를 식별하는 식별자가 설정될 수 있다. In FIG. 22, the table_id field (8 bits) is an identifier of the table, and an identifier that identifies the NCT can be set.

section_syntax_indicator 필드(1비트)는 NCT의 섹션 형식을 정의하는 지시자이다. The section_syntax_indicator field (1 bit) is an indicator that defines the section format of the NCT.

private_indicator 필드(1비트)는 NCT가 private section을 따르는지 여부를 나타내낸다. The private_indicator field (1 bit) indicates whether the NCT follows a private section.

section_length 필드(12비트)는 NST의 섹션 길이를 나타낸다. The section_length field (12 bits) indicates the section length of the NST.

NRT_service_id 필드(16 비트)는 NCT에서 기술하는 콘텐트를 포함하는 NRT 서비스를 유일하게 식별할 수 있는 값을 표시한다. The NRT_service_id field (16 bits) indicates a value that can uniquely identify the NRT service including the content described by the NCT.

version_number 필드(5비트)는 NCT의 버전 번호를 나타낸다. The version_number field (5 bits) indicates the version number of the NCT.

current_next_indicator 필드(1비트)는 해당 NCT 섹션이 포함하는 정보가 현재 적용 가능한 정보인지, 미래 적용 가능한 정보인지를 나타낸다. The current_next_indicator field (1 bit) indicates whether the information included in the corresponding NCT section is currently applicable information or future applicable information.

section_number 필드(8비트)는 현재 NCT 섹션의 섹션 번호를 나타낸다. The section_number field (8 bits) indicates the section number of the current NCT section.

last_section_number 필드(8비트)는 NCT의 마지막 섹션 번호를 나타낸다. The last_section_number field (8 bits) indicates the last section number of the NCT.

protocol_version 필드(8비트)는 현재 프로토콜 내에서 정의된 것들과 다른 구조를 가지는 파라미터들을 전송하는 NCT를 허용하기 위한 프로토콜 버전을 알려준다(An 8-bit unsigned integer field whose function is to allow, in the future, this NRT Content Table to carry parameters that may be structured differently than those defined in the current protocol. At present, the value for the protocol_version shall be zero. Non-zero values of protocol_version may be used by a future version of this standard to indicate structurally different tables.)The protocol_version field (8 bits) tells the protocol version to allow the NCT to transmit parameters with a different structure than those defined in the current protocol (An 8-bit unsigned integer field whose function is to allow, This NRT Content Table may carry different parameters that may be structured differently than the current protocol. At present, the value for the protocol_version shall be zero. structurally different tables.)

num_contents_in_section 필드(8비트)는 이 NCT에서 기술하는 콘텐트의 개수를 표시한다. 이때 상기 콘텐트의 개수는 source_id로 특정(specify)된 가상 채널을 통해 전송되는 콘텐트(또는 파일)의 개수를 나타낸다. The num_contents_in_section field (8 bits) indicates the number of contents described in this NCT. At this time, the number of contents indicates the number of contents (or files) to be transmitted through the virtual channel specified by the source_id.

이후 상기 num_contents_in_section 필드 값에 해당하는 콘텐트 개수만큼 'for' 루프(또는 콘텐트 루프라 함)가 수행되어 각 콘텐트별로 해당 콘텐트의 상세 정보를 제공한다. Then, a 'for' loop (or a content loop) is performed for the number of contents corresponding to the num_contents_in_section field value, and detailed information of the corresponding content is provided for each content.

content_version 필드(32비트)는 특정 content_id 값을 갖는 content (또는 file)에 대한 version 번호를 표시한다. 즉, 수신기가 이전에 수신하여 저장한 콘텐트의 content_id가 0x0010이라 하고, 동일한 content, 즉 content_id 값이 0x0010인 콘텐트가 전송되었다고 가정하자. 이때 상기 content_version필드 값이 변경되면, 상기 NCT를 통해 새롭게 announce 된 콘텐트를 수신하여 이전에 저장된 콘텐트를 업데이트하거나, 재배치(replace) 하도록 한다. 본 실시 예에서는 상기 content_version 필드 값이 release의 version을 나타내는 일련 번호를 의미하나 실제로 published (released) time을 직접 표현할 수도 있다. 이때, 상기 content_version 필드로 publish time이 표현하기 힘들 경우에 published (released) time을 표현할 수 있는 새로운 필드를 사용할 수도 있다.The content_version field (32 bits) indicates the version number for the content (or file) with a particular content_id value. That is, suppose that the content having the same content, that is, the content having the content_id value of 0x0010, is transmitted with the content_id of the previously received and stored content of the receiver being 0x0010. At this time, if the value of the content_version field is changed, the content newly announced through the NCT is received, and the previously stored content is updated or replaced. In the present embodiment, the value of the content_version field indicates a serial number indicating the version of release, but the published time may be directly expressed. At this time, a new field capable of expressing a published time can be used when it is difficult to express the publish time in the content_version field.

content_id 필드(16비트)는 상기 콘텐트(또는 파일)를 유일하게 식별할 수 있는 식별자를 표시한다. The content_id field (16 bits) indicates an identifier that can uniquely identify the content (or file).

content_available_start_time 필드(32비트)와 content_available_end_time 필드(32비트)는 상기 콘텐트를 전송하는 FLUTE 세션의 시작 시간과 종료 시간을 표시한다. The content_available_start_time field (32 bits) and the content_available_end_time field (32 bits) indicate the start time and end time of the FLUTE session transmitting the content.

content_length_in_seconds 필드(30비트)는 상기 콘텐트(또는 파일)이 A/V 파일인 경우에 해당 콘텐트의 실재 재생 시간을 초 단위로 나타낸다. The content_length_in_seconds field (30 bits) indicates the actual playback time of the content in seconds when the content (or file) is an A / V file.

content_size필드(48비트)는 상기 콘텐트(또는 파일)의 크기를 바이트 단위로 나타낸다. The content_size field (48 bits) indicates the size of the content (or file) in bytes.

content_delivery_bit_rate 필드(32비트)는 상기 콘텐트(또는 파일)을 전송하는 전송 속도(bit rate)를 표시하며, target bit rate를 의미한다. 즉, service provider 또는 방송국이 해당 content를 전송할 때 얼마만큼의 밴드폭(bandwidth)을 할당(allocate)할지를 표시한다. 따라서 수신기에서 content_size 및 content_delivery_bit_rate를 이용하면, 해당 콘텐트(또는 파일)을 수신하는데 소요되는 최소 시간(minimum time)을 알 수 있다. 즉, 콘텐트를 수신하는데 걸리는 시간을 추정(estimation)하여 사용자에게 해당 정보를 제공할 수 있다. 그리고 최소 수신 소요 시간은 (conent_size * 8) / (content_delivery_bit_rate) 를 계산하여 얻어지며, 단위는 초 (seconds)이다.The content_delivery_bit_rate field (32 bits) indicates a bit rate at which the content (or file) is transmitted, and indicates a target bit rate. That is, it indicates how much bandwidth the service provider or the broadcasting station should allocate when transmitting the content. Therefore, by using the content_size and the content_delivery_bit_rate in the receiver, the minimum time required to receive the content (or file) can be known. That is, the time required to receive the content can be estimated and the information can be provided to the user. The minimum reception time is obtained by calculating (conent_size * 8) / (content_delivery_bit_rate), and the unit is seconds.

content_title_length 필드(8비트)는 content_title_text()의 길이를 바이트 단위로 나타낸다. 이 필드를 이용하면, 수신기는 정확하게 content_title_text () 정보를 획득하기 위해 몇 바이트의 데이터를 읽어야 할 지를 알 수 있다.The content_title_length field (8 bits) indicates the length of content_title_text () in bytes. With this field, the receiver can know how many bytes of data to read in order to obtain the content_title_text () information correctly.

content_title_text() 필드는 멀티플 스트링 구조 포맷으로 콘텐트 타이틀을 표시한다(content title in the format of a multiple string structure).The content_title_text () field displays the content title in a multiple string structure format (content title in the format of a multiple string structure).

즉, 수신기에서는 상기 NCT를 이용하여 NRT 콘텐트/파일의 구성 정보를 획득하고, 획득한 NRT 콘텐트/파일의 구성 정보를 기초로 NRT 콘텐트/파일에 대한 가이드를 제공할 수 있다. 그리고 이 가이드로부터 선택된 콘텐트/파일을 전송하는 FLUTE 세션의 접속 정보를 NST로부터 획득하고, 획득한 FLUTE 세션 접속 정보를 이용하여 상기 선택된 콘텐트를 수신할 수 있다. That is, the receiver can obtain the NRT content / file configuration information using the NCT and provide the NRT content / file guide based on the acquired NRT content / file configuration information. From this guide, access information of a FLUTE session for transferring a selected content / file can be obtained from the NST, and the selected content can be received using the acquired FLUTE session access information.

한편, 본 발명은 NRT 서비스를 구성하는 콘텐트/파일들의 렌더링(rendering)에 필수적인 콘테이너 정보, 인코딩 정보, 미디어 오브젝트의 디코딩 파라미터를 상기 NCT에 포함하여 전송할 수 있다. 따라서 수신 시스템에서는 각 콘텐트별로 해당 콘텐트의 렌더링(rendering)에 필수적인 콘테이너 정보, 인코딩 정보, 미디어 오브젝트의 디코딩 파라미터를 추출하여 해당 콘텐트의 렌더링에 이용할 수 있게 된다. Meanwhile, the present invention can transmit container information, encoding information, and decoding parameters of a media object, which are essential for rendering the content / files constituting the NRT service, in the NCT. Accordingly, the receiving system extracts container information, encoding information, and decoding parameters of a media object, which are indispensable for rendering the corresponding content for each content, and can use it for rendering the corresponding content.

도 23은 Fixed NRT 서비스를 위한 NRT 콘텐트를 수신하여 저장 및 재생할 수 있는 수신 시스템의 일 실시예이다. FIG. 23 shows an embodiment of a receiving system capable of receiving, storing, and reproducing NRT content for a fixed NRT service.

도 23의 방송 수신 장치는 오퍼레이션 제어부(100), 베이스밴드 처리부(110), 서비스 역다중화기(120), 스트림 콤포넌트 핸들러(130), 미디어 핸들러(140), 파일 핸들러(150), 서비스 매니저(160), PVR 매니저(170), 제1 저장부(180), SG 핸들러(190), EPG 핸들러(200), NRT 서비스 매니저(210), 어플리케이션 매니저(220), 미들웨어 엔진(230), 프리젠테이션 매니저(240), 및 UI(User Interface) 매니저(250)를 포함할 수 있다. 23 includes an operation control unit 100, a baseband processing unit 110, a service demultiplexer 120, a stream component handler 130, a media handler 140, a file handler 150, a service manager 160 The PVR manager 170, the first storage unit 180, the SG handler 190, the EPG handler 200, the NRT service manager 210, the application manager 220, the middleware engine 230, A user interface (UI) manager 240, and a user interface (UI) manager 250.

상기 베이스밴드 처리부(110)는 튜너(111)와 복조기(112)를 포함할 수 있다. 상기 서비스 역다중화기(120)는 MPEG-2 TP 핸들러(121), PSI/PSIP 핸들러(122), MPEG-2 TP 역다중화기(123), 디스크램블러(124), 및 제2 저장부(125)를 포함할 수 있다. The baseband processing unit 110 may include a tuner 111 and a demodulator 112. The service demultiplexer 120 includes an MPEG-2 TP handler 121, a PSI / PSIP handler 122, an MPEG-2 TP demultiplexer 123, a descrambler 124 and a second storage unit 125 .

상기 스트림 콤포넌트 핸들러(130)는 PES(Packetized Elementary Stream) 복호기(131), ES(Elementary Stream) 복호기(132), PCR 핸들러(133), STC 핸들러(134), DSM-CC 어드레서블 섹션 핸들러(135), IP 데이터그램 핸들러(136), 디스크램블러(137), UDP 핸들러(138), 서비스 시그널링 섹션 핸들러(138-1), 및 CAS(Conditional Access System(139)을 포함할 수 있다.The stream component handler 130 includes a Packetized Elementary Stream (PES) decoder 131, an ES (Elementary Stream) decoder 132, a PCR handler 133, an STC handler 134, a DSM-CC addressable section handler 135, an IP datagram handler 136, a descrambler 137, a UDP handler 138, a service signaling section handler 138-1, and a CAS (Conditional Access System 139).

상기 미디어 핸들러(140)는 A/V 복호기(141)를 포함할 수 있다. 상기 파일 핸들러(150)는 ALC/LCT 스트림 핸들러(151), 파일 재건(reconstruction) 버퍼(152), XML 파서(153), FDT 핸들러(154), 디콤프레서(155), 및 제3 저장부(156), 및 파일 디코더(157)를 포함할 수 있다. The media handler 140 may include an A / V decoder 141. The file handler 150 includes an ALC / LCT stream handler 151, a file reconstruction buffer 152, an XML parser 153, an FDT handler 154, a decompressor 155, 156, and a file decoder 157.

이와 같이 구성된 도 23에서, 튜너(111)는 예를 들면, 지상파를 통해 수신되는 방송 신호 중 원하는 채널의 방송 신호를 서비스 매니저(160)의 제어에 의해 튜닝하여 중간주파수(IF : Intermediate Frequency) 신호로 다운 컨버전하여 복조기(112)로 출력한다. 상기 튜너(111)는 실시간 스트림과 비실시간 스트림을 수신할 수 있다. 본 발명에서 비실시간 스트림은 NRT 스트림이라 하기로 한다. 23, the tuner 111 tunes a broadcast signal of a desired channel among broadcast signals received via a terrestrial wave, under the control of the service manager 160, and generates an intermediate frequency (IF) signal And outputs the down-converted signal to the demodulator 112. The tuner 111 may receive a real-time stream and a non-real-time stream. In the present invention, a non-real-time stream is referred to as an NRT stream.

상기 복조기(112)는 튜너(111)로부터 입력되는 통과대역의 디지털 IF 신호에 대해 자동 이득 제어, 반송파 복구 및 타이밍 복구 등을 수행하여 기저대역 신호로 변환하고, 채널 등화를 수행한다. 예를 들어, 상기 방송 신호가 VSB 변조 신호인 경우 VSB 복조 과정을 수행하여 자동 이득 제어, 반송파 복구 및 타이밍 복구 등을 수행한다. 상기 복조기(112)에서 복조 및 채널 등화된 데이터는 MPEG-2 TS(Transport Stream) 패킷 형태로 상기 MPEG-2 TP 핸들러(121)로 출력된다. The demodulator 112 performs automatic gain control, carrier recovery, and timing recovery on a digital IF signal of a passband inputted from the tuner 111, converts the digital IF signal into a baseband signal, and performs channel equalization. For example, if the broadcast signal is a VSB modulation signal, VSB demodulation is performed to perform automatic gain control, carrier recovery, and timing recovery. The demodulated and channel-equalized data in the demodulator 112 is output to the MPEG-2 TP handler 121 in the form of an MPEG-2 Transport Stream (TS) packet.

상기 MPEG-2 TP(Transport Stream Packet) 핸들러(121)는 MPEG-2 TP 버퍼와 MPEG-2 TP 파서로 구성되며, 상기 복조기(112)의 출력을 일시 저장한 후 TS 헤더를 분석하여, 상기 복조기(112)의 출력이 실시간용 A/V TS 패킷이거나, NRT TS 패킷이면 역다중화기(123)로 출력하고, PSI/PSIP 테이블용 TS 패킷이면 PSI/PSIP 핸들러(122)로 출력한다. The MPEG-2 TP (Transport Stream Packet) handler 121 comprises an MPEG-2 TP buffer and an MPEG-2 TP parser. The MPEG-2 TP temporarily stores the output of the demodulator 112 and analyzes the TS header, PSIB handler 122 if the output of the PSI / PSIP table 112 is an A / V TS packet for real time or an NRT TS packet, and outputs it to the demultiplexer 123 if the output is a PSI / PSIP table TS packet.

상기 PSI/PSIP 핸들러(122)는 PSI/PSIP 섹션 버퍼와 PSI/PSIP 파서로 구성되며, 상기 MPEG-2 TP 핸들러(121)에서 출력되는 TS 패킷을 일시 저장한 후 테이블 식별자 등을 참조하여 상기 TS 패킷의 페이로드에 포함된 PSI/PSIP 섹션 데이터로부터 해당 테이블을 복원하여 파싱한다. 이때 하나의 테이블이 하나의 섹션으로 구성되는지 복수개의 섹션으로 구성되는지는 해당 섹션 내 table_id 필드, section_number 필드, last_section_number 필드 등을 통해 알 수 있다. 그리고 동일한 테이블 식별자를 갖는 섹션들을 모으면 해당하는 테이블을 완성할 수 있다. 예를 들어, VCT에 할당된 테이블 식별자를 갖는 섹션들을 모으면 VCT를 완성할 수 있다. 그리고 상기 파싱된 각 테이블의 정보는 서비스 매니저(160)에 의해 수집되어 제1 저장부(180)에 저장한다. 본 발명에 따른 VCT, PAT, PMT, DST 등의 테이블 정보가 상기 과정을 거쳐 제1 저장부(180)에 저장된다. 상기 서비스 매니저(160)는 상기 테이블 정보를 서비스 맵 및 가이드 데이터 형태로 상기 제1 저장부(180)에 저장한다. The PSI / PSIP handler 122 is composed of a PSI / PSIP section buffer and a PSI / PSIP parser. The PSI / PSIP handler 122 temporarily stores a TS packet output from the MPEG-2 TP handler 121, And restores and parses the corresponding table from the PSI / PSIP section data included in the payload of the packet. At this time, whether a table is composed of one section or a plurality of sections can be known through a table_id field, a section_number field, a last_section_number field and the like in the corresponding section. And if you collect the sections with the same table identifier, you can complete the corresponding table. For example, collecting sections with table identifiers assigned to the VCT can complete the VCT. The information of each parsed table is collected by the service manager 160 and stored in the first storage unit 180. Table information such as VCT, PAT, PMT, and DST according to the present invention is stored in the first storage unit 180 through the above process. The service manager 160 stores the table information in the first storage unit 180 in the form of a service map and guide data.

상기 역다중화기(123)는 입력되는 TS 패킷이 리얼 타임의 A/V TS 패킷이면 오디오 TS 패킷과 비디오 TS 패킷으로 분리한 후 PES 디코더(131)로 출력하고, NRT TS 패킷이면 DSM-CC 핸들러(135)로 출력한다. 또한 상기 역다중화기(123)는 PCR(Program Clock Reference)가 포함된 TS 패킷이면 PCR 핸들러(133)로 출력하고, CA(Conditional Access) 정보가 포함된 TS 패킷이면 CAS(139)로 출력한다. 상기 NRT TS 패킷은 NRT 서비스 데이터를 포함하는 TS 패킷과 NRT 서비스 시그널링 채널을 포함하는 TS 패킷으로 구분된다. 상기 NRT 서비스 데이타의 TS 패킷에는 상기 NRT 서비스를 식별하기 위하여 유니크한 PID가 할당되며, 상기 NRT 서비스 시그널링 채널을 포함하는 TS 패킷의 PID는 DST와 PMT를 이용하여 추출한다.If the inputted TS packet is an A / V TS packet, the demultiplexer 123 separates the inputted TS packet into an audio TS packet and a video TS packet and outputs the audio TS packet and the video TS packet to the PES decoder 131. If the input TS packet is an NRT TS packet, 135). The demultiplexer 123 outputs the TS packet to the PCR handler 133 if the TS packet includes a PCR (Program Clock Reference), and outputs the TS packet to the CAS 139 if the TS packet contains CA (Conditional Access) information. The NRT TS packet is divided into a TS packet including NRT service data and a TS packet including an NRT service signaling channel. A unique PID is assigned to the TS packet of the NRT service data to identify the NRT service, and the PID of the TS packet including the NRT service signaling channel is extracted using DST and PMT.

상기 역다중화기(123)는 입력되는 TS 패킷의 페이로드가 스크램블되어 있으면, 디스크램블러(124)로 출력하고, 상기 디스크램블러(124)는 상기 CAS(139)로부터 디스크램블에 필요한 정보(예, 스크램블에 이용된 제어 단어 등)를 입력받아 상기 TS 패킷에 대해 디스크램블을 수행한다. The demultiplexer 123 outputs the TS packet payload to the descrambler 124 if the payload of the TS packet is scrambled and the descrambler 124 extracts information necessary for descrambling from the CAS 139 And the like), and performs descrambling on the TS packet.

상기 역다중화기(123)는 일시 녹화, 예약 녹화, 타임시프트 중 어느 하나의 요청에 의해 입력되는 리얼 타임의 A/V 패킷을 제2 저장부(125)에 저장한다. 상기 제2 저장부(125)는 대용량 저장 매체로서, 일 예로 HDD 등이 될 수 있다. 상기 제2 저장부(125)에서의 다운로드(즉, 저장) 및 업로드(즉, 재생)는 PVR 매니저(170)의 제어에 의해 이루어진다.The demultiplexer 123 stores real-time A / V packets, which are input at one of the temporary recording, the scheduled recording, and the time shift, in the second storage unit 125. The second storage unit 125 is a mass storage medium, and may be an HDD or the like. The download (i.e., storage) and upload (i.e., playback) in the second storage unit 125 are performed under the control of the PVR manager 170.

상기 역다중화기(123)는 재생 요청에 따라 상기 제2 저장부(125)로부터 업로드된 A/V TS 패킷으로부터 오디오 TS 패킷과 비디오 TS 패킷으로 분리하여 PES 디코더(131)로 출력한다. The demultiplexer 123 separates audio TS packets and video TS packets from the A / V TS packets uploaded from the second storage unit 125 according to a reproduction request, and outputs the separated audio TS packets and video TS packets to the PES decoder 131.

상기 역다중화기(123)는 전술한 처리를 위해 서비스 매니저(160) 또는/및 PVR(Personal Vedeo Recorder) 매니저(170)의 제어를 받는다.The demultiplexer 123 is under the control of the service manager 160 and / or the personal video recorder (PVR) manager 170 for the above-described processing.

즉, 상기 서비스 매니저(160)는 VCT 내 service_type 필드 값이 NRT 서비스가 전송됨을 지시하면, 상기 VCT의 가상 채널 루프에 포함되어 수신되는 도 7과 같은 NRT 서비스 디스크립터(NRT_service_descriptor())로부터 각 NRT 서비스의 식별 정보를 추출하여 저장하고, 상기 VCT의 service location descriptor(또는 PMT의 ES loop)로부터 DST의 PID를 추출하여 DST를 수신한다. That is, when the service_type field value in the VCT indicates that the NRT service is transmitted, the service manager 160 extracts the NRT service descriptor () from the NRT service descriptor (NRT_service_descriptor ()) shown in FIG. 7 received in the virtual channel loop of the VCT And extracts the PID of the DST from the service location descriptor of the VCT (or the ES loop of the PMT) to receive the DST.

그리고, 상기 수신된 DST로부터 NRT 서비스를 식별하고, 식별된 NRT 서비스를 수신하기 위해 상기 NRT 서비스 시그널링 채널을 포함하는 MPEG-2 TS 패킷의 PID를 DST와 PMT를 이용하여 추출한다. 상기 추출된 PID는 역다중화기(123)로 출력한다. 상기 역다중화기(123)는 상기 서비스 매니저(160)에서 출력하는 PID에 해당하는 MPEG-2 TS 패킷들을 어드레서블 섹션 핸들러(135)로 출력한다. Then, the NRT service is identified from the received DST and the PID of the MPEG-2 TS packet including the NRT service signaling channel is extracted using DST and PMT to receive the identified NRT service. The extracted PID is output to the demultiplexer 123. The demultiplexer 123 outputs the MPEG-2 TS packets corresponding to the PID output from the service manager 160 to the addressable section handler 135.

상기 PCR은 A/V 디코더(141)에서 오디오 ES 및 비디오 ES의 타임 동기 등을 위해 사용되는 시간 기준값이다. 상기 PCR 핸들러(133)는 입력되는 TS 패킷의 페이로드에 포함된 PCR을 복원하여 STC 핸들러(134)로 출력한다. 상기 STC 핸들러(134)는 상기 PCR로부터 시스템의 기준 클럭이 되는 STC(System Time Clock)를 복원하여 A/V 디코더(141)로 출력한다.The PCR is a time reference value used for time synchronization of the audio ES and the video ES in the A / V decoder 141. The PCR handler 133 restores the PCR included in the payload of the inputted TS packet and outputs it to the STC handler 134. The STC handler 134 restores the STC (System Time Clock) which is a reference clock of the system from the PCR and outputs the STC to the A / V decoder 141.

상기 PES 디코더(131)는 PES 버퍼와 PES 핸들러로 구성되며, 오디오 TS 패킷과 비디오 TS 패킷을 일시 저장한 후 각 TS 패킷으로부터 TS 헤더를 제거하여 오디오 PES와 비디오 PES로 복원한다. 상기 복원된 오디오 PES와 비디오 PES는 ES 디코더(132)로 출력된다. 상기 ES 디코더(132)는 ES 버퍼와 ES 핸들러로 구성되며, 오디오 PES와 비디오 PES로부터 각 PES 헤더를 제거하여 순수한 데이타인 오디오 ES와 비디오 ES로 복원한다. 상기 복원된 오디오 ES와 비디오 ES는 상기 A/V 디코더(141)로 출력된다. The PES decoder 131 is composed of a PES buffer and a PES handler. The PES decoder 131 temporarily stores audio TS packets and video TS packets, and then removes TS headers from each TS packet to restore audio PES and video PES. The restored audio PES and video PES are output to the ES decoder 132. The ES decoder 132 includes an ES buffer and an ES handler. The ES decoder 132 removes each PES header from the audio PES and the video PES, and restores the audio ES and the video ES, which are pure data. The restored audio ES and video ES are output to the A / V decoder 141.

상기 A/V 디코더(141)는 각각의 디코딩 알고리즘으로 상기 오디오 ES와 비디오 ES를 디코딩하여 압축 이전의 상태로 복원한 후 프리젠테이션 매니저(240)로 출력한다. 이때 상기 STC에 따라 오디오 ES와 비디오 ES의 디코딩시 타임 동기가 이루어진다. 일 예로, 오디오 디코딩 알고리즘은 AC-3 디코딩 알고리즘, MPEG 2 audio 디코딩 알고리즘, MPEG 4 audio 디코딩 알고리즘, AAC 디코딩 알고리즘, AAC+ 디코딩 알고리즘, HE AAC 디코딩 알고리즘, AAC SBR 디코딩 알고리즘, MPEG surround 디코딩 알고리즘, BSAC 디코딩 알고리즘중 적어도 하나를 적용하고, 비디오 디코딩 알고리즘은 MPEG 2 video 디코딩 알고리즘, MPEG 4 video 디코딩 알고리즘, H.264 디코딩 알고리즘, SVC 디코딩 알고리즘, VC-1 디코딩 알고리즘 중 적어도 하나를 적용할 수 있다.The A / V decoder 141 decodes the audio ES and the video ES using respective decoding algorithms, restores the audio ES and the video ES to their pre-compression state, and outputs the decoded audio ES and the video ES to the presentation manager 240. At this time, time synchronization is performed when decoding the audio ES and the video ES according to the STC. For example, the audio decoding algorithm may be an audio decoding algorithm such as an AC-3 decoding algorithm, an MPEG 2 audio decoding algorithm, an MPEG 4 audio decoding algorithm, an AAC decoding algorithm, an AAC + decoding algorithm, a HE AAC decoding algorithm, an AAC SBR decoding algorithm, And the video decoding algorithm may apply at least one of an MPEG 2 video decoding algorithm, an MPEG 4 video decoding algorithm, an H.264 decoding algorithm, an SVC decoding algorithm, and a VC-1 decoding algorithm.

상기 CAS(139)는 CA 스트림 버퍼와 CA 스트림 핸들러로 구성되며, 상기 MPEG-2 TP 핸들러(121)에서 출력되는 TS 패킷 또는 UDP 데이터그램 핸들러(138)에서 복원되어 출력되는 서비스 보호 데이터를 일시 저장한 후 상기 저장된 TS 패킷 또는 서비스 보호 데이터로부터 디스크램블에 필요한 정보(예를 들어, 스크램블에 사용된 제어 단어 등)를 복원한다. 즉, 상기 TS 패킷의 페이로드에 포함된 EMM(Entitlement Management Message), ECM(Entitlement Control Message) 등을 추출하고, 추출된 EMM, ECM 등을 분석하여 디스크램블에 필요한 정보를 획득한다. 상기 ECM은 스크램블에 사용된 제어 단어(CW)를 포함할 수 있다. 이때 상기 제어 단어는 인증키로 암호화되어 있을 수 있다. 상기 EMM은 해당 데이터의 인증키와 자격 정보를 포함할 수 있다. 상기 CAS(139)에서 획득한 디스크램블에 필요한 정보는 디스크램블러(124,137)로 출력된다. The CAS 139 is composed of a CA stream buffer and a CA stream handler. The CAS 139 temporarily stores service protection data restored and output from a TS packet or UDP datagram handler 138 output from the MPEG-2 TP handler 121 (E.g., a control word used for scrambling) necessary for descrambling from the stored TS packet or service protection data. That is, an EMM (Entitlement Management Message), an ECM (Entitlement Control Message), and the like included in the payload of the TS packet are extracted, and the extracted EMM and ECM are analyzed to obtain information necessary for descrambling. The ECM may include a control word (CW) used for scrambling. At this time, the control word may be encrypted with an authentication key. The EMM may include the authentication key and the qualification information of the corresponding data. Information required for descrambling acquired by the CAS 139 is output to the descramblers 124 and 137.

상기 DSM-CC 섹션 핸들러(135)는 DSM-CC 섹션 버퍼와 DSM-CC 섹션 파서로 구성되며, 상기 역다중화기(123)에서 출력되는 TS 패킷을 일시 저장한 후 상기 TS 패킷의 페이로드에 포함된 어드레서블 섹션을 복원하고, 상기 어드레서블 섹션의 헤더와 CRC 첵섬을 제거하여 IP 데이터그램을 복원한 후 IP 데이터그램 핸들러(136)로 출력한다. 상기 IP 데이터그램 핸들러(136)는 IP 데이터그램 버퍼와 IP 데이터그램 파서로 구성되며, 상기 DSM-CC 섹션 핸들러(135)로부터 전달받은 IP 데이터그램을 버퍼링한 후, 버퍼링된 IP 데이터그램의 헤더를 추출하고 분석하여 상기 IP 데이터그램의 페이로드로부터 UDP 데이터그램을 복원한 후 UDP 데이터그램 핸들러(138)로 출력한다. The DSM-CC section handler 135 comprises a DSM-CC section buffer and a DSM-CC section parser. The DSM-CC section handler 135 temporarily stores a TS packet output from the demultiplexer 123, Restores the addressable section, removes the header of the addressable section and the CRC checksum, restores the IP datagram, and outputs the recovered IP datagram to the IP datagram handler 136. The IP datagram handler 136 comprises an IP datagram buffer and an IP datagram parser. The IP datagram handler 136 buffers the IP datagram received from the DSM-CC section handler 135, and then stores the header of the buffered IP datagram Extracts and analyzes the UDP datagram, restores the UDP datagram from the payload of the IP datagram, and outputs the UDP datagram to the UDP datagram handler 138.

이때 상기 IP 데이터그램이 스크램블되어 있다면, 상기 스크램블된 UDP 데이터그램은 디스크램블러(137)에서 디스크램블된 후 UDP 데이터그램 핸들러(138)로 출력된다. 일 예로, 상기 디스크램블러(137)는 상기 CAS(139)로부터 디스크램블에 필요한 정보(예, 스크램블에 이용된 제어 단어 등)를 입력받아 상기 UDP 데이터그램에 대해 디스크램블을 수행한 후 UDP 데이터그램 핸들러(138)로 출력한다. If the IP datagram is scrambled, the scrambled UDP datagram is descrambled by the descrambler 137 and output to the UDP datagram handler 138. For example, the descrambler 137 receives information necessary for descrambling (e.g., a control word used for scrambling) from the CAS 139, descrambles the UDP datagram, And outputs it to the handler 138.

상기 UDP 데이터그램 핸들러(138)는 UDP 데이터그램 버퍼와 UDP 데이터그램 파서로 구성되며, 상기 IP 데이터그램 핸들러(136) 또는 디스크램블러(137)로부터 출력되는 UDP 데이터그램을 버퍼링한 후, 버퍼링된 UDP 데이터그램의 헤더를 추출하고 분석하여 상기 UDP 데이터그램의 페이로드에 포함된 데이터를 복원한다. 이때 복원된 데이터가 서비스 프로텍션 데이터이면 CAS(139)로 출력하고, NRT 서비스 시그널링 데이터이면 서비스 시그널링 섹션 핸들러(138-1)로 출력하며, NRT 서비스 데이터이면 ALC/LCT 스트림 핸들러(151)로 출력한다. The UDP datagram handler 138 comprises a UDP datagram buffer and a UDP datagram parser. The UDP datagram handler 138 buffers a UDP datagram output from the IP datagram handler 136 or the descrambler 137, Extracts and analyzes the header of the datagram and restores the data contained in the payload of the UDP datagram. If the restored data is the service protection data, the restored data is output to the CAS 139. If the restored data is the NRT service signaling data, the service signaling section handler 138-1 outputs the restored data to the CAS 139. If the restored data is the NRT service data, .

즉, 상기 NRT 서비스 시그널링 채널을 전송하는 IP 데이터그램의 접속 정보는 well-known 데스티네이션(destination) IP 어드레스와 well-known 데스티네이션 (destination) UDP 포트 번호인 것을 일 실시예로 한다. That is, the connection information of the IP datagram transmitting the NRT service signaling channel is a well-known destination IP address and a well-known destination UDP port number.

따라서, 상기 IP 데이터그램 핸들러(136)와 UDP 데이터그램 핸들러(138)는 well-known 데스티네이션 IP 멀티캐스트 어드레스와 well-known 데스티네이션 UDP 포트 번호를 가지면서, NRT 서비스 시그널링 채널을 전송하는 IP 멀티캐스트 스트림 즉, NRT 서비스 시그널링 데이터를 추출하여 서비스 시그널링 섹션 핸들러(138-1)로 출력한다. Therefore, the IP datagram handler 136 and the UDP datagram handler 138 are connected to each other via an IP multicast address, which has a well-known destination IP multicast address and a well-known destination UDP port number, Extracts the cast stream, that is, the NRT service signaling data, and outputs it to the service signaling section handler 138-1.

그리고, 상기 서비스 시그널링 섹션 핸들러(138-1)는 서비스 시그널링 섹션 버퍼와 서비스 시그널링 섹션 파서로 구성되며, 상기 NRT 서비스 시그널링 데이터로부터 도 9 또는 도 14, 도 15와 같은 NST를 복원하고 파싱하여 서비스 매니저(160)로 출력한다. 상기 NST를 파싱하면 NRT 서비스를 구성하는 콘텐트/파일들을 전송하는 FLUTE 세션의 접속 정보와 상기 NRT 서비스를 렌더링하는데 필요한 시그널링 정보를 추출할 수 있다. 예를 들어, 상기 NST로부터 각 FLUTE 세션으로 전송되는 NRT 서비스의 콘텐트/파일들의 렌더링(rendering)에 필수적인 정보를 추출할 수 있다. 상기 NRT 서비스의 콘텐트/파일들의 렌더링(rendering)에 필수적인 정보는 콘테이너 정보가 될 수도 있고, 인코딩 정보가 될 수도 있으며, 미디어 오브젝트의 디코딩 파라미터가 될 수도 있다. The service signaling section handler 138-1 comprises a service signaling section buffer and a service signaling section parser. The service signaling section handler 138-1 restores and parses the NST as shown in FIG. 9, FIG. 14, and FIG. 15 from the NRT service signaling data, (160). When the NST is parsed, connection information of a FLUTE session for transmitting content / files constituting an NRT service and signaling information necessary for rendering the NRT service can be extracted. For example, it is possible to extract information necessary for rendering the content / files of the NRT service transmitted from the NST to each FLUTE session. The information necessary for rendering the content / files of the NRT service may be container information, encoding information, or a decoding parameter of the media object.

상기 NST로부터 파싱된 정보는 서비스 매니저(160)에 의해 수집되어 제1 저장부(180)에 저장된다. 상기 서비스 매니저(160)는 상기 NST에서 추출된 정보를 서비스 맵 및 가이드 데이터 형태로 상기 제1 저장부(180)에 저장한다. 다른 실시예로, 상기 서비스 매니저(160)의 역할을 NRT 서비스 매니저(210)에서 수행할 수도 있다. 즉, 상기 NST로부터 파싱된 정보는 NRT 서비스 매니저(210)에 의해 수집되어 제1 저장부(180)에 저장될 수도 있다. The information parsed from the NST is collected by the service manager 160 and stored in the first storage unit 180. The service manager 160 stores the information extracted from the NST in the first storage unit 180 in the form of a service map and guide data. In another embodiment, the role of the service manager 160 may be performed by the NRT service manager 210. That is, the information parsed from the NST may be collected by the NRT service manager 210 and stored in the first storage unit 180.

상기 ALC/LCT 스트림 핸들러(151)는 ALC/LCT 스트림 버퍼와 ALC/LCT 스트림 파서로 구성되며, 상기 UDP 데이터그램 핸들러(138)로부터 출력되는 ALC/LCT 구조의 데이터를 버퍼링한 후, 버퍼링된 데이터로부터 ALC/LCT 세션의 헤더 및 헤더 확장(header extension)을 분석한다. 상기 ALC/LCT 세션의 헤더 및 헤더 확장을 분석한 결과, 상기 ALC/LCT 세션으로 전송되는 데이터가 XML 구조이면 XML 파서(153)로 출력하고, 파일 구조이면 파일 재건(File Reconstruction) 버퍼(152)에 일시 저장한 후 파일 디코더(157)로 출력하거나, 제3 저장부(156)에 저장한다. 상기 ALC/LCT 스트림 핸들러(151)는 상기 ALC/LCT 세션으로 전송되는 데이터가 NRT 서비스를 위한 데이터이면 NRT 서비스 매니저(210)의 제어를 받는다. 이때 상기 ALC/LCT 세션으로 전송되는 데이터가 압축되어 있으면, 디콤프레서(155)에서 해제된 후 XML 파서(153), 파일 디코더(157), 제3 저장부(156) 중 적어도 하나로 출력된다. The ALC / LCT stream handler 151 comprises an ALC / LCT stream buffer and an ALC / LCT stream parser. The ALC / LCT stream handler 151 buffers data of the ALC / LCT structure output from the UDP datagram handler 138, And analyzes the header and header extension of the ALC / LCT session. If the data transmitted in the ALC / LCT session is an XML structure as a result of analyzing the header and the header extension of the ALC / LCT session, the XML parser 153 outputs the data to the XML parser 153. If the file structure is a file reconstruction buffer 152, And then outputs it to the file decoder 157 or stores it in the third storage unit 156. [ The ALC / LCT stream handler 151 is under the control of the NRT service manager 210 if the data transmitted in the ALC / LCT session is data for an NRT service. At this time, if the data transmitted in the ALC / LCT session is compressed, it is released from the decompressor 155 and then output to at least one of the XML parser 153, the file decoder 157, and the third storage unit 156.

상기 XML 파서(153)는 상기 ALC/LCT session을 통하여 전송되는 XML 데이터를 분석하고, 분석된 데이터가 파일 기반 서비스를 위한 데이터이면 FDT 핸들러(154)로 출력하고, 서비스 가이드를 위한 데이터이면 SG 핸들러(190)로 출력한다. The XML parser 153 analyzes the XML data transmitted through the ALC / LCT session and outputs the XML data to the FDT handler 154 if the analyzed data is data for a file-based service. If the analyzed data is data for a service guide, (190).

상기 FDT 핸들러(154)는 ALC/LCT session을 통하여 FLUTE 프로토콜의 파일 디스크립션 테이블(File Description Table)을 분석하고 처리한다. 상기 FDT 핸들러(154)는 수신된 파일이 NRT 서비스를 위한 파일이면 NRT 서비스 매니저(210)의 제어를 받는다.The FDT handler 154 analyzes and processes a file description table of the FLUTE protocol through an ALC / LCT session. The FDT handler 154 is under the control of the NRT service manager 210 when the received file is a file for NRT service.

상기 SG 핸들러(190)는 XML 구조로 전송되는 서비스 가이드를 위한 데이터를 수집하고 분석하여 EPG 매니저(200)로 출력한다. The SG handler 190 collects and analyzes data for a service guide transmitted in an XML structure, and outputs the data to the EPG manager 200.

상기 파일 디코더(157)는 상기 파일 재건 버퍼(152)로부터 출력되는 파일 또는 디콤프레서(155)로부터 출력되는 파일 또는 제3 저장부(156)로부터 업로드된 파일을 기 설정된 알고리즘으로 디코딩하여 미들웨어 엔진(230)으로 출력하거나, A/V 디코더(141)로 출력한다. The file decoder 157 decodes a file output from the file reconstruction buffer 152 or a file output from the decompressor 155 or a file uploaded from the third storage unit 156 using a predetermined algorithm, 230, or outputs it to the A / V decoder 141.

상기 미들웨어 엔진(230)은 파일 구조의 데이터 즉, 어플리케이션을 해석하여 실행시킨다. 그리고 상기 어플리케이션을 프리젠테이션 매니저(240)를 통해 화면이나 스피커와 같은 출력 장치로 출력할 수도 있다. 상기 미들웨어 엔진(230)은 자바(JAVA) 기반의 미들웨어 엔진인 것을 일 실시예로 한다.The middleware engine 230 interprets and executes the data of the file structure, that is, the application. The application may be output to an output device such as a screen or a speaker through the presentation manager 240. The middleware engine 230 is a JAVA-based middleware engine.

상기 EPG 매니저(200)는 유저의 입력에 따라 SG 핸들러(190)로부터 서비스 가이드 데이터를 입력받아 디스플레이 포맷으로 변환한 후 프리젠테이션 매니저(240)로 출력한다. 상기 어플리케이션 매니저(220)는 상기 파일 등의 형태로 수신되는 어플리케이션 데이터의 처리에 관한 전반적인 관리를 수행한다. The EPG manager 200 receives service guide data from the SG handler 190 according to an input from the user, converts the service guide data into a display format, and outputs the display format to the presentation manager 240. The application manager 220 performs overall management of processing of application data received in the form of a file or the like.

상기 서비스 매니저(160)는 PSI/PSIP 테이블 데이터 또는 NRT 서비스 시그널링 채널로 전송되는 NRT 서비스 시그널링 데이터를 수집하고 분석하여 서비스 맵을 만든 후 제1 저장부(125)에 저장한다. 또한 상기 서비스 매니저(160)는 사용자가 원하는 NRT 서비스에 대한 접속 정보를 제어하며, 튜너(111), 복조기(112), IP 데이터그램 핸들러(136) 등에 대한 제어를 수행한다. The service manager 160 collects and analyzes the PSI / PSIP table data or the NRT service signaling data transmitted through the NRT service signaling channel, creates a service map, and stores the service map in the first storage unit 125. The service manager 160 controls access information for a desired NRT service and controls the tuner 111, the demodulator 112, the IP datagram handler 136, and the like.

상기 오퍼레이션 제어기(100)는 UI 매니저(250)를 통해 입력되는 유저의 명령에 따라 상기 서비스 매니저(160), PVR 매니저(170), EPG 매니저(200), NRT 서비스 매니저(210), 어플리케이션 매니저(220), 프리젠테이션 매니저(240) 중 적어도 하나를 제어하여, 상기 유저의 명령에 따른 기능이 수행되도록 한다. The operation controller 100 controls the operation of the service manager 160, the PVR manager 170, the EPG manager 200, the NRT service manager 210, the application manager 220, and the presentation manager 240 to perform functions according to the commands of the user.

상기 NRT 서비스 매니저(210)는 IP 계층 상에서 FLUTE 세션을 통하여 콘텐트/파일 형태로 전송되는 NRT 서비스에 대한 전반적인 관리를 수행한다. The NRT service manager 210 performs overall management of an NRT service transmitted in a content / file format through a FLUTE session on an IP layer.

상기 UI 매니저(250)는 UI를 통해 유저의 입력을 오퍼레이션 제어기(100)로 전달한다. The UI manager 250 transmits the user's input to the operation controller 100 through the UI.

상기 프리젠테이션 매니저(240)는 A/V 디코더(141)에서 출력되는 오디오 및 비디오 데이터, 미들웨어 엔진(230)에서 출력되는 파일 데이터, EPG 매니저(210)에서 출력되는 서비스 가이드 데이터 중 적어도 하나를 스피커 및/또는 화면을 통해 유저에게 제공한다. The presentation manager 240 transmits at least one of audio and video data output from the A / V decoder 141, file data output from the middleware engine 230, and service guide data output from the EPG manager 210, And / or a screen.

한편, 상기 서비스 시그널링 섹션 핸들러(138-1), 서비스 매니저(160), NRT 서비스 매니저(210) 중 어느 하나는 상기 도 9의 NST의 FLUTE 세션 루프(또는 도 14, 도 15의 NST의 콤포넌트 루프)로부터 상기 NRT 서비스를 구성하는 콘텐트/파일을 전송하는 FLUTE 세션에 대한 IP 접속 정보를 획득한다. 또한, 상기 FLUTE 세션 루프(또는 도 14, 도 15의 NST의 콤포넌트 루프)에 NRT_media_object_association_descriptor()가 포함되어 수신되면, 상기 NRT_media_object_association_descriptor()로부터 상기 FLUTE 세션과 관련된 미디어 오브젝트 관련 정보를 추출한다. 상기 미디어 오브젝트 관련 정보는 MIME 타입의 텍스트 형태로 제공되는 것을 일 실시예로 한다. 이때 상기 미디어 오브젝트 관련 정보는 NRT_media_object_association_descriptor()에 텍스트 형태로 직접 서술되거나, 또는 스트림이나 파일에 텍스트 형태로 포함되어 제공된다. 상기 미디어 오브젝트 관련 정보가 스트림이나 파일 형태로 전송될 경우, 상기 NRT_media_object_association_descriptor()는 상기 스트림 또는 파일을 수신하기 위한 접속 정보를 제공한다. 또한 상기 미디어 오브젝트 관련 정보가 파일 형태로 전송될 경우, 상기 NRT_media_object_association_descriptor()는 상기 파일을 전송하는 FLUTE 세션을 수신하는데 필요한 파라미터들을 시그널링한다. 상기 미디어 오브젝트 관련 정보는 NRT 서비스를 구성하는 콘텐트/파일들의 렌더링(rendering)에 필수적인 콘테이너 정보, 인코딩 정보, 미디어 오브젝트의 디코딩 파라미터 등을 포함한다. 또한 상기 도 9의 NST의 FLUTE 세션 루프에 포함되어 수신되는 NRT_FLUTE_File_delivery_descriptor()로부터 FLUTE 레벨 접속 정보를 획득한다. 또한 상기 도 14, 도 15의 NST의 콤포넌트 루프에 포함되어 수신되는 component_descriptor()로부터 FLUTE 레벨 접속 정보를 획득한다. One of the service signaling section handler 138-1, the service manager 160 and the NRT service manager 210 may be a FLUTE session loop of the NST of FIG. 9 (or a component loop of the NST of FIG. 14, ) To obtain the IP connection information for the FLUTE session for transmitting the content / file constituting the NRT service. Also, when NRT_media_object_association_descriptor () is included in the FLUTE session loop (or the component loop of the NST in FIGS. 14 and 15), media object related information related to the FLUTE session is extracted from the NRT_media_object_association_descriptor (). The media object association information is provided in a text form of a MIME type. At this time, the media object related information is directly described in a text form in NRT_media_object_association_descriptor (), or in a form of text in a stream or a file. When the media object related information is transmitted in the form of a stream or a file, the NRT_media_object_association_descriptor () provides access information for receiving the stream or file. When the media object related information is transmitted in a file format, the NRT_media_object_association_descriptor () signals parameters necessary to receive a FLUTE session for transmitting the file. The media object association information includes container information, encoding information, decoding parameters of the media object, and the like, which are essential for rendering the content / files constituting the NRT service. Also, FLUTE level access information is obtained from the NRT_FLUTE_File_delivery_descriptor () included in the FLUTE session loop of the NST of FIG. Also, the FLUTE level access information is obtained from the component_descriptor () included in the component loop of the NST in FIGS. 14 and 15.

그러면, 상기 ALC/LCT 스트림 핸들러(151)와 파일 디코더(157)에서는 상기 획득한 FLUTE 레벨 접속 정보를 이용하여 FLUTE 파일 딜리버리 세션에 접속하여, 상기 세션에 속한 파일들을 모은다. 상기 파일들을 모으면 하나의 NRT 서비스가 구성된다. 이러한 NRT 서비스는 제3 저장부(156)에 저장하거나, 미들웨어 엔진(230)이나 A/V 디코더(141)로 출력하여 디스플레이 장치에 표시되도록 한다.Then, the ALC / LCT stream handler 151 and the file decoder 157 access the FLUTE file delivery session using the obtained FLUTE level access information, and collect files belonging to the session. When the files are collected, one NRT service is configured. The NRT service may be stored in the third storage unit 156 or output to the middleware engine 230 or the A / V decoder 141 to be displayed on the display device.

상기 제3 저장부(156)는 NRT 서비스 데이터와 같은 파일을 저장하는 저장 매체로서, 제2 저장부(125)와 공유하여 사용할 수도 있고, 별도로 사용할 수도 있다. The third storage unit 156 is a storage medium for storing a file such as NRT service data and may be shared with the second storage unit 125 or used separately.

MobileMobile NRTNRT 서비스 service

본 발명에 따른 모바일 NRT 서비스와 관련되어 사용되는 용어 중 메인 서비스 데이터는 고정형 수신 시스템에서 수신할 수 있는 데이터로서, 오디오/비디오(A/V) 데이터를 포함할 수 있다. 즉, 상기 메인 서비스 데이터에는 HD(High Definition) 또는 SD(Standard Definition)급의 A/V 데이터가 포함될 수 있으며, 데이터 방송을 위한 각종 데이터가 포함될 수도 있다. 그리고 기지(Known) 데이터는 송/수신측의 약속에 의해 미리 알고 있는 데이터이다. Among the terms used in connection with the mobile NRT service according to the present invention, the main service data may include audio / video (A / V) data as data that can be received by the fixed receiving system. That is, the main service data may include HD (High Definition) or SD (Standard Definition) A / V data, and various data for data broadcasting may be included. The known data is previously known data by the promise of the transmitting / receiving side.

본 발명에서 사용되는 용어 중 M/H(또는 MH)는 모바일(Mobile)와 핸드헬드(Handheld) 각각의 첫 글자이며, 고정형에 반대되는 개념이다. 그리고 M/H 서비스 데이터는 모바일(Mobile) 서비스 데이터, 핸드헬드(Handheld) 서비스 데이터 중 적어도 하나를 포함하며, 설명의 편의를 위해 본 발명에서는 M/H 서비스 데이터를 모바일 서비스 데이터라 하기도 한다. 이때 상기 모바일 서비스 데이터에는 M/H 서비스 데이터뿐만 아니라, 이동이나 휴대를 의미하는 서비스 데이터는 어느 것이나 포함될 수 있으며, 따라서 상기 모바일 서비스 데이터는 상기 M/H 서비스 데이터로 제한되지 않을 것이다. Among the terms used in the present invention, M / H (or MH) is the first letter of each of a mobile and a handheld, and is a concept opposite to a fixed type. The M / H service data includes at least one of mobile service data and handheld service data. For convenience of explanation, the M / H service data is also referred to as mobile service data. At this time, the mobile service data may include not only M / H service data but also service data indicating movement or carrying, so that the mobile service data will not be limited to the M / H service data.

상기와 같이 정의된 모바일 서비스 데이터는 프로그램 실행 파일, 주식 정보 등과 같이 정보를 갖는 데이터일 수도 있고, A/V 데이터일 수도 있다. 특히 상기 모바일 서비스 데이터는 휴대용이나 이동형 단말기(또는 방송 수신기)를 위한 서비스 데이터로서 메인 서비스 데이터에 비해서 작은 해상도와 작은 데이터 율을 가지는 A/V 데이터가 될 수도 있다. 예를 들어, 기존 메인 서비스를 위해 사용하는 A/V 코덱(Codec)이 MPEG-2 코덱(Codec)이라면, 모바일 서비스를 위한 A/V 코덱(Codec)으로는 보다 영상 압축 효율이 좋은 MPEG-4 AVC(Advanced Video Coding), SVC(Scalable Video Coding) 등의 방식이 사용될 수도 있다. 또한 상기 모바일 서비스 데이터로 어떠한 종류의 데이터라도 전송될 수 있다. 일례로 실시간으로 교통 정보를 방송하기 위한 TPEG(Transport Protocol Expert Group) 데이터가 모바일 서비스 데이터로 전송될 수 있다. The mobile service data defined above may be data having information such as a program executable file, stock information, etc., or A / V data. In particular, the mobile service data may be service data for a portable or mobile terminal (or broadcast receiver), and may be A / V data having a smaller resolution and smaller data rate than the main service data. For example, if the A / V codec used for the existing main service is an MPEG-2 codec, the A / V codec for mobile service may be MPEG-4 Advanced Video Coding (AVC), and Scalable Video Coding (SVC). Also, any kind of data can be transmitted with the mobile service data. For example, TPEG (Transport Protocol Expert Group) data for broadcasting traffic information in real time can be transmitted as mobile service data.

또한 상기 모바일 서비스 데이터를 이용한 데이터 서비스로는 날씨 서비스, 교통 서비스, 증권 서비스, 시청자 참여 퀴즈 프로그램, 실시간 여론 조사, 대화형 교육 방송, 게임 서비스, 드라마의 줄거리, 등장인물, 배경음악, 촬영장소 등에 대한 정보 제공 서비스, 스포츠의 과거 경기 전적, 선수의 프로필 및 성적에 대한 정보 제공 서비스, 상품 정보 및 이에 대한 주문 등이 가능하도록 하는 서비스별, 매체별, 시간별, 또는 주제별로 프로그램에 대한 정보 제공 서비스 등이 될 수 있으며, 본 발명은 이에 한정하지는 않는다.The data service using the mobile service data may include a weather service, a traffic service, a securities service, a viewer participation quiz program, a real-time opinion survey, an interactive education broadcast, a game service, a plot of a drama, Providing information on programs by service, media, hourly, or topic that enables information service for information, information on past competitions of sports, profiles and grades of athletes, and product information and orders Or the like, and the present invention is not limited thereto.

도 24은 모바일 NRT 서비스를 제공하기 위한 프로토콜 스택의 일 예를 보이고 있다. 도 24은 IP 계층과 물리 계층 사이에 적응 계층(Adaption Layer)을 포함시켜, MPEG-2 TS 포맷을 사용하지 않으면서 모바일 서비스 데이터의 IP 데이터그램과 시그널링 정보의 IP 데이터그램을 전송할 수 있도록 하는데 있다.24 shows an example of a protocol stack for providing a mobile NRT service. FIG. 24 illustrates an adaptation layer between an IP layer and a physical layer so that an IP datagram of mobile service data and an IP datagram of signaling information can be transmitted without using the MPEG-2 TS format .

즉, 방송국에서는 도 24에서 파일 전송 프로토콜(File Transfer Protocol) 방식에 따라 NRT 콘텐트/파일들을 패킷화하고, 이를 다시 ALC/LCT(Asynchronous Layered Coding/Layered Coding Transport) 방식에 따라 패킷화한다. 상기 패킷화된 ALC/LCT 데이터는 다시 UDP 방식에 따라 패킷화되며, 상기 패킷화된 ALC/LCT/UDP 데이터는 다시 IP 방식에 따라 패킷화되어 ALC/LCT/UDP/IP 데이터가 된다. 상기 패킷화된 ALC/LCT/UDP/IP 데이터를 본 발명에서는 설명의 편의를 위해 IP 데이터그램이라 한다. 이때 OMA BCAST 서비스 가이드 정보도 상기 NRT 콘텐트/파일과 동일한 과정을 거쳐 IP 데이터그램을 구성할 수 있다.That is, the broadcasting station packetizes the NRT contents / files according to the file transfer protocol in FIG. 24, and packetizes the NRT contents / files according to the ALC / LCT (Asynchronous Layered Coding / Layered Coding Transport) method. The packetized ALC / LCT data is again packetized according to the UDP scheme, and the packetized ALC / LCT / UDP data is again packetized according to the IP scheme to become ALC / LCT / UDP / IP data. The packetized ALC / LCT / UDP / IP data is referred to as an IP datagram in the present invention for convenience of explanation. At this time, the OMA BCAST service guide information can also be configured as an IP datagram through the same process as the NRT content / file.

또한 상기 NRT 콘텐트/파일들을 수신하기 위해 필요한 NRT 서비스 시그널링 정보는 서비스 시그널링 채널을 통해 전송되는데, 상기 서비스 시그널링 채널은 UDP(User Datagram protocol) 방식에 따라 패킷화되고, 상기 패킷화된 UDP 데이터는 다시 IP 방식에 따라 패킷화되어 UDP/IP 데이터가 된다. 상기 UDP/IP 데이터도 본 발명에서는 설명의 편의를 위해 IP 데이터그램이라 한다. 이때 상기 서비스 시그널링 채널은 Well-known IP desination address와 well-known desination UDP port number를 가지는 IP 데이터그램에 인캡슐레이션되어 멀티캐스트(Multicast)되는 것을 일 실시예로 한다. Also, the NRT service signaling information necessary for receiving the NRT contents / files is transmitted through a service signaling channel, which is packetized according to a UDP (User Datagram Protocol) scheme, and the packetized UDP data is re- Packetized into UDP / IP data according to the IP method. The UDP / IP data is also referred to as an IP datagram in the present invention for convenience of explanation. At this time, the service signaling channel is encapsulated in an IP datagram having a well-known IP des- nation address and a well-known des- pination UDP port number, and is multicasted.

그리고, 모바일 서비스를 위한 A/V 스트리밍은 RTP 헤더, UDP 헤더, IP 헤더가 순차적으로 더해져 하나의 IP 데이터그램을 구성한다. The A / V streaming for the mobile service includes an RTP header, a UDP header, and an IP header sequentially to form one IP datagram.

적응 계층에서 상기 NRT 서비스, NRT 서비스 시그널링 채널, 모바일 서비스 데이터의 IP 데이터그램들을 모아 RS 프레임을 생성한다. 상기 RS 프레임에 OMA BCAST 서비스 가이드의 IP 데이터그램도 포함될 수 있다. The adaptation layer collects the IP datagrams of the NRT service, the NRT service signaling channel, and the mobile service data to generate an RS frame. An IP datagram of the OMA BCAST service guide may also be included in the RS frame.

상기 RS 프레임에서 컬럼의 길이(즉, 로우의 개수)는 187 바이트로 정해지며, 로우의 길이(즉, 컬럼의 개수)는 N바이트이고, 상기 N은 전송 파라미터(또는 TPC 데이터)와 같은 시그널링 정보에 따라 달라질 수 있다. The length of the column (i.e., the number of rows) in the RS frame is set to 187 bytes. The length of the row (i.e., the number of columns) is N bytes and the N is the signaling information ≪ / RTI >

상기 RS 프레임은 모바일 물리 계층(mobile physical layer)에서 기 정해진 전송 방식 예를 들면, VSB 전송 방식으로 변조되어 수신 시스템으로 전송된다.The RS frame is modulated into a predetermined transmission scheme, for example, a VSB transmission scheme in the mobile physical layer, and is transmitted to the reception system.

한편, 본 발명의 실시 예에 따른 모바일 방송 기술에서 사용하고 있는 데이터 구조는 데이터 그룹 구조와 RS 프레임 구조가 있다. 이를 상술하면 다음과 같다. Meanwhile, the data structure used in the mobile broadcasting technology according to the embodiment of the present invention includes a data group structure and an RS frame structure. This will be described in detail as follows.

도 25는 본 발명에 따른 데이터 그룹의 구조에 대한 일 실시 예를 보인 도면이다.25 is a diagram illustrating a structure of a data group according to an embodiment of the present invention.

도 25에 따른 데이터 구성에서 데이터 그룹을 10개의 M/H 블록(M/H block B1~B10)으로 구분하는 예를 보이고 있다. 그리고 각 M/H 블록은 16 세그먼트의 길이를 갖는 것을 일 실시 예로 한다. 도 25에서 M/H 블록 B1의 앞 5 세그먼트와 M/H 블록 B10 뒤의 5 세그먼트는 일부에 RS 패리티 데이터만 할당하며, 데이터 그룹의 A 영역 내지 D 영역에서 제외하는 것을 일 실시 예로 한다.25 shows an example in which a data group is divided into 10 M / H blocks (M / H blocks B1 to B10). And each M / H block has a length of 16 segments. In FIG. 25, only the RS parity data is allocated to some of the five segments preceding the M / H block B1 and the five segments after the M / H block B10, and the data is excluded from the A region to the D region of the data group.

즉, 하나의 데이터 그룹을 A, B, C, D 영역으로 구분한다고 가정하면, 데이터 그룹 내 각 M/H 블록의 특성에 따라 각 M/H 블록을 A 영역 내지 D 영역 중 어느 하나의 영역에 포함시킬 수 있다. 이때 메인 서비스 데이터의 간섭 정도에 따라 각 M/H 블록을 A 영역 내지 D 영역 중 어느 하나의 영역에 포함시키는 것을 일 실시 예로 한다. That is, assuming that one data group is divided into A, B, C, and D regions, each M / H block is divided into any one of the A region to the D region according to the characteristics of each M / Can be included. At this time, each M / H block is included in one of the A region and the D region according to the degree of interference of the main service data.

여기서, 상기 데이터 그룹을 다수개의 영역으로 구분하여 사용하는 이유는 각각의 용도를 달리하기 위해서이다. 즉, 메인 서비스 데이터의 간섭이 없거나 적은 영역은 그렇지 않은 영역보다 강인한 수신 성능을 보일 수 있기 때문이다. 또한, 송/수신 측의 약속에 의해 알고 있는 기지(known) 데이터를 데이터 그룹에 삽입하여 전송하는 시스템을 적용하는 경우, 모바일 서비스 데이터에 연속적으로 긴 기지 데이터를 주기적으로 삽입하고자 할 때, 메인 서비스 데이터의 간섭이 없는 영역(즉, 메인 서비스 데이터가 섞이지 않는 영역)에는 일정 길이의 기지 데이터를 주기적으로 삽입하는 것이 가능하다. 그러나 메인 서비스 데이터의 간섭이 있는 영역에는 메인 서비스 데이터의 간섭으로 기지 데이터를 주기적으로 삽입하는 것이 곤란하고 연속적으로 긴 기지 데이터를 삽입하는 것도 곤란하다. The reason why the data group is divided into a plurality of regions is to differentiate each use. That is, a region where there is no interference of the main service data or a region where there is no interference can show robust reception performance than the region where no interference occurs. In addition, when a system for inserting known data known by the promise of a transmitting / receiving end into a data group and transmitting the data is applied, when it is desired to periodically insert consecutively long base data into mobile service data, It is possible to periodically insert a known length of known data into an area where there is no interference of data (that is, an area where main service data is not mixed). However, it is difficult to periodically insert the known data due to the interference of the main service data in the area where interference of the main service data exists, and it is also difficult to continuously insert the known data.

도 25의 데이터 그룹 내 M/H 블록 B4 내지 M/H 블록 B7은 메인 서비스 데이터의 간섭이 없는 영역으로서 각 M/H 블록의 앞뒤에 긴 기지 데이터 열이 삽입된 예를 보이고 있다. 본 발명에서는 상기 M/H 블록 B4 내지 M/H 블록 B7을 포함하여 A 영역(=B4+B5+B6+B7)이라 하기로 한다. 상기와 같이 각 M/H 블록마다 앞뒤로 기지 데이터 열을 갖는 A 영역의 경우, 수신 시스템에서는 기지 데이터로부터 얻을 수 있는 채널 정보를 이용하여 등화를 수행할 수 있으므로, A 영역 내지 D 영역 중 가장 강인한 등화 성능을 얻을 수가 있다. The M / H block B4 to M / H block B7 in the data group of Fig. 25 shows an example in which a long known data string is inserted before and after each M / H block as an area without interference of main service data. In the present invention, the A region (= B4 + B5 + B6 + B7) including the M / H block B4 to the M / H block B7 will be described. As described above, in the case of the A region having the known data sequence for each M / H block back and forth, the receiving system can perform equalization using the channel information obtained from the known data. Thus, the most robust equalization Performance can be obtained.

도 25의 데이터 그룹 내 M/H 블록 B3과 M/H 블록 B8은 메인 서비스 데이터의 간섭이 적은 영역으로서, 두 M/H 블록 모두 한쪽에만 긴 기지 데이터 열이 삽입된 예를 보이고 있다. 즉, 메인 서비스 데이터의 간섭으로 인해 M/H 블록 B3은 해당 M/H 블록의 뒤에만 긴 기지 데이터 열이 삽입되고, M/H 블록 B8은 해당 M/H 블록의 앞에만 긴 기지 데이터 열이 삽입될 수 있다. 본 발명에서는 상기 M/H 블록 B3과 M/H 블록 B8을 포함하여 B 영역(=B3+B8)이라 하기로 한다. 상기와 같이 각 M/H 블록마다 어느 한쪽에만 기지 데이터 열을 갖는 B 영역의 경우, 수신 시스템에서는 기지 데이터로부터 얻을 수 있는 채널 정보를 이용하여 등화를 수행할 수 있으므로, C/D 영역보다 더 강인한 등화 성능을 얻을 수가 있다.The M / H block B3 and the M / H block B8 in the data group of FIG. 25 are areas where the interference of the main service data is small, and an example in which a long known data row is inserted into only one of both M / H blocks is shown. That is, due to the interference of the main service data, the M / H block B3 inserts a long base data string only after the corresponding M / H block, and the M / H block B8 inserts a long base data string only in front of the corresponding M / H block . In the present invention, the B region (= B3 + B8) including the M / H block B3 and the M / H block B8 will be described. As described above, in the case of the B region having the known data sequence in either one of the M / H blocks, the receiving system can perform equalization using the channel information obtained from the known data, The equalization performance can be obtained.

도 25의 데이터 그룹 내 M/H 블록 B2와 M/H 블록 B9는 메인 서비스 데이터의 간섭이 B 영역보다 더 많으며, 두 M/H 블록 모두 앞뒤로 긴 기지 데이터 열을 삽입할 수 없다. 본 발명에서는 상기 M/H 블록 B2와 M/H 블록 B9를 포함하여 C 영역(=B2+B9)이라 하기로 한다. The M / H block B2 and the M / H block B9 in the data group of Fig. 25 have more interference of the main service data than the B area, and can not insert a long known data sequence back and forth in both M / H blocks. In the present invention, a C region (= B2 + B9) including the M / H block B2 and the M / H block B9 will be described.

도 25의 데이터 그룹 내 M/H 블록 B1과 M/H 블록 B10은 메인 서비스 데이터의 간섭이 C 영역보다 더 많으며, 마찬가지로 두 M/H 블록 모두 앞뒤로 긴 기지 데이터 열을 삽입할 수 없다. 본 발명에서는 상기 M/H 블록 B1과 M/H 블록 B10을 포함하여 D 영역(=B1+B10)이라 하기로 한다. 상기 C/D 영역은 기지 데이터 열로부터 많이 떨어져 있기 때문에 채널이 빠르게 변하는 경우에는 수신 성능이 안 좋을 수가 있다. The M / H block B1 and the M / H block B10 in the data group of FIG. 25 have more interference of the main service data than the C area, and similarly, it is impossible to insert a long known data sequence back and forth in both M / H blocks. In the present invention, the D region (= B1 + B10) including the M / H block B1 and the M / H block B10 will be described. Since the C / D region is far away from the known data sequence, the reception performance may be poor if the channel changes rapidly.

또한, 상기 데이터 그룹은 시그널링 데이터(또는 시그널링 정보)가 할당되는 시그널링 정보 영역을 포함한다. Also, the data group includes a signaling information area to which signaling data (or signaling information) is allocated.

본 발명은 데이터 그룹 내 M/H 블록 B4의 첫 번째 세그먼트부터 두 번째 세그먼트의 일부를 시그널링 정보 영역으로 이용할 수 있다. The present invention can use a part of the second segment from the first segment of the M / H block B4 in the data group as the signaling information area.

본 발명은 각 데이터 그룹의 M/H 블록 B4의 276(=207+69) 바이트를 시그널링 정보 영역으로 이용하는 것을 일 실시 예로 한다. 즉, 시그널링 정보 영역은 M/H 블록 B4의 첫 번째 세그먼트인 207 바이트와 두 번째 세그먼트의 처음 69 바이트로 구성된다. 상기 M/H 블록 B4의 첫 번째 세그먼트는 VSB 필드의 17번째 또는 173번째 세그먼트에 해당한다. The present invention uses 276 (= 207 + 69) bytes of the M / H block B4 of each data group as a signaling information area. That is, the signaling information area is composed of 207 bytes, which is the first segment of the M / H block B4, and the first 69 bytes of the second segment. The first segment of the M / H block B4 corresponds to the 17th or 173rd segment of the VSB field.

상기 시그널링 정보 영역으로 전송되는 시그널링 데이터는 크게 두 종류의 시그널링 채널 데이터로 구분할 수 있다. 하나는 전송 파라미터 채널(Transmission Parameter Channel; TPC) 데이터이고, 다른 하나는 고속 정보 채널(Fast Information Channel; FIC) 데이터이다. The signaling data to be transmitted to the signaling information area can be divided into two kinds of signaling channel data. One is Transmission Parameter Channel (TPC) data, and the other is Fast Information Channel (FIC) data.

그리고 상기 TPC 데이터는 주로 물리적 계층(Physical layer) 모듈에서 사용되는 파라미터들을 포함하며, 인터리빙이 되지 않고 전송되므로, 수신 시스템에서는 슬롯별로 억세스가 가능하다. Since the TPC data mainly includes parameters used in a physical layer module and is transmitted without being interleaved, the TPC data can be accessed on a slot-by-slot basis.

상기 FIC 데이터는 수신기에서 빠른 서비스 획득(fast service acquisition)이 가능하도록 하기 위해 제공되며, 물리 계층과 상위 계층 사이의 크로스 계층 정보를 포함한다. 상기 FIC 데이터는 서브 프레임 단위로 인터리빙되어 전송된다. The FIC data is provided to enable a fast service acquisition at a receiver, and includes cross-layer information between a physical layer and an upper layer. The FIC data is interleaved and transmitted in units of subframes.

예를 들어, 상기 데이터 그룹이 도 25에서와 같이 6개의 기지 데이터 열을 포함하는 경우, 상기 시그널링 정보 영역은 제 1 기지 데이터 열과 제2 기지 데이터 열 사이에 위치한다. 즉, 제1 기지 데이터 열은 데이터 그룹 내 M/H 블록 B3의 마지막 2 세그먼트에 삽입되고, 제2 기지 데이터 열은 M/H 블록 B4의 두 번째와 세 번째 세그먼트에 삽입된다. 그리고 제3 내지 제6 기지 데이터 열은 M/H 블록 B4, B5, B6, B7의 마지막 2 세그먼트에 각각 삽입된다. 상기 제1, 제3 내지 제 6 기지 데이터 열은 16 세그먼트만큼 떨어져 있다. For example, when the data group includes six known data strings as shown in FIG. 25, the signaling information area is located between the first known data string and the second known data string. That is, the first known data sequence is inserted into the last two segments of the M / H block B3 in the data group, and the second known data sequence is inserted into the second and third segments of the M / H block B4. And the third to sixth known data streams are inserted into the last two segments of the M / H blocks B4, B5, B6 and B7, respectively. The first, third, and sixth to sixth known data streams are separated by 16 segments.

도 26는 본 발명의 일 실시 예에 따라 모바일 NRT 서비스를 포함한 RS 프레임의 구조를 도시한 것이다.26 illustrates a structure of an RS frame including a mobile NRT service according to an embodiment of the present invention.

상기 RS 프레임은 타임 슬라이싱 모드로 전환된 상태에서 각 M/H 프레임마다 수신하게 된다. 하나의 RS 프레임에는 각 모바일 서비스 데이터 또는 시그널링 데이터의 IP 스트림들이 포함되며, 또한 모든 RS 프레임에는 SMT(service map table) 섹션의 IP 데이터 그램이 포함된다. 상기 SMT 섹션 데이터는 IP 스트림 형태일 수도 있고, 다른 형태일 수도 있다. 또한 상기 RS 프레임의 데이터는 NRT 서비스를 위한 NRT 콘텐트/파일, OMA BCAST 서비스 가이드 데이터 등의 IP 데이터그램이 포함될 수 있다.The RS frame is received in each M / H frame in a state of being switched to the time slicing mode. One RS frame includes IP streams of each mobile service data or signaling data, and all RS frames include IP datagrams in a service map table (SMT) section. The SMT section data may be in the form of an IP stream or in another form. The data of the RS frame may include an IP datagram such as NRT content / file for NRT service, OMA BCAST service guide data, and the like.

일 실시예로, 상기 SMT 또는 상기 SMT를 전송하는 서비스 시그널링 채널은 Well-known IP desination address와 well-known desination UDP port number를 가지는 IP 데이터그램이 해당 RS 프레임에 포함되어 수신되는 것을 일 실시예로 한다. In one embodiment, the service signaling channel for transmitting the SMT or the SMT includes an IP datagram having a well-known IP desination address and a well-known des- ping UDP port number included in a corresponding RS frame and receiving the same. do.

상기 RS 프레임의 데이터는 복수 개의 데이터 그룹의 해당 영역에 할당되어 전송된다. The data of the RS frame is allocated to a corresponding area of a plurality of data groups and transmitted.

본 발명의 일 실시 예에 따른 RS 프레임은 적어도 하나의 M/H TP(Transport Packet)으로 이루어져 있다. 이러한 M/H TP는 M/H 헤더와 M/H 페이로드로 이루어져 있다. The RS frame according to an exemplary embodiment of the present invention includes at least one M / H TP (Transport Packet). This M / H TP consists of an M / H header and an M / H payload.

상기 M/H 페이로드에는 모바일 서비스 데이터와 NRT 서비스 데이터 중 적어도 하나의 IP 데이터그램이 포함될 수 있다. 상기 M/H 페이로드에는 SMT의 데이터그램이 포함될 수 있다. 상기 M/H 프레임에는 OMA BCAST 서비스 가이드 데이터의 IP 데이터그램이 포함될 수 있다. The M / H payload may include at least one IP datagram of mobile service data and NRT service data. The M / H payload may include an SMT datagram. The M / H frame may include an IP datagram of OMA BCAST service guide data.

상기 도 26의 RS 프레임은, SMT를 위한 IP 데이터그램(IP Datagram 1), 두 종류의 NRT 서비스를 위한 IP 데이터그램(즉, IP Datagram 2, IP Datagram 3)이 할당된 예를 보이고 있다.26 shows an example in which an IP datagram for SMT (IP Datagram 1) and two types of NRT service IP datagrams (i.e., IP datagram 2 and IP datagram 3) are allocated.

도 27은 본 발명에 따른 모바일 서비스 데이터의 송/수신을 위한 M/H 프레임 구조의 일 예를 보인 도면이다.27 is a diagram illustrating an example of an M / H frame structure for transmitting / receiving mobile service data according to the present invention.

도 27은 하나의 M/H 프레임이 5개의 서브 프레임으로 구성되고, 하나의 서브 프레임이 16개의 슬롯으로 구성되는 예를 보이고 있다. 이 경우 하나의 M/H 프레임은 5개의 서브 프레임, 80개의 슬롯을 포함함을 의미한다. FIG. 27 shows an example in which one M / H frame is composed of 5 subframes, and one subframe is composed of 16 slots. In this case, one M / H frame includes 5 subframes and 80 slots.

그리고 하나의 슬롯은 패킷 레벨에서는 156개의 데이터 패킷(즉, 트랜스포트 스트림 패킷)으로, 심볼 레벨에서는 156개의 데이터 세그먼트로 구성된다. 또는 VSB 필드의 반에 해당되는 크기를 갖는다. 즉, 207 바이트의 한 데이터 패킷이 한 개의 데이터 세그먼트와 동일한 데이터 양을 가지므로 데이터 인터리빙되기 전의 데이터 패킷이 데이터 세그먼트의 개념으로 사용될 수 있다. 이때 두 개의 VSB 필드가 모여 하나의 VSB 프레임을 구성한다. One slot consists of 156 data packets (i.e., transport stream packets) at the packet level and 156 data segments at the symbol level. Or a half of the VSB field. That is, since one data packet of 207 bytes has the same amount of data as one data segment, a data packet before data interleaving can be used as a concept of a data segment. At this time, two VSB fields are gathered to form one VSB frame.

하나의 VSB 프레임은 두 개의 VSB 필드(즉, odd 필드, even 필드)로 구성된다. 그리고 각 VSB 필드는 하나의 필드 동기 세그먼트와 312개의 데이터 세그먼트로 구성된다.One VSB frame is composed of two VSB fields (i.e., an odd field and an even field). Each VSB field is composed of one field sync segment and 312 data segments.

상기 슬롯은 모바일 서비스 데이터와 메인 서비스 데이터의 다중화를 위한 기본 시간 단위이다. 하나의 슬롯은 모바일 서비스 데이터를 포함할 수도 있고, 메인 서비스 데이터로만 구성될 수도 있다. The slot is a basic time unit for multiplexing mobile service data and main service data. One slot may include mobile service data, or may consist of only main service data.

만일 슬롯 내 처음 118 데이터 패킷들이 하나의 데이터 그룹에 해당되면, 나머지 38 패킷들은 메인 서비스 데이터 패킷이 된다. 또 다른 예로, 하나의 슬롯에 데이터 그룹이 없다면, 해당 슬롯은 156개의 메인 서비스 데이터 패킷들로 구성된다. If the first 118 data packets in the slot correspond to one data group, the remaining 38 packets become the main service data packet. As another example, if there is no data group in one slot, the slot is made up of 156 main service data packets.

한편, 하나의 RS 프레임 내 모바일 서비스 데이터는 데이터 그룹 내 A/B/C/D 영역에 모두 할당될 수도 있고, A/B/C/D 영역 중 적어도 하나의 영역에 할당될 수도 있다. 본 발명은 하나의 RS 프레임 내 모바일 서비스 데이터를 A/B/C/D 영역에 모두 할당하거나, A/B 영역과 C/D 영역 중 어느 하나에만 할당하는 것을 일 실시예로 한다. 즉, 후자의 경우, 데이터 그룹 내 A/B 영역에 할당되는 RS 프레임과 C/D 영역에 할당되는 RS 프레임이 다르다. 본 발명의 일실시예에 따르면, 데이터 그룹 내 A/B 영역에 할당되는 RS 프레임을 프라이머리 RS 프레임(Primary RS frame)이라 하고, C/D 영역에 할당되는 RS 프레임을 세컨더리 RS 프레임(Secondary RS frame)이라 하기로 한다. 그리고 프라이머리 RS 프레임과 세컨더리 RS 프레임이 하나의 퍼레이드(parade)를 구성한다. 즉, 하나의 RS 프레임 내 모바일 서비스 데이터가 데이터 그룹 내 A/B/C/D 영역에 모두 할당된다면, 하나의 퍼레이드는 하나의 RS 프레임을 전송한다. 이에 반해, 하나의 RS 프레임 내 모바일 서비스 데이터가 데이터 그룹 내 A/B 영역에 할당되고, 다른 하나의 RS 프레임 내 모바일 서비스 데이터가 해당 데이터 그룹 내 C/D 영역에 할당된다면, 하나의 퍼레이드는 두 개의 RS 프레임까지 전송할 수 있다. Meanwhile, the mobile service data in one RS frame may be all allocated to the A / B / C / D area in the data group or may be allocated to at least one area of the A / B / C / D area. In one embodiment, mobile service data in one RS frame is all allocated to an A / B / C / D area or allocated to only one of an A / B area and a C / D area. That is, in the latter case, the RS frame allocated to the A / B area in the data group is different from the RS frame allocated to the C / D area. According to an embodiment of the present invention, an RS frame allocated to an A / B area in a data group is referred to as a primary RS frame, and an RS frame allocated to a C / D area is referred to as a secondary RS frame frame. The primary RS frame and the secondary RS frame constitute one parade. That is, if mobile service data in one RS frame is all allocated in the A / B / C / D area in the data group, one parade transmits one RS frame. On the other hand, if the mobile service data in one RS frame is allocated to the A / B area in the data group and the mobile service data in the other RS frame is allocated to the C / D area in the corresponding data group, RS frames.

즉, RS 프레임 모드(mode)는 하나의 퍼레이드가 하나의 RS 프레임을 전송하는지, 두 개의 RS 프레임을 전송하는지를 지시한다. 이러한 RS 프레임 모드는 TPC 데이터로서 전송된다. That is, the RS frame mode indicates whether one parade transmits one RS frame or two RS frames. This RS frame mode is transmitted as TPC data.

다음의 표 2는 RS 프레임 모드의 일 예를 보인다. Table 2 below shows an example of the RS frame mode.

RS frame modeRS frame mode DescriptionDescription 0000 There is only a primary RS frame for all Group RegionsThere is only a primary RS frame for all Group Regions 0101 There are two separate RS frames
- Primary RS frame for Group Region A and B
- Secondary RS frame for Group Region C and D
There are two separate RS frames
- Primary RS frame for Group A and B
- Secondary RS frame for Group Region C and D
1010 ReservedReserved 1111 ReservedReserved

상기 표 2는 RS 프레임 모드를 표시하기 위해 2비트가 할당되는 것을 일 실시예로 하고 있다. 상기 표 2를 보면, RS 프레임 모드 값이 00이면, 하나의 퍼레이드가 하나의 RS 프레임을 전송함을 지시하고, RS 프레임 모드 값이 01이면, 하나의 퍼레이드가 두 개의 RS 프레임 즉, 프라이머리 RS 프레임과 세컨더리 RS 프레임을 전송함을 지시한다. 즉, 상기 RS 프레임 모드 값이 01이면, A/B 영역을 위한 프라이머리 RS 프레임(Primary RS frame for region A/B)의 데이터는 데이터 그룹의 A/B 영역에 할당되어 전송되고, C/D 영역을 위한 세컨더리 RS 프레임(Secondary RS frame for region C/D)의 데이터는 해당 데이터 그룹의 C/D 영역에 할당되어 전송됨을 지시한다. In Table 2, two bits are allocated to indicate the RS frame mode. Referring to Table 2, if the RS frame mode value is 00, it indicates that one parade transmits one RS frame. If the RS frame mode value is 01, one parade is transmitted to two RS frames, that is, primary RS Frame and the secondary RS frame. That is, when the RS frame mode value is 01, the data of the primary RS frame for region A / B for the A / B region is allocated and transmitted to the A / B region of the data group, And the data of the secondary RS frame (region C / D) for the region is assigned to the C / D region of the corresponding data group and is transmitted.

상기 데이터 그룹의 할당과 마찬가지로, 퍼레이드들도 서브 프레임 내에서 가능한 서로 멀리 떨어져 할당하는 것을 일 실시 예로 한다. 이렇게 함으로써 하나의 서브 프레임 내에서 발생할 수 있는 버스트 에러에 대해 강력하게 대응할 수 있게 된다. As with the allocation of the data groups, it is also an embodiment that the parades are allocated as far apart as possible in the subframe. This makes it possible to strongly respond to burst errors that may occur in one subframe.

그리고 퍼레이드들의 할당 방법은 M/H 프레임마다 다르게 적용할 수 있고, 모든 M/H 프레임에 동일하게 적용할 수도 있다. 또한 하나의 M/H 프레임 내 모든 서브 프레임에 동일하게 적용할 수도 있고, 각 서브 프레임마다 다르게 적용할 수도 있다. 본 발명은 M/H 프레임마다 달라질 수 있으며, 하나의 M/H 프레임 내 모든 서브 프레임에는 동일하게 적용하는 것을 일 실시 예로 한다. 즉, M/H 프레임 구조는 M/H 프레임 단위로 달라질 수 있으며, 이것은 앙상블 데이터 율을 탄력적으로 조정할 수 있게 한다. And, the allocation method of parades can be applied differently for each M / H frame, and the same applies to all M / H frames. The same applies to all subframes within one M / H frame, or may be applied to each subframe differently. The present invention is applicable to all subframes within one M / H frame, which may be different for each M / H frame. That is, the M / H frame structure can be changed in units of M / H frames, which enables flexible adjustment of the ensemble data rate.

즉, 본 발명의 실시 예에서는 앙상블(Ensemble) 개념을 도입하여, 서비스의 집합을 정의한다. 하나의 M/H 앙상블은 동일한 QoS를 가지며, 동일한 FEC 코드로 코딩된다. 또한 하나의 앙상블은 같은 고유 식별자(즉, ensemble id)를 가지며 연속하는 RS 프레임에 대응된다. That is, in the embodiment of the present invention, an ensemble concept is introduced to define a set of services. One M / H ensemble has the same QoS and is coded with the same FEC code. Also, one ensemble has the same unique identifier (i.e., ensemble id) and corresponds to consecutive RS frames.

도 28은 본 발명의 일 실시예에 따른 물리적 계층에서의 데이터 전송 구조를 도시한 도면으로, 각 데이터 그룹 내에 FIC 데이터가 포함되어 전송되는 예를 보이고 있다.28 is a diagram illustrating a data transmission structure in a physical layer according to an embodiment of the present invention, in which FIC data is included in each data group and is transmitted.

상기에서 설명한 바와 같이, 약 0.968 초 동안의 M/H 프레임은 5개의 서브 프레임으로 분할되고, 각각의 서브 프레임 내에 여러 개의 앙상블에 해당하는 데이터 그룹들이 섞여 존재하며, 각각의 앙상블에 해당하는 데이터 그룹들이 M/H 프레임 단위로 인터리빙되어 하나의 앙상블에 속하는 RS 프레임을 구성하게 된다. 도 27에서는 2개의 앙상블(NoG=4, NoG=3)이 존재한다. 또한 각각의 데이터 그룹의 일정 부분(e.g. 37 bytes/데이터 그룹)은 RS 프레임 데이터 채널과는 별도로 인코딩이 적용된 FIC 데이터를 전달하는 용도로 사용된다. 각각의 데이터 그룹에 할당되는 FIC 영역은 하나의 FIC 세그먼트를 이루며, 이 FIC 세그먼트들은 서브 프레임 단위로 인터리빙된다. 예를 들어, 상기 RS 프레임의 데이터에 RS 인코딩과 serial concatenated convolution code (SCCC) 인코딩이 적용되고, 상기 FIC 데이터에 대해 RS 인코딩과 parallel concatenated convolution code (PCCC) 인코딩이 적용되는 것을 일 실시예로 한다. 한편 TPC 데이터도 상기 FIC 데이터와 마찬가지로 RS 인코딩과 parallel concatenated convolution code (PCCC) 인코딩이 적용된다. 이때 상기 RS 프레임의 데이터는 (187+P,187)-RS 인코딩이 적용되고, 상기 FIC 데이터는 (51,37)-RS 인코딩이 적용되며, 상기 TPC 데이터는 (18,10)-RS 인코딩이 적용되는 것을 일 실시예로 한다. 여기서, P는 패리티 바이트의 개수이다. As described above, the M / H frame for about 0.968 seconds is divided into five subframes, and data groups corresponding to a plurality of ensembles exist in each subframe. A data group corresponding to each ensemble exists Are interleaved in units of M / H frames to form an RS frame belonging to one ensemble. In Fig. 27, there are two ensembles (NoG = 4, NoG = 3). Also, a certain portion (e.g., 37 bytes / data group) of each data group is used to transmit FIC data to which encoding is applied separately from the RS frame data channel. The FIC area allocated to each data group constitutes one FIC segment, and these FIC segments are interleaved on a subframe basis. For example, RS encoding and serial concatenated convolutional code (SCCC) encoding are applied to the RS frame data, and RS encoding and parallel concatenated convolutional coding (PCCC) encoding are applied to the FIC data . On the other hand, RS encoding and parallel concatenated convolutional code (PCCC) encoding are applied to the TPC data as well as the FIC data. In this case, (187 + P, 187) -RS encoding is applied to the RS frame data, (51,37) -RS encoding is applied to the FIC data, and the TPC data is One embodiment is applied. Here, P is the number of parity bytes.

도 29은 본 발명의 일 실시예에 따른 계층적인 시그널링 구조를 도시한 도면이다. 본 실시예에 따른 모바일 방송 기술은 도 29에 도시된 바와 같이, FIC와 SMT를 이용한 시그널링 방법을 채용하고 있다. 이를 본 발명에서는 계층적 시그널링 구조라 명명한다. 29 is a diagram illustrating a hierarchical signaling structure according to an embodiment of the present invention. The mobile broadcasting technology according to the present embodiment adopts a signaling method using FIC and SMT as shown in FIG. This is referred to as a hierarchical signaling structure in the present invention.

즉, 도 29은 FIC 청크와 IP 레벨의 모바일 서비스 시그널링 채널 중, 서비스 맵 테이블(SMT)을 통하여 서비스 획득(Service Acquisition)에 필요한 데이터를 제공하는 계층적 시그널링 구조를 나타낸다. That is, FIG. 29 shows a hierarchical signaling structure for providing data required for service acquisition through the service map table (SMT), among the FIC chunk and the mobile service signaling channel at the IP level.

도 29에서 알 수 있듯이, FIC 청크는 그 빠른 특성을 이용하여, 모바일 서비스와 앙상블 간의 매핑 관계를 수신 시스템으로 전달한다. 즉, 상기 FIC 청크는 수신 시스템에서 원하는 서비스를 전달하는 앙상블을 빠르게 찾아서 해당 앙상블의 RS 프레임들을 빨리 수신할 수 있도록 하기 위한 시그널링 데이터를 수신 시스템에 제공한다. As can be seen in Figure 29, the FIC chunk uses its fast nature to deliver the mapping relationship between the mobile service and the ensemble to the receiving system. That is, the FIC chunk provides signaling data to the receiving system to quickly find an ensemble for delivering a desired service in the receiving system and to quickly receive the RS frames of the ensemble.

도 30는 도 26의 RS 프레임에 포함되어 전송되는 NRT 서비스 데이터에 대한 시그널링 정보를 제공하는 SMT 섹션의 비트 스트림 신택스 구조에 대한 일 실시예를 보이고 있다. FIG. 30 shows an embodiment of a bitstream syntax structure of an SMT section for providing signaling information on NRT service data included in and transmitted in the RS frame of FIG.

여기서, 해당 신택스는 이해를 돕기 위하여 MPEG-2 프라이빗 섹션(Private section) 형태로 작성되었으나, 해당 데이터의 포맷은 어떠한 형태가 되어도 무방하다. Here, the syntax is written in the form of an MPEG-2 private section for the sake of understanding, but the format of the data may be any form.

상기 SMT는 SMT가 전송되는 앙상블(Ensemble) 내의 모바일 서비스의 시그널링 정보(또는 NRT 서비스의 시그널링 정보) 및 IP 접속 정보를 기술한다. 상기 SMT는 또한 각 서비스가 속하는 방송 스트림(Broadcast stream)의 인식자인 Transport_Stream_ID를 이용, 해당 서비스의 방송 스트림 정보를 제공한다. 그리고 본 발명의 실시예에 따른 SMT는 하나의 앙상블 내의 각 모바일 서비스(또는 NRT 서비스)의 서술(Description) 정보를 포함하며, 디스크립터(Descriptor) 영역에 기타 부가 정보들이 포함될 수 있다.The SMT describes the signaling information (or the signaling information of the NRT service) and the IP connection information of the mobile service in the Ensemble in which the SMT is transmitted. The SMT also provides the broadcast stream information of the corresponding service using Transport_Stream_ID, which is a recognizer of the broadcast stream to which each service belongs. The SMT according to the embodiment of the present invention includes description information of each mobile service (or NRT service) in one ensemble, and other additional information may be included in a descriptor area.

도 30에서 상술한 바와 같이, SMT 섹션은 RS 프레임 내의 IP 스트림 형태로 포함되어 전송될 수 있다. 이 경우, 후술할 수신기의 RS 프레임 디코더들은 입력된 RS 프레임을 디코딩하고, 디코딩된 RS 프레임은 해당 RS 프레임 핸들러로 출력한다. 그리고 각 RS 프레임 핸들러는 입력된 RS 프레임을 로우(row) 단위로 구분하여 M/H TP를 구성하여 M/H TP 핸들러로 출력한다. As described above with reference to FIG. 30, the SMT section may be included and transmitted in the form of an IP stream in the RS frame. In this case, the RS frame decoders of the receiver to be described later decode the input RS frame, and output the decoded RS frame to the corresponding RS frame handler. Each RS frame handler divides the inputted RS frame into rows and constructs an M / H TP to output to the M / H TP handler.

한편, SMT를 통해 전송될 수 있는 필드들의 예를 들면 다음과 같다. On the other hand, examples of fields that can be transmitted through the SMT are as follows.

table_id 필드(8비트)는 테이블의 타입을 구분시키기 위한 필드로서, 이를 통해 본 테이블 섹션이 SMT 내 테이블 섹션임을 알 수 있다(table_id: An 8-bit unsigned integer number that indicates the type of table section being defined in Service Map Table (SMT)). The table_id field (8 bits) is a field for identifying the type of the table, and it is known that the table section is a table section in SMT (table_id: An 8-bit unsigned integer number indicates that the type of table section being defined in Service Map Table (SMT)).

section_syntax_indicator 필드(1비트)는 SMT의 섹션 형식을 정의하는 지시자로서, 섹션 형식은 예를 들어, MPEG의 short-form 신택스('0') 등이 될 수 있다(section_syntax_indicator: This 1-bit field shall be set to '0' to always indicate that this table is derived from the "short" form of the MPEG-2 private section table).The section_syntax_indicator field (1 bit) is an indicator for defining the SMT section format. The section format may be MPEG short-form syntax ('0') or the like (section_syntax_indicator: This 1-bit field shall be set to '0' to always indicate that this table is derived from the "short" form of the MPEG-2 private section table.

private_indicator 필드(1비트)는 SMT가 프라이빗 섹션을 따르는지 여부를 나타낸다(private_indicator: This 1-bit field shall be set to '1').The private_indicator field (1 bit) indicates whether the SMT follows the private section (private_indicator: This 1-bit field shall be set to '1').

section_length 필드(12비트)는 해당 필드 이후의 나머지 SMT의 섹션 길이를 나타낸다(section_length: A 12-bit field. It specifies the number of remaining bytes this table section immediately following this field. The value in this field shall not exceed 4093 (0xFFD)).The section_length field (12 bits) indicates the length of the section of the remaining SMT after the corresponding field (section_length: A 12-bit field. 4093 (0xFFD)).

table_id_extension 필드(16비트)는 테이블 종속적이고, 남은 필드들의 범위를 제공하는 table_id 필드의 논리적인 부분이 된다(table_id_extension: This is a 16-bit field and is table-dependent. It shall be considered to be logically part of the table_id field providing the scope for the remaining fields). 여기서, table_id_extension 필드는 SMT_protocol_version 필드를 포함한다. The table_id_extension field (16 bits) is table-dependent and is a logical part of the table_id field that provides a range of remaining fields (table_id_extension: This is a 16-bit field and is table-dependent. of the table_id field providing the scope for the remaining fields). Here, the table_id_extension field includes an SMT_protocol_version field.

SMT_protocol_version 필드(8비트)는 현재 프로토콜 내에서 정의된 것들과 다른 구조를 가지는 파라미터들이 전송하는 SMT를 허락하기 위한 프로토콜 버전을 알려준다(SMT_protocol_version: An 8-bit unsigned integer field whose function is to allow, in the future, this SMT to carry parameters that may be structured differently than those defined in the current protocol. At present, the value for the SMT_protocol_version shall be zero. Non-zero values of SMT_protocol_version may be used by a future version of this standard to indicate structurally different tables).The SMT_protocol_version field (8 bits) tells the protocol version to allow the SMT to transmit parameters that differ from those defined in the current protocol (SMT_protocol_version: An 8-bit unsigned integer whose function is to allow the in the At present, the value for the SMT_protocol_version shall be zero. Non-zero values of SMT_protocol_version may be used in a future version of this standard. structurally different tables).

ensemble_id 필드(8비트)는 해당 앙상블과 관련된 ID값으로, '0x00'에서 '0x3F'의 값들이 할당될 수 있다. 본 필드의 값은 TPC 데이터의 parade_id로부터 도출되는 것이 바람직하다. 만약 해당 앙상블이 프라이머리 RS 프레임을 통해 전송될 경우에는 가장 상위 비트(MSB)는 '0'으로 설정되며, 나머지 7비트는 해당 퍼레이드의 parade_id의 값으로 이용한다. 한편, 만약 해당 앙상블이 세컨더리 RS 프레임을 통해 전송될 경우에는 가장 상위 비트(MSB)는 '1'로 설정되며, 나머지 7비트는 해당 퍼레이드의 parade_id의 값으로 이용한다(ensemble_id: This 8-bit unsigned integer field in the range 0x00 to 0x3F shall be the Ensemble ID associated with this Ensemble. The value of this field shall be derived from the parade_id carried from the baseband processor of physical layer subsystem, by using the parade_id of the associated Parade for the least significant 7 bits, and using '0' for the most significant bit when the Ensemble is carried over the Primary RS frame, and using '1' for the most significant bit when the Ensemble is carried over the Secondary RS frame.). The ensemble_id field (8 bits) is an ID value associated with the ensemble, and values of '0x00' to '0x3F' may be assigned. The value of this field is preferably derived from the parade_id of the TPC data. If the ensemble is transmitted through the primary RS frame, the most significant bit (MSB) is set to '0', and the remaining 7 bits are used as the parade_id value of the parade. On the other hand, if the ensemble is transmitted through the secondary RS frame, the MSB is set to '1' and the remaining 7 bits are used as the parade_id value of the corresponding parade (ensemble_id: This 8-bit unsigned integer field in the range 0x00 to 0x3F Ensemble ID associated with this Ensemble. The value of this field shall be derived from the parade_id carried from the baseband processor of the physical layer subsystem, by using the parade_id of the associated parade for the least significant 7 bits, and using '0' for the most significant bit when the ensemble is performed over the primary RS frame, and using '1' for the most significant bit when the ensemble is performed over the secondary RS frame.

version_number 필드(5비트)는 SMT의 버전 번호를 나타낸다.The version_number field (5 bits) indicates the version number of the SMT.

current_next_indicator 필드(1비트)는 전송된 SMT 테이블 섹션이 현재 적용 가능한지 여부를 지시한다(current_next_indicator: A one-bit indicator, which when set to '1' shall indicate that the Service Map Table sent is currently applicable. When the bit is set to '0', it shall indicate that the table sent is not yet applicable and will be the next table to become valid. This standard imposes no requirement that "next" tables (those with current_next_indicator set to '0') must be sent. An update to the currently applicable table shall be signaled by incrementing the version_number field).The current_next_indicator field (1 bit) indicates whether the transmitted SMT table section is currently applicable (current_next_indicator: A one-bit indicator, which when set to '1' indicates that the Service Map Table is currently applicable. If the table is not set to '0', then the table is not yet available and will be the next table to be valid. be sent. An update to the currently applicable table shall be signaled by the incrementing the version_number field.

section_number 필드(8비트)는 현재 SMT 섹션의 번호를 표시한다 (section_number: This 8-bit field shall give the section number of this NRT Service Signaling table section. The section_number of the first section in an NRT Service Signaling table shall be 0x00. The section_number shall be incremented by 1 with each additional section in the NRT Service Signaling table).The section_number field (8 bits) indicates the number of the current SMT section (section_number: This 8-bit field shall give the section number of this NRT Service Signaling table section. 0x00. The section_number shall be incremented by 1 with each additional section in the NRT Service Signaling table.

last_section_number 필드(8비트)는 SMT 테이블을 구성하는 마지막 섹션 번호를 나타낸다(last_section_number: This 8-bit field shall give the number of the last section (i.e., the section with the highest section_number) of the Service Signaling table of which this section is a part).The last_section_number field (8 bits) indicates the last section number constituting the SMT table (last_section_number: This 8-bit field shall give the number of the last section (ie, the section with the highest section_number) this section is a part).

num_services 필드(8비트)는 SMT 섹션 내의 서비스의 개수를 지시한다. (num_services: This 8 bit field specifies the number of services in this SMT section.). 상기 SMT가 포함되는 앙상블로 적어도 하나의 모바일 서비스만 포함되어 수신될 수도 있고, 적어도 하나의 NRT 서비스만 포함되어 수신될 수도 있으며, 모바일 서비스와 NRT 서비스가 모두 포함되어 수신될 수도 있다. 만일 상기 SMT가 포함되는 앙상블로 NRT 서비스들만 포함되어 전송된다면, 상기 SMT에 포함되는 NRT 서비스의 개수를 지시할 수 있다The num_services field (8 bits) indicates the number of services in the SMT section. (num_services: This 8 bit field specifies the number of services in this SMT section.). The SMT may include at least one mobile service in an ensemble including the SMT, may include at least one NRT service only, or may include both a mobile service and an NRT service. If only the NRT services are transmitted in the ensemble including the SMT, the number of NRT services included in the SMT can be indicated

이후 상기 num_services필드 값에 해당하는 서비스 개수만큼 'for' 루프(또는 서비스 루프라 함)가 수행되어 복수의 서비스에 대한 시그널링 정보를 제공한다. 즉, 상기 SMT 섹션에 포함되는 서비스별로 해당 서비스의 시그널링 정보를 표시한다. 여기서, 서비스는 모바일 서비스일 수도 있고, NRT 서비스일 수도 있다. 이때 각 서비스에 대해 다음과 같은 필드 정보를 제공할 수 있다.Then, a 'for' loop (or a service loop) is performed for the number of services corresponding to the value of the num_services field to provide signaling information for a plurality of services. That is, signaling information of the corresponding service is displayed for each service included in the SMT section. Here, the service may be a mobile service or an NRT service. At this time, the following field information can be provided for each service.

service_id 필드(16 비트)는 해당 서비스를 유일하게 식별할 수 있는 값을 표시한다(A 16-bit unsigned integer number that shall uniquely identify this service within the scope of this SMT section.). 하나의 서비스의 service_id 필드 값은 그 서비스가 유지되는 동안 변하지 않는다. 이때 혼란을 피하기 위해서, 만일 어떤 서비스가 종료되면 그 서비스의 service_id 필드 값은 일정 시간이 경과할 때까지 사용하지 않을 수 있다(The service_id of a service shall not change throughout the life of the service. To avoid confusion, it is recommended that if a service is terminated, then the service_id for the service should not be used for another service until after a suitable interval of time has elapsed.). 여기서, 상기 서비스가 NRT 서비스라면, 상기 service_id는 상기 NRT 서비스를 식별할 것이다The service_id field (16 bits) indicates a value that uniquely identifies the service. (A 16-bit unsigned integer number shall identify this service within the scope of this SMT section.) The service_id field value of one service does not change while the service is maintained. In order to avoid confusion at this time, if a service is terminated, the value of the service_id field of the service may not be used until a predetermined time elapses (The service_id of a service may not change throughout the life of the service. , it is recommended that a service is terminated, then the service_id for the service should not be used for another service. Here, if the service is an NRT service, the service_id will identify the NRT service

Multi_ensemble_service 필드(2비트)는 해당 서비스가 하나 이상의 앙상블을 통해 전송되는지 여부를 식별한다. 또한, 해당 필드는 단지 서비스가 해당 앙상블을 통해 전송되는 서비스의 부분으로서 표현되는지 여부를 식별한다. 즉, 상기 서비스가 NRT 서비스라면, 상기 필드는 NRT 서비스가 하나 이상의 앙상블을 통해 전송되는지 여부를 식별한다(multi_ensemble_service: A two-bit enumerated field that shall identify whether the Service is carried across more than one Ensemble. Also, this field shall identify whether or not the Service can be rendered only with the portion of Service carried through this Ensemble.).The Multi_ensemble_service field (2 bits) identifies whether the service is transmitted via one or more ensembles. In addition, the field identifies whether the service is only represented as part of the service being transmitted over the ensemble. That is, if the service is an NRT service, the field identifies whether the NRT service is transmitted via one or more ensembles (multi_ensemble_service: A two-bit enumerated field, which identifies whether the service is carried across more than one Ensemble. , this field shall identify whether or not the Service can be rendered only with the portion of Service carried through this Ensemble.).

service_status 필드(2비트)는 해당 서비스의 상태를 식별한다. 여기서, MSB는 해당 서비스가 액티브('1')인지 아니면 인액티브('0')인지 지시하고, LSB는 해당 서비스가 히든('1')인지 아닌지('0')를 지시한다. 여기서, 상기 서비스가 NRT 서비스라면, 상기 service_status 필드의 MSB는 해당 NRT 서비스가 액티브('1')인지 아니면 인액티브('0')인지 지시하고, LSB는 해당 NRT 서비스가 히든('1')인지 아닌지('0')를 지시한다.The service_status field (2 bits) identifies the status of the service. Here, the MSB indicates whether the corresponding service is active ('1') or inactive ('0'), and the LSB indicates whether the corresponding service is hidden ('1') or not ('0'). If the service is an NRT service, the MSB of the service_status field indicates whether the corresponding NRT service is active ('1') or inactive ('0'), (&Quot; 0 ").

SP_indicator 필드(1비트)는 해당 서비스의 서비스 보호(service protection) 여부를 나타낸다. 만일 SP_indicator 필드 값이 1이면, 서비스 보호가 해당 서비스의 의미 있는 프리젠테이션을 제공하기 위해 요구되는 콤포넌트들 중 적어도 하나에 적용된다(상기 (A 1-bit field that indicates, when set to 1, service protection is applied to at least one of the components needed to provide a meaningful presentation of this Service). The SP_indicator field (1 bit) indicates whether or not the service is protected. If the value of the SP_indicator field is equal to 1, the service protection is applied to at least one of the components required to provide a meaningful presentation of the service (see (1-bit field indicates that, when set to 1, service protection It is possible to provide a meaningful presentation of this service.

short_service_name_length 필드 (3비트)는 short_service_name 필드에 서술되는 숏 서비스 네임의 길이를 바이트 단위로 표시한다. The short_service_name_length field (3 bits) indicates the length of the short service name described in the short_service_name field in bytes.

short_service_name 필드는 해당 서비스의 숏 네임을 나타낸다(short_service_name: The short name of the Service, each character of which shall be encoded per UTF-8 [29]. When there is an odd number of bytes in the short name, the second byte of the last of the byte pair per the pair count indicated by the short_service_name_length field shall contain 0x00). 예를 들어, 서비스가 모바일 서비스이면 모바일 서비스의 숏 네임을, NRT 서비스이면 NRT 서비스의 숏 네임을 표시한다.The short_service_name field indicates the short name of the service (short_service_name: The short name of the service, each character of which will be encoded in UTF-8 [29]. byte of the last byte of the byte pair, and the short_service_name_length field shall indicate 0x00). For example, if the service is a mobile service, it indicates a short name of the mobile service. If the service is a NRT service, it indicates a short name of the NRT service.

service_category 필드(6비트)는, 하기의 표 3에서 규정된 바와 같이, 해당 서비스의 타입 카테고리를 식별한다. 해당 필드의 값이 "informative only" 지시하는 값으로 설정되면, 해당 필드의 값은 상기 서비스의 카테고리에 대한 인포머티브 디스크립션으로 다루어진다. 그리고 수신기는 수신되는 서비스의 실제 카테고리를 식별하기 위해 SMT의 component_level_descriptors() 필드를 검사하는 것이 요구된다. 비디오 및/또는 오디오 콤포넌트를 가진 서비스들을 위해 그것들은 NTP 타임 베이스 콤포넌트를 가진다.The service_category field (6 bits) identifies the type category of the service, as defined in Table 3 below. If the value of the corresponding field is set to a value indicating "informative only ", the value of that field is treated as an informative description of the category of the service. And the receiver is required to check the component_level_descriptors () field of the SMT to identify the actual category of the received service. For services with video and / or audio components, they have an NTP timebase component.

service_categoryservice_category MeaningMeaning 0x000x00 The service category is not specified by the service_category field. Look in the component_level_descriptors() to identify the category of service.The service category is not specified by the service_category field. Look in the component_level_descriptors () to identify the category of service. 0x010x01 Basic TV (Informative only) - Look in the component_level_descriptors() to identify the specific category of service.Basic TV (Informative only) - Look in the component_level_descriptors () to identify the specific category of service. 0x020x02 Basic Radio (Informative only) - Look in the component_level_descriptors() to identify the specific category of service.Basic Radio (Informative only) - Look in the component_level_descriptors () to identify the specific category of service. 0x030x03 RI service - Rights Issuer service as defined in Part #6 [34] of this standard.RI service - Rights Issuer service as defined in Part # 6 [34] of this standard. 0x04-ox070x04-ox07 Not specified by the current version of this standard.Not specified by the current version of this standard. 0x080x08 Service Guide - Service Guide (Announcement) as defined in Part #4 [x] of
this standard.
Service Guide - Service Guide (Announcement) as defined in Part # 4 [x] of
this standard.
0x09-0x0C0x09-0x0C Not specified by the current version of this standard.Not specified by the current version of this standard. 0x0E0x0E NRT ServiceNRT Service 0x0F- 0Xff0x0F- 0Xff [Reserved for future ATSC use][Reserved for future ATSC use]

특히, 본 발명과 관련하여, service_category 필드의 값이 예를 들어, '0x0E' 값을 가진 경우에는 해당 서비스는 NRT 서비스임을 지시한다. 이 경우, SMT 섹션에서 현재 서술하는 서비스의 시그널링 정보는 NRT 서비스의 시그널링 정보임을 알 수 있다.In particular, in the context of the present invention, when the value of the service_category field has a value of '0x0E', for example, it indicates that the service is an NRT service. In this case, it can be seen that the signaling information of the service currently described in the SMT section is the signaling information of the NRT service.

num_components 필드(5비트)는 해당 서비스 내 IP 스트림 콤포넌트의 개수를 표시한다(num_components: This 5-bit field specifies the number of IP stream components in this Service).The num_components field (5 bits) indicates the number of IP stream components in the service (num_components: This 5-bit field specifies the number of IP stream components in this Service).

IP_version_flag 필드(1비트)는 '1'로 설정된 경우에는 source_IP_address 필드, service_destination_IP_address 필드 및 component_destination_IP_address 필드가 IPv6 어드레스임을 지시하고, '0'으로 설정된 경우에는 source_IP_address 필드, service_destination_IP_address 필드, component_destination_IP_address 필드가 IPv4 어드레스임을 지시한다(IP_version_flag: A 1-bit indicator, which when set to '0' shall indicate that source_IP_address, service_destination_IP_address, and component_destination_IP_address fields are IPv4 addresses. The value of '1' for this field is reserved for possible future indication that source_IP_address, service_destination_IP_address, and component_destination_IP_address fields are for IPv6. Use of IPv6 addressing is not currently defined). When the IP_version_flag field (1 bit) is set to '1', the source_IP_address field, the service_destination_IP_address field, and the component_destination_IP_address field indicate the IPv6 address, and when set to '0', the source_IP_address field, the service_destination_IP_address field, and the component_destination_IP_address field indicate IPv4 addresses (IP_version_flag: A 1-bit indicator, which when set to '0' indicates that source_IP_address, service_destination_IP_address, and component_destination_IP_address fields are IPv4 addresses. The value of '1' for this field is reserved for possible future indication that source_IP_address, service_destination_IP_address, and component_destination_IP_address fields are for IPv6. Use of IPv6 addressing is not currently defined).

source_IP_address_flag 필드(1비트)가 설정된 경우에는 해당 서비스를 위한 소스 IP 어드레스 값이 소스 특정 멀티캐스트를 지시하기 위해 존재함을 지시하는 플래그이다(source_IP_address_flag: A 1-bit Boolean flag that shall indicate, when set, that a source IP address value for this Service is present to indicate a source specific multicast).When the source_IP_address_flag field (1 bit) is set, a flag indicating that the source IP address value for the service exists to indicate source specific multicast (source_IP_address_flag: A 1-bit Boolean flag that indicates indicate, when set, that a source IP address value for this service is present to indicate a source specific multicast).

service_destination_IP_address_flag 필드(1비트)가 설정된 경우에는 해당 IP 스트림 콤포넌트가 service_destination_IP_address와는 다른 target IP 어드레스를 갖는 IP 데이터그램을 통해 전송됨을 지시한다. 따라서 본 플래그가 설정된 경우에는 수신 시스템은 해당 IP 스트림 콤포넌트에 접근하기 위해서 component_destination_IP_address을 destination_IP_address로 사용하고, num_channels 루프 내의 service_destination_IP_address 필드를 무시한다(service_destination_IP_address_flag: A 1-bit Boolean flag that indicates, when set to '1', that a service_destination_IP_address value is present, to serve as the default IP address for the components of this Service).When the service_destination_IP_address_flag field (1 bit) is set, it indicates that the corresponding IP stream component is transmitted through an IP datagram having a target IP address different from the service_destination_IP_address. Therefore, when this flag is set, the receiving system uses component_destination_IP_address as the destination_IP_address and ignores the service_destination_IP_address field in the num_channels loop to access the corresponding IP stream component (service_destination_IP_address_flag: A 1-bit Boolean flag indicating that when set to '1 ', that a service_destination_IP_address value is present, to serve as the default IP address for the components of the Service).

source_IP_address 필드(32 또는 128비트)는 source_IP_address_flag가 '1'로 설정된 경우에는 해석될 필요가 있지만, source_IP_address_flag가 '0'로 설정되지 않은 경우에는 해석될 필요가 없다. source_IP_address_flag가 '1'로 설정되고 IP_version_flag 필드가 '0'으로 설정된 경우, 본 필드는 해당 가상 채널의 소스를 나타내는 32비트 IPv4 어드레스를 지시한다. 만약 IP_version_flag 필드가 '1'로 설정된 경우에는 본 필드는 해당 가상 채널의 소스를 나타내는 32비트 IPv6 어드레스를 지시한다(source_IP_address: This field shall be present if the source_IP_address_flag is set to '1' and shall not be present if the source_IP_address_flag is set to '0'. If present, this field shall contain the source IP address of all the IP datagrams carrying the components of this Service. The conditional use of the 128 bit-long address version of this field is to facilitate possible use of IPv6 in the future, although use of IPv6 is not currently defined). The source_IP_address field (32 or 128 bits) needs to be interpreted when the source_IP_address_flag is set to '1', but it need not be interpreted if the source_IP_address_flag is not set to '0'. When the source_IP_address_flag is set to '1' and the IP_version_flag field is set to '0', this field indicates a 32-bit IPv4 address indicating the source of the virtual channel. If the IP_version_flag field is set to '1', this field indicates a 32-bit IPv6 address indicating the source of the virtual channel (source_IP_address: this field shall be present to source_IP_address_flag is set to '1' and shall not be present If the source_IP_address_flag is set to '0'. If present, this field will contain the source IP address of all the IP datagrams carrying the components of this service. Possible use of IPv6 in the future, although IPv6 is not currently defined).

만일 상기 서비스가 NRT 서비스이면, 상기 Source_IP_address 필드는 FLUTE 세션의 모든 채널을 전송하는 동일한 서버의 소스 IP 어드레스(source IP address)가 된다.If the service is an NRT service, the Source_IP_address field is a source IP address of the same server that transmits all channels of the FLUTE session.

service_destination_IP_address 필드(32 또는 128비트)는 service_destination_IP_address_flag 가 '1'로 설정된 경우에는 해석될 필요가 있지만, service_destination_IP_address_flag 가 '0'으로 설정된 경우에는 해석될 필요가 없다. service_destination_IP_address_flag 가 '1'로 설정되고, IP_version_flag 필드가 '0'으로 설정된 경우, 본 필드는 해당 가상 채널에 대한 32비트 데스트네이션 IPv4 어드레스를 나타낸다. service_destination_IP_address_flag 가 '1'로 설정되고, IP_version_flag 필드가 '1'로 설정된 경우, 본 필드는 해당 가상 채널에 대한 64비트 데스트네이션 IPv6 어드레스를 나타낸다. 만약 해당 service_destination_IP_address를 해석할 수 없다면, num_components 루프 내의 component_destination_IP_address 필드가 해석되어야 하고, 수신 시스템은 IP 스트림 콤포넌트에 접근하기 위해서, component_destination_IP_address를 사용해야 한다(service_destination_IP_address: This field shall be present if the service_destination_IP_address_flag is set to '1' and shall not be present if the service_destination_IP_address_flag is set to '0'. If this service_destination_IP_address is not present, then the component_destination_IP_address field shall be present for each component in the num_components loop. The conditional use of the 128 bit-long address version of this field is to facilitate possible use of IPv6 in the future, although use of IPv6 is not currently defined). 만일 상기 서비스가 NRT 서비스이면, 상기 service_destination_IP_Address 필드는 이 FLUTE 세션의 세션 레벨의 데스트네이션 IP 어드레스(destination IP address)가 있으면 시그널링 된다.The service_destination_IP_address field (32 or 128 bits) needs to be interpreted when the service_destination_IP_address_flag is set to '1', but not when the service_destination_IP_address_flag is set to '0'. When the service_destination_IP_address_flag is set to '1' and the IP_version_flag field is set to '0', this field indicates a 32-bit destination IPv4 address for the virtual channel. When the service_destination_IP_address_flag is set to '1' and the IP_version_flag field is set to '1', this field indicates a 64-bit destination IPv6 address for the virtual channel. If the corresponding service_destination_IP_address can not be interpreted, the component_destination_IP_address field in the num_components loop must be interpreted and the receiving system must use component_destination_IP_address to access the IP stream component (service_destination_IP_address: this field shall be present if the service_destination_IP_address_flag is set to '1 If the service_destination_IP_address is not present, then the component_destination_IP_address field shall be present for each component in the num_components loop. The conditional use of the 128-bit long address version of This field is useful for IPv6 in the future, although IPv6 is not currently defined). If the service is an NRT service, the service_destination_IP_Address field is signaled if there is a destination IP address of the session level of this FLUTE session.

한편, 본 실시 예에 따른 SMT는, for loop를 사용하여 복수의 콤포넌트에 대한 정보를 제공한다. Meanwhile, the SMT according to the present embodiment provides information on a plurality of components using a for loop.

이후 상기 num_components 필드 값에 해당하는 콤포넌트 개수만큼 'for' 루프(또는 콤포넌트 루프라 함)가 수행되어 복수의 콤포넌트에 대한 접속 정보를 제공한다. 즉, 해당 서비스에 포함되는 각 콤포넌트의 접속 정보를 제공한다. 이때 각 콤포넌트에 대해 다음과 같은 필드 정보를 제공할 수 있다. 여기서, 하나의 콤포넌트는 하나의 FLUTE 세션에 대응되는 것을 일 실시예로 한다. Thereafter, a 'for' loop (or a component loop) is performed by the number of components corresponding to the num_components field value to provide connection information for a plurality of components. That is, it provides connection information of each component included in the service. At this time, the following field information can be provided for each component. Here, one component corresponds to one FLUTE session.

essential_component_indicator 필드(1비트)는, '1'로 설정되어 있으면 해당 콤포넌트는 모바일 서비스를 위한 필수 콤포넌트 임을 지시한다. 그렇지 않으면, 해당 콤포넌트는 선택적인 콤포넌트임을 지시한다(essential_component_indicator: A one-bit indicator which, when set to '1' shall indicate that this component is an essential component for the service. Otherwise, this field indicates that this component is an optional component).The essential_component_indicator field (1 bit), if set to '1', indicates that the component is a required component for mobile services. Otherwise, it indicates that the component is an optional component (essential_component_indicator: A one-bit indicator which indicates when this component is an essential component for the service. Otherwise, this field indicates that this component is an optional component).

component_destination_IP_address_flag 필드(1비트)는 '1'로 설정되어 있으면 해당 콤포넌트를 위해 component_destination_IP_address 필드가 존재함을 지사하는 플래그이다(component_destination_IP_address_flag: A 1-bit Boolean flag that shall indicate, when set to '1' that the component_destination_IP_address is present for this component). The component_destination_IP_address_flag field (1 bit) is set to '1' to indicate that the component_destination_IP_address field exists for the corresponding component (component_destination_IP_address_flag: A 1-bit Boolean flag indicates that the component_destination_IP_address is present for this component).

port_num_count 필드(6비트)는 해당 UDP/IP 스트림 콤포넌트와 관련된 UDP 포트의 넘버를 지시한다. 데스트네이션 UDP 포트 넘버 값은 destination_UDP_port_num 필드 값으로부터 시작해서 1씩 증가한다. RTP 스트림을 위해서는, 데스트네이션 UDP 포트 넘버는 destination_UDP_port_num 필드 값으로부터 시작해서 2씩 증가하며, 이는 RTP 스트림과 관련된 RTCP 스트림을 포함하기 위해서이다(port_num_count: This field shall indicate the number of destination UDP ports associated with this UDP/IP stream component. The values of the destination UDP port numbers shall start from the component_destination_UDP_port_num field and shall be incremented by one, except in the case of RTP streams, when the destination UDP port numbers shall start from the component_estination_UPD_port_num field and shall be incremented by two, to allow for the RTCP streams associated with the RTP streams). The port_num_count field (6 bits) indicates the number of the UDP port associated with the corresponding UDP / IP stream component. Destination UDP port number value increases by 1, starting from the destination_UDP_port_num field value. For an RTP stream, the destination UDP port number is incremented by 2, starting from the destination_UDP_port_num field value, to include the RTCP stream associated with the RTP stream (port_num_count: this field indicates the number of destination UDP ports associated with this UDP / IP stream component. The values of the destination UDP port numbers shall start from the component_destination_UDP_port_num field and shall be incremented by one, except in the case of RTP streams, when the destination UDP port numbers shall start from the component_estination_UPD_port_num field and shall be incremented by two, to allow for the RTCP streams associated with the RTP streams).

destination_UDP_port_num 필드(16비트)는 해당 IP 스트림 콤포넌트를 위한 데스트네이션 UDP 포트 넘버를 나타낸다. RTP 스트림을 위해서는 destination_UDP_port_num의 값은 짝수이고, 다음 높은 값은 관련된 RTCP 스트림의 데스트네이션 UDP 포트 넘버를 나타낸다(component_destination_UDP_port_num: A 16-bit unsigned integer field, that represents the destination UDP port number for this UDP/IP stream component. For RTP streams, the value of component_estination_UDP_port_num shall be even, and the next higher value shall represent the destination UDP port number of the associated RTCP stream).The destination_UDP_port_num field (16 bits) indicates the destination UDP port number for the corresponding IP stream component. For RTP streams, the value of destination_UDP_port_num is an even number, and the next higher value represents the destination UDP port number of the associated RTCP stream (component_destination_UDP_port_num: A 16-bit unsigned integer field, which represents the destination UDP port number for this UDP / IP stream For RTP streams, the value of component_estination_UDP_port_num shall be even, and the next higher value shall represent the destination UDP port number of the associated RTCP stream.

component_destination_IP_address 필드(32 또는 128비트)는 IP_version_flag 필드가 '0'으로 설정된 경우에는 본 필드는 해당 IP 스트림 콤포넌트를 위한 32비트 데스트네이션 IPv4 어드레스를 지시한다. 그리고 IP_version_flag 필드가 '1'로 설정된 경우에는 본 필드는 해당 IP 스트림 콤포넌트를 위한 128비트 데스트네이션 IPv6 어드레스를 지시한다(component_destination_IP_address: This field shall be present if the component_destination_IP_address_flag is set to '1' and shall not be present if the component_destination_IP_address_flag is set to '0'. When this field is present, the destination address of the IP datagrams carrying this component of the M/H Service shall match the address in this field. When this field is not present, the destination address of the IP datagrams carrying this component shall match the address in the M/H_service_destination_IP_address field. The conditional use of the 128 bit-long address version of this field is to facilitate possible use of IPv6 in the future, although use of IPv6 is not currently defined).The component_destination_IP_address field (32 or 128 bits) indicates that the IP_version_flag field is set to '0', this field indicates a 32-bit destination IPv4 address for the corresponding IP stream component. If the IP_version_flag field is set to '1', this field indicates a 128-bit Destination IPv6 address for the corresponding IP stream component (component_destination_IP_address: this field shall be present if component_destination_IP_address_flag is set to '1' and shall not be When this field is not present, the destination address of the IP datagrams carrying this component of the M / H Service shall match the address in this field. The IPv6 address is the address of the M / H_service_destination_IP_address field, which is the address of the IPv6 address. currently defined).

num_component_level_descriptors 필드(4비트)는 콤포넌트 레벨의 추가 정보를 제공하는 디스크립터의 개수를 표시한다. The num_component_level_descriptors field (4 bits) indicates the number of descriptors providing additional information at the component level.

상기 num_component_level_descriptors 필드 값에 해당하는 개수만큼 상기 콤포넌트 루프에 component_level_descriptor()들이 포함되어, 상기 콤포넌트에 대한 부가 정보를 제공한다.Component_level_descriptors () are included in the component loop by the number corresponding to the num_component_level_descriptors field value, thereby providing additional information on the component.

num_service_level_descriptors 필드(4비트)는 해당 서비스 레벨의 추가 정보를 제공하는 디스크립터의 개수를 표시한다.The num_service_level_descriptors field (4 bits) indicates the number of descriptors providing additional information of the service level.

상기 num_service_level_descriptors 필드 값에 해당하는 개수만큼 상기 서비스 루프에 service_level_descriptor()들이 포함되어, 상기 서비스에 대한 부가 정보를 제공한다. 상기 서비스가 모바일 서비스이면 모바일 서비스에 대한 부가 정보를 제공하고, NRT 서비스이면 NRT 서비스에 대한 부가 정보를 제공한다.Service_level_descriptors () are included in the service loop by the number corresponding to the value of the num_service_level_descriptors field, thereby providing additional information on the service. If the service is a mobile service, it provides additional information on the mobile service. If the service is a NRT service, it provides additional information on the NRT service.

num_ensemble_level_descriptors 필드(4비트)는 앙상블 레벨의 추가 정보를 제공하는 디스크립터의 개수이다. The num_ensemble_level_descriptors field (4 bits) is the number of descriptors providing additional information at the ensemble level.

상기 num_ensemble_level_descriptors 필드 값에 해당하는 개수만큼 상기 앙상블 루프에 ensemble_level_descriptor()들이 포함되어, 상기 앙상블에 대한 부가 정보를 제공한다.The ensemble_level_descriptor () is included in the ensemble loop by the number corresponding to the num_ensemble_level_descriptors field value, thereby providing additional information on the ensemble.

한편, 도 30의 SMT에서도 component_level_descriptors()로서 도 16와 같은 component_descriptor()가 제공될 수 있다.In the SMT of FIG. 30, a component_descriptor () as shown in FIG. 16 may be provided as component_level_descriptors ().

싱기 component_descriptor()는 SMT의 콤포넌트 레벨 디스크립터component_level_descriptors()의 하나로서 사용되며, 해당 콤포넌트의 부가적인 시그널링 정보를 서술한다. The component component descriptor () is used as one of the SMT component level descriptors component_level_descriptors (), and describes additional signaling information of the component.

따라서, 모바일 NRT 서비스에서도 해당 FULTE 세션을 수신하기 위하여 필요한 시그널링 정보들은 도 16의 component_descriptor() 디스크립터를 사용하여 제공할 수 있다.Accordingly, the signaling information necessary for receiving the corresponding FULTE session in the mobile NRT service can be provided using the component_descriptor () descriptor of FIG.

예를 들어, 도 16의 component_descriptor()의 component_type 필드 값이 38이면 component_data(component_type) 필드는 도 17과 같은 FLUTE 파일 딜리버리를 위한 데이터를 제공한다. 도 16, 도 17의 각 필드의 설명은 앞에서 했으므로 여기서는 생략하기로 한다. For example, if the component_type field value of the component_descriptor () in FIG. 16 is 38, the component_data (component_type) field provides data for FLUTE file delivery as shown in FIG. The description of each field in Fig. 16 and Fig. 17 has been described above, and therefore, will not be described here.

또한 도 30의 SMT에서도 미디어 오브젝트 관련 정보를 제공할 수 있다. In addition, the SMT in Fig. 30 can also provide media object related information.

일 실시예로, 미디어 오브젝트 관련 정보가 존재하면, 도 12와 같은 NRT_media_object_association_descriptor()를 콤포넌트 레벨 디스크립터로 제공한다. 이 경우 수신기에서는 콤포넌트 레벨 디스크립터에 포함된 모든 디스크립터들을 파싱하는데, 이때 디스크립터의 식별자를 이용하여 NRT_media_object_association_descriptor()를 식별할 수 있다. 상기 NRT_media_object_association_descriptor()의 각 필드의 설명 및 상기 NRT_media_object_association_descriptor()로부터 텍스트 형태의 미디어 오브젝트 관련 정보를 추출하는 과정은 전술한 도 12의 NST 설명을 참조하면 되므로, 여기서는 생략하기로 한다. 이때, 콤포넌트 루프에 NRT_media_object_association_descriptor()가 있는지를 식별하기 위하여 상기 도 30의 SMT에 media_object_association_indicator 필드(1비트)를 할당할 수도 있다. In one embodiment, if the media object related information exists, the NRT_media_object_association_descriptor () shown in FIG. 12 is provided to the component level descriptor. In this case, the receiver parses all the descriptors included in the component level descriptor, and identifies the NRT_media_object_association_descriptor () using the identifier of the descriptor. The description of each field of the NRT_media_object_association_descriptor () and the process of extracting the media object related information in text form from the NRT_media_object_association_descriptor () will be omitted because it will be described with reference to the NST description in FIG. At this time, a media_object_association_indicator field (1 bit) may be allocated to the SMT in FIG. 30 to identify whether the NRT_media_object_association_descriptor () exists in the component loop.

다른 실시예로 도 16와 같은 component_descriptor()를 이용하여 미디어 오브젝트 관련 정보를 제공할 수도 있다. 이때, 상기 componet_type 필드 값은 43-71 사이의 값들 중 하나를 사용할 수 있다. 본 발명에서는 상기 미디어 오브젝트 관련 정보를 콤포넌트 데이터로 제공하기 위하여 43을 할당하는 것을 일 실시예로 한다. 상기 예시한 수치는 일 예에 불과하며, 상기 수치로 본 발명의 권리범위가 제한되는 것은 아니다. 즉, 상기 component_type 필드 값이 43이면 component_data(component_type) 필드는 도 18과 같은 미디어 오브젝트 관련 정보를 위한 콤포넌트 데이터를 제공한다. 도17의 각 필드의 설명은 도 12를 참조하면 되므로, 여기서는 생략하기로 한다. In another embodiment, the media object related information may be provided using the component_descriptor () shown in FIG. At this time, the component_type field value may use one of the values between 43 and 71. In the present invention, 43 is allocated to provide the media object association information as component data. The numerical values shown above are only examples, and the numerical values do not limit the scope of the present invention. That is, if the component_type field value is 43, the component_data (component_type) field provides the component data for media object association information as shown in FIG. The description of each field in Fig. 17 will be referred to Fig. 12, and thus will not be described here.

또 다른 실시예로, 도 16과 같은 component_descriptor()를 이용하여 미디어 오브젝트 관련 정보를 제공할 때, 상기 componet_type 필드 값으로 다이나믹 레인지(즉, 96-127) 내 어느 한 값으로 할당할 수도 있다. 이 경우 도 19와 같은 콤포넌트 데이터를 이용하여 미디어 오브젝트 관련 정보를 제공할 수 있다. 도 19는 콤포넌트 데이터 내 general_media_type 필드 값으로 0x2를 할당하거나, 0x4~0xF 중 어느 하나의 값을 할당하고, 상기 media_type_text() 필드, decoding_parameters_text() 필드를 이용하여 미디어 오브젝트 관련 정보를 텍스트 형태로 제공할 수도 있다. 도 19에서, media_type_text_length 필드(8비트)는 다음에 오는 media_type_text() 문자 스트링의 바이트 길이를 표시한다(This field shall specify the length (in bytes) of the media_type_text() character string.). 상기 media_type_text() 필드는 인코딩 포맷을 식별하는 미디어 타입을 표시한다. 즉, 상기 제너럴 미디어 타입에 대응하는 스트림의 인코딩 포맷을 텍스트 형태로 표시한다. decoding_parameters_text_length 필드(8비트)는 다음에 오는 decoding_parameters_text() 문자 스트링의 바이트 길이를 표시한다(This field shall specify the length (in bytes) of the decoding_parameters_text() character string.). 상기 decoding_parameters_text() 필드는 상기 제너럴 미디어 타입에 대응하는 스트림의 디코딩 파라미터들을 텍스트 형태로 표시한다.In another embodiment, when the media object related information is provided using the component_descriptor () shown in FIG. 16, the value of the component_type field may be assigned to any value within the dynamic range (i.e., 96-127). In this case, the media object related information can be provided using the component data as shown in FIG. FIG. 19 is a diagram for explaining a method of assigning 0x2 or 0x4 to 0xF as the general_media_type field value in the component data and providing the media object related information in text form using the media_type_text () field and the decoding_parameters_text () field It is possible. In FIG. 19, the media_type_text_length field (8 bits) indicates the byte length of the following media_type_text () character string: (This field shall specify the length (in bytes) of the media_type_text () character string. The media_type_text () field indicates the media type that identifies the encoding format. That is, the encoding format of the stream corresponding to the general media type is displayed in text form. The decoding_parameters_text_length field (8 bits) indicates the length of the next decoding_parameters_text () character string. (This field shall specify the length (in bytes) of the decoding_parameters_text () character string.) The decoding_parameters_text () field indicates the decoding parameters of the stream corresponding to the general media type in text form.

상기 media_type_text() 필드, decoding_parameters_text() 필드는 MIME(Multipurpose Internet Mail Extensions) 타입으로 표현된 텍스트 형태로 인코딩 포맷과 디코딩 파라미터를 제공하는 것을 일 실시예로 한다.The media_type_text () field and the decoding_parameters_text () field provide an encoding format and a decoding parameter in a text format expressed by a Multipurpose Internet Mail Extensions (MIME) type.

즉, 콤포넌트 데이터 바이트들(component data bytes)을 통해 시그널링함으로써, FULTE 세션을 수신하기 위해 꼭 필요한 정보들은 모두 제공할 수 있으며, 이 FLUTE 세션을 통해 FDT을 수신하고, 수신되 FDT를 이용하여 FLUTE 세션을 통해 전달되는 모든 파일들에 대한 정보를 획득할 수 있다. 따라서 NRT 서비스 데이터를 수신할 수 있게 된다. That is, by signaling through the component data bytes, it is possible to provide all the necessary information for receiving the FULTE session, receive the FDT through the FLUTE session, and receive the FLUTE session It is possible to acquire information about all the files transmitted through the network. Thus, it becomes possible to receive NRT service data.

이와 같이 본 발명에 따른 NRT 서비스를 구성하는 콘텐트/파일들의 렌더링(rendering)에 필수적인 콘테이너 정보, 인코딩 정보, 미디어 오브젝트의 디코딩 파라미터는 콤포넌트별로 해당 NST에 시그널링된다. In this way, the container information, encoding information, and decoding parameters of the media object, which are essential for rendering the content / files constituting the NRT service according to the present invention, are signaled to the corresponding NST for each component.

한편, 본 발명은 NRT 서비스를 구성하는 콘텐트/파일들의 렌더링(rendering)에 필수적인 콘테이너 정보, 인코딩 정보, 미디어 오브젝트의 디코딩 파라미터를 OMA BCAST 서비스 가이드(SG) 정보에 전송할 수 있다. 따라서 수신 시스템에서는 각 콘텐트별로 해당 콘텐트의 렌더링(rendering)에 필수적인 콘테이너 정보, 인코딩 정보, 미디어 오브젝트의 디코딩 파라미터를 추출하여 해당 콘텐트의 렌더링에 이용할 수 있게 된다. Meanwhile, the present invention can transmit container information, encoding information, and decoding parameters of a media object, which are essential for rendering the content / files constituting the NRT service, to the OMA BCAST service guide (SG) information. Accordingly, the receiving system extracts container information, encoding information, and decoding parameters of a media object, which are indispensable for rendering the corresponding content for each content, and can use it for rendering the corresponding content.

도 31은 모바일 NRT 서비스를 위한 NRT 콘텐트를 수신하여 저장 및 재생할 수 있는 수신 시스템의 일 실시예이다. 도 31에서 실선 화살표는 데이터 패스(Data path)를, 점선 화살표는 컨트롤 시그널 패스(Control signal path)를 나타낸다.31 is an embodiment of a receiving system capable of receiving, storing, and reproducing NRT content for a mobile NRT service. 31, a solid line arrow indicates a data path, and a dashed arrow indicates a control signal path.

도 31의 수신 시스템은 시스템 전체를 제어하는 오퍼레이션 컨트롤러(2100), 튜너(2111), 복조기(2112), 등화기(2113), 기지 데이터 검출기(2114), 블록 디코더(2115), 프라이머리 RS 프레임 디코더(2116), 세컨더리 RS 프레임 디코더(2117), 시그널링 디코딩더(2118) 및 베이스밴드 제어기(2119)를 포함한다. 여기서, 상기 수신 시스템은 FIC 핸들러(2121), 서비스 매니저(2122), 서비스 시그널링 핸들러(2123) 및 제1 저장부(2124)를 더 포함할 수 있다. 그리고 상기 수신 시스템은, 프라이머리 RS 프레임 버퍼(2131), 세컨더리 RS 프레임 버퍼(2132), 및 트랜스포트 패킷(TP) 핸들러(2133)를 더 포함할 수 있다. 또한, 상기 수신 시스템은, IP(Internet Protocol) 데이터그램 핸들러(2141), 디스크램블러(2142), UDP(User Datagram Protocol) 데이터그램 핸들러(2143), RTP/RTCP(Real-time Transport Protocol/Real-time Transport Control Protocol) 데이터그램 핸들러(2144), NTP(Network Time Protocol) 데이터그램 핸들러(2145), 서비스 보호(service protection) 스트림 핸들러(2146), 제2 저장부(2147), ALC/LCT(Asynchronous Layered Coding/Layered Coding Transport) 스트림 핸들러(2148), 디콤프레서(decompressor)(2149), XML(Extensible Mark-up Language) 파서(2150) 및 FDT(Field Device Tool) 핸들러(2151)를 더 포함할 수 있다. 그리고 상기 수신 시스템은, A/V 디코더(2161), 파일 디코더(2162), 제3 저장부(2163), 미들웨어 엔진(2164) 및 SG 핸들러(2165)를 더 포함할 수 있다. 또한, 상기 수신 시스템은, EPG 매니저(2171), 어플리케이션 매니저(2172) 및 UI(User Interface) 매니저(2173)를 더 포함할 수 있다.The receiving system of FIG. 31 includes an operation controller 2100, a tuner 2111, a demodulator 2112, an equalizer 2113, a known data detector 2114, a block decoder 2115, a primary RS frame Decoder 2116, a secondary RS frame decoder 2117, a signaling decoding unit 2118, and a baseband controller 2119. [ Here, the receiving system may further include an FIC handler 2121, a service manager 2122, a service signaling handler 2123, and a first storage unit 2124. The receiving system may further include a primary RS frame buffer 2131, a secondary RS frame buffer 2132, and a transport packet (TP) handler 2133. The receiving system includes an Internet protocol (IP) datagram handler 2141, a descrambler 2142, a user datagram protocol (UDP) datagram handler 2143, an RTP / RTCP (Real- time Transport Control Protocol (NTP) datagram handler 2144, an NTP (Network Time Protocol) datagram handler 2145, a service protection stream handler 2146, a second storage unit 2147, an ALC / LCT (Extensible Mark-up Language) parser 2150 and an FDT (Field Device Tool) handler 2151. The Layered Coding / Layered Coding Transport have. The receiving system may further include an A / V decoder 2161, a file decoder 2162, a third storage unit 2163, a middleware engine 2164, and an SG handler 2165. The receiving system may further include an EPG manager 2171, an application manager 2172, and a UI (User Interface)

이하 본 명세서에서는 설명의 편의를 위해, 튜너(2111), 복조기(2112), 등화기(2113), 기지 데이터 검출기(2114), 블록 디코더(2115), 프라이머리 RS 프레임 디코더(2116), 세컨더리 RS 프레임 디코더(2117), 시그널링 디코더(2118) 및 베이스밴드 제어기(2119)를 포함하여 베이스밴드 프로세서(2110)라 칭하고, FIC 핸들러(2121), 서비스 매니저(2122), 서비스 시그널링 핸들러(2123) 및 제1 저장부(2124)를 포함하여 서비스 디멀티플렉서(2120)라 칭한다. 또한, 프라이머리 RS 프레임 버퍼(2131), 세컨더리 RS 프레임 버퍼(2132) 및 트랜스포트 패킷 핸들러(2133)를 포함하여 IP 어뎁테이션 모듈(2130)이라 칭하고, IP 데이터그램 핸들러(2141), 디스크램블러(2142), UDP 데이터그램 핸들러(2143), RTP/RTCP 데이터그램 핸들러(2144), NTP 데이터그램 핸들러(2145), 서비스 보호(service protection) 스트림 핸들러(2146), 제2 저장부(2147), ALC/LCT 스트림 핸들러(2148), 디콤프레서(decompressor)(2149), XML 파서(2150) 및 FDT 핸들러(2151)를 포함하여 커먼 IP 모듈(2140)이라 칭한다. 또한, 상기 A/V 디코더(2161), 파일 디코더(2162), 제3 저장부(2163), 미들웨어 엔진(2164) 및 SG 핸들러(2165)를 포함하여 어플리케이션 모듈(2160)이라 칭한다.Hereinafter, for the sake of convenience of description, a description will be made of a tuner 2111, a demodulator 2112, an equalizer 2113, a known data detector 2114, a block decoder 2115, a primary RS frame decoder 2116, a secondary RS A signal decoder 2118 and a baseband controller 2119 and is referred to as a baseband processor 2110. The FIC handler 2121, the service manager 2122, the service signaling handler 2123, 1 storage unit 2124 to be referred to as a service demultiplexer 2120. The IP adaptation module 2130 includes the primary RS frame buffer 2131, the secondary RS frame buffer 2132 and the transport packet handler 2133. The IP adaptation module 2130 includes an IP datagram handler 2141, a descrambler 2142, a UDP datagram handler 2143, an RTP / RTCP datagram handler 2144, an NTP datagram handler 2145, a service protection stream handler 2146, a second storage 2147, an ALC / LCT stream handler 2148, a decompressor 2149, an XML parser 2150, and an FDT handler 2151. The application module 2160 includes the A / V decoder 2161, the file decoder 2162, the third storage unit 2163, the middleware engine 2164, and the SG handler 2165.

도 31에서 사용되는 용어는 현재 널리 사용되는 일반적인 용어를 선택하였으나, 새로운 기술의 출현에 따라 본 발명에서 출원인이 가장 적합하다고 판단한 용어도 임의로 사용하였으며, 이에 대해서는 해당 설명부분에서 용어의 의미를 명확히 설명하기로 한다. 따라서, 본 발명을 이해함에 있어 단순한 용어의 명칭이 아닌 용어가 가지는 의미로서 본 발명을 파악하여야 됨을 밝혀 두고자 한다.Although the term used in FIG. 31 is a general term that is widely used at present, it has been arbitrarily used by the applicant in the present invention in accordance with the emergence of a new technology. . Therefore, it should be understood that the present invention should be grasped as a meaning of a term that is not a name of a simple term in understanding the present invention.

이와 같이 구성된 도 31에서 오퍼레이션 컨트롤러(2119)는 상기 베이스밴드 프로세서(2110)의 각 블록의 동작을 제어한다.In FIG. 31 constructed as described above, the operation controller 2119 controls the operation of each block of the baseband processor 2110.

튜너(2111)는 특정 물리 채널(또는 물리 전송 채널, physical transmission channel, PTC)의 주파수로 수신 시스템을 튜닝하여 고정형 방송 수신장치를 위한 방송 신호인 메인 서비스 데이터와 이동형 방송 수신장치를 위한 방송 신호인 모바일 서비스 데이터를 수신한다. 상기 튜너(2111)는 튜닝된 특정 채널의 주파수를 중간주파수(IF: Intermediate Frequency) 신호로 다운 컨버전하여 복조기(2112)와 기지 데이터 검출기(2114)로 출력한다. 이때 상기 튜너는 실시간 데이터인 메인 서비스 데이터와 모바일 서비스 데이터를 수신할 수도 있고, 비실시간(NRT) 서비스 데이터를 수신할 수도 있다.The tuner 2111 tunes the receiving system at a frequency of a specific physical channel (or a physical transmission channel, PTC) to transmit main service data, which is a broadcast signal for the fixed broadcast receiving apparatus, And receives mobile service data. The tuner 2111 down-converts the frequency of the tuned specific channel to an intermediate frequency (IF) signal and outputs the down-converted signal to a demodulator 2112 and a known data detector 2114. At this time, the tuner may receive main service data and mobile service data, which are real time data, and may receive non-real time (NRT) service data.

상기 튜너(2111)로부터 출력되는 통과대역 디지털 IF 신호는 메인 서비스 데이터만 포함할 수도 있고, 모바일 서비스 데이터만 포함할 수도 있으며, 메인 서비스 데이터와 모바일 서비스 데이터를 함께 포함할 수도 있다.The passband digital IF signal output from the tuner 2111 may include only main service data, may include only mobile service data, or may include main service data and mobile service data.

복조기(2112)는 튜너(2111)로부터 입력되는 통과 대역의 디지털 IF 신호에 대해 자동 이득 제어, 반송파 복구 및 타이밍 복구 등을 수행하여 기저대역 신호로 만든 후 등화기(2113)와 기지 데이터 검출기(2114)로 출력한다. 상기 복조기(2112)는 타이밍 복원이나 반송파 복구 시에 상기 기지 데이터 검출기(2114)로부터 입력 받는 기지 데이터 심볼 열을 이용하여 복조 성능을 향상 시킬 수 있다.The demodulator 2112 performs automatic gain control, carrier recovery, and timing recovery on the digital IF signal of the passband inputted from the tuner 2111 to generate a baseband signal, and then outputs an equalizer 2113 and a known data detector 2114 . The demodulator 2112 can improve the demodulation performance using the known data symbol sequence received from the known data detector 2114 during timing recovery or carrier recovery.

등화기(2113)는 복조기(2112)에서 복조된 신호에 포함된 채널상의 왜곡을 보상한 후 블록 디코더(2115)로 출력한다. 상기 등화기(2113)는 기지 데이터 검출기(2114)로부터 입력 받는 기지 데이터 심볼 열을 이용함으로써, 등화 성능을 향상 시킬 수 있다. 또한, 상기 등화기(2113)는 상기 블록 디코더(2115)의 디코딩 결과를 피드백 받아 등화 성능을 향상시킬 수도 있다.The equalizer 2113 compensates for the distortion on the channel included in the demodulated signal from the demodulator 2112, and outputs the compensated signal to the block decoder 2115. The equalizer 2113 can improve the equalization performance by using the known data symbol sequence received from the known data detector 2114. [ Also, the equalizer 2113 may improve the equalization performance by receiving the decoding result of the block decoder 2115.

기지 데이터 검출기(2114)는 복조기(2112)의 입/출력 데이터 즉, 복조가 이루어지기 전의 데이터 또는 복조가 일부 이루어진 데이터로부터 송신 측에서 삽입한 기지 데이터 위치를 검출하고 위치 정보와 함께 그 위치에서 발생시킨 기지 데이터의 시퀀스(Sequence)를 복조기(2112), 등화기(2113) 및 오퍼레이션 컨트롤러(2119)로 출력한다. 또한, 상기 기지데이터 검출기(2114)는 송신 측에서 추가적인 부호화를 거친 모바일 서비스 데이터와 추가적인 부호화를 거치지 않은 메인 서비스 데이터를 블록 디코더(2115)에서 구분할 수 있도록 하기 위한 정보를 블록 디코더(2115)로 출력한다.The known data detector 2114 detects the known data positions inserted at the transmitting side from the input / output data of the demodulator 2112, that is, the data before the demodulation or the demodulated data, and generates the known data at the position And outputs a sequence of known known data to the demodulator 2112, the equalizer 2113, and the operation controller 2119. The known data detector 2114 outputs information for enabling the block decoder 2115 to distinguish the mobile service data that has been further encoded in the transmitting side and the main service data that has not undergone the additional coding to the block decoder 2115 do.

블록 디코더(2115)는 등화기(2113)에서 채널 등화된 후 입력되는 데이터가 송신 측에서 serial concatenated convolution code (SCCC) 방식의 블록 인코딩과 트렐리스 인코딩이 모두 수행된 데이터(즉, RS 프레임 내 데이터, 시그널링 데이터)이면 송신 측의 역으로 트렐리스 디코딩 및 블록 디코딩을 수행하고, 블록 인코딩은 수행되지 않고 트렐리스 인코딩만 수행된 데이터(즉, 메인 서비스 데이터)이면 트렐리스 디코딩만을 수행한다.The block decoder 2115 receives the data after the channel equalization in the equalizer 2113 and the data in which both the block encoding and the trellis encoding of the serial concatenated convolutional code (SCCC) Data and signaling data), it performs trellis decoding and block decoding inversely to the transmitting side. If the data is only Trellis-encoded (i.e., main service data) without performing block encoding, only Trellis decoding is performed do.

시그널링 디코더(2118)는 등화기(2113)에서 채널 등화된 후 입력되는 시그널링 데이터의 디코딩을 수행한다. 상기 시그널링 디코더(2118)로 입력되는 시그널링 데이터(또는 시그널링 정보)는 송신 시스템에서 블록 인코딩과 트렐리스 인코딩이 모두 수행된 데이터라고 가정한다. 이러한 시그널링 데이터로는 TPC(Transmission Parameter Channel) 데이터와 FIC(Fast Information Channel) 데이터를 일 예로 들 수 있다. 예를 들면, 상기 시그널링 디코더(2118)는 입력되는 데이터 중 시그널링 정보 영역의 데이터에 대해 parallel concatenated convolution code (PCCC) 방식의 회귀적 터보 디코딩을 수행한 후, 터보 디코딩된 시그널링 데이터로부터 FIC 데이터와 TPC 데이터를 분리한다. 또한, 상기 시그널링 디코더(2118)는 상기 분리된 TPC 데이터에 대해 송신 측의 역으로 RS 디코딩을 수행하여 오퍼레이션 컨트롤러(2119)로 출력한다. 그리고 상기 시그널링 디코더(2118)는 상기 분리된 FIC 데이터에 대해 서브 프레임 단위로 디인터리빙을 수행하고, 송신 측의 역으로 RS 디코딩을 수행한 후 FIC 핸들러(2121)로 출력한다. 상기 시그널링 디코더(2118)에서 디인터리빙 및 RS 디코딩되어 FIC 핸들러(2121)로 출력되는 FIC 데이터의 전송 단위는 FIC 세그먼트이다.The signaling decoder 2118 performs decoding of the signaling data input after being equalized by the equalizer 2113. It is assumed that the signaling data (or signaling information) input to the signaling decoder 2118 is data in which both block encoding and trellis encoding are performed in the transmission system. Examples of such signaling data include transmission parameter channel (TPC) data and fast information channel (FIC) data. For example, the signaling decoder 2118 performs the recursive turbo decoding of the data of the signaling information area of the input data in parallel concatenated convolutional code (PCCC), then outputs FIC data and TPC Separate the data. In addition, the signaling decoder 2118 performs RS decoding on the separated TPC data in the reverse of the transmitting side and outputs it to the operation controller 2119. The signaling decoder 2118 deinterleaves the separated FIC data on a subframe basis, performs RS decoding inverse to the transmitting side, and outputs the resultant signal to the FIC handler 2121. The transmission unit of the FIC data deinterleaved and RS-decoded by the signaling decoder 2118 and output to the FIC handler 2121 is an FIC segment.

FIC 핸들러(2121)는 시그널링 디코더(2118)로부터 FIC 데이터를 입력 받아 서비스 획득을 위한 시그널링 정보 즉, 앙상블과 모바일 서비스 간의 매핑 정보를 추출한다. 이를 위해 상기 FIC 핸들러(2121)는 FIC 세그먼트 버퍼, FIC 세그먼트 파서 및 FIC 청크 파서를 포함할 수 있다.The FIC handler 2121 receives the FIC data from the signaling decoder 2118 and extracts signaling information for service acquisition, that is, mapping information between the ensemble and the mobile service. To this end, the FIC handler 2121 may include an FIC segment buffer, an FIC segment parser, and a FIC chunk parser.

FIC 세그먼트 버퍼는 시그널링 디코더(2118)로부터 입력되는 M/H 프레임 단위의 FIC 세그먼트 그룹을 버퍼링한 후 FIC 세그먼트 파서로 출력한다. 상기 FIC 세그먼트 파서는 상기 FIC 세그먼트 버퍼에 저장된 각 FIC 세그먼트의 헤더를 추출하여 분석하고, 분석 결과에 따라 해당 FIC 세그먼트의 페이로드를 FIC 청크 파서로 출력한다. 상기 FIC 청크 파서는 상기 FIC 세그먼트 파서에서 분석된 결과를 이용하여 FIC 세그먼트 페이로드들로부터 FIC 청크 데이터 구조를 복원하고 분석하여 서비스 획득을 위한 시그널링 정보를 추출한다. 상기 FIC 청크 파서에서 획득된 시그널링 정보는 서비스 매니저(2122)로 출력된다.The FIC segment buffer buffers the FIC segment group in units of M / H frames input from the signaling decoder 2118 and outputs the FIC segment group to the FIC segment parser. The FIC segment parser extracts and analyzes the header of each FIC segment stored in the FIC segment buffer, and outputs the payload of the corresponding FIC segment to the FIC chunk parser according to the analysis result. The FIC chunk parser reconstructs and analyzes the FIC chunk data structure from the FIC segment payloads using the results analyzed in the FIC segment parser to extract signaling information for service acquisition. The signaling information obtained from the FIC chunk parser is output to the service manager 2122.

한편, 서비스 시그널링 핸들러(2123)는 서비스 시그널링 버퍼와 서비스 시그널링 파서를 포함하여 구성하고, 상기 UDP 데이터그램 핸들러(2143)로부터 전송되는 서비스 시그널링 채널의 테이블 섹션들 예를 들어, SMT 섹션들을 버퍼링한 후 분석하고 처리한다. 상기 서비스 시그널링 핸들러(2123)에서 처리된 SMT 정보도 서비스 매니저(2122)로 출력된다.The service signaling handler 2123 includes a service signaling buffer and a service signaling parser. The service signaling handler 2123 buffers table sections of the service signaling channel transmitted from the UDP datagram handler 2143, for example, SMT sections Analyze and process. The SMT information processed by the service signaling handler 2123 is also output to the service manager 2122.

상기 SMT 섹션 또는 상기 SMT 섹션을 전송하는 서비스 시그널링 채널은 Well-known IP desination address와 well-known desination UDP port number를 가지는 UDP/IP 패킷 형태로 해당 RS 프레임에 포함되어 수신되는 것을 일 실시예로 한다. 따라서, 수신 시스템에서 별도의 정보를 요구하지 않고 상기 SMT 섹션 및 각 SMT 섹션의 디스크립터들을 파싱할 수 있다. The SMT section or the service signaling channel for transmitting the SMT section is received in a corresponding RS frame in the form of a UDP / IP packet having a well-known IP desination address and a well-known des- pination UDP port number . Thus, the receiving system can parse the SMT section and the descriptors of each SMT section without requiring any additional information.

또한 상기 SMT 섹션은 상기 SMT 섹션이 포함된 앙상블 내 모든 서비스에 대한 시그널링 정보(IP 접속 정보 포함)를 제공한다. 그러므로, 상기 SMT로부터 파싱된 정보를 이용하여 수신을 원하는 서비스에 속한 IP 스트림 콤포넌트를 억세스하여, 사용자에게 해당 서비스를 제공할 수 있다.The SMT section also provides signaling information (including IP connection information) for all services in the ensemble including the SMT section. Therefore, the IP stream component belonging to the service desired to be received can be accessed using the information parsed from the SMT, and the corresponding service can be provided to the user.

만일, 상기 서비스가 NRT 서비스이면, 상기 SMT로부터 NRT 서비스를 구성하는 콘텐트/파일들을 전송하는 FLUTE 세션의 접속 정보와 상기 NRT 서비스를 렌더링하는데 필요한 시그널링 정보를 추출할 수 있다. 예를 들어, 상기 SMT로부터 각 FLUTE 세션으로 전송되는 NRT 서비스의 콘텐트/파일들의 렌더링(rendering)에 필수적인 정보를 추출할 수 있다. 상기 NRT 서비스의 콘텐트/파일들의 렌더링(rendering)에 필수적인 정보는 콘테이너 정보가 될 수도 있고, 인코딩 정보가 될 수도 있으며, 미디어 오브젝트의 디코딩 파라미터가 될 수도 있다. If the service is an NRT service, connection information of a FLUTE session for transmitting content / files constituting an NRT service from the SMT and signaling information necessary for rendering the NRT service can be extracted. For example, information necessary for rendering the content / files of the NRT service transmitted from the SMT to each FLUTE session can be extracted. The information necessary for rendering the content / files of the NRT service may be container information, encoding information, or a decoding parameter of the media object.

상기 SMT로부터 파싱된 정보는 서비스 매니저(2122)에 의해 수집되어 제1 저장부(2124)에 저장된다. 상기 서비스 매니저(2124)는 상기 SMT에서 추출된 정보를 서비스 맵 및 가이드 데이터 형태로 상기 제1 저장부(2124)에 저장한다. The information parsed from the SMT is collected by the service manager 2122 and stored in the first storage unit 2124. The service manager 2124 stores the information extracted from the SMT in the first storage unit 2124 in the form of a service map and guide data.

즉, 상기 서비스 매니저(2122)는 FIC 핸들러(2121)와 서비스 시그널링 핸들러(2123)로부터 수집한 시그널링 정보를 이용하여 서비스 맵을 구성하고, 서비스 가이드(SG) 핸들러(2165)로부터 수집한 서비스 가이드(SG)를 이용하여 프로그램 가이드를 작성한다. 그리고 상기 구성된 서비스 맵과 작성된 서비스 가이드를 참조하여 유저(User)가 원하는 모바일 서비스를 수신할 수 있도록 오퍼레이션 컨트롤러(2119)를 제어하고 또한, 유저의 입력에 따라 프로그램 가이드가 화면의 적어도 일부에 디스플레이 될 수 있도록 제어한다.That is, the service manager 2122 configures a service map using the signaling information collected from the FIC handler 2121 and the service signaling handler 2123, and transmits the service guide (service guide) SG) to create a program guide. Referring to the service map and the created service guide, the operation controller 2119 is controlled to receive a mobile service desired by the user, and the program guide is displayed on at least a part of the screen according to the input of the user .

제1 제어부(2124)는 서비스 매니저(2122)에서 작성된 서비스 맵 및 서비스 가이드를 저장한다. 또한, 상기 제1 제어부(2124)는 상기 서비스 매니저(2122) 및 EPG 매니저(2171)의 요청에 따라 필요한 데이터를 추출하여 서비스 매니저(2122) 및/또는 EPG 매니저(2171)로 전달한다.The first control unit 2124 stores a service map and a service guide created in the service manager 2122. The first control unit 2124 extracts necessary data according to a request from the service manager 2122 and the EPG manager 2171 and transfers the extracted data to the service manager 2122 and / or the EPG manager 2171.

오프레이션 컨트롤러(2119)는 기지 데이터 위치 정보 및 TPC 데이터를 입력 받아 M/H 프레임 시간 정보, 선택된 퍼레이드(Parade)의 데이터 그룹 존재 유무, 데이터 그룹 내의 기지 데이터의 위치 정보, 전력 제어 정보 등을 베이스밴드 프로세서(2110)의 각 블록에 전달한다. 상기 TPC 데이터의 상세한 설명은 뒤에서 하기로 한다.Based on the known data position information and the TPC data, the offset controller 2119 receives M / H frame time information, existence of a data group of a selected parade, location information of known data in a data group, To the respective blocks of the band processor 2110. A detailed description of the TPC data will be given later.

한편, 본 발명에 따르면, 송신 시스템에서는 인코딩 단위로 RS 프레임 개념을 사용하고 있다. 상기 RS 프레임은 프라이머리 RS 프레임(Primary RS Frame)과 세컨더리 RS 프레임(Secondary RS Frame)으로 구분한다. 본 발명에서 프라이머리 RS 프레임과 세컨더리 RS 프레임의 구분은 데이터의 중요도에 따르는 것을 일 실시 예로 한다.Meanwhile, according to the present invention, the transmission system uses the RS frame concept as an encoding unit. The RS frame is divided into a primary RS frame and a secondary RS frame. In the present invention, the division between the primary RS frame and the secondary RS frame is performed according to the importance of data.

프라이머리 RS 프레임 디코더(2116)는 블록 디코더(2115)의 출력을 입력으로 받는다. 이때, 상기 프라이머리 RS 프레임 디코더(2116)는 RS(Reed Solomon) 인코딩 및/또는 CRC(Cyclic Redundancy Check) 인코딩된 모바일 서비스 데이터 또는 NRT 서비스 데이터를 상기 블록 디코더(2115)로부터 입력 받는 것을 일 실시 예로 한다. 상기 프라이머리 RS 프레임 디코더(2116)는 RS(Reed Solomon) 인코딩 및/또는 CRC(Cyclic Redundancy Check) 인코딩된 SMT 섹션 데이터 또는 OMA BCAST SG 데이터를 상기 블록 디코더(2115)로부터 입력 받을 수 있다.The primary RS frame decoder 2116 receives the output of the block decoder 2115 as an input. In this case, the primary RS frame decoder 2116 receives the Reed Solomon (RS) encoded and / or CRC (Cyclic Redundancy Check) encoded mobile service data or NRT service data from the block decoder 2115 do. The primary RS frame decoder 2116 can receive RS (Reed Solomon) encoding and / or cyclic redundancy check (CRC) encoded SMT section data or OMA BCAST SG data from the block decoder 2115.

즉, 프라이머리 RS 프레임 디코더(2116)는 메인 서비스 데이터가 아닌 데이터 예를 들어, 모바일 서비스 데이터, NRT 서비스 데이터, SMT 섹션 데이터, OMA BCAST SG 데이터 중 적어도 하나를 수신한다. 상기 프라이머리 RS 프레임 디코더(2116)는 송신 시스템의 RS 프레임 인코더(미도시)의 역과정을 수행하여, 프라이머리 RS 프레임 내의 에러들을 정정한다. 즉, 상기 프라이머리 RS 프레임 디코더(2116)는 다수의 데이터 그룹을 모아 프라이머리 RS 프레임을 형성한 후, 프라이머리 RS 프레임 단위로 에러 정정을 수행한다. 다시 말해, 상기 프라이머리 RS 프레임 디코더(2116)는 실제 방송 서비스 등을 위하여 전송되는 프라이머리 RS 프레임을 디코딩한다. 상기 프라이머리 RS 프레임 디코더(2116)에서 디코딩된 프라이머리 RS 프레임은 프라이머리 RS 프레임 버퍼(2131)로 출력된다. 상기 프라이머리 RS 프레임 버퍼(2131)는 상기 프라이머리 RS 프레임을 버퍼링한 후 각 로우(row) 단위로 M/H TP를 구성하여 TP 핸들러(2133)로 출력한다.That is, the primary RS frame decoder 2116 receives at least one of data other than the main service data, for example, mobile service data, NRT service data, SMT section data, and OMA BCAST SG data. The primary RS frame decoder 2116 performs an inverse process of an RS frame encoder (not shown) of the transmission system to correct errors in the primary RS frame. That is, the primary RS frame decoder 2116 collects a plurality of data groups to form a primary RS frame, and then performs error correction on a primary RS frame basis. In other words, the primary RS frame decoder 2116 decodes the primary RS frame transmitted for an actual broadcast service or the like. The primary RS frame decoded by the primary RS frame decoder 2116 is output to the primary RS frame buffer 2131. The primary RS frame buffer 2131 buffers the primary RS frame, forms an M / H TP for each row, and outputs the M / H TP to the TP handler 2133.

세컨더리 RS 프레임 디코더(2117)는 블록 디코더(2115)의 출력을 입력으로 받는다. 이때 상기 세컨더리 RS 프레임 디코더(2117)도 RS(Reed Solomon) 인코딩 및/또는 CRC(Cyclic Redundancy Check) 인코딩된 모바일 서비스 데이터 또는 NRT 서비스 데이터를 상기 블록 디코더(2115)로부터 입력 받는 것을 일 실시 예로 한다. 상기 세컨더리 RS 프레임 디코더(2117)는 RS(Reed Solomon) 인코딩 및/또는 CRC(Cyclic Redundancy Check) 인코딩된 SMT 섹션 데이터 또는 OMA BCAST SG 데이터를 상기 블록 디코더(2115)로부터 입력 받을 수 있다.The secondary RS frame decoder 2117 receives the output of the block decoder 2115 as an input. In this case, the secondary RS frame decoder 2117 receives the mobile service data or the NRT service data encoded by RS (Reed Solomon) encoding and / or cyclic redundancy check (CRC) from the block decoder 2115. The secondary RS frame decoder 2117 can receive RS (Reed Solomon) encoding and / or cyclic redundancy check (CRC) encoded SMT section data or OMA BCAST SG data from the block decoder 2115.

즉, 상기 세컨더리 RS 프레임 디코더(2117)는 메인 서비스 데이터가 아닌 데이터 예를 들어, 모바일 서비스 데이터, NRT 서비스 데이터, SMT 섹션 데이터, OMA BCAST SG 데이터 중 적어도 하나를 수신하다. 상기 세컨더리 RS 프레임 디코더(2117)는 송신 시스템의 RS 프레임 인코더(미도시)의 역과정을 수행하여, 세컨더리 RS 프레임 내의 에러들을 정정한다. 즉, 상기 세컨더리 RS 프레임 디코더(2117)는 다수의 데이터 그룹을 모아 세컨더리 RS 프레임을 형성한 후, 세컨더리 RS 프레임 단위로 에러 정정을 수행한다. 다시 말해, 상기 세컨더리 RS 프레임 디코더(2117)는 모바일 오디오 서비스 데이터, 모바일 비디오 서비스 데이터, 가이드 데이터 등을 위하여 전송되는 세컨더리 RS 프레임을 디코딩한다. 상기 세컨더리 RS 프레임 디코더(2117)에서 디코딩된 세컨더리 RS 프레임의 데이터는 세컨더리 RS 프레임 버퍼(2132)로 출력된다. 상기 세컨더리 RS 프레임 버퍼(2132)는 상기 세컨더리 RS 프레임을 버퍼링한 후 각 로우(row) 단위로 M/H TP를 구성하여 TP 핸들러(2133)로 출력한다.That is, the secondary RS frame decoder 2117 receives at least one of data other than the main service data, for example, mobile service data, NRT service data, SMT section data, and OMA BCAST SG data. The secondary RS frame decoder 2117 performs an inverse process of an RS frame encoder (not shown) of the transmission system to correct errors in the secondary RS frame. That is, the secondary RS frame decoder 2117 collects a plurality of data groups to form a secondary RS frame, and then performs error correction on a secondary RS frame basis. In other words, the secondary RS frame decoder 2117 decodes a secondary RS frame transmitted for mobile audio service data, mobile video service data, guide data, and the like. The data of the secondary RS frame decoded by the secondary RS frame decoder 2117 is output to the secondary RS frame buffer 2132. The secondary RS frame buffer 2132 buffers the secondary RS frame, forms an M / H TP for each row, and outputs the M / H TP to the TP handler 2133.

TP 핸들러(2133)는 TP 버퍼와 TP 파서로 구성되며, 상기 프라이머리 및 세컨더리 RS 프레임 버퍼(2131,132)로부터 전달받은 M/H TP를 버퍼링한 후, 버퍼링된 M/H TP의 각 헤더를 추출하고 분석하여 해당 M/H TP의 페이로드로부터 IP 데이터그램을 복원한다. 그리고 복원된 IP 데이터그램은 IP 데이터그램 핸들러(2141)로 출력한다.The TP handler 2133 is composed of a TP buffer and a TP parser. The TP handler 2133 buffers the M / H TPs received from the primary and secondary RS frame buffers 2131 and 132 and transmits the header of the buffered M / Extracts and analyzes the IP datagram and restores the IP datagram from the payload of the corresponding M / H TP. The restored IP datagram is output to the IP datagram handler 2141.

IP 데이터그램 핸들러(2141)는 IP 데이터그램 버퍼와 IP 데이터그램 파서로 구성되며, 상기 TP 핸들러(2133)로부터 전달받은 IP 데이터그램을 버퍼링한 후, 버퍼링된 IP 데이터그램의 헤더를 추출하고 분석하여 해당 IP 데이터그램의 페이로드로부터 UDP 데이터그램을 복원한다. 그리고 복원된 UDP 데이터그램은 UDP 데이터그램 핸들러(2143)로 출력한다.The IP datagram handler 2141 comprises an IP datagram buffer and an IP datagram parser. The IP datagram handler 2141 buffers IP datagrams received from the TP handler 2133, extracts and analyzes the header of the buffered IP datagrams And restores the UDP datagram from the payload of the IP datagram. The restored UDP datagram is output to the UDP datagram handler 2143.

이때 상기 UDP 데이터그램이 스크램블되어 있다면, 상기 스크램블된 IP 데이터그램은 디스크램블러(2142)에서 디스크램블된 후 UDP 데이터그램 핸들러(2143)로 출력된다. 일 예로, 상기 디스크램블러(2142)는 수신된 IP 데이터그램 중 UDP 데이터그램에 스크램블이 적용된 경우, 상기 서비스 보호 스트림 핸들러(2146)로부터 인크립션 키(Encryption key) 등을 입력 받아 상기 UDP 데이터그램을 디스크램블한 후 UDP 데이터그램 핸들러(2143)로 출력한다.If the UDP datagram is scrambled, the scrambled IP datagram is descrambled by the descrambler 2142 and output to the UDP datagram handler 2143. For example, when scrambling is applied to a UDP datagram among the received IP datagrams, the descrambler 2142 receives an encryption key and the like from the service protection stream handler 2146, And outputs it to the UDP datagram handler 2143 after scrambling.

상기 UDP 데이터그램 핸들러(2143)는 UDP 데이터그램 버퍼와 UDP 데이터그램 파서로 구성되며, 상기 IP 데이터그램 핸들러(2141) 또는 디스크램블러(2142)로부터 입력되는 UDP 데이터그램을 버퍼링한 후, 버퍼링된 UDP 데이터그램의 헤더를 추출하고 분석하여 해당 UDP 데이터그램의 페이로드로 전송되는 데이터를 복원한다. 이때 복원된 데이터가 RTP/RTCP 데이터그램이면 RTP/RTCP 데이터그램 핸들러(2144)로 출력하고, NTP 데이터그램이면 NTP 핸들러(2145)로 출력된다. 또는 복원된 데이터가 서비스 보호 스트림이면 서비스 보호 스트림 핸들러(2146)로 출력하고, ALC/LCT 스트림이면 ALC/LCT 스트림 핸들러(2148)로 출력한다. 또한 복원된 데이타가 SMT 섹션 데이터이면 서비스 시그널링 섹션 핸들러(2123)로 출력한다.The UDP datagram handler 2143 comprises a UDP datagram buffer and a UDP datagram parser. The UDP datagram handler 2141 buffers a UDP datagram input from the IP datagram handler 2141 or the descrambler 2142, Extracts and analyzes the header of the datagram and restores the data transmitted to the payload of the corresponding UDP datagram. If the restored data is an RTP / RTCP datagram, the RTP / RTCP datagram handler 2144 outputs the restored data. If the restored data is an NTP datagram, the NTP datagram is output to the NTP handler 2145. And outputs the restored data to the service protection stream handler 2146 if the restored data is a service protection stream and to the ALC / LCT stream handler 2148 if it is an ALC / LCT stream. And outputs the restored data to the service signaling section handler 2123 if the restored data is SMT section data.

상기 SMT 섹션 또는 상기 SMT 섹션을 전송하는 서비스 시그널링 채널은 Well-known IP desination address와 well-known desination UDP port number를 가지는 IP 데이터그램이므로, 상기 IP 데이터그램 핸들러(2141)와 UDP 데이터그램 핸들러(2143)는 별도의 정보를 요구하지 않고 상기 SMT 섹션이 포함된 데이터를 상기 서비스 시그널링 섹션 핸들러(2123)로 출력할 수 있다. Since the SMT section or the service signaling channel transmitting the SMT section is an IP datagram having a well-known IP desination address and a well-known des- pination UDP port number, the IP datagram handler 2141 and the UDP datagram handler 2143 May output the data including the SMT section to the service signaling section handler 2123 without requiring any additional information.

상기 RTP/RTCP 데이터그램 핸들러(2144)는 RTP/RTCP 데이터그램 버퍼와 RTP/RTCP 데이터그램 파서로 구성되며, 상기 UDP 데이터그램 핸들러(2143)로부터 출력되는 RTP/RTCP 구조의 데이터를 버퍼링한 후, 버퍼링된 데이터로부터 오디오/비디오 스트림을 추출한다. 그리고 추출된 오디오/비디오 스트림은 오디오/비디오(A/V) 디코더(2161)로 출력한다. 상기 A/V 디코더(2161)는 상기 RTP/RTCP 데이터그램핸들러(2144)로부터 출력되는 오디오 스트림과 비디오 스트림을 각각의 디코딩 알고리즘으로 디코딩한 후 프리젠테이션 매니저(2170)로 출력한다. 일 예로, 오디오 디코딩 알고리즘은 AC-3 디코딩 알고리즘, MPEG 2 audio 디코딩 알고리즘, MPEG 4 audio 디코딩 알고리즘, AAC 디코딩 알고리즘, AAC+ 디코딩 알고리즘, HE AAC 디코딩 알고리즘, AAC SBR 디코딩 알고리즘, MPEG surround 디코딩 알고리즘, BSAC 디코딩 알고리즘 중 적어도 하나를 적용하고, 비디오 디코딩 알고리즘은 MPEG 2 video 디코딩 알고리즘, MPEG 4 video 디코딩 알고리즘, H.264 디코딩 알고리즘, SVC 디코딩 알고리즘, VC-1 디코딩 알고리즘 중 적어도 하나를 적용할 수 있다.The RTP / RTCP datagram handler 2144 comprises an RTP / RTCP datagram buffer and an RTP / RTCP datagram parser. The RTP / RTCP datagram handler 2144 buffers data of the RTP / RTCP structure output from the UDP datagram handler 2143, Extracts the audio / video stream from the buffered data. The extracted audio / video stream is output to an audio / video (A / V) decoder 2161. The A / V decoder 2161 decodes the audio stream and the video stream output from the RTP / RTCP datagram handler 2144 using respective decoding algorithms, and outputs the decoded audio stream and the video stream to the presentation manager 2170. For example, the audio decoding algorithm may be an audio decoding algorithm such as an AC-3 decoding algorithm, an MPEG 2 audio decoding algorithm, an MPEG 4 audio decoding algorithm, an AAC decoding algorithm, an AAC + decoding algorithm, a HE AAC decoding algorithm, an AAC SBR decoding algorithm, And the video decoding algorithm may apply at least one of an MPEG 2 video decoding algorithm, an MPEG 4 video decoding algorithm, an H.264 decoding algorithm, an SVC decoding algorithm, and a VC-1 decoding algorithm.

상기 NTP 데이터그램 핸들러(2145)는 NTP 데이터그램 버퍼와 NTP 데이터그램 파서로 구성되며, 상기 UDP 데이터그램 핸들러(2143)로부터 출력되는 NTP 구조의 데이터를 버퍼링한 후, 버퍼링된 데이터로부터 NTP 스트림을 추출한다. 그리고 상기 추출된 NTP 스트림은 상기 A/V 디코더(2161)로 출력되어 디코딩된다.The NTP datagram handler 2145 comprises an NTP datagram buffer and an NTP datagram parser. The NTP datagram handler 2145 buffers data of the NTP structure output from the UDP datagram handler 2143 and extracts an NTP stream from the buffered data. do. The extracted NTP stream is output to the A / V decoder 2161 and decoded.

상기 서비스 보호 스트림 핸들러(2146)는 서비스 보호 스트림 버퍼를 더 포함할 수 있으며, 상기 UDP 데이터그램 핸들러(2143)로부터 출력되는 서비스 보호를 위한 데이터를 버퍼링한 후, 버퍼링된 데이터로부터 디스크램블을 위한 정보를 추출한다. 상기 디스크램블을 위한 정보는 SKTM, LKTM 등과 같은 디스크램블링을 위한 키 값을 포함한다. 상기 디스크램블을 위한 정보는 제2 저장부(2147)에 저장되며, 필요한 경우 상기 디스크램블러(2142)로 출력된다.The service protection stream handler 2146 may further include a service protection stream buffer for buffering data for service protection output from the UDP datagram handler 2143 and for descrambling information from the buffered data, . The information for descrambling includes a key value for descrambling such as SKTM, LKTM, and the like. The information for descrambling is stored in the second storage unit 2147 and is output to the descrambler 2142 if necessary.

상기 ALC/LCT 스트림 핸들러(2148)는 ALC/LCT 스트림 버퍼와 ALC/LCT 스트림 파서로 구성되며, 상기 UDP 데이터그램 핸들러(2143)로부터 출력되는 ALC/LCT 구조의 데이터를 버퍼링한 후, 버퍼링된 데이터로부터 ALC/LCT 세션의 헤더 및 헤더 확장(header extension)을 분석한다. 상기 ALC/LCT 세션의 헤더 및 헤더 확장을 분석한 결과, 상기 ALC/LCT 세션으로 전송되는 데이터가 XML 구조이면 XML 파서(2150)로 출력하고, 파일 구조이면 파일 디코더(2162)로 출력한다.The ALC / LCT stream handler 2148 comprises an ALC / LCT stream buffer and an ALC / LCT stream parser. The ALC / LCT stream handler 2148 buffers data of the ALC / LCT structure output from the UDP datagram handler 2143, And analyzes the header and header extension of the ALC / LCT session. As a result of analyzing the header and header extension of the ALC / LCT session, if the data transmitted in the ALC / LCT session is an XML structure, the parser 2150 outputs the data to the XML parser 2150.

이때, 상기 ALC/LCT 세션으로 전송되는 데이터가 압축되어 있으면, 상기 압축된 데이터는 디콤프레서(2149)에서 해제된 후 XML 파서(2150) 또는 파일 디코더(2162)로 출력된다.At this time, if the data transmitted in the ALC / LCT session is compressed, the compressed data is released from the decompressor 2149 and output to the XML parser 2150 or the file decoder 2162.

상기 XML 파서(2150)는 상기 ALC/LCT session을 통하여 전송되는 XML 데이터를 분석하고, 분석된 데이터가 파일 기반 서비스를 위한 데이터이면 FDT 핸들러(2151)로 출력하고, 서비스 가이드를 위한 데이터이면 SG 핸들러(2165)로 출력한다.The XML parser 2150 analyzes the XML data transmitted through the ALC / LCT session and outputs the parsed data to the FDT handler 2151 if the analyzed data is data for a file-based service. If the analyzed data is data for a service guide, (2165).

상기 FDT 핸들러(2151)는 ALC/LCT session을 통하여 XML 구조로 전송되는 FLUTE 프로토콜의 파일 디스크립션 테이블(File Description Table)을 분석하고 처리한다.The FDT handler 2151 analyzes and processes a file description table of a FLUTE protocol transmitted in an XML structure through an ALC / LCT session.

상기 SG 핸들러(2165)는 XML 구조로 전송되는 서비스 가이드를 위한 데이터를 수집하고 분석하여 서비스 매니저(2122)로 출력한다.The SG handler 2165 collects and analyzes data for a service guide transmitted in an XML structure, and outputs the collected data to the service manager 2122.

상기 파일 디코더(2162)는 ALC/LCT session을 통하여 전송되는 파일 구조의 데이터를 디코딩하여 미들웨어 엔진(2164)으로 출력하거나, 제3 저장부(2163)에 저장한다.The file decoder 2162 decodes the file structure data transmitted through the ALC / LCT session and outputs the decoded data to the middleware engine 2164 or the third storage unit 2163.

상기 미들웨어 엔진(2164)은 파일 구조의 데이터 즉, 어플리케이션을 해석하여 실행시킨다. 그리고 상기 어플리케이션을 프리젠테이션 매니저(2170)를 통해 화면이나 스피커와 같은 출력 장치로 출력할 수도 있다. 상기 미들웨어 엔진(2164)은 자바(JAVA) 기반의 미들웨어 엔진인 것을 일 실시 예로 한다.The middleware engine 2164 interprets and executes the data of the file structure, that is, the application. The application may be output to an output device such as a screen or a speaker through the presentation manager 2170. The middleware engine 2164 is a Java (JAVA) based middleware engine.

상기 EPG 매니저(2171)는 유저의 입력에 따라 상기 서비스 매니저(2122) 또는 SG 핸들러(2165)로부터 EPG 데이터를 입력 받아 디스플레이 포맷으로 변환한 후 프리젠테이션 매니저(2170)로 출력한다.The EPG manager 2171 receives EPG data from the service manager 2122 or the SG handler 2165 according to an input from the user, converts the EPG data into a display format, and outputs the EPG data to the presentation manager 2170.

상기 어플리케이션 매니저(2172)는 오브젝트, 파일 등의 형태로 전송되는 어플리케이션 데이터의 처리에 관한 전반적인 관리를 수행한다.The application manager 2172 performs overall management of processing of application data transmitted in the form of an object, a file, or the like.

상기 오퍼레이션 컨트롤러(2100)는 UI 매니저(2173)를 통해 입력되는 유저의 명령에 따라 상기 서비스 매니저(2122), EPG 매니저(2171), 어플리케이션 매니저(2172), 프리젠테이션 매니저(2170) 중 적어도 하나를 제어하여, 상기 유저의 명령에 따른 기능이 수행되도록 한다.The operation controller 2100 controls at least one of the service manager 2122, the EPG manager 2171, the application manager 2172, and the presentation manager 2170 according to a command of a user input through the UI manager 2173 So that the function according to the command of the user is performed.

상기 UI 매니저(2173)는 UI를 통해 유저의 입력을 오퍼레이션 컨트롤러(2100)로 전달한다.The UI manager 2173 transfers the user's input to the operation controller 2100 through the UI.

상기 프리젠테이션 매니저(2170)는 A/V 디코더(2161)에서 출력되는 오디오 및 비디오 데이터, 미들웨어 엔진(2164)에서 출력되는 파일 데이터, EPG 매니저(2171)에서 출력되는 EPG 데이터 중 적어도 하나를 스피커 및/또는 화면을 통해 유저에게 제공한다.The presentation manager 2170 may output at least one of audio and video data output from the A / V decoder 2161, file data output from the middleware engine 2164, and EPG data output from the EPG manager 2171, / Or provide it to the user via the screen.

이때, 상기 서비스 시그널링 섹션 핸들러(2123), 서비스 매니저(2122) 중 어느 하나는 상기 도 30의 SMT의 콤포넌트 루프로부터 상기 NRT 서비스를 구성하는 콘텐트/파일을 전송하는 FLUTE 세션에 대한 IP 접속 정보를 획득한다. 또한, 상기 상기 콤포넌트 루프에 NRT_media_object_association_descriptor()가 포함되어 수신되면, 상기 NRT_media_object_association_descriptor()로부터 상기 FLUTE 세션과 관련된 미디어 오브젝트 관련 정보를 추출한다. 상기 미디어 오브젝트 관련 정보는 MIME 타입의 텍스트 형태로 제공되는 것을 일 실시예로 한다. 이때 상기 미디어 오브젝트 관련 정보는 NRT_media_object_association_descriptor()에 텍스트 형태로 직접 서술되거나, 또는 스트림이나 파일에 텍스트 형태로 포함되어 제공된다. 상기 미디어 오브젝트 관련 정보가 스트림이나 파일 형태로 전송될 경우, 상기 NRT_media_object_association_descriptor()는 상기 스트림 또는 파일을 수신하기 위한 접속 정보를 제공한다. 또한 상기 미디어 오브젝트 관련 정보가 파일 형태로 전송될 경우, 상기 NRT_media_object_association_descriptor()는 상기 파일을 전송하는 FLUTE 세션을 수신하는데 필요한 파라미터들을 시그널링한다. 상기 미디어 오브젝트 관련 정보는 NRT 서비스를 구성하는 콘텐트/파일들의 렌더링(rendering)에 필수적인 콘테이너 정보, 인코딩 정보, 미디어 오브젝트의 디코딩 파라미터 등을 포함한다. 다른 실시예로, 상기 콤포넌트 루프에 포함되어 수신되는 component_descriptor()를 이용하여 미디어 오브젝트 관련 정보를 추출할 수도 있다. 상기 미디어 오브젝트 관련 정보 추출 과정은 상기에서 상세하게 전술하였으므로 여기서는 생략하기로 한다.At this time, any one of the service signaling section handler 2123 and the service manager 2122 obtains the IP connection information for the FLUTE session for transmitting the content / file constituting the NRT service from the SMT component loop of FIG. 30 do. If the NRT_media_object_association_descriptor () is included in the component loop, the media object related information related to the FLUTE session is extracted from the NRT_media_object_association_descriptor (). The media object association information is provided in a text form of a MIME type. At this time, the media object related information is directly described in a text form in NRT_media_object_association_descriptor (), or in a form of text in a stream or a file. When the media object related information is transmitted in the form of a stream or a file, the NRT_media_object_association_descriptor () provides access information for receiving the stream or file. When the media object related information is transmitted in a file format, the NRT_media_object_association_descriptor () signals parameters necessary to receive a FLUTE session for transmitting the file. The media object association information includes container information, encoding information, decoding parameters of the media object, and the like, which are essential for rendering the content / files constituting the NRT service. In another embodiment, media object related information may be extracted using component_descriptor () included in the component loop. The process of extracting the media object related information has been described above in detail, and will not be described here.

또한 상기 component_descriptor()를 이용하여 FLUTE 레벨 접속 정보를 획득할 수 있다. 그러면, 상기 ALC/LCT 스트림 핸들러(2148)와 파일 디코더(2162)에서는 상기 획득한 FLUTE 레벨 접속 정보를 이용하여 FLUTE 파일 딜리버리 세션에 접속하여, 상기 세션에 속한 파일들을 모은다. 상기 파일들을 모으면 하나의 NRT 서비스가 구성된다. 이러한 NRT 서비스는 제3 저장부(2163)에 저장하거나, 미들웨어 엔진(2164)이나 A/V 디코더(2161)로 출력하여 디스플레이 장치에 표시되도록 한다.Also, FLUTE level access information can be obtained using the component_descriptor (). Then, the ALC / LCT stream handler 2148 and the file decoder 2162 access the FLUTE file delivery session using the obtained FLUTE level access information, and collect files belonging to the session. When the files are collected, one NRT service is configured. The NRT service is stored in the third storage unit 2163 or outputted to the middleware engine 2164 or the A / V decoder 2161 so as to be displayed on the display device.

지금까지 설명한 본 발명은 상술한 실시예에 한정되지 않으며, 첨부된 청구범위에서 알 수 있는 바와 같이 본 발명이 속한 분야의 통상의 지식을 가지 자에 의해 변형이 가능하고 이러한 변형은 본 발명의 범위에 속한다.It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention, .

도 1은 본 발명에 따른 실시간 서비스(real-time service RT)와 비실시간 서비스(non-real time service; NRT)를 제공하는 개념을 나타낸 도면1 is a diagram illustrating a concept of providing a real-time service RT and a non-real time service (NRT) according to the present invention;

도 2는 본 발명에 따른 NRT 서비스, 콘텐트, 파일과의 관계를 보인 도면2 is a diagram showing a relationship between an NRT service, content, and a file according to the present invention;

도 3은 본 발명에 따른 Fixed NRT 서비스를 위한 프로토콜 스택의 일 실시예를 보인 도면3 is a diagram showing an embodiment of a protocol stack for Fixed NRT service according to the present invention.

도 4는 본 발명에 따른 가상 채널 테이블의 비트 스트림 신택스 구조의 일 실시예를 보인 도면4 is a diagram showing an embodiment of a bitstream syntax structure of a virtual channel table according to the present invention.

도 5는 도 4의 가상 채널 테이블 내 서비스 타입 필드 값 및 그 값의 의미의 일 실시예를 나타낸 도면5 is a diagram illustrating an embodiment of a service type field value and its meaning in the virtual channel table of FIG. 4;

도 6는 도 4의 가상 채널 테이블 내 서비스 타입 필드에 할당되는 값 및 그 값의 의미의 다른 실시예를 나타낸 도면6 is a view showing another embodiment of the meaning of the value assigned to the service type field in the virtual channel table of Fig. 4 and its value

도 7은 도 4의 가상 채널 테이블의 가상 채널 루프에 포함되는 NRT 서비스 디스크립터에 대한 비트 스트림 신택스 구조의 일 실시예를 보인 도면FIG. 7 is a diagram showing an embodiment of a bitstream syntax structure for an NRT service descriptor included in a virtual channel loop of the virtual channel table of FIG. 4; FIG.

도 8은 본 발명에 따른 PSI/PSIP 테이블을 이용하여 NRT 서비스 시그널링 채널을 전송하는 IP 스트림의 접속 정보를 획득하는 과정의 일 실시예를 보인 도면8 is a view illustrating an example of a process of acquiring access information of an IP stream for transmitting an NRT service signaling channel using the PSI / PSIP table according to the present invention

도 9는 본 발명에 따른 NST의 비트 스트림 신택스 구조의 일 실시예를 보인 도면9 is a diagram showing an embodiment of a bitstream syntax structure of an NST according to the present invention.

도 10은 도 9의 NST의 FLUTE 세션 타입 필드에 할당되는 값 및 그 값의 의미의 일 실시예를 나타낸 도면10 is a diagram showing one embodiment of the values assigned to the FLUTE session type field of the NST of FIG. 9 and the meanings of the values thereof; FIG.

도 11은 도 9의 NST의 FLUTE 세션 루프에 포함되는 NRT FLUTE 파일 딜리버리 디스크립터에 대한 비트 스트림 신택스 구조의 일 실시예를 보인 도면FIG. 11 is a diagram showing an embodiment of a bitstream syntax structure for an NRT FLUTE file delivery descriptor included in a FLUTE session loop of the NST of FIG. 9; FIG.

도 12는 도 9의 NST의 FLUTE 세션 루프에 포함되는 NRT 미디어 오브젝트 관련 디스크립터에 대한 비트 스트림 신택스 구조의 일 실시예를 보인 도면FIG. 12 is a diagram showing an embodiment of a bitstream syntax structure for an NRT media object association descriptor included in a FLUTE session loop of the NST of FIG. 9; FIG.

도 13은 도 12의 NRT 미디어 오브젝트 관련 디스크립터의 object_association_type 필드에 할당되는 값 및 그 값의 의미의 일 실시예를 나타낸 도면13 shows an example of a value assigned to the object_association_type field of the NRT media object association descriptor of FIG. 12 and the meaning of the value thereof; FIG.

도 14, 도 15는 본 발명에 따른 NST 섹션의 비트 스트림 신택스 구조의 또 다른 실시예를 보인 도면14 and 15 are diagrams showing still another embodiment of a bitstream syntax structure of an NST section according to the present invention.

도 16는 본 발명에 따른 component_descriptor()의 비트 스트림 신택스 구조에 대한 일 실시예를 보인 도면16 is a diagram showing an embodiment of a bit stream syntax structure of component_descriptor () according to the present invention;

도 17은 도 16의 component_descriptor()를 이용한 FLUTE 파일 딜리버리 데이터의 비트 스트림 신택스 구조에 대한 일 실시예를 보인 도면FIG. 17 is a diagram showing an embodiment of a bitstream syntax structure of FLUTE file delivery data using the component_descriptor () in FIG. 16; FIG.

도 18은 도 16의 component_descriptor()를 이용한 미디어 오브젝트 관련 정보 데이터의 비트 스트림 신택스 구조에 대한 일 실시예를 보인 도면FIG. 18 is a diagram showing an embodiment of a bitstream syntax structure of media object related information data using the component_descriptor () in FIG. 16; FIG.

도 19는 도 16의 component_descriptor()를 이용한 미디어 오브젝트 관련 정보 데이터의 비트 스트림 신택스 구조에 대한 다른 실시예를 보인 도면FIG. 19 is a diagram showing another embodiment of a bitstream syntax structure of media object related information data using the component_descriptor () in FIG. 16; FIG.

도 20은 본 발명에 따른 NRT 서비스 시그널링 채널을 전송하는 IP 스트림을 수신하는 과정의 일 실시예를 보인 흐름도20 is a flowchart illustrating an exemplary process of receiving an IP stream for transmitting an NRT service signaling channel according to the present invention.

도 21은 본 발명에 따른 NRT 서비스를 수신하는 과정의 일 실시예를 보인 흐 름도FIG. 21 is a flow chart showing an embodiment of a process of receiving an NRT service according to the present invention.

도 22는 본 발명에 따른 NRT 콘텐트 테이블(NCT)의 비트 스트림 신택스 구조의 일 실시예를 보인 도면22 is a diagram showing an embodiment of a bitstream syntax structure of an NRT content table (NCT) according to the present invention;

도 23은 본 발명에 따른 Fixed NRT 서비스를 위한 수신 시스템의 일 실시예를 보인 구성 블록도23 is a block diagram showing an embodiment of a receiving system for a fixed NRT service according to the present invention

도 24는 본 발명에 따른 모바일 NRT 서비스를 위한 프로토콜 스택의 일 실시예를 보인 도면24 is a view showing an embodiment of a protocol stack for a mobile NRT service according to the present invention;

도 25는 본 발명에 따른 데이터 그룹의 구조에 대한 일 실시 예를 보인 도면이고,25 is a diagram illustrating a structure of a data group according to an embodiment of the present invention,

도 26은 본 발명의 일 실시 예에 따라 모바일 NRT 서비스를 포함한 RS 프레임의 구조를 도시한 것이고,26 illustrates a structure of an RS frame including a mobile NRT service according to an embodiment of the present invention,

도 27은 본 발명에 따른 모바일 서비스 데이터의 송/수신을 위한 M/H 프레임 구조의 일 예를 보인 도면이고,27 is a diagram showing an example of an M / H frame structure for transmitting / receiving mobile service data according to the present invention,

도 28은 본 발명의 일 실시예에 따른 물리적 계층에서의 데이터 전송 구조를 도시한 도면으로, 각 데이터 그룹 내에 FIC 데이터가 포함되어 전송되는 예를 보인 것이고, 28 is a diagram illustrating a data transmission structure in a physical layer according to an embodiment of the present invention, in which FIC data is included in each data group and transmitted,

도 29는 본 발명의 일 실시예에 따른 계층적인 시그널링 구조를 도시한 도면이고,29 is a diagram illustrating a hierarchical signaling structure according to an embodiment of the present invention,

도 30은 본 발명에 따른 SMT 섹션의 비트 스트림 신택스 구조의 일 실시예를 보인 도면30 is a diagram showing an embodiment of a bitstream syntax structure of an SMT section according to the present invention;

도 31은 본 발명에 따른 모바일 NRT 서비스를 위한 수신 시스템의 일 실시예를 보인 구성 블록도31 is a block diagram showing an embodiment of a receiving system for a mobile NRT service according to the present invention

Claims (16)

그것의 사용 전에 미리 전송되는 방송 서비스인 NRT (Non-real time) 서비스를 생성하고, 상기 NRT 서비스를 시그널링하는 시그널링 데이터를 생성하는 단계; 및Generating a non-real time (NRT) service, which is a broadcast service transmitted before use, and generating signaling data for signaling the NRT service; And 상기 NRT 서비스와 상기 시그널링 데이터는 방송 채널로 전송하는 단계를 포함하며,Wherein the NRT service and the signaling data are transmitted on a broadcast channel, 여기서, 상기 NRT 서비스는 하나 이상의 콘텐트를 포함하고, 하나의 콘텐트는 하나 이상의 파일을 포함하며, Here, the NRT service includes one or more contents, one content includes one or more files, 상기 하나 이상의 파일은 하나 이상의 딜리버리 세션에 의해 전송되며,Wherein the one or more files are transmitted by one or more delivery sessions, 상기 시그널링 데이터는 상기 하나 이상의 딜리버리 세션에 관련된 정보를 포함하고,Wherein the signaling data comprises information relating to the one or more delivery sessions, 상기 시그널링 데이터는 상기 NRT 서비스의 상태를 식별하기 위한 서비스 상태 정보를 더 포함하며,Wherein the signaling data further includes service status information for identifying a status of the NRT service, 상기 서비스 상태 정보는 상기 NRT 서비스가 액티브인지 비액티브인지를 지시하는 것을 특징으로 하는 NRT 서비스를 위한 방송 신호 송신 방법.Wherein the service status information indicates whether the NRT service is active or inactive. 제 1 항에 있어서,The method according to claim 1, 상기 콘텐트는 방송 신호 수신 시스템에서 저장하기 위해 다운로드가 가능하고,Wherein the content is downloadable for storage in a broadcast signal receiving system, 상기 시그널링 데이터는 상기 콘텐트가 다운로드될 동안의 시간을 명시한 다운로드 시간 정보를 더 포함하는 것을 특징으로 하는 NRT 서비스를 위한 방송 신호 송신 방법.Wherein the signaling data further includes download time information specifying a time during which the content is downloaded. 제 1 항에 있어서,The method according to claim 1, 상기 시그널링 데이터는 상기 콘텐트를 위해 업데이트가 예상되는지를 명시한 콘텐트 업데이트 정보를 더 포함하는 것을 특징으로 하는 NRT 서비스를 위한 방송 신호 송신 방법.Wherein the signaling data further includes content update information specifying whether an update is expected for the content. 그것의 사용 전에 미리 전송되는 방송 서비스인 NRT (Non-real time) 서비스를 생성하고, 상기 NRT 서비스를 시그널링하는 시그널링 데이터를 생성하는 생성부; 및A generator for generating NRT (Non-real time) service, which is a broadcasting service transmitted before use, and generating signaling data for signaling the NRT service; And 상기 NRT 서비스와 상기 시그널링 데이터는 방송 채널로 전송하는 전송부를 포함하며,Wherein the NRT service and the signaling data comprise a transmitter for transmitting on a broadcast channel, 여기서, 상기 NRT 서비스는 하나 이상의 콘텐트를 포함하고, 하나의 콘텐트는 하나 이상의 파일을 포함하며, Here, the NRT service includes one or more contents, one content includes one or more files, 상기 하나 이상의 파일은 하나 이상의 딜리버리 세션에 의해 전송되며,Wherein the one or more files are transmitted by one or more delivery sessions, 상기 시그널링 데이터는 상기 하나 이상의 딜리버리 세션에 관련된 정보를 포함하고,Wherein the signaling data comprises information relating to the one or more delivery sessions, 상기 시그널링 데이터는 상기 NRT 서비스의 상태를 식별하기 위한 서비스 상태 정보를 더 포함하며,Wherein the signaling data further includes service status information for identifying a status of the NRT service, 상기 서비스 상태 정보는 상기 NRT 서비스가 액티브인지 비액티브인지를 지시하는 것을 특징으로 하는 NRT 서비스를 위한 방송 신호 송신 시스템.Wherein the service status information indicates whether the NRT service is active or inactive. 제 4 항에 있어서,5. The method of claim 4, 상기 콘텐트는 방송 신호 수신 시스템에서 저장하기 위해 다운로드가 가능하고,Wherein the content is downloadable for storage in a broadcast signal receiving system, 상기 시그널링 데이터는 상기 콘텐트가 다운로드될 동안의 시간을 명시한 다운로드 시간 정보를 더 포함하는 것을 특징으로 하는 NRT 서비스를 위한 방송 신호 송신 시스템.Wherein the signaling data further includes download time information specifying a time during which the content is downloaded. 제 4 항에 있어서,5. The method of claim 4, 상기 시그널링 데이터는 상기 콘텐트를 위해 업데이트가 예상되는지를 명시한 콘텐트 업데이트 정보를 더 포함하는 것을 특징으로 하는 NRT 서비스를 위한 방송 신호 송신 시스템.Wherein the signaling data further includes content update information specifying whether an update is expected for the content. 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete
KR1020090050710A 2008-06-09 2009-06-08 method of receiving a broadcasting signal and receiving system for receiving a broadcasting signal KR101581359B1 (en)

Priority Applications (11)

Application Number Priority Date Filing Date Title
US12/481,559 US8250619B2 (en) 2008-06-09 2009-06-09 Method of receiving a broadcasting signal and receiving system for receiving a broadcasting signal
PCT/KR2009/003096 WO2009151265A2 (en) 2008-06-09 2009-06-09 Method and system for receiving broadcast signals
CA2725288A CA2725288C (en) 2008-06-09 2009-06-09 Method of receiving a broadcasting signal and receiving system for receiving a broadcasting signal
CA2902381A CA2902381C (en) 2008-06-09 2009-06-09 Method of receiving a broadcasting signal and receiving system for receiving a broadcasting signal
US13/555,013 US8516535B2 (en) 2008-06-09 2012-07-20 Method of receiving a broadcasting signal and receiving system for receiving a broadcasting signal
US13/949,114 US8875211B2 (en) 2008-06-09 2013-07-23 Method of receiving a broadcasting signal and receiving system for receiving a broadcasting signal
US14/484,153 US9226014B2 (en) 2008-06-09 2014-09-11 Method of receiving a broadcasting signal and receiving system for receiving a broadcasting signal
US14/484,144 US9204182B2 (en) 2008-06-09 2014-09-11 Method of receiving a broadcasting signal and receiving system for receiving a broadcasting signal
US14/946,475 US9467751B2 (en) 2008-06-09 2015-11-19 Method of receiving a broadcasting signal and receiving system for receiving a broadcasting signal
US15/249,288 US9716921B2 (en) 2008-06-09 2016-08-26 Method of receiving a broadcasting signal and receiving system for receiving a broadcasting signal
US15/625,826 US9980015B2 (en) 2008-06-09 2017-06-16 Method of receiving a broadcasting signal and receiving system for receiving a broadcasting signal

Applications Claiming Priority (16)

Application Number Priority Date Filing Date Title
US5981108P 2008-06-09 2008-06-09
US61/059,811 2008-06-09
US7668408P 2008-06-29 2008-06-29
US61/076,684 2008-06-29
US11588808P 2008-11-18 2008-11-18
US61/115,888 2008-11-18
US12117808P 2008-12-09 2008-12-09
US61/121,178 2008-12-09
US13849408P 2008-12-17 2008-12-17
US61/138,494 2008-12-17
US14510409P 2009-01-15 2009-01-15
US61/145,104 2009-01-15
US15398509P 2009-02-20 2009-02-20
US15397309P 2009-02-20 2009-02-20
US61/153,985 2009-02-20
US61/153,973 2009-02-20

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020150183986A Division KR101619507B1 (en) 2008-06-09 2015-12-22 method of receiving a broadcasting signal and receiving system for receiving a broadcasting signal

Publications (2)

Publication Number Publication Date
KR20090127826A KR20090127826A (en) 2009-12-14
KR101581359B1 true KR101581359B1 (en) 2015-12-30

Family

ID=41688414

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020090050710A KR101581359B1 (en) 2008-06-09 2009-06-08 method of receiving a broadcasting signal and receiving system for receiving a broadcasting signal
KR1020150183986A KR101619507B1 (en) 2008-06-09 2015-12-22 method of receiving a broadcasting signal and receiving system for receiving a broadcasting signal
KR1020160054264A KR101710403B1 (en) 2008-06-09 2016-05-02 method of receiving a broadcasting signal and receiving system for receiving a broadcasting signal

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020150183986A KR101619507B1 (en) 2008-06-09 2015-12-22 method of receiving a broadcasting signal and receiving system for receiving a broadcasting signal
KR1020160054264A KR101710403B1 (en) 2008-06-09 2016-05-02 method of receiving a broadcasting signal and receiving system for receiving a broadcasting signal

Country Status (2)

Country Link
KR (3) KR101581359B1 (en)
CA (2) CA2725288C (en)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101662843B1 (en) * 2010-03-05 2016-10-14 삼성전자주식회사 Apparatus and method for serving streaming in a data communication network
KR101737843B1 (en) 2010-03-11 2017-05-29 엘지전자 주식회사 Non-real-time broadcast service processing system and processing method thereof
WO2011126240A2 (en) * 2010-04-04 2011-10-13 엘지전자 주식회사 Method and apparatus for processing non-real-time broadcast service and content transmitted by broadcast signal
CA2823037C (en) 2010-12-26 2016-05-24 Lg Electronics Inc. Method for transmitting a broadcast service, and method and apparatus for receiving same
CN103283220B (en) 2010-12-26 2016-08-10 Lg电子株式会社 The method sending broadcast service, the method receiving broadcast service and the equipment of reception broadcast service
US20150033271A1 (en) * 2011-02-15 2015-01-29 Joonhui Lee Method for transmitting a broadcast service, method for receiving a broadcast service, and apparatus for receiving a broadcast service
WO2012124989A2 (en) * 2011-03-15 2012-09-20 엘지전자 주식회사 Method for transmitting broadcast service, receiving method thereof and receiving device thereof
KR101517711B1 (en) * 2011-04-20 2015-05-04 엘지전자 주식회사 A method for transmitting a broadcast service, a method for receiving it and an apparatus for receiving it
KR101695514B1 (en) 2011-05-24 2017-01-11 엘지전자 주식회사 Method for transmitting a broadcast service, apparatus for receiving same, and method for processing an adjunct service using the apparatus for receiving same
US9723362B2 (en) 2011-06-07 2017-08-01 Lg Electronics Inc. Method for transmitting and receiving broadcast service and receiving device thereof
WO2012169813A2 (en) * 2011-06-09 2012-12-13 엘지전자 주식회사 Broadcast service transmission method, reception method thereof and reception apparatus therefor
CA2839444C (en) * 2011-06-16 2016-05-31 Lg Electronics Inc. Method for transmitting a broadcast service, method for receiving a broadcast service, and apparatus for receiving a broadcast service
KR101654439B1 (en) * 2011-09-23 2016-09-12 엘지전자 주식회사 Method for receiving broadcast service and reception device thereof
WO2016056800A1 (en) * 2014-10-06 2016-04-14 엘지전자 주식회사 Broadcasting signal transmitting method, broadcasting signal transmitting device, broadcasting signal receiving method, and broadcasting signal receiving device

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1169253A (en) * 1997-08-22 1999-03-09 Hitachi Ltd Broadcast receiver with general program guide
KR100669901B1 (en) * 2004-11-09 2007-01-16 한국전자통신연구원 Apparatus and Method for converting EPG information between different digital data broadcastings
KR101191181B1 (en) 2005-09-27 2012-10-15 엘지전자 주식회사 Transmitting/receiving system of digital broadcasting and data structure
KR100878023B1 (en) * 2006-12-15 2009-01-13 주식회사 케이티 A device of providing value-added information using channel zapping time of IPTV, a Method thereof, and a Recording device having that method

Also Published As

Publication number Publication date
KR20160004245A (en) 2016-01-12
KR101619507B1 (en) 2016-05-12
KR101710403B1 (en) 2017-02-27
KR20090127826A (en) 2009-12-14
CA2902381A1 (en) 2009-12-17
CA2725288C (en) 2016-03-29
CA2725288A1 (en) 2009-12-17
KR20160055763A (en) 2016-05-18
CA2902381C (en) 2017-11-28

Similar Documents

Publication Publication Date Title
US9980015B2 (en) Method of receiving a broadcasting signal and receiving system for receiving a broadcasting signal
KR101710403B1 (en) method of receiving a broadcasting signal and receiving system for receiving a broadcasting signal
KR101635889B1 (en) Non-real time service processing method and broadcast receiver
US10349146B2 (en) Method for processing a web service in an NRT service and a broadcast receiver
KR101706956B1 (en) Non-realtime service processing method and broadcasting receiver
KR101759958B1 (en) Method for processing non-real time service and broadcast receiver
KR101635894B1 (en) Non-realtime service processing method and broadcasting receiver

Legal Events

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

Payment date: 20181114

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20191114

Year of fee payment: 5