KR102473346B1 - 디지털 방송 서비스 방법 및 장치 - Google Patents

디지털 방송 서비스 방법 및 장치 Download PDF

Info

Publication number
KR102473346B1
KR102473346B1 KR1020150158360A KR20150158360A KR102473346B1 KR 102473346 B1 KR102473346 B1 KR 102473346B1 KR 1020150158360 A KR1020150158360 A KR 1020150158360A KR 20150158360 A KR20150158360 A KR 20150158360A KR 102473346 B1 KR102473346 B1 KR 102473346B1
Authority
KR
South Korea
Prior art keywords
event
mmt
information
message
event information
Prior art date
Application number
KR1020150158360A
Other languages
English (en)
Other versions
KR20170000312A (ko
Inventor
양현구
이병대
류영선
Original Assignee
삼성전자주식회사
경기대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사, 경기대학교 산학협력단 filed Critical 삼성전자주식회사
Priority to CN201680036782.1A priority Critical patent/CN107787586B/zh
Priority to US15/190,766 priority patent/US10306297B2/en
Priority to EP16814701.5A priority patent/EP3314906A4/en
Priority to JP2017566110A priority patent/JP6728246B2/ja
Priority to CN202011447415.5A priority patent/CN112738645B/zh
Priority to PCT/KR2016/006678 priority patent/WO2016208988A1/en
Publication of KR20170000312A publication Critical patent/KR20170000312A/ko
Priority to US16/381,574 priority patent/US10595080B2/en
Priority to US16/780,135 priority patent/US10880596B2/en
Priority to KR1020220162229A priority patent/KR102598237B1/ko
Application granted granted Critical
Publication of KR102473346B1 publication Critical patent/KR102473346B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/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/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/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/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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

디지털 방송 서비스 방법 및 장치를 개시한다. 상기 방법은, 멀티미디어 전송 세션을 통해 애플리케이션 정보(AI) 테이블을 포함하는 AIT 메시지를 수신하는 과정과, 상기 AI 테이블로부터 애플리케이션 프로그램 서비스에 관련된 속성 정보를 획득하는 과정과, 상기 속성 정보를 기반으로 상기 애플리케이션 프로그램 서비스를 실행하는 과정을 포함한다.

Description

디지털 방송 서비스 방법 및 장치{METHOD AND APPARATUS FOR DIGITAL BROADCAST SERVICES}
본 발명은 디지털 방송 서비스에서 애플리케이션 프로그램 서비스 정보 및 이벤트의 전송을 위한 방법 및 장치에 관한 것이다.
멀티미디어 서비스란 화상전화와 같은 대화형 서비스, 주문형 비디오(Video On Demand: VOD) 서비스와 같은 스트리밍 서비스, 또는 멀티캐스트 및 브로드캐스트 서비스 등의 서비스를 의미한다. 실시간 멀티미디어 서비스는 서비스의 형태에 따라 대화형 서비스, 인터랙티브 서비스, 스트리밍 서비스로 나눌 수 있으며, 참여하는 사용자의 수에 따라 유니캐스트, 멀티캐스트, 브로드캐스트로 나눌 수도 있다.
MPEG-2 TS (Moving Picture Experts Group-2 Transport Stream)는 멀티미디어 컨텐츠의 전송을 위해 사용되는 기술로서, 오류가 있는 전송 환경에서 복수의 방송 프로그램(부호화된 다수의 비디오 비트 열)이 다중화된 비트 열을 전송하기 위한 대표적인 전송 기술로 사용되고 있다. MPEG 기술을 기반으로 멀티미디어 서비스를 지원하기 위한 멀티미디어 전송 기술 중 하나로 MMT (MPEG MEDIA Transport) 표준이 제안된 바 있다. MMT 기술은 여러 종류의 네트워크 환경에서 TV(Television)나 모바일 기기 등과 같은 다양한 사용자 단말을 통해 다양한 형태의 멀티미디어 서비스를 원활하게 제공하기 위한 MPEG의 새로운 표준 기술로서, 예컨대 MMT 표준은 이종(heterogeneous) 네트워크를 통해 복합 컨텐츠를 효율적으로 전송하기 위해 적용될 수 있다. 여기서 복합 컨텐츠는 비디오(Video)/오디오(Audio)/애플리케이션(Application) 등에 의한 멀티미디어 요소를 가지는 컨텐츠의 집합을 의미한다. 그리고 이종 네트워크는 일 예로서 방송 네트워크와 이동 통신 네트워크 등이 혼재하는 네트워크가 될 수 있다.
방송 네트워크와 통신 네트워크를 유기적으로 연동하는 하이브리드 전송 기술을 바탕으로 애플리케이션 프로그램 서비스를 지원하기 위해서는, 방송 네트워크 또는 통신 네트워크를 이용하여 애플리케이션 프로그램 서비스를 실행하는데 필요한 데이터 또는 파일 수신과 더불어, 단말에서 애플리케이션 프로그램 서비스 및 관련 데이터를 인식하고 선택하도록 하기 위한 시그널링 정보가 필요하다. 따라서 MPEG 미디어 전송 기술을 사용하는 통신 시스템에서 애플리케이션 프로그램 서비스를 제공하기 위한 효과적인 시그널링 정보의 전송 기술을 필요로 하게 되었다.
본 발명은 디지털 방송 서비스를 지원하기 위한 방법 및 장치를 제공한다.
본 발명은 미디어 전송 기술을 사용하여 전송되는 방송 프로그램과 연동하거나 또는 독립적으로 동작하는 애플리케이션 프로그램 서비스를 지원하기 위한 방법 및 장치를 제공한다.
본 발명은 디지털 방송 서비스를 위한 애플리케이션 프로그램 서비스를 지원하기 위한 시그널링 정보 전송 방법 및 그 장치를 제공한다.
본 발명에서 해결하고자 하는 기술적 과제는 MMT 전송 기술을 사용하여 애플리케이션 프로그램 서비스 관련 정보 및 애플리케이션 프로그램 서비스의 동작을 제어하기 위한 이벤트 정보를 전송하는 방법 및 그 장치를 고안하는데 목적을 두고 있다.
본 발명의 일 실시예에 따른 방법은; 디지털 방송 서비스 방법에 있어서, 멀티미디어 전송 세션을 통해 애플리케이션 정보(AI) 테이블을 포함하는 AIT 메시지를 수신하는 과정과, 상기 AI 테이블로부터 애플리케이션 프로그램 서비스에 관련된 속성 정보를 획득하는 과정과, 상기 속성 정보를 기반으로 상기 애플리케이션 프로그램 서비스를 실행하는 과정을 포함한다.
본 발명의 일 실시예에 따른 장치는; 디지털 방송 서비스를 수신하는 장치에 있어서, 멀티미디어 전송 세션을 통해 애플리케이션 정보(AI) 테이블을 포함하는 AIT 메시지를 수신하는 수신부와, 상기 AI 테이블로부터 애플리케이션 프로그램 서비스에 관련된 속성 정보를 획득하고, 상기 속성 정보를 기반으로 상기 애플리케이션 프로그램 서비스를 실행하는 제어부를 포함한다.
본 발명의 특정한 바람직한 실시예들의 상기에서 설명한 바와 같은 또한 다른 측면들과, 특징들 및 이득들은 첨부 도면들과 함께 처리되는 하기의 설명으로부터 보다 명백하게 될 것이다.
도 1은 본 발명의 일 실시예에 따른 MMT 시스템의 계층 구조를 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 MMT 페이로드의 구성을 도식화한 것이다.
도 3은 본 발명의 일 실시예에 따른 MMT 패키지의 논리적 구조를 나타낸 것이다.
도 4는 본 발명의 일 실시예에 따라 애플리케이션 프로그램 서비스를 실행하기 위한 단말의 개략적인 동작 과정을 나타낸 것이다.
도 5는 본 발명의 일 실시예에 따라 애플리케이션 프로그램 서비스에 관련된 정보를 수신하는 장치를 도식화한 것이다.
도 6은 본 발명의 일 실시예에 따라 MMT 시그널링 메시지를 이용한 이벤트 정보의 처리 절차를 나타낸 흐름도이다.
도 7은 본 발명의 일 실시예에 따라 MPU를 이용한 이벤트 정보의 처리 절차를 나타낸 흐름도이다.
상기 도면들을 통해, 유사 참조 번호들은 동일한 혹은 유사한 엘리먼트들과, 특징들 및 구조들을 도시하기 위해 사용된다는 것에 유의해야만 한다.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
실시예를 설명함에 있어서 본 발명이 속하는 기술 분야에 익히 알려져 있고 본 발명과 직접적으로 관련이 없는 기술 내용에 대해서는 설명을 생략한다. 이는 불필요한 설명을 생략함으로써 본 발명의 요지를 흐리지 않고 더욱 명확히 전달하기 위함이다.
마찬가지 이유로 첨부 도면에 있어서 일부 구성요소는 과장되거나 생략되거나 개략적으로 도시되었다. 또한, 각 구성요소의 크기는 실제 크기를 전적으로 반영하는 것이 아니다. 각 도면에서 동일한 또는 대응하는 구성요소에는 동일한 참조 번호를 부여하였다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
이때, 처리 흐름도 도면들의 각 블록과 흐름도 도면들의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수 있음을 이해할 수 있을 것이다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 흐름도 블록(들)에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 흐름도 블록(들)에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 흐름도 블록(들)에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실행 예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
이 때, 본 실시 예에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA(field-Programmable Gate Array) 또는 ASIC(Application Specific Integrated Circuit)과 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다.
본 개시의 실시예들을 구체적으로 설명함에 있어서, OFDM 기반의 무선통신 시스템을 주된 대상으로 할 것이지만, 본 명세서에서 청구하고자 하는 주요한 요지는 유사한 기술적 배경을 가지는 여타의 통신 시스템 및 서비스에도 본 명세서에 개시된 범위를 크게 벗어나지 아니하는 범위에서 적용 가능하며, 이는 당해 기술분야에서 숙련된 기술적 지식을 가진 자의 판단으로 가능할 것이다.
MMT 프로토콜(MMT Protocol: MMTP)은 IP(Internet Protocol) 네트워크를 통해 MMT 페이로드 포맷(Payload Format: PF)로 구성된 전달 프레임을 전달하기 위한 애플리케이션 계층 프로토콜을 정의한다. MMT 페이로드는 MMT 페이로드 포맷으로 구성되어 효율적으로 전달할 수 있도록 디자인된다. 이종(heterogeneous) IP 네트워크들을 통해 MPEG 미디어 데이터를 효율적으로 전달하기 위해서, MMT는 캡슐화 포맷들(Encapsulation Formats)과, 전달 프로토콜들(Delivery Protocols)과, 시그널링 메시지 포맷(signaling message format)들을 정의한다.
MMT 기술에서는 패키지(Package)와 애셋(Asset) 등의 데이터 모델을 정의하고 있다. 패키지는 영화 한편과 같은 하나의 독립적 콘텐츠를 의미하며, 애셋은 콘텐츠를 구성하는 영상, 음성 또는 데이터 등과 같은 요소를 구분하는 논리적 개체로서 하나의 패키지는 복수의 애셋으로 구성될 수 있다.
도 1은 본 발명의 일 실시예에 따른 MMT 시스템의 계층 구조를 도시한 도면이다.
도 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)이 도시되었다.
일 실시예에 따르면, 미디어 부호화 계층(110)과 캡슐화 기능 계층(120)은 멀티미디어 컨텐츠 및/또는 멀티미디어 서비스에 따른 멀티미디어 데이터를 생성하는 멀티미디어 데이터 생성부로서 동작한다. 또한 전달 기능 계층(130)는 데이터 생성부로부터 입력된 멀티미디어 데이터를 기반으로 멀티미디어 데이터 패킷을 구성하는 멀티미디어 데이터 구성부로서 동작한다. 멀티미디어 데이터 구성부에 해당하는 전달 기능 계층(130)은 멀티미디어 데이터 생성부로부터 제공된 적어도 하나의 멀티미디어 데이터를 식별하여 헤더 정보를 구성하고, 헤더 정보와 적어도 하나의 멀티미디어 데이터를 결합하여 멀티미디어 데이터 패킷을 구성한다.
미디어 부호화 계층(110)에서 압축된 멀티미디어 데이터는 캡슐화(Encapsulation) 기능 계층(120)를 거쳐 파일 포맷과 유사한 형태로 패키지화되어 출력된다. 캡슐화 기능 계층(120)은 미디어 부호화 계층(110)으로부터 제공되는 코딩된 미디어 데이터 혹은 저장된 미디어 데이터를 입력으로 하여 MMT 서비스를 위한 작은 단위인 데이터 조각(segment)를 생성하며, 상기 데이터 조각을 사용하여 MMT 서비스를 위한 액세스 유닛(Access Unit)들을 생성한다. 또한 캡슐화 기능 계층(120)은 상기 액세스 유닛들을 결합 및/또는 분할함으로써 복합 컨텐츠의 생성 및 저장과 전송을 위한 패킷 포맷을 생성한다.
전달 기능 계층(130)은 캡슐화 기능 계층(120)에서 출력되는 데이터 유닛(들)을 MMT 페이로드 포맷으로 변환화한 후 MMT 전송 패킷 헤더(MMT Transport Packet Header)를 부가하여 MMT 전송 패킷으로 구성하거나 또는 기존 전송 프로토콜인 RTP(Real-time Protocol)를 사용하여 RTP 패킷으로 구성한다.
전달 기능 계층(130)에서 구성된 패킷들은 UDP(User Datagram Protocol) 혹은 TCP(Transport Control Protocol)와 같은 전송 프로토콜 계층(140)을 거쳐 최종적으로 인터넷 프로토콜(IP) 계층(150)에서 IP 패킷화되어 전송된다. 전송 프로토콜 계층(140) 및 IP 계층(150)은 데이터 전송부로서 동작할 수 있다. 선택적으로 존재할 수 있는 제어 기능부(100)는 데이터의 전송에 필요한 제어 정보 혹은 시그널링 정보를 생성하여 데이터에 부가하여 전송하거나, 혹은 별도의 시그널링 수단을 통해 전송한다.
전달 기능 계층(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)가 될 수 있다.
도 2는 본 발명의 일 실시예에 따른 MMT 페이로드의 구성을 도식화한 것이다.
도 2를 참조하면, MMT 페이로드(200)는 적어도 하나의 MMT MFU(210), 적어도 하나의 MPU(230), 적어도 하나의 MMT 애셋(230) 및 MMT 패키지 중 적어도 하나를 포함하여 구성될 수 있다.
MFU(210)은 어떤 특정 미디어 코덱(Media Codec)에도 독립적인, 미디어 디코더에 의해 독립적으로 처리 가능한 코딩된 미디어 데이터를 포함하는 일반적인 컨테이너 포맷을 의미한다. MFU(210)는 MPU(220)의 조각난 데이터의 일부분을 나타내는 것으로, 독자적으로 디코딩이 가능한 최소 단위가 된다. 일 예로서 하나의 프레임을 액세스 유닛으로 사용하여 부호화가 수행되는 경우 MFU(210)는 하나의 비디오 프레임이 될 수 있으며, 다른 경우 하나의 프레임 안에 포함된 하나의 슬라이스가 될 수 있다.
MPU(220)는 하나 혹은 그 이상의 MFU들과 추가적인 전달 및 처리 관련 정보를 포함하는 컨테이너 포맷으로서, 복수의 서로 다른 액세스 유닛들로부터 생성된 다양한 개수의 MFU들을 포함할 수 있다. MPU(220)는 MMT 구현 개체(MMT compliant entity)에 의해서 완전하고 독립적으로 처리될 수 있는 부호화된 미디어 데이터 유닛을 의미하는 것으로서, 애플리케이션 환경에 따른 특정한 크기, 일 예로서 비디오의 경우 1 GOP(Group of Picture)의 크기를 가질 수 있다. 일 예로서 MPU(220)는 1 GOP(일 예로서 1초의 비디오)를 구성하는 복수의 픽쳐 프레임들로 구성될 수 있으며, MFU(220)는 각 픽쳐 프레임을 포함할 수 있다.
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)이 될 수 있다.
여기서 엘리멘터리 스트림(ES)은 특정 미디어 코덱에 의해 정의되는 것으로서, 논리적으로 하나 혹은 그 이상의 MMT 애셋들이 될 수 있다. 계층화 코덱 및 다시점 코덱을 지원하는 MMT 애셋(230)은 다른 MMT 애셋들과 오버랩(overlap)될 수 있다.
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 패키지(240)는 MMT 구현 개체(MMT compliant entity)에 의해 처리되는, 부호화된 미디어 데이터와 관련 정보의 집합체(collection)로 정의된다.
도 3은 본 발명의 일 실시예에 따른 MMT 패키지의 논리적 구조를 나타낸 것으로서, 도시한 바와 같이 MMT 패키지(300)는 하나 혹은 그 이상의 MMT 애셋들(320)과 MMT 합성 정보(310) 및 MMT 트랜스포트 특성을 나타내는 하나 혹은 그 이상의 ADC들(330)로 구성된다. MMT 패키지(240)는 식별자와 같은 설명 정보 및 MMT 애셋들(320)의 위치를 포함하며, MMT 패키지(240) 내의 MMT 애셋들(320)은 다중화되거나 혹은 연접될 수 있다.
MMT 패키지(240)의 처리는 MPU의 단위로 적용되며, MMT 애셋(320)은 동일한 MMT 애셋 ID를 가지는 하나 혹은 그 이상의 MPU들의 집합체로서, 각 MMT 애셋(320)에 관련된 트랜스포트 특성은 ADC(330)에 의해 표현된다. ADC(330)는 MMT 패키지를 패킷화하는 개체에 의해, MMT 페이로드의 파라미터들과 MMT 패킷의 헤더 정보를 구성하는데 사용될 수 있다.
상기와 같은 패키지의 구성 정보 및 이를 사용자 단말에서 수신하고 소비하기 위해 필요한 정보는 MMT 시그널링 메시지를 통해 전송된다. MMT 시그널링 기능 영역은 미디어 소비와 미디어 전달과 관련된 메시지 포맷을 정의하고 있다. 미디어 소비와 관련된 메시지들은 전송되는 미디어 데이터를 소비하기 위해 필요한 정보를 제공하며, 다음과 같이 정의되어 있다.
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) 메시지가 정의되어 있다.
방송통신 융합 및 전송 네트워크의 고도화와 더불어 UHDTV (Ultra High-Definition Television), 3DTV(3-Dimenstion TV), 다시점 TV (Multi-view TV) 등의 고화질 실감형 방송 서비스 기술, 다양한 유형의 고정형 및 휴대용 멀티미디어 기기를 유기적으로 활용하기 위한 N-스크린 서비스 기술 등 차세대 방송 및 멀티미디어 서비스를 가능하게 하는 혁신적인 기술이 지속적으로 시장에 선보이고 있다. 특히 방송 네트워크와 통신 네트워크를 유기적으로 연동하여 융합형 멀티미디어 서비스를 가능하도록 하는 하이브리드 전송 기술을 바탕으로 다양한 부가 정보를 방송 프로그램과 연동하거나 또는 독립적으로 제공하는 애플리케이션 프로그램 서비스는, 사실감과 현장감이 극대화된 영상 콘텐츠 제공과 더불어 차세대 방송 서비스의 핵심 성공 요소로 간주된다. 대표적인 애플리케이션 프로그램 서비스 모델로는 시청자 참여형 서비스 (단순문자메시지, 퀴즈, 투표(Poll), 설문조사, 인기투표), TV 전자상거래 (티켓예매, 경매, 전자쿠폰, 모바일 다운로드), 날씨, 스포츠, 게임과 같이 방송 프로그램과 독립적으로 제공될 수 있는 애플리케이션 프로그램 서비스 및 포털 서비스, 맞춤형 광고 등이 포함된다.
애플리케이션 프로그램 서비스를 지원하기 위해서는 방송 네트워크 또는 통신 네트워크를 이용하여 애플리케이션 프로그램 서비스를 실행하는데 필요한 데이터 또는 파일 수신과 더불어 단말에서 애플리케이션 프로그램 서비스 및 관련 데이터에 대한 인식과 선택을 위한 시그널링 정보가 필요하다. 애플리케이션 프로그램 서비스 관련 시그널링 정보에는 두 가지 유형이 존재한다. 즉 상기 시그널링 정보는, 이용 가능한 애플리케이션 프로그램 서비스 리스트, 애플리케이션 프로그램 서비스 이름 및 전송 정보 등 개별 서비스에 대한 전반적인 속성을 제공하는 시그널링 정보와, 애플리케이션 프로그램 서비스의 동작을 제어하는 이벤트 정보로 세분화될 수 있다. 특히 방송 프로그램에 연동되는 애플리케이션 프로그램 서비스의 경우 이벤트 정보를 함께 전송함으로써 좀 더 다양하고 풍부한 방송 서비스 제공이 가능해진다.
도 4는 본 발명의 일 실시예에 따라 애플리케이션 프로그램 서비스를 실행하기 위한 단말의 개략적인 동작 과정을 나타낸 것이다. 여기에서는 방송 프로그램과 연동하여 특정 시간에 맞춤형 광고를 위한 애플리케이션 프로그램 서비스의 예를 도시하였다.
도 4를 참조하면, 과정 405에서 단말은 사용자가 요청한 방송 프로그램(도시된 예에서 Show X)의 오디오 및 비디오 스트림들을 서비스 공급자(Service Provider)로부터 수신하여 재생하며, 더불어 과정 410에서 애플리케이션 프로그램 서비스에 관련된 시그널링을 제공하는 채널인 애플리케이션 정보 스트림(Application Information Stream)을 통해 상기 방송 프로그램과 연계된 애플리케이션 프로그램 서비스에 대한 시그널링 정보를 획득하고, 필요 시 방송 네트워크 또는 통신 네트워크를 이용하여 상기 애플리케이션 프로그램 서비스의 실행에 필요한 데이터를 수신한다. 상기 시그널링 정보 및 데이터는 애플리케이션 정보라 통칭할 수 있다.
과정 415에서 단말은 상기 방송 프로그램을 재생하는 도중, 이벤트를 제공하는 채널인 이벤트 스트림(Event Stream)으로 전송되는 이벤트 정보를 수신하고, 이에 따른 동작을 수행한다. 도시된 예에서 단말은 Show X의 중간 부분, 즉 광고 시간이 시작되는 시점에서 광고 중인 제품의 추가적인 정보를 제공하는 애플리케이션 프로그램 서비스 Y의 실행에 관한 이벤트 정보를 수신한다. 과정 420에서 단말은 상기 이벤트 정보를 기반으로 상기 애플리케이션 프로그램 서비스 Y(즉 광고 서비스)를 실행한다. 일정 시간 후 과정 425에서 상기 애플리케이션 프로그램 서비스 Y의 종료 이벤트가 수신되면 단말은 상기 서비스 Y를 종료한다.
MMT 기술은 미디어 소비와 미디어 전달과 관련된 다양한 시그널링 메시지를 정의하고 있으나, 이들 시그널링 메시지의 주요 역할은 패키지의 구성 정보 및 패키지를 구성하는 개별 애셋을 수신하기 위해 필요한 정보를 제공하는데 있다. 특히 MPT 메시지에서 사용되는 MP (MMT Package) 테이블은 패키지를 구성하는 애셋별 구성 정보 및 각 애셋을 수신하기 위해 필요한 위치 정보를 정의하고 있다. 이러한 기본 정보 외의 부가 정보는 디스크립터를 사용하여 제공하는 방식을 사용하고 있으며, MPT 메시지는 다양한 디스크립터를 저장할 수 있는 컨테이너 포맷을 정의한다.
MPI 테이블에서 사용될 수 있는 MPEG CI 정보는 패키지를 구성하는 개별 애셋의 단말의 논리적 화면에서의 위치 정보와 함께 해당 애셋의 재생과 관련된 시간 정보를 포함할 수 있다. 그러나 MPEG CI는 MMT로 전송되는 애셋에 대한 제어 정보를 제공하는데 주요 목적을 두고 있으며, 따라서 MMT가 아닌 전송 프로토콜로 전송되는 애플리케이션 프로그램 서비스에 적용하기에는 한계가 존재한다.
하기에서는 MMT 전송 기술을 이용하여 애플리케이션 프로그램 서비스의 관련 정보 및 애플리케이션 프로그램 서비스의 동작을 제어하기 위한 이벤트 정보를 전송하는 기술을 설명한다.
도 5는 본 발명의 일 실시예에 따라 애플리케이션 프로그램 서비스에 관련된 정보를 수신하는 장치를 도식화한 것이다.
도 5를 참조하면, 데이터 수신기(data receiver)(505)는 MMT, ROUTE, HTTP(Hyper Text Transfer Protocol)와 같은 전송 프로토콜들 중 적어도 하나를 사용하여 통신 네트워크 또는 방송 네트워크로 전송되는 패킷을 수신하기 위해 MMT 데이터 수신기(510), ROUTE 데이터 수신기(515), HTTP 데이터 수신기(520) 및 다른 데이터 수신기(525) 중 적어도 하나를 포함할 수 있으며, 상기 수신된 패킷을 그 종류에 따라 제어부(500) 내의 파일 데이터 수신기(530), 미디어 데이터 수신기(540), 또는 시그널링 데이터 수신기(550)로 전달한다.
파일 데이터 수신기(530)는 데이터 수신기(505)로부터 전달된 패킷을 처리하여 상기 패킷에 포함된 데이터를 파일 처리기(535)로 전달한다. 일 예로 파일 데이터 수신기(530)는 MMT에서 정의된 GFD(Generic File Delivery) 모드로 전송되는 MMTP (MMT Protocol) 패킷을 수신하여 MMTP 페이로드로 재구성한 뒤 파일 처리기(535)로 전달하거나, ROUTE를 포함한 다양한 파일 전송 프로토콜들 중 하나를 통해 전송되는 패킷을 수신하여 원하는 데이터를 추출한 뒤 파일 처리기(535)로 전달한다. 파일 처리기(535)는 파일 데이터 수신기(530)로부터 전달받은 데이터를 기반으로 개별 파일들을 재구성한다.
미디어 데이터 수신기(540) 및 미디어 처리기(545)는 미디어 데이터를 처리하는 구성 요소들이다. 일 예로 미디어 데이터가 MMT에서 정의된 MPU(MMT Processing Unit)인 경우, 미디어 처리기(545)는 MMTP의 MPU 모드로 전송되는 미디어 데이터를 처리하는 구성 요소일 수 있다. 이 때 미디어 데이터 수신기(540)는 데이터 수신기(505) 내의 MMT 데이터 수신기(515)로부터 전달받은 MMTP 패킷을 바탕으로 MMTP 페이로드를 재구성하여 MPU를 생성하며, 미디어 처리기(545)는 상기 MPU를 전달받아 서비스 표시기(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)로 재생하는 역할을 수행한다.
미디어 데이터 수신기(540)는 MPU나 DASH 세그먼트와 같이 ISOBMFF(ISO Base Media File Format)을 따르는 미디어 파일의 전체를 생성한 이후에 상기 미디어 파일을 미디어 처리기(545)에 전달하거나, 또는 채널전환 시간 감소를 위하여 상기 미디어 파일의 전체가 생성되기 전에 생성된 일부를 미디어 처리기(545)에 전달할 수 있다.
데이터 수신기(505)로부터 전달받은 패킷이 시그널링 정보를 포함할 경우, 상기 패킷은 시그널링 데이터 수신기(550)로 전달되어 시그널링 정보를 재구성하는데 사용된다. 재구성된 시그널링 정보는 시그널링 처리기(555)에게 전달되며 시그널링 정보의 내용에 따라 추가 동작이 수행된다. 일 예로 시그널링 정보가 MMTP를 통하여 전송될 경우 시그널링 데이터 수신기(550)는 MMT 데이터 수신기(510)로부터 시그널링 정보를 저장한 MMTP 패킷을 수신하여 MMTP 페이로드로 재구성하며, 시그널링 처리기(555)는 상기 MMTP 페이로드 내의 시그널링 정보를 파싱(parsing)하여 필요 정보를 시그널링 정보 DB(DataBase)(560)에 저장한다. 만약 시그널링 정보가 파일에 포함되어 전송될 경우, 시그널링 처리기(555)는 파일 처리기(535)로부터 시그널링 정보를 저장한 파일을 전달받아 상기 시그널링 정보를 파싱하여 필요 정보를 DB(560)에 저장한다.
시그널링 처리기(555)는 파싱된 시그널링 정보를 바탕으로 다른 구성 요소들과 상호 작용하여 추가적인 동작을 수행한다. 예를 들어, 애플리케이션 프로그램 서비스에 관련된 시그널링 정보가 수신된 경우, 시그널링 처리기(555)는 상기 애플리케이션 프로그램 서비스의 실행에 필요한 데이터를 수신하기 위해 필요한 정보를 파일 데이터 수신기(530)로 전달하여 관련 데이터를 수신하도록 한다.
애플리케이션 프로그램 서비스의 제어와 관련된 이벤트 정보는 전용 시그널링 채널을 통해 전송되거나 또는 미디어 데이터에 내재되어 전송될 수 있다. 예를 들어 MMT의 경우, 이벤트 정보는 시그널링 메시지를 통해 전송되거나 또는 미디어 데이터를 저장하는 MPU에 내재되어 전송될 수 있다. 이와 유사하게 DASH의 경우 시그널링 정보는 MPD(Media Presentation Description)에 포함되거나 또는 미디어 데이터를 포함하고 있는 DASH 세그먼트에 내재되어 전송될 수 있다. 따라서, 미디어 데이터 수신기(540)는 미디어 데이터 내에 이벤트 관련 정보가 내재된 경우 이를 추출하여 시그널링 처리기(555)로 전달하고 궁극적으로는 애플리케이션 프로그램 관리기(565)로 전달되도록 함으로써, 상기 이벤트 관련 정보가 애플리케이션 프로그램 서비스의 동작을 제어하는데 사용된다.
애플리케이션 프로그램 관리기(565)는 애플리케이션 프로그램 서비스에 관한 전반적인 정보를 저장 및 관리하며, 개별 애플리케이션 프로그램 서비스의 동작을 관리하고, 서비스 표시기(570)를 통해 각 애플리케이션 프로그램 서비스의 정보를 표시한다. 이를 위해 애플리케이션 프로그램 관리기(565)는 시그널링 처리기(555)와 파일 처리기(535)와 상호 연동하여 애플리케이션 프로그램 서비스의 제공에 필요한 데이터 및 시그널링 정보를 전달받게 된다.
이하 애플리케이션 프로그램 서비스와 관련된 시그널링 정보 및 이벤트 정보를 전달하는 동작을 설명한다.
1) 애플리케이션 프로그램 서비스에 관련된 시그널링 정보의 전송
애플리케이션 프로그램 서비스에 관련된 정보는 애플리케이션 프로그램 서비스의 이름, 전송 방식, 생명 주기(life cycle) 등 애플리케이션 프로그램 서비스의 주요 속성들을 포함한다.
일 실시예로서, 애플리케이션 프로그램 서비스에 관련된 정보를 전송하기 위해 MMT 시그널링 세션을 통해 전송되는 시그널링 메시지인 AIT (Application Information Table) 메시지가 사용될 수 있다. 하기의 <표 1>은 AIT 메시지 및 AIT 메시지에 포함되는 AI (Application Information) 테이블의 포맷의 일 예를 나타낸 것이다.
신택스 비트수 포맷
AIT_message {
message_id 16 uimsbf
version 8 uimsbf
length 16 uimsbf
extension {
}
message_payload {
AI_table()
}
}
여기서 message_id 필드는 AIT 메시지의 ID를 의미하고, version 필드는 AIT 메시지의 버전을 나타내며, length 필드는 AIT 메시지의 바이트 크기로서, length 필드의 다음 위치에서부터 AIT 메시지의 끝까지의 길이를 나타내고, AI_table() 필드는 AI 테이블을 포함한다.
AIT 메시지는 extension 부분에 AIT 메시지가 적용되는 서비스를 식별하기 위한 식별자(identifier)를 더 포함할 수 있다. 또한 AIT 메시지를 식별(identify)하기 위한 URI(Uniform Resource Identifier)의 존재 유무를 나타내기 위한 1비트 플래그가 더 포함될 수 있으며, 상기 1 비트 플래그가 온되어 있을 경우 URI를 나타내는 필드가 AIT 메시지에 더 포함될 수 있다.
MMT 패키지에 포함된 모든 애플리케이션 프로그램 서비스들에 관한 정보는 하나의 AI 테이블을 이용하여 전송되거나(i.e., Complete AI Table) 또는 다수의 AI 테이블들에 분할되어(i.e., Subset AI Table) 전송될 수 있다. 후자의 경우 각 Subset AI 테이블은 독립적인 AIT 메시지에 포함되어 전송된다.
하기 <표 2>는 AI 테이블의 상세 포맷의 일 예를 나타낸 것이다.
신택스 비트수 포맷
AI_table {
table_id 8 uimsbf
version 8 uimsbf
length N1 16 uimsbf
reserved '1111' 4 bslbf
AI_table_mode 2 uimsbf
reserved '11' 2 bslbf
AI_table_descriptors {
AI_table_descriptor_length N2 16 uimsbf
for (i = 0; i < N2; ++i)
AI_table_descriptor_bytes 8 uimsbf
}
AI_count N3 8 uimsbf
for (i = 0; i < N3; ++i) {
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 테이블을 가리킨다.
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.)
length 필드는 AI 테이블의 바이트 크기로서, length 필드의 다음 위치에서 AI 테이블의 끝까지의 길이를 나타낸다.
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).
AI_table_mode 필드에서 사용되는 값 및 설명의 예는 다음 <표 3>과 같다.
AI_table_mode Description
00 "sequential_order_processing_mode"
01 "order_irrelevant_processing_mode"
10 "independent_processing_mode"
11 Reserved
AI_table_descriptor_bytes 필드는 AI 테이블의 디스크립터이며, AI_count 필드는 AI 테이블에 포함된 애플리케이션 프로그램 서비스들의 개수를 나타내고, application_attributes() 필드는 각 애플리케이션 프로그램 서비스의 속성을 나타낸다.
앞서 기술한 바와 같이, AI 테이블은 애플리케이션 프로그램 서비스와 관련된 다양한 속성들을 포함할 수 있으며, application_attributes() 필드에 해당 속성들이 포함된다. 이러한 속성들에는 애플리케이션 프로그램 서비스의 이름, 애플리케이션 프로그램 서비스에 관련된 데이터의 전송 정보와 우선 순위 등이 포함될 수 있다. 하기 <표 4>는 application_attributes()의 한 예를 나타낸 것이다.
신택스 설명
application_attributes() {
app_name 애플리케이션 프로그램 서비스 이름
app_id 애플리케이션 프로그램 서비스 ID
related_MMT_assets_count 해당 애플리케이션 프로그램 서비스와 연계된 MMT 패키지 내 Asset의 수 (N1). 0으로 설정된 경우 패키지와 연동되지 않고 독립적으로 실행 가능한 애플리케이션 프로그램 서비스임
for (i = 0; i < N1; ++i)
asset_id Asset ID
application_transport_methods_count 애플리케이션 프로그램 서비스 실행에 필요한 데이터 또는 파일 전송 방법의 수 (N2)
for (i = 0; i < N2; ++i)
application_transport 방송 네트워크 또는 통신 네트워크를 이용한 애플리케이션 프로그램 서비스 관련 데이터 또는 파일 전송에 대한 상세 정보.
application_priority 애플리케이션 프로그램 서비스 우선 순위
application_control_code 애플리케이션 프로그램 서비스의 생명 주기 (e.g., AutoStart/Present/Kill/Suspend/Prefetch/Destroy/Disabled 등). 생명 주기의 의미는 ETSI TS 102 809 규격에 따름
application_type 애플리케이션 프로그램 서비스 종류
AI_ descriptor_length
for (i = 0; i < N6; ++i)
AI_ descriptor_bytes 애플리케이션 프로그램 서비스 디스크립터
}
}
후술되는 실시예에서, 애플리케이션 프로그램 서비스에 관련된 정보는, MMT 패키지에 관련된 시그널링 메시지인 MPT 메시지를 통해 전송될 수 있다. 구체적으로 MPT 메시지는 MMT 패키지에 애플리케이션 프로그램 서비스가 존재하는지 유무를 알려주는 디스크립터를 포함한다. 단말은 MMT로 전송되는 방송 서비스를 재생하기 위해서는 반드시 MPT 메시지를 수신해야 되며 따라서 애플리케이션 프로그램 서비스의 유무에 대한 디스크립터를 MPT 메시지에 포함시킴으로써 단말에서는 좀 더 빨리 애플리케이션 프로그램 서비스의 존재 유무를 확인할 수 있다.
MPT 메시지를 통해 MMT 패키지 내에 애플리케이션 프로그램 서비스가 존재한다고 파악이 되면, 단말은 앞서 설명한 바와 같은 AIT 메시지를 수신함으로써 애플리케이션 프로그램 서비스에 관련된 상세 정보를 획득할 수 있다. MPT 메시지는, 단순히 애플리케이션 프로그램 서비스의 존재 유무만을 알려주는 것에서 벗어나, 필요에 따라 AIT에 포함되어 전송되는 정보 중에서 단말에게 우선적으로 제공하고자 하는 정보를 추가적으로 포함할 수 있다. 상기 우선적으로 제공하고자 하는 정보는 단말의 성능 개선 또는 QoE(Quality of Experience) 개선 등에 도움이 되는 정보가 될 수 있다.
하기의 <표 5>는 MPT 메시지에 포함될 수 있는 디스크립터인 application_service_descriptor의 상세 포맷의 일 예를 나타낸 것이다.
신택스 비트수 포맷
application_service_descriptor() {
descriptor_tag 16 uimsbf
descriptor_length 8 uimsbf
application_service_available 1 bslbf
}
여기서 descriptor_tag 필드는 inband_event_descriptor 필드를 식별할 수 있는 태그를 나타내며, descriptor_length 필드는 inband_event_descriptor 필드의 크기를 나타내고, application_service_descriptor 필드는 패키지 내에 애플리케이션 프로그램 서비스의 존재 유무를 알려준다. 상기 application_service_descriptor 필드의 값이 0인 경우 애플리케이션 프로그램 서비스가 없음을 의미하며, 1인 경우 애플리케이션 프로그램 서비스가 존재함을 의미하고, 상기 애플리케이션 프로그램 서비스에 관련된 상세 정보는 AIT 메시지를 통해 전송된다.
2) 이벤트 정보의 전송
이벤트 정보는 방송 프로그램 내에서 해당 이벤트의 발생 시점을 미리 알 수 있는지 여부에 따라 크게 두 가지 방식으로 전송될 수 있다. 첫번째로, 녹화 방송과 같이 특정 이벤트가 발생하는 시점을 미리 알 수 있는 경우에는 정적 이벤트 전송 방식이 사용되며, 두번째로, 생방송과 같이 특정 이벤트가 발생하는 시점을 미리 알 수 없는 경우 동적 이벤트 전송 방식이 사용된다. 이벤트 정보는 애플리케이션 프로그램 서비스에게 통보된다.
일 실시예로서 이벤트 정보는 MMT 시그널링 채널을 통해 전송되는 MMT 시그널링 메시지, 즉 AEI (Application Event Information) 메시지를 통해 전달될 수 있다. AEI 메시지는 정적 이벤트 및 동적 이벤트 전송에 모두 사용될 수 있다. 동적 이벤트의 경우 이벤트 정보는 해당 이벤트가 발생되는 미디어 데이터, 즉 MPU 내에 포함되어 전송될 수도 있다.
하기 <표 6> 및 <표 7>은 이벤트 정보를 포함하는 MMT 시그널링 메시지, 즉 AEI 메시지와 AEI 메시지에 포함되는 AE 테이블의 상세 포맷의 일 예를 나타낸 것이다.
신택스 비트수 포맷
AEI_message {
message_id 16 uimsbf
version 8 uimsbf
length 16 uimsbf
extension {
}
message_payload {
AE_table()
}
}
여기서 message_id 필드는, AEI 메시지의 ID를 나타내고, version 필드는 AEI 메시지의 버전을 나타내고, length 필드는 AEI 메시지의 바이트 크기로서, length 필드의 다음 위치에서부터 AEI 메시지의 끝까지의 길이를 나타낸다. AE_table() 필드는 AE 테이블을 포함한다.
일 실시예로서 AEI 메시지는 extension 부분에 AEI 메시지가 적용되는 서비스를 식별하기 위한 식별자를 더 포함할 수 있다. 또한 상기 AEI 메시지를 식별하기 위한 URI의 존재 유무를 나타내기 위한 1 비트 플래그가 더 포함될 수 있으며, 상기 1 비트 플래그가 온되어 있을 경우 URI를 나타내는 필드가 AEI 메시지에 더 포함될 수 있다.
신택스 비트수 포맷
AE_table {
table_id 16 uimsbf
version 8 uimsbf
length 16 uimsbf
reserved 111111 6 bslbf
number_of_app_events N1 8 uimsbf
for (i=0; i<N1;++i) {
AE_descriptor()
}
}
여기서 table_id 필드는 AE 테이블의 ID를 나타낸다. version 필드는 AE 테이블의 버전을 나타내고, length 필드는 AE 테이블의 바이트 크기로서, length 필드의 다음 위치에서 AE 테이블의 끝까지의 크기를 나타낸다. number_of_app_events 필드는 AE 테이블에 포함된 이벤트들의 개수를 나타내고, AE_descriptor() 필드는 각 이벤트의 상세 정보를 포함한다.
이벤트의 상세 정보는 AE_descriptor() 디스크립터에 저장되며, 이벤트와 연계된 애플리케이션 프로그램 서비스 ID, 이벤트가 적용되는 시간 및 기간, 이벤트 동작 등 이벤트와 관련된 다양한 정보를 포함할 수 있다. 다음 <표 8>은 AE_descriptor()의 일 예를 나타낸 것이다.
신택스 비트수 포맷
AE_descriptor() {
descriptor_tag 16 uimsbf
descriptor_length 8 uimsbf
application_identifier()
scheme_id_uri_length N1 8 uimsbf
for (i=0;i<N1;++i)
scheme_id_uri_byte 8 uimsbf
event_value_length N2 8 Uimsbf
for (i=0;i<N2;++i)
event_value_byte 8 uimsbf
event_id 32 uimsbf
event_presentation_time 64 uimsbf
event_duration 32 uimsbf
event_data
}
여기서 descriptor_tag 필드는 AE_descriptor()를 식별할 수 있는 태그를 의미하고, descriptor_length 필드는 AE_descriptor()의 크기를 의미하며, application_identifier() 필드는 이벤트가 적용될 애플리케이션의 고유 ID이다. 다음 <표 9>는 application_identifier() 필드의 상세 포맷의 일 예를 나타낸 것이다.
신택스 비트수 포맷
application_identifier() {
organization_id 32 uimbsf
application_id 16 uimbsf
}
여기서 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 필드는 이벤트 내용을 나타낸다.
일 실시예로서, 이벤트 정보는 미디어 데이터를 통해 전달될 수 있다.
MMT 전송 프로토콜에서 미디어 데이터는 MPU에 포함되어 전송되며, MPU는 ISOBMFF 구조를 따른다. 이벤트 정보는 MPU 내의 evti 박스에 포함될 수 있으며, 상기 evti 박스의 상세 포맷의 일 예는 다음과 같다.
Box Type: "evti"
Container: MPU
Mandatory: No
Quantity: Zero or more
Syntax:
aligned (8) class EventInformationBox extends FullBox('evti', version=0, flags=0) {
string scheme_id_uri
string event_value
unsigned int(32) event_id
unsigned int(32) event_presentation_time_delta
unsigned int(32) event_duration
unsigned int(32) event_data
string 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를 나타낸다.
일 실시예로서, 이벤트 정보는 특정 애셋의 MPU를 통해 전송되며, MMT 시그널링 정보는 상기 애셋의 MPU 내에 이벤트 정보가 내재되어 있음을 알리는데 사용될 수 있다. 이를 위해 MMT 패키지 정보를 전송하는 MP(MMT Package) 테이블은 애셋 레벨에서 사용되는 디스크립터인 inband_event_descriptor를 포함한다. 단말은 MP 테이블을 통해 inband_event_descriptor를 수신하여, 특정 애셋의 MPU 내에 이벤트 정보가 내재되어 전송되고 있음을 확인하면, 상기 애셋의 MPU를 수신하고 상기 MPU 내의 evti 박스로부터 이벤트 정보를 추출하게 된다. 하기 <표 10>은 inband_event_descriptor의 상세 포맷의 일 예를 나타낸 것이다.
신택스 비트수 포맷
inband_event__descriptor() {
descriptor_tag 16 Uimsbf
descriptor_length 8 Uimsbf
scheme_id_uri_length N1 8 Uimsbf
for (i=0;i<N1;++i)
scheme_id_uri_byte 8 Uimsbf
event_value_length N2 8 Uimsbf
for (i=0;i<N2;++i)
event_value_byte 8 Uimsbf
}
여기서 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에 의해 결정된다.
도 6은 본 발명의 일 실시예에 따라 MMT 시그널링 메시지를 이용한 이벤트 정보의 처리 절차를 나타낸 흐름도이다.
도 6을 참조하면, 과정 605에서 단말은 사용자에 의한 서비스의 선택 입력을 수신하고, 과정 610에서 상기 서비스와 관련된 MMT 시그널링 메시지의 수신을 모니터링하고 수신된 MMT 시그널링 메시지를 파싱한다. 과정 615에서 단말은 상기 MMT 시그널링 메시지에 AIT 메시지가 포함되어 있는지 확인하고, AIT 메시지가 없을 경우 과정 620에서 상기 선택된 서비스의 비디오/오디오 스트림을 재생한다. 반면 AIT 메시지가 존재할 경우, 과정 625에서 단말은 상기 AIT 메시지에 포함된 AI 테이블의 내용을 이용하여 애플리케이션 프로그램 서비스와 관련된 데이터를 수신한다. 단말은 상기 AI 테이블에 포함된 애플리케이션 프로그램의 속성들 및 사용자 선택 사항에 따라, 애플리케이션 프로그램 서비스에 관련된 데이터의 수신 시작 시간, 애플리케이션 프로그램 서비스의 즉시 실행 여부 등을 결정할 수 있다.
과정 630에서 단말은 이벤트 정보를 저장한 시그널링 메시지인 AEI 메시지가 수신되는지 판단하고, 상기 AEI 메시지에 포함되는 AE 테이블로부터 이벤트 적용 시간에 대한 정보를 획득하여 상기 이벤트 적용 시간에 도달하였는지를 판단한다. 상기 이벤트 적용 시간에 도달한 경우, 과정 635에서 해당하는 이벤트를 바탕으로 애플리케이션 프로그램 서비스를 제어(일 예로 개시 혹은 종료)한다. 상기 이벤트 적용 시간에 도달하기 전까지 단말은 과정 620에서 서비스를 재생할 수 있다.
도 7은 본 발명의 일 실시예에 따라 MPU를 이용한 이벤트 정보의 처리 절차를 나타낸 흐름도이다.
도 7을 참조하면, 과정 705에서 단말은 사용자에 의한 서비스의 선택 입력을 수신하고, 과정 710에서 상기 서비스와 관련된 MMT 시그널링 메시지의 수신을 모니터링하고 수신된 MMT 시그널링 메시지를 파싱한다. 과정 715에서 단말은 상기 MMT 시그널링 메시지에 AIT 메시지가 포함되어 있는지 확인하고, AIT 메시지가 없을 경우 과정 730에서 상기 선택된 서비스의 비디오/오디오 스트림을 재생한다. 반면 AIT 메시지가 존재할 경우, 과정 735에서 단말은 상기 AIT 메시지에 포함된 AI 테이블의 내용을 이용하여 애플리케이션 프로그램 서비스와 관련된 데이터를 수신한다. 단말은 상기 AI 테이블에 포함된 애플리케이션 프로그램의 속성들 및 사용자 선택 사항에 따라, 애플리케이션 프로그램 서비스에 관련된 데이터의 수신 시작 시간, 애플리케이션 프로그램 서비스의 즉시 실행 여부 등을 결정할 수 있다.
한편, 과정 715에서 단말은 상기 MMT 시그널링 메시지를 기반으로 MPU 내에 이벤트 정보가 내재하여 전송되는지를 확인한다. 즉, 단말은 MMT 시그널링 메시지 내의 MP 테이블에 포함된 애셋 레벨 디스크립터를 분석하여 해당 애셋을 전송하는 MPU 내에 이벤트 정보가 포함되는지 여부를 확인한다. 만일 상기 애셋 레벨 디스크립터가 MPU 내에 이벤트 정보가 포함됨을 지시하는 경우, 과정 720에서 단말은 해당 애셋의 MPU를 수신할 때마다 단말은 MPU에서 이벤트 정보를 추출하여 저장한다. 과정 740에서 단말은 서비스를 재생하는 중 주기적으로 이벤트 적용 시간에 도달하였는지를 확인한다. 일 예로 상기 이벤트 적용 시간에 대한 정보는 AEI 메시지 내의 AE 테이블로부터 획득될 수 있다. 상기 이벤트 적용 시간에 도달한 경우, 과정 745에서 단말은 해당하는 이벤트를 적용하여 애플리케이션 프로그램 서비스를 제어한다.
일 실시 예에서 시그널링 테이블 및 디스크립터들은 다음 <표 11>과 같이 구성될 수 있는 mmt_atsc3_message()로 캡슐화되어 MMTP의 Signaling Message 모드로 전송될 수 있다.
Syntax No. of Bits Format
mmt_atsc3_message() {
message_id 16 uimsbf
version 8 uimsbf
length 32 uimsbf
message payload {
service_id 16 uimsbf
atsc3_message_content_type 16 uimbsf
atsc3_message_content_version 8 uimbsf
atsc3_message_content_compression 8 uimbsf
URI_length 8 uimbsf
for (i=0;i< URI_length;i++) {
URI_byte 8 uimsbf
}
atsc3_message_content_length 32 uimsbf
for (i=0;i<atsc3_message_content_length;i++) {
atsc3_message_content_byte 8 uimsbf
}
for (i=0;i<length-10-URI_length-atsc3_message_content_length) {
reserved 8 uimsbf
}
}
}
상기 <표 11>에서 각 필드의 의미는 하기와 같다.
message_id - mmt_atsc3_message()임을 식별하기 위한 16-bit 식별자
version - mmt_atsc3_message()의 version을 식별하기 위한 8-bit 식별자
length - mmt_atsc3_message()의 byte 단위 길이를 나타내는 32-bit 필드. 상기 mmt_atsc3_message()의 길이는 length field의 다음 바이트부터 mmt_atsc3_message()의 마지막 바이트까지의 바이트 수 일수 있다.
service_id - mmt_atsc3_message()의 payload로 전송되는 정보가 적용되는 서비스를 식별하기 위한 16-bit 식별자. 후술할 USD의 atsc:serviceId attribute와 동일한 값을 설정한다.
atsc3_message_content_type - mmt_atsc3_message()의 payload로 전송되는 정보의 종류를 식별하기 위한 16-bit 식별자. 일 예로 atsc3_message_content_type 필드는 다음 <표 12>와 같은 값을 사용할 수 있다.
atsc3_message_content_type Meaning
0x0000 Reserved
0x0001 userServiceDescription
0x0002 MPD
0x0003 Application Information Table
0x0004 Application Event Information
0x0005 Video Stream Properties Descriptor
0x0006 ATSC Staggercast Descriptor()
0x007~0xFFFF Reserved 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_compression - mmt_atsc3_message()의 message payload에 포함된 atsc3_message_content_byte에 적용된 압축 방식을 나타내는 8-bit 필드.
URI_length - 상기 message payload를 식별하기 위하여 사용되는 URI의 길이를 나타내는 8-bit필드. URI를 제공하지 않을 경우에는 0의 값을 가진다.
URI_byte - 상기 message payload를 식별하기 위하여 사용되는 URI의 각 바이트를 나타내는 8-bit 필드. UTF-8 캐릭터로 표현되며, terminating null character는 포함하지 않는다.
atsc3_message_content_byte - message payload로 전송되는 정보의 각 바이트를 나타내는 8- bit 필드
상기 <표 10>에 나타낸 mmt_atsc3_message()는 XML, binary 형식을 포함하는 모든 형식의 시그널링 정보를 message payload로 전송할 수 있으며, 각 시그널링 정보의 형식은 상기 atsc3_message_content_type을 사용하여 판별할 수 있다.
일의 실시 예에 따라 상술한 inband_event_descriptor가 상기 <표 11>의 mmt_atsc3_message()의 payload로 전송될 경우에, inband_event_descriptor는 다음 <표 13>과 같은 형식을 가질 수 있다.
신택스 비트수 포맷
inband_event__descriptor() {
descriptor_tag 16 Uimsbf
descriptor_length 8 Uimsbf
number_of_assets N1 8 Uimsbf
for (i=0;i<N1;++i) {
asset_id_length N2 8 Uimsbf
for (j=0;j<N2;++j) {
asset_id_byte 8 Uimsbf
}
scheme_id_uri_length N3 8 Uimsbf
for (j=0;j<N3;++j) {
scheme_id_uri_byte 8 Uimsbf
}
event_value_length N4 8 Uimsbf
for (j=0;i<N4;++j) {
event_value_byte 8 Uimsbf
}
}
}
여기서 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에 의해 결정된다.
일 실시예로서, 이벤트 정보는 특정 애셋의 MPU를 통해 전송되며, MMT 시그널링 정보는 상기 애셋의 MPU 내에 이벤트 정보가 내재되어 있음을 알리는데 사용될 수 있다. 이를 위해 mmt_atsc3_message()이 애셋 레벨에서 사용되는 디스크립터인 inband_event_descriptor를 페이로드에 포함하여 전송한다. 단말은 mmt_atsc3_message()를 통해 inband_event_descriptor를 수신하여, 특정 애셋의 MPU 내에 이벤트 정보가 내재되어 전송되고 있음을 확인하면, 상기 애셋의 MPU를 수신하고 상기 MPU 내의 evti 박스로부터 이벤트 정보를 추출하게 된다.
본 발명의 다양한 실시예들은 특정 관점에서 컴퓨터 리드 가능 기록 매체(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)들은 본 발명이 적용되는 분야에서 숙련된 프로그래머들에 의해 쉽게 해석될 수 있다.
또한 본 발명의 다양한 실시예들에 따른 장치 및 방법은 하드웨어, 소프트웨어 또는 하드웨어 및 소프트웨어의 조합의 형태로 실현 가능하다는 것을 알 수 있을 것이다. 이러한 소프트웨어는 예를 들어, 삭제 가능 또는 재기록 가능 여부와 상관없이, ROM 등의 저장 장치와 같은 휘발성 또는 비휘발성 저장 장치, 또는 예를 들어, RAM, 메모리 칩, 장치 또는 집적 회로와 같은 메모리, 또는 예를 들어 콤팩트 디스크(compact disk: CD), DVD, 자기 디스크 또는 자기 테이프 등과 같은 광학 또는 자기적으로 기록 가능함과 동시에 기계(예를 들어, 컴퓨터)로 읽을 수 있는 저장 매체에 저장될 수 있다. 본 발명의 다양한 실시예들에 따른 방법은 제어부 및 메모리를 포함하는 컴퓨터 또는 휴대 단말에 의해 구현될 수 있고, 이러한 메모리는 본 발명의 실시예들을 구현하는 명령들을 포함하는 프로그램 또는 프로그램들을 저장하기에 적합한 기계로 읽을 수 있는 저장 매체의 한 예임을 알 수 있을 것이다.
따라서, 본 발명은 본 명세서의 청구항에 기재된 장치 또는 방법을 구현하기 위한 코드를 포함하는 프로그램 및 이러한 프로그램을 저장하는 기계(컴퓨터 등)로 읽을 수 있는 저장 매체를 포함한다. 또한, 이러한 프로그램은 유선 또는 무선 연결을 통해 전달되는 통신 신호와 같은 임의의 매체를 통해 전자적으로 이송될 수 있고, 본 발명은 이와 균등한 것을 적절하게 포함한다
또한 본 발명의 다양한 실시예들에 따른 장치는 유선 또는 무선으로 연결되는 프로그램 제공 장치로부터 프로그램을 수신하여 저장할 수 있다. 프로그램 제공 장치는 프로그램 처리 장치가 기 설정된 컨텐츠 보호 방법을 수행하도록 하는 지시들을 포함하는 프로그램, 컨텐츠 보호 방법에 필요한 정보 등을 저장하기 위한 메모리와, 그래픽 처리 장치와의 유선 또는 무선 통신을 수행하기 위한 통신부와, 그래픽 처리 장치의 요청 또는 자동으로 해당 프로그램을 송수신 장치로 전송하는 제어부를 포함할 수 있다.
본 명세서와 도면에 개시된 본 발명의 실시 예들은 본 발명의 기술 내용을 쉽게 설명하고, 본 발명의 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 또한 앞서 설명된 본 발명에 따른 실시예들은 예시적인 것에 불과하며, 당해 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 범위의 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 다음의 특허청구범위에 의해서 정해져야 할 것이다.

Claims (10)

  1. 멀티미디어 시스템에서 송신 장치를 동작시키는 방법으로서,
    액션이 발생할 것임을 나타내는 어플리케이션으로의 통지를 포함하는 이벤트와 관련된 이벤트 정보를 전송하는 단계를 포함하고,
    상기 이벤트 정보가 DASH(dynamic adaptive streaming over hypertext transfer protocol)-기반 서비스들에 대한 제1 이벤트를 나타내는 경우, 상기 이벤트 정보는 MPD(media presentation description)에 포함되는 제1 이벤트 정보 박스 내에서 전송되고,
    상기 이벤트 정보가 MMT(moving picture experts group media transport)-기반 서비스들에 대한 제2 이벤트를 나타내는 경우, 상기 이벤트 정보는 MMT 페이로드 내의 MPU(media processing unit)에 포함되는 제2 이벤트 정보 박스 내에서 전송되고, 그리고
    상기 이벤트 정보가 상기 MMT-기반 서비스들에 대한 상기 제2 이벤트를 나타내는 경우, 상기 이벤트 정보는 상기 이벤트의 식별자(ID), 상기 이벤트의 시작 시간, 상기 이벤트의 지속 시간, 및 상기 이벤트의 이벤트 데이터를 포함하는,
    방법.
  2. 제1 항에 있어서,
    상기 이벤트의 시작 시간은 상기 MPU가 표현되는 시간과 상기 이벤트가 상기 MPU 내에서 적용되는 시간과의 차이를 포함하는,
    방법.
  3. 제1 항에 있어서,
    상기 이벤트 데이터는 상기 액션을 포함하는,
    방법.
  4. 제1 항에 있어서,
    상기 이벤트 정보가 상기 MMT-기반 서비스들에 대한 상기 제2 이벤트를 나타내는 경우, 상기 MPU 내의 상기 이벤트 정보의 존재를 나타내는 제1 정보를 전송하는 단계를 더 포함하는,
    방법.
  5. 멀티미디어 시스템에서의 송신 장치로서,
    프로세서; 및
    명령들을 저장하도록 구성되는 메모리를 포함하고,
    상기 명령들은, 상기 프로세서에 의해 실행되는 경우, 상기 송신 장치로 하여금 액션이 발생할 것임을 나타내는 어플리케이션으로의 통지를 포함하는 이벤트와 관련된 이벤트 정보를 전송하도록 하고,
    상기 이벤트 정보가 DASH(dynamic adaptive streaming over hypertext transfer protocol)-기반 서비스들에 대한 제1 이벤트를 나타내는 경우, 상기 이벤트 정보는 MPD(media presentation description)에 포함되는 제1 이벤트 정보 박스 내에서 전송되고,
    상기 이벤트 정보가 MMT(moving picture experts group media transport)-기반 서비스들에 대한 제2 이벤트를 나타내는 경우, 상기 이벤트 정보는 MMT 페이로드 내의 MPU(media processing unit)에 포함되는 제2 이벤트 정보 박스 내에서 전송되고, 그리고
    상기 이벤트 정보가 상기 MMT-기반 서비스들에 대한 상기 제2 이벤트를 나타내는 경우, 상기 이벤트 정보는 상기 이벤트의 식별자(ID), 상기 이벤트의 시작 시간, 상기 이벤트의 지속 시간, 및 상기 이벤트의 이벤트 데이터를 포함하는,
    송신 장치.

  6. 제5 항에 있어서,
    상기 이벤트의 시작 시간은 상기 MPU가 표현되는 시간과 상기 이벤트가 상기 MPU 내에서 적용되는 시간과의 차이를 포함하는,
    송신 장치.
  7. 제5 항에 있어서,
    상기 이벤트 데이터는 상기 액션을 포함하는,
    송신 장치.
  8. 제5 항에 있어서,
    상기 명령들은, 상기 프로세서에 의해 실행되는 경우, 상기 송신 장치로 하여금, 상기 이벤트 정보가 상기 MMT-기반 서비스들에 대한 상기 제2 이벤트를 나타내는 경우, 상기 MPU 내의 상기 이벤트 정보의 존재를 나타내는 제1 정보를 전송하도록 하는,
    송신 장치.
  9. 삭제
  10. 삭제
KR1020150158360A 2015-06-23 2015-11-11 디지털 방송 서비스 방법 및 장치 KR102473346B1 (ko)

Priority Applications (9)

Application Number Priority Date Filing Date Title
US15/190,766 US10306297B2 (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
JP2017566110A JP6728246B2 (ja) 2015-06-23 2016-06-23 マルチメディアシステムにおける信号送受信方法及び装置
CN202011447415.5A CN112738645B (zh) 2015-06-23 2016-06-23 用于在多媒体系统中发送和接收信号的方法和装置
CN201680036782.1A CN107787586B (zh) 2015-06-23 2016-06-23 用于在多媒体系统中发送和接收信号的方法和装置
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 (ko) 2015-06-23 2022-11-29 디지털 방송 서비스 방법 및 장치

Applications Claiming Priority (2)

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

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020220162229A Division KR102598237B1 (ko) 2015-06-23 2022-11-29 디지털 방송 서비스 방법 및 장치

Publications (2)

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

Family

ID=57810628

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020150158360A KR102473346B1 (ko) 2015-06-23 2015-11-11 디지털 방송 서비스 방법 및 장치
KR1020220162229A KR102598237B1 (ko) 2015-06-23 2022-11-29 디지털 방송 서비스 방법 및 장치

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020220162229A KR102598237B1 (ko) 2015-06-23 2022-11-29 디지털 방송 서비스 방법 및 장치

Country Status (4)

Country Link
EP (1) EP3314906A4 (ko)
JP (1) JP6728246B2 (ko)
KR (2) KR102473346B1 (ko)
CN (2) CN112738645B (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102546152B1 (ko) * 2017-02-15 2023-06-22 한국전자통신연구원 고정/이동방송 융합형 3DTV에서 화질 개선을 위한 부가 데이터(Video Enhancement Information, VEI) 시그널링 방법 및 장치
CN109818926B (zh) * 2018-12-25 2020-10-09 西安长远电子工程有限责任公司 一种无需预先规划的通信方法
KR102176098B1 (ko) * 2019-01-28 2020-11-10 김영언 음원 인식 방법 및 장치
CN113961156A (zh) * 2020-07-20 2022-01-21 北京字节跳动网络技术有限公司 多屏显示方法、装置、系统、电子设备及计算机介质
CN113114655A (zh) * 2021-04-07 2021-07-13 深圳市瑞驰信息技术有限公司 一种基于tcp/ip的二进制数据交互协议设计方法

Citations (5)

* 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
WO2013080450A1 (ja) 2011-12-02 2013-06-06 ソニー株式会社 情報処理装置、情報処理方法およびプログラム
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 (ja) 2012-09-20 2014-03-27 ソニー株式会社 受信装置、受信方法、放送装置、放送方法、プログラム、および連動アプリケーション制御システム
JP2015015706A (ja) * 2013-07-03 2015-01-22 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America データ送信方法、データ再生方法、データ送信装置およびデータ再生装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070049042A (ko) * 2005-11-07 2007-05-10 삼성전자주식회사 휴대 방송 시스템에서 서비스 가이드 컨텐츠 및 통지이벤트 정보의 전송 방법 및 절차
JP5671297B2 (ja) * 2009-11-16 2015-02-18 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation Imsネットワークを介してマルチメディア・サービスを最適化するための方法及びシステム
US9716920B2 (en) * 2010-08-05 2017-07-25 Qualcomm Incorporated Signaling attributes for network-streamed video data
KR20120084233A (ko) * 2011-01-19 2012-07-27 삼성전자주식회사 엠엠티 제어 계층을 이용한 위젯/어플리케이션 명령어 전송 방법
CN107634961B (zh) * 2011-01-19 2021-09-03 三星电子株式会社 用于在广播系统中配置控制消息的装置及方法
KR20120119790A (ko) * 2011-04-22 2012-10-31 삼성전자주식회사 미디어 데이터 전송 방법 및 장치와 미디어 데이터 수신 방법 및 장치
CN102217322B (zh) * 2011-05-27 2013-10-09 华为技术有限公司 媒体发送方法、媒体接收方法和客户端及系统
KR101946861B1 (ko) * 2011-09-21 2019-02-13 삼성전자주식회사 멀티미디어 방송 서비스의 미디어 데이터 동기화 방법 및 장치
KR20130085987A (ko) * 2012-01-20 2013-07-30 한국전자통신연구원 이종망 네트워크에서 미디어 프래그먼트 유닛으로 나누어진 액세스 유닛을 가지는 미디어 데이터를 전송하는 방법
CN104429093B (zh) * 2012-07-09 2018-01-05 华为技术有限公司 超文本传输协议动态自适应流媒体客户端及其会话管理实施方法
JP6616064B2 (ja) * 2013-07-25 2019-12-04 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 送信方法および受信方法
WO2015029401A1 (ja) * 2013-08-29 2015-03-05 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 送信方法および受信方法ならびに送信装置および受信装置
US9930086B2 (en) * 2013-10-28 2018-03-27 Samsung Electronics Co., Ltd. Content presentation for MPEG media transport

Patent Citations (5)

* 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
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
WO2013080450A1 (ja) 2011-12-02 2013-06-06 ソニー株式会社 情報処理装置、情報処理方法およびプログラム
WO2014045893A1 (ja) 2012-09-20 2014-03-27 ソニー株式会社 受信装置、受信方法、放送装置、放送方法、プログラム、および連動アプリケーション制御システム
JP2015015706A (ja) * 2013-07-03 2015-01-22 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America データ送信方法、データ再生方法、データ送信装置およびデータ再生装置

Also Published As

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

Similar Documents

Publication Publication Date Title
JP6441521B2 (ja) 放送システムにおける制御メッセージ構成装置及び方法
CN107113460B (zh) 针对空中广播媒体数据的会话描述信息
KR102598237B1 (ko) 디지털 방송 서비스 방법 및 장치
KR101594351B1 (ko) 다수의 소스들로부터의 멀티미디어 데이터의 스트리밍
US9661371B2 (en) Method for transmitting a broadcast service, apparatus for receiving same, and method for processing an additional service using the apparatus for receiving same
EP2784954A1 (en) Method for linking mmt media and dash media
US11615778B2 (en) Method for receiving emergency information, method for signaling emergency information, and receiver for receiving emergency information
US10469919B2 (en) Broadcast signal transmission apparatus, broadcast signal reception apparatus, broadcast signal transmission method, and broadcast signal reception method
US9998798B2 (en) Reception device, reception method, transmission device, and transmission method
US10873495B2 (en) Apparatus and method for transmitting or receiving broadcast signal
US10595080B2 (en) Method and apparatus for transmitting and receiving signal in multimedia system
KR20170138994A (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2012071931A1 (zh) 一种分段节目中动态插播节目的方法及系统
US11444885B2 (en) Transmission device, transmission method, reception device, and reception method
US11310094B2 (en) Apparatus and method for transmitting or receiving broadcast signal
KR20160033027A (ko) 멀티미디어의 전송 또는 수신 방법 및 그 장치
CN107005745B (zh) 封装视听内容流的方法和设备

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