KR20170000312A - Method and apparatus for digital broadcast services - Google Patents

Method and apparatus for digital broadcast services Download PDF

Info

Publication number
KR20170000312A
KR20170000312A KR1020150158360A KR20150158360A KR20170000312A KR 20170000312 A KR20170000312 A KR 20170000312A KR 1020150158360 A KR1020150158360 A KR 1020150158360A KR 20150158360 A KR20150158360 A KR 20150158360A KR 20170000312 A KR20170000312 A KR 20170000312A
Authority
KR
South Korea
Prior art keywords
information
event
application program
message
program service
Prior art date
Application number
KR1020150158360A
Other languages
Korean (ko)
Other versions
KR102473346B1 (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 EP16814701.5A priority Critical patent/EP3314906A4/en
Priority to CN202011447415.5A priority patent/CN112738645B/en
Priority to JP2017566110A priority patent/JP6728246B2/en
Priority to US15/190,766 priority patent/US10306297B2/en
Priority to CN201680036782.1A priority patent/CN107787586B/en
Priority to PCT/KR2016/006678 priority patent/WO2016208988A1/en
Publication of KR20170000312A publication Critical patent/KR20170000312A/en
Priority to US16/381,574 priority patent/US10595080B2/en
Priority to US16/780,135 priority patent/US10880596B2/en
Priority to KR1020220162229A priority patent/KR102598237B1/en
Application granted granted Critical
Publication of KR102473346B1 publication Critical patent/KR102473346B1/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/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/654Transmission by server directed to the client
    • H04N21/6543Transmission by server directed to the client for forcing some client operations, e.g. recording
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4345Extraction or processing of SI, e.g. extracting service information from an MPEG 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/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/4722End-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 additional data associated with the content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/64322IP
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6581Reference data, e.g. a movie identifier for ordering a movie or a product identifier in a home shopping application
    • 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/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/84Generation or processing of descriptive data, e.g. content descriptors
    • 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/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot

Abstract

Disclosed are a method and apparatus for digital broadcasting services. The method includes the steps of: receiving an AIT message including an application information (AI) table through a multimedia transmission session; obtaining attribute information related to an application program service from the AI table; and executing the application program service based on the attribute information. Accordingly, the present invention can support an application program service which is independently operated or is connected with a broadcasting program.

Description

디지털 방송 서비스 방법 및 장치{METHOD AND APPARATUS FOR DIGITAL BROADCAST SERVICES}[0001] METHOD AND APPARATUS FOR DIGITAL BROADCAST SERVICES [

본 발명은 디지털 방송 서비스에서 애플리케이션 프로그램 서비스 정보 및 이벤트의 전송을 위한 방법 및 장치에 관한 것이다.The present invention relates to a method and apparatus for transmitting application program service information and events in a digital broadcast service.

멀티미디어 서비스란 화상전화와 같은 대화형 서비스, 주문형 비디오(Video On Demand: VOD) 서비스와 같은 스트리밍 서비스, 또는 멀티캐스트 및 브로드캐스트 서비스 등의 서비스를 의미한다. 실시간 멀티미디어 서비스는 서비스의 형태에 따라 대화형 서비스, 인터랙티브 서비스, 스트리밍 서비스로 나눌 수 있으며, 참여하는 사용자의 수에 따라 유니캐스트, 멀티캐스트, 브로드캐스트로 나눌 수도 있다.Multimedia service means a service such as an interactive service such as a video telephone, a streaming service such as a Video On Demand (VOD) service, or a multicast and broadcast service. The real-time multimedia service can be divided into an interactive service, an interactive service, and a streaming service depending on the service type, and can be divided into unicast, multicast, and broadcast according to the number of users participating.

MPEG-2 TS (Moving Picture Experts Group-2 Transport Stream)는 멀티미디어 컨텐츠의 전송을 위해 사용되는 기술로서, 오류가 있는 전송 환경에서 복수의 방송 프로그램(부호화된 다수의 비디오 비트 열)이 다중화된 비트 열을 전송하기 위한 대표적인 전송 기술로 사용되고 있다. MPEG 기술을 기반으로 멀티미디어 서비스를 지원하기 위한 멀티미디어 전송 기술 중 하나로 MMT (MPEG MEDIA Transport) 표준이 제안된 바 있다. MMT 기술은 여러 종류의 네트워크 환경에서 TV(Television)나 모바일 기기 등과 같은 다양한 사용자 단말을 통해 다양한 형태의 멀티미디어 서비스를 원활하게 제공하기 위한 MPEG의 새로운 표준 기술로서, 예컨대 MMT 표준은 이종(heterogeneous) 네트워크를 통해 복합 컨텐츠를 효율적으로 전송하기 위해 적용될 수 있다. 여기서 복합 컨텐츠는 비디오(Video)/오디오(Audio)/애플리케이션(Application) 등에 의한 멀티미디어 요소를 가지는 컨텐츠의 집합을 의미한다. 그리고 이종 네트워크는 일 예로서 방송 네트워크와 이동 통신 네트워크 등이 혼재하는 네트워크가 될 수 있다.2. Description of the Related Art MPEG-2 TS (Moving Picture Experts Group-2 Transport Stream) is a technology used for transmission of multimedia contents. In the transmission environment with an error, a plurality of broadcast programs (a plurality of coded video bit streams) Is used as a typical transmission technique. An MMT (MPEG MEDIA Transport) standard has been proposed as one of the multimedia transmission technologies for supporting multimedia services based on MPEG technology. MMT technology is a new standard technology of MPEG for smoothly providing various types of multimedia services through various user terminals such as TV (Television) and mobile devices in various kinds of network environments. For example, MMT standard is a heterogeneous network To transmit the composite content efficiently. Here, the complex contents means a set of contents having multimedia elements by video / audio / application. The heterogeneous network may be a network in which a broadcast network and a mobile communication network are mixed.

방송 네트워크와 통신 네트워크를 유기적으로 연동하는 하이브리드 전송 기술을 바탕으로 애플리케이션 프로그램 서비스를 지원하기 위해서는, 방송 네트워크 또는 통신 네트워크를 이용하여 애플리케이션 프로그램 서비스를 실행하는데 필요한 데이터 또는 파일 수신과 더불어, 단말에서 애플리케이션 프로그램 서비스 및 관련 데이터를 인식하고 선택하도록 하기 위한 시그널링 정보가 필요하다. 따라서 MPEG 미디어 전송 기술을 사용하는 통신 시스템에서 애플리케이션 프로그램 서비스를 제공하기 위한 효과적인 시그널링 정보의 전송 기술을 필요로 하게 되었다.In order to support the application program service based on the hybrid transmission technology in which the broadcasting network and the communication network are linked with each other, in addition to receiving the data or the file necessary for executing the application program service using the broadcasting network or the communication network, Signaling information is needed to allow the service and associated data to be recognized and selected. Therefore, a need has arisen for a technology for transmitting effective signaling information for providing application program services in a communication system using MPEG media transmission technology.

본 발명은 디지털 방송 서비스를 지원하기 위한 방법 및 장치를 제공한다. The present invention provides a method and apparatus for supporting a digital broadcasting service.

본 발명은 미디어 전송 기술을 사용하여 전송되는 방송 프로그램과 연동하거나 또는 독립적으로 동작하는 애플리케이션 프로그램 서비스를 지원하기 위한 방법 및 장치를 제공한다.The present invention provides a method and apparatus for supporting application program services that operate independently or in conjunction with broadcast programs transmitted using media transmission techniques.

본 발명은 디지털 방송 서비스를 위한 애플리케이션 프로그램 서비스를 지원하기 위한 시그널링 정보 전송 방법 및 그 장치를 제공한다.The present invention provides a signaling information transmission method and apparatus for supporting an application program service for a digital broadcasting service.

본 발명에서 해결하고자 하는 기술적 과제는 MMT 전송 기술을 사용하여 애플리케이션 프로그램 서비스 관련 정보 및 애플리케이션 프로그램 서비스의 동작을 제어하기 위한 이벤트 정보를 전송하는 방법 및 그 장치를 고안하는데 목적을 두고 있다.It is an object of the present invention to provide a method and apparatus for transmitting application program service related information and event information for controlling operation of an application program service using MMT transmission technology.

본 발명의 일 실시예에 따른 방법은; 디지털 방송 서비스 방법에 있어서, 멀티미디어 전송 세션을 통해 애플리케이션 정보(AI) 테이블을 포함하는 AIT 메시지를 수신하는 과정과, 상기 AI 테이블로부터 애플리케이션 프로그램 서비스에 관련된 속성 정보를 획득하는 과정과, 상기 속성 정보를 기반으로 상기 애플리케이션 프로그램 서비스를 실행하는 과정을 포함한다.A method according to an embodiment of the present invention comprises: A digital broadcasting service method comprising: receiving an AIT message including an application information (AI) table through a multimedia transmission session; acquiring attribute information related to an application program service from the AI table; And executing the application program service based on the application program.

본 발명의 일 실시예에 따른 장치는; 디지털 방송 서비스를 수신하는 장치에 있어서, 멀티미디어 전송 세션을 통해 애플리케이션 정보(AI) 테이블을 포함하는 AIT 메시지를 수신하는 수신부와, 상기 AI 테이블로부터 애플리케이션 프로그램 서비스에 관련된 속성 정보를 획득하고, 상기 속성 정보를 기반으로 상기 애플리케이션 프로그램 서비스를 실행하는 제어부를 포함한다.An apparatus according to an embodiment of the present invention includes: An apparatus for receiving a digital broadcasting service, the apparatus comprising: a receiving unit for receiving an AIT message including an application information (AI) table through a multimedia transmission session; and an obtaining unit for obtaining attribute information related to the application program service from the AI table, And a control unit for executing the application program service based on the application program.

본 발명의 특정한 바람직한 실시예들의 상기에서 설명한 바와 같은 또한 다른 측면들과, 특징들 및 이득들은 첨부 도면들과 함께 처리되는 하기의 설명으로부터 보다 명백하게 될 것이다.
도 1은 본 발명의 일 실시예에 따른 MMT 시스템의 계층 구조를 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 MMT 페이로드의 구성을 도식화한 것이다.
도 3은 본 발명의 일 실시예에 따른 MMT 패키지의 논리적 구조를 나타낸 것이다.
도 4는 본 발명의 일 실시예에 따라 애플리케이션 프로그램 서비스를 실행하기 위한 단말의 개략적인 동작 과정을 나타낸 것이다.
도 5는 본 발명의 일 실시예에 따라 애플리케이션 프로그램 서비스에 관련된 정보를 수신하는 장치를 도식화한 것이다.
도 6은 본 발명의 일 실시예에 따라 MMT 시그널링 메시지를 이용한 이벤트 정보의 처리 절차를 나타낸 흐름도이다.
도 7은 본 발명의 일 실시예에 따라 MPU를 이용한 이벤트 정보의 처리 절차를 나타낸 흐름도이다.
상기 도면들을 통해, 유사 참조 번호들은 동일한 혹은 유사한 엘리먼트들과, 특징들 및 구조들을 도시하기 위해 사용된다는 것에 유의해야만 한다.
Further aspects, features and advantages of the present invention as set forth above will become more apparent from the following description, taken in conjunction with the accompanying drawings, in which certain preferred embodiments of the invention are described.
1 is a diagram illustrating a hierarchical structure of an MMT system according to an embodiment of the present invention.
FIG. 2 illustrates a configuration of an MMT payload according to an embodiment of the present invention.
3 shows a logical structure of an MMT package according to an embodiment of the present invention.
FIG. 4 illustrates a schematic operation process of a terminal for executing an application program service according to an embodiment of the present invention.
5 is a schematic representation of an apparatus for receiving information related to application program services in accordance with an embodiment of the present invention.
6 is a flowchart illustrating a process of processing event information using an MMT signaling message according to an embodiment of the present invention.
7 is a flowchart illustrating an event information processing procedure using an MPU according to an embodiment of the present invention.
Throughout the drawings, it should be noted that like reference numerals are used to illustrate the same or similar elements and features and structures.

이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

실시예를 설명함에 있어서 본 발명이 속하는 기술 분야에 익히 알려져 있고 본 발명과 직접적으로 관련이 없는 기술 내용에 대해서는 설명을 생략한다. 이는 불필요한 설명을 생략함으로써 본 발명의 요지를 흐리지 않고 더욱 명확히 전달하기 위함이다.In the following description of the embodiments of the present invention, descriptions of techniques which are well known in the technical field of the present invention and are not directly related to the present invention will be omitted. This is for the sake of clarity of the present invention without omitting the unnecessary explanation.

마찬가지 이유로 첨부 도면에 있어서 일부 구성요소는 과장되거나 생략되거나 개략적으로 도시되었다. 또한, 각 구성요소의 크기는 실제 크기를 전적으로 반영하는 것이 아니다. 각 도면에서 동일한 또는 대응하는 구성요소에는 동일한 참조 번호를 부여하였다.For the same reason, some of the components in the drawings are exaggerated, omitted, or schematically illustrated. Also, the size of each component does not entirely reflect the actual size. In the drawings, the same or corresponding components are denoted by the same reference numerals.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention and the manner of achieving them will become apparent with reference to the embodiments described in detail below with reference to the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as being limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of the invention to those skilled in the art. Is provided to fully convey the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims. Like reference numerals refer to like elements throughout the specification.

이때, 처리 흐름도 도면들의 각 블록과 흐름도 도면들의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수 있음을 이해할 수 있을 것이다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 흐름도 블록(들)에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 흐름도 블록(들)에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 흐름도 블록(들)에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.It will be appreciated that the combinations of blocks and flowchart illustrations in the process flow diagrams may be performed by computer program instructions. These computer program instructions may be loaded into a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus, so that those instructions, which are executed through a processor of a computer or other programmable data processing apparatus, Thereby creating means for performing functions. These computer program instructions may also be stored in a computer usable or computer readable memory capable of directing a computer or other programmable data processing apparatus to implement the functionality in a particular manner so that the computer usable or computer readable memory The instructions stored in the block diagram (s) are also capable of producing manufacturing items containing instruction means for performing the functions described in the flowchart block (s). Computer program instructions may also be stored on a computer or other programmable data processing equipment so that a series of operating steps may be performed on a computer or other programmable data processing equipment to create a computer- It is also possible for the instructions to perform the processing equipment to provide steps for executing the functions described in the flowchart block (s).

또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실행 예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.In addition, each block may represent a module, segment, or portion of code that includes one or more executable instructions for executing the specified logical function (s). It should also be noted that in some alternative implementations, the functions mentioned in the blocks may occur out of order. For example, two blocks shown in succession may actually be executed substantially concurrently, or the blocks may sometimes be performed in reverse order according to the corresponding function.

이 때, 본 실시 예에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA(field-Programmable Gate Array) 또는 ASIC(Application Specific Integrated Circuit)과 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다.Herein, the term " part " used in the present embodiment means a hardware component such as software or an FPGA (Field-Programmable Gate Array) or ASIC (Application Specific Integrated Circuit) Lt; / RTI > However, 'part' is not meant to be limited to software or hardware. &Quot; to " may be configured to reside on an addressable storage medium and may be configured to play one or more processors. Thus, by way of example, 'parts' may refer to components such as software components, object-oriented software components, class components and task components, and processes, functions, , Subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables. The functions provided in the components and components may be further combined with a smaller number of components and components or further components and components. In addition, the components and components may be implemented to play back one or more CPUs in a device or a secure multimedia card.

본 개시의 실시예들을 구체적으로 설명함에 있어서, OFDM 기반의 무선통신 시스템을 주된 대상으로 할 것이지만, 본 명세서에서 청구하고자 하는 주요한 요지는 유사한 기술적 배경을 가지는 여타의 통신 시스템 및 서비스에도 본 명세서에 개시된 범위를 크게 벗어나지 아니하는 범위에서 적용 가능하며, 이는 당해 기술분야에서 숙련된 기술적 지식을 가진 자의 판단으로 가능할 것이다. Although specific embodiments of the present disclosure will be described in the context of an OFDM-based wireless communication system, the subject matter of the present disclosure is not limited to the communication systems and services described herein, And the scope of the present invention is not limited to the above-described embodiments, but may be practiced by those skilled in the art.

MMT 프로토콜(MMT Protocol: MMTP)은 IP(Internet Protocol) 네트워크를 통해 MMT 페이로드 포맷(Payload Format: PF)로 구성된 전달 프레임을 전달하기 위한 애플리케이션 계층 프로토콜을 정의한다. MMT 페이로드는 MMT 페이로드 포맷으로 구성되어 효율적으로 전달할 수 있도록 디자인된다. 이종(heterogeneous) IP 네트워크들을 통해 MPEG 미디어 데이터를 효율적으로 전달하기 위해서, MMT는 캡슐화 포맷들(Encapsulation Formats)과, 전달 프로토콜들(Delivery Protocols)과, 시그널링 메시지 포맷(signaling message format)들을 정의한다. The MMT protocol (MMT Protocol) defines an application layer protocol for delivering a delivery frame composed of an MMT payload format (PF) over an Internet Protocol (IP) network. The MMT payload is designed in a MMT payload format for efficient delivery. In order to efficiently deliver MPEG media data through heterogeneous IP networks, the MMT defines Encapsulation Formats, Delivery Protocols, and signaling message formats.

MMT 기술에서는 패키지(Package)와 애셋(Asset) 등의 데이터 모델을 정의하고 있다. 패키지는 영화 한편과 같은 하나의 독립적 콘텐츠를 의미하며, 애셋은 콘텐츠를 구성하는 영상, 음성 또는 데이터 등과 같은 요소를 구분하는 논리적 개체로서 하나의 패키지는 복수의 애셋으로 구성될 수 있다.MMT technology defines data models such as package and asset. A package refers to one independent content such as a movie, and an asset is a logical entity that distinguishes elements such as video, audio, or data constituting the content, and one package can be composed of a plurality of assets.

도 1은 본 발명의 일 실시예에 따른 MMT 시스템의 계층 구조를 도시한 도면이다.1 is a diagram illustrating a hierarchical structure of an MMT system according to an embodiment of the present invention.

도 1을 참조하면, 멀티미디어 데이터 패킷을 구성하고 이를 전송하기 위한 미디어 부호화 계층(Media Coding Layer)(110)과 캡슐화 기능 계층(Encapsulation Function Layer: Layer E)(120)과 전달 기능 계층(Delivery Function Layer: Layer D)(130)과 전송 프로토콜 계층(transport Protocol Layer)(140)과 인터넷 프로토콜(IP) 계층(150) 및 제어 기능 계층(Control Function Layer: Layer C)(100)이 도시되었다. 1, a media coding layer 110, an encapsulation function layer (Layer E) 120, and a delivery function layer A layer 130, a transport protocol layer 140, an Internet protocol (IP) layer 150, and a control function layer (Layer C) 100 are illustrated.

일 실시예에 따르면, 미디어 부호화 계층(110)과 캡슐화 기능 계층(120)은 멀티미디어 컨텐츠 및/또는 멀티미디어 서비스에 따른 멀티미디어 데이터를 생성하는 멀티미디어 데이터 생성부로서 동작한다. 또한 전달 기능 계층(130)는 데이터 생성부로부터 입력된 멀티미디어 데이터를 기반으로 멀티미디어 데이터 패킷을 구성하는 멀티미디어 데이터 구성부로서 동작한다. 멀티미디어 데이터 구성부에 해당하는 전달 기능 계층(130)은 멀티미디어 데이터 생성부로부터 제공된 적어도 하나의 멀티미디어 데이터를 식별하여 헤더 정보를 구성하고, 헤더 정보와 적어도 하나의 멀티미디어 데이터를 결합하여 멀티미디어 데이터 패킷을 구성한다.According to one embodiment, the media encoding layer 110 and the encapsulation function layer 120 operate as a multimedia data generation unit for generating multimedia data according to multimedia contents and / or multimedia services. Also, the transfer function layer 130 operates as a multimedia data constructing unit for constructing a multimedia data packet based on the multimedia data input from the data generating unit. The transfer function layer 130 corresponding to the multimedia data structure unit constructs header information by identifying at least one multimedia data provided from the multimedia data generation unit, combines the header information and at least one multimedia data to form a multimedia data packet do.

미디어 부호화 계층(110)에서 압축된 멀티미디어 데이터는 캡슐화(Encapsulation) 기능 계층(120)를 거쳐 파일 포맷과 유사한 형태로 패키지화되어 출력된다. 캡슐화 기능 계층(120)은 미디어 부호화 계층(110)으로부터 제공되는 코딩된 미디어 데이터 혹은 저장된 미디어 데이터를 입력으로 하여 MMT 서비스를 위한 작은 단위인 데이터 조각(segment)를 생성하며, 상기 데이터 조각을 사용하여 MMT 서비스를 위한 액세스 유닛(Access Unit)들을 생성한다. 또한 캡슐화 기능 계층(120)은 상기 액세스 유닛들을 결합 및/또는 분할함으로써 복합 컨텐츠의 생성 및 저장과 전송을 위한 패킷 포맷을 생성한다.The multimedia data compressed in the media encoding layer 110 is packaged in a form similar to a file format via the encapsulation function layer 120 and output. The encapsulation function layer 120 receives coded media data or stored media data provided from the media encoding layer 110 to generate a data segment that is a small unit for the MMT service, And creates access units for the MMT service. The encapsulation layer 120 also creates a packet format for composing and storing and delivering composite content by combining and / or segmenting the access units.

전달 기능 계층(130)은 캡슐화 기능 계층(120)에서 출력되는 데이터 유닛(들)을 MMT 페이로드 포맷으로 변환화한 후 MMT 전송 패킷 헤더(MMT Transport Packet Header)를 부가하여 MMT 전송 패킷으로 구성하거나 또는 기존 전송 프로토콜인 RTP(Real-time Protocol)를 사용하여 RTP 패킷으로 구성한다. The transfer function layer 130 converts the data unit (s) output from the encapsulation function layer 120 into an MMT payload format, and then forms an MMT transport packet by adding an MMT transport packet header Or an RTP (Real-time Protocol) which is an existing transmission protocol.

전달 기능 계층(130)에서 구성된 패킷들은 UDP(User Datagram Protocol) 혹은 TCP(Transport Control Protocol)와 같은 전송 프로토콜 계층(140)을 거쳐 최종적으로 인터넷 프로토콜(IP) 계층(150)에서 IP 패킷화되어 전송된다. 전송 프로토콜 계층(140) 및 IP 계층(150)은 데이터 전송부로서 동작할 수 있다. 선택적으로 존재할 수 있는 제어 기능부(100)는 데이터의 전송에 필요한 제어 정보 혹은 시그널링 정보를 생성하여 데이터에 부가하여 전송하거나, 혹은 별도의 시그널링 수단을 통해 전송한다.Packets configured in the delivery function layer 130 are finally IP packetized in the Internet protocol (IP) layer 150 through a transport protocol layer 140 such as UDP (User Datagram Protocol) or TCP (Transport Control Protocol) do. The transport protocol layer 140 and the IP layer 150 may operate as data transfer units. The control function unit 100, which may be selectively present, generates control information or signaling information necessary for data transmission, adds the control information or signaling information to the data, and transmits the control information or signaling information through separate signaling means.

전달 기능 계층(130)에서 생성되는 MMT 페이로드 포맷은 MMT 프로토콜 혹은 RTP에 의해 전달될 미디어 유닛(들)의 논리 구조를 정의한다. MMT 페이로드는 캡슐화된 데이터 유닛 및 MMT 계층 프로토콜들 혹은 다른 기존 애플리케이션 전송 프로토콜들(Application Transport Protocols)에 의한 다른 정보를 전달하기 위한 페이로드 포맷에 의해 특정(specify)된다. MMT 페이로드는 스트리밍(streaming)에 대한 정보 및 파일 전달(file transfer)에 대한 정보를 제공한다. 스트리밍에서, 데이터 유닛은 MMT 미디어 프래그먼트 유닛(Media Fragment Unit: MFU) 혹은 MMT 프로세싱 유닛(MMT Processing Unit: MPU)이 될 수 있다. 파일 전달을 위한 경우, 데이터 유닛은 MMT 애셋(Asset) 및 MMT 패키지(Package)가 될 수 있다.The MMT payload format generated in the delivery function layer 130 defines the logical structure of the media unit (s) to be delivered by the MMT protocol or RTP. The MMT payload is specified by a payload format for conveying encapsulated data units and other information by MMT layer protocols or other existing Application Transport Protocols. The MMT payload provides information about streaming and information about file transfers. In streaming, the data unit may be an MMT Media Fragment Unit (MFU) or an MMT Processing Unit (MPU). For file delivery, the data unit may be an MMT Asset and an MMT Package.

도 2는 본 발명의 일 실시예에 따른 MMT 페이로드의 구성을 도식화한 것이다. FIG. 2 illustrates a configuration of an MMT payload according to an embodiment of the present invention.

도 2를 참조하면, MMT 페이로드(200)는 적어도 하나의 MMT MFU(210), 적어도 하나의 MPU(230), 적어도 하나의 MMT 애셋(230) 및 MMT 패키지 중 적어도 하나를 포함하여 구성될 수 있다.2, an MMT payload 200 may comprise at least one of at least one MMT MFU 210, at least one MPU 230, at least one MMT asset 230, and an MMT package. have.

MFU(210)은 어떤 특정 미디어 코덱(Media Codec)에도 독립적인, 미디어 디코더에 의해 독립적으로 처리 가능한 코딩된 미디어 데이터를 포함하는 일반적인 컨테이너 포맷을 의미한다. MFU(210)는 MPU(220)의 조각난 데이터의 일부분을 나타내는 것으로, 독자적으로 디코딩이 가능한 최소 단위가 된다. 일 예로서 하나의 프레임을 액세스 유닛으로 사용하여 부호화가 수행되는 경우 MFU(210)는 하나의 비디오 프레임이 될 수 있으며, 다른 경우 하나의 프레임 안에 포함된 하나의 슬라이스가 될 수 있다.MFU 210 is a generic container format that includes coded media data that can be independently processed by a media decoder, independent of any particular media codec. The MFU 210 represents a part of fragmented data of the MPU 220, and is the minimum unit capable of decoding on its own. As an example, when encoding is performed using one frame as an access unit, the MFU 210 may be one video frame, and in other cases, it may be one slice included in one frame.

MPU(220)는 하나 혹은 그 이상의 MFU들과 추가적인 전달 및 처리 관련 정보를 포함하는 컨테이너 포맷으로서, 복수의 서로 다른 액세스 유닛들로부터 생성된 다양한 개수의 MFU들을 포함할 수 있다. MPU(220)는 MMT 구현 개체(MMT compliant entity)에 의해서 완전하고 독립적으로 처리될 수 있는 부호화된 미디어 데이터 유닛을 의미하는 것으로서, 애플리케이션 환경에 따른 특정한 크기, 일 예로서 비디오의 경우 1 GOP(Group of Picture)의 크기를 가질 수 있다. 일 예로서 MPU(220)는 1 GOP(일 예로서 1초의 비디오)를 구성하는 복수의 픽쳐 프레임들로 구성될 수 있으며, MFU(220)는 각 픽쳐 프레임을 포함할 수 있다.The MPU 220 is a container format containing one or more MFUs and additional delivery and processing related information, and may include various numbers of MFUs generated from a plurality of different access units. The MPU 220 is an encoded media data unit that can be completely and independently processed by an MMT compliant entity. The MPU 220 is a specific size according to an application environment, for example, 1 GOP (Group of Picture). As an example, the MPU 220 may be composed of a plurality of picture frames constituting one GOP (one-second video, for example), and the MFU 220 may include each picture frame.

MMT 애셋(230)은 하나 혹은 그 이상의 MPU들로 구성되는 데이터 엔터티(data entity)로서, 동일한 합성 정보(Composition Information: CI) 및 트랜스포트(transport) 특성이 적용되는 가장 큰 데이터 유닛(data unit)이다. MMT 애셋(230)은 패키지된 혹은 다중화된 데이터를 포함하는 오직 한 가지 타입의 데이터만을 포함한다. 일 예로 오디오(audio)의 엘리멘터리 스트림(Elementary Stream: ES)의 적어도 일부와, 비디오(video)의 ES의 적어도 일부와, MPEG-U(User Interface) 위젯(Widget) 패키지와, MPEG-2 전송 스트림(Transport Stream: TS)의 적어도 일부와, MP4(MPEG-4) 파일의 적어도 일부와, MMT 패키지의 전체 혹은 적어도 일부가 각 MMT 애셋(230)이 될 수 있다.The MMT asset 230 is a data entity composed of one or more MPUs and is the largest data unit to which the same composition information (CI) and transport characteristics are applied. to be. The MMT asset 230 includes only one type of data, including packaged or multiplexed data. For example, at least a portion of an audio elementary stream (ES), at least a portion of an ES of video, an MPEG-U (User Interface) widget package, an MPEG- At least a portion of a transport stream (TS), at least a portion of an MP4 (MPEG-4) file, and all or at least a portion of an MMT package may be each MMT asset 230.

여기서 엘리멘터리 스트림(ES)은 특정 미디어 코덱에 의해 정의되는 것으로서, 논리적으로 하나 혹은 그 이상의 MMT 애셋들이 될 수 있다. 계층화 코덱 및 다시점 코덱을 지원하는 MMT 애셋(230)은 다른 MMT 애셋들과 오버랩(overlap)될 수 있다. Where the elementary stream (ES) is defined by a particular media codec, and may logically be one or more MMT assets. The MMT asset 230 supporting the layered codec and the multi-view codec may overlap with other MMT assets.

MMT 합성 정보(MMT Composition Information: MMT-CI)는 MMT 애셋들의 공간 및 시간 관계(spatial and temporal relationship)을 정의하는 정보를 의미하며, MMT 트랜스포트 특성(MMT Transport Characteristics: MMT-TC)은 MMT 애셋들의 전달을 위해 요구되는 서비스 품질(Quality of Service: QoS)을 정의한다. MMT-TC는 특정 전달 환경에 대해 애셋 전달 특성들(Asset Delivery Characteristics: ADC)로 표현될 수 있다.MMT Composition Information (MMT-CI) refers to information defining the spatial and temporal relationship of MMT assets. MMT Transport Characteristics (MMT-TC) (QoS) required for the delivery of the service. The MMT-TC can be expressed as Asset Delivery Characteristics (ADC) for a particular delivery environment.

MMT 패키지(240)는 MMT 구현 개체(MMT compliant entity)에 의해 처리되는, 부호화된 미디어 데이터와 관련 정보의 집합체(collection)로 정의된다.The MMT package 240 is defined as a collection of encoded media data and related information, which is processed by an MMT compliant entity.

도 3은 본 발명의 일 실시예에 따른 MMT 패키지의 논리적 구조를 나타낸 것으로서, 도시한 바와 같이 MMT 패키지(300)는 하나 혹은 그 이상의 MMT 애셋들(320)과 MMT 합성 정보(310) 및 MMT 트랜스포트 특성을 나타내는 하나 혹은 그 이상의 ADC들(330)로 구성된다. MMT 패키지(240)는 식별자와 같은 설명 정보 및 MMT 애셋들(320)의 위치를 포함하며, MMT 패키지(240) 내의 MMT 애셋들(320)은 다중화되거나 혹은 연접될 수 있다. FIG. 3 illustrates a logical structure of an MMT package according to an embodiment of the present invention. As shown, the MMT package 300 includes one or more MMT assets 320, MMT composition information 310, And one or more ADCs 330 representing the port characteristics. MMT package 240 includes descriptive information such as an identifier and the location of MMT assets 320 and MMT assets 320 in MMT package 240 may be multiplexed or concatenated.

MMT 패키지(240)의 처리는 MPU의 단위로 적용되며, MMT 애셋(320)은 동일한 MMT 애셋 ID를 가지는 하나 혹은 그 이상의 MPU들의 집합체로서, 각 MMT 애셋(320)에 관련된 트랜스포트 특성은 ADC(330)에 의해 표현된다. ADC(330)는 MMT 패키지를 패킷화하는 개체에 의해, MMT 페이로드의 파라미터들과 MMT 패킷의 헤더 정보를 구성하는데 사용될 수 있다. The processing of the MMT package 240 is applied in units of MPUs, where the MMT asset 320 is an aggregate of one or more MPUs having the same MMT asset ID, 330). The ADC 330 can be used by the entity that packetizes the MMT package to configure the parameters of the MMT payload and the header information of the MMT packet.

상기와 같은 패키지의 구성 정보 및 이를 사용자 단말에서 수신하고 소비하기 위해 필요한 정보는 MMT 시그널링 메시지를 통해 전송된다. MMT 시그널링 기능 영역은 미디어 소비와 미디어 전달과 관련된 메시지 포맷을 정의하고 있다. 미디어 소비와 관련된 메시지들은 전송되는 미디어 데이터를 소비하기 위해 필요한 정보를 제공하며, 다음과 같이 정의되어 있다. The configuration information of the package and information necessary for receiving and consuming it at the user terminal are transmitted through the MMT signaling message. The MMT signaling functional area defines the message format associated with media consumption and media delivery. Messages related to media consumption provide information necessary to consume transmitted media data and are defined as follows.

MPEG-2 TS의 PMT(Program Map Table)와 유사한 역할을 하는 PA (Package Access) 메시지는 전송되는 패키지의 재생을 위해 필요한 모든 정보를 포함한다. PA 메시지는 패키지를 수신 및 소비하기 위해 가장 먼저 전송되어야 하는 메시지이며, 이후에 별도의 메시지로 개별 정보가 갱신될 수 있다. 표현 정보를 제공하는 MPI (Media Presentation Information) 메시지는 ISO/IEC 23008-11에서 정의하는 합성 정보(CI)나 ISO/IEC(International Organization for Standardization/International Electrotechnical Commission) 23009-1에서 정의하는 미디어 프리젠테이션 설명(Media Presentation Description: MPD)와 같은 다양한 표현 정보를 전송하기 위해서 사용된다. MPT (MMT Package Table) 메시지는 전송되는 패키지에 대한 정보를 제공하는 메시지로서, 패키지의 ID와 패키지를 구성하는 애셋 정보 등을 제공한다. 그 외에도 애셋과 MPEG-2 ES 간의 동기화를 위해 NTP(Network Time Protocol) 타임스탬프와 MPEG-2의 STC(System Timing Clock) 간의 매핑 정보를 제공하기 위한 CRI (Clock Relation Information) 메시지, 미디어 소비를 위해 필요한 단말 성능 정보를 제공하는 DCI (Device Capability Information) 메시지가 정의되어 있다.A Package Access (PA) message, which plays a role similar to the PMT (Program Map Table) of the MPEG-2 TS, contains all information necessary for the reproduction of the transmitted package. The PA message is the first message to be transmitted in order to receive and consume the package, and subsequently the individual information may be updated in a separate message. The MPI (Media Presentation Information) message that provides the presentation information is composed of the composite information (CI) defined in ISO / IEC 23008-11 or the media presentation defined in ISO / IEC 23009-1 And a media presentation description (MPD). The MPT (MMT Package Table) message is a message for providing information on the package to be transmitted, and provides the ID of the package and the asset information constituting the package. In addition, a CRI (Clock Relation Information) message is provided to provide mapping information between an NTP (Network Time Protocol) timestamp and an MPEG-2 STT (System Timing Clock) for synchronization between the asset and MPEG-2 ES, A DCI (Device Capability Information) message is provided that provides required terminal capability information.

방송통신 융합 및 전송 네트워크의 고도화와 더불어 UHDTV (Ultra High-Definition Television), 3DTV(3-Dimenstion TV), 다시점 TV (Multi-view TV) 등의 고화질 실감형 방송 서비스 기술, 다양한 유형의 고정형 및 휴대용 멀티미디어 기기를 유기적으로 활용하기 위한 N-스크린 서비스 기술 등 차세대 방송 및 멀티미디어 서비스를 가능하게 하는 혁신적인 기술이 지속적으로 시장에 선보이고 있다. 특히 방송 네트워크와 통신 네트워크를 유기적으로 연동하여 융합형 멀티미디어 서비스를 가능하도록 하는 하이브리드 전송 기술을 바탕으로 다양한 부가 정보를 방송 프로그램과 연동하거나 또는 독립적으로 제공하는 애플리케이션 프로그램 서비스는, 사실감과 현장감이 극대화된 영상 콘텐츠 제공과 더불어 차세대 방송 서비스의 핵심 성공 요소로 간주된다. 대표적인 애플리케이션 프로그램 서비스 모델로는 시청자 참여형 서비스 (단순문자메시지, 퀴즈, 투표(Poll), 설문조사, 인기투표), TV 전자상거래 (티켓예매, 경매, 전자쿠폰, 모바일 다운로드), 날씨, 스포츠, 게임과 같이 방송 프로그램과 독립적으로 제공될 수 있는 애플리케이션 프로그램 서비스 및 포털 서비스, 맞춤형 광고 등이 포함된다. (UHDTV), 3-dimen- sion TV (3DTV), and multi-view TV), as well as various types of fixed-type and fixed- Innovative technologies that enable next-generation broadcasting and multimedia services such as N-screen service technology to organically utilize portable multimedia devices are continuously on the market. In particular, an application program service that provides a variety of supplementary information linked to broadcast programs or independently based on a hybrid transmission technology that enables a convergent multimedia service by organically linking a broadcast network and a communication network, It is regarded as a key success factor of the next generation broadcasting service in addition to providing video contents. Typical application program service models include viewer participatory services (simple text messages, quizzes, polls, surveys, popularity polls), TV e-commerce (ticketing, auctions, electronic coupons, mobile downloads) An application program service and a portal service that can be provided independently of a broadcast program, a customized advertisement, and the like.

