KR20200067945A - 멀티미디어 서비스 송수신 방법 및 장치 - Google Patents

멀티미디어 서비스 송수신 방법 및 장치 Download PDF

Info

Publication number
KR20200067945A
KR20200067945A KR1020207016091A KR20207016091A KR20200067945A KR 20200067945 A KR20200067945 A KR 20200067945A KR 1020207016091 A KR1020207016091 A KR 1020207016091A KR 20207016091 A KR20207016091 A KR 20207016091A KR 20200067945 A KR20200067945 A KR 20200067945A
Authority
KR
South Korea
Prior art keywords
package
information
asset
pgt
descriptor
Prior art date
Application number
KR1020207016091A
Other languages
English (en)
Other versions
KR102252402B1 (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 KR1020217014045A priority Critical patent/KR102331705B1/ko
Priority claimed from PCT/KR2012/008383 external-priority patent/WO2013055179A1/en
Publication of KR20200067945A publication Critical patent/KR20200067945A/ko
Application granted granted Critical
Publication of KR102252402B1 publication Critical patent/KR102252402B1/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/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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23605Creation or processing of packetized elementary streams [PES]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/76Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet
    • H04H60/81Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet characterised by the transmission system itself
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2362Generation or processing of Service Information [SI]
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2381Adapting the multiplex stream to a specific network, e.g. an Internet Protocol [IP] network
    • 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/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

멀티미디어 컨텐츠를 수신하기 위한 방법이 개시된다. 본 개시의 일 실시예에 따른 멀티미디어 컨텐츠를 수신하기 위한 방법은, 상기 멀티미디어 컨텐츠와 관련된 패키지에 대한 정보를 제공하기 위한 제어 메시지를 수신하는 단계, 및 상기 수신된 제어 메시지를 프로세싱하는 단계를 포함하고, 상기 제어 메시지는, 복수의 테이블들을 포함하는 제어 메시지 페이로드, 상기 제어 메시지의 식별 정보, 상기 제어 메시지의 길이 정보, 상기 제어 메시지의 버젼 정보, 및 상기 복수의 테이블들의 수를 나타내는 정보를 포함하는 확장 정보를 포함하고, 상기 복수의 테이블들은 상기 복수의 테이블들에 포함되는 적어도 하나의 패키지 관련 테이블에 대한 정보를 제공하는 기본 테이블을 포함하고, 상기 적어도 하나의 패키지 관련 테이블은, 상기 패키지에 관련되는 적어도 하나의 어셋에 대한 정보를 제공하는 제1 테이블을 포함하고, 상기 제1 테이블은 상기 적어도 하나의 어셋 중의 어셋의 타입을 나타내는 어셋 타입 정보 및 어셋에 사용되는 클럭에 관한 정보를 제공하는 클럭 레퍼런스(clock reference) 플래그를 포함한다.

Description

멀티미디어 서비스 송수신 방법 및 장치{METHOD AND APPARATUS FOR TRANSMITTING AND RECEIVING MULTIMEDIA SERVICE}
본 발명은 멀티미디어 서비스를 제공하는 방법에 관한 것으로, 특히 이종망 환경에서 방송통신융합형 서비스를 제공하는 서비스 제공자가 자신이 제공하는 서비스에 대한 내역 정보를 전달하는 방법에 관한 것이다.
인터넷이 광대역으로 진화해 나감에 따라, 지상파, 위성, 케이블 등 전용 채널을 사용하는 기존 방송뿐만 아니라 일반 인터넷을 사용하여 멀티미디어를 편성에 의해 제공하는 인터넷 방송이 가능해지고 있다. 또한 기존 방송과 인터넷 방송이 보다 더 유기적으로 결합되어 다양한 서비스를 제공하는 방송통신융합형 멀티미디어 서비스가 현실적인 서비스로서 대두되고 있다.
방송 서비스 제공자(방송사)들은 전용 채널뿐만 아니라 인터넷을 통해서도 콘텐츠를 전달할 수 있으며, 심지어 전용 방송 채널 없이 인터넷만을 통해서 콘텐츠를 전달하는 방송 서비스 제공자도 등장하고 있다. 따라서 전용 채널을 사용하며 인터넷을 함께 사용하는 방송사든 인터넷만 사용하는 방송사든, 프로그램 콘텐츠와 함께 자신의 프로그램 편성 정보를 시청자들에게 전달함으로써, 시청자에게 자신들의 프로그램 콘텐츠를 홍보하고, 시청자로 하여금 계획성 있게 시청할 수 있도록 할 필요가 있다. 심지어 인터넷을 통해 '다시보기' 서비스를 제공함으로써, 시청자로 하여금 본 방송 시에 시청하지 못한 콘텐츠를 추후 시청할 수 있도록 할 수도 있다. 기존 방송에서는 이러한 유형의 정보를 전자프로그램안내(Electronic Program Guide, EPG)라 부르고 있으며, Digital Video Broadcasting (DVB) 시스템 표준의 경우, 북미 방식에서는 PSIP(Program and System Information Protocol), 유럽 방식에서는 SI(Service Information) 등으로 부르고 있다. 또 기존 디지털 TV 방식에서 널리 사용하고 있는 MPEG-2 시스템 표준에서는 이를 PSI(Program Specific Information)이라 부르고 있다. 북미 방식에서는 PSI와 PSIP을 함께 송출하도록 하고 있으나, PSIP만으로도 시청자에 의한 프로그램 선택이 가능하다. 유럽 방식에서는 PSI와 SI를 함께 송출하며, PSI만으로 프로그램 선택을 가능하게 할 수 있으나, SI를 통해 프로그램에 대한 여러 가지 안내 정보를 추가로 제공한다. 본 명세서에서는 이런 종류의 정보를 통칭하여 서비스 내역 정보(Service Specific Information, SSI)라 부르기로 한다.
전용 채널을 사용하는 기존 방송과는 달리, 인터넷 방송은 글로벌(global)하게 제공되므로 기존 방송의 지역성(regional property)을 뛰어 넘어, 이를 수신할 수 있는 수신기가 있는 곳이라면 세계 어디서나 인터넷을 통해 접근 가능하다. 따라서, 인터넷 방송의 경우, 북미, 유럽, 일본 등으로 크게 구분되는 기존 방송 표준의 지역성을 극복하기 위해서는 세계에서 유일무이한 단일 방식으로 제공되어야만 수신기의 복잡도가 불필요하게 증가하는 것을 방지할 수 있다. 이러한 관점에서, SSI 또한 단일 방식의 표준화를 필요로 한다.
미래의 방송통신융합형 방송 체계는 인터넷 중심으로 재편될 것으로 예상된다. 즉, 기존 방송 채널을 통한 프로그램 콘텐츠뿐만 아니라 인터넷을 통한 프로그램 콘텐츠에 대한 안내 정보까지 수신기가 읽어서 이해할 수 있는(machine-readable) 형식으로 SSI 내에 함께 담아 전달하며, 수신기는 이러한 SSI를 방송 채널 또는 인터넷을 통해서 획득하여 방송 수신 제어에 활용하고 필요에 따라 시청자가 읽을 수 있는 형태로 보여주게 될 것이다. 물론 전용 방송 채널을 사용하지 않는 인터넷 방송사는 당연히 인터넷을 통해 SSI를 전달하게 될 것이다.
그러므로, 인터넷을 포함한 이종망(heterogeneous network) 환경에서 방송통신융합형 서비스를 제공하는 서비스 제공자가 자신이 제공하는 서비스에 대한 내역 정보를 전달하기 위한 형식을 제공하는 장치 및 방법이 필요하다.
상기 정보는 본 기재의 이해를 돕기 위한 백그라운드 정보로써 표현된다. 본 발명에 대한 선행기술로써 적용할 수 있는지 여부에 대해서는 어떠한 결정, 어떠한 언급도 할 수 없다.
본 발명의 특징은 적어도 전술한 문제점 및/또는 단점을 해결하고, 이하에서 적어도 전술한 효과를 제공한다.
본 발명의 특징은 인터넷을 포함한 이종망 환경에서 방송통신융합형 서비스를 제공하는 서비스 제공자가 자신이 제공하는 서비스에 대한 내역 정보를 전달하기 위한 형식을 제공한다.
본 발명의 실시 예에 따른 멀티미디어 컨텐트를 수신하기 위한 방법은, 상기 멀티미디어 컨텐츠와 관련된 패키지에 대한 정보를 제공하기 위한 제어 메시지를 수신하는 단계, 및 상기 수신된 제어 메시지를 프로세싱하는 단계를 포함하고, 상기 제어 메시지는, 복수의 테이블들을 포함하는 제어 메시지 페이로드, 상기 제어 메시지의 식별 정보, 상기 제어 메시지의 길이 정보, 상기 제어 메시지의 버젼 정보, 및 상기 복수의 테이블들의 수를 나타내는 정보를 포함하는 확장 정보를 포함하고, 상기 복수의 테이블들은 상기 복수의 테이블들에 포함되는 적어도 하나의 패키지 관련 테이블에 대한 정보를 제공하는 기본 테이블을 포함하고, 상기 적어도 하나의 패키지 관련 테이블은, 상기 패키지에 관련되는 적어도 하나의 어셋에 대한 정보를 제공하는 제1 테이블을 포함하고, 상기 제1 테이블은 상기 적어도 하나의 어셋 중의 어셋의 타입을 나타내는 어셋 타입 정보 및 어셋에 사용되는 클럭에 관한 정보를 제공하는 클럭 레퍼런스(clock reference) 플래그를 포함한다.
다른 특징, 효과, 본 발명의 현저한 특징은 첨부된 도면과 함께 이하의 상세한 설명으로부터 당업자에게 명백해질 것이다.
본 발명에 따르면, 본 발명에서 제안하는 서비스 내역 정보를 제공하기 위한 형식을 적용하여 서비스 제공자가 자신이 제공하는 서비스에 대한 내역 정보를 제공함으로써 수신기가 서비스 내역 정보를 이용하여 시청자로 하여금 보고 싶은 방송 콘텐츠를 쉽게 선택할 수 있도록 한다.
도 1은 본 발명의 실시 예에 따라 전용 물리채널을 사용하는 기존 방송에서의 서비스 내역 및 시스템 안내 정보의 구조를 나타낸 도면;
도 2는 인터넷 방송에서의 서비스 내역 안내 정보의 구조를 나타낸 도면;
도 3은 본 발명의 실시예에 따른 SSI의 논리적 구조를 나타낸 도면;
도 4는 MPEG-2 TS 기반의 방송에서의 SSI 사용 예를 나타낸 도면;
도 5는 본 발명의 실시 예에 따른 S1 시그널링 구조를 나타내는 도면;
도 6 및 도 7은 본 발명의 실시 예에 따른 수신기에서 멀티미디어를 수신하는 동작을 보여주는 도면;
도 8은 본 발명의 실시 예에 따라 송신 장치의 구조도를 보여주는 도면; 및
도 9는 본 발명의 실시 예에 따라 수신 장치의 구조도를 보여주는 도면.
상기 도면 전반에 걸쳐 동일한 참조 번호는 동일한 구성 요소, 특징, 구조를 표현하기 위해 사용됨을 유의해야 한다.
첨부 도면을 참조하여 이하의 설명은 청구범위 및 그 등가물에 의해 정의된 발명의 실시 예들의 포괄적인 이해를 돕기 위해 제공된다. 그것은 그 이해를 돕기 위해 다양한 특정 세부 사항을 포함하고 있지만, 이들은 단지 예시적인 것으로 간주되어야한다. 따라서, 당업자는 다양한 변화 및 본 명세서에 기재된 실시 예들의 변형이 본 발명의 사상 및 범위를 벗어나지 않고 이루어질 수 있음을 인식 할 것이다. 또, 잘 알려진 구조 및 기능의 설명은 명확성 및 간결성을 위해 생략 될 수 있다.
이하의 설명 및 청구 범위에서 사용된 용어 및 단어는 서지 의미에 한정되는 것이 아니라, 단지 본 발명의 명확하고 일관성 있는 이해를 가능하게 하기 위해 발명자에 의해 사용된다. 따라서, 본 발명의 예시적인 실시 예의 설명은 첨부된 특허 청구 범위 및 그들의 등가물에 의해 정의된 바와 같이 본 발명을 제한하기 위한 목적이 아니고, 목적을 설명하기 위해 제공되어 당업자에게 명백할 것이다.
그것은 단수 형태 "a", "an" 및 "the" 복수의 지시 대상을 포함 그 문맥이 명백히 달리 지시하지 않는 것으로 이해되어야 한다. 따라서, 예를 들어, "구성 요소 표면 "에 대한 참조는 그러한 표면들 중 하나 이상에 대한 참조를 포함한다.
먼저 본 발명을 설명하기에 앞서 명세서에서 사용되는 용어를 다음과 같이 정의한다.
미디어 서비스 (media service): 예컨대, 오디오, 비디오, 이미지, 문자, 그래픽, 대화형 애플리케이션 등의 다양한 미디어 중 하나 이상의 미디어를 이용하여 정보를 전달하는 서비스
전면 미디어 서비스 (foreground media service): 비디오 서비스, 오디오 서비스, 전자프로그램안내 서비스, 푸시 VoD(Push Video on Demand) 서비스, 포털(portal) 서비스 등 한 시점에서 한 시청자가 선택하여 즐길 수 있도록 시청자에게 직접 노출된 유료 또는 무료 미디어 상품
후면 미디어 서비스 (background broadcast service): 예컨대, 파일 다운로드를 위한 캐루젤(carousel), 인터넷을 통한 사전 다운로드(pre-download) 등과 같이 전면 미디어 서비스를 보조하지만, 시청자에게 직접 노출되지 않는 미디어 전달 서비스
비디오 서비스 (video service): 비디오가 주가 되는 서비스로서, 이에 부수된 오디오가 반드시 제공되며, 다른 언어의 오디오, 자막, 대화형 애플리케이션, 기타 부가 데이터 등이 함께 제공될 수 있다.
오디오 서비스 (audio service): 오디오가 주가 되는 서비스로서, 이에 관련된 비디오 또는 이미지, 대화형 애플리케이션, 기타 부가 데이터가 제공될 수 있다.
대화형 애플리케이션 (interactive application): 비디오 또는 오디오 서비스 시청 중, 필요에 따라 호출되어 시청자에게 정보를 제공하고, 시청자의 반응을 전달받아 미디어 서비스를 제어하거나, 미디어 사업자의 서버로 정보를 전달하는 소프트웨어로서, 선언형(declarative) 및 절차형(procedural) 언어에 의한 소프트웨어를 통칭한다. 시청 중인 비디오 또는 오디오 서비스와 연관되어 미디어 사업자에 의해 호출되기도 하고, 시청 중이 미디어 서비스와 무관하게 미디어 사업자에 의해 호출되기도 한다. 또한 수신기 캐시에 이미 저장되어 시청자에게 인지된 대화형 애플리케이션은 시청자의 요구에 의해 호출되기도 한다.
정 미디어 (regular media): 미디어 서비스의 요건 상 반드시 제공하여야 하는 미디어. 예를 들어, 오디오 서비스의 오디오 또는 오디오가 부수된 비디오 서비스의 비디오와 오디오
부 미디어 (adjunct media): 미디어 서비스의 요건 상 반드시 제공하지 않아도 되나 필요에 따라 제공되는 미디어. 예를 들어, 웹 문서, 위젯, 대화형 애플리케이션, 오디오 클립, 비디오 클립, 그래픽, 문자, 이미지, 보조 미디어 구성요소 등. 부 미디어는 항상 정 미디어와 함께 소비되며, 독자적으로 소비될 수 없다.
미디어 구성요소 (media component): 미디어를 구성하는 요소. 예를 들어, 스테레오스코픽 비디오의 경우, 좌안 영상과 우안 영상. 또 다른 예로서, 5.1 채널 오디오의 경우, 각 채널 오디오는 미디어 구성요소이다.
보조 미디어 구성요소 (auxiliary media component): 독립적으로는 하나의 미디어를 구성하지 못하고, 다른 미디어 구성요소와 함께 어떤 미디어를 구성하는 미디어 구성요소. 예를 들어, 2D/3D 시간 혼합형 서비스에서 좌안 및 우안 영상 중, 좌안 영상이 2D 영상으로 항상 제공되는 상황에서, 스테레오스코픽 비디오 구간에서만 제공되는 우안 영상은 보조 미디어 구성요소이다.
애셋 (asset): 미디어 구성요소에 대한 부호화 데이터. 여기서 부호화는 압축 부호화, 표준 형식에 맞춘 부호화 등을 일컫는다.
정 애셋 (regular asset): 정 미디어의 미디어 구성요소에 대한 부호화 데이터. 여기서 부호화는 압축 부호화, 표준 형식에 맞춘 부호화 등을 일컫는다.
부 애셋 (adjunct asset): 부 미디어의 미디어 구성요소 또는 보조 미디어 구성요소에 대한 부호화 데이터. 여기서 부호화는 압축 부호화, 표준 형식에 맞춘 부호화 등을 일컫는다.
프로그램 (program): 미디어 서비스의 한 인스턴스(instance). 예를 들어, 하나의 논리적 방송 채널(논리 채널)의 내용 전체
프로그램 아이템 (program item): 프로그램 중 어떤 시구간의 내용. 예를 들어, 영화 한 편 내에 시작 광고, 중간 광고들, 마지막 광고가 섞여서 전송된다고 할 때, 광고를 포함한 영화에 해당하는 시구간의 내용. 여기서, 각 광고도 개별적인 프로그램 아이템이지만, 다른 프로그램 아이템에 포함된 내포형(embedded) 프로그램 아이템이다. 프로그램은 내포형이 아닌 프로그램 아이템(내포형 프로그램 아이템을 포함하고 있을 수 있음)들을 시간 축 상에서 연접한 결과이다.
패키지 (package): 프로그램 아이템에 대한 부호화 데이터로서, 애셋들과 이들에 대한 전송, 복호, 재생 등과 관련된 제어 정보로 구성된다.
주 애셋 (primary asset): 부 애셋에 대한 동기화 정보가 포함될 수 있는 정 애셋. 예를 들어, 비디오 스트림의 M 유닛의 부착 정보(attached information)로서 부 애셋의 동기화 및 제어 정보를 포함할 수 있다.
부착 정보 (attached information): 애셋에 대한 제어 정보, 설명 정보 등의 부가 정보를 의미한다. 부착 정보는 논리적 용어로서 실제로는 전달 계위 중 여러 계층의 헤더 내에 포함되며, 이때는 헤더 정보라 불린다.
스트림형 애셋 (stream asset): 비디오 스트림, 오디오 스트림과 같이 시간적으로 무한히 생성될 수 있는 미디어 압축 데이터 형태의 애셋
비스트림형 애셋 (non-stream asset): 스트림형 애셋에 해당하지 않는 애셋
M 유닛 (M-unit): 애셋의 차하위 구성요소. 스트림형 애셋의 M 유닛은 한 번에 미디어 복호기(media decoder)로 입력될 수 있는 최소 데이터 단위로서, 그 복호 결과는 미디어에 따라 한 시점에서 또는 어떤 시구간 동안 시현될 수 있다. 예를 들어, 비디오 스트림의 경우, 한 프레임을 압축한 결과가 한 M 유닛이 될 수 있으며, 오디오 스트림의 경우, 24 ms 동안의 오디오 샘플을 압축한 결과가 한 M 유닛이 될 수 있다.
논리 채널 (logical channel): 부호화된 하나의 프로그램을 전달하는 통로를 의미한다. 예를 들어, MPEG-2 TS(Transport Stream) 기반의 기존 디지털 TV 시스템에서 PMT(Program Map Table)에 의해 지정되는 데이터 전달 통로 또는 인터넷에서 출발지 주소(source address), 도착지 주소(destination address), 그리고 포트 번호(port number)에 의해 지정되는 데이터 전달 통로 등은 논리 채널에 해당한다.
물리 채널 (physical channel): 하나 이상의 논리 채널을 전달하는 통로를 의미한다. 예를 들어, 6 MHz의 대역폭을 갖는 지상파 TV 채널 또는 케이블 TV 채널, 위성 방송 채널, 인터넷 등은 물리 채널에 해당한다.
IP 애플리케이션 데이터 흐름 (IP application data flow): 하나의 IP 애플리케이션 데이터 흐름은 인터넷 상의 출발지 주소(source address), 도착지 주소(destination address), 그리고 IP 패킷의 내용을 처리할 애플리케이션을 지정하는 도착지 내에서의 포트 번호(port number)에 의해 지정된다.
애셋 통로 식별자 (APID, Asset Path IDentifier): 애셋 통로의 식별자(예컨대, 애셋을 실어 나르는 정보) . 하나의 IP 애플리케이션 데이터 흐름은 여러 애셋 통로로 구성되며, 각 애셋 통로는 APID에 의해 하나의 IP 애플리케이션 데이터 흐름 내에서 유일무이하게 식별된다.
애셋 모듈 식별자 (AMID, Asset Module IDentifier): 애셋이 여러 모듈로 나뉘어 전송되는 경우, 하나의 애셋 통로 내에서 이러한 애셋 모듈들을 식별하는 식별자이다. 예를 들어, 크기가 큰 표가 있다고 할 때, 이 표를 여러 부표(sub-table)로 나누었다고 하면, 전체 표를 하나의 애셋으로 지정한 경우, 각 부표는 애셋 모듈이 된다.
다음, 도면을 참조하여 본 발명에 따른 서비스 내역 정보의 형식을 제시한다. 먼저, 서비스 내역 정보는 다음과 같은 요구사항들을 고려해야 한다.
안내 정보의 통합성: 서비스 내역 정보(SSI)는 한 방송사업자 또는 여러 방송사업자가 공동으로 운용하는 모든 유무선 인터넷, 지상파, 위성, 케이블 등의 매체를 통한 방송 서비스에 대해 그 내역 정보를 수신기로 전달할 수 있어야 한다.
안내 정보의 형식: SSI는 수신기가 효율적으로 읽어서 해독할 수 있는(machine-readable) 형식을 가져야 한다. 동일한 SSI를 가능한 한 작은 양의 데이터로 표현할 수 있는 형식을 사용하여야 한다.
안내 정보의 대상 기간: SSI는 일정 기간의 과거, 현재, 일정 기간 동안(예를 들어, 보름간)의 미래의 서비스 내역을 안내할 수 있어야 한다. 단, 과거에 이미 방송된 내역은 SSI에 직접 포함하지 않을 수도 있으며, 이 경우 수신기는 이미 저장되어 있는 과거 서비스 내역을 일정 기간 동안(예를 들어, 보름 간) 삭제하지 않고 유지할 수도 있다.
안내 정보의 유효 기간: 특정 버전의 SSI는 일정 기간 동안만 유효하며, 정해진 기간이 종료되면 수신기에 의해 자동적으로 업데이트될 수 있어야 한다.
편성 변경 지원: 어떤 필요에 따라 기 공지된 SSI에 포함된 편성 내용과 다른 콘텐츠를 방송할 경우, 송신기 및 수신기로 하여금 기 공지된 SSI를 수정할 수 있는 수단을 제공하여야 한다.
안내 정보의 전달 수단: SSI 전체 또는 그 일부를 필요에 따라 유무선 인터넷, 지상파, 위성, 케이블 등의 매체들 중 하나 이상을 통해 전달할 수 있어야 한다.
안내 정보의 선택적 구조: SSI 내용 중, 방송 시스템 동작에 필수적인 정보는 의무적으로 전달하되, 그렇지 않은 정보는 선택적으로 전달할 수 있는 구조를 가져야 한다. 예를 들어, 프로그램 콘텐츠의 위치 정보는 수신기가 해당 프로그램 스트림을 읽어오는 데 필수적인 정보이나, 프로그램 콘텐츠에 대한 줄거리는 시청자가 프로그램 시청 여부를 결정하는 데 도움을 줄 수 있으나, 수신기 동작에 반드시 필요한 정보는 아니다.
채널 획득 시간 최소화: SSI는 채널 획득 시간(channel acquisition time)을 최소화할 수 있는 구조를 가져야 한다. 여기서 채널 획득 시간이라 함은 전원 인가 후 또는 채널 변경 후, 비디오와 오디오가 재생되기까지의 시간을 의미한다.
기존 방송과의 전향 호환성(forward compatibility): SSI는 MPEG-2 TS 기반의 기존 방송의 내역도 안내할 수 있어야 한다.
기존 방송과의 후향 호환성(backward compatibility): MPEG-2 TS 기반의 기존 방송에서도 SSI를 사용할 수 있어야 한다. 물론 이렇게 제공되는 SSI는 이를 지원하지 않는 기존 수신기에서는 사용되지 않으나, 그 동작에 영향을 끼쳐서는 안 된다. SSI를 지원하는 새 버전의 수신기에서는 SSI를 활용할 수 있다.
한 화면 내 여러 소화면 지원: SSI는 한 화면 내에 여러 소화면을 지원할 수 있어야 한다. 여기에는 소화면의 시공간상 위치 지정 기능이 포함된다. 예를 들어, 야구 경기를 중계할 때, 투수, 타자, 특정 내야수, 전체 경기장 등을 보여주는 소화면을 전체 화면 내에 모두 포함할 수 있어야 한다.
다양한 능력의 수신기 지원: SSI는 모바일 기기, SDTV(Standard Definition Television), HDTV(High Definition TV), UHDTV(Ultra-High Definition) 등 다양한 능력의 수신기에 대한 콘텐츠 안내를 지원하여야 한다.
다국어, 자막, 화면 해설 방송, 수화 방송 안내 지원: SSI는 여러 가지 언어의 오디오, 자막(subtitle), 화면 해설 방송(commentary channel), 수화 방송 등 접근성(accessibility)을 높일 수 있는 보조 콘텐츠가 프로그램에 포함된 경우 이에 대해 안내할 수 있어야 한다.
콘텐츠 사용 제한 사항 안내: SSI는 콘텐츠 사용에 대한 여러 가지 제한 사항을 안내할 수 있어야 한다. 이러한 제한 사항에는 콘텐츠 등급(일정 나이 이하 시청 금지), 녹화 가능 여부, 임의 접근 가능 여부, 고속 재생/역재생 가능 여부, 편당 과금 여부, 월정액 과금 여부 등이 포함된다.
콘텐츠 데이터 위치 안내: SSI는 콘텐츠 데이터의 위치를 반드시 안내하여야 한다. 콘텐츠 전체가 동일 위치인 경우 및 콘텐츠 구성요소 별로 다른 위치인 경우를 모두 효율적으로 안내할 수 있어야 한다. 또한 SSI는 하나 이상의 전용 방송 물리 채널과 인터넷을 단독으로 또는 일부나 전부를 동시에 사용하여 콘텐츠를 전달하는 것을 안내할 수 있어야 한다.
대체 콘텐츠 데이터 위치 안내: SSI는 대체 콘텐츠 데이터의 위치를 안내할 수 있어야 한다. 대체 콘텐츠 데이터란 시청자가 선택한 콘텐츠에 대해 원래 의도된 콘텐츠 데이터 대신에 원래 콘텐츠 데이터와 동일하거나 유사한 콘텐츠를 읽어 올 수 있는 다른 위치를 말한다.
보조 데이터 안내: SSI는 주된 비디오와 오디오에 대한 안내뿐만 아니라 이에 부수된 웹 문서, 위젯(widget), 대화형 애플리케이션(interactive application), 오디오 클립, 비디오 클립, 그래픽, 문자, 이미지, 부분 미디어 스트림(예를 들어, 양안식 3D 비디오를 일정 기간 시현하기 위한 추가적인 유한길이 스트림) 등의 보조 데이터에 대해서도 안내할 수 있어야 한다.
한편, 서비스 내역 정보(SSI)는 방송사 또는 방송사 집단별로 제공된다. 지상파 방송사, 케이블 방송사, 위성 방송사, 인터넷 방송사 등은 각자 독립적으로 사업을 시행하므로, 서비스 내역 공유 및 통합 전달을 서로 약정하지 않는 이상, 각자의 서비스 내역을 독립적으로 전달할 수밖에 없다. 그러나 이러한 약정이 있는 경우에는 약정에 참여한 방송사들의 모임인 방송사 집단으로서 통합적으로 서비스 내역 안내를 시행할 수도 있다. 서비스 내역 안내의 정보량이 많으면, 이를 수신기로 다운로드하는 데 많은 시간이 걸리기 때문에, 시청자가 서비스 내역 안내를 열람하기까지의 지연 시간이 길어지고, 변경된 서비스 내역 안내를 다운로드할 때도 부담이 커지므로, 이러한 점들을 극복하기 위한 방법이 요구된다.
기존 MPEG-2 표준 기반의 방송 시스템에서는 MPEG-2 시스템 표준(ISO/IEC 13818-1)에서 제공하는 PSI(Program Specific Information)가 서비스 내역 안내에는 불충분하였기 때문에 추가적인 서비스 및 시스템 안내 정보를 규정하여 시행하고 있다. ATSC의 PSIP(Program and System Information Protocol)와 DVB의 SI가 그것이다. ATSC PSIP의 경우에는 MPEG-2 PSI 중 PAT(Program Association Table)나 PMT(Program Map Table)을 대체하는 정보를 포함하고 있어 반드시 PAT나 PMT를 수신기가 해독하지 않아도 프로그램을 수신할 수 있도록 설계되어 있다.
하나의 물리 채널 내에 여러 프로그램을 다중화하여 전송하는 전용 채널을 통한 방송과는 달리, 인터넷만 사용하는 인터넷 방송의 경우, 하나의 IP 애플리케이션 데이터 흐름(IP application data flow) 내에 여러 프로그램을 다중화하지 않는 것이 보통이다. 물론 필요에 따라서는 그렇게 할 수도 있으나, 본 발명에서 제안하는 방식에서는 일단 하나의 IP 애플리케이션 데이터 흐름 내에 한 프로그램만 보낸다고 전제한다. 또한 물리 채널의 대역폭 제한으로 인해, 프로그램 구성요소를 여러 다른 물리 채널에 나누어 전송하는 경우도 인터넷 방송에서는 해당되지 않는다. 이와 같은 조건 하에서, 인터넷 방송에 대한 SSI는 매우 단순화될 수 있다.
도 1은 본 발명의 실시 예에 따른 전용 물리 채널을 사용하는 기존 방송의 SSI(Service Specific Information) 구조이다.
수신기는 ATSC PSIP 또는 DVB SI로부터 물리 채널의 내역을 확인하고, 특정 물리 채널을 튜닝(tuning)하면 MPEG-2 PSI 중 PAT로부터 해당 물리 채널 내의 프로그램 내역을 확인하며, 특정 프로그램을 선택하면, MPEG-2 PSI 중 PMT로부터 프로그램 구성요소들을 확인할 수 있다. ATSC 시스템에서는 PSIP 정보로부터 특정 프로그램의 구성요소들을 직접 확인할 수도 있다.
도 2는 본 발명의 다른 실시 예에 따라 인터넷 방송의 경우 필요한 서비스 내역 정보의 구조이다.
수신기는 동일 IP 애플리케이션 데이터 흐름 내에 특정 통로를 통해 전달되는 서비스 내역 정보로부터 프로그램 구성요소의 통로 식별자(path identifier)를 확인하여 프로그램을 재생할 수 있다. 수신기의 전원이 언제 켜질지, 이 인터넷 방송을 언제 접속할지 등을 미리 알 수 없으므로, 서비스 내역 정보는 주기적으로 전달되어야 한다. 그 주기는 짧으면 짧을수록 좋다. 보통 500 ms 이내로 유지하는 것이 바람직하다. 서비스 내역 정보의 양이 많으면, 이를 짧은 주기로 전송하기 위해서는 그만큼 많은 패킷을 동일 시구간에서 전달해야 하므로 비효율적이다. 따라서 짧은 주기로 전송되는 정보는 가능한 한 적은 양이 되도록 설계해야 한다. 추가적인 안내 정보는 보다 더 긴 주기로 전송되게 하던가 아니면, 수신기의 요구에 의해 전달되도록 하는 것이 좋다.
도 3은 본 발명의 실시 예에 따라 SSI의 논리적인 구조를 나타낸다. 예컨대, 도 3은 본 발명에서 제안하고자 하는 전용 물리 채널과 인터넷을 함께 사용하는 방송통신융합형 방송을 위한 SSI의 논리적인 구조이다.
도 3의을 참조하면, 설명된 구조는 기본적으로 도 1 및 도 2의 구조를 통합한 형태로서, SMT-M(Service Map Table for Multiple packages)(301)은 전용 방송 물리 채널을 통해 여러 논리 채널을 방송하는 경우 사용되고, SMT-S(Service Map Table for a Single package)(309)는 전용 방송 물리 채널을 통해 하나의 논리 채널을 방송하거나, 인터넷만을 사용하거나, 인터넷을 주로 사용하여 방송하는 경우 사용된다. 인터넷을 주로 사용하여 방송하는 예로서는, 전용 물리 채널과 인터넷을 함께 사용하는 방송사가 인터넷 방송을 시행하는 경우, 필요에 따라 전용 물리 채널로 전송되는 데이터를 인터넷 방송에서 활용하도록 하는 경우를 들 수 있다. 예를 들어, 전용 채널의 대역폭 제한으로 인해, 어떤 콘텐츠를 인터넷 방송할 때, 이 콘텐츠에 부가적으로 사용될 보조 데이터는 전용 채널로 전송되는 내용을 공동으로 사용하게 할 수 있다. 이런 경우, 인터넷 접속만 가능한 수신기는 보조 데이터를 활용할 수 없지만, 전용 채널에 대한 튜너(tuner)와 인터넷 접속 장치를 모두 갖는 스마트 TV 수신기는 주된 콘텐츠는 인터넷으로 수신하고, 보조 데이터는 전용 채널을 통해 수신하여 이를 종합적으로 시청자에게 제공할 수 있다.
SMT-M은 이 정보가 실려 전송되는 물리 채널 내의 모든 프로그램에 대한 간단한 안내 내용과 현재 방송 중인 각 프로그램 아이템의 정보를 담고 있는 PPT(Package Packing Table)(307-1…307-n)의 위치 참조 정보를 포함하며, 해당 방송사가 제공하는 모든 프로그램에 대한 안내 정보를 담고 있는 PGT(Package Guide Table)(305)에 대한 위치 참조 정보 및 버전 정보를 포함한다.
채널 획득 시간을 최소화하기 위해 SMT는 매우 짧은 주기(예를 들어, 500 ms)로 주기적으로 전송되므로, 포함되는 정보의 양도 가능하면 최소화한다.
PGT는 한 방송사가 운용 중인 모든 물리 채널과 인터넷을 통해 서비스되는 모든 프로그램 아이템들 중 일정 기간 분량(예를 들어, 현재를 기준으로 과거와 미래의 보름 간)에 해당하는 안내 정보를 포함하므로, 그 정보량이 SMT에 비해 훨씬 더 많으며, 전송 주기 또한 훨씬 크다(예를 들어, 1 분). PGT는 필요에 따라, 수신기로 하여금 인터넷을 통해 다운로드 받도록 할 수도 있다. PGT는 방송 편성표에 따라 프로그램 아이템들을 안내하는데, 미리 공지된 방송 편성표라 하더라도, 변경될 수 있으므로, 효율적인 갱신이 가능한 구조를 가져야 한다. 따라서 PGT 내에 포함된 정보들을 종류별로 모듈화하여 구성하고, 수신기로 하여금 갱신된 모듈만 다운로드 받을 수 있도록 한다. 물론 갱신된 모듈들만 모아서, 한꺼번에 다운로드 받도록 할 수도 있다. 이를 통합 델타 모듈이라 한다.
예를 들어, PGT의 버전(version) 차이가 1인 것부터 N(N은 하루 또는 이틀에 해당하는 수)인 것까지 여러 가지의 통합 델타 모듈을 함께 제공하면, 수신기의 다운로드 부담을 현저히 줄일 수 있다. SMT에 포함된 PGT의 버전이 현재 수신기가 저장하고 있는 PGT의 버전과 다르다면, PGT 중 하나 이상의 모듈이 추가/갱신/삭제된 것이므로 수신기는 추가되거나 갱신된 모듈을 다운로드 받고, 삭제할 내용은 삭제하도록 하며, 만약 PGT의 버전이 동일하다면, 수신기는 PGT를 새로 다운로드 받거나 해독할 필요가 없다.
PGT의 각 모듈은 하나 이상의 프로그램 아이템(program item) 또는 이에 상응하는 패키지(package)에 대한 안내 정보를 담고 있거나, PGT의 해독에 필요한 추가적인 부속 표(associated table, 예를 들어, 시청자 등급표(rating table))를 담고 있다. PGT에 포함된 패키지에 대한 안내 정보에는 PPT에 대한 위치 참조 정보를 포함함으로써, PGT를 사용하여 시청자가 프로그램을 선택하여 시청하거나 예약 녹화가 가능하도록 한다. 긴 문자 정보에 의해 프로그램 내용의 개요를 안내하는 대신 인터넷 상의 프로그램 홈 페이지 URL(Uniform Resource Locator)를 안내함으로써 PGT에 포함되어야 하는 정보량을 줄이고 문자에만 의존하는 프로그램 내용 안내에서 벗어나 HTML 페이지에 의한 다양한 프로그램 안내와 '미리 보기', '다시 보기' 등의 서비스가 가능하도록 한다.
PPT는 MPEG-2 PMT(Program Map Table)과 유사한 정보이지만, MPEG-2 PMT가 프로그램 아이템들을 구분하지 않는 프로그램 논리 채널의 구성에 대한 정보인 반면, PPT는 프로그램 아이템 별로 안내한다. PPT는 하나의 프로그램 아이템에 상응하는 하나의 패키지에 대해서만 안내할 수 있다. PPT는 프로그램 아이템을 구성하는 모든 프로그램 아이템 구성요소뿐만 아니라 보조 데이터 구성요소에 대한 정보를 포함한다. 즉 비디오와 이에 부수된 오디오와 같은 정 애셋(regular asset) 뿐만 아니라 필요한 시점에서 함께 제공되는 웹 문서, 위젯(widget), 대화형 애플리케이션(interactive application), 오디오 클립, 비디오 클립, 그래픽, 문자, 이미지, 보조 미디어 구성요소 등의 부 애셋(adjunct asset)에 대한 정보와 그 리소스(resource)에 대한 위치 참조 정보를 포함할 수 있다. 여러 패키지에서 공통으로 사용되는 부 애셋들을 여러 패키지가 공유할 수 있는 형태로 부 애셋의 정보와 리소스를 제공한다.
도 3을 참조하면, SMT-S의 구조 및 기능은 PPT의 그것들과 유사한 측면이 있다. 인터넷 방송의 경우, 보통 하나의 IP 애플리케이션 데이터 흐름 내에 하나의 프로그램만 존재하므로, SMT와 PPT의 두 단계로 프로그램 접근 정보를 획득할 필요가 없다. 또한 하나의 방송 전용 물리 채널 내에 하나의 프로그램 아이템만 방송되는 경우도 마찬가지이다. SMT-S는 SMT와 PPT의 기능을 하나로 합침으로써 채널 획득 시간을 단축한다. SMT-S 내에는 인터넷 방송 채널 또는 논리 채널 자체에 대한 간단한 안내, PGT의 위치 참조 정보, PGT의 버전, 현재 방송 중인 패키지에 상응하는 프로그램 아이템에 대한 간단한 안내, 패키지를 구성하는 애셋들(311-1,…,311-K)에 대한 각종 정보 등을 포함한다. 따라서 SMT-S는 논리 채널 안내, 프로그램 아이템 안내, 프로그램 아이템 구성요소 정보 등을 통합적으로 전달한다.
인터넷 방송에서 사용되는 PGT는 한 인터넷 방송사 또는 방송사 집단이 운용 중인 모든 인터넷 방송 채널, 즉 여러 IP 애플리케이션 데이터 흐름들에 포함된 모든 프로그램에 대한 안내를 포함할 수도 있다. 시청자는 이를 이용하여, 한 인터넷 방송사 또는 방송사 집단의 프로그램을 내비게이션(navigation)하여 선택할 수 있다.
만약 MPEG-DASH에 의해 실시간 인터넷 방송을 시행하는 경우에는, SMT-S는 이 인터넷 방송에 포함된 프로그램 아이템별로 안내하지 않을 수도 있다. 예를 들어, 프로그램 아이템(실제 내용은 여러 프로그램 아이템이 연속된 프로그램)의 길이가 지정되지 않은 라이브 스트리밍(live streaming)이 이에 해당한다. 단 이 경우, PGT는 반드시 프로그램 아이템별로 안내를 하도록 한다.
SMT-M에서 제공하는 PGT의 위치는 SMT-M이 실려 전송되는 물리 채널 내의 스트림, 다른 물리채널 내의 스트림, IP 애플리케이션 데이터 흐름 내의 스트림, 인터넷 URL 중 한 가지일 수 있다.
PPT에서 제공하는 각 프로그램 아이템 구성요소에 해당하는 애셋의 위치는 PPT가 실려 전송되는 물리채널 내의 스트림, 다른 물리채널 내의 스트림, 인터넷 IP 애플리케이션 데이터 흐름 내의 스트림, URL(MPEG-DASH URL 포함) 중 한 가지일 수 있다. 만약 방송 전용 물리 채널로 전송되는 프로그램 아이템이 여러 가지 이유로 시청자가 보고 싶은 이벤트(event)의 일부만 생중계할 때에는 전체 이벤트를 시청할 수 있는 대체 프로그램 아이템에 대한 정보를 포함할 수 있다. 예를 들어, 정규 편성으로 인해 HDTV 야구 경기 생중계가 중단되는 경우, 저해상도 영상이지만 이를 이어서 시청할 수 있는 MPEG-DASH에 의한 대체 프로그램 아이템을 안내할 수 있다.
SMT-S에서 제공하는 PGT의 위치와 프로그램 아이템 구성요소의 위치는 SMT-S가 실려 전송되는 방송 전용 물리 채널 내의 스트림 또는 인터넷 IP 애플리케이션 데이터 흐름 내의 스트림, 다른 방송 전용 물리 채널 내의 스트림 또는 별도의 다른 IP 애플리케이션 데이터 흐름 내의 스트림, 인터넷 URL 중 한 가지일 수 있다. 전용 채널과 인터넷을 모두 사용하는 방송사가 인터넷 방송을 시행하는 경우, 인터넷 방송의 일부 프로그램 아이템 구성요소의 위치는 방송 전용 채널 내의 스트림이 될 수도 있다.
PGT의 위치가 인터넷 URL인 경우, 수신기는 필요할 때마다 또는 지정된 주기에 따라 해당 URL로 접근하여 PGT 전체 혹은 PGT 중 갱신되거나 추가된 일부 모듈을 다운로드 받는다.
한 물리 채널 내에 한 시점에서는 SMT-M과 SMT-S 중 하나만 포함된다. 그러나 어떤 물리 채널 내의 논리 채널 수가 여러 개에서 한 개로 바뀐다면, SMT-M만 포함하던 물리 채널이 SMT-S만 포함하게 되는 것은 가능하다. 이 경우, SMT-M과 SMT-S는 table_id 값이 다르므로, 수신기는 이들을 쉽게 구분할 수 있다.
SMT-M과 SMT-S의 주요 기능 중 한 가지는 PGT의 최신 버전 정보와 PGT의 위치 참조 정보를 전달하는 것이다. 수신기는 SMT-M과 SMT-S에 들어 있는 PGT의 최신 버전 정보와 PGT의 위치 참조 정보를 이용하여 최신 PGT를 다운로드 하도록 한다. 만약 SMT-M과 SMT-S에 들어 있는 PGT의 최신 버전이 수신기가 이미 저장하고 있는 PGT와 동일한 버전이라면, 수신기는 기 저장된 PGT 내용에 의해 시청자가 프로그램 아이템을 선택할 수 있게 허용한다. 만약 SMT-M과 SMT-S에 들어 있는 PGT의 최신 버전이 수신기가 이미 저장하고 있는 PGT 내용과 다르다면, 갱신된 PGT를 다운로드 받아 수신기 내부에 저장 완료하기 전까지는 PGT에 의해 시청자가 프로그램 아이템을 선택하지 못하도록 한다.
실제 시스템에서는 PGT를 전송하지 않을 수도 있는데, 이런 경우에는 시청자의 프로그램 아이템 선택은 전적으로 SMT-M 또는 SMT-S에 의한다.
최초에 수신기를 처음 설치하였을 때는, 다운로드 되어 있는 PGT가 없으므로, 자동 채널 검색에 의해 방송 전용 물리 채널과 그에 포함된 논리 채널들을 하나씩 검색한다. 이때 만약 이 방송 시스템이 PGT를 제공한다면, 처음으로 확인된 SMT-M 또는 SMT-S의 PGT 위치 참조 정보를 이용하여, PGT를 다운로드 받은 후, 시청자로 하여금 PGT에 의해 프로그램 아이템을 선택할 수 있게 한다. 만약 이 방송 시스템이 PGT를 제공하지 않는다면, 자동 채널 검색을 계속 진행하여, 이 방송 시스템이 제공하는 모든 논리 채널을 확인한 후, 시청자로 하여금 논리 채널 순으로 채널 내비게이션을 할 수 있게 한다.
계속 사용하던 수신기가 꺼져 있는 상태에서 다시 전원을 인가하면, 이전에 시청하던 논리 채널의 프로그램 아이템을 우선 재생하게 되며, 이 과정에서 SMT-M 또는 SMT-S의 PGT 정보를 확인하여 PGT를 갱신한다. 시청자는 논리 채널 순으로 채널 내비게이션을 하던가 아니면 PGT 정보를 불러와서, 현재 방송 중인 프로그램 아이템 중 원하는 프로그램 아이템을 선택한다.
인터넷 방송의 경우, 수신기 제조 시 이미 저장되어 있는 방송 서버 주소, 이후 시청자가 수신기에 입력한 방송 서버 주소, PGT에 의해 획득된 방송 서버 주소 등을 수신기 내부에 저장하고 있다가, 시청자의 채널 내비게이션에 의한 선택 또는 PGT의 프로그램 아이템 안내에 의한 선택 과정을 통해 선택될 수 있도록 한다.
PGT의 프로그램 아이템 안내에 의해 시청자가 어떤 프로그램 아이템을 선택하면, 수신기는 실제로 해당 프로그램 아이템이 전달되는 논리 채널에 접근하여 현재 그 논리 채널을 통해 방송 중인 프로그램 아이템을 보여 준다. 매우 드물지만, 시청자가 PGT의 프로그램 아이템 안내를 참조하여 어떤 프로그램 아이템을 선택한 시점부터 실제 해당 프로그램 아이템의 SMT-M 또는 SMT-S를 해독하기 직전 시점까지 PGT의 내용이 갱신될 수도 있다. 이런 경우에는 SMT-M 또는 SMT-S에 포함된 PGT 정보를 이용하여 PGT를 갱신하고, 만약 긴급 편성에 의해 현재 시청자가 시청 중인 프로그램 아이템이 이전 버전의 PGT에서 안내된 프로그램 아이템과 다르다면, 적절한 안내를 화면에 디스플레이하여 시청자로 하여금 현재 보고 있는 프로그램 아이템을 인지할 수 있도록 해야 한다.
도 3을 참조하면, SMT-S 또는 PPT에 의해 참조되는 애셋은 실제로 미디어 애셋일 수도 있고, 또 다른 PPT일 수도 있다. 단, SMT-S 또는 PPT에 의해 참조된 PPT가 또 다시 다른 PPT를 참조하는 이중 순환 참조(double recursive reference)는 허용하지 않는다. SMT-S 또는 PPT가 또 다른 PPT를 애셋으로서 참조하는 경우는 화면 배치를 위해 MMT 콤포지션 정보를 반드시 전송해야 한다. 하나의 프로그램 아이템 내에서 시간에 따라 화면 배치가 바뀌지 않고 고정된 경우이고 그 양이 많지 않다면, MMT(MPEG Media Transport) 콤포지션 정보는 PPT 내의 서술자에 포함시켜 전송할 수 있다. 만약 하나의 프로그램 아이템 내에서 시간에 따라 화면 배치가 바뀐다면, 시간 정보가 부착된(timed) 애셋으로서 전송한다. 또 만약 하나의 프로그램 아이템 내에서 시간에 따라 화면 배치가 바뀌지는 않지만 콤포지션 정보의 양이 많은 경우, MMT 콤포지션 정보를 시간 정보가 없는(untimed) 애셋으로서 전송할 수 있다.
본 발명에서 제안하는 SSI는 기존 MPEG-2 시스템 표준 기반의 방송 시스템에서도 호환적으로 사용할 수 있다.
도 4는 본 발명의 실시 예에 따라 방송을 기반으로 한 MPEG-2 TS(Transport Stream)에서 SSI의 일 예를 나타낸다.
예컨대, 도 4는 기존 방송 수신기와 MMT를 지원하는 수신기가 모두 해석할 수 있는 MPEG-2 TS의 예이다. 도 4를 참조하면, 이 예에서는 하나의 TS 내에 두 개의 프로그램이 존재한다. 기존 방송 수신기는 MPEG-2 PAT, MPEG-2 PMT 1, 그리고 MPEG-2 PMT 2를 해독하여 프로그램을 수신한다. MMT를 지원하는 수신기는 MMT SMT-M, MMT PPT 1, 그리고 MMT PPT 2를 해독하여 프로그램을 수신한다. 물론 MMT SMT-M를 실어 나르는 TS 패킷의 PID는 고정된 값으로서 미리 할당하여야 하고, SMT-M 및 PPT는 MPEG-2 섹션(section) 구조로 싼(encapsulate) 후, 전송하여야 한다.
다음, 본 발명에서 제안하는 SSI 정보 형식의 규격에 대해 설명한다.
SMT-M(Service Map Table for Multiple packages)은 전용 방송 물리 채널을 통해 여러 논리 채널을 방송하는 경우, 해당 방송 전용 물리 채널로 현재 방송 중인 모든 프로그램 아이템에 상응하는 PPT의 위치와 프로그램 안내에 대한 버전 및 위치를 전달하기 위해 사용된다. SMT-M은 500 ms 이내의 주기로 전송되는 것이 바람직하며, 수신기가 해당 방송 전용 물리 채널에 접근하였을 때, 신속히 프로그램 아이템에 해당하는 패키지를 찾을 수 있도록 한다.
SMT-M의 APID(asset path identifier)는 항상 특정한 값(예를 들어, 0x0000)으로 고정되어 있다. 만약 MPEG-2 TS를 통해 SMT-M을 전달하는 경우에는 이를 실어 나르는 TS 패킷의 PID를 고정된 값으로 지정하여야 한다.
SMT-M의 구문(syntax)은 <표 1>에 정의된 바와 같다. <표 1>의 "형식" 열에 나오는 내용의 정의는 MPEG-2 시스템 표준의 그것을 따른다. 또한 <표 1>의 "값" 열에 표시되지 않은 루프 카운트(loop count)는 길이를 나타내는 값들로부터 유도된 값이다. 본 발명의 실시 예에서의 다른 표의 경우에도 이러한 원칙이 적용된다.
Figure pat00001
<표 1>에서 각 구문 요소(syntax element)의 의미(semantics)는 다음과 같다.
table_id: 표의 종류를 나타내는 식별자. SMT-M에 해당하는 유일무이한 값을 할당한다.
version_id: 이 표의 구성을 나타내는 식별자. 표준 개정에 의해 표의 구성이 바뀌면 이 값도 바뀐다. 수신기는 이 값을 보고, 이 표가 자신이 이해할 수 있도록 구성된 것인지를 판단한다. 표의 내용이 기존의 것과 비호환적으로 개정된 때에만 이 값을 증가시키도록 한다.
table_length: 이 필드 다음부터 service_map_table_type_I() 마지막 바이트까지의 바이트 수. 0의 값은 사용하지 않는다.
service_id: 전용 방송 채널을 사용하는 방송 서비스에 대한 고유 식별자이다. 등록 기관을 통해 각 방송 사업자의 전용 방송 채널마다 고유한 식별자를 할당해 주어야 한다.
SMT_update_version: SMT-M은 주기적으로 전송되므로, SMT-M의 내용이 직전에 전송된 동일한 service_id를 갖는 SMT-M의 내용과 다르면, 이 값을 하나 증가시킨다. 최대값 255 이후에는 0으로 바뀐다. 수신기는 이 값이 바뀌면, SMT-M의 내용을 다시 읽어 들여 해독한다.
SMT_prefix_count: 다음에 나오는 SMT_prefix들의 수를 나타낸다. SMT_prefix는 SMT-M에 포함된 문자열 앞에 연접되어, URL을 형성한다. SMT_prefix를 참조하고자 할 때에는 SMT_prefix 등장 순서를 인덱스로 사용하여 SMT_prefix를 참조한다. 이 필드의 값 0xFF는 사용하지 않는다. 따라서 최대 255 개의 SMT_prefix를 포함할 수 있다.
SMT_prefix_length: SMT_prefix 문자열의 길이를 나타낸다.
SMT_prefix_byte: SMT_prefix 문자를 나타낸다. 문자열 마지막의 널(null) 바이트는 포함하지 않는다.
SMT_M_descriptors_length: 이 필드 바로 아래에 나오는 SMT_M_descripor 구문 루프의 길이를 이 필드 다음 바이트부터 SMT_M_descripor 구문 루프의 마지막 바이트까지의 바이트 수로 나타낸다. SMT_M_descripor() 자리에는 이후에 설명할 PGT_reference_descriptor()를 비롯한 여러 가지 서술자가 들어갈 수 있다.
number_of_packages: 현재 이 방송 채널로 전달되고 있는 패키지의 수를 나타낸다.
package_path_number: 어떤 방송 채널 내의 논리 채널을 구분하는 패키지 통로 번호를 나타낸다. '0' 값은 사용하지 않는다. package_path_number는 한 방송사 또는 방송사 집단에 의해 물리 채널 내에서 유일무이하게 할당된다.
package_id: 이 가상 채널을 통해 현재 전달되는 패키지의 식별자이다. package_id는 각 패키지에 대해 방송사업자가 할당하는 값으로서 일정 기간 동안의 한 방송사 또는 방송사 집단이 제공하는 패키지들에 대해 고유한 값을 갖는다. 이 값은 일정 기간 후에 재사용 가능하다.
simple_location_type: 현재 전달되는 패키지에 상응하는 PPT에 대한 위치 참조 정보의 형식을 지정한다. SMT-M이 참조하는 PPT는 모두 SMT-M을 실어 나르는 IP 애플리케이션 데이터 흐름과 동일한 IP 애플리케이션 데이터 흐름 또는 SMT-M을 실어 나르는 MPEG-2 TS와 동일한 MPEG-2 TS 내에 전달된다. 이 필드의 값이 '0'이면 PPT를 실어 나르는 애셋 통로를 APID로 지정하고, '1'이면 PPT를 실어 나르는 MPEG-2 TS를 MPEG-2에서 정의한 PID로 지정한다.
PPT_APID: IP 애플리케이션 데이터 흐름 내에서 PPT를 실어 나르는 애셋 통로의 식별자
PPT_PID: MPEG-2 TS 내에서 PPT를 실어 나르는 TS 패킷의 PID
CRC_32: MPEG-2 시스템 표준의 섹션 구문에서 정의한 CRC_32와 동일한 필드
SMT-S(Service Map Table for a Single package)는 전용 방송 물리 채널을 통해 하나의 논리 채널을 방송하거나 인터넷만을 사용하거나 이를 주로 사용하여 방송하는 경우, 프로그램 아이템과 이에 상응하는 패키지에 대한 간단한 안내 정보, 보다 상세한 프로그램 안내 정보에 대한 위치 참조 정보, 프로그램 아이템의 구성 및 그 구성요소의 위치 참조 정보를 전달하기 위해 사용된다. SMT-S는 500 ms 이내의 주기로 전송되어야 하며, SMT-S의 APID는 항상 특정한 값(예를 들어, 0x0000)으로 고정되어 있다. 따라서 SMT-M과 SMT-S는 동일한 APID를 갖는 통로로 전송되지만, table_id에 의해 구분된다.
SMT-S의 구문은 <표 2>와 같다.
Figure pat00002
<표 2>에서 각 구문 요소의 의미는 다음과 같다.
table_id: 표의 종류를 나타내는 식별자. SMT-S에 해당하는 유일무이한 값을 할당한다.
version_id: 이 표의 구성을 나타내는 식별자. 표준 개정에 의해 표의 구성이 바뀌면 이 값도 바뀐다. 수신기는 이 값을 보고, 이 표가 자신이 이해할 수 있도록 구성된 것인지를 판단한다. 표의 내용이 기존의 것과 비호환적으로 개정된 때에만 이 값을 증가시키도록 한다.
table_length: 이 필드 다음부터 service_map_table_type_II() 마지막 바이트까지의 바이트 수. 0의 값은 사용하지 않는다.
service_id: 인터넷 방송 서비스에 대한 고유 식별자이다. 등록 기관을 통해 각 방송 사업자의 IP 애플리케이션 데이터 흐름마다 고유한 식별자를 할당해 주어야 한다.
SMT_update_version: SMT-S는 주기적으로 전송되므로, SMT-S의 내용이 직전에 전송된 동일한 service_id를 갖는 SMT-S의 내용과 다르면, 이 값을 하나 증가시킨다. 최대값 255 이후에는 0으로 바뀐다. 수신기는 이 값이 바뀌면, SMT-S의 내용을 다시 읽어 들여 해독한다.
CRC_32: MPEG-2 시스템 표준의 섹션 구문에서 정의한 CRC_32와 동일한 필드
PPT_body(): MMT에서 PPT의 바디(body)에 해당하는 구문 요소 그룹으로, 그 구문은 <표 3>과 같다.
Figure pat00003
Figure pat00004
Figure pat00005
<표 3>의 각 구문 요소의 의미는 다음과 같다.
short_channel_name_length: UTF-8 인코딩을 사용하는 문자열로 표현된 논리 채널 이름의 바이트 수
short_channel_name_byte: 논리 채널 이름을 구성하는 바이트 데이터
package_id: 이 가상 채널을 통해 현재 전달되는 패키지의 식별자이다. package_id는 각 패키지에 대해 방송사업자가 할당하는 값으로서 일정 기간 동안의 한 방송사 또는 방송사 집단이 제공하는 패키지들에 대해 고유한 값을 갖는다. 이 값은 일정 기간 후에 재사용 가능하다.
prefix_count: 다음에 나오는 prefix들의 수를 나타낸다. prefix는 문자열 앞에 연접되어, URL을 형성한다. prefix를 참조하고자 할 때에는 prefix 등장 순서를 인덱스로 사용하여 prefix를 참조한다. 이 필드의 값 0xFF는 사용하지 않는다. 따라서 최대 255 개의 prefix를 포함할 수 있다.
prefix_length: prefix 문자열의 길이를 나타낸다.
prefix_byte: prefix 문자를 나타낸다. 문자열 마지막의 널(null) 바이트는 포함하지 않는다.
descriptors_length: 이 필드 바로 아래에 나오는 descriptor 구문 루프의 길이를 이 필드 다음 바이트부터 descriptor 구문 루프의 마지막 바이트까지의 바이트 수로 나타낸다. descriptor() 자리에는 여러 가지 서술자가 들어갈 수 있는데, <표 3>의 PPT_body() 구문 요소 그룹이 SMT-S에 포함될 때에는 PGT_reference_descriptor()가 이 descriptor() 자리에 들어갈 수 있다.
parental_guidance_flag: 이 플래그의 값이 '1'이면 수신기는 PGT를 해독하여 이 패키지에 적용되는 정확한 시청자 등급을 확인하기 전까지는 패키지로부터 복원된 내용을 재생하지 않는다. 이 값이 '0'이면 수신기는 시청자 등급을 확인하기 전이라도 패키지로부터 복원된 내용을 재생한다.
recording_flag: 이 플래그의 값이 '1'이면 수신기는 이 패키지를 수신기 내의 저장 매체에 저장할 수 있다.
random_access_flag: 이 플래그의 값이 '1'이면 시청자는 이 패키지에 대해 임의 접근을 시행할 수 있다.
fast_forward_play_flag: 이 플래그의 값이 '1'이면 시청자는 이 패키지에 대해 고속 재생을 시행할 수 있다.
fast_reverse_play_flag: 이 플래그의 값이 '1'이면 시청자는 이 패키지에 대해 고속 역재생을 시행할 수 있다.
timescale_flag: 이 필드의 값이 '1'이면 아래에 timescale 필드가 나옴을 나타낸다.
protection_scheme_id_flag: 이 필드의 값이 '1'이면 아래에 protection_scheme_id 필드가 나옴을 나타낸다.
timescale: 해당 애셋의 각종 타임스탬프(timestamp)에 적용되는 시간 단위를 1 초 동안의 시간 단위 수로 나타낸 값. 디폴트(default) 값은 90,000이다. timescale 필드는 PPT_body() 내에서 두 곳에 나오는데, 먼저 나오는 것은 해당 패키지에 속한 전체 애셋에 적용되는 값이고, 나중에 애셋에 대한 구문 루프에 나오는 것은 각 애셋에 적용되는 값이다. 만약 각 애셋에 적용되는 값이 있을 경우, 이 값이 먼저 나오는 전체 애셋에 적용되는 값 보다 우선한다.
protection_scheme_id: 해당 애셋의 암호화 방식을 지정하는 값. protection_scheme_id 필드는 PPT_body() 내에서 두 곳에 나오는데, 먼저 나오는 것은 해당 패키지에 속한 전체 애셋에 적용되는 값이고, 나중에 애셋에 대한 구문 루프에 나오는 것은 각 애셋에 적용되는 값이다. 만약 각 애셋에 적용되는 값이 있을 경우, 이 값이 먼저 나오는 전체 애셋에 적용되는 값 보다 우선한다.
clock_reference_id: 애셋 부호기가 사용한 클록의 식별자. clock_referece_id 필드는 PPT_body() 내에서 두 곳에 나오는데, 먼저 나오는 것은 해당 패키지에 속한 전체 애셋에 적용되는 값이고, 나중에 애셋에 대한 구문 루프에 나오는 것은 각 애셋에 적용되는 값이다. 만약 각 애셋에 적용되는 값이 있을 경우, 이 값이 먼저 나오는 전체 애셋에 적용되는 값보다 우선한다.
number_of_asset_groups: 애셋 그룹의 수. 동일한 애셋 그룹에 속하는 애셋은 서로 배타적이다. 즉 수신기는 동일 그룹에 속하는 애셋 중 한 애셋만 재생한다. 예를 들어, 다국어 지원을 위해 A 언어의 오디오와 B 언어의 오디오는 동일한 애셋 그룹에 속한다.
level_of_mandatory_playing: 애셋 그룹 중 한 애셋을 필수적으로 재생해야 하는지를 나타내는 값. 이 필드 값이 '0'이면 이 애셋 그룹 중 한 애셋은 필수적으로 재생해야 한다. 이 필드의 값이 '0'이면 아니면, 수신기의 능력에 따라 이 애셋 그룹에 속하는 애셋을 재생하지 않을 수도 있다. 단 이 필드의 값이 클수록 중요도가 낮음을 의미하며, 이 필드의 값이 작은 애셋 그룹을 생략하고 이 필드의 값이 그 보다 큰 값을 갖는 애셋 그룹을 재생해서는 안 된다.
number_of_assets_in_group: 이 애셋 그룹에 속하는 애셋의 수
asset_type: 애셋의 종류를 나타낸다. MPEG-2 PMT 내의 stream_type과 유사하나 이를 확장한 필드이다. 만약 asset_type이 PPT이면, 이 애셋은 PPT 애셋이 된다. 단, SMT-S 또는 PPT에 포함된 PPT 애셋 내에서 또 다른 PPT 애셋을 참조하는 이중 순환 참조(double recursive reference)는 허용되지 않는다.
asset_id: 애셋 식별자. MMT_package_composition_descriptor 내에서 애셋을 지칭하기 위해 이 식별자를 사용한다.
default_selection_flag: 이 필드의 값이 '1'이면 해당 애셋은 자신이 속한 애셋 그룹 내에서 우선적으로 추천된 애셋임을 나타낸다. 동일한 애셋 그룹에 속한 애셋 중, 단 하나의 애셋에 대해서만 이 필드의 값을 '1'로 설정해야 한다. 만약 동일한 애셋 그룹에 속한 모든 애셋에 대해 이 필드 값이 '0'이면 수신기는 가장 먼저 등장하는 애셋을 우선 추천된 애셋으로 간주한다.
clock_reference_flag: 이 필드의 값이 '1'이면 아래에 clock_reference_id 필드가 나옴을 나타낸다.
asset_timescale_flag: 이 필드의 값이 '1'이면 아래에 timescale 필드가 나옴을 나타낸다.
asset_protected_flag: 이 필드의 값이 '1'이면 해당 애셋은 암호화되어 있음을 나타낸다.
scheme_id_flag: 이 필드의 값이 '1'이면 아래에 protection_scheme_id 필드가 나옴을 나타낸다.
MMT_general_location_info(): MMT를 위한 일반적인 위치 참조 정보로서, 애셋의 위치를 지정한다. 그 내용은 <표 5>와 같다.
asset_descriptors_ length: 이 필드 다음부터 서술자 구문 루프의 마지막 바이트까지의 바이트 수
asset_descriptor(): 애셋에 대한 서술자
PPT_asset()은 어떤 패키지 내에 또 다른 패키지를 포함하기 위해 사용하는 구문 요소 그룹이다. 그 구문은 <표 4>와 같고, 각 구문 요소의 의미는 상기 <표 3>에서 정의한 바와 같다.
Figure pat00006
Figure pat00007
MMT_general_location_info()는 MMT에서 애셋의 위치 참조 정보를 제공하는 구문 요소 그룹이다. 그 구문은 <표 5>와 같다.
Figure pat00008
Figure pat00009
<표 5>에서 각 구문 요소의 의미는 다음과 같다.
location_type: <표 6>과 같이 위치 참조 정보의 형식을 지정한다.
Figure pat00010
AMID: 애셋 통로 내에서 모듈의 식별자
APID: IP 애플리케이션 데이터 흐름 내에서 애셋 통로의 식별자
ipv4_src_addr: IP 애플리케이션 데이터 흐름의 IP 버전 4 출발지 주소(source address)
ipv4_dst_addr: IP 애플리케이션 데이터 흐름의 IP 버전 4 도착지 주소(destination address)
dst_port: IP 애플리케이션 데이터 흐름의 도착지 포트(destination port) 번호
ipv6_src_addr: IP 애플리케이션 데이터 흐름의 IP 버전 6 출발지 주소(source address)
ipv6_dst_addr: IP 애플리케이션 데이터 흐름의 IP 버전 6 도착지 주소(destination address)
network_id: MPEG-2 TS를 전달하는 방송망 식별자
MPEG_2_transport_stream_id: MPEG-2 TS의 식별자
MPEG_2_PID: MPEG-2 TS 패킷의 PID
prefix_index: 이 필드를 해독하기 전 수신기 내에 저장되어 있는 prefix 중 하나를 지정하는 인덱스. 이 필드의 값이 0xFF이면 prefix가 없음을 나타낸다.
URL_length: URL의 길이. 문자열 마지막의 널(null, 0x00) 바이트는 포함하지 않는다.
URL_byte: URL의 바이트. 문자열 마지막의 널 바이트는 포함되지 않는다.
byte_offset: 파일 처음부터의 바이트 오프셋
length: 바이트 단위의 길이
Package Packing Table(PPT)는 방송 전용 물리 채널을 사용하는 방송의 경우, 프로그램 아이템과 이에 상응하는 패키지에 대한 간단한 안내 정보, 보다 상세한 프로그램 안내 정보에 대한 위치 참조 정보, 프로그램 아이템 구성 및 그 구성요소의 위치 참조 정보를 전달하기 위해 사용된다. PPT는 500 ms 이내의 주기로 전송되는 것이 바람직하다.
PPT의 구문은 SMT-S의 구문에서 service_id 구문 요소가 package_path_number 구문 요소로 대체된 것을 제외하면 SMT-S의 구문과 거의 동일하다. PPT의 구문은 <표 7>과 같다. 대부분의 구문 요소의 의미가 SMT-S와 같으므로, 다른 경우만 정의하였다.
Figure pat00011
<표 7>에서 각 구문 요소의 의미는 다음과 같다.
table_id: 표의 종류를 나타내는 식별자. PPT에 해당하는 유일무이한 값을 할당한다.
package_path_number: 어떤 방송 채널 내의 논리 채널을 구분하는 패키지 통로 번호를 나타낸다. '0' 값은 사용하지 않는다. package_path_number는 한 방송사 또는 방송사 집단에 의해 물리 채널 내에서 유일무이하게 할당된다.
Package Guide Table (PGT)는 프로그램 안내 정보로서, 한 방송사업자 또는 한 방송사업자 집단이 운용하는 모든 방송에 편성된 프로그램에 대해 안내할 수 있다. PGT는 1 분 이내의 주기로 전송되는 것이 바람직하다.
PGT는 기본적으로 프로그램 아이템 단위로 안내 정보를 제공한다. 이를 물리 채널 별 또는 논리 채널별로 분류하여 제공하는 것은 수신기의 몫이다. 물론 PGT 내에는 이러한 소팅(sorting)을 가능하게 하는 정보가 포함되어 있다. 송신 측에서 일정한 규칙에 따라 프로그램 아이템 안내 정보를 배열하여 전달할 수도 있다.
프로그램 아이템은 그 부호화 형태인 패키지의 식별자인 package_id에 의해 구분된다. package_id는 한 방송사업자 또는 한 방송사업자 집단에 의해 제공되는 프로그램 아이템을 유일무이하게 식별해 준다. 한 방송사업자 또는 한 방송사업자 집단은 PGT_provider_id에 의해 유일무이하게 식별된다. PGT_provider_id는 등록기관을 지정하여 각 방송사업자 또는 방송사업자 집단의 요청에 의해 할당되어야 한다. package_id는 각 방송사업자 또는 방송사업자 집단이 자체적으로 자신들의 프로그램 아이템에 고유하게 할당한다. package_id는 16 비트 값이므로, 유한 개의 프로그램 아이템만 식별 가능하므로, 일정 기간 후 재사용하여야 한다. 재사용 시에는 package_id_recycle_number(PGT_package_info()에 포함된 구문 요소 중 하나로서 8 비트임)를 하나 증가시킨다. (PGT_provider_id, package_id_recycle_number, package_id)로 구성되는 세 가지 정보의 쌍은 package_id_recycle_number를 모두 소진하기까지의 기간 동안 세계적으로 어떤 프로그램 아이템 또는 이에 상응하는 패키지에 대한 유일무이한 식별자가 된다. 예를 들어, package_id를 소진하기까지 대체로 일 년이 걸린다고 하면, package_id_recycle_number가 8 비트이므로, 약 256 년 동안 유일무이성이 보장된다.
PGT는 이를 제공하는 방송사 또는 방송사 집단의 식별자, 갱신 버전, 이를 제공하는 방송사 또는 방송사 집단의 홈페이지 URL, 갱신 모듈 정보, 논리 채널 정보, 패키지 정보, 부속 표 정보 등으로 구성된다. 갱신 모듈 정보는 델타(delta) 정보 형태로서, 현재의 PGT 버전과 기준이 되는 과거의 PGT 버전의 다른 부분만을 포함하는 정보이다. 하루 또는 이틀 정도에 해당하는 갱신 모듈 정보를 PGT에 포함시키면, 수신기에서의 PGT 갱신 과정이 매우 효율적으로 수행될 수 있다.
PGT의 구문은 <표 8>과 같다.
Figure pat00012
Figure pat00013
Figure pat00014
<표 8>에서 각 구문 요소의 의미는 다음과 같다.
table_id: 표의 종류를 나타내는 식별자. PGT에 해당하는 유일무이한 값을 할당한다.
version_id: 이 표의 구성을 나타내는 식별자. 표준 개정에 의해 표의 구성이 바뀌면 이 값도 바뀐다. 수신기는 이 값을 보고, 이 표가 자신이 이해할 수 있도록 구성된 것인지를 판단한다. 표의 내용이 기존의 것과 비호환적으로 개정된 때에만 이 값을 증가시키도록 한다.
PGT_provider_id: PGT를 제공하는 기관의 고유 식별자. 한 기관은 하나의 PGT를 제공할 수 있으며, PGT_provider_id는 해당 등록 기관에 의해 할당된다.
PGT_update_version: PGT 내용의 변경 여부를 나타내는 버전 번호로서, PGT의 내용이 바뀌면, 이 값을 하나 증가시킨다. 최대값 255 이후에는 0으로 바뀐다. 수신기는 자신이 보관하고 있는 PGT의 버전 번호가 이 값과 다르면, PGT를 다시 읽어 와서 그 내용을 해독한다.
table_length: 이 필드 다음부터 package_guide_table() 마지막 바이트까지의 바이트 수. 0의 값은 사용하지 않는다.
PGT_prefix_count: PGT에서 사용하는 prefix들의 수를 나타낸다. prefix는 PGT에 포함된 문자열 앞에 연접된다. prefix를 참조하고자 할 때에는 prefix 등장 순서를 인덱스로 사용하여 prefix를 참조한다. 0xFF 값은 인덱스 값으로 사용하지 않는다. 따라서 최대 255 개의 prefix를 포함할 수 있다.
PGT_prefix_length: prefix의 길이를 나타낸다.
PGT_prefix_byte: prefix의 문자를 나타낸다. 문자열 마지막의 널(null) 바이트는 포함하지 않는다.
PGT_provider_homepage_URL_prefix_index: PGT를 제공하는 기관의 홈페이지 URL의 prefix에 대한 인덱스. 앞에 나오는 prefix들 중 하나를 지정하는 값으로서, 이 필드의 값이 0xFF이면 prefix 문자열이 없음을 나타낸다.
PGT_provider_homepage_URL_length: 바로 다음에 나오는 PGT를 제공하는 기관의 홈페이지 URL 중 postfix의 길이.
PGT_provider_homepage_URL_byte: PGT를 제공하는 기관의 홈페이지 URL 중 postfix의 ASCII 문자 값
PGT_descriptors_length: 다음에 나오는 서술자 구문 루프의 길이
PGT_descriptor(): PGT와 관련된 서술자
redirect_flag_for_delta_update_info: 이 플래그 값이 '0'이면 PGT 갱신 정보는 PGT 내에 직접 포함되어 있으며, '1'이면 다른 곳에 위치한다.
redirect_flag_for_logical_channel_info: 이 플래그 값이 '0'이면 논리 채널 정보는 PGT 내에 직접 포함되어 있으며, '1'이면 다른 곳에 위치한다.
redirect_flag_for_package_info: 이 플래그 값이 '0'이면 패키지 정보는 PGT 내에 직접 포함되어 있으며, '1'이면 다른 곳에 위치한다.
redirect_flag_for_associated_table_info: 이 플래그 값이 '0'이면 PGT에 부수된 표 정보는 PGT 내에 직접 포함되어 있으며, '1'이면 다른 곳에 위치한다.
PGT_delta_update_info_molude_count: PGT_delta_update_info_module의 수
PGT_update_delta: PGT_delta_update_module을 작성할 때 기준이 되는 과거의 PGT 버전과 현재 PGT 버전의 차에 해당하는 값. 바로 다음에 나오는 MMT_general_location_info()는 PGT_delta_update_module()의 위치를 지정한다.
PGT_delta_update_info_module(): PGT_update_delta 만큼의 이전 버전의 PGT와 현재 PGT 간의 서로 다른 내용만을 담고 있는 데이터 모듈
PGT_logical_channel_info_update_version: <표 10>에 정의된 PGT_logical_channel_info()의 버전. 바로 다음에 나오는 MMT_general_location_info()는 PGT_logical_channel_info()의 위치를 지정한다.
PGT_logical_channel_info(): <표 10>에 정의된 논리 채널 정보
PGT_package_info_module_count: PGT_package_info_module()의 수
PGT_package_info_module_id: PGT_package_info_module()의 식별자
PGT_package_info_module_update_version: PGT_package_info_module()의 버전. 바로 다음에 나오는 MMT_general_location_info()는 PGT_package_info_module()의 위치를 지정한다.
PGT_package_count: 패키지의 수
PGT_package_info(): <표 11>에 정의된 패키지 정보. 하나의 패키지 정보는 하나의 패키지에 대한 정보만 담고 있다.
PGT_associated_table_info_module_count: PGT_associated_table_info_module()의 수
PGT_associated_table_info_module_id: PGT_associated_table_info_module()의 식별자
PGT_associated_table_info_module_update_version: PGT_associated_table_info_module()의 버전. 바로 다음에 나오는 MMT_general_location_info()는 PGT_associated_table_info_module()의 위치를 지정한다.
PGT_associated_table_count: PGT에 부수된 표들의 수. 동일한 table_id를 갖는 표는 하나의 표로 간주한다.
PGT_associated_sub_table_count: PGT에 부수된 표 내의 부표(sub-table)들의 수
PGT_associated_sub_table(): PGT에 부수된 표 내의 부표
PGT_delta_update_info_module()은 PGT의 내용 중, 갱신된 정보만 포함하고 있는 구문 요소 그룹이다. PGT_delta_update_info_module()은 갱신된 논리 채널 정보, 갱신된 각 패키지 정보, 갱신된 각 부수 부표(associated sub-table)를 선택적으로 포함할 수 있다.
수신기는 PGT_update_version이 자신이 보관하고 있는 PGT 버전과 다르면, PGT의 내용 중 PGT_descriptor() 루프까지 해독한 후, PGT_update_version에서 자신이 보관하고 있는 PGT 버전을 뺀 차와 같은 PGT_update_delta가 있는지 찾아보고, 있으면, 해당 PGT_delta_update_info_module()을 해독함으로써, PGT 갱신을 완료할 수 있다.
PGT_delta_update_info_module()의 구문은 <표 9>과 같다.
Figure pat00015
<표 9>에서 각 구문 요소의 의미는 다음과 같다.
PGT_update_delta: PGT_delta_update_module을 작성할 때 기준이 되는 과거의 PGT 버전과 현재 PGT 버전의 차에 해당하는 값
PGT_delta_update_info_molude_length: 이 필드 다음부터 PGT_delta_update_info_module() 마지막 바이트까지의 바이트 수
update_logical_channel_info_flag: 이 플래그가 '1'이면 논리 채널 정보에 대한 갱신 정보가 포함되어 있음을 나타낸다.
update_package_info_flag: 이 플래그가 '1'이면 패키지 정보에 대한 갱신 정보가 포함되어 있음을 나타낸다.
update_associated_table_flag: 이 플래그가 '1'이면 PGT에 부수된 표 정보에 대한 갱신 정보가 포함되어 있음을 나타낸다.
PGT_logical_channel_info(): <표 10>에 정의된 논리 채널 정보
PGT_package_update_count: 아래 구문 루프에 포함된 갱신된 패키지 정보의 수
PGT_package_info(): <표 11>에 정의된 패키지 정보
PGT_associated_table_update_count: 아래 구문 루프에 포함된 갱신된, PGT에 부수된 표 중 부표(sub-table)들의 수
PGT_associated_sub_table(): PGT에 부수된 표 중 부표(sub-table)
PGT_logical_channel_info()는 PGT의 내용 중, 해당 PGT 제공자가 제공하는 모든 논리 채널에 대한 메타데이터에 해당하는 구문 요소 그룹이다.
PGT_logical_channel_info()의 구문은 <표 10>과 같다. 여기서 구문 루프 인덱스인 PGT_logical_channel_index는 패키지 정보에서 사용하는 인덱스임에 유의하여야 한다.
Figure pat00016
<표 10>에서 각 구문 요소의 의미는 다음과 같다.
PGT_logical_channel_info_update_version: PGT_logical_channel_info()의 버전. 논리 채널 정보의 내용이 바뀔 때마다 하나씩 증가되며, 255에서는 0으로 바뀐다.
PGT_logical_channel_info_length: 이 필드 다음부터 PGT_logical_channel_info()의 마지막 바이트까지의 바이트 수
PGT_logical_channel_count: PGT에서 안내하는 논리 채널의 수
short_channel_name_length: UTF-8 인코딩을 사용하는 문자열로 표현된 논리 채널 이름의 바이트 수
short_channel_name_byte: 논리 채널 이름을 구성하는 바이트 데이터
physical_channel_type: 해당 논리 채널을 실어 나르는 물리 채널의 종류. 인터넷(0), 지상파(1), 위성(2), 케이블(3) 중 어떤 것인지를 나타낸다.
major_channel_number: 주 채널 번호
minor_channel_number: 부 채널 번호
service_id: MMT 서비스의 식별자
package_path_number: 어떤 방송 채널 내의 논리 채널을 구분하는 패키지 통로 번호를 나타낸다. '0' 값은 사용하지 않는다. package_path_number는 한 방송사 또는 방송사 집단에 의해 물리 채널 내에서 유일무이하게 할당된다.
test_channel_flag: 이 논리 채널은 시험용 논리 채널임을 나타낸다. 이 플래그의 값이 '1'이면 일반 수신기는 프로그램 안내에서 이 논리 채널 정보를 제공하지 않는다.
nvod_channel_flag: 이 논리 채널은 NVOD(Near Video On Demand)용임을 나타낸다.
relay_broadcast_flag: 이 논리 채널은 다른 논리 채널의 재송신 채널임을 나타낸다. 예를 들어, 케이블에서 지상파 방송을 재송신하는 경우, 해당 논리 채널에 대해 이 플래그는 '1'로 설정된다.
channel_protection_type: 이 논리 채널에 적용된 암호화 형태를 나타낸다. 이 값이 '0'이면 암호화되지 않았음을, '1'이면 이 논리 채널 내의 모든 패키지는 암호화되었음을, '2'이면 이 논리 채널 내의 패키지에 속하는 일부 애셋 또는 일부/전체 애셋의 일부분만 암호화되었음을, '3'이면 일부 패키지만 암호화되었음을 나타낸다. 이 필드 값이 '2'인 경우, 예를 들어, 비디오만 암호화되어 있거나, 패키지의 첫 10 분간만 암호화되어 있음을 나타낸다. 이 필드 값이 '3'인 경우, 예를 들어, 이 논리 채널로 전달되는 몇 개의 패키지만 암호화되어 있음을 나타낸다.
original_physical_channel_type: 원래의 물리 채널 종류
original_major_channel_number: 원래의 주 채널 번호
original_minor_channel_number: 원래의 부 채널 번호
MMT_general_location_info(): 이 논리채널에 해당하는 PPT 또는 SMT-S의 위치를 지정한다.
descriptors_length: 다음에 나오는 서술자 구문 루프의 길이
descriptor(): 논리 채널 정보와 관련된 서술자
PGT_package_info()는 PGT의 내용 중, 한 패키지에 대한 메타데이터에 해당하는 구문 요소 그룹이다. PGT_package_info()의 구문은 <표 11>과 같다.
Figure pat00017
Figure pat00018
Figure pat00019
<표 11>에서 각 구문 요소의 의미는 다음과 같다.
package_id: 이 논리 채널을 통해 현재 전달되는 패키지의 식별자이다. package_id는 각 패키지에 대해 방송사업자가 할당하는 값으로서 일정 기간 동안의 패키지들에 대해 고유한 값을 갖는다. 이 값은 일정 기간 후에 재사용 가능하다.
PGT_package_info_update_version: PGT_package_info()의 버전. 패키지 정보의 내용이 바뀔 때마다 하나씩 증가되며, 255에서는 0으로 바뀐다.
PGT_package_info_length: 이 필드 다음부터 PGT_package_info()의 마지막 바이트까지의 바이트 수
package_id_recycle_number: 16 비트의 package_id 번호 할당을 한 차례 완료할 때마다 하나씩 증가되는 값으로서, package_id와 함께 유일무이한 패키지 식별자가 된다.
start_time: 이 패키지에 해당하는 프로그램 아이템의 시작 시간을 UTC로 나타낸다.
duration: 이 패키지에 해당하는 프로그램 아이템의 지속 시간을 초 단위로 나타낸다. duration이 '0'이면 '지속 시간을 알지 못함'를 의미한다.
title_text_language_count: 이 패키지에 해당하는 프로그램 아이템의 제목을 나타내는 언어의 수
title_text_language: 이 패키지에 해당하는 프로그램 아이템의 제목 언어를 나타내는 ISO 639 표준에 의한 3 바이트의 언어 식별자
title_text_length: 이 패키지에 해당하는 프로그램 아이템의 제목을 나타내는 UTF-8 문자열의 길이를 바이트 단위로 알려 준다.
title_text_byte: 이 패키지에 해당하는 프로그램 아이템의 제목 문자열 바이트
package_homepage_URL_prefix_index: 이 패키지에 해당하는 프로그램 아이템의 홈페이지 URL의 prefix에 대한 인덱스. 앞서 PGT_header()에서 정의된 prefix들 중 하나를 지정하는 값으로서, 이 필드의 값이 0xFF이면 prefix가 없음을 나타낸다.
package_homepage_URL_length: 바로 다음에 나오는 이 패키지에 해당하는 프로그램 아이템의 홈페이지 URL 중 postfix의 길이.
package_homepage_URL_byte: 이 패키지에 해당하는 프로그램 아이템의 홈페이지 URL 중 postfix의 ASCII 문자 값
format_type: PGT_package_info()의 형식을 지정한다. format_type이 '0'ㅇP이a이면 l포함되며, '1;이면 이미 방송된 프로그램 아이템에 대한 '다시 보기' 정보만 포함되며, '2'이면 향후 방송될 프로그램에 대한 모든 정보가 포함된다. '다시 보기'는 이미 방송된 프로그램 아이템을 인터넷 서버로부터 유무료로 다운로드 또는 스트리밍 받아 시청할 수 있는 서비스이다.
PGT_logical_channel_index: 이 패키지를 실어 나르는 논리 채널에 대한 정보를 지정하는 인덱스. 이 인덱스 값은 <표 10>의 PGT_logical_channel_info()에서 제공하는 논리 채널들에 대한 인덱스이다.
post_event_replay_URL_flag: 이 패키지에 대한 '다시 보기' URL이 존재함을 나타낸다.
post_event_replay_URL_prefix_index: 이 패키지에 대한 '다시 보기' URL의 prefix에 대한 인덱스. 앞서 PGT_header()에서 정의된 prefix들 중 하나를 지정하는 값으로서, 이 필드의 값이 '0'이면 prefix가 없음을 나타내고, '0'이 아닌 'N' 값이면, N 번째 prefix를 지정한다.
post_event_replay_URL_length: 바로 다음에 나오는 이 패키지의 '다시 보기' URL 중 postfix의 길이.
post_event_replay_URL_byte: 이 패키지의 '다시 보기' URL 중 postfix의 ASCII 문자 값
package_protection_type: 이 패키지에 적용된 암호화 형태를 나타낸다. 이 값이 '0'이면 암호화되지 않았음을, '1'이면 이 패키지 내의 모든 애셋은 암호화되었음을, '2'이면 이 패키지 내의 일부 애셋 또는 어떤 애셋들의 일부분만 암호화되었음을 나타내며, '3' 값은 사용하지 않는다. 이 필드 값이 '2'인 경우, 예를 들어, 비디오 애셋만 암호화되어 있거나, 비디오 애셋과 오디오 애셋의 첫 10 분간만 암호화되어 있음을 나타낸다.
pay_type: 이 필드는 package_protection_type이 '0'이면 의미가 없으므로 수신기에 의해 무시되며, '1' 또는 '2'일 때는 의미를 갖는다. pay_type이 '0'이면 '유료 가입 필요', '1'이면 '프로그램 아이템 당 1 회 과금(pay-per-view)'임을 나타낸다. 관련 지불 안내 정보는 <표 8>의 PGT_descriptor() 구문 루프 또는 <표 11>의 PGT_package_info_descriptor() 구문 루프 내에 서술자를 이용하여 제공하여야 한다. 지불 안내 정보가 PGT_descriptor() 구문 루프와 PGT_package_info_descriptor() 구문 루프 모두에 존재하는 경우, PGT_package_info_descriptor() 구문 루프 내의 것이 우선한다.
content_id_flag: 이 패키지에 해당하는 프로그램 아이템에 대한 세계적으로 유일무이한 콘텐츠 식별자가 포함되어 있음을 나타낸다.
genre_flag: 이 패키지에 해당하는 프로그램 아이템의 장르 정보가 포함되어 있음을 나타낸다. 이 플래그 값이 '1'이면 장르 표(genre table)를 PGT_associated_table 중 하나로 전송하여야 한다.
parental_guidance_flag: 시청자 등급 정보가 포함되어 있음을 나타낸다. 이 플래그 값이 '1'이면 시청자 등급 표(rating table)를 PGT_associated_table 중 하나로 전송하여야 한다.
live_flag: 이 패키지는 실황 방송에 의한 것임, 즉 녹화 또는 녹음된 자료를 방송하는 것이 아님을 나타낸다.
serial_flag: 이 패키지에 해당하는 프로그램 아이템은 연속방송극과 같은 시리즈물 중 한 회임을 나타낸다.
rebroadcast_flag: 이 패키지에 해당하는 프로그램 아이템은 이미 방송된 프로그램 아이템에 대한 '재방송'임을 나타낸다.
rebroadcast_exist_flag: 이 패키지에 해당하는 프로그램 아이템에 대한 '재방송' 계획이 있음을 나타낸다.
recording_flag: 이 패키지를 녹화할 수 있음을 나타낸다.
multilingual_flag: 다국어 오디오를 지원함을 나타낸다.
commentary_channel_flag: 이 패키지에 대한 '화면 해설 방송'이 있음을 나타낸다.
sign_language_flag: 이 패키지에 대한 '수화 방송'이 있음을 나타낸다.
subtitles_flag: 이 패키지에 대한 '자막 방송'이 있음을 나타낸다. 자막은 UTF-8 인코딩에 의한다.
multivew_flag: 이 패키지 전체가 '다시점 방송'이거나, 이 패키지에 '다시점 방송'이 일부 포함되어 있음을 나타낸다. '다시점 방송'에는 양안식 스테레오스코픽 방송, 다시점 3D 방송, 다시점 방송 등이 모두 포함된다.
picture_size_grade_count: 화면의 크기 등급의 수. '2' 이상의 값이면, 비디오가 공간 계층부호화(spatial scalability encoding)에 의해 제공됨을 나타낸다.
picture_size_grade: 화면의 크기의 등급을 나타낸다. 예를 들어, 가로 해상도를 기준으로 240 화소급, 480 화소급, 720 화소급, 1,920 화소급, 3,840 화소급, 7,680 화소급 중 하나 이상을 나타낸다. picture_size_grade가 둘 이상이면, 비디오가 공간 계층부호화(spatial scalability encoding)에 의해 제공됨을 나타낸다.
audio_language: 오디오의 언어를 나타내는 ISO 639 표준에 의한 3 바이트의 언어 식별자
audio_grade: 오디오의 종류를 나타낸다. 예를 들어, 모노, 스테레오, 5.1 채널, 22.2 채널 중 하나를 나타낸다.
additional_audio_count: 추가적인 다른 언어 오디오의 수
additional_audio_language: 추가적인 다른 언어 오디오의 언어를 나타내는 ISO 639 표준에 의한 3 바이트의 언어 식별자
additional_audio_grade: 추가적인 다른 언어 오디오의 종류를 나타낸다. 예를 들어, 모노, 스테레오, 5.1 채널, 22.2 채널 중 하나를 나타낸다.
content_originator_id: 이 패키지에 해당하는 프로그램 아이템의 주 콘텐츠 저작자를 나타내는 세계적으로 유일무이한 식별자. 이 식별자는 등록기관에 등록 후 사용하여야 한다.
content_id: 이 패키지에 해당하는 프로그램 아이템에 대한 콘텐츠 식별자. 이 식별자는 각 저작자가 관리한다. content_originator_id와 content_id의 쌍은 어떤 콘텐츠를 세계적으로 유일무이하게 구분하는 식별자가 된다.
content_major_version: 이 패키지에 해당하는 프로그램 아이템의 주 버전.
content_minor_version: 이 패키지에 해당하는 프로그램 아이템의 부 버전 인덱스.
genre_system_id: 장르를 분류하는 시스템의 식별자. 실제로는 장르 표의 sub_table_id에 해당한다.
major_genre: 이 패키지에 해당하는 프로그램 아이템의 주 장르의 인덱스. 이 인덱스는 장르 표 내에 나와 있는 주 장르 엔트리에 대한 인덱스이다. 예를 들어, 주 장르는 스포츠를 들 수 있다.
minor_genre: 이 패키지에 해당하는 프로그램 아이템의 부 장르. 이 인덱스는 장르 표에 나와 있는 major_genre 내의 부 장르 엔트리에 대한 인덱스이다. 예를 들어, 부 장르는 스포츠 중 축구를 들 수 있다.
rating_system_id: 시청자 등급을 분류하는 시스템의 식별자. 실제로는 시청자 등급 표의 sub_table_id에 해당한다.
rate_index: 이 패키지에 해당하는 프로그램 아이템의 시청자 등급을 나타내는 인덱스. 이 인덱스는 시청자 등급 표에 나와 있는 시청자 등급 엔트리에 대한 인덱스이다.
season_number: 시리즈물의 시즌(season)을 나타낸다. 이 필드의 값이 '0'이면 시즌 구분이 없음을 나타낸다.
serial_number_minus1: 시리즈물의 시즌 내 회차 수 보다 하나 작은 값을 나타낸다.
prequel_package_id: 이 패키지에 해당하는 프로그램 아이템의 직전 회 패키지의 package_id. 이 필드의 값이 '0'이면 이 패키지에 해당하는 프로그램 아이템이 해당 시리즈물 해당 시즌의 첫 회임을 나타낸다.
sequel_package_id: 이 패키지에 해당하는 프로그램 아이템의 바로 다음 회 패키지의 package_id. 이 필드의 값이 '0'이면 이 패키지에 해당하는 프로그램 아이템이 해당 시리즈물 해당 시즌의 마지막 회임을 나타낸다.
rebroadcast_package_id: 이 패키지에 대한 '재방송'에 해당하는 패키지의 식별자
commentary_channel_count: 이 패키지에 대한 '화면 해설 방송'의 언어 수
commentary_language: '화면 해설 방송'의 언어를 지정하는 ISO 639 표준에 의한 3 바이트의 언어 식별자
subtitle_count: 이 패키지에 대한 '자막 방송' 언어 수
subtitle_language: '자막 방송'의 언어를 지정하는 ISO 639 표준에 의한 3 바이트의 언어 식별자
karaoke_flag: 해당 자막이 노래방 스타일인지를 나타내는 플래그
multiview_coverage_type: 이 필드 값이 '0'이면 이 패키지 전체가 다시점 비디오임을, '1'이면 이 패키지의 일부만 다시점 비디오임을 나타낸다.
multiview_scheme_type: '다시점 방송'의 방식이 양안식 스테레오스코픽 방송(1), 다시점 3D 방송(2), 내향형 다시점 방송(3), 외향형 다시점 방송(4), 여러 방향 다시점 방송(5)임을 나타낸다.
PGT_package_info_descriptors_length: 다음에 나오는 PGT_package_info_descriptor() 구문 루프의 길이
PGT_package_info_descriptor(): 추가적인 서술자를 넣을 수 있는 영역
PGT_associated_sub_table()의 구문은 <표 12>와 같이 일반적인 MMT 표의 구문을 따른다. 각 구문 요소의 의미는 그 아래에 정의하였다.
Figure pat00020
table_id: 표의 종류를 나타내는 식별자
version_id: 이 표의 구성을 나타내는 식별자. 표준 개정에 의해 표의 구성이 바뀌면 이 값도 바뀐다. 수신기는 이 값을 보고, 이 표가 자신이 이해할 수 있도록 구성된 것인지를 판단한다. 표의 내용이 기존의 것과 비호환적으로 개정된 때에만 이 값을 증가시키도록 한다.
table_sub_id: 부표(sub-table)의 식별자
update_version: 이 필드 다음부터 이 부표의 마지막까지의 내용에 대한 변경 여부를 나타내는 버전 번호로서, 변경된 경우, 이 값을 하나 증가시킨다. 최대값 255 이후에는 0으로 바뀐다. 수신기는 자신이 보관하고 있는 이 부표의 버전 번호가 이 값과 다르면, 이 부표를 다시 읽어 와서 그 내용을 해독한다.
table_length: 이 필드 다음부터 이 부표의 마지막 바이트까지의 바이트 수
sub_table_contents(): 각 부표에 따라 달라지는 내용
CRC_32: MPEG-2 시스템 표준[8]의 섹션 구문에서 정의한 CRC_32와 동일한 필드
PGT_package_info_module()은 PGT가 패키지 안내 정보를 직접 포함하지 않고, 패키지 안내 정보가 존재하는 외부 경로 또는 파일을 참조함으로써 간접적으로 이를 포함할 때, 하나 이상의 패키지에 대한 안내를 포함하는 데이터 구조이다.
PGT_package_info_module()의 구문은 <표 13>과 같고 각 구문 요소의 의미는 그 아래 정의된 바와 같다.
Figure pat00021
PGT_package_info_module_id: PGT_package_info_module()의 식별자. 이 식별자는 재사용 가능하며, 이 식별자가 재사용되지 않는 한, 이 모듈은 항상 같은 패키지들에 대한 정보를 포함한다.
PGT_package_info_module_update_version: PGT_package_info()의 버전. 이 필드 다음의 내용이 바뀔 때마다 식별자 재사용 여부에 상관없이 하나씩 증가되며, 255에서는 0으로 바뀐다.
PGT_package_info_module_length: 이 필드 다음부터 PGT_package_info()의 마지막 바이트까지의 바이트 수
reallocation_flag: 이 필드 값이 '1'이면 이 모듈의 식별자와 동일한 식별자를 갖는 이전에 수신한 모듈에 포함된 패키지들과는 다른 패키지들에 대한 정보가 이 모듈에 포함되어 있음을 나타낸다. 즉 식별자가 재사용됨을 나타낸다.
PGT_package_count_in_this_module: 이 모듈에 포함된 패키지 정보의 수
CRC_32: MPEG-2 시스템 표준의 섹션 구문에서 정의한 CRC_32와 동일한 필드
AAT(Adjunct Asset Table)는 부 애셋(adjunct asset)의 정보를 전달한다. AAT에 포함된 부 애셋을 동기화할 대상에 해당하는 주 애셋(primary asset)이 속한 패키지를 구성하는 별도의 애셋으로서 AAT를 주기적으로 전달한다.
주 애셋과 부 애셋의 동기화 방법, AAT의 정의는 국내출원번호 P2011-0095458에 나와 있다. 본 명세서에서는 설명의 편의를 도모하기 위해, AAT의 구문 및 각 필드의 의미를 아래에 포함하였다.
AAT의 구문은 <표 14>와 같고 각 필드의 의미는 그 아래 정의된 바와 같다.
Figure pat00022
Figure pat00023
table_id: 표의 종류를 나타내는 식별자. AAT에 해당하는 유일무이한 값을 할당한다.
version_id: 이 표의 구성을 나타내는 식별자. 표준 개정에 의해 표의 구성이 바뀌면 이 값도 바뀐다. 수신기는 이 값을 보고, 이 표가 자신이 이해할 수 있도록 구성된 것인지를 판단한다.
sub_table_id: 전체 표를 여러 개의 부표(sub-table)로 그 내용을 나누어 전송하는 경우 각 부표를 구분한다.
update_version: AAT는 주기적으로 전송되므로, AAT의 내용이 직전에 전송된 동일한 sub_table_id를 갖는 AAT의 내용과 다르면, 이 값을 하나 증가시킨다. 최대값 255 이후에는 0으로 바뀐다. 수신기는 이 값이 바뀌면, AAT의 내용을 다시 읽어 들여 해독한다.
table_length: 이 필드 다음부터 AAT 마지막 바이트까지의 바이트 수. 0의 값은 사용하지 않는다.
locator_prefix_count: 다음에 나오는 locator_prefix들의 수를 나타낸다. locator_prefix는 adjunct_asset_locator에서 제공되는 locator 문자열 앞에 연접되어, URL을 형성한다. adjunct_asset_locator에서는 locator_prefix 등장 순서를 인덱스로 사용하여 locator_prefix를 참조한다. 이 필드의 값 0xFF는 사용하지 않는다. 따라서 최대 255 개의 locator_prefix를 포함할 수 있다.
locator_prefix_length: locator_prefix 문자열의 길이를 나타낸다.
locator_prefix_byte: locator_prefix 문자를 나타낸다. 문자열 마지막의 널(null) 바이트는 포함하지 않는다.
adjunct_asset_type: 어떤 형식의 부 애셋인지를 나타낸다. 예를 들어, 웹 문서, 위젯, 대화형 애플리케이션, 오디오 클립, 비디오 클립, 그래픽, 문자, 이미지, 보조 미디어 구성요소 등에 대해 서로 다른 형식별로 유일무이한 값을 할당한다. 다음에 나오는 구문 루프 내의 부 애셋들에 대해 이 adjuct_asset_type 값이 동일하게 적용된다.
adjunct_asset_count_minus1: 다음에 나오는 신택스 루프 내에 서술된 부 애셋의 수 보다 하나 작은 값. 최대 256 개까지의 부 애셋을 표시할 수 있다. 만약 동일한 adjuct_asset_type을 갖는 부 애셋의 수가 256 개를 초과하면 두 개 이상의 구문 루프를 사용하여 서술하도록 한다.
adjunct_asset_id: 부 애셋을 지정하는 48 비트의 유일무이한 글로벌 식별자. 여기서 유일무이성은 일정 기간 동안만 유지되며, 일정 기간 후 식별자 값은 재사용 가능하다. 글로벌한 식별자가 되기 위해서는 이 필드를 32 비트의 제공자 식별자(provider_identifier)와 16 비트의 애셋 식별자(asset_identifier)의 두 부분으로 나누고, 제공자 식별자는 등록 기관을 지정하여 제공자별로 등록하도록 하고, 애셋 식별자는 제공자 자체적으로 관리하도록 한다.
execution_attribute: 수신기가 이 부 애셋을 수신하였을 때, 어떻게 실행하여야 하는지를 나타내는 여러 필드를 포함한다.
execution_on_reception: 수신한 부 애셋을 수신기 내부의 부 애셋 캐시에 저장한 후, "즉시 실행" 할지 여부를 나타내는 플래그. 즉시 실행하지 않는 경우는, 본 발명에서 제안하는 동기화 방법에 의해 지정된 시점에서 시행되거나, 사용자의 선택이나 다른 부 애셋으로부터의 호출에 의해 시행된다. 이 플래그가 1이면, execution_entry_point도 1로 설정되어야 한다.
media_service_bound: 이 미디어 서비스에 귀속(media_service_bound)되는지 여부를 나타내는 플래그. 이 플래그가 1이면, 이 미디어 서비스에 귀속됨을 나타내며 해당 부 애셋은 방송 채널 전환 시에 자동 종료된다.
execution_entry_point: 직접 시행 가능한 부 애셋임을 나타내는 플래그. 이 플래그 값이 0이면, 다른 부 애셋에 의해 간접적으로 시행된다.
visible_to_user: 사용자가 부 애셋 내비게이션 기능을 활용해 선택 시행할 수 있는지 여부 또는 다른 부 애셋이 수신기가 제공하는 API를 통해 부 애셋 목록을 검색할 때 보이게 하는지 여부를 나타내는 2 비트 필드. visible_to_user의 의미는 <표 15>와 같다.
secure_execution: 부 애셋의 안전성 여부를 나타내는 2 비트 정보. secure_execution의 의미는 <표 16>과 같다.
adjunct_asset_priority: 부 애셋의 실행 우선순위를 나타내는 필드. adjunct_asset_priority의 값이 클수록 우선순위가 높다. 부 애셋을 실행시키기 위한 수신기의 자원이 부족한 경우, 현재 실행 중인 부 애셋 중 우선순위가 가장 낮은 것부터 일시 중지시키거나 종료한다.
Figure pat00024
Figure pat00025
adjunct_asset_locator_count_minus1: 부 애셋을 읽어올 곳의 수보다 하나 작은 값. 2 비트로서 모두 4 곳까지 나타낼 수 있다. 2 곳 이상이 제공된 경우에는, 아래 adjunct_asset_locator가 등장하는 순서에 따라 우선순위를 둔다. adjunct_asset_locator는 반드시 하나 이상 등장한다.
adjunct_asset_locator: 부 애셋을 읽어올 곳의 정보를 알려준다.
adjunct_asset_descriptor_loop_length: 이 필드 다음부터 서술자 구문 루프의 마지막 바이트까지의 바이트 수
adjunct_asset_descriptor: 후술될 여러 가지 서술자가 이 서술자 구문 루프에 포함될 수 있다.
CRC_32: MPEG-2 시스템 표준의 섹션 구문에서 정의한 CRC_32와 동일한 필드
리소스 데이터 위치 정보인 adjunct_asset_locator는 부 애셋을 읽어올 곳을 알려준다. 부 애셋은 방송망의 캐루젤을 통해서 전달되거나 인터넷을 통해 다운로드된다. AAT에는 부 애셋 당 반드시 하나 이상의 adjunct_asset_locator가 포함되어야 한다. 수신기는 먼저 등장하는 adjunct_asset_locator가 지정하는 위치로부터 부 애셋을 읽어오며, 만약 오류가 발생하면 다음 adjunct_asset_locator가 지정하는 위치로부터 부 애셋을 읽어온다.
adjunct_asset_locator의 구문은 <표 17>과 같고 각 필드의 의미는 그 아래 정의된 바와 같다. <표 17>에는 인터넷의 경우만 포함하였고, 캐루젤의 경우에는 ISO/IEC 13818-6:1998에 기재된 캐루젤 방식에 따라 달라지므로 구체적인 사항을 포함하지는 않았다.
Figure pat00026
locator_type: 부 애셋을 읽어 올 곳이 인터넷인지 아니면 방송망의 캐루젤인지, 또 여러 가지 종류의 캐루젤이 함께 사용된다면 어떤 캐루젤인지를 나타내는 8 비트의 필드.
locator_prefix_index: <표 14>의 locator_prefix 중 하나를 지정하는 인덱스. 이 필드의 값이 0xFF이면 locator_prefix가 없음을 나타낸다.
directory_path_length: 다음에 나오는 디렉토리 경로 문자열의 길이. 문자열 마지막의 널 바이트는 포함하지 않는다. 이 필드의 값이 0이면 디렉토리 경로는 사용하지 않는다.
directory_path_byte: 디렉토리 경로의 바이트. 문자열 마지막의 널 바이트는 포함되지 않는다.
entry_path_length: 다음에 나오는 최초 페이지 파일 경로의 길이. 문자열 마지막의 널 바이트는 포함하지 않는다. 웹 페이지와 같이 여러 개의 파일로 구성된 부 애셋의 경우에만 의미를 갖는다. 단일 파일의 부 애셋의 경우, 이 필드의 값은 0이다.
entry_path_byte: 최초 페이지 파일 경로의 바이트. 문자열 마지막의 널 바이트는 포함되지 않는다.
object_count: 다음에 나오는 파일 경로들의 수. 만약 이 필드 값이 0이면, 디렉토리 전체를 지정한다.
object_path_length: 다음에 나오는 파일 경로 문자열의 길이. 문자열 마지막의 널 바이트는 포함하지 않는다.
object_path_byte: 파일 경로의 바이트. 문자열 마지막의 널 바이트는 포함되지 않는다.
한편, 앞서 설명한 바와 같이 <표 14>의 adjuct_asset_descriptor에는 여러 가지 서술자가 들어갈 수 있다. 부 애셋을 처리할 수 있는 수신기 능력을 나타내는 handler_capability_descriptor(), 부 애셋 캐시 관리를 위한 요구 메모리 양, 유효 기간 등을 나타내는 adjunct_asset_cache_descriptor(), 화면에 표출될 부 애셋의 디스플레이 상의 위치를 나타내는 display_position_descriptor(), 사용자에게 보여줄 부 애셋의 이름을 알려주는 adjunct_asset_name_descriptor(), 사용자에게 보여줄 부 애셋의 아이콘을 알려주는 adjunct_asset_icon_descriptor() 등이 여기에 해당된다.
PGT_reference_descriptor는 PGT의 버전과 위치 참조 정보를 전달한다. SMT_M_descriptor 구문 루프 내 또는 SMT_S_descriptor(PPT_body()가 SMT-S 내에 사용된 경우, PPT_body() 내의 descriptor를 SMT_S_descriptor라 부르기로 함) 구문 루프 내에 포함될 수 있다. SMT에 PGT_reference_descriptor가 포함되어 있지 않으면, 해당 서비스는 프로그램 안내를 제공하지 않는 것으로 간주된다.
PGT_reference_descriptor의 구문은 <표 18>과 같고 각 필드의 의미는 그 아래 정의된 바와 같다.
Figure pat00027
descriptor_tag: 이 서술자의 종류를 나타내는 고유한 값
descriptor_length: 이 필드 다음부터 이 서술자의 마지막 바이트까지의 바이트 수
PGT_provider_id: PGT를 제공하는 기관의 고유 식별자. 한 기관은 하나의 PGT를 제공할 수 있으며, PGT_provider_id는 해당 등록 기관에 의해 할당된다.
PGT_update_version: PGT 내용의 변경 여부를 나타내는 버전 번호로서, PGT의 내용이 바뀌면, 이 값을 하나 증가시킨다. 최대값 255 이후에는 0으로 바뀐다. 수신기는 자신이 보관하고 있는 PGT의 버전 번호가 이 값과 다르면, PGT를 다시 읽어 와서 그 내용을 해독한다.
number_of_locations: PGT 위치 참조 정보의 수를 나타낸다. 동일한 버전의 PGT가 저장되어 있는 곳들의 위치가 이 필드 값만큼 아래에 나온다.
MMT_general_location_info(): PGT의 위치를 지정한다.
MMT_general_location_info()는 일반적인 위치 참조 정보로서, 그 내용은 <표 5>와 같다. MMT_general_location_info()가 두 개 이상의 나오면, 수신기는 먼저 나온 순으로 접근을 시도한다.
MMT_composition_descriptor는 SMIL에 기반하여 어떤 패키지에 속한 애셋(PPT 애셋 포함)들의 공간적 화면 배치 정보를 제공한다. 어떤 패키지의 재생 구간 동안 화면 배치가 바뀌지 않는 경우, 이 서술자를 이용하여 화면 배치 정보를 제공할 수 있다. 이 서술자는 SMT_S_descriptor 구문 루프 내 또는 PPT_descriptor(PPT_body()가 PPT 내에 사용된 경우, PPT_body() 내의 descriptor를 PPT_descriptor라 부르기로 함) 구문 루프 내에 포함될 수 있다.
MMT_composition_descriptor의 구문은 <표 19>와 같고 각 필드의 의미는 그 아래 정의된 바와 같다.
Figure pat00028
descriptor_tag: 이 서술자의 종류를 나타내는 고유한 값
descriptor_length: 이 필드 다음부터 이 서술자의 마지막 바이트까지의 바이트 수
version: 패키지 콤포지션 정보가 변경되면, 이 필드 값은 하나씩 증가하고, 255 다음에는 0으로 바뀐다.
compression_type: 패키지 콤포지션 정보를 압축하는 방식을 나타낸다. 이 필드의 값이 '0'이면 압축하지 않았음을 나타내고, '1'이면 GZIP에 의해 압축되었음을 나타낸다. 나머지 값은 추후 정의를 위해 유보된 값이다.
XML_length: 패키지 콤포지션 정보의 길이를 바이트 수로 나타낸다.
XML_package_composition_byte: 패키지 콤포지션 정보의 바이트. 패키지 콤포지션 정보의 정의는 ISO/IEC JTC 1/SC 29/WG 11 m19266에 나와 있다.
alternate_package_descriptor는 정규 편성에 의해 중단된 생중계를 대체 패키지를 이용해 이어 시청하거나 또는 전체 이벤트(예를 들어, 골프 중계) 중 후반부만 생중계하는 경우, 해당 이벤트를 처음부터 대체 패키지를 이용해 시청할 수 있게 하는 서술자이다. 또 생중계 여부와 무관하게 어떤 패키지 전체, 즉 시작부터 마지막까지에 대한 대체 패키지를 지정할 때에도 사용할 수 있다.
MMT_package_descriptor는 SMT_S_descriptor 구문 루프 내 또는 PPT_descriptor 구문 루프 내에 포함될 수 있다. 만약 대체 패키지의 위치가 여러 곳일 때에는 여러 개의 alternate_package_descriptor가 이에 포함될 수 있다.
이 서술자의 목적, 사용 시나리오, 정의 및 사용 방법은 국내출원번호 P2011-0095665에 나와 있다. 본 명세서에서는 설명의 편의를 도모하기 위해, alternate_package_descriptor의 구문을 <표 20>에 보였고, 각 필드의 의미를 그 아래에 포함하였다.
Figure pat00029
descriptor_tag: 어떤 서술자인지를 나타내는 8 비트의 필드. MPEG-2 시스템 표준 또는 이를 이용하는 방송 표준에서 정의한 다른 서술자들과 구분될 수 있도록 대체 프로그램 서술자임을 나타내는 고유 값을 할당한다.
descriptor_length: 이 서술자의 길이를 바이트 단위로 나타내는 8 비트의 필드. 이 필드 다음 바이트부터 서술자의 마지막 바이트까지의 길이를 나타낸다.
alternate_program_id: 대체 프로그램 식별자에 해당하는 8 비트의 필드. alternate_program_descriptor가 서술하는 대체 프로그램이 서로 다르면, 서로 다른 alternate_program_id를 할당한다. 실제 생중계 시작 전에 대체 프로그램을 시청할 수 있도록 안내하는 경우에는 동일한 대체 프로그램에 대해 주기적으로 여러 차례 안내 정보가 전송될 수 있는데, 이러한 경우에는 동일한 alternate_program_id를 계속 사용한다. 0부터 255까지의 값을 모두 사용하면, 이미 사용한 값을 재사용한다.
reserved: 추후 사용하기 위해 유보된 필드로서 그 값은 0x7F로 채운다.
just_alternate_flag: 이 서술자에 포함된 내용이, 이 서술자를 포함하고 있는 패키지(생중계용 여부에 무관)에 대한 대체 패키지에 대한 것임을 나타낸다. 이 플래그가 '1'이면 future_flag는 의미를 갖지 않으며, text_length는 항상 '0'이다.
future_flag: 이 서술자에 포함된 내용이 미리부터 대체 시청할 프로그램에 대한 것인지 아니면 현재 프로그램 종료 후 이어 시청할 대체 프로그램에 대한 것인지를 나타내는 1 비트의 필드. 이 필드의 값이 '1'이면 미리부터 대체 시청할 프로그램을 나타내고, '0'이면 종료 후 이어 시청할 대체 프로그램을 나타낸다.
time_to_future_live_program: future_flag가 '1'인 경우, 이 프로그램 채널을 통해 생중계가 시작되기까지의 시간을 초 단위로 나타내는 16 비트의 필드. 이 필드의 값이 0x0000이면, 즉시 생중계가 시작되거나, 이미 시작되었음을 의미한다. 이 값은 대체 패키지인 인터넷 생중계 서비스로부터 방송 채널의 생중계 프로그램으로 복귀하는 경우에 사용할 수 있다. 이 필드의 값이 0xFFFF이면, 이 채널을 통해 생중계가 시작되기까지의 시간을 알 수 없음을 나타낸다. 이 값은 이 프로그램 채널을 통해 생중계가 될 예정인 이벤트를 인터넷 생중계 서비스를 통해 대체 시청하긴 하나, 이 프로그램 채널을 통해 생중계가 언제 시작될지를 모르는 경우 사용한다.
MMT_general_location_info(): MMT에서 정의한 일반적인 위치 참조 정보로서, 그 내용은 <표 5>와 같다.
text_length: 다음에 나올 text_byte들의 수를 나타내는 8 비트 필드. 0x00 값은 대체 프로그램을 설명하는 문자열이 없음을 나타낸다.
text_byte: 대체 프로그램을 설명하는 문자열을 구성하는 바이트들로서 마지막에 널(null) 바이트를 포함하지 않는다.
extension_descriptor(): 추가적인 정보를 전달하는 선택사항(option)에 해당하는 서술자들로서, 그 종류를 구분하는 8 비트의 태그(tag) 값은 alternate_package_descriptor 내에서만 유일무이하게 구분되며, 이러한 서술자의 첫 바이트이다. 서술자의 길이를 나타내는 8 비트의 값이 바로 다음에 나온다.
alternate_program_descriptor는 descriptor_tag와 descriptor_lenth의 크기가 8 바이트이고, descriptor_tag 값이 MPEG-2 서술자 태그 값으로 할당된다는 점만 제외하면 이 필드들의 크기가 16 비트인 alternate_package_descriptor의 내용과 동일하다. 즉 alternate_program_descriptor는 alternate_package_descriptor를 MPEG-2 서술자로 변형한 것이다.
alternate_program_descriptor는 alternate_package_descriptor와 유사한 목적으로 사용되나, MPEG-2 PMT의 program_info_length 다음의 서술자 구문 루프 내에 넣는다. MPEG-2 TS 기반의 MPEG-DASH의 경우, 이 서술자를 PMT에 직접 넣을 수도 있다.
language_descriptor는 사용하는 언어를 명시할 필요가 있는 애셋에 대해, 그 언어를 지정하기 위해 사용된다. 예를 들어, 오디오, 자막, 화면 해설 방송 등에 해당하는 애셋은 어떤 언어로 제작되었는지 명시할 필요가 있다. language_descriptor는 PPT의 PPT_descriptor 구문 루프 또는 asset_descriptor 구문 루프 내, 그리고 SMT-S 내의 SMT_S_descriptor 구문 루프 또는 asset_descriptor 구문 루프 내에 포함될 수 있다. 이 서술자가 PPT_descriptor 또는 SMT_S_descriptor 구문 루프에 들어가면, 해당 패키지의 모든 애셋의 언어는 이 서술자에 의해 지정된다. 이 서술자가 asset_descriptor 구문 루프 들어가면, 해당 애셋의 언어는 이 서술자에 의해 지정된다. 해당 애셋에 적용되는 서술자의 내용이 해당 패키지의 모든 애셋에 적용되는 서술자의 내용보다 우선한다. 본 명세서에서는 설명의 편의를 도모하기 위해, language_descriptor의 구문을 <표 21>에 보였고, 각 필드의 의미를 그 아래에 포함하였다.
Figure pat00030
descriptor_tag: 이 서술자의 종류를 나타내는 고유한 값
descriptor_length: 이 필드 다음부터 이 서술자의 마지막 바이트까지의 바이트 수
ISO_639_language_code: ISO 639 표준에 의한 3 바이트의 언어 식별자
clock_reference_descriptor는 미디어 동기화를 위한 부호기 클록과 MMT 시스템 클록과의 관계를 수신기로 알려주기 위해 사용된다. MMT에서는 NTP(Network Time Protocol) 형식의 UTC를 시스템 클록으로 사용하며, 애셋 부호기 클록은 에셋 별로 서로 다른 클록을 사용할 수 있도록 허용한다. 애셋 부호기가 사용한 클록은 clock_reference_id에 의해 구분된다.
clock_reference_descriptor는 100 ms 이내의 주기로 주기적으로 전달되어야 하며, 별도의 애셋으로 전달된다. 본 명세서에서는 설명의 편의를 도모하기 위해, clock_reference_descriptor의 구문을 <표 22>에 보였고, 각 필드의 의미를 그 아래에 포함하였다.
Figure pat00031
descriptor_tag: 이 서술자의 종류를 나타내는 고유한 값
descriptor_length: 이 필드 다음부터 이 서술자의 마지막 바이트까지의 바이트 수
clock_reference_id: 애셋 부호기가 사용한 클록의 식별자
encoder_clock_sample: 아래에 나오는 system_clock_time에 대응되는 애셋 클록 샘플 값
encoder_clock_sample: 위에 나오는 encoder_clock_sample에 대응되는 MMT 시스템 클록 시간으로서, NTP 형식의 UTC 시간 값이다.
도 5는 본 발명의 다른 실시 예에 따라, S1 시그널링 구조를 나타낸다.
본 발명의 다른 실시 예에 따른 6개 S1 계층 메시지를 정리하면 다음과 같다.
(1)표 및 알림 정보(Information on Tables and Notice : ITN)에 대한 메시지: 이러한 메시지는 ITN 표 (505) 및 추가로 패키지에 대한 고속 액세스를 위해 사용될 수 있는 다른 표들을 전송한다. ITN의 역할은 MPEG-2와 유사하지만 다른 MMT 특정 기능들을 갖는다. ITN 표는 모든 다른 S1 표들에 대한 풀 정보를 포함한다. 또한, ITN은 알림 수신에 관한 정보를 갖는다. 알림의 통상의 예는 긴급 경보, 긴급 통지 등이다.
(2)MMT 합성 정보(MMT Composition Information : MCI)에 대한 메시지: 이러한 메시지는 MMT CI를 전송한다. 이것은 풀 CI 뿐만 아니라 계층화된 CI들을 전송한다.
(3)클록 레퍼런스 서술자(Clock Reference Descriptors : CRD)에 대한 메시지: 이러한 메시지는 MMT 시스템 클록(즉, NTP 클록)과 임의의 다른 클록(예를 들어, MPEG-2 또는 MPEG-4 클록) 사이의 매핑을 위해 사용될 클록 레퍼런스 정보를 전송한다.
(4)보안 정보에 대한 메시지(Messages for Security Information): 이러한 메시지는 MMT 콘텐츠 보호를 위해 사용된 보안 정보를 전송한다. 보안 시스템은 DRM, 다운로드가능한 DRM 및 다운로드가능한 조건 평가 시스템(D-CAS) 정보이다.
(5)MMT 패키지 표(MPT)에 대한 메시지(Messages for MMT Package Table (MPT)): 이러한 메시지는 MMT 패키지 표(MPT)을 전송한다. 완벽한 또는 계층-0 MPT는 MMT 패키지에 대응한다. 이것은 패키지의 글로벌하게 고유한 식별자, MMT 합성 정보(MCI)의 위치 및 MMT 패키지에 속하는 MMT 애셋의 완벽한 또는 부분적(가능하게는, 계층화된 MPT가 사용됨) 리스트를 포함한다. 또한, 이것은 패키지 타입, 패키지 명칭, 패키지의 짧은 설명, 패런털 레이팅, 오디오의 언어, 텍스트의 언어, 타겟 사용자 프로파일, 요구된 디바이스 능력, 기록 허가 및 고속 플레이 허가와 같은 패키지 정책 등을 포함한다. MPT의 역할은 MPEG2 PMT와 유사하지만 MMT 목적을 위해 더 많은 기능들을 갖는다.
(6)디바이스 능력 정보 표(DCIT)에 대한 메시지(Messages for Device Capability Information Table (DCIT)): 이러한 메시지는 디바이스 능력 정보 표(DCIT)을 전송한다. 디바이스 능력 정보는 MPEG 미디어 콘텐츠 소비에 대한 요청 및/또는 권장된 디바이스 능력을 제공한다.
또한, 본 발명의 다른 실시 예에 따라 아래의 3개의 서술자들이 정의된다.
(1)언어 서술자(Language descriptor)
(2)클록 레퍼런스 서술자(Clock reference descriptor)
(3)D-CAS 서술자 D-CAS descriptor
이하에서는 도 5를 참조하여 본 발명의 다른 실시 예에 따른 S1 계층 메시지, 표 및 서술자의 신택스 및 시멘틱을 정의하기로 한다.
1. S1 계층 메시지, 표, 및 서술자의 신택스 및 시멘틱
1.1 정보 표 및 알림의 정보(ITN)에 대한 메시지
이러한 메시지는 ITN 표(505)를 전송한다. ITN의 역할은 MPEG-2 PAT와 유사하지만 다른 MMT 특정 기능들을 갖는다. ITN 표는 모든 다른 S1 표에 대한 풀 정보를 포함한다.
또한, ITN은 알림 수신에 관한 정보를 갖는다. 알림의 통상의 예는 긴급 경보, 긴급 통지 등이다.
ITN 메시지, 즉, ITN을 포함하는 메시지는 MMT 패키지에 대응하는 하나 이상의 MMT 패키지 표(MPT)을 추가로 포함할 수도 있다. MPT는 패키지의 글로벌하게 고유한 식별자, MMT 합성 정보(MCI)의 위치 및 MMT 패키지에 속하는 MMT 애셋의 완벽한 또는 부분적(가능하게는, 계층화된 MPT가 사용됨) 리스트를 포함한다. 또한, MP[T는 패키지 타입, 패키지 명칭, 패키지의 짧은 설명, 패런털 레이팅, 오디오의 언어, 텍스트의 언어, 타겟 사용자 프로파일, 요구된 디바이스 능력, 기록 허가 및 고속 플레이 허가와 같은 패키지 정책 등을 포함한다.
ITN 메시지가 하나의 MPT만을 포함하면, 미디어 전달 서비스는 임의의 고정 시간 순간에 하나의 패키지만을 사용자에게 제공한다. ITN 표가 시간라인에서 임의의 중복을 갖는 다중 MPT를 포함하면, 미디어 전달 서비스는 임의의 고정된 시간 순간에 다중의 패키지를 사용자에게 제공한다. ITN 표가 시간 중복을 갖지 않고 대응하는 패키지들이 동일한 논리 채널과 연관되는 다중의 MPT를 포함하면, 미디어 전달 서비스는 순차적 시간 순서로 다중의 패키지를 사용자에게 제공한다.
MessageID=0x00를 갖는 S 계층 메시지는 ITN 표를 포함해야 한다. 또한, MessageID=0x00를 갖는 S 계층 메시지를 전송하는 IP 애플리케이션 데이터 흐름에서의 애셋 경로의 페이로드 id는 '0x0000'로 고정된다. 수신기는 임의의 다른 메시지를 판독하기 이전에 ITN 메시지를 판독하여 분석해야 한다.
ITN 메시지는 통상적으로 짧은 파워업 지연 또는 낮은 재핑 시간을 보장하기 위해 브로드캐스트 환경에서 매우 짧은 주기, 예를 들어, 500ms로 주기적으로 송신된다.
1.1 1 ITN 메시지 신택스 및 시멘틱
ITN 메시지의 신택스는 표 23에 정의되고, 그것의 신택스 엘리먼트들의 시멘틱은 아래의 표 23 제공된다. 신택스 정의의 방법은 MPEG-2 시스템 표준(ISO/IEC 13818-1)의 방법에 기초한다. "값" 컬럼에서의 루프 카운트 없음 표시는 표의 길이로부터 추론될 수 있다. 동일한 규칙이 본 명세서에서의 다른 표들에 적용된다.
Figure pat00032
message_id: 이것은 S 계층 메시지의 타입을 나타낸다. 이러한 필드의 길이는 8비트이다. ITN 메시지는 값 0x00을 갖는 고정 message_id를 갖는다.
version: 이것은 S 계층 메시지의 버전을 나타낸다. MMT 클라이언트는 수신된 S 계층 메시지가 새로운 것인지 여부를 체크할 수 있다. 특히, 이러한 필드는 S 계층 메시지가 브로드캐스팅 네트워크를 통해 반복적으로 송신되는 경우에 유용한다. 이러한 필드의 길이는 8비트이다.
length: 이것은 S1 계층 메시지의 길이를 나타낸다. 이러한 필드의 길이는 16비트이다. 이것은 다음 필드로부터 ITN 메시지의 최종 바이트까지 시작하는 바이트에서 카운팅된 ITN 메시지의 길이를 나타낸다. 값 '0'은 이러한 필드에 대해 결코 사용되지 않는다.
start_time_flag: 이러한 플래그가 '1'이면, 추가의 신택스 엘리먼트 start_time이 사용된다.
start_time: 이것은 ITN 메시지 송신의 NPT에서의 시작 시간을 나타낸다.
retransmission_period: 이것은 ITN 메시지의 재송신 시간을 나타낸다. retransmission_period의 단위는 10ms이다.
number_of_tables: 이것은 이러한 ITN 메시지에 포함된 표의 수를 나타낸다.
table_id: 이것은 이러한 ITN 메시지에 포함된 표의 표 식별자를 나타낸다. 이것은 이러한 ITN 메시지의 페이로드에 포함된 표에서의 table_id 필드의 카피이다.
table_version: 이것은 이러한 ITN 메시지에 포함된 표의 버전을 나타낸다. 이것은 이러한 ITN 메시지의 페이로드에 포함된 표에서의 버전 필드의 카피이다.
table_length: 이것은 이러한 ITN 메시지에 포함된 표의 길이를 나타낸다. 이것은 이러한 ITN 메시지의 페이로드에 포함된 표에서의 길이 필드의 카피이다. 표의 실제 길이는 표 길이+4이다.
table(): 이것은 S 계층 표를 나타낸다. 페이로드에서의 표는 연장 필드에서의 table_Id와 동일한 순서로 나타난다.
1.1. 2 ITN 표 신택스 및 시멘틱
ITN 표의 신택스는 표 24에 정의되고, 그것의 신택스 엘림먼트들의 시멘틱이 표 24 아래에 제공된다.
Figure pat00033
Figure pat00034
table_id: ITN 표의 표 식별자.
version: ITN 표의 버전. 더 새로운 버전은 수신되자 마자 구 버전을 오버라이드한다.
length: 다음 필드로부터 ITN 표의 최종 바이트까지 시작하는 바이트에서 카운팅된 ITN 표의 길이. 값 ‘0’은 이러한 필드에 대해 결코 사용되지 않는다.
method_flag: 이것은 알림 수신 방법을 나타낸다. 이러한 플래그가 ‘0’이면, 알림은 IP 브로드캐스트 전달에 의해 전달된다. 이러한 플래그가 ‘1’이면, 알림은 상호작용 채널을 통해 전달된다. IP 브로드캐스트 전달을 위해, IP 어드레스 및 IP 포트 번호가 제공된다. 상호작용 채널을 통한 전달을 위해, 클라이언트가 상호작용 채널을 통해 알림을 폴할 수 있는 URL이 제공된다.
MMT_general_location_info(): 섹션 1.1.3에서의 표 25에서 정의된 일반 위치 레퍼런스 정보이다. 실제 위치는 MMT_general_location_info() 내의 신택스 엘리먼트 location_type에 의존한다.
MMT_general_location_info() for IP_broadcast_delivery: IP_broadcast_delivery을 위해, location_type = 0x14 및 0x15만이 허용된다.
MMT_general_location_info() for poll_URL: poll_URL을 위해, location_type = 0x0E만이 허용된다.
poll_period: 알림을 폴링하는 동안, 클라이언트 또는 수신기가 알림 URL, poll_URL, 모든 poll_period 초를 폴링하는 것이 기대된다.
number_of_tables: 이것은 그 정보가 이러한 ITN 표에서 제공되는 정보 표의 수를 나타낸다.
information_table_id: 그 정보가 이러한 ITN 표에서 제공되는 정보 표의 식별자. ITN의 table_id는 여기에서 결코 나타나지 않는다.
information_table_version: 그 정보가 이러한 ITN 표에서 제공되는 정보 표의 버전.
package_path_number: 정보 표가 속하는 논리 채널에 대한 식별자. 브로드캐스터는 식별자는 물리 채널내의 논리 채널에 고유하게 할당한다. 값 ‘0’은 특수한 사용을 갖고, 식별자로서 사용되지 않는다. 이러한 필드가 ‘0’이면, 정보 표는 채널 독립형이고, 즉, 정보 표는 서비스-와이드 정보를 갖는다.
MMT_general_location_info() for location: 클라이언트가 정보 표를 획득하는 어드레스. location_type = 0x0F~0x13만이 허용된다.
second_location_flag: 이러한 플래그가 설정되면, 클라이언트가 정보 표를 획득하는 대안의 어드레스가 제공된다.
table_filter_code_flag: 이러한 플래그가 설정되면, 하나 이상의 표 필터 코드가 제공된다. 표 필터 코드는 표들을 그룹화하는 기준을 특정한다. 그룹화하는 여러 기준이 동시에 존재하면, 모든 그룹화 기준이 정보 표에 적용된다.
MMT_general_location_info() for second_location: 클라이언트가 정보 표를 획득하는 대안의 어드레스. 0x0F~0x13만이 허용된다.
number_of_table_filter_codes: 정보 표에 대한 표 필터 코드의 번호.
language_for_all_table_filter_codes: 바로 후속하는 모든 table_filter_codes의 언어. 언어 코드는 ISO 639 표준에서 정의된 3-바이트 언어 식별자이다.
table_filter_code_language_flag: 이러한 플래그가 ‘1’이면, 후속하는 table_filter_code에 대한 언어는 별개로 특정되고 language_for_all_table_filter_codes에 의해 제공된 언어를 오버라이드한다. 언어 코드는 ISO 639 표준에서 정의된 3-바이트 언어 식별자이다.
table_fileter_code_language: 바로 후속하는 table_filter_code의 언어. 언어 코드는 ISO 639 표준에서 정의된 3-바이트 언어 식별자이다.
table_fileter_code_length: table_filter_code의 바이트 길이.
table_fileter_code_byte: table_filter_code에서의 바이트.
private_extension_flag: 이러한 플래그가 ‘1’이면, 사설 연장이 존재한다.
private_extension(): 소유권 또는 애플리케이션 특정 연장에 대한 컨테이너로서 작용하는 신택스 엘리먼트 그룹.
1.1.3 MMT_general_location_info() 신택스 엘리먼트 그룹
MMT_general_location_info() 신택스 엘리먼트 그룹은 위치 정보를 제공하기 위해 사용된다. MMT_general_location_info()의 신택스는 표 25에 정의되고, 그것의 신택스 엘리먼트들의 시멘틱이 표 25 아래에 제공된다.
Figure pat00035
Figure pat00036
location_type: 이러한 필드는 표 26에 정의된 바와 같은 위치 정보의 타입을 나타낸다.
Figure pat00037
payload_id: IP 애플리케이션 데이터 흐름내의 고유한 애셋 경로 식별자.
ipv4_src_addr: IP 애플리케이션 데이터 흐름의 IP 버전 4 소스 어드레스.
ipv4_dst_addr: IP 애플리케이션 데이터 흐름의 IP 버전 4 수신지 어드레스.
dst_port: IP 애플리케이션 데이터 흐름의 수신지 포트 번호.
ipv6_src_addr: IP 애플리케이션 데이터 흐름의 IP 버전 6 소스 어드레스.
ipv6_dst_addr: IP 애플리케이션 데이터 흐름의 IP 버전 6 수신지 어드레스.
network_id: MPEG-2 TS를 전송하는 브로드캐스트 네트워크 식별자.
MPEG_2_transport_stream_id: MPEG-2 TS 식별자.
MPEG_2_PID: MPEG-2 TS 패킷의 PID.
prefix_index: 이러한 신택스 엘리먼트 그룹 이전에 정의되는 프리픽스에 대한 인덱스. 이러한 필드가 0xFF이면, 프리픽스는 사용되지 않는다.
URL_length: URL의 바이트 단위 길이. 종료 널(0x00)은 카운팅되지 않아야 한다.
URL_byte: URL에서의 바이트 데이터. 종료 널(0x00)은 포함되지 않아야 한다.
byte_offset: 파일의 제 1 바이트로부터의 바이트 오프셋.
length: 바이트 단위의 길이.
message_id: S 계층 메시지 식별자.
ipv4_addr: IP 애플리케이션 데이터 흐름의 IP 버전 4 어드레스.
ipv6_addr: IP 애플리케이션 데이터 흐름의 IP 버전 6 어드레스.
1.2.1 MMT 합성 정보(CI)에 대한 메시지
MMT 합성 정보(CI)는 대역외 시그널링을 위해 CI 메시지에 의해 전달된다. CI 메시지는 완벽한 CI 또는 계층화된 CI들을 전달할 수 있다. 계층화된 CI가 전달될 때, 브로드캐스트 시나리오에서 패키지 소비에 대해 요구된 시간을 감소시키기 위해 ITN 메시지에 의해 계층-0 CI를 전송하는 것이 매우 권장된다. 계층-0 CI가 510과 같이, INT 메시지내에서 전송될 때, CI는 INT 메시지에 포함되기 이전에 MCI(MMT 합성 정보) 표에서 캡슐화되어야 한다.
계층화된 CI 메커니즘이 이용될 때, 계층-N CI(여기서, N은 0이 아님)는 변화된 반복 주기 및 상이한 메시지 식별자를 갖는 CI 메시지에서 일반적으로 전송된다.
1.2.1 CI 메시지 신택스 및 시멘틱
CI 메시지의 신택스는 표 27에 정의되고, 그것의 신택스 엘리먼트들의 시멘틱이 표 27 아래에 제공된다.
Figure pat00038
message_id: 이것은 S 계층 메시지의 타입을 나타낸다. 이러한 필드의 길이는 8비트이다. S 계층 메시지는 별개의 패키지에 대한 별개의 CI 계층에서 CI를 전송하는 경우에 별개의 message_id를 가져야 한다.
version: 이것은 S 계층 메시지의 버전을 나타낸다. MMT 클라이언트는 수신된 S 계층 메시지가 새로운 것인지 여부를 체크할 수 있다. 특히, 이러한 필드는 S 계층 메시지가 브로드캐스팅 네트워크를 통해 반복적으로 송신되는 경우에 유용하다. 이러한 필드의 길이는 8비트이다.
length: 이것은 S 계층 메시지의 길이를 나타낸다. 이러한 필드의 길이는 16비트이다. 이것은 다음의 필드로부터 CI 메시지의 최종 바이트까지 시작하는 바이트들에서 카운팅된 CI 메시지의 길이를 나타낸다. 값 '0'은 이러한 필드에 대해 결코 사용되지 않는다.
start_time_flag: 이러한 플래그가 '1'이면, 추가의 신택스 엘리먼트 start_time이 사용된다.
start_time: 이것은 CI 메시지 송신의 NPT에서의 시작 시간을 나타낸다.
retransmission_period: 이것은 이러한 CI 메시지의 재송신 시간을 나타낸다. retransmission_period의 단위는 10ms이다.
CI_byte: CI에서의 바이트.
1.2.2 MCI 표 신택스 및 시멘틱
MCI 표의 신택스가 표 28에 정의되고, 그것의 신택스 엘리먼트들의 시멘틱이 표 28 아래에 제공된다. MCI 표는 완벽한 CI 또는 계층-0 CI에 대해서만 사용되어야 한다.
Figure pat00039
table_id: MCI 표의 표 식별자.
version: MCI 표의 버전. 더 새로운 버전은 수신되자 마자 구 버전을 오버라이드한다.
length: 다음의 필드로부터 MCI 표의 최종 바이트까지 시작하는 바이트들에서 카운팅된 MCI 표의 길이. 값 '0'은 이러한 필드에 대해 결코 사용되지 않는다.
CI_byte: CI에서의 바이트.
1.3 클록 레퍼런스 서술자(CRD)에 대한 메시지
1.7.2에 정의된 클록 레퍼런스 서술자는 CRD 메시지내에서 전달된다. 하나의 CRD 메시지는 다중의 클록 레퍼런스 서술자들을 포함할 수도 있다.
클록 레퍼런스 서술자들이 520과 같이, INT 메시지내에서 전송될 때, 이들은 CRD 표이라 칭하는 표 구조로 캡슐화되어야 한다.
1.3.1 CRD 메시지 신택스 및 시멘틱
CRD 메시지의 신택스가 표 29에 정의되고, 그것의 엘리먼트들의 시멘틱이 표 29 아래에 제공된다.
Figure pat00040
message_id: 이것은 S 계층 메시지의 타입을 나타낸다. 이러한 필드의 길이는 8비트이다.
version: 이것은 S 계층 메시지의 버전을 나타낸다. MMT 클라이언트는 수신된 S 계층 메시지가 새로운 것인지 여부를 체크할 수 있다. 특히, 이러한 필드는 S 계층 메시지가 브로드캐스팅 네트워크를 통해 반복적으로 송신되는 경우에 유용하다. 이러한 필드의 길이는 8비트이다.
length: 이것은 S 계층 메시지의 길이를 나타낸다. 이러한 필드의 길이는 16비트이다. 이것은 다음의 필드로부터 CI 메시지의 최종 바이트까지 시작하는 바이트들에서 카운팅된 CI 메시지의 길이를 나타낸다. 값 '0'은 이러한 필드에 대해 결코 사용되지 않는다.
start_time_flag: 이러한 플래그가 '1'이면, 추가의 신택스 엘리먼트 start_time이 사용된다.
start_time: 이것은 CRD 메시지 송신의 NPT에서의 시작 시간을 나타낸다.
retransmission_period: 이것은 이러한 CRD 메시지의 재송신 시간을 나타낸다. retransmission_period의 단위는 10ms이다.
clock_reference_descriptor(): 이것은 1.7.2에서 정의된다.
1.3.2 CRD 표 신택스 및 시멘틱
CRD 표의 신택스가 표 30에서 정의되고, 그것의 신택스 엘리먼트의 시멘틱이 표 30 아래에 제공된다. MCI 표는 완벽한 CI 또는 계층-0 CI에 대해서만 사용되어야 한다.
Figure pat00041
table_id: CRD 표의 식별자.
version: CRD 표의 버전. 더 새로운 버전은 수신되자 마자 구 버전을 오버라이드한다.
length: 다음의 필드로부터 CRD 표의 최종 바이트까지 시작하는 바이트들에서 카운팅된 CRD 표의 길이. 값 '0'은 이러한 필드에 대해 결코 사용되지 않는다.
clock_reference_descriptor(): 이것은 1.7.2에서 정의된다.
1.4 보안에 대한 메시지
보안 정보가 보안 메시지 또는 ITN 메시지내에서 전달된다. 보안 정보가 525와 같이, ITN 메시지내에서 전송될 때, ITN 메시지에 포함되기 이전에 캡슐화되어야 한다.
1.4.1 보안 메시지 신택스 및 시멘틱
보안 메시지의 신택스가 표 31에서 정의되고, 그것의 신택스 엘리먼트들의 시멘틱이 표 31 아래에 제공된다.
Figure pat00042
message_id: 이것은 S 계층 메시지의 타입을 나타낸다. 이러한 필드의 길이는 8비트이다.
version: 이것은 S 계층 메시지의 버전을 나타낸다. MMT 클라이언트는 수신된 S 계층 메시지가 새로운 것인지 여부를 체크할 수 있다. 특히, 이러한 필드는 S 계층 메시지가 브로드캐스팅 네트워크를 통해 반복적으로 송신되는 경우에 유용하다. 이러한 필드의 길이는 8비트이다.
length: 이것은 S 계층 메시지의 길이를 나타낸다. 이러한 필드의 길이는 16비트이다. 이것은 다음의 필드로부터 CI 메시지의 최종 바이트까지 시작하는 바이트들에서 카운팅된 CI 메시지의 길이를 나타낸다. 값 '0'은 이러한 필드에 대해 결코 사용되지 않는다.
start_time_flag: 이러한 플래그가 '1'이면, 추가의 신택스 엘리먼트 start_time이 사용된다.
start_time: 이것은 보안 메시지 송신의 NPT에서의 시작 시간을 나타낸다.
retransmission_period: 이것은 이러한 보안 메시지의 재송신 시간을 나타낸다. retransmission_period의 단위는 10ms이다.
Security_descriptor(): 이것은 1.7.3에서 정의된다.
1.4.2 보안 표 신택스 및 시멘틱
보안 표의 신택스가 표 32에 정의되고, 그것의 신택스 엘리먼트들의 시멘틱이 표 32 아래에 제공된다.
Figure pat00043
table_id: 보안 표의 식별자.
version: 보안 표의 버전. 더 새로운 버전은 수신되자 마자 구 버전을 오버라이드한다.
length: 다음의 필드로부터 보안 표의 최종 바이트까지 시작하는 바이트들에서 카운팅된 보안 표의 길이. 값 '0'은 이러한 필드에 대해 결코 사용되지 않는다.
security_descriptor(): 이것은 1.7.2에서 정의된다.
1.5 MPT (MMT 패키지 표)에 대한 메시지
도 5를 참조하면, MMT 패키지 표(MPT)은 단일 패키지에 대한 모든 정보를 전달한다. MPT를 전송하는 S 계층 메시지를 "MPT 메시지"이라 칭한다. MPT는 515와 같이, 다른 표들을 갖는 ITN 메시지에 포함될 수도 있거나, 별개의 MPT 메시지에서 전송될 수도 있다.
계층화된 CI를 갖는 패키지의 계층화된 전달을 위해, MPT는 다중의 계층화된 MPT들로 파티셔닝될 수 있다. 계층-0 MPT는 기본 MPT이고, 계층화된 전달이 사용되지 않으면, 계층-0 MPT만이 전달된다. 후자의 경우에서, 계층-0 MPT는 완벽한 MPT이다. 상이한 계층들에서의 MPT들은 상이한 표 식별자들(table_ids)을 가져야 한다. 이러한 표준에서, 8개까지의 MPT 계층을 가질 수 있도록 MPT tabe-id에 대한 8개의 상이한 값들을 할당하였다. MPT table_id의 값이 작을수록, MPT 계층이 기본 MPT에 더 가깝다.
브로드캐스트 시나리오에서 패키지 획득 시간을 감소시키기 위해 ITN 메시지내에서 계층화된 MPT가 사용되는 경우에, 완벽한 MPT 또는 계층-0 MPT를 전송하는 것이 매우 권장된다.
1.5.1 MPT 메시지 신택스 및 시멘틱
MPT 메시지의 신택스가 표 33에 정의되고, 그것의 신택스 엘리먼트들의 시멘틱이 표 33 아래에 제공된다. MPT 메시지는 MPT 계층화가 이용되는 경우에 하나의 완벽한 MPT 또는 계층-N MPT만을 전송한다.
Figure pat00044
message_id: 이것은 S 계층 메시지의 타입을 나타낸다. 이러한 필드의 길이는 8비트이다.
version: 이것은 S 계층 메시지의 버전을 나타낸다. MMT 클라이언트는 수신된 S 계층 메시지가 새로운 것인지 여부를 체크할 수 있다. 특히, 이러한 필드는 S 계층 메시지가 브로드캐스팅 네트워크를 통해 반복적으로 송신되는 경우에 유용하다. 이러한 필드의 길이는 8비트이다.
length: 이것은 S 계층 메시지의 길이를 나타낸다. 이러한 필드의 길이는 16비트이다. 이것은 다음의 필드로부터 MPT 메시지의 최종 바이트까지 시작하는 바이트들에서 카운팅된 MPT 메시지의 길이를 나타낸다. 값 '0'은 이러한 필드에 대해 결코 사용되지 않는다.
start_time_flag: 이러한 플래그가 '1'이면, 추가의 신택스 엘리먼트 start_time이 사용된다.
start_time: 이것은 MPT 메시지 송신의 NPT에서의 시작 시간을 나타낸다.
retransmission_period: 이것은 이러한 MPT 메시지의 재송신 시간을 나타낸다. retransmission_period의 단위는 10ms이다. 계층화된 MPT들이 사용되면, 상위계층 MPT의 retransmission_period는 그 상위계층 MPT 아래의 MPT 계층의 retransmission_period 보다 일반적으로 길다.
MMT_package_table(): 이것은 1.5.2에서 정의된다.
1.5.2 MPT 신택스 및 시멘틱
MPT()의 신택스가 표 34에 정의되고, 그것의 신택스 엘리먼트들의 시멘틱이 표 34 아래에 제공된다.
Figure pat00045
Figure pat00046
Figure pat00047
Figure pat00048
table_id: MPT의 표 식별자. 상이한 계층들에서의 MPT들은 상이한 표 식별자들(table_ids)을 가져야 한다. MPT table_id에 대해, 8개의 상이한 값들이 할당된다. 8개의 MPT table_id들 중에서, 계층화된 MPT들이 사용될 때 완벽한 MPT 또는 계층-0 MPT에 대한 table_id가 가장 작다. 나머지 MPT table_id들에 대해, 더 작은 값은 더 낮은 계층 MPT를 의미한다.
version: MPT의 버전. 더 새로운 버전은 수신되자 마자 구 버전을 오버라이드한다.
length: 다음의 필드로부터 ITN 표의 최종 바이트까지 시작하는 바이트들에서 카운팅된 MPT의 길이. 값 ‘0’은 이러한 필드에 대해 결코 사용되지 않는다.
MMT_package_id: MMT 패키지의 글로벌하게 고유한 식별자
MPT_descriptors_length: 서술자 신택스 루프의 길이. 이 길이는 다음의 필드로부터 서술자 신택스 루프의 종단까지 카운팅된다. 여러 서술자들이 이러한 신택스 루프에 삽입될 수 있다.
MPT_descriptors_byte: 서술자 루프에서 1 바이트.
package_type: 이것은 패키지의 타입을 나타낸다. 허용값들이 표 35에 있다.
Figure pat00049
package_name: 가능하면 다중의 언어에서 패키지의 명칭. 언어 코드는 ISO 639 표준에서 정의된 3-바이트 언어 식별자이다. 리스트에서 제 1 언어는 디폴트이다.
package_description: 가능하면 다중 언어에서 패키지의 구문 설명 언어 코드는 ISO 639 표준에서 정의된 3-바이트 언어 식별자이다. 리스트에서 제 1 언어는 디폴트이다.
audio_languages: 패키지에서 사용된 오디오 언어(들). 언어 코드는 ISO 639 표준에서 정의된 3-바이트 언어 식별자이다. 리스트에서 제 1 언어는 디폴트이다.
text_languages: 패키지에서 사용된 텍스트 언어(들). 언어 코드는 ISO 639 표준에서 정의된 3-바이트 언어 식별자이다. 리스트에서 제 1 언어는 디폴트이다.
target_user_profiles: 패키지를 타겟으로 하는 사용자들의 프로파일(들)
required_device_capability_profiles: 패키지 소비에 대한 요구된 디바이스 능력의 프로파일(들).
parental_guidance_flag: 이러한 플래그가 '1'이면, 수신기는 아동 보호를 위해 뷰어에 의해 설정되는 것에 대한 콘텐츠를 나타내는 것이 허용된다는 것이 레이팅 정보(그 전달 방법은 이러한 표준에서 현재 특정되지 않음)로부터 확실하게 될 수 있을 때까지 무엇이 디코딩되는지 제공하지 않아야 한다. 이러한 플래그 '0'이면, 수신기는 레이팅을 체크하지 않고 이러한 패키지로부터 무엇이 디코딩되는지를 단지 제공한다.
recording_flag: 이러한 플래그가 '1'이면, 수신기는 이러한 패키지를 나중의 사용을 위해 내부 저장부에 저장할 수 있다.
fast_play_flag: 이러한 플래그가 '1'이면, 수신기는 뷰어가 이러한 패키지의 고속 플레이를 명령하게 한다.
clock_reference_flag: 이러한 플래그가 '0'이면, clock_reference_id는 제공되지 않고 디폴트에 의해 MMT 시스템 클록은 NTP 클록이고, 즉, 이러한 패키지에서의 모든 애셋들의 시간 베이스는 NTP 클록이다. 이러한 플래그가 '1'이면, clock_reference_id 필드는 다음에 포함된다.
protection_scheme_id_flag: 이러한 플래그가 '1'이면, protection_scheme_id 필드는 다음에 포함된다.
clock_reference_id: 클록 레퍼런스 식별자. 이러한 필드는 이러한 패키지에서 모든 애셋들의 디폴트 시간 베이스로서 clock_reference_descriptor()에 의해 전달된 클록을 레퍼런싱하기 위해 사용된다. 값 0은 이러한 필드에 대해 허용되지 않는다. NPT 신택스에서의 클록 레퍼런스 식별자에 대해 2개의 플레이스홀더가 존재한다. 하나(이러한 필드)는 이러한 패키지에서의 모든 애셋들에 적용되지만, 다른 것은 신택스 루프에서의 애셋 엔트리에만 적용된다. 필드들 양자가 MPT 신택스에 포함되는 경우에, 후자가 우선한다.
timescale_flag: 이러한 플래그가 '1'이면, 타임스케일 필드가 다음에 포함된다.
timescale: 1 초에서 다수의 단위로 표현된 이러한 패키지에서의 모든 애셋들에 대해 사용된 모든 시간스탬프에 대한 시간 단위. 디폴트 값이 90,000이다. MPT 신택스에서의 타임스케일 필드에 대해 2개의 플레이스홀더가 존재한다. 하나(이러한 필드)는 이러한 패키지에서의 모든 애셋들에 적용되지만, 다른 것은 신택스 루프에서의 애셋 엔트리에만 적용된다. 필드들 양자가 MPT 신택스에 포함되는 경우에, 후자가 우선한다.
protection_scheme_id: 이러한 필드는 이러한 패키지에서의 모든 애셋들에 대해 사용된 보호 방식을 나타낸다. MPT 신택스에서의 보호 방식 식별자 필드에 대해 2개의 플레이스홀더가 존재한다. 하나(이러한 필드)는 이러한 패키지에서의 모든 애셋들에 적용되지만, 다른 것은 신택스 루프에서의 애셋 엔트리에만 적용된다. 필드들 양자가 MPT 신택스에 포함되는 경우에, 후자가 우선한다. 이러한 필드의 값은 3.7.3에서의 D-CAS 서술자들에 의해 특정된 DCAS_types 중 하나이다.
protection_scheme_id_flag: 이러한 플래그가 '1'이면, protection_scheme_id 필드는 다음에 포함된다.
MMT_general_location_info() for the CI location: 1.1.3에서 정의된 MMT에 대한 일반 위치 레퍼런스 정보. CI 위치에 대해 location_type = 0x0F~0x13만이 허용된다.
number_of_assets: 이러한 MPT에서의 애셋들의 수.
asset_type: 애셋들의 타입. 이러한 필드는 MPEG-2 PMT에서 정의된 steam_type과 유사하지만 그것의 연장이다.
asset_id: 애셋 식별자. CI에서, asset_id는 애셋을 참조하기 위해 사용된다. CI에서 정의된 asset_id는 글로벌하게 고유하다. 이러한 필드는 글로벌하게 고유한 애셋 식별자에 대한 짧은 엘리어스이다. 엘리어싱은 CI에서의 애셋의 리스트(LoA)에서 애셋 나타남의 순서를 매핑함으로써 자동으로 수행된다. CI 계층화가 이용되면 엘리어싱은 계층 0으로부터 계층 N까지 모든 LoA의 순서화된 연접내에서 수행된다. MPT내의 애셋 정보 신택스에서, asset_id 엘리어스는 증분적으로 나타나야 한다.
asset_clock_reference_flag: 이러한 플래그가 '1'이면, asset_clock_reference_id 필드가 다음의 신택스에 포함된다.
asset_clock_reference_id: 애셋에 대한 클록 레퍼런스 식별자. 이러한 필드는 애셋의 시간 베이스로서 clock_reference_descriptor()에 의해 전달된 클록을 레퍼런싱하기 위해 사용된다. 이러한 필드가 '0'이면, NTP 클록은 애셋에 대해 사용된다. 이러한 필드가 '0'이 아니면, 이러한 필드의 값은 클록 레퍼런스 서술자들에 의해 제공된 clock_reference_id 값들 중 하나이다.
asset_timescale_flag: 이러한 값이 '1'이면, asset_timescale 필드가 다음의 신택스에 포함된다.
asset_timescale: 1초에서 다수의 단위로 표현된 애셋에 대해 사용된 모든 시간스탬프들에 대한 시간 단위. 디폴트 값이 90,000이다.
asset_protected_flag: 이러한 플래그가 '1'이면, 이러한 애셋은 보호된다.
asset_protection_scheme_id_flag: 이러한 플래그가 '1'이면, asset_protection_scheme_id 필드가 다음의 신택스에 포함된다.
MMT_general_location_info() for the asset location: 1.1.3에서의 표 3에서 정의된 MMT에 대한 일반 위치 레퍼런스 정보. location_type = 0x03, 0x05, 및 0x07~0x0D 만이 애셋 위치에 대해 허용된다.
asset_descriptors_length: 다음의 필드로부터 애셋 서술자 신택스 루프의 종단까지 카운팅된 바이트의 수
asset_descriptors_byte: 애셋 서술자에서의 바이트.
디바이스 능력 정보 표(DCIT)에 대한 메시지
DCIT는 디바이스 능력 정보를 제공한다.
DCIT들이 530과 같이, INT 메시지내에서 전송될 때, 이들은 DCIT 표라 칭하는 표 구조로 캡슐화되어야 한다.
1.6.1 DCIT 메시지 신택스 및 시멘틱
DCIT 메시지의 신택스가 표 36에 정의되고, 그것의 신택스 엘리먼트들의 시멘틱이 표 36 아래에 제공된다.
Figure pat00050
message_id: 이것은 S 계층 메시지의 타입을 나타낸다. 이러한 필드의 길이는 8비트이다.
version: 이것은 S 계층 메시지의 버전을 나타낸다. MMT 클라이언트는 수신된 S 계층 메시지가 새로운 것인지 여부를 체크할 수 있다. 특히, 이러한 필드는 S 계층 메시지가 브로드캐스팅 네트워크를 통해 반복적으로 송신되는 경우에 유용하다. 이러한 필드의 길이는 8비트이다.
length: 이것은 S 계층 메시지의 길이를 나타낸다. 이러한 필드의 길이는 16비트이다. 이것은 다음의 필드로부터 DCIT 메시지의 최종 바이트까지 시작하는 바이트들에서 카운팅된 MPT 메시지의 길이를 나타낸다. 값 '0'은 이러한 필드에 대해 결코 사용되지 않는다.
start_time_flag: 이러한 플래그가 '1'이면, 추가의 신택스 엘리먼트 start_time이 사용된다.
start_time: 이것은 DCIT 메시지 송신의 NPT에서의 시작 시간을 나타낸다.
retransmission_period: 이것은 이러한 DCIT 메시지의 재송신 시간을 나타낸다. retransmission_period의 단위는 10ms이다. 계층화된 MPT들이 사용되면, 상위계층 MPT의 retransmission_period는 그 상위계층 MPT 아래의 MPT 계층의 retransmission_period 보다 일반적으로 길다.
MMT_package_table(): 이것은 1.5.2에서 정의된다.
DCIT(): 이것은 1.6.2에서 정의된다.
1.6.2 DCIT 신택스 및 시멘틱
DCIT의 신택스 및 시멘틱이 표 37에 정의된다.
Figure pat00051
Figure pat00052
Figure pat00053
Figure pat00054
1.7.서술자들
S 계층 표들과 관련된 서술자들이 여기에 정의된다.
1.7.1 언어 서술자
언어 서술자는 오디오, 코멘터리 채널, 부제 등과 같은 미디어 애셋을 특정하기 위해 사용된다. 언어 서술자는 MPT 서술자 신택스 루프 또는 MPT에서의 애셋 서술자 신택스 루프에 포함될 수 있다. 언어 서술자가 MPT 서술자 신택스 루프에 포함되면, 이것은 패키지에서 모든 애셋들의 언어를 특정한다. 언어 서술자가 MPT에서의 애셋 서술자 신택스 루프에 포함되면, 이것은 애셋의 언어를 특정한다. MPT에서의 애셋 서술자 신택스 루프에 포함된 언어 서술자는 MPT에서의 MPT 서술자 신택스 루프에 포함된 언어 서술자 보다 우선순위를 갖는다.
language_descriptor()의 신택스는 표 38에 정의되고, 그것의 신택스 엘리먼트들의 시멘틱이 표 38 아래에 제공된다.
Figure pat00055
descriptor_tag: 서술자의 타입을 나타내는 태그값.
descriptor_length: 이러한 필드 이후의 다음의 바이트로부터 서술자의 최종 바이트까지 카운팅된 바이트 단위 길이.
ISO_639_language_code: 3-바이트 ISO 639 언어 식별자.
1.7.2 클록 레퍼런스 서술자
클록 레퍼런스 서술자는 미디어 동기화를 위한 인코더 클록과 MMT 시스템 클록 사이의 관계를 특정하기 위해 사용된다. 네트워크 시간 프로토콜(NTP) 포맷에서의 UTC는 MMT 시스템 클록 시간으로서 사용된다. MMT는 상이한 클록들이 상이한 애셋들에 대해 사용되는 것을 허용한다. 애셋 인코더에서 사용된 클록이 clock_reference_id에 의해 특정된다.
Clock_reference_descriptors는 짧은 주기, 예를 들어, 100ms를 갖는 클록 레퍼런스 메시지에서 주기적으로 전송되어야 한다.
clock_reference_descriptor()의 신택스가 표 39에 정의되고, 그것의 신택스 엘리먼트들의 시멘틱이 표 39 아래에 제공된다.
Figure pat00056
descriptor_tag: 서술자의 타입을 나타내는 태그값.
descriptor_length: 이러한 필드 이후의 다음의 바이트로부터 서술자의 최종 바이트까지 카운팅된 바이트 단위 길이.
clock_reference_id: 애셋 인코더에 의해 사용된 미디어 클록의 식별자. 값 '0'은 다른 목적을 위해 예약되고 clock_reference_id를 위해 사용되지 않는다.
encoder_clock_sample: 아래의 MMT_system_clock_time에 대응하는 애셋 인코더에 의해 사용된 미디어 클록의 샘플링된 값.
MMT_system_clock_time: 선행 encoder_clock_sample에 대응하는 NTP 포맷에서의 UTC 시간값.
1.7.3 보안 서술자
보안 서술자는 MMT 애셋 또는 패키지를 보호하기 위해 사용될 수 있는 보안 시스템을 특정하기 위해 사용된다.
Securtiy_descriptor는 보안 메시지 또는 ITN 메시지에서 주기적으로 전송되어야 한다.
security_descriptor()의 신택스가 표 40에 정의되고, 그것의 신택스 엘리먼트들의 시멘틱이 표 40 아래에 제공된다.
Figure pat00057
descriptor_tag: 서술자의 타입을 나타내는 태그값.
descriptor_length: 이러한 필드 이후의 다음의 바이트로부터 서술자의 최종 바이트까지 카운팅된 바이트 단위 길이.
Security_type: 보안 솔루션의 타입. 이것은 액세스 제어, 디지털 저작권 관리, 다운로드가능한 CAS 또는 다운로드가능한 DRM의 솔루션을 나타낸다.
Solution : 이것은 어떤 보안 솔루션이 액세스 제어, DRM, DCAS 또는 DDRM을 위해 사용되는지를 나타낸다.
Access_control_server_address : 클라이언트가 인증되고 인가된 액세스 제어 보안 솔루션 서버의 어드레스.
DRM_server_address : 클라이언트가 인증되고 인가될 DRM 솔루션 서버의 어드레스.
DCAS_server_address : 인증 및 인가 이후 클라이언트가 DCAS SW를 다운로딩할 수 있는 DCAS 서버의 어드레스.
DDRM_server_address : 인증 및 인가 이후 클라이언트가 DDRM SW를 다운로딩할 수 있는 DDRM 서버의 어드레스.
도 6 및 도 7은 본 발명의 실시 예에 따른 수신기에서의 멀티미디어 수신 동작을 도시한 흐름도이다.
도 6을 참조하면, 먼저, 수신기는 615 단계에서 현재 채널에서 전송된 S1 메시지를 찾는다. S1 메시지는 MMT asset들 및 MMT item 소비를 위해 요구되는 모든 기능들을 관리하기 위한 메시지이다.
수신기는 617 단계에서 메시지 ID를 근거로 하여 찾은 S1 메시지에 포함된 ITN 메시지인가를 판단한다. 만약 ITN 메시지가 아닌 다른 메시지일 경우, 627 단계에서 other 메시지가 업데이트되었는가를 판단한다. 만약 업데이트된 other 메시지인 경우, 수신기는 629 단계에서 업데이트된 other 메시지 및 업데이트된 other 메시지의 버전 정보를 수신기의 메모리에 저장한다.
한편, 617 단계에서의 판단 결과로, ITN 메시지인 경우, 수신기는 619 단계에서 버전 정보를 근거로 하여 찾은 S1 메시지에 포함된 ITN 메시지가 업데이트되었는가를 판단한다. 만약 업데이트된 경우, 수신기는 621 단계에서 ITN 메시지 내 적어도 하나의 테이블(i 개)이 업데이트되었는가를 판단한다. 만약 업데이트된 경우, 수신기는 623 단계에서 업데이트된 적어도 하나의 테이블 및 그의 버전 정보를 수신기의 메모리에 저장한다.
이후, 수신기는 625 단계에서 모든 테이블을 검사한다.
검사 결과, 수신기는 도 7에 기재된 631 단계에서 CI 계층 0이 업데이트되었는가를 판단한다.
만약 업데이트된 경우, 수신기는 633 단계에서 CI 계층 0을 통합된 CI로써 설정한다.
수신기는 635 단계에서 CI 계층 i 의 버전이 CI 계층 0의 버전과 동일한가를 판단한다.
만약 동일한 경우, 수신기는 637 단계에서 CI 계층 i를 통합된 CI와 합친다. 수신기는 639 단계에서 모든 CI 계층들을 검사를 완료하였는가를 판단한다. 모든 검사가 완료된 경우, 수신기는 641 단계에서 통합된 CI를 CI 분석기로 전송한다.
한편, 수신기는 643 단계에서 MPT 계층 0이 업데이트되었는가를 판단한다.
만약 업데이트된 경우, 수신기는 645 단계에서 MPT 계층 0을 통합된 MPT로써 설정한다.
수신기는 647 단계에서 MPT 계층 i 의 버전이 MPT 계층 0의 버전과 동일한가를 판단한다.
만약 동일한 경우, 수신기는 649 단계에서 MPT 계층 i를 통합된 MPT와 합친다. 수신기는 651 단계에서 모든 MPT 계층들을 검사를 완료하였는가를 판단한다. 모든 검사가 완료된 경우, 수신기는 653 단계에서 통합된 MPT 내에 애셋 참조들을 이용하여, 패키지 내의 애셋을 찾고, 찾은 애셋을 해당하는 애셋 디코더 또는 애셋 핸들러들로 전송한다.
도 8은 본 발명의 실시 예에 따른 송신 장치 블록 구성도이다.
송신 장치 일 예로 서비스 제공 서버는 서비스 데이터 제공부(801), 패키지 생성부(803), 전송부(805)를 포함한다. 도면에 도시하지 않았지만, 본 발명의 동작을 수행하기 위해 상기 송신 장치의 구성 요소들을 제어할 수 있는 제어부를 구비함은 당연하다.
서비스 데이터 제공부(801)는 모든 서비스 소스를 가진다.
패키지 생성부(803)는 도 3 및 도 5를 참조하여 설명한 테이블을 이용하여 패키지를 생성한다.
전송부(805)는 생성된 패키지를 단말에게 전송한다.
또한, 전송부(805)는 상기 생성된 패키지를 방송망과 브로드밴드망 두 가지 서로 다른 물리적 특성의 망을 이용하여 단말로 전송할 수도 있다.
도 9는 본 발명의 실시 예에 따른 수신 장치 블록 구성도이다.
수신 장치, 일 예로, 단말이 될 수 있으나, 이에 한정되지 않는다.
수신 장치는 수신부(901), 패키지 분석부(903), 디코더/재생부(905)를 포함한다. 도면에 도시하지 않았지만, 본 발명의 동작을 수행하기 위해 상기 수신 장치의 구성 요소들을 제어할 수 있는 제어부를 구비함은 당연하다.
수신부(901)는 본 발명의 실시 예에 따라 도 3 및 도 5를 참조하여 설명한 테이블을 이용하여 생성된 패키지를 수신한다.
패키지 분석부(903)는 상기 수신된 패키지 구성 요소를 분석한다.
디코더/재생부(905)는 상기 분석된 패키지 구성 요소를 기반으로 하여 컨텐트를 디코딩 및 재생한다.
또한 도면에 도시되지는 않았으나, 상기 본 발명의 실시 예에 의해 생성된 패키지에 따라서 데이터를 기록, 저장 및 재생할 수 있다. 저장 매체(예를 들어, CD, DVD, BD, USB등)에 하나의 패키지 내에 MMT 어셋, Configuration information, Composition information, Transport Characteristics, Package Identification Information, Asset list Information, Rights Management Information, Transport Timeline Information를 포함하도록 저장하고, 재생 시 패키지 구성 요소를 해석하여 컨텐트를 재생할 수 있다. 저장 매체를 통해 저장 및 재생할 경우, 실시 예에 대한 설명에서 URL을 저장 위치 정보(예를 들어, memory address등)로 치환함으로써 보다 용이하게 저장 및 재생 할 수 있다.
전술한 실시예들은 본 발명의 예시로서 이해될 것이다. 위의 실시예들 중 어느 하나와 연관되어 기술된 모든 특징은 단독으로 이용되거나 기술된 다른 특징들과 조합하여 이용될 수 있으며, 실시예들 중 다른 실시예의 하나 또는 그 이상의 특징들과 조합하여 이용되거나 실시예들 중 다른 실시예들의 조합으로 이용될 수 있음을 이해할 것이다. 본 발명이 특정한 실시예들을 참조하여 도시되고 설명되었지만, 당업자는 첨부된 청구항들 및 그와 동등한 것들에 의해 정의되는 바와 같은 본 발명의 사상 및 범위를 벗어나지 않고 형태 및 세부 사항들에 있어 다양한 변경이 이루어질 수 있음을 이해할 것이다.

Claims (2)

  1. 멀티미디어 컨텐츠를 수신하기 위한 방법으로서,
    상기 멀티미디어 컨텐츠와 관련된 패키지에 대한 정보를 제공하기 위한 제어 메시지를 수신하는 단계; 및
    상기 수신된 제어 메시지를 프로세싱하는 단계를 포함하고,
    상기 제어 메시지는:
    복수의 테이블들을 포함하는 제어 메시지 페이로드;
    상기 제어 메시지의 식별 정보;
    상기 제어 메시지의 길이 정보;
    상기 제어 메시지의 버젼 정보; 및
    상기 복수의 테이블들의 수를 나타내는 정보를 포함하는 확장 정보를 포함하고,
    상기 복수의 테이블들은 상기 복수의 테이블들에 포함되는 적어도 하나의 패키지 관련 테이블에 대한 정보를 제공하는 기본 테이블을 포함하고,
    상기 적어도 하나의 패키지 관련 테이블은 상기 패키지에 관련되는 적어도 하나의 어셋에 대한 정보를 제공하는 제1 테이블을 포함하고,
    상기 제1 테이블은 상기 적어도 하나의 어셋 중의 어셋의 타입을 나타내는 어셋 타입 정보 및 어셋에 사용되는 클럭에 관한 정보를 제공하는 클럭 레퍼런스(clock reference) 플래그를 포함하는,
    멀티미디어 컨텐츠를 수신하기 위한 방법.
  2. 제1항에 있어서,
    상기 기본 테이블은,
    상기 패키지 관련 테이블을 획득하기 위한 주소를 제공하는 위치 정보; 및
    상기 패키지 관련 테이블을 획득하기 위한 대체 주소를 제공하는 대체 주소 정보가 상기 기본 테이블에 포함되는지 여부를 지시하는 플래그 정보를 포함하는,
    멀티미디어 컨텐츠를 수신하기 위한 방법.

KR1020207016091A 2011-10-13 2012-10-15 멀티미디어 서비스 송수신 방법 및 장치 KR102252402B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020217014045A KR102331705B1 (ko) 2011-10-13 2012-10-15 멀티미디어 서비스 송수신 방법 및 장치

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
KR1020110104619 2011-10-13
KR20110104619 2011-10-13
US201261671923P 2012-07-16 2012-07-16
US61/671,923 2012-07-16
PCT/KR2012/008383 WO2013055179A1 (en) 2011-10-13 2012-10-15 Method and apparatus for transmitting and receiving multimedia service

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020197017119A Division KR102121479B1 (ko) 2011-10-13 2012-10-15 멀티미디어 서비스 송수신 방법 및 장치

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020217014045A Division KR102331705B1 (ko) 2011-10-13 2012-10-15 멀티미디어 서비스 송수신 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20200067945A true KR20200067945A (ko) 2020-06-12
KR102252402B1 KR102252402B1 (ko) 2021-05-14

Family

ID=63591745

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020207016091A KR102252402B1 (ko) 2011-10-13 2012-10-15 멀티미디어 서비스 송수신 방법 및 장치
KR1020197017119A KR102121479B1 (ko) 2011-10-13 2012-10-15 멀티미디어 서비스 송수신 방법 및 장치

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020197017119A KR102121479B1 (ko) 2011-10-13 2012-10-15 멀티미디어 서비스 송수신 방법 및 장치

Country Status (2)

Country Link
JP (2) JP6501951B2 (ko)
KR (2) KR102252402B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112805998A (zh) 2018-10-01 2021-05-14 三星电子株式会社 传输视频内容的方法和设备以及接收视频内容的方法和设备
US20220360853A1 (en) * 2021-05-05 2022-11-10 Samsung Electronics Co., Ltd. Mmt based drm operation for atsc 3.0

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050068977A1 (en) * 2003-09-25 2005-03-31 Kyoung-Weon Na Apparatus and method for servicing both wide area broadcasting and local area broadcasting in a digital multimedia broadcasting system and terminal for receiving the broadcast
EP1838018A2 (en) * 2006-03-24 2007-09-26 Samsung Electronics Co., Ltd. Method and apparatus for transmitting/receiving broadcast service in a DVB-H CBMS system
KR100800856B1 (ko) * 2006-08-08 2008-02-04 삼성전자주식회사 Dvb-h 시스템에서 esg 업데이트 정보 송수신 방법및 시스템
KR20090060928A (ko) * 2007-12-10 2009-06-15 삼성전자주식회사 광대역 무선통신 시스템에서 멀티캐스트 및 브로드캐스트서비스를 위한 장치 및 방법

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002203070A (ja) * 2000-10-17 2002-07-19 Hitachi Ltd メタデータ配信方法
KR101959260B1 (ko) * 2011-09-23 2019-03-18 한국전자통신연구원 Mmt 시스템을 위한 미디어 데이터 전송 장치 및 방법, 그리고 미디어 데이터 수신 장치 및 방법
JP2013229689A (ja) * 2012-04-24 2013-11-07 Sharp Corp 再生装置、配信装置、データ構造、再生方法、配信方法、制御プログラム、および記録媒体

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050068977A1 (en) * 2003-09-25 2005-03-31 Kyoung-Weon Na Apparatus and method for servicing both wide area broadcasting and local area broadcasting in a digital multimedia broadcasting system and terminal for receiving the broadcast
EP1838018A2 (en) * 2006-03-24 2007-09-26 Samsung Electronics Co., Ltd. Method and apparatus for transmitting/receiving broadcast service in a DVB-H CBMS system
KR100800856B1 (ko) * 2006-08-08 2008-02-04 삼성전자주식회사 Dvb-h 시스템에서 esg 업데이트 정보 송수신 방법및 시스템
KR20090060928A (ko) * 2007-12-10 2009-06-15 삼성전자주식회사 광대역 무선통신 시스템에서 멀티캐스트 및 브로드캐스트서비스를 위한 장치 및 방법

Also Published As

Publication number Publication date
JP6501951B2 (ja) 2019-04-17
KR102252402B1 (ko) 2021-05-14
KR102121479B1 (ko) 2020-06-11
JP2018148574A (ja) 2018-09-20
JP2019110569A (ja) 2019-07-04
JP6632749B2 (ja) 2020-01-22
KR20190073586A (ko) 2019-06-26

Similar Documents

Publication Publication Date Title
US11528082B2 (en) Method and apparatus for transmitting and receiving multimedia service
US9712864B2 (en) Broadcast service receiving method and broadcast service receiving apparatus
US9596510B2 (en) Method for transmitting broadcast service, method for receiving broadcast service, and apparatus for receiving broadcast service
US9462311B2 (en) Method and apparatus for transmitting and receiving multi-media services
US20140181887A1 (en) Method for transmitting a broadcast service, apparatus for receiving same, and method for processing an additional service using the apparatus for receiving same
CA2839444C (en) Method for transmitting a broadcast service, method for receiving a broadcast service, and apparatus for receiving a broadcast service
US9723362B2 (en) Method for transmitting and receiving broadcast service and receiving device thereof
KR20130031767A (ko) 멀티미디어 방송 서비스의 미디어 데이터 동기화 방법 및 장치
KR20130016219A (ko) 비실시간 방송 서비스 처리 시스템 및 그 처리방법
JP6632749B2 (ja) マルチメディアサービス送信装置
KR20150013110A (ko) 방송 프로그램과 관련한 양방향 서비스를 처리하는 장치 및 방법

Legal Events

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