애플리케이션 프로그램 서비스를 지원하기 위해서는 방송 네트워크 또는 통신 네트워크를 이용하여 애플리케이션 프로그램 서비스를 실행하는데 필요한 데이터 또는 파일 수신과 더불어 단말에서 애플리케이션 프로그램 서비스 및 관련 데이터에 대한 인식과 선택을 위한 시그널링 정보가 필요하다. 애플리케이션 프로그램 서비스 관련 시그널링 정보에는 두 가지 유형이 존재한다. 즉 상기 시그널링 정보는, 이용 가능한 애플리케이션 프로그램 서비스 리스트, 애플리케이션 프로그램 서비스 이름 및 전송 정보 등 개별 서비스에 대한 전반적인 속성을 제공하는 시그널링 정보와, 애플리케이션 프로그램 서비스의 동작을 제어하는 이벤트 정보로 세분화될 수 있다. 특히 방송 프로그램에 연동되는 애플리케이션 프로그램 서비스의 경우 이벤트 정보를 함께 전송함으로써 좀 더 다양하고 풍부한 방송 서비스 제공이 가능해진다. In order to support the application program service, signaling information for recognition and selection of the application program service and related data in the terminal is required along with reception of data or files necessary to execute the application program service using the broadcast network or the communication network. There are two types of signaling information related to application program services. That is, the signaling information may be subdivided into signaling information for providing overall attributes for individual services such as an available application program service list, an application program service name and transmission information, and event information for controlling the operation of the application program service. In particular, in the case of an application program service linked to a broadcast program, it is possible to provide a more diversified and rich broadcast service by transmitting event information together.

도 4는 본 발명의 일 실시예에 따라 애플리케이션 프로그램 서비스를 실행하기 위한 단말의 개략적인 동작 과정을 나타낸 것이다. 여기에서는 방송 프로그램과 연동하여 특정 시간에 맞춤형 광고를 위한 애플리케이션 프로그램 서비스의 예를 도시하였다.FIG. 4 illustrates a schematic operation process of a terminal for executing an application program service according to an embodiment of the present invention. Here, an example of an application program service for a tailored advertisement at a specific time in conjunction with a broadcast program is shown.

도 4를 참조하면, 과정 405에서 단말은 사용자가 요청한 방송 프로그램(도시된 예에서 Show X)의 오디오 및 비디오 스트림들을 서비스 공급자(Service Provider)로부터 수신하여 재생하며, 더불어 과정 410에서 애플리케이션 프로그램 서비스에 관련된 시그널링을 제공하는 채널인 애플리케이션 정보 스트림(Application Information Stream)을 통해 상기 방송 프로그램과 연계된 애플리케이션 프로그램 서비스에 대한 시그널링 정보를 획득하고, 필요 시 방송 네트워크 또는 통신 네트워크를 이용하여 상기 애플리케이션 프로그램 서비스의 실행에 필요한 데이터를 수신한다. 상기 시그널링 정보 및 데이터는 애플리케이션 정보라 통칭할 수 있다.Referring to FIG. 4, in step 405, the terminal receives and plays audio and video streams of a broadcast program requested by the user (Show X in the illustrated example) from a service provider, Acquiring signaling information for an application program service associated with the broadcast program through an application information stream, which is a channel providing associated signaling, and, if necessary, executing the application program service using a broadcast network or a communications network As shown in Fig. The signaling information and data may be collectively referred to as application information.

과정 415에서 단말은 상기 방송 프로그램을 재생하는 도중, 이벤트를 제공하는 채널인 이벤트 스트림(Event Stream)으로 전송되는 이벤트 정보를 수신하고, 이에 따른 동작을 수행한다. 도시된 예에서 단말은 Show X의 중간 부분, 즉 광고 시간이 시작되는 시점에서 광고 중인 제품의 추가적인 정보를 제공하는 애플리케이션 프로그램 서비스 Y의 실행에 관한 이벤트 정보를 수신한다. 과정 420에서 단말은 상기 이벤트 정보를 기반으로 상기 애플리케이션 프로그램 서비스 Y(즉 광고 서비스)를 실행한다. 일정 시간 후 과정 425에서 상기 애플리케이션 프로그램 서비스 Y의 종료 이벤트가 수신되면 단말은 상기 서비스 Y를 종료한다. In step 415, the terminal receives event information transmitted in an event stream, which is a channel for providing an event, while reproducing the broadcast program, and performs an operation according to the event information. In the example shown, the terminal receives event information regarding the execution of the application program service Y providing additional information of the product being advertised at the middle portion of Show X, i.e., at the beginning of the advertisement time. In step 420, the terminal executes the application program service Y (i.e., advertisement service) based on the event information. After a predetermined time, if the end event of the application program service Y is received in step 425, the terminal terminates the service Y. [

MMT 기술은 미디어 소비와 미디어 전달과 관련된 다양한 시그널링 메시지를 정의하고 있으나, 이들 시그널링 메시지의 주요 역할은 패키지의 구성 정보 및 패키지를 구성하는 개별 애셋을 수신하기 위해 필요한 정보를 제공하는데 있다. 특히 MPT 메시지에서 사용되는 MP (MMT Package) 테이블은 패키지를 구성하는 애셋별 구성 정보 및 각 애셋을 수신하기 위해 필요한 위치 정보를 정의하고 있다. 이러한 기본 정보 외의 부가 정보는 디스크립터를 사용하여 제공하는 방식을 사용하고 있으며, MPT 메시지는 다양한 디스크립터를 저장할 수 있는 컨테이너 포맷을 정의한다.MMT technology defines various signaling messages related to media consumption and media delivery, but the main role of these signaling messages is to provide the configuration information of the package and the information needed to receive the individual assets that make up the package. In particular, the MP (MMT Package) table used in the MPT message defines configuration information for each asset constituting the package and position information necessary for receiving each asset. The additional information other than the basic information is provided using a descriptor, and the MPT message defines a container format capable of storing various descriptors.

MPI 테이블에서 사용될 수 있는 MPEG CI 정보는 패키지를 구성하는 개별 애셋의 단말의 논리적 화면에서의 위치 정보와 함께 해당 애셋의 재생과 관련된 시간 정보를 포함할 수 있다. 그러나 MPEG CI는 MMT로 전송되는 애셋에 대한 제어 정보를 제공하는데 주요 목적을 두고 있으며, 따라서 MMT가 아닌 전송 프로토콜로 전송되는 애플리케이션 프로그램 서비스에 적용하기에는 한계가 존재한다.The MPEG CI information that can be used in the MPI table may include location information on the logical screen of the terminal of the individual asset constituting the package together with time information related to playback of the asset. However, MPEG CI is mainly aimed at providing control information for an asset transmitted to an MMT, and thus there is a limit to apply to an application program service transmitted through a transmission protocol other than MMT.

하기에서는 MMT 전송 기술을 이용하여 애플리케이션 프로그램 서비스의 관련 정보 및 애플리케이션 프로그램 서비스의 동작을 제어하기 위한 이벤트 정보를 전송하는 기술을 설명한다.In the following, a technique of transmitting information related to an application program service and event information for controlling the operation of an application program service using the MMT transmission technology will be described.

도 5는 본 발명의 일 실시예에 따라 애플리케이션 프로그램 서비스에 관련된 정보를 수신하는 장치를 도식화한 것이다. 5 is a schematic representation of an apparatus for receiving information related to application program services in accordance with an embodiment of the present invention.

도 5를 참조하면, 데이터 수신기(data receiver)(505)는 MMT, ROUTE, HTTP(Hyper Text Transfer Protocol)와 같은 전송 프로토콜들 중 적어도 하나를 사용하여 통신 네트워크 또는 방송 네트워크로 전송되는 패킷을 수신하기 위해 MMT 데이터 수신기(510), ROUTE 데이터 수신기(515), HTTP 데이터 수신기(520) 및 다른 데이터 수신기(525) 중 적어도 하나를 포함할 수 있으며, 상기 수신된 패킷을 그 종류에 따라 제어부(500) 내의 파일 데이터 수신기(530), 미디어 데이터 수신기(540), 또는 시그널링 데이터 수신기(550)로 전달한다. Referring to FIG. 5, a data receiver 505 receives packets transmitted to a communication network or a broadcasting network using at least one of transmission protocols such as MMT, ROUTE, and HTTP (Hyper Text Transfer Protocol) And may include at least one of an MMT data receiver 510, a ROUTE data receiver 515, an HTTP data receiver 520 and another data receiver 525. The control unit 500 may control the received packet according to its type, To a file data receiver 530, a media data receiver 540, or a signaling data receiver 550 within the network.

파일 데이터 수신기(530)는 데이터 수신기(505)로부터 전달된 패킷을 처리하여 상기 패킷에 포함된 데이터를 파일 처리기(535)로 전달한다. 일 예로 파일 데이터 수신기(530)는 MMT에서 정의된 GFD(Generic File Delivery) 모드로 전송되는 MMTP (MMT Protocol) 패킷을 수신하여 MMTP 페이로드로 재구성한 뒤 파일 처리기(535)로 전달하거나, ROUTE를 포함한 다양한 파일 전송 프로토콜들 중 하나를 통해 전송되는 패킷을 수신하여 원하는 데이터를 추출한 뒤 파일 처리기(535)로 전달한다. 파일 처리기(535)는 파일 데이터 수신기(530)로부터 전달받은 데이터를 기반으로 개별 파일들을 재구성한다. The file data receiver 530 processes the packet transmitted from the data receiver 505 and transfers the data included in the packet to the file processor 535. For example, the file data receiver 530 receives an MMTP (MMT Protocol) packet transmitted in a GFD (Generic File Delivery) mode defined by the MMT, reconfigures the MMTP payload to the file processor 535, And extracts the desired data and transmits the extracted data to the file processor 535. The file processor 535 extracts the desired data from the received packet. The file processor 535 reconstructs the individual files based on the data received from the file data receiver 530.

미디어 데이터 수신기(540) 및 미디어 처리기(545)는 미디어 데이터를 처리하는 구성 요소들이다. 일 예로 미디어 데이터가 MMT에서 정의된 MPU(MMT Processing Unit)인 경우, 미디어 처리기(545)는 MMTP의 MPU 모드로 전송되는 미디어 데이터를 처리하는 구성 요소일 수 있다. 이 때 미디어 데이터 수신기(540)는 데이터 수신기(505) 내의 MMT 데이터 수신기(515)로부터 전달받은 MMTP 패킷을 바탕으로 MMTP 페이로드를 재구성하여 MPU를 생성하며, 미디어 처리기(545)는 상기 MPU를 전달받아 서비스 표시기(570)를 통해 재생하는 역할을 수행한다. The media data receiver 540 and media processor 545 are components that process media data. For example, if the media data is an MPU (MMT Processing Unit) defined in the MMT, the media processor 545 may be a component that processes media data transmitted in the MPU mode of the MMTP. At this time, the media data receiver 540 reconstructs the MMTP payload based on the MMTP packet transmitted from the MMT data receiver 515 in the data receiver 505 to generate an MPU, and the media processor 545 transmits the MPU And plays it through the service indicator 570.

미디어 데이터가 파일을 통해 전송되는 경우, 파일 처리기(535)는 미디어 처리기(545)에 미디어 파일을 전달하고 미디어 처리기(545)는 상기 미디어 파일을 서비스 표시기(570)로 재생하게 된다. 다른 예로 미디어 데이터가 ISO/IEC 23009-1에서 정의된 DASH (Dynamic Adaptive Streaming over HTTP) 형식을 따를 경우에 미디어 처리기(545)는 ROUTE 프로토콜로 전송된 미디어 데이터를 처리하는 구성 요소일 수 있다. 이 때 미디어 처리기(545)는 ROUTE 데이터 수신기(515)로부터 전달받은 ROUTE 패킷을 처리하여 DASH 세그먼트(Segment)를 생성하며, 미디어 처리기(545)는 전달받은 DASH 세그먼트를 서비스 표시기(570)로 재생하는 역할을 수행한다. When the media data is transmitted through a file, the file processor 535 delivers the media file to the media processor 545 and the media processor 545 plays the media file to the service indicator 570. [ As another example, the media handler 545 may be a component that processes media data transmitted in the ROUTE protocol when the media data conforms to the DASH (Dynamic Adaptive Streaming over HTTP) format defined in ISO / IEC 23009-1. At this time, the media processor 545 processes the ROUTE packet received from the ROUTE data receiver 515 to generate a DASH segment, and the media processor 545 reproduces the received DASH segment to the service indicator 570 Role.

미디어 데이터 수신기(540)는 MPU나 DASH 세그먼트와 같이 ISOBMFF(ISO Base Media File Format)을 따르는 미디어 파일의 전체를 생성한 이후에 상기 미디어 파일을 미디어 처리기(545)에 전달하거나, 또는 채널전환 시간 감소를 위하여 상기 미디어 파일의 전체가 생성되기 전에 생성된 일부를 미디어 처리기(545)에 전달할 수 있다.The media data receiver 540 may forward the media file to the media processor 545 after generating the entire media file that complies with the ISO Base Media File Format (ISOBMFF), such as an MPU or DASH segment, To the media processor 545, a portion of the media file generated before the entire media file is created.

데이터 수신기(505)로부터 전달받은 패킷이 시그널링 정보를 포함할 경우, 상기 패킷은 시그널링 데이터 수신기(550)로 전달되어 시그널링 정보를 재구성하는데 사용된다. 재구성된 시그널링 정보는 시그널링 처리기(555)에게 전달되며 시그널링 정보의 내용에 따라 추가 동작이 수행된다. 일 예로 시그널링 정보가 MMTP를 통하여 전송될 경우 시그널링 데이터 수신기(550)는 MMT 데이터 수신기(510)로부터 시그널링 정보를 저장한 MMTP 패킷을 수신하여 MMTP 페이로드로 재구성하며, 시그널링 처리기(555)는 상기 MMTP 페이로드 내의 시그널링 정보를 파싱(parsing)하여 필요 정보를 시그널링 정보 DB(DataBase)(560)에 저장한다. 만약 시그널링 정보가 파일에 포함되어 전송될 경우, 시그널링 처리기(555)는 파일 처리기(535)로부터 시그널링 정보를 저장한 파일을 전달받아 상기 시그널링 정보를 파싱하여 필요 정보를 DB(560)에 저장한다. When the packet received from the data receiver 505 includes signaling information, the packet is transmitted to the signaling data receiver 550 and used to reconstruct the signaling information. The reconstructed signaling information is delivered to the signaling processor 555 and additional operations are performed according to the content of the signaling information. For example, when the signaling information is transmitted through the MMTP, the signaling data receiver 550 receives the MMTP packet storing the signaling information from the MMT data receiver 510 and reconstructs it as an MMTP payload, and the signaling processor 555 transmits the MMTP And parses the signaling information in the payload to store necessary information in a signaling information DB (DataBase) 560. If the signaling information is included in the file and the signaling information is transmitted, the signaling processor 555 receives the file storing the signaling information from the file processor 535, parses the signaling information, and stores the required information in the DB 560.

시그널링 처리기(555)는 파싱된 시그널링 정보를 바탕으로 다른 구성 요소들과 상호 작용하여 추가적인 동작을 수행한다. 예를 들어, 애플리케이션 프로그램 서비스에 관련된 시그널링 정보가 수신된 경우, 시그널링 처리기(555)는 상기 애플리케이션 프로그램 서비스의 실행에 필요한 데이터를 수신하기 위해 필요한 정보를 파일 데이터 수신기(530)로 전달하여 관련 데이터를 수신하도록 한다. The signaling processor 555 interacts with other components based on the parsed signaling information to perform additional operations. For example, when signaling information related to the application program service is received, the signaling processor 555 transfers the necessary information to the file data receiver 530 to receive the data necessary for executing the application program service, .

애플리케이션 프로그램 서비스의 제어와 관련된 이벤트 정보는 전용 시그널링 채널을 통해 전송되거나 또는 미디어 데이터에 내재되어 전송될 수 있다. 예를 들어 MMT의 경우, 이벤트 정보는 시그널링 메시지를 통해 전송되거나 또는 미디어 데이터를 저장하는 MPU에 내재되어 전송될 수 있다. 이와 유사하게 DASH의 경우 시그널링 정보는 MPD(Media Presentation Description)에 포함되거나 또는 미디어 데이터를 포함하고 있는 DASH 세그먼트에 내재되어 전송될 수 있다. 따라서, 미디어 데이터 수신기(540)는 미디어 데이터 내에 이벤트 관련 정보가 내재된 경우 이를 추출하여 시그널링 처리기(555)로 전달하고 궁극적으로는 애플리케이션 프로그램 관리기(565)로 전달되도록 함으로써, 상기 이벤트 관련 정보가 애플리케이션 프로그램 서비스의 동작을 제어하는데 사용된다. Event information associated with control of the application program service may be transmitted via a dedicated signaling channel or may be inherently transmitted in the media data. For example, in the case of an MMT, the event information may be transmitted via a signaling message or may be inherently transmitted to an MPU storing media data. Similarly, in the case of DASH, the signaling information may be included in the MPS (Media Presentation Description) or transmitted in the DASH segment containing the media data. Accordingly, the media data receiver 540 extracts event-related information from the media data if the event-related information is included in the media data, and transmits the extracted event-related information to the signaling processor 555 and ultimately to the application program manager 565, It is used to control the operation of program services.

애플리케이션 프로그램 관리기(565)는 애플리케이션 프로그램 서비스에 관한 전반적인 정보를 저장 및 관리하며, 개별 애플리케이션 프로그램 서비스의 동작을 관리하고, 서비스 표시기(570)를 통해 각 애플리케이션 프로그램 서비스의 정보를 표시한다. 이를 위해 애플리케이션 프로그램 관리기(565)는 시그널링 처리기(555)와 파일 처리기(535)와 상호 연동하여 애플리케이션 프로그램 서비스의 제공에 필요한 데이터 및 시그널링 정보를 전달받게 된다. The application program manager 565 stores and manages overall information about the application program service, manages the operation of the individual application program service, and displays information of each application program service through the service indicator 570. [ To this end, the application program manager 565 is interworked with the signaling processor 555 and the file processor 535 and receives data and signaling information necessary for providing the application program service.

이하 애플리케이션 프로그램 서비스와 관련된 시그널링 정보 및 이벤트 정보를 전달하는 동작을 설명한다.Hereinafter, an operation of conveying signaling information and event information related to an application program service will be described.

1) 애플리케이션 프로그램 서비스에 관련된 시그널링 정보의 전송1) transmission of signaling information related to the application program service

애플리케이션 프로그램 서비스에 관련된 정보는 애플리케이션 프로그램 서비스의 이름, 전송 방식, 생명 주기(life cycle) 등 애플리케이션 프로그램 서비스의 주요 속성들을 포함한다. The information related to the application program service includes the main properties of the application program service such as the name of the application program service, the transmission method, and the life cycle.

일 실시예로서, 애플리케이션 프로그램 서비스에 관련된 정보를 전송하기 위해 MMT 시그널링 세션을 통해 전송되는 시그널링 메시지인 AIT (Application Information Table) 메시지가 사용될 수 있다. 하기의 <표 1>은 AIT 메시지 및 AIT 메시지에 포함되는 AI (Application Information) 테이블의 포맷의 일 예를 나타낸 것이다. In one embodiment, an Application Information Table (AIT) message may be used, which is a signaling message sent over an MMT signaling session to transmit information related to an application program service. Table 1 below shows an example of the format of the AI (Application Information) table included in the AIT message and the AIT message.

신택스Syntax 비트수Number of bits 포맷format AIT_message {AIT_message { message_id   message_id 1616 uimsbfuimsbf version   version 88 uimsbfuimsbf lengthlength 1616 uimsbfuimsbf extension {   extension { }   } message_payload {   message_payload { AI_table()      AI_table () }   } }}

여기서 message_id 필드는 AIT 메시지의 ID를 의미하고, version 필드는 AIT 메시지의 버전을 나타내며, length 필드는 AIT 메시지의 바이트 크기로서, length 필드의 다음 위치에서부터 AIT 메시지의 끝까지의 길이를 나타내고, AI_table() 필드는 AI 테이블을 포함한다.Herein, the message_id field indicates the ID of the AIT message, the version field indicates the version of the AIT message, the length field indicates the byte size of the AIT message, the length from the next position of the length field to the end of the AIT message, The field contains an AI table.

AIT 메시지는 extension 부분에 AIT 메시지가 적용되는 서비스를 식별하기 위한 식별자(identifier)를 더 포함할 수 있다. 또한 AIT 메시지를 식별(identify)하기 위한 URI(Uniform Resource Identifier)의 존재 유무를 나타내기 위한 1비트 플래그가 더 포함될 수 있으며, 상기 1 비트 플래그가 온되어 있을 경우 URI를 나타내는 필드가 AIT 메시지에 더 포함될 수 있다.The AIT message may further include an identifier for identifying a service to which the AIT message is applied in the extension portion. In addition, a 1-bit flag for indicating the presence or absence of a URI (Uniform Resource Identifier) for identifying an AIT message may be further included. If the 1-bit flag is ON, a field indicating a URI is added to the AIT message .

MMT 패키지에 포함된 모든 애플리케이션 프로그램 서비스들에 관한 정보는 하나의 AI 테이블을 이용하여 전송되거나(i.e., Complete AI Table) 또는 다수의 AI 테이블들에 분할되어(i.e., Subset AI Table) 전송될 수 있다. 후자의 경우 각 Subset AI 테이블은 독립적인 AIT 메시지에 포함되어 전송된다.Information about all application program services contained in the MMT package may be transmitted using a single AI table (ie, Complete AI Table) or divided into multiple AI tables (ie, Subset AI Table) . In the latter case, each Subset AI table is transmitted in an independent AIT message.

하기 <표 2>는 AI 테이블의 상세 포맷의 일 예를 나타낸 것이다.Table 2 below shows an example of the detailed format of the AI table.

신택스Syntax value 비트수Number of bits 포맷format AI_table {AI_table { table_id   table_id 88 uimsbfuimsbf version   version 88 uimsbfuimsbf lengthlength N1N1 1616 uimsbfuimsbf reserved    reserved '1111''1111' 44 bslbfbslbf AI_table_mode   AI_table_mode 22 uimsbfuimsbf reserved   reserved '11''11' 22 bslbfbslbf AI_table_descriptors {   AI_table_descriptors { AI_table_descriptor_length      AI_table_descriptor_length N2N2 1616 uimsbfuimsbf for (i = 0; i < N2; ++i)      for (i = 0; i <N2; ++ i) AI_table_descriptor_bytes         AI_table_descriptor_bytes 88 uimsbfuimsbf }   } AI_count   AI_count N3N3 88 uimsbfuimsbf for (i = 0; i < N3; ++i) {   for (i = 0; i <N3; ++ i) { application_attributes()      application_attributes () }   } }}

여기서 table_id 필드는 AI 테이블의 ID를 나타낸다. Complete AI 테이블과 Subset AI 테이블은 서로 다른 table_id를 가질 수 있다. table_id의 값은 순차적으로 할당되며 따라서 Subset AI 테이블의 번호는 table_id 필드로부터 계산될 수 있다. 즉, Subset AI 테이블의 번호는 "table_id - Base Subset AI 테이블의 table_id"로 계산된다. 여기서 Base Subset AI 테이블은 번호가 0인 Subset AI 테이블을 지칭한다. 1에서 14의 번호들은 그 외의(base가 아닌) Subset AI 케이블들을 가리키며, 15는 Complete AI 테이블을 가리킨다.The table_id field indicates the ID of the AI table. Complete AI and Subset AI tables can have different table_id. The values of table_id are assigned sequentially, so the number of the Subset AI table can be calculated from the table_id field. That is, the number of the Subset AI table is calculated as "table_id - table_id of the Base Subset AI table". Here, the Base Subset AI table refers to the Subset AI table with the number 0. Numbers 1 through 14 refer to the other (not base) Subset AI cables, and 15 refers to the Complete AI table.

version 필드는 AI 테이블의 버전을 나타내며, 신규 버전의 AI 테이블은 수신 즉시 이전 버전의 AI 테이블을 대체함. version 필드는 기존의 MMT 시그널링 테이블의 MPI 테이블과 동일하게 해석될 수 있다. (If table_id indicates a complete AI table, if Subset-0 AI table has the same version value as this field (when AI_table_mode is '1'), or if all AI table subsets with lower-subset number have the same version value as this field (when AI_table_mode is '0'), or if processing of the AI table subsets are independent (when AI_table_mode is '2'). If Subset-0 AI table has a newer version, all AI table subsets with higher subset number up to 14 previously stored within an MMT receiving entity are treated as outdated except for the case when AI_table_mode is independent mode. When the AI table subset number is not 0 and AI_table_mode is '1', the contents of the AI table subset with version different from that of subset-0 AI table stored in an MMT receiving entity shall be ignored. Also when the AI table subset number is not 0 and AI_table_mode is '0', the contents of the AI table subset with version different from that of lower-subset AI table subsets stored in an MMT receiving entity shall be ignored. It shall be modulo-256 incremented per version change.)The version field indicates the version of the AI table, and the new version of the AI table replaces the previous version of the AI table upon receipt. The version field can be interpreted the same as the MPI table of the existing MMT signaling table. (If table_id indicates a complete AI table, if Subset-0 AI table has the same version value as this field (when AI_table_mode is '1'), or if all AI table subsets with lower- If the AI table has a new version, AI table subsets with higher subset number up to (AI_table_mode is' 0 '), or if processing of the AI table subsets are independent (when AI_table_mode is' 14 previously stored within an MMT receiving entity is treated as outdated except for the case when AI_table_mode is independent mode. When the AI table subset number is not 0 and AI_table_mode is '1', the contents of the AI table subset with version different from that subset-0 AI table stored in an MMT receiving entity shall be ignored. Also when the AI table subset number is not 0 and AI_table_mode is '0', the contents of the AI table subset with version different from that of the lower-subset AI table subsets stored in an MMT receiving entity shall be ignored. It will be modulo-256 incremented per version change.)

length 필드는 AI 테이블의 바이트 크기로서, length 필드의 다음 위치에서 AI 테이블의 끝까지의 길이를 나타낸다. The length field is the byte size of the AI table, indicating the length from the next position in the length field to the end of the AI table.

AI_table_mode 필드는, AI 테이블이 분할되어 전송될 경우 분할된 AI 테이블의 처리 방식을 지정하는 것으로서, 기존 MMT 시그널링 테이블 중 MPI 테이블의 PI_mode와 유사한 방식으로 사용된다. (In "sequential_order_processing_mode" and with a non-zero subset number of this AI table, an MMT receiving entity shall receive all AT tables with lower subset number that have the same version as this AI table before it processes this AI table. For example, an MMT receiving entity can't process subset-3 AI table, if it have not received subset-2 AI table with the same version. In "order_irrelevant_processing_mode" and with the subset number of this AI table subset set to non-zero, an MMT receiving entity should process a AI table right after it receives the AI table as long as the subset-0 AI table stored in an MMT receiving entity has the same version as this AI table. In "independent_processing_mode", versions of each subset of AI tables are managed individually. Fragmented AI table is adapted in this mode). The AI_table_mode field is used in a manner similar to the PI_mode of the MPI table among the existing MMT signaling tables to specify the processing method of the divided AI table when the AI table is divided and transmitted. (In "sequential_order_processing_mode" and a non-zero subset number of this AI table, an MMT receiving entity shall receive all AT tables with lower subset number, an "order_rerelevant_processing_mode" and the subset number of this AI table subset set to non-zero, an. MMT receiving entity should process a AI table right after it receives the AI table as long as the subset-0 AI table stored in an MMT receiving entity has the same version as this AI table. In "independent_processing_mode", versions of each subset of AI tables are managed individually. Fragmented AI table is adapted in this mode).

AI_table_mode 필드에서 사용되는 값 및 설명의 예는 다음 <표 3>과 같다.Examples of values and descriptions used in the AI_table_mode field are shown in Table 3 below.

AI_table_modeAI_table_mode DescriptionDescription 0000 "sequential_order_processing_mode""sequential_order_processing_mode" 0101 "order_irrelevant_processing_mode""order_irrelevant_processing_mode" 1010 "independent_processing_mode""independent_processing_mode" 1111 ReservedReserved

AI_table_descriptor_bytes 필드는 AI 테이블의 디스크립터이며, AI_count 필드는 AI 테이블에 포함된 애플리케이션 프로그램 서비스들의 개수를 나타내고, application_attributes() 필드는 각 애플리케이션 프로그램 서비스의 속성을 나타낸다.The AI_table_descriptor_bytes field is a descriptor of the AI table. The AI_count field indicates the number of application program services included in the AI table. The application_attributes () field indicates an attribute of each application program service.

앞서 기술한 바와 같이, AI 테이블은 애플리케이션 프로그램 서비스와 관련된 다양한 속성들을 포함할 수 있으며, application_attributes() 필드에 해당 속성들이 포함된다. 이러한 속성들에는 애플리케이션 프로그램 서비스의 이름, 애플리케이션 프로그램 서비스에 관련된 데이터의 전송 정보와 우선 순위 등이 포함될 수 있다. 하기 <표 4>는 application_attributes()의 한 예를 나타낸 것이다.As described above, the AI table may include various attributes associated with the application program service, and the corresponding attributes are included in the application_attributes () field. These properties may include the name of the application program service, transmission information and priority of data related to the application program service, and the like. Table 4 below shows an example of application_attributes ().

신택스Syntax 설명Explanation application_attributes() {application_attributes () { app_nameapp_name 애플리케이션 프로그램 서비스 이름Application program service name app_id   app_id 애플리케이션 프로그램 서비스 IDApplication program service ID related_MMT_assets_count   related_MMT_assets_count 해당 애플리케이션 프로그램 서비스와 연계된 MMT 패키지 내 Asset의 수 (N1). 0으로 설정된 경우 패키지와 연동되지 않고 독립적으로 실행 가능한 애플리케이션 프로그램 서비스임The number of Assets in the MMT package associated with this application program service (N1). If set to 0, this is an application program service that can be executed independently and not linked to the package. for (i = 0; i < N1; ++i)for (i = 0; i <N1; ++ i) asset_id      asset_id Asset IDAsset ID application_transport_methods_count   application_transport_methods_count 애플리케이션 프로그램 서비스 실행에 필요한 데이터 또는 파일 전송 방법의 수 (N2)The number of data or file transfer methods required to run application program services (N2) for (i = 0; i < N2; ++i)    for (i = 0; i <N2; ++ i) application_transport      application_transport 방송 네트워크 또는 통신 네트워크를 이용한 애플리케이션 프로그램 서비스 관련 데이터 또는 파일 전송에 대한 상세 정보. Detailed information about transferring data or files related to application program services using a broadcast network or a communications network. application_priority   application_priority 애플리케이션 프로그램 서비스 우선 순위Application program service priority application_control_code   application_control_code 애플리케이션 프로그램 서비스의 생명 주기 (e.g., AutoStart/Present/Kill/Suspend/Prefetch/Destroy/Disabled 등). 생명 주기의 의미는 ETSI TS 102 809 규격에 따름Lifecycle of application program services (e.g., AutoStart / Present / Kill / Suspend / Prefetch / Destroy / Disabled). Meaning of life cycle according to ETSI TS 102 809 application_type   application_type 애플리케이션 프로그램 서비스 종류Application program service type AI_ descriptor_length   AI_decoder_length for (i = 0; i < N6; ++i)   for (i = 0; i <N6; ++ i) AI_ descriptor_bytes      AI_descriptor_bytes 애플리케이션 프로그램 서비스 디스크립터Application program service descriptor }} }}

후술되는 실시예에서, 애플리케이션 프로그램 서비스에 관련된 정보는, MMT 패키지에 관련된 시그널링 메시지인 MPT 메시지를 통해 전송될 수 있다. 구체적으로 MPT 메시지는 MMT 패키지에 애플리케이션 프로그램 서비스가 존재하는지 유무를 알려주는 디스크립터를 포함한다. 단말은 MMT로 전송되는 방송 서비스를 재생하기 위해서는 반드시 MPT 메시지를 수신해야 되며 따라서 애플리케이션 프로그램 서비스의 유무에 대한 디스크립터를 MPT 메시지에 포함시킴으로써 단말에서는 좀 더 빨리 애플리케이션 프로그램 서비스의 존재 유무를 확인할 수 있다. In the embodiments described below, the information related to the application program service can be transmitted via the MPT message, which is a signaling message related to the MMT package. Specifically, the MPT message includes a descriptor indicating whether or not an application program service exists in the MMT package. The terminal must receive the MPT message in order to reproduce the broadcast service transmitted to the MMT. Accordingly, the terminal can confirm the presence of the application program service more quickly by including the descriptor of the presence or absence of the application program service in the MPT message.

MPT 메시지를 통해 MMT 패키지 내에 애플리케이션 프로그램 서비스가 존재한다고 파악이 되면, 단말은 앞서 설명한 바와 같은 AIT 메시지를 수신함으로써 애플리케이션 프로그램 서비스에 관련된 상세 정보를 획득할 수 있다. MPT 메시지는, 단순히 애플리케이션 프로그램 서비스의 존재 유무만을 알려주는 것에서 벗어나, 필요에 따라 AIT에 포함되어 전송되는 정보 중에서 단말에게 우선적으로 제공하고자 하는 정보를 추가적으로 포함할 수 있다. 상기 우선적으로 제공하고자 하는 정보는 단말의 성능 개선 또는 QoE(Quality of Experience) 개선 등에 도움이 되는 정보가 될 수 있다.If it is determined through the MPT message that the application program service exists in the MMT package, the terminal can acquire detailed information related to the application program service by receiving the AIT message as described above. The MPT message may further include information to be preferentially provided to the terminal among the information transmitted and included in the AIT as needed, rather than merely indicating whether the application program service is present or absent. The information to be provided preferentially can be information that helps improve the performance of the terminal or improve the quality of experience (QoE).

하기의 <표 5>는 MPT 메시지에 포함될 수 있는 디스크립터인 application_service_descriptor의 상세 포맷의 일 예를 나타낸 것이다.Table 5 below shows an example of a detailed format of application_service_descriptor which is a descriptor that can be included in the MPT message.

신택스Syntax value 비트수Number of bits 포맷format application_service_descriptor() {application_service_descriptor () { descriptor_tag   descriptor_tag 1616 uimsbfuimsbf descriptor_length   descriptor_length 88 uimsbfuimsbf application_service_available   application_service_available 1One bslbfbslbf }}

여기서 descriptor_tag 필드는 inband_event_descriptor 필드를 식별할 수 있는 태그를 나타내며, descriptor_length 필드는 inband_event_descriptor 필드의 크기를 나타내고, application_service_descriptor 필드는 패키지 내에 애플리케이션 프로그램 서비스의 존재 유무를 알려준다. 상기 application_service_descriptor 필드의 값이 0인 경우 애플리케이션 프로그램 서비스가 없음을 의미하며, 1인 경우 애플리케이션 프로그램 서비스가 존재함을 의미하고, 상기 애플리케이션 프로그램 서비스에 관련된 상세 정보는 AIT 메시지를 통해 전송된다.Here, the descriptor_tag field indicates a tag that can identify the inband_event_descriptor field, the descriptor_length field indicates the size of the inband_event_descriptor field, and the application_service_descriptor field indicates presence or absence of an application program service in the package. If the value of the application_service_descriptor field is 0, it means that there is no application program service. If 1, the application program service exists, and the detailed information related to the application program service is transmitted through the AIT message.

2) 이벤트 정보의 전송2) Transmission of event information

이벤트 정보는 방송 프로그램 내에서 해당 이벤트의 발생 시점을 미리 알 수 있는지 여부에 따라 크게 두 가지 방식으로 전송될 수 있다. 첫번째로, 녹화 방송과 같이 특정 이벤트가 발생하는 시점을 미리 알 수 있는 경우에는 정적 이벤트 전송 방식이 사용되며, 두번째로, 생방송과 같이 특정 이벤트가 발생하는 시점을 미리 알 수 없는 경우 동적 이벤트 전송 방식이 사용된다. 이벤트 정보는 애플리케이션 프로그램 서비스에게 통보된다. The event information can be largely transmitted in two ways depending on whether or not the time of occurrence of the event in the broadcast program can be known in advance. First, a static event transmission method is used when a specific event such as a recording broadcast can be known in advance. Second, when a specific event such as live broadcasting can not be known in advance, Is used. The event information is notified to the application program service.

일 실시예로서 이벤트 정보는 MMT 시그널링 채널을 통해 전송되는 MMT 시그널링 메시지, 즉 AEI (Application Event Information) 메시지를 통해 전달될 수 있다. AEI 메시지는 정적 이벤트 및 동적 이벤트 전송에 모두 사용될 수 있다. 동적 이벤트의 경우 이벤트 정보는 해당 이벤트가 발생되는 미디어 데이터, 즉 MPU 내에 포함되어 전송될 수도 있다.In one embodiment, the event information may be delivered via an MMT signaling message, i.e., an AEI (Application Event Information) message, transmitted via the MMT signaling channel. AEI messages can be used for both static and dynamic event transmission. In the case of a dynamic event, the event information may be included in the media data in which the event is generated, that is, included in the MPU.

하기 <표 6> 및 <표 7>은 이벤트 정보를 포함하는 MMT 시그널링 메시지, 즉 AEI 메시지와 AEI 메시지에 포함되는 AE 테이블의 상세 포맷의 일 예를 나타낸 것이다.Table 6 and Table 7 below show an example of the detailed format of the MMT signaling message including the event information, that is, the AE table included in the AEI message and the AEI message.

신택스Syntax 비트수Number of bits 포맷format AEI_message {AEI_message { message_id   message_id 1616 uimsbfuimsbf version   version 88 uimsbfuimsbf length   length 1616 uimsbfuimsbf extension {   extension { }   } message_payload {   message_payload { AE_table()      AE_table () }   } }}

여기서 message_id 필드는, AEI 메시지의 ID를 나타내고, version 필드는 AEI 메시지의 버전을 나타내고, length 필드는 AEI 메시지의 바이트 크기로서, length 필드의 다음 위치에서부터 AEI 메시지의 끝까지의 길이를 나타낸다. AE_table() 필드는 AE 테이블을 포함한다.Here, the message_id field indicates the ID of the AEI message, the version field indicates the version of the AEI message, the length field indicates the byte size of the AEI message, and the length from the next position of the length field to the end of the AEI message. The AE_table () field contains an AE table.

일 실시예로서 AEI 메시지는 extension 부분에 AEI 메시지가 적용되는 서비스를 식별하기 위한 식별자를 더 포함할 수 있다. 또한 상기 AEI 메시지를 식별하기 위한 URI의 존재 유무를 나타내기 위한 1 비트 플래그가 더 포함될 수 있으며, 상기 1 비트 플래그가 온되어 있을 경우 URI를 나타내는 필드가 AEI 메시지에 더 포함될 수 있다.In one embodiment, the AEI message may further include an identifier for identifying a service to which the AEI message is applied in the extension portion. In addition, a 1-bit flag for indicating whether a URI exists to identify the AEI message may be further included. If the 1-bit flag is ON, a field indicating a URI may be further included in the AEI message.

신택스Syntax value 비트수Number of bits 포맷format AE_table {AE_table { table_id   table_id 1616 uimsbfuimsbf version   version 88 uimsbfuimsbf length   length 1616 uimsbfuimsbf reserved    reserved 111111111111 66 bslbfbslbf number_of_app_events   number_of_app_events N1N1 88 uimsbfuimsbf for (i=0; i<N1;++i) {   for (i = 0; i <N1; ++ i) { AE_descriptor()      AE_descriptor () }   } }}

여기서 table_id 필드는 AE 테이블의 ID를 나타낸다. version 필드는 AE 테이블의 버전을 나타내고, length 필드는 AE 테이블의 바이트 크기로서, length 필드의 다음 위치에서 AE 테이블의 끝까지의 크기를 나타낸다. number_of_app_events 필드는 AE 테이블에 포함된 이벤트들의 개수를 나타내고, AE_descriptor() 필드는 각 이벤트의 상세 정보를 포함한다.The table_id field indicates the ID of the AE table. The version field indicates the version of the AE table, and the length field indicates the size of the AE table, from the next position in the length field to the end of the AE table. The number_of_app_events field indicates the number of events included in the AE table, and the AE_descriptor () field contains detailed information of each event.

이벤트의 상세 정보는 AE_descriptor() 디스크립터에 저장되며, 이벤트와 연계된 애플리케이션 프로그램 서비스 ID, 이벤트가 적용되는 시간 및 기간, 이벤트 동작 등 이벤트와 관련된 다양한 정보를 포함할 수 있다. 다음 <표 8>은 AE_descriptor()의 일 예를 나타낸 것이다.The detailed information of the event is stored in the AE_descriptor () descriptor, and may include various information related to the event, such as the application program service ID associated with the event, the time and period when the event is applied, Table 8 shows an example of AE_descriptor ().

신택스Syntax value 비트수Number of bits 포맷format AE_descriptor() {AE_descriptor () { descriptor_tag   descriptor_tag 1616 uimsbfuimsbf descriptor_length   descriptor_length 88 uimsbfuimsbf application_identifier()   application_identifier () scheme_id_uri_length   scheme_id_uri_length N1N1 88 uimsbfuimsbf for (i=0;i<N1;++i)   for (i = 0; i <N1; ++ i) scheme_id_uri_byte   scheme_id_uri_byte 88 uimsbfuimsbf event_value_length   event_value_length N2N2 88 UimsbfUimsbf for (i=0;i<N2;++i)   for (i = 0; i <N2; ++ i) event_value_byte   event_value_byte 88 uimsbfuimsbf event_id    event_id 3232 uimsbfuimsbf event_presentation_time   event_presentation_time 6464 uimsbfuimsbf event_duration   event_duration 3232 uimsbfuimsbf event_data   event_data }}

여기서 descriptor_tag 필드는 AE_descriptor()를 식별할 수 있는 태그를 의미하고, descriptor_length 필드는 AE_descriptor()의 크기를 의미하며, application_identifier() 필드는 이벤트가 적용될 애플리케이션의 고유 ID이다. 다음 <표 9>는 application_identifier() 필드의 상세 포맷의 일 예를 나타낸 것이다.Here, the descriptor_tag field indicates a tag that can identify the AE_descriptor (), the descriptor_length field indicates the size of the AE_descriptor (), and the application_identifier () field is a unique ID of the application to which the event is to be applied. Table 9 shows an example of the detailed format of the application_identifier () field.

신택스Syntax 비트수Number of bits 포맷format application_identifier() {application_identifier () { organization_id   organization_id 3232 uimbsfuimbsf application_id   application_id 1616 uimbsfuimbsf }}

여기서 scheme_id_uri_length 필드는 scheme_id_uri의 바이트 크기를 나타내며, scheme_id_uri 필드는 event_data 필드에 전송되는 값의 의미 및 문법을 정의하며, event_value_length 필드는 event_data 필드의 바이트 크기를 나타내고, event_value 필드는 이벤트 값을 나타낸다. 이벤트 값의 범위 및 의미는 scheme_id_uri에 의해 결정된다. event_id 필드는 이벤트의 고유한 ID를 나타내고, event_presentation_time 필드는 이벤트가 적용될 미디어 재생 시간을 나타내고, event_duration 필드는 이벤트가 유효한 미디어 재생 시간을 나타내고, event_data 필드는 이벤트 내용을 나타낸다.The scheme_id_uri_length field indicates the byte size of the scheme_id_uri field. The scheme_id_uri field defines the meaning and syntax of the value transmitted in the event_data field. The event_value_length field indicates the byte size of the event_data field, and the event_value field indicates an event value. The range and semantics of event values are determined by scheme_id_uri. The event_id field indicates a unique ID of an event, the event_presentation_time field indicates a media play time to which the event is applied, the event_duration field indicates a media play time in which the event is valid, and the event_data field indicates an event content.

일 실시예로서, 이벤트 정보는 미디어 데이터를 통해 전달될 수 있다.In one embodiment, the event information may be delivered via the media data.

MMT 전송 프로토콜에서 미디어 데이터는 MPU에 포함되어 전송되며, MPU는 ISOBMFF 구조를 따른다. 이벤트 정보는 MPU 내의 evti 박스에 포함될 수 있으며, 상기 evti 박스의 상세 포맷의 일 예는 다음과 같다.In the MMT transmission protocol, media data is transmitted in the MPU, and the MPU follows the ISOBMFF structure. The event information may be included in the evti box in the MPU, and an example of the detailed format of the evti box is as follows.

Box Type: "evti"Box Type: "evti"

Container: MPUContainer: MPU

Mandatory: NoMandatory: No

Quantity: Zero or moreQuantity: Zero or more

Syntax:Syntax:

aligned (8) class EventInformationBox extends FullBox('evti', version=0, flags=0) {aligned (8) class EventInformationBox extends FullBox ('evti', version = 0, flags = 0) {

string scheme_id_uristring scheme_id_uri

string event_valuestring event_value

unsigned int(32) event_idunsigned int (32) event_id

unsigned int(32) event_presentation_time_deltaunsigned int (32) event_presentation_time_delta

unsigned int(32) event_durationunsigned int (32) event_duration

unsigned int(32) event_dataunsigned int (32) event_data

string application_identifierstring application_identifier

}}

여기서 scheme_id_uri 필드는 event_data 필드에 전송되는 값의 의미 및 문법을 정의하며, event_value 필드는 이벤트 값을 포함한다. 이벤트 값의 범위 및 의미는 scheme_id_uri에 의해 결정된다. event_id 필드는 이벤트의 고유한 ID를 나타내고, event_presentation_time_delta 필드는 MPU의 재생 시간과 이벤트가 적용될 미디어의 재생 시간 간의 차이를 나타내며, event_duration 필드는 이벤트가 유효한 미디어의 재생 시간을 나타내고, event_data 필드는 이벤트 내용을 나타낸다. application_identifier 필드는 이벤트가 적용될 애플리케이션 프로그램 서비스의 ID를 나타낸다.Here, the scheme_id_uri field defines the meaning and syntax of values transmitted in the event_data field, and the event_value field includes an event value. The range and semantics of event values are determined by scheme_id_uri. The event_duration field indicates the playback time of the media for which the event is valid. The event_data field indicates the event content. The event_data field indicates a unique ID of the event. The event_presentation_time_delta field indicates a difference between the playback time of the MPU and the playback time of the media to which the event is applied. . The application_identifier field indicates the ID of the application program service to which the event is to be applied.

일 실시예로서, 이벤트 정보는 특정 애셋의 MPU를 통해 전송되며, MMT 시그널링 정보는 상기 애셋의 MPU 내에 이벤트 정보가 내재되어 있음을 알리는데 사용될 수 있다. 이를 위해 MMT 패키지 정보를 전송하는 MP(MMT Package) 테이블은 애셋 레벨에서 사용되는 디스크립터인 inband_event_descriptor를 포함한다. 단말은 MP 테이블을 통해 inband_event_descriptor를 수신하여, 특정 애셋의 MPU 내에 이벤트 정보가 내재되어 전송되고 있음을 확인하면, 상기 애셋의 MPU를 수신하고 상기 MPU 내의 evti 박스로부터 이벤트 정보를 추출하게 된다. 하기 <표 10>은 inband_event_descriptor의 상세 포맷의 일 예를 나타낸 것이다.In one embodiment, event information is transmitted via the MPU of a particular asset, and MMT signaling information may be used to signal that the event information is embedded within the MPU of the asset. To this end, an MP (MMT Package) table for transmitting MMT package information includes an inband_event_descriptor which is a descriptor used at an asset level. When the terminal receives the inband_event_descriptor through the MP table and confirms that the event information is embedded in the MPU of the specific asset, the terminal receives the MPU of the asset and extracts the event information from the evti box in the MPU. Table 10 below shows an example of the detailed format of the inband_event_descriptor.

신택스Syntax value 비트수Number of bits 포맷format inband_event__descriptor() {inband_event__descriptor () { descriptor_tag   descriptor_tag 1616 UimsbfUimsbf descriptor_length   descriptor_length 88 UimsbfUimsbf scheme_id_uri_length   scheme_id_uri_length N1N1 88 UimsbfUimsbf for (i=0;i<N1;++i)   for (i = 0; i <N1; ++ i) scheme_id_uri_byte   scheme_id_uri_byte 88 UimsbfUimsbf event_value_length   event_value_length N2N2 88 UimsbfUimsbf for (i=0;i<N2;++i)   for (i = 0; i <N2; ++ i) event_value_byte   event_value_byte 88 UimsbfUimsbf }}

여기서 descriptor_tag 필드는 inband_event_descriptor를 식별할 수 있는 태그이며, descriptor_length 필드는 inband_event_descriptor의 크기를 나타내고, scheme_id_uri_length 필드는 scheme_id_uri의 바이트 크기를 나타내고, scheme_id_uri 필드는 event_data 필드에 전송되는 값의 의미 및 문법을 정의한다. event_value_length 필드는 event_data 필드의 바이트 크기를 나타내고, event_value 필드는 이벤트 값을 포함한다. 이벤트 값의 범위 및 의미는 scheme_id_uri에 의해 결정된다. Here, the descriptor_tag field is a tag for identifying the inband_event_descriptor, the descriptor_length field indicates the size of the inband_event_descriptor, the scheme_id_uri_length field indicates the byte size of the scheme_id_uri field, and the scheme_id_uri field defines the meaning and syntax of the value transmitted to the event_data field. The event_value_length field indicates the byte size of the event_data field, and the event_value field contains the event value. The range and semantics of event values are determined by scheme_id_uri.

도 6은 본 발명의 일 실시예에 따라 MMT 시그널링 메시지를 이용한 이벤트 정보의 처리 절차를 나타낸 흐름도이다.6 is a flowchart illustrating a process of processing event information using an MMT signaling message according to an embodiment of the present invention.

도 6을 참조하면, 과정 605에서 단말은 사용자에 의한 서비스의 선택 입력을 수신하고, 과정 610에서 상기 서비스와 관련된 MMT 시그널링 메시지의 수신을 모니터링하고 수신된 MMT 시그널링 메시지를 파싱한다. 과정 615에서 단말은 상기 MMT 시그널링 메시지에 AIT 메시지가 포함되어 있는지 확인하고, AIT 메시지가 없을 경우 과정 620에서 상기 선택된 서비스의 비디오/오디오 스트림을 재생한다. 반면 AIT 메시지가 존재할 경우, 과정 625에서 단말은 상기 AIT 메시지에 포함된 AI 테이블의 내용을 이용하여 애플리케이션 프로그램 서비스와 관련된 데이터를 수신한다. 단말은 상기 AI 테이블에 포함된 애플리케이션 프로그램의 속성들 및 사용자 선택 사항에 따라, 애플리케이션 프로그램 서비스에 관련된 데이터의 수신 시작 시간, 애플리케이션 프로그램 서비스의 즉시 실행 여부 등을 결정할 수 있다. Referring to FIG. 6, in step 605, the terminal receives a selection input of a service by a user, monitors reception of an MMT signaling message associated with the service in step 610, and parses the received MMT signaling message. In step 615, the terminal checks whether the AIT message is included in the MMT signaling message. If there is no AIT message, the terminal reproduces the video / audio stream of the selected service in step 620. On the other hand, if there is an AIT message, in step 625, the terminal receives data related to the application program service using the contents of the AI table included in the AIT message. The terminal can determine the reception start time of data related to the application program service, whether the application program service is immediately executed or the like, according to the attributes of the application program included in the AI table and the user's selection.

과정 630에서 단말은 이벤트 정보를 저장한 시그널링 메시지인 AEI 메시지가 수신되는지 판단하고, 상기 AEI 메시지에 포함되는 AE 테이블로부터 이벤트 적용 시간에 대한 정보를 획득하여 상기 이벤트 적용 시간에 도달하였는지를 판단한다. 상기 이벤트 적용 시간에 도달한 경우, 과정 635에서 해당하는 이벤트를 바탕으로 애플리케이션 프로그램 서비스를 제어(일 예로 개시 혹은 종료)한다. 상기 이벤트 적용 시간에 도달하기 전까지 단말은 과정 620에서 서비스를 재생할 수 있다.In step 630, the UE determines whether an AEI message, which is a signaling message storing event information, is received, and obtains information on an event application time from the AE table included in the AEI message to determine whether the event has reached the event application time. When the event application time is reached, in step 635, the application program service is controlled (e.g., started or ended) based on the corresponding event. The terminal can play the service in step 620 until the event application time is reached.

도 7은 본 발명의 일 실시예에 따라 MPU를 이용한 이벤트 정보의 처리 절차를 나타낸 흐름도이다. 7 is a flowchart illustrating an event information processing procedure using an MPU according to an embodiment of the present invention.

도 7을 참조하면, 과정 705에서 단말은 사용자에 의한 서비스의 선택 입력을 수신하고, 과정 710에서 상기 서비스와 관련된 MMT 시그널링 메시지의 수신을 모니터링하고 수신된 MMT 시그널링 메시지를 파싱한다. 과정 715에서 단말은 상기 MMT 시그널링 메시지에 AIT 메시지가 포함되어 있는지 확인하고, AIT 메시지가 없을 경우 과정 730에서 상기 선택된 서비스의 비디오/오디오 스트림을 재생한다. 반면 AIT 메시지가 존재할 경우, 과정 735에서 단말은 상기 AIT 메시지에 포함된 AI 테이블의 내용을 이용하여 애플리케이션 프로그램 서비스와 관련된 데이터를 수신한다. 단말은 상기 AI 테이블에 포함된 애플리케이션 프로그램의 속성들 및 사용자 선택 사항에 따라, 애플리케이션 프로그램 서비스에 관련된 데이터의 수신 시작 시간, 애플리케이션 프로그램 서비스의 즉시 실행 여부 등을 결정할 수 있다. Referring to FIG. 7, in step 705, the terminal receives a selection input of a service by a user, monitors reception of an MMT signaling message associated with the service in step 710, and parses the received MMT signaling message. In step 715, the terminal checks whether the AIT message is included in the MMT signaling message. If there is no AIT message, the terminal reproduces the video / audio stream of the selected service in step 730. On the other hand, if there is an AIT message, in step 735, the terminal receives data related to the application program service using the contents of the AI table included in the AIT message. The terminal can determine the reception start time of data related to the application program service, whether the application program service is immediately executed or the like, according to the attributes of the application program included in the AI table and the user's selection.

한편, 과정 715에서 단말은 상기 MMT 시그널링 메시지를 기반으로 MPU 내에 이벤트 정보가 내재하여 전송되는지를 확인한다. 즉, 단말은 MMT 시그널링 메시지 내의 MP 테이블에 포함된 애셋 레벨 디스크립터를 분석하여 해당 애셋을 전송하는 MPU 내에 이벤트 정보가 포함되는지 여부를 확인한다. 만일 상기 애셋 레벨 디스크립터가 MPU 내에 이벤트 정보가 포함됨을 지시하는 경우, 과정 720에서 단말은 해당 애셋의 MPU를 수신할 때마다 단말은 MPU에서 이벤트 정보를 추출하여 저장한다. 과정 740에서 단말은 서비스를 재생하는 중 주기적으로 이벤트 적용 시간에 도달하였는지를 확인한다. 일 예로 상기 이벤트 적용 시간에 대한 정보는 AEI 메시지 내의 AE 테이블로부터 획득될 수 있다. 상기 이벤트 적용 시간에 도달한 경우, 과정 745에서 단말은 해당하는 이벤트를 적용하여 애플리케이션 프로그램 서비스를 제어한다. In step 715, the UE checks whether the event information is transmitted in the MPU based on the MMT signaling message. That is, the terminal analyzes the asset level descriptor included in the MP table in the MMT signaling message and checks whether the event information is included in the MPU that transmits the asset. If the asset level descriptor indicates that event information is included in the MPU, the terminal extracts event information from the MPU every time the terminal receives the MPU of the asset in step 720 and stores the extracted event information. In step 740, the UE periodically checks whether an event has been applied during the service replay. For example, information on the event application time can be obtained from the AE table in the AEI message. In step 745, if the event has reached the event application time, the terminal controls the application program service by applying the corresponding event.

일 실시 예에서 시그널링 테이블 및 디스크립터들은 다음 <표 11>과 같이 구성될 수 있는 mmt_atsc3_message()로 캡슐화되어 MMTP의 Signaling Message 모드로 전송될 수 있다.In one embodiment, the signaling tables and descriptors may be encapsulated in mmt_atsc3_message (), which may be constructed as shown in Table 11, and transmitted in the Signaling Message mode of the MMTP.

SyntaxSyntax No. of BitsNo. of Bits FormatFormat mmt_atsc3_message() {mmt_atsc3_message () { message_idmessage_id 1616 uimsbfuimsbf versionversion 88 uimsbfuimsbf lengthlength 3232 uimsbfuimsbf message payload { message payload { service_idservice_id 1616 uimsbfuimsbf atsc3_message_content_typeatsc3_message_content_type 1616 uimbsfuimbsf atsc3_message_content_versionatsc3_message_content_version 88 uimbsfuimbsf atsc3_message_content_compressionatsc3_message_content_compression 88 uimbsfuimbsf URI_lengthURI_length 88 uimbsfuimbsf for (i=0;i< URI_length;i++) { for (i = 0; i <URI_length; i ++) { URI_byteURI_byte 88 uimsbfuimsbf } } atsc3_message_content_lengthatsc3_message_content_length 3232 uimsbfuimsbf for (i=0;i<atsc3_message_content_length;i++) { for (i = 0; i <atsc3_message_content_length; i ++) { atsc3_message_content_byteatsc3_message_content_byte 88 uimsbfuimsbf } } for (i=0;i<length-10-URI_length-atsc3_message_content_length) { (i = 0; i <length-10-URI_length-atsc3_message_content_length) reservedreserved 88 uimsbfuimsbf } } } } }}

상기 <표 11>에서 각 필드의 의미는 하기와 같다.The meaning of each field in Table 11 is as follows.

message_id - mmt_atsc3_message()임을 식별하기 위한 16-bit 식별자 message_id - a 16-bit identifier to identify that it is mmt_atsc3_message ()

version - mmt_atsc3_message()의 version을 식별하기 위한 8-bit 식별자 version - an 8-bit identifier to identify the version of mmt_atsc3_message ()

length - mmt_atsc3_message()의 byte 단위 길이를 나타내는 32-bit 필드. 상기 mmt_atsc3_message()의 길이는 length field의 다음 바이트부터 mmt_atsc3_message()의 마지막 바이트까지의 바이트 수 일수 있다. length - A 32-bit field representing the length in bytes of mmt_atsc3_message (). The length of mmt_atsc3_message () may be the number of bytes from the next byte of length field to the last byte of mmt_atsc3_message ().

service_id - mmt_atsc3_message()의 payload로 전송되는 정보가 적용되는 서비스를 식별하기 위한 16-bit 식별자. 후술할 USD의 atsc:serviceId attribute와 동일한 값을 설정한다. service_id - A 16-bit identifier to identify the service to which the information sent to the payload of mmt_atsc3_message () applies. It sets the same value as the atsc: serviceId attribute of USD to be described later.

atsc3_message_content_type - mmt_atsc3_message()의 payload로 전송되는 정보의 종류를 식별하기 위한 16-bit 식별자. 일 예로 atsc3_message_content_type 필드는 다음 <표 12>와 같은 값을 사용할 수 있다. atsc3_message_content_type - A 16-bit identifier to identify the type of information sent to the payload of mmt_atsc3_message (). For example, the atsc3_message_content_type field can have the values shown in Table 12 below.

atsc3_message_content_typeatsc3_message_content_type MeaningMeaning 0x00000x0000 ReservedReserved 0x00010x0001 userServiceDescriptionuserServiceDescription 0x00020x0002 MPDMPD 0x00030x0003 Application Information TableApplication Information Table 0x00040x0004 Application Event InformationApplication Event Information 0x00050x0005 Video Stream Properties DescriptorVideo Stream Properties Descriptor 0x00060x0006 ATSC Staggercast Descriptor() ATSC Staggercast Descriptor () 0x007~0xFFFF0x007 to 0xFFFF Reserved for future useReserved for future use

atsc3_message_content_version - mmt_atsc3_message()의 message payload로 전송되는 정보의 버전을 식별하기 위한 8-bit 식별자. 상기 message payload는 상기 service_id와 상기 atsc3_message_content_type의 조합으로 구별될 수 있다. atsc3_message_content_version - An 8-bit identifier to identify the version of information sent to the message payload of mmt_atsc3_message (). The message payload can be distinguished by a combination of the service_id and the atsc3_message_content_type.

atsc3_message_content_compression - mmt_atsc3_message()의 message payload에 포함된 atsc3_message_content_byte에 적용된 압축 방식을 나타내는 8-bit 필드. atsc3_message_content_compression - An 8-bit field indicating the compression scheme applied to atsc3_message_content_byte contained in the message payload of mmt_atsc3_message ().

URI_length - 상기 message payload를 식별하기 위하여 사용되는 URI의 길이를 나타내는 8-bit필드. URI를 제공하지 않을 경우에는 0의 값을 가진다. URI_length - An 8-bit field indicating the length of the URI used to identify the message payload. If the URI is not provided, it has a value of 0.

URI_byte - 상기 message payload를 식별하기 위하여 사용되는 URI의 각 바이트를 나타내는 8-bit 필드. UTF-8 캐릭터로 표현되며, terminating null character는 포함하지 않는다. URI_byte - An 8-bit field representing each byte of the URI used to identify the message payload. It is expressed as a UTF-8 character, and does not include terminating null characters.

atsc3_message_content_byte - message payload로 전송되는 정보의 각 바이트를 나타내는 8- bit 필드 atsc3_message_content_byte - an 8-bit field indicating each byte of information sent to the message payload

상기 <표 10>에 나타낸 mmt_atsc3_message()는 XML, binary 형식을 포함하는 모든 형식의 시그널링 정보를 message payload로 전송할 수 있으며, 각 시그널링 정보의 형식은 상기 atsc3_message_content_type을 사용하여 판별할 수 있다. The MMT_atsc3_message () shown in Table 10 can transmit signaling information of all types including XML and binary formats to the message payload, and the format of each signaling information can be determined using the atsc3_message_content_type.

일의 실시 예에 따라 상술한 inband_event_descriptor가 상기 <표 11>의 mmt_atsc3_message()의 payload로 전송될 경우에, inband_event_descriptor는 다음 <표 13>과 같은 형식을 가질 수 있다.If the inband_event_descriptor described above is transmitted to the payload of mmt_atsc3_message () in Table 11, the inband_event_descriptor may have the format shown in Table 13 below.

신택스Syntax value 비트수Number of bits 포맷format inband_event__descriptor() {inband_event__descriptor () { descriptor_tagdescriptor_tag 1616 UimsbfUimsbf descriptor_lengthdescriptor_length 88 UimsbfUimsbf number_of_assetsnumber_of_assets N1N1 88 UimsbfUimsbf for (i=0;i<N1;++i) { for (i = 0; i <N1; ++ i) { asset_id_lengthasset_id_length N2N2 88 UimsbfUimsbf for (j=0;j<N2;++j) { for (j = 0; j <N2; ++ j) { asset_id_byteasset_id_byte 88 UimsbfUimsbf } } scheme_id_uri_lengthscheme_id_uri_length N3N3 88 UimsbfUimsbf for (j=0;j<N3;++j) { for (j = 0; j <N3; ++ j) { scheme_id_uri_bytescheme_id_uri_byte 88 UimsbfUimsbf } } event_value_lengthevent_value_length N4N4 88 UimsbfUimsbf for (j=0;i<N4;++j) { for (j = 0; i <N4; ++ j) { event_value_byteevent_value_byte 88 UimsbfUimsbf } } } } }}

여기서 descriptor_tag 필드는 inband_event_descriptor를 식별할 수 있는 태그이며, descriptor_length 필드는 inband_event_descriptor의 크기를 나타내며, number_of_assets 필드는 inband_event_descriptor에 기술된 어셋의 개수를 나타낸다. asset_id_length 필드는 asset 식별자의 바이트 크기를 나타내며, asset_id_byte는 상기 asset 식별자의 각 바이트를 나타낸다. scheme_id_uri_length 필드는 scheme_id_uri의 바이트 크기를 나타내고, scheme_id_uri 필드는 event_data 필드에 전송되는 값의 의미 및 문법을 정의한다. event_value_length 필드는 event_data 필드의 바이트 크기를 나타내고, event_value 필드는 이벤트 값을 포함한다. 이벤트 값의 범위 및 의미는 scheme_id_uri에 의해 결정된다. Here, the descriptor_tag field is a tag for identifying the inband_event_descriptor, the descriptor_length field indicates the size of the inband_event_descriptor, and the number_of_assets field indicates the number of the attributes described in the inband_event_descriptor. The asset_id_length field indicates the byte size of the asset identifier, and the asset_id_byte indicates each byte of the asset identifier. The scheme_id_uri_length field indicates the byte size of scheme_id_uri, and the scheme_id_uri field defines the meaning and syntax of the value transmitted in the event_data field. The event_value_length field indicates the byte size of the event_data field, and the event_value field contains the event value. The range and semantics of event values are determined by scheme_id_uri.

일 실시예로서, 이벤트 정보는 특정 애셋의 MPU를 통해 전송되며, MMT 시그널링 정보는 상기 애셋의 MPU 내에 이벤트 정보가 내재되어 있음을 알리는데 사용될 수 있다. 이를 위해 mmt_atsc3_message()이 애셋 레벨에서 사용되는 디스크립터인 inband_event_descriptor를 페이로드에 포함하여 전송한다. 단말은 mmt_atsc3_message()를 통해 inband_event_descriptor를 수신하여, 특정 애셋의 MPU 내에 이벤트 정보가 내재되어 전송되고 있음을 확인하면, 상기 애셋의 MPU를 수신하고 상기 MPU 내의 evti 박스로부터 이벤트 정보를 추출하게 된다.In one embodiment, event information is transmitted via the MPU of a particular asset, and MMT signaling information may be used to signal that the event information is embedded within the MPU of the asset. To do this, mmt_atsc3_message () sends the inband_event_descriptor, which is the descriptor used at the asset level, in the payload. The terminal receives the inband_event_descriptor through the mmt_atsc3_message () and confirms that the event information is embedded in the MPU of the specific asset, the terminal receives the MPU of the asset and extracts the event information from the evti box in the MPU.

본 발명의 다양한 실시예들은 특정 관점에서 컴퓨터 리드 가능 기록 매체(computer readable recording medium)에서 컴퓨터 리드 가능 코드(computer readable code)로서 구현될 수 있다. 컴퓨터 리드 가능 기록 매체는 컴퓨터 시스템에 의해 리드될 수 있는 데이터를 저장할 수 있는 임의의 데이터 저장 디바이스이다. 컴퓨터 리드 가능 기록 매체의 예들은 읽기 전용 메모리(read only memory: ROM: ROM)와, 랜덤-접속 메모리(random access memory: RAM: 'RAM)와, 컴팩트 디스크- 리드 온니 메모리(compact disk-read only memory: CD-ROM)들과, 마그네틱 테이프(magnetic tape)들과, 플로피 디스크(floppy disk)들과, 광 데이터 저장 디바이스들, 및 캐리어 웨이브(carrier wave)들(인터넷을 통한 데이터 송신 등)을 포함할 수 있다. 컴퓨터 리드 가능 기록 매체는 또한 네트워크 연결된 컴퓨터 시스템들을 통해 분산될 수 있고, 따라서 컴퓨터 리드 가능 코드는 분산 방식으로 저장 및 실행된다. 또한, 본 발명의 다양한 실시예들을 성취하기 위한 기능적 프로그램들, 코드, 및 코드 세그먼트(segment)들은 본 발명이 적용되는 분야에서 숙련된 프로그래머들에 의해 쉽게 해석될 수 있다.Various embodiments of the present invention may be embodied as computer readable code in a computer readable recording medium in particular aspects. The computer readable recording medium is any data storage device capable of storing data that can be read by a computer system. Examples of computer readable recording media include read only memory (ROM), random access memory (RAM), compact disk-read only memory (CD-ROMs), magnetic tapes, floppy disks, optical data storage devices, and carrier waves (such as data transmission over the Internet) . The computer readable recording medium may also be distributed over networked computer systems, and thus the computer readable codes are stored and executed in a distributed manner. Also, functional programs, code, and code segments for accomplishing various embodiments of the present invention may be readily interpreted by programmers skilled in the art to which the invention applies.

또한 본 발명의 다양한 실시예들에 따른 장치 및 방법은 하드웨어, 소프트웨어 또는 하드웨어 및 소프트웨어의 조합의 형태로 실현 가능하다는 것을 알 수 있을 것이다. 이러한 소프트웨어는 예를 들어, 삭제 가능 또는 재기록 가능 여부와 상관없이, ROM 등의 저장 장치와 같은 휘발성 또는 비휘발성 저장 장치, 또는 예를 들어, RAM, 메모리 칩, 장치 또는 집적 회로와 같은 메모리, 또는 예를 들어 콤팩트 디스크(compact disk: CD), DVD, 자기 디스크 또는 자기 테이프 등과 같은 광학 또는 자기적으로 기록 가능함과 동시에 기계(예를 들어, 컴퓨터)로 읽을 수 있는 저장 매체에 저장될 수 있다. 본 발명의 다양한 실시예들에 따른 방법은 제어부 및 메모리를 포함하는 컴퓨터 또는 휴대 단말에 의해 구현될 수 있고, 이러한 메모리는 본 발명의 실시예들을 구현하는 명령들을 포함하는 프로그램 또는 프로그램들을 저장하기에 적합한 기계로 읽을 수 있는 저장 매체의 한 예임을 알 수 있을 것이다. It will also be appreciated that the apparatus and method according to various embodiments of the present invention may be implemented in hardware, software, or a combination of hardware and software. Such software may be, for example, a volatile or nonvolatile storage device such as a storage device such as ROM, whether removable or rewritable, or a memory such as, for example, a RAM, memory chip, For example, a storage medium readable by a machine (e.g., a computer), such as a compact disk (CD), a DVD, a magnetic disk, or a magnetic tape. A method according to various embodiments of the present invention may be implemented by a computer or a mobile terminal including a controller and a memory, which memory stores programs or programs including instructions embodying embodiments of the present invention It will be appreciated that this is an example of a suitable machine readable storage medium.

따라서, 본 발명은 본 명세서의 청구항에 기재된 장치 또는 방법을 구현하기 위한 코드를 포함하는 프로그램 및 이러한 프로그램을 저장하는 기계(컴퓨터 등)로 읽을 수 있는 저장 매체를 포함한다. 또한, 이러한 프로그램은 유선 또는 무선 연결을 통해 전달되는 통신 신호와 같은 임의의 매체를 통해 전자적으로 이송될 수 있고, 본 발명은 이와 균등한 것을 적절하게 포함한다Accordingly, the present invention includes a program including code for implementing the apparatus or method described in the claims, and a storage medium readable by a machine (such as a computer) for storing such a program. In addition, such a program may be electronically transported through any medium such as a communication signal transmitted over a wired or wireless connection, and the present invention appropriately includes such equivalent

또한 본 발명의 다양한 실시예들에 따른 장치는 유선 또는 무선으로 연결되는 프로그램 제공 장치로부터 프로그램을 수신하여 저장할 수 있다. 프로그램 제공 장치는 프로그램 처리 장치가 기 설정된 컨텐츠 보호 방법을 수행하도록 하는 지시들을 포함하는 프로그램, 컨텐츠 보호 방법에 필요한 정보 등을 저장하기 위한 메모리와, 그래픽 처리 장치와의 유선 또는 무선 통신을 수행하기 위한 통신부와, 그래픽 처리 장치의 요청 또는 자동으로 해당 프로그램을 송수신 장치로 전송하는 제어부를 포함할 수 있다. Also, an apparatus according to various embodiments of the present invention may receive and store a program from a program providing apparatus connected by wire or wirelessly. The program providing apparatus includes a memory for storing a program including instructions for causing the program processing apparatus to perform a predetermined content protection method, information necessary for the content protection method, and the like, and a program for executing a wired or wireless communication with the graphics processing apparatus A communication unit, and a control unit for requesting the graphic processing apparatus or automatically transmitting the program to the transmission / reception apparatus.

본 명세서와 도면에 개시된 본 발명의 실시 예들은 본 발명의 기술 내용을 쉽게 설명하고, 본 발명의 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 또한 앞서 설명된 본 발명에 따른 실시예들은 예시적인 것에 불과하며, 당해 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 범위의 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 다음의 특허청구범위에 의해서 정해져야 할 것이다.The embodiments of the present invention disclosed in the present specification and drawings are merely illustrative of the technical contents of the present invention and are intended to illustrate specific embodiments in order to facilitate understanding of the present invention and are not intended to limit the scope of the present invention. It should also be understood that the embodiments of the present invention described above are merely illustrative, and that those skilled in the art will be able to make various modifications and equivalent embodiments. Accordingly, the true scope of the present invention should be determined by the following claims.

Claims (9)

디지털 방송 서비스 방법에 있어서,
멀티미디어 전송 세션을 통해 애플리케이션 정보(AI) 테이블을 포함하는 AIT 메시지를 수신하는 과정과,
상기 AI 테이블로부터 애플리케이션 프로그램 서비스에 관련된 속성 정보를 획득하는 과정과,
상기 속성 정보를 기반으로 상기 애플리케이션 프로그램 서비스를 실행하는 과정을 포함하는 것을 특징으로 하는 방법.
A digital broadcast service method comprising:
Receiving an AIT message including an application information (AI) table through a multimedia transmission session;
Obtaining attribute information related to an application program service from the AI table;
And executing the application program service based on the attribute information.
제 1 항에 있어서, 상기 속성 정보는,
상기 애플리케이션 프로그램 서비스의 이름, 상기 애플리케이션 프로그램 서비스의 ID, 상기 애플리케이션 프로그램 서비스에 연계된 멀티미디어 패키지 내 애셋들의 개수, 상기 애플리케이션 프로그램 서비스에 관련된 데이터 또는 파일의 전송에 대한 상세 정보, 상기 애플리케이션 프로그램 서비스의 우선 순위, 상기 애플리케이션 프로그램 서비스의 생명 주기, 상기 애플리케이션 프로그램 서비스의 종류 중 적어도 하나를 포함함을 특징으로 하는 방법.
The method according to claim 1,
The name of the application program service, the ID of the application program service, the number of assets in the multimedia package associated with the application program service, the detailed information about the transmission of data or files related to the application program service, A lifetime of the application program service, and a type of the application program service.
제 1 항에 있어서,
상기 AIT 메시지를 수신하기 이전에, 멀티미디어 패키지에 관련된 멀티미디어 패키지 테이블(MPT) 메시지를 수신하는 과정과,
상기 MPT 메시지로부터 상기 애플리케이션 서비스의 존재를 알려주는 디스크립터를 검출하는 과정과,
상기 디스크립터가 상기 멀티미디어 패키지 내에 상기 애플리케이션 프로그램 서비스가 존재함을 나타내는 경우, 상기 AIT 메시지를 수신할 것으로 결정하는 과정을 더 포함하는 것을 특징으로 하는 방법.
The method according to claim 1,
Receiving a Multimedia Package Table (MPT) message related to a multimedia package before receiving the AIT message;
Detecting a descriptor indicating the presence of the application service from the MPT message;
Further comprising the step of determining to receive the AIT message if the descriptor indicates that the application program service is present in the multimedia package.
제 1 항에 있어서,
멀티미디어 시그널링 채널을 통해 애플리케이션 이벤트(AE) 테이블을 포함하는 애플리케이션 이벤트 정보(AEI) 메시지를 수신하는 과정과,
상기 AE 테이블로부터 상기 애플리케이션 프로그램 서비스에 연계된 이벤트 정보를 획득하는 과정과,
상기 이벤트 정보를 기반으로 상기 애플리케이션 프로그램 서비스를 제어하는 과정을 더 포함하는 것을 특징으로 하는 방법.
The method according to claim 1,
Receiving an application event information (AEI) message including an application event (AE) table over a multimedia signaling channel;
Acquiring event information associated with the application program service from the AE table;
And controlling the application program service based on the event information.
제 4 항에 있어서, 상기 AE 테이블은,
상기 AE 테이블의 ID와, 상기 AE 테이블의 버전 정보와, 상기 AE 테이블의 바이트 크기와, 상기 AE 테이블에 포함된 이벤트 개수에 대한 정보와, 각 이벤트에 대한 AE 디스크립터를 포함하고,
상기 AE 디스크립터는, 해당 이벤트와 연계된 애플리케이션 프로그램 서비스의 ID와, 이벤트 적용 시간 및 기간과, 이벤트 동작에 대한 정보를 포함하는 것을 특징으로 하는 방법.
5. The apparatus of claim 4, wherein the AE table comprises:
An AE table ID, a version information of the AE table, a byte size of the AE table, information on the number of events included in the AE table, and an AE descriptor for each event,
Wherein the AE descriptor includes an ID of an application program service associated with the event, an event application time and duration, and information on an event operation.
제 1 항에 있어서,
미디어 데이터를 포함하는 미디어 데이터 유닛을 수신하는 과정과,
상기 미디어 데이터 유닛에 포함되는 이벤트 정보 박스로부터 상기 애플리케이션 프로그램 서비스에 연계된 이벤트 정보를 획득하는 과정과,
상기 이벤트 정보를 기반으로 상기 애플리케이션 프로그램 서비스를 제어하는 과정을 더 포함하는 것을 특징으로 하는 방법.
The method according to claim 1,
Comprising: receiving a media data unit including media data;
Acquiring event information associated with the application program service from an event information box included in the media data unit;
And controlling the application program service based on the event information.
제 6 항에 있어서, 상기 이벤트 정보 박스는,
이벤트의 고유한 ID와, 이벤트 적용 시간에 대한 정보와, 이벤트 동작에 대한 정보와, 상기 이벤트가 적용될 애플리케이션 프로그램 서비스의 ID를 포함하는 것을 특징으로 하는 방법.
[7] The method of claim 6,
A unique ID of an event, information on an event application time, information on an event operation, and an ID of an application program service to which the event is to be applied.
제 6 항에 있어서,
멀티미디어 패키지에 대한 정보를 포함하는 멀티미디어 패키지(MP) 테이블을 포함하는 MPT 메시지를 수신하는 과정과,
상기 MP 테이블로부터 특정 애셋에 관련된 상기 미디어 데이터 유닛 내에 상기 이벤트 정보가 포함되어 있음을 나타내는 디스크립터를 획득하는 과정과,
상기 디스크립터가 상기 미디어 데이터 유닛 내에 상기 이벤트 정보가 포함되어 있음을 나타내는 경우, 상기 미디어 데이터 유닛 내의 상기 이벤트 정보 박스로부터 상기 이벤트 정보를 획득할 것으로 결정하는 과정을 더 포함하는 것을 특징으로 하는 방법.
The method according to claim 6,
Receiving an MPT message including a multimedia package (MP) table including information on a multimedia package;
Acquiring, from the MP table, a descriptor indicating that the event information is included in the media data unit related to a specific asset;
Further comprising the step of determining to acquire the event information from the event information box in the media data unit when the descriptor indicates that the event information is included in the media data unit.
디지털 방송 서비스를 수신하는 장치에 있어서,
멀티미디어 전송 세션을 통해 애플리케이션 정보(AI) 테이블을 포함하는 AIT 메시지를 수신하는 수신부와,
상기 AI 테이블로부터 애플리케이션 프로그램 서비스에 관련된 속성 정보를 획득하고, 상기 속성 정보를 기반으로 상기 애플리케이션 프로그램 서비스를 실행하는 제어부를 포함하는 것을 특징으로 하는 장치.
An apparatus for receiving a digital broadcast service,
A receiver for receiving an AIT message including an application information (AI) table through a multimedia transmission session;
And a control unit for obtaining attribute information related to the application program service from the AI table and executing the application program service based on the attribute information.
KR1020150158360A 2015-06-23 2015-11-11 Method and apparatus for digital broadcast services KR102473346B1 (en)

Priority Applications (9)

Application Number Priority Date Filing Date Title
CN202011447415.5A CN112738645B (en) 2015-06-23 2016-06-23 Method and apparatus for transmitting and receiving signal in multimedia system
JP2017566110A JP6728246B2 (en) 2015-06-23 2016-06-23 Method and apparatus for transmitting and receiving signals in multimedia system
US15/190,766 US10306297B2 (en) 2015-06-23 2016-06-23 Method and apparatus for transmitting and receiving signal in multimedia system
CN201680036782.1A CN107787586B (en) 2015-06-23 2016-06-23 Method and apparatus for transmitting and receiving signal in multimedia system
EP16814701.5A EP3314906A4 (en) 2015-06-23 2016-06-23 Method and apparatus for transmitting and receiving signal in multimedia system
PCT/KR2016/006678 WO2016208988A1 (en) 2015-06-23 2016-06-23 Method and apparatus for transmitting and receiving signal in multimedia system
US16/381,574 US10595080B2 (en) 2015-06-23 2019-04-11 Method and apparatus for transmitting and receiving signal in multimedia system
US16/780,135 US10880596B2 (en) 2015-06-23 2020-02-03 Method and apparatus for transmitting and receiving signal in multimedia system
KR1020220162229A KR102598237B1 (en) 2015-06-23 2022-11-29 Method and apparatus for digital broadcast services

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20150089353 2015-06-23
KR1020150089353 2015-06-23

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020220162229A Division KR102598237B1 (en) 2015-06-23 2022-11-29 Method and apparatus for digital broadcast services

Publications (2)

Publication Number Publication Date
KR20170000312A true KR20170000312A (en) 2017-01-02
KR102473346B1 KR102473346B1 (en) 2022-12-05

Family

ID=57810628

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020150158360A KR102473346B1 (en) 2015-06-23 2015-11-11 Method and apparatus for digital broadcast services
KR1020220162229A KR102598237B1 (en) 2015-06-23 2022-11-29 Method and apparatus for digital broadcast services

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020220162229A KR102598237B1 (en) 2015-06-23 2022-11-29 Method and apparatus for digital broadcast services

Country Status (4)

Country Link
EP (1) EP3314906A4 (en)
JP (1) JP6728246B2 (en)
KR (2) KR102473346B1 (en)
CN (2) CN107787586B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180094262A (en) * 2017-02-15 2018-08-23 한국전자통신연구원 Method and apparatus for signaling video enhancement information(vei) for video quality enhancement of fixed/mobile broadcating hybrid 3dtv

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109818926B (en) * 2018-12-25 2020-10-09 西安长远电子工程有限责任公司 Communication method without preplanning
KR102176098B1 (en) * 2019-01-28 2020-11-10 김영언 Method and apparatus for recognizing sound source
CN113961156A (en) * 2020-07-20 2022-01-21 北京字节跳动网络技术有限公司 Multi-screen display method, device and system, electronic equipment and computer medium
CN113114655A (en) * 2021-04-07 2021-07-13 深圳市瑞驰信息技术有限公司 Binary data interaction protocol design method based on TCP/IP

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080064326A1 (en) * 2006-08-24 2008-03-13 Stephen Joseph Foster Systems and Methods for Casting Captions Associated With A Media Stream To A User
KR20130031767A (en) * 2011-09-21 2013-03-29 서울시립대학교 산학협력단 Method and apparatus for synchronizing media data of multimedia broadcast service
WO2013080450A1 (en) * 2011-12-02 2013-06-06 ソニー株式会社 Information processing device, information processing method, and program
KR20130085987A (en) * 2012-01-20 2013-07-30 한국전자통신연구원 A method of transporting media data which has access units with multiple media fragment units in heterogeneous ip network
KR20140004131A (en) * 2011-01-19 2014-01-10 삼성전자주식회사 Apparatus and method for providing an application service in a broadcast system
EP2712187A1 (en) * 2011-05-20 2014-03-26 Nippon Hoso Kyokai Broadcast/communication linking system, application management server, receiver, method for reception in receiver, and method for application management in application management server
WO2014045893A1 (en) * 2012-09-20 2014-03-27 ソニー株式会社 Reception apparatus, reception method, broadcast apparatus, broadcast method, program, and interlock application control system
JP2015015706A (en) * 2013-07-03 2015-01-22 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America Data transmission method, data reproduction method, data transmitter and data reproducer

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070049042A (en) * 2005-11-07 2007-05-10 삼성전자주식회사 Method and apparatus for delivering service guide contents source and notification event information in mobile broadcast system
JP5671297B2 (en) * 2009-11-16 2015-02-18 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation Method and system for optimizing multimedia services over an IMS network
US9226045B2 (en) * 2010-08-05 2015-12-29 Qualcomm Incorporated Signaling attributes for network-streamed video data
CN107634961B (en) * 2011-01-19 2021-09-03 三星电子株式会社 Apparatus and method for configuring control message in broadcasting system
KR20120119790A (en) * 2011-04-22 2012-10-31 삼성전자주식회사 Method and apparatus for media data transmission, and method and apparatus for media data reception
WO2011144117A2 (en) * 2011-05-27 2011-11-24 华为技术有限公司 Media transmission method, media reception method, client and system thereof
JP6064249B2 (en) * 2012-07-09 2017-01-25 ホアウェイ・テクノロジーズ・カンパニー・リミテッド Dynamic adaptive streaming over hypertext transfer protocol client behavior framework and session management implementation
JP6616064B2 (en) * 2013-07-25 2019-12-04 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ Transmission method and reception method
WO2015029401A1 (en) * 2013-08-29 2015-03-05 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ Transmission method, receiving method, transmission device, and receiving device
US9930086B2 (en) * 2013-10-28 2018-03-27 Samsung Electronics Co., Ltd. Content presentation for MPEG media transport

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080064326A1 (en) * 2006-08-24 2008-03-13 Stephen Joseph Foster Systems and Methods for Casting Captions Associated With A Media Stream To A User
KR20140004131A (en) * 2011-01-19 2014-01-10 삼성전자주식회사 Apparatus and method for providing an application service in a broadcast system
EP2712187A1 (en) * 2011-05-20 2014-03-26 Nippon Hoso Kyokai Broadcast/communication linking system, application management server, receiver, method for reception in receiver, and method for application management in application management server
KR20130031767A (en) * 2011-09-21 2013-03-29 서울시립대학교 산학협력단 Method and apparatus for synchronizing media data of multimedia broadcast service
WO2013080450A1 (en) * 2011-12-02 2013-06-06 ソニー株式会社 Information processing device, information processing method, and program
KR20130085987A (en) * 2012-01-20 2013-07-30 한국전자통신연구원 A method of transporting media data which has access units with multiple media fragment units in heterogeneous ip network
WO2014045893A1 (en) * 2012-09-20 2014-03-27 ソニー株式会社 Reception apparatus, reception method, broadcast apparatus, broadcast method, program, and interlock application control system
JP2015015706A (en) * 2013-07-03 2015-01-22 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America Data transmission method, data reproduction method, data transmitter and data reproducer

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180094262A (en) * 2017-02-15 2018-08-23 한국전자통신연구원 Method and apparatus for signaling video enhancement information(vei) for video quality enhancement of fixed/mobile broadcating hybrid 3dtv

Also Published As

Publication number Publication date
CN112738645A (en) 2021-04-30
EP3314906A1 (en) 2018-05-02
JP6728246B2 (en) 2020-07-22
CN107787586B (en) 2020-12-25
KR102473346B1 (en) 2022-12-05
EP3314906A4 (en) 2018-07-11
JP2018524904A (en) 2018-08-30
KR102598237B1 (en) 2023-11-10
CN112738645B (en) 2023-05-30
KR20220165693A (en) 2022-12-15
CN107787586A (en) 2018-03-09

Similar Documents

Publication Publication Date Title
JP6441521B2 (en) Control message composition apparatus and method in broadcast system
KR102598237B1 (en) Method and apparatus for digital broadcast services
US9043849B2 (en) Method for linking MMT media and DASH media
CN111837403B (en) Handling interactivity events for streaming media data
JP6045692B2 (en) Apparatus and method for processing interactive services
EP3285491A1 (en) Method and apparatus for transmitting or receiving service signaling for broadcasting service
US10469919B2 (en) Broadcast signal transmission apparatus, broadcast signal reception apparatus, broadcast signal transmission method, and broadcast signal reception method
US10880596B2 (en) Method and apparatus for transmitting and receiving signal in multimedia system
CA3018476A1 (en) Systems and methods for signaling of information associated with audio content
KR20170138994A (en) Broadcast signal transmission apparatus, broadcast signal reception apparatus, broadcast signal transmission method, and broadcast signal reception method
WO2012071931A1 (en) Method and system for dynamically inserting cut-in program into segmented program
KR101792519B1 (en) Broadcasting signal transmitting device, broadcasting signal receiving device, broadcasting signal transmitting method, and broadcasting signal receiving method
CA2452645C (en) Method for broadcasting multimedia signals towards a plurality of terminals
US11310094B2 (en) Apparatus and method for transmitting or receiving broadcast signal
KR20180107160A (en) Method and apparatus for providing content-related information of multimedia service
CN107005745B (en) Method and apparatus for encapsulating a stream of audiovisual content
KR102600762B1 (en) Apparatus and method for transmitting broadcasting content based on atsc 3.0, and apparatus and method for receiving broadcasting content based on atsc 3.0
KR20160033027A (en) The method for transmitting or receiving multimedia and apparatus thereof
KR20160129631A (en) Apparatus and method for transmiting event information in a broadcasting system

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant