KR102023018B1 - 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법 - Google Patents

방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법 Download PDF

Info

Publication number
KR102023018B1
KR102023018B1 KR1020177023471A KR20177023471A KR102023018B1 KR 102023018 B1 KR102023018 B1 KR 102023018B1 KR 1020177023471 A KR1020177023471 A KR 1020177023471A KR 20177023471 A KR20177023471 A KR 20177023471A KR 102023018 B1 KR102023018 B1 KR 102023018B1
Authority
KR
South Korea
Prior art keywords
information
service
video
component
data
Prior art date
Application number
KR1020177023471A
Other languages
English (en)
Other versions
KR20170103013A (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 엘지전자 주식회사
Publication of KR20170103013A publication Critical patent/KR20170103013A/ko
Application granted granted Critical
Publication of KR102023018B1 publication Critical patent/KR102023018B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/1003
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/80Actions related to the user profile or the type of traffic
    • H04L47/806Broadcast or multicast traffic
    • H04L65/601
    • H04L65/608
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]

Landscapes

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

Abstract

본 발명은 방송 신호를 전송하는 방법을 제안한다. 본 발명에 따른 방송 신호를 전송하는 방법은, 지상파 방송망과 인터넷 망을 사용하는 차세대 하이브리드 방송을 지원하는 환경에서 차세대 방송 서비스를 지원할 수 있는 시스템을 제안한다. 또한, 차세대 하이브리드 방송을 지원하는 환경에서, 지상파 방송망과 인터넷 망을 모두 아우를 수 있는 효율적인 시그널링 방안을 제안한다.

Description

방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
본 발명은 방송 신호 송신 장치, 방송 신호 수신 장치, 및 방송 신호 송수신 방법에 관한 것이다.
아날로그 방송 신호 송신이 종료됨에 따라, 디지털 방송 신호를 송수신하기 위한 다양한 기술이 개발되고 있다. 디지털 방송 신호는 아날로그 방송 신호에 비해 더 많은 양의 비디오/오디오 데이터를 포함할 수 있고, 비디오/오디오 데이터뿐만 아니라 다양한 종류의 부가 데이터를 더 포함할 수 있다.
디지털 방송 시스템은 UHD(Ultra High Definition) 이미지, 멀티채널(multi channel, 다채널) 오디오, 및 다양한 부가 서비스를 제공할 수 있다. 그러나, 디지털 방송을 위해서는, 많은 양의 데이터 전송에 대한 데이터 전송 효율, 송수신 네트워크의 견고성(robustness), 및 모바일 수신 장치를 고려한 네트워크 유연성(flexibility)이 향상되어야 한다.
본 발명의 목적에 따라, 여기에 포함되고 대략적으로 기재된 바와 같이, 본 발명은 지상파 방송망과 인터넷 망을 사용하는 차세대 하이브리드 방송을 지원하는 환경에서 차세대 방송 서비스를 효과적으로 지원할 수 있는 시스템 및 관련된 시그널링 방안을 제안한다.
본 발명은 지상파 방송망과 인터넷 망을 사용하는 차세대 하이브리드 방송을 지원하는 환경에서 차세대 방송 서비스를 효과적으로 지원할 수 있다.
본 발명은 방송 서비스에 포함되는 서비스 컴포넌트들에 대하여, 자세한 시그널링을 제공하는 방법을 지원할 수 있다.
본 발명은 방송 서비스를 전달하는 방안에 있어서, 3D, 캡션, WCG, HDR 등의 다양한 정보를 효율적으로 제공하는 방법을 지원할 수 있다.
본 발명에 대해 더욱 이해하기 위해 포함되며 본 출원에 포함되고 그 일부를 구성하는 첨부된 도면은 본 발명의 원리를 설명하는 상세한 설명과 함께 본 발명의 실시예를 나타낸다.
도 1 은 본 발명의 일 실시예에 따른 프로토콜 스택을 도시한 도면이다.
도 2 는 본 발명의 일 실시예에 따른 서비스 디스커버리 과정을 도시한 도면이다.
도 3 은 본 발명의 일 실시예에 따른 LLS (Low Level Signaling) 테이블 및 SLT (Service List Table)를 도시한 도면이다.
도 4 는 본 발명의 일 실시예에 따른, ROUTE 로 전달되는 USBD 및 S-TSID 를 도시한 도면이다.
도 5 는 본 발명의 일 실시예에 따른, MMT 로 전달되는 USBD 를 도시한 도면이다.
도 6 은 본 발명의 일 실시예에 따른 링크 레이어(Link Layer) 동작을 도시한 도면이다.
도 7 은 본 발명의 일 실시예에 따른 LMT (Link Mapping Table) 를 도시한 도면이다.
도 8 은 본 발명의 일 실시예에 따른 차세대 방송 서비스에 대한 방송 신호 송신 장치의 구조를 나타낸다.
도 9 는 본 발명의 일 실시예에 따른 타임 인터리버의 라이팅 (writing) 오퍼레이션을 나타낸다.
도 10 은 본 발명의 일 실시예에 따른 프리퀀시 인터리버에 포함된 각 FFT 모드에 따른 메인-PRBS 제너레이터와 서브-PRBS 제너레이터로 구성된 인터리빙 어드레스 제너레이터의 블록 다이아그램을 나타낸 도면이다.
도 11 은 본 발명의 일 실시예에 따른 하이브리드 방송 수신 장치를 나타낸 도면이다.
도 12 는 본 발명의 일 실시예에 따른 DASH 기반 적응형(Adaptive) 스트리밍 모델의 전반적인 동작을 도시한 도면이다.
도 13 은 본 발명의 일 실시예에 따른 수신기의 블락 다이어그램을 도시한 도면이다.
도 14 는 본 발명의 일 실시예에 따른 미디어 파일의 구조를 도시한 도면이다.
도 15 는 본 발명의 일 실시예에 따른 SLT 를 통한 부트스트래핑 과정을 도시한 도면이다.
도 16 은 본 발명의 일 실시예에 따른 MMT 프로토콜 기반의 시그널링 흐름을 도시한 도면이다.
도 17 은 본 발명의 일 실시예에 따른 캐패빌리티 디스크립터를 도시한 도면이다.
도 18 은 본 발명의 일 실시예에 따른 캐패빌리티 코드를 도시한 도면이다.
도 19 는 본 발명의 다른 실시예에 따른 USBD 의 일부를 도시한 도면이다.
도 20 은 본 발명의 일 실시예에 따른 MP 테이블의 일부를 도시한 도면이다.
도 21 은 본 발명의 일 실시예에 따른 에셋 그룹 디스크립터를 도시한 도면이다.
도 22 는 본 발명의 일 실시예에 따른 접근성(accessibility) 정보를 도시한 도면이다.
도 23 은 본 발명의 일 실시예에 따른, USBD 내의 ComponentInfo 엘레멘트들을 도시한 도면이다.
도 24 는 본 발명의 일 실시예에 따른 컴포넌트 속성(Component Property) 정보를 도시한 도면이다.
도 25 는 본 발명의 일 실시예에 따른 컴포넌트 속성(Component Property) 정보를 도시한 도면이다.
도 26 은 본 발명의 일 실시예에 따른 컴포넌트 속성(Component Property) 정보의 활용을 도시한 도면이다.
도 27 은 본 발명의 일 실시예에 따른 HEVC 비디오 컴포넌트 디스크립션 정보를 도시한 도면이다.
도 28 은 본 발명의 일 실시예에 따른 HEVC 타이밍 & HRD 정보를 도시한 도면이다.
도 29 는 본 발명의 일 실시예에 따른 캡션(caption) 정보를 도시한 도면이다.
도 30 은 본 발명의 일 실시예에 따른 HDR 정보를 도시한 도면이다.
도 31 은 본 발명의 일 실시예에 따른 WCG 정보를 도시한 도면이다.
도 32 는 본 발명의 일 실시예에 따른 HFR 정보 / 풀다운(Pull Down) 정보를 도시한 도면이다.
도 33 은 본 발명의 일 실시예에 따른 3D 서비스 및 멀티뷰 서비스 관련 시그널링 정보를 나타낸다.
도 34 는 본 발명의 일 실시예에 따른, HDR 정보 처리 능력에 기반한 수신기의 미디어 엔진 동작을 도시한 도면이다.
도 35 는 본 발명의 일 실시예에 따른, WCG 정보 처리 능력에 기반한 수신기의 미디어 엔진 동작을 도시한 도면이다.
도 36 은 본 발명의 일 실시예에 따른, HFR 정보 처리 능력에 기반한 수신기의 미디어 엔진 동작을 도시한 도면이다.
도 37 은 본 발명의 일 실시예에 따른, 풀다운 리커버리 정보 처리 능력에 기반한 수신기의 미디어 엔진 동작을 도시한 도면이다.
도 38 은 본 발명의 일 실시예에 따른 3D 서비스를 지원하기 위한 메타데이터를 나타낸다.
도 39 는 본 발명의 일 실시예에 따른 바(bar)에 대한 메타데이터를 나타낼 수 있다.
도 40 은 본 발명의 일 실시예에 따른 오리지널 소스 포맷에 대한 메타데이터를 나타낼 수 있다.
도 41 은 본 발명의 일 실시예에 따른 바 데이터 (bar data)를 이용하여 레터 박스를 생성하는 방법을 나타낸다.
도 42 는 본 발명의 다른 실시예에 따른 바 데이터 (bar data)를 이용하여 레터 박스를 생성하는 방법을 나타낸다.
도 43 은 본 발명의 일 실시예에 따른 바 데이터 (bar data)를 이용하여 필러 박스 (pillarbox)를 생성하는 방법을 나타낸다.
도 44 는 본 발명의 다른 실시예에 따른 바 데이터 (bar data)를 이용하여 필러 박스를 생성하는 방법을 나타낸다.
도 45 는 본 발명의 일 실시예에 따른 방송 신호를 전송하는 방법을 도시한 도면이다.
도 46 은 본 발명의 일 실시예에 따른 방송 신호를 전송하는 장치를 도시한 도면이다.
발명의 실시를 위한 최선의 형태
본 발명의 바람직한 실시예에 대해 구체적으로 설명하며, 그 예는 첨부된 도면에 나타낸다. 첨부된 도면을 참조한 아래의 상세한 설명은 본 발명의 실시예에 따라 구현될 수 있는 실시예만을 나타내기보다는 본 발명의 바람직한 실시예를 설명하기 위한 것이다. 다음의 상세한 설명은 본 발명에 대한 철저한 이해를 제공하기 위해 세부 사항을 포함한다. 그러나 본 발명이 이러한 세부 사항 없이 실행될 수 있다는 것은 당업자에게 자명하다.
본 발명에서 사용되는 대부분의 용어는 해당 분야에서 널리 사용되는 일반적인 것들에서 선택되지만, 일부 용어는 출원인에 의해 임의로 선택되며 그 의미는 필요에 따라 다음 설명에서 자세히 서술한다. 따라서 본 발명은 용어의 단순한 명칭이나 의미가 아닌 용어의 의도된 의미에 근거하여 이해되어야 한다.
본 발명은 차세대 방송 서비스에 대한 방송 신호 송신 및 수신 장치 및 방법을 제공한다. 본 발명의 일 실시예에 따른 차세대 방송 서비스는 지상파 방송 서비스, 모바일 방송 서비스, UHDTV 서비스 등을 포함한다. 본 발명은 일 실시예에 따라 비-MIMO (non-Multiple Input Multiple Output) 또는 MIMO 방식을 통해 차세대 방송 서비스에 대한 방송 신호를 처리할 수 있다. 본 발명의 일 실시예에 따른 비-MIMO 방식은 MISO (Multiple Input Single Output) 방식, SISO (Single Input Single Output) 방식 등을 포함할 수 있다. 본 발명은 특정 용도에 요구되는 성능을 달성하면서 수신기 복잡도를 최소화하기 위해 최적화된 피지컬 프로파일 (또는 시스템)을 제안한다.
도 1 은 본 발명의 일 실시예에 따른 프로토콜 스택을 도시한 도면이다.
서비스는 복수개의 레이어를 거쳐 수신기로 전달될 수 있다. 먼저 송신측에서는 서비스 데이터를 생성할 수 있다. 송신측의 딜리버리 레이어에서는 서비스 데이터에 전송을 위한 처리를 수행하고, 피지컬 레이어에서는 이를 방송 신호로 인코딩하여 방송망 또는 브로드밴드를 통해 전송할 수 있다.
여기서 서비스 데이터들은 ISO BMFF (base media file format) 에 따른 포맷으로 생성될 수 있다. ISO BMFF 미디어 파일은 방송망/브로드밴드 딜리버리, 미디어 인캡슐레이션(media encapsulation) 및/또는 동기화 포맷(synchronization format) 으로 사용될 수 있다. 여기서 서비스 데이터는 서비스와 관련된 모든 데이터로서, 리니어 서비스를 이루는 서비스 컴포넌트들, 그에 대한 시그널링 정보, NRT (Non Real Time) 데이터, 기타 파일들 등을 포함하는 개념일 수 있다.
딜리버리 레이어에 대해 설명한다. 딜리버리 레이어는 서비스 데이터에 대한 전송 기능을 제공할 수 있다. 서비스 데이터는 방송망및/또는 브로드밴드를 통해 전달될 수 있다.
방송망을 통한 서비스 딜리버리(broadcast service delivery)에 있어 두가지 방법이 있을 수 있다.
첫번째 방법은 MMT (MPEG Media Transport) 에 근거하여, 서비스 데이터들을 MPU (Media Processing Units) 들로 처리하고, 이를 MMTP (MMT protocol) 를 이용하여 전송하는 것일 수 있다. 이 경우, MMTP 를 통해 전달되는 서비스 데이터에는, 리니어 서비스를 위한 서비스 컴포넌트들 및/또는 그에 대한 서비스 시그널링 정보 등이 있을 수 있다.
두번째 방법은 MPEG DASH 에 근거하여, 서비스 데이터들을 DASH 세그먼트들로 처리하고, 이를 ROUTE (Real time Object delivery over Unidirectional Transport) 를 이용하여 전송하는 것일 수 있다. 이 경우, ROUTE 프로토콜을 통해 전달되는 서비스 데이터에는, 리니어 서비스를 위한 서비스 컴포넌트들, 그에 대한 서비스 시그널링 정보 및/또는 NRT 데이터 등이 있을 수 있다. 즉, NRT 데이터 및 파일 등의 논 타임드(non timed) 데이터는 ROUTE 를 통해서 전달될 수 있다.
MMTP 또는 ROUTE 프로토콜에 따라 처리된 데이터는 UDP / IP 레이어를 거쳐 IP 패킷들로 처리될 수 있다. 방송망을 통한 서비스 데이터 전달에 있어서, SLT (Service List Table) 역시 UDP / IP 레이어를 거쳐 방송망을 통해 전달될 수 있다. SLT 는 LLS (Low Level Signaling) 테이블에 포함되어 전달될 수 있는데, SLT, LLS 테이블에 대해서는 후술한다.
IP 패킷들은 링크 레이어에서 링크 레이어 패킷들로 처리될 수 있다. 링크 레이어는 상위 레이어에서 전달되는 다양한 포맷의 데이터를, 링크 레이어 패킷으로 인캡슐레이션한 후, 피지컬 레이어에 전달할 수 있다. 링크 레이어에 대해서는 후술한다.
하이브리드 서비스 딜리버리(hybrid service delivery) 에 있어서는, 적어도 하나 이상의 서비스 엘레멘트가 브로드밴드 패쓰(path) 를 통해 전달될 수 있다. 하이브리드 서비스 딜리버리의 경우, 브로드밴드로 전달되는 데이터에는, DASH 포맷의 서비스 컴포넌트들, 그에 대한 서비스 시그널링 정보 및/또는 NRT 데이터 등이 있을 수 있다. 이 데이터들은 HTTP/TCP/IP 를 거쳐 처리되고, 브로드밴드 전송을 위한 링크 레이어를 거쳐, 브로드밴드 전송을 위한 피지컬 레이어로 전달될 수 있다.
피지컬 레이어는 딜리버리 레이어(상위 레이어 및/또는 링크 레이어)로부터 전달받은 데이터를 처리하여, 방송망 또는 브로드밴드를 통하여 전송할 수 있다. 피지컬 레이어에 대한 자세한 사항은 후술한다.
서비스에 대해 설명한다. 서비스는 전체적으로 사용자에게 보여주는 서비스 컴포넌트의 컬렉션일 수 있고, 컴포넌트는 여러 미디어 타입의 것일 수 있고, 서비스는 연속적이거나 간헐적일 수 있으며, 서비스는 실시간이거나 비실시간일 수 있고, 실시간 서비스는 TV 프로그램의 시퀀스로 구성될 수 있다.
서비스는 여러 타입을 가질 수 있다. 첫 번째로 서비스는 앱 기반 인헨스먼트를 가질 수 있는 리니어 오디오/비디오 또는 오디오만의 서비스일 수 있다. 두 번째로 서비스는 다운로드된 어플리케이션에 의해 그 재생/구성 등이 제어되는 앱 기반 서비스일 수 있다. 세 번째로 서비스는 ESG (Electronic Service Guide) 를 제공하는 ESG 서비스일 수 있다. 네 번째로 긴급 경보 정보를 제공하는 EA (Emergency Alert) 서비스일 수 있다.
앱 기반 인헨스먼트가 없는 리니어 서비스가 방송망을 통해 전달되는 경우, 서비스 컴포넌트는 (1) 하나 이상의 ROUTE 세션 또는 (2) 하나 이상의 MMTP 세션에 의해 전달될 수 있다.
앱 기반 인헨스먼트가 있는 리니어 서비스가 방송망을 통해 전달되는 경우, 서비스 컴포넌트는 (1) 하나 이상의 ROUTE 세션 및 (2) 0개 이상의 MMTP 세션에 의해 전달될 수 있다. 이 경우 앱 기반 인핸스먼트에 사용되는 데이터는 NRT 데이터 또는 기타 파일 등의 형태로 ROUTE 세션을 통해 전달될 수 있다. 본 발명의 일 실시예에서, 하나의 서비스의 리니어 서비스 컴포넌트(스트리밍 미디어 컴포넌트)들이 두 프로토콜을 동시에 사용해 전달되는 것이 허용되지 않을 수 있다.
앱 기반 서비스가 방송망을 통해 전달되는 경우, 서비스 컴포넌트는 하나 이상의 ROUTE 세션에 의해 전달될 수 있다. 이 경우, 앱 기반 서비스에 사용되는 서비스 데이터는 NRT 데이터 또는 기타 파일 등의 형태로 ROUTE 세션을 통해 전달될 수 있다.
또한, 이러한 서비스의 일부 서비스 컴포넌트 또는 일부 NRT 데이터, 파일 등은 브로드밴드를 통해 전달될 수 있다(하이브리드 서비스 딜리버리).
즉, 본 발명의 일 실시예에서, 하나의 서비스의 리니어 서비스 컴포넌트들은 MMT 프로토콜을 통해 전달될 수 있다. 본 발명의 다른 실시예에서, 하나의 서비스의 리니어 서비스 컴포넌트들은 ROUTE 프로토콜을 통해 전달될 수 있다. 본 발명의 또 다른 실시예에서, 하나의 서비스의 리니어 서비스 컴포넌트 및 NRT 데이터(NRT 서비스 컴포넌트)들은 ROUTE 프로토콜을 통해 전달될 수 있다. 본 발명의 또 다른 실시예에서, 하나의 서비스의 리니어 서비스 컴포넌트들은 MMT 프로토콜을 통해 전달되고, NRT 데이터(NRT 서비스 컴포넌트)들은 ROUTE 프로토콜을 통해 전달될 수 있다. 전술한 실시예들에서, 서비스의 일부 서비스 컴포넌트 또는 일부 NRT 데이터들은 브로드밴드를 통해 전달될 수 있다. 여기서 앱 기반 서비스 내지 앱 기반 인핸스먼트에 관한 데이터들은 NRT 데이터 형태로, ROUTE 에 따른 방송망을 통해 전달되거나 브로드밴드를 통해 전달될 수 있다. NRT 데이터는 로컬리 캐쉬드 데이터(Locally cashed data) 등으로 불릴 수도 있다.
각각의 ROUTE 세션은 서비스를 구성하는 컨텐츠 컴포넌트를 전체적으로 또는 부분적으로 전달하는 하나 이상의 LCT 세션을 포함한다. 스트리밍 서비스 딜리버리에서, LCT 세션은 오디오, 비디오, 또는 클로즈드 캡션 스트림과 같은 사용자 서비스의 개별 컴포넌트를 전달할 수 있다. 스트리밍 미디어는 DASH 세그먼트로 포맷된다.
각각의 MMTP 세션은 MMT 시그널링 메시지 또는 전체 또는 일부 컨텐츠 컴포넌트를 전달하는 하나 이상의 MMTP 패킷 플로우를 포함한다. MMTP 패킷 플로우는 MMT 시그널링 메시지 또는 MPU 로 포맷된 컴포넌트를 전달할 수 있다.
NRT 사용자 서비스 또는 시스템 메타데이터의 딜리버리를 위해, LCT 세션은 파일 기반의 컨텐츠 아이템을 전달한다. 이들 컨텐츠 파일은 NRT 서비스의 연속적 (타임드) 또는 이산적 (논 타임드) 미디어 컴포넌트, 또는 서비스 시그널링이나 ESG 프레그먼트와 같은 메타데이터로 구성될 수 있다. 서비스 시그널링이나 ESG 프레그먼트와 같은 시스템 메타데이터의 딜리버리 또한 MMTP의 시그널링 메시지 모드를 통해 이루어질 수 있다.
수신기에서는 튜너가 주파수들을 스캐닝하다가, 특정 주파수에서 방송 시그널을 감지할 수 있다. 수신기는 SLT 를 추출해 이를 처리하는 모듈로 보낼 수 있다. SLT 파서는 SLT 를 파싱하고 데이터를 획득해 채널 맵에 저장할 수 있다. 수신기는 SLT 의 부트스트랩 정보를 획득하고 ROUTE 또는 MMT 클라이언트에 전달해줄 수 있다. 수신기는 이를 통해 SLS 를 획득할 수 있고, 저장할 수 있다. USBD 등이 획득될 수 있고, 이는 시그널링 파서에 의해 파싱될 수 있다.
도 2 는 본 발명의 일 실시예에 따른 서비스 디스커버리 과정을 도시한 도면이다.
피지컬 레이어의 방송 신호 프레임이 전달하는 브로드캐스트 스트림은 LLS (Low Level Signaling) 을 운반할 수 있다. LLS 데이터는 웰 노운(well known) IP 어드레스/포트로 전달되는 IP 패킷의 페이로드를 통해서 운반될 수 있다. 이 LLS 는 그 타입에 따라 SLT 를 포함할 수 있다. LLS 데이터는 LLS 테이블의 형태로 포맷될 수 있다. LLS 데이터를 운반하는 매 UDP/IP 패킷의 첫번째 바이트는 LLS 테이블의 시작일 수 있다. 도시된 실시예와 달리 LLS 데이터를 전달하는 IP 스트림은, 다른 서비스 데이터들과 함께 같은 PLP 로 전달될 수도 있다.
SLT 는 빠른 채널 스캔을 통하여 수신기가 서비스 리스트를 생성할 수 있게 하고, SLS 를 로케이팅(locating) 하기 위한 액세스 정보를 제공한다. SLT 는 부트스트랩 정보를 포함하는데, 이 부트스트랩 정보는 수신기가 각각의 서비스에 대한 SLS (Service Layer Signaling) 을 획득할 수 있도록 한다. SLS, 즉 서비스 시그널링 정보가 ROUTE 를 통해 전달되는 경우, 부트스트랩 정보는 SLS 를 운반하는 LCT 채널 내지 그 LCT 채널을 포함하는 ROUTE 세션의 데스티네이션 IP 어드레스 및 데스티네이션 포트 정보를 포함할 수 있다. SLS 가 MMT 를 통해 전달되는 경우, 부트스트랩 정보는 SLS 를 운반하는 MMTP 세션의 데스티네이션 IP 어드레스 및 데스티네이션 포트 정보를 포함할 수 있다.
도시된 실시예에서, SLT 가 기술하는 서비스 #1 의 SLS 는 ROUTE 를 통해 전달되고, SLT 는 해당 SLS 가 전달되는 LCT 채널을 포함하는 ROUTE 세션에 대한 부트스트랩 정보(sIP1, dIP1, dPort1) 를 포함할 수 있다. SLT 가 기술하는 서비스 #2 의 SLS 는 MMT 를 통해 전달되고, SLT 는 해당 SLS 가 전달되는 MMTP 패킷 플로우를 포함하는 MMTP 세션에 대한 부트스트랩 정보(sIP2, dIP2, dPort2) 를 포함할 수 있다.
SLS 는 해당 서비스에 대한 특성을 기술하는 시그널링 정보로서, 해당 서비스 및 해당 서비스의 서비스 컴포넌트를 획득하기 위한 정보를 제공하거나, 해당 서비스를 유의미하게 재생하기 위한 수신기 캐패빌리티 정보 등을 포함할 수 있다. 각 서비스에 대해 별개의 서비스 시그널링을 가지면 수신기는 브로드캐스트 스트림 내에서 전달되는 전체 SLS을 파싱할 필요 없이 원하는 서비스에 대한 적절한 SLS를 획득하면 된다.
SLS 가 ROUTE 프로토콜을 통해 전달되는 경우, SLS 는 SLT 가 지시하는 ROUTE 세션의 특정(dedicated) LCT 채널을 통해 전달될 수 있다. 실시예에 따라 이 LCT 채널은 tsi = 0 로 식별되는 LCT 채널일 수 있다. 이 경우 SLS 는 USBD/USD (User Service Bundle Description / User Service Description), S-TSID (Service-based Transport Session Instance Description) 및/또는 MPD (Media Presentation Description) 를 포함할 수 있다.
여기서 USBD 내지 USD 는 SLS 프래그먼트 중 하나로서, 서비스의 구체적 기술적 정보들을 기술하는 시그널링 허브로서 역할할 수 있다. USBD 는 서비스 식별 정보, 디바이스 캐패빌리티 정보 등을 포함할 수 있다. USBD 는 다른 SLS 프래그먼트(S-TSID, MPD 등) 에의 레퍼런스 정보(URI 레퍼런스)를 포함할 수 있다. 즉, USBD/USD 는 S-TSID 와 MPD 를 각각 레퍼런싱할 수 있다. 또한 USBD 는 수신기가 전송 모드(방송망/브로드밴드)를 결정할 수 있게 해주는 메타데이터 정보를 더 포함할 수 있다. USBD/USD 의 구체적 내용들에 대해서는 후술한다.
S-TSID 는 SLS 프래그먼트 중 하나로서, 해당 서비스의 서비스 컴포넌트를 운반하는 전송 세션에 대한 전체적인 세션 디스크립션 정보를 제공할 수 있다. S-TSID 는 해당 서비스의 서비스 컴포넌트가 전달되는 ROUTE 세션 및/또는 그 ROUTE 세션들의 LCT 채널에 대한 전송 세션 디스크립션 정보를 제공할 수 있다. S-TSID 는 하나의 서비스와 관련된 서비스 컴포넌트들의 컴포넌트 획득(acquisition) 정보를 제공할 수 있다. S-TSID 는, MPD 의 DASH 레프리젠테이션(Representation) 과 해당 서비스 컴포넌트의 tsi 간의 매핑을 제공할 수 있다. S-TSID 의 컴포넌트 획득 정보는 tsi, 관련 DASH 레프리젠테이션의 식별자의 형태로 제공될 수 있으며, 실시예에 따라 PLP ID 를 포함하거나 포함하지 않을 수 있다. 컴포넌트 획득 정보를 통해 수신기는 한 서비스의 오디오/비디오 컴포넌트들을 수집하고 DASH 미디어 세그먼트들의 버퍼링, 디코딩 등을 수행할 수 있다. S-TSID 는 전술한 바와 같이 USBD 에 의해 레퍼런싱될 수 있다. S-TSID 의 구체적 내용들에 대해서는 후술한다.
MPD 는 SLS 프래그먼트 중 하나로서, 해당 서비스의 DASH 미디어 프리젠테이션에 관한 디스크립션을 제공할 수 있다. MPD 는 미디어 세그먼트들에 대한 리소스 식별자(resource identifier) 를 제공하고, 식별된 리소스들에 대한 미디어 프리젠테이션 내에서의 컨텍스트 정보를 제공할 수 있다. MPD 는 방송망을 통해 전달되는 DASH 레프리젠테이션(서비스 컴포넌트)를 기술하고, 또한 브로드밴드를 통해 전달되는 추가적인 DASH 레프리젠테이션을 기술할 수 있다(하이브리드 딜리버리). MPD 는 전술한 바와 같이 USBD 에 의해 레퍼런싱될 수 있다.
SLS 가 MMT 프로토콜을 통해 전달되는 경우, SLS 는 SLT 가 지시하는 MMTP 세션의 특정(dedicated) MMTP 패킷 플로우을 통해 전달될 수 있다. 실시예에 따라 SLS 를 전달하는 MMTP 패킷들의 packet_id 는 00 의 값을 가질 수 있다. 이 경우 SLS 는 USBD/USD 및/또는 MMT Package (MP) 테이블을 포함할 수 있다.
여기서 USBD 는 SLS 프래그먼트의 하나로서, ROUTE 에서의 그것과 같이 서비스의 구체적 기술적 정보들을 기술할 수 있다. 여기서의 USBD 역시 다른 SLS 프래그먼트에의 레퍼런스 정보(URI 레퍼런스)를 포함할 수 있다. MMT 의 USBD 는 MMT 시그널링의 MP 테이블을 레퍼런싱할 수 있다. 실시예에 따라 MMT 의 USBD 는 S-TSID 및/또는 MPD 에의 레퍼런스 정보 또한 포함할 수 있다. 여기서의 S-TSID 는 ROUTE 프로토콜을 통해 전달되는 NRT 데이터를 위함일 수 있다. MMT 프로토콜을 통해 리니어 서비스 컴포넌트가 전달되는 경우에도 NRT 데이터는 ROUTE 프로토콜을 통해 전달될 수 있기 때문이다. MPD 는 하이브리드 서비스 딜리버리에 있어서, 브로드밴드로 전달되는 서비스 컴포넌트를 위함일 수 있다. MMT 의 USBD 의 구체적 내용들에 대해서는 후술한다.
MP 테이블은 MPU 컴포넌트들을 위한 MMT 의 시그널링 메시지로서, 해당 서비스의 서비스 컴포넌트를 운반하는 MMTP 세션에 대한 전체적인 세션 디스크립션 정보를 제공할 수 있다. 또한 MP 테이블은 이 MMTP 세션을 통해 전달되는 에셋(Asset) 에 대한 디스크립션을 포함할 수 있다. MP 테이블은 MPU 컴포넌트들을 위한 스트리밍 시그널링 정보로서, 하나의 서비스에 해당하는 에셋들의 리스트와 이 컴포넌트들의 로케이션 정보(컴포넌트 획득 정보)를 제공할 수 있다. MP 테이블의 구체적인 내용은 MMT 에서 정의된 형태이거나, 변형이 이루어진 형태일 수 있다. 여기서 Asset 이란, 멀티미디어 데이터 엔티티로서, 하나의 유니크 ID 로 연합되고 하나의 멀티미디어 프리젠테이션을 생성하는데 사용되는 데이터 엔티티를 의미할 수 있다. Asset 은 하나의 서비스를 구성하는 서비스 컴포넌트에 해당할 수 있다. MP 테이블을 이용하여 원하는 서비스에 해당하는 스트리밍 서비스 컴포넌트(MPU) 에 접근할 수 있다. MP 테이블은 전술한 바와 같이 USBD 에 의해 레퍼런싱될 수 있다.
기타 다른 MMT 시그널링 메시지가 정의될 수 있다. 이러한 MMT 시그널링 메시지들에 의해 MMTP 세션 내지 서비스에 관련된 추가적인 정보들이 기술될 수 있다.
ROUTE 세션은 소스 IP 어드레스, 데스티네이션 IP 어드레스, 데스티네이션 포트 넘버에 의해 식별된다. LCT 세션은 페어런트 ROUTE 세션의 범위 내에서 유일한 TSI (transport session identifier)에 의해 식별된다. MMTP 세션은 데스티네이션 IP 어드레스 및 데스티네이션 포트 넘버에 의해 식별된다. MMTP 패킷 플로우는 페어런트 MMTP 세션의 범위 내에서 유일한 packet_id에 의해 식별된다.
ROUTE 의 경우 S-TSID, USBD/USD, MPD 또는 이 들을 전달하는 LCT 세션을 서비스 시그널링 채널이라 부를 수도 있다. MMTP 의 경우, USBD/UD, MMT 시그널링 메시지들 또는 이들을 전달하는 패킷 플로우를 서비스 시그널링 채널이라 부를 수도 있다.
도시된 실시예와는 달리, 하나의 ROUTE 또는 MMTP 세션은 복수개의 PLP 를 통해 전달될 수 있다. 즉, 하나의 서비스는 하나 이상의 PLP 를 통해 전달될 수도 있다. 도시된 것과 달리 실시예에 따라 하나의 서비스를 구성하는 컴포넌트들이 서로 다른 ROUTE 세션들을 통해 전달될 수도 있다. 또한, 실시예에 따라 하나의 서비스를 구성하는 컴포넌트들이 서로 다른 MMTP 세션들을 통해 전달될 수도 있다. 실시예에 따라 하나의 서비스를 구성하는 컴포넌트들이 ROUTE 세션과 MMTP 세션에 나뉘어 전달될 수도 있다. 도시되지 않았으나, 하나의 서비스를 구성하는 컴포넌트가 브로드밴드를 통해 전달(하이브리드 딜리버리)되는 경우도 있을 수 있다.
도 3 은 본 발명의 일 실시예에 따른 LLS (Low Level Signaling) 테이블 및 SLT (Service List Table)를 도시한 도면이다.
도시된 LLS 테이블의 일 실시예(t3010) 은, LLS_table_id 필드, provider_id 필드, LLS_table_version 필드 및/또는 LLS_table_id 필드에 따른 정보들을 포함할 수 있다.
LLS_table_id 필드는 해당 LLS 테이블의 타입을 식별하고, provider_id 필드는 해당 LLS 테이블에 의해 시그널링되는 서비스들과 관련된 서비스 프로바이더를 식별할 수 있다. 여기서 서비스 프로바이더는 해당 브로드캐스트 스트림의 전부 또는 일부를 사용하는 브로드캐스터로서, provider_id 필드는 해당 브로드캐스트 스트림을 사용중인 복수의 브로드캐스터들 중 하나를 식별할 수 있다. LLS_table_version 필드는 해당 LLS 테이블의 버전 정보를 제공할 수 있다.
LLS_table_id 필드의 값에 따라, 해당 LLS 테이블은 전술한 SLT, 컨텐트 어드바이저리 레이팅(Content advisory rating) 에 관련된 정보를 포함하는 RRT(Rating Region Table), 시스템 타임과 관련된 정보를 제공하는 SystemTime 정보, 긴급 경보와 관련된 정보를 제공하는 CAP (Common Alert Protocol) 메시지 중 하나를 포함할 수 있다. 실시예에 따라 이들 외에 다른 정보가 LLS 테이블에 포함될 수도 있다.
도시된 SLT 의 일 실시예(t3020) 는, @bsid 속성, @sltCapabilities 속성, sltInetUrl 엘레멘트 및/또는 Service 엘레멘트를 포함할 수 있다. 각 필드들은 도시된 Use 컬럼의 값에 따라 생략되거나, 복수개 존재할 수 있다.
@bsid 속성은 브로드캐스트 스트림의 식별자일 수 있다. @sltCapabilities 속성은 해당 SLT 가 기술하는 모든 서비스들을 디코딩하고 유의미하게 재생하는데 요구되는 캐패빌리티 정보를 제공할 수 있다. sltInetUrl 엘레멘트는 해당 SLT 의 서비스들을 위한 ESG 내지 서비스 시그널링 정보를 브로드밴드를 통해 얻기 위해 사용되는 베이스 URL 정보를 제공할 수 있다. sltInetUrl 엘레멘트는 @urlType 속성을 더 포함할 수 있는데, 이는 해당 URL 을 통해 얻을 수 있는 데이터의 타입을 지시할 수 있다.
Service 엘레멘트는 해당 SLT 가 기술하는 서비스들에 대한 정보를 포함하는 엘레멘트일 수 있으며, 각각의 서비스들에 대해 Service 엘레멘트가 존재할 수 있다. Service 엘레멘트는 @serviceId 속성, @sltSvcSeqNum 속성, @protected 속성, @majorChannelNo 속성, @minorChannelNo 속성, @serviceCategory 속성, @shortServiceName 속성, @hidden 속성, @broadbandAccessRequired 속성, @svcCapabilities 속성, BroadcastSvcSignaling 엘레멘트 및/또는 svcInetUrl 엘레멘트를 포함할 수 있다.
@serviceId 속성은 해당 서비스의 식별자이고, @sltSvcSeqNum 속성은 해당 서비스에 대한 SLT 정보의 시퀀스 넘버를 나타낼 수 있다. @protected 속성은 해당 서비스의 유의미한 재생을 위해 필요한 적어도 하나의 서비스 컴포넌트가 보호(protected)되고 있는지 여부를 지시할 수 있다. @majorChannelNo 속성과 @minorChannelNo 속성은 각각 해당 서비스의 메이저 채널 넘버와 마이너 채널 넘버를 지시할 수 있다.
@serviceCategory 속성은 해당 서비스의 카테고리를 지시할 수 있다. 서비스의 카테고리로는 리니어 A/V 서비스, 리니어 오디오 서비스, 앱 기반 서비스, ESG 서비스, EAS 서비스 등이 있을 수 있다. @shortServiceName 속성은 해당 서비스의 짧은 이름(Short name)을 제공할 수 있다. @hidden 속성은 해당 서비스가 테스팅 또는 독점적(proprietary) 사용을 위한 서비스인지 여부를 지시할 수 있다. @broadbandAccessRequired 속성은 해당 서비스의 유의미한 재생을 위하여 브로드밴드 억세스가 필요한지 여부를 지시할 수 있다. @svcCapabilities 속성은 해당 서비스의 디코딩과 유의미한 재생을 위하여 필요한 캐패빌리티 정보를 제공할 수 있다.
BroadcastSvcSignaling 엘레멘트는 해당 서비스의 브로드캐스트 시그널링에 관련된 정보들을 제공할 수 있다. 이 엘레멘트는 해당 서비스의 방송망을 통한 시그널링에 대하여, 로케이션, 프로토콜, 어드레스 등의 정보를 제공할 수 있다. 자세한 사항은 후술한다.
svcInetUrl 엘레멘트는 해당 서비스를 위한 시그널링 정보를 브로드밴드를 통해 액세스하기 위한 URL 정보를 제공할 수 있다. sltInetUrl 엘레멘트는 @urlType 속성을 더 포함할 수 있는데, 이는 해당 URL 을 통해 얻을 수 있는 데이터의 타입을 지시할 수 있다.
전술한 BroadcastSvcSignaling 엘레멘트는 @slsProtocol 속성, @slsMajorProtocolVersion 속성, @slsMinorProtocolVersion 속성, @slsPlpId 속성, @slsDestinationIpAddress 속성, @slsDestinationUdpPort 속성 및/또는 @slsSourceIpAddress 속성을 포함할 수 있다.
@slsProtocol 속성은 해당 서비스의 SLS 를 전달하는데 사용되는 프로토콜을 지시할 수 있다(ROUTE, MMT 등). @slsMajorProtocolVersion 속성 및 @slsMinorProtocolVersion 속성은 각각 해당 서비스의 SLS 를 전달하는데 사용되는 프로토콜의 메이저 버전 넘버 및 마이너 버전 넘버를 지시할 수 있다.
@slsPlpId 속성은 해당 서비스의 SLS 를 전달하는 PLP 를 식별하는 PLP 식별자를 제공할 수 있다. 실시예에 따라 이 필드는 생략될 수 있으며, SLS 가 전달되는 PLP 정보는 후술할 LMT 내의 정보와, SLT 의 부트스트랩 정보를 조합하여 확인될 수도 있다.
@slsDestinationIpAddress 속성, @slsDestinationUdpPort 속성 및 @slsSourceIpAddress 속성은 각각 해당 서비스의 SLS 를 전달하는 전송 패킷의 데스티네이션 IP 어드레스, 데스티네이션 UDP 포트 및 소스 IP 어드레스 를 지시할 수 있다. 이들은 SLS 가 전달되는 전송세션(ROUTE 세션 또는 MMTP 세션)을 식별할 수 있다. 이들은 부트스트랩 정보에 포함될 수 있다.
도 4 는 본 발명의 일 실시예에 따른, ROUTE 로 전달되는 USBD 및 S-TSID 를 도시한 도면이다.
도시된 USBD 의 일 실시예(t4010) 은, bundleDescription 루트 엘레멘트를 가질 수 있다. bundleDescription 루트 엘레멘트는 userServiceDescription 엘레멘트를 가질 수 있다. userServiceDescription 엘레멘트는 하나의 서비스에 대한 인스턴스일 수 있다.
userServiceDescription 엘레멘트는 @globalServiceID 속성, @serviceId 속성, @serviceStatus 속성, @fullMPDUri 속성, @sTSIDUri 속성, name 엘레멘트, serviceLanguage 엘레멘트, capabilityCode 엘레멘트 및/또는 deliveryMethod 엘레멘트를 포함할 수 있다. 각 필드들은 도시된 Use 컬럼의 값에 따라 생략되거나, 복수개 존재할 수 있다.
@globalServiceID 속성은 해당 서비스의 글로벌하게 유니크한(globally unique) 식별자로서, ESG 데이터와 링크되는데 사용될 수 있다(Service@globalServiceID). @serviceId 속성은 SLT 의 해당 서비스 엔트리와 대응되는 레퍼런스로서, SLT 의 서비스 ID 정보와 동일할 수 있다. @serviceStatus 속성은 해당 서비스의 상태를 지시할 수 있다. 이 필드는 해당 서비스가 액티브인지 인액티브(inactive) 상태인지 여부를 지시할 수 있다.
@fullMPDUri 속성은 해당 서비스의 MPD 프래그먼트를 레퍼런싱할 수 있다. MPD 는 전술한 바와 같이 방송망 또는 브로드밴드를 통해 전달되는 서비스 컴포넌트에 대한 재생 디스크립션을 제공할 수 있다. @sTSIDUri 속성은 해당 서비스의 S-TSID 프래그먼트를 레퍼런싱할 수 있다. S-TSID 는 전술한 바와 같이 해당 서비스를 운반하는 전송 세션에의 액세스와 관련된 파라미터들을 제공할 수 있다.
name 엘레멘트는 해당 서비스의 이름을 제공할 수 있다. 이 엘레멘트는 @lang 속성을 더 포함할 수 있는데, 이 필드는 name 엘레멘트가 제공하는 이름의 언어를 지시할 수 있다. serviceLanguage 엘레멘트는 해당 서비스의 이용 가능한(available) 언어들을 지시할 수 있다. 즉, 이 엘레멘트는 해당 서비스가 제공될 수 있는 언어들을 나열할 수 있다.
capabilityCode 엘레멘트는 해당 서비스를 유의미하게 재생하기 위해 필요한 수신기 측의 캐패빌리티 또는 캐패빌리티 그룹 정보를 지시할 수 있다. 이 정보들은 서비스 아나운스먼트(announccement) 에서 제공되는 캐패빌리티 정보 포맷과 호환될 수 있다.
deliveryMethod 엘레멘트는 해당 서비스의 방송망 또는 브로드밴드를 통해 액세스되는 컨텐츠들에 대하여, 전송 관련 정보들을 제공할 수 있다. deliveryMethod 엘레멘트는 broadcastAppService 엘레멘트 및/또는 unicastAppService 엘레멘트를 포함할 수 있다. 이 엘레멘트들은 각각 basePattern 엘레멘트를 하위 엘레멘트로 가질 수 있다.
broadcastAppService 엘레멘트는 방송망을 통해 전달되는 DASH 레프리젠테이션에 대한 전송 관련 정보를 포함할 수 있다. 이 DASH 레프리젠테이션들은 해당 서비스 미디어 프리젠테이션의 모든 피리오드(Period)에 걸친 미디어 컴포넌트들을 포함할 수 있다.
이 엘레멘트의 basePattern 엘레멘트는 수신기가 세그먼트 URL 과 매칭하는데 사용되는 캐릭터 패턴을 나타낼 수 있다. 이는 DASH 클라이언트가 해당 레프리젠테이션의 세그먼트들을 요청하는데 사용될 수 있다. 매칭된다는 것은 해당 미디어 세그먼트가 방송망을 통해 전달된다는 것을 암시할 수 있다.
unicastAppService 엘레멘트는 브로드밴드를 통해 전달되는 DASH 레프리젠테이션에 대한 전송 관련 정보를 포함할 수 있다. 이 DASH 레프리젠테이션들은 해당 서비스 미디어 프리젠테이션의 모든 피리오드(Period)에 걸친 미디어 컴포넌트들을 포함할 수 있다.
이 엘레멘트의 basePattern 엘레멘트는 수신기가 세그먼트 URL 과 매칭하는데 사용되는 캐릭터 패턴을 나타낼 수 있다. 이는 DASH 클라이언트가 해당 레프리젠테이션의 세그먼트들을 요청하는데 사용될 수 있다. 매칭된다는 것은 해당 미디어 세그먼트가 브로드밴드를 통해 전달된다는 것을 암시할 수 있다.
도시된 S-TSID 의 일 실시예(t4020) 은, S-TSID 루트 엘레멘트를 가질 수 있다. S-TSID 루트 엘레멘트는 @serviceId 속성 및/또는 RS 엘레멘트를 포함할 수 있다. 각 필드들은 도시된 Use 컬럼의 값에 따라 생략되거나, 복수개 존재할 수 있다.
@serviceId 속성은 해당 서비스의 식별자로서, USBD/USD 의 해당 서비스를 레퍼런싱할 수 있다. RS 엘레멘트는 해당 서비스의 서비스 컴포넌트들이 전달되는 ROUTE 세션들에 대한 정보를 기술할 수 있다. 이러한 ROUTE 세션의 개수에 따라, 이 엘레멘트는 복수개 존재할 수 있다. RS 엘레멘트는 @bsid 속성, @sIpAddr 속성, @dIpAddr 속성, @dport 속성, @PLPID 속성 및/또는 LS 엘레멘트를 더 포함할 수 있다.
@bsid 속성은 해당 서비스의 서비스 컴포넌트들이 전달되는 브로드캐스트 스트림의 식별자일 수 있다. 이 필드가 생략된 경우, 디폴트 브로드캐스트 스트림은 해당 서비스의 SLS 를 전달하는 PLP 를 포함하는 브로드캐스트 스트림일 수 있다. 이 필드의 값은 SLT 의 @bsid 속성과 같은 값일 수 있다.
@sIpAddr 속성, @dIpAddr 속성 및 @dport 속성은 각각 해당 ROUTE 세션의 소스 IP 어드레스, 데스티네이션 IP 어드레스 및 데스티네이션 UDP 포트를 나타낼 수 있다. 이 필드들이 생략되는 경우, 디폴트 값들은 해당 SLS 를 전달하는, 즉 해당 S-TSID 를 전달하고 있는 현재의, ROUTE 세션의 소스 IP 어드레스, 데스티네이션 IP 어드레스 및 데스티네이션 UDP 포트값들일 수 있다. 현재 ROUTE 세션이 아닌, 해당 서비스의 서비스 컴포넌트들을 전달하는 다른 ROUTE 세션에 대해서는, 본 필드들이 생략되지 않을 수 있다.
@PLPID 속성은 해당 ROUTE 세션의 PLP ID 정보를 나타낼 수 있다. 이 필드가 생략되는 경우, 디폴트 값은 해당 S-TSID 가 전달되고 있는 현재 PLP 의 PLP ID 값일 수 있다. 실시예에 따라 이 필드는 생략되고, 해당 ROUTE 세션의 PLP ID 정보는 후술할 LMT 내의 정보와, RS 엘레멘트의 IP 어드레스 / UDP 포트 정보들을 조합하여 확인될 수도 있다.
LS 엘레멘트는 해당 서비스의 서비스 컴포넌트들이 전달되는 LCT 채널들에 대한 정보를 기술할 수 있다. 이러한 LCT 채널의 개수에 따라, 이 엘레멘트는 복수개 존재할 수 있다. LS 엘레멘트는 @tsi 속성, @PLPID 속성, @bw 속성, @startTime 속성, @endTime 속성, SrcFlow 엘레멘트 및/또는 RepairFlow 엘레멘트를 포함할 수 있다.
@tsi 속성은 해당 LCT 채널의 tsi 정보를 나타낼 수 있다. 이를 통해 해당 서비스의 서비스 컴포넌트가 전달되는 LCT 채널들이 식별될 수 있다. @PLPID 속성은 해당 LCT 채널의 PLP ID 정보를 나타낼 수 있다. 실시예에 따라 이 필드는 생략될 수 있다. @bw 속성은 해당 LCT 채널의 최대 대역폭를 나타낼 수 있다. @startTime 속성은 해당 LCT 세션의 스타트 타임을 지시하고, @endTime 속성은 해당 LCT 채널의 엔드 타임을 지시할 수 있다.
SrcFlow 엘레멘트는 ROUTE 의 소스 플로우에 대해 기술할 수 있다. ROUTE 의 소스 프로토콜은 딜리버리 오브젝트를 전송하기 위해 사용되며, 한 ROUTE 세션 내에서 적어도 하나 이상의 소스 플로우를 설정(establish)할 수 있다. 이 소스 플로우들은 관련된 오브젝트들을 오브젝트 플로우로서 전달할 수 있다.
RepairFlow 엘레멘트는 ROUTE 의 리페어 플로우에 대해 기술할 수 있다. 소스 프로토콜에 따라 전달되는 딜리버리 오브젝트들은 FEC (Forward Error Correction) 에 따라 보호될 수 있는데, 리페어 프로토콜은 이러한 FEC 프로텍션을 가능케 하는 FEC 프레임워크(framework)를 정의할 수 있다.
도 5 는 본 발명의 일 실시예에 따른, MMT 로 전달되는 USBD 를 도시한 도면이다.
도시된 USBD 의 일 실시예는, bundleDescription 루트 엘레멘트를 가질 수 있다. bundleDescription 루트 엘레멘트는 userServiceDescription 엘레멘트를 가질 수 있다. userServiceDescription 엘레멘트는 하나의 서비스에 대한 인스턴스일 수 있다.
userServiceDescription 엘레멘트는 @globalServiceID 속성, @serviceId 속성, Name 엘레멘트, serviceLanguage 엘레멘트, contentAdvisoryRating 엘레멘트, Channel 엘레멘트, mpuComponent 엘레멘트, routeComponent 엘레멘트, broadbandComponent 엘레멘트 및/또는 ComponentInfo 엘레멘트를 포함할 수 있다. 각 필드들은 도시된 Use 컬럼의 값에 따라 생략되거나, 복수개 존재할 수 있다.
@globalServiceID 속성, @serviceId 속성, Name 엘레멘트 및/또는 serviceLanguage 엘레멘트는 전술한 ROUTE 로 전달되는 USBD 의 해당 필드들과 같을 수 있다. contentAdvisoryRating 엘레멘트는 해당 서비스의 컨텐트 어드바이저리(advisory) 레이팅을 나타낼 수 있다. 이 정보들은 서비스 아나운스먼트(announccement) 에서 제공되는 컨텐트 어드바이저리 레이팅 정보 포맷과 호환될 수 있다. Channel 엘레멘트는 해당 서비스와 관련된 정보들을 포함할 수 있다. 이 엘레멘트의 자세한 내용에 대해서는 후술한다.
mpuComponent 엘레멘트는 해당 서비스의 MPU 로서 전달되는 서비스 컴포넌트들에 대한 디스크립션을 제공할 수 있다. 이 엘레멘트는 @mmtPackageId 속성 및/또는 @nextMmtPackageId 속성을 더 포함할 수 있다. @mmtPackageId 속성은 해당 서비스의 MPU 로서 전달되는 서비스 컴포넌트들의 MMT 패키지(Package) 를 레퍼런싱할 수 있다. @nextMmtPackageId 속성은 시간상 @mmtPackageId 속성이 레퍼런싱하는 MMT 패키지 다음으로 사용될 MMT 패키지를 레퍼런싱할 수 있다. 이 엘레멘트의 정보들을 통해 MP 테이블이 레퍼런싱될 수 있다.
routeComponent 엘레멘트는 ROUTE 로 전달되는 해당 서비스의 서비스 컴포넌트들에 대한 디스크립션을 포함할 수 있다. 리니어 서비스 컴포넌트들이 MMT 프로토콜로 전달되는 경우라 하더라도, NRT 데이터들은 전술한 바와 같이 ROUTE 프로토콜에 따라 전달될 수 있다. 이 엘레멘트는 이러한 NRT 데이터들에 대한 정보들을 기술할 수 있다. 이 엘레멘트의 자세한 내용에 대해서는 후술한다.
broadbandComponent 엘레멘트는 브로드밴드로 전달되는 해당 서비스의 서비스 컴포넌트들에 대한 디스크립션을 포함할 수 있다. 하이브리드 서비스 딜리버리에 있어서, 한 서비스의 일부 서비스 컴포넌트 또는 기타 파일들은 브로드밴드를 통해 전달될 수 있다. 이 엘레멘트는 이러한 데이터들에 대한 정보들을 기술할 수 있다. 이 엘레멘트는 @fullMPDUri 속성을 더 포함할 수 있다. 이 속성은 브로드밴드로 전달되는 서비스 컴포넌트들에 대해 기술하는 MPD 를 레퍼런싱할 수 있다. 하이브리드 서비스 딜리버리 이외에도, 터널 내의 주행 등으로 인해 방송 신호가 약화되는 경우에 있어, 방송망-브로드밴드 간의 핸드오프(handoff) 를 지원하기 위해 본 엘레멘트가 필요할 수 있다. 방송 신호가 약해지는 경우, 브로드밴드를 통해 서비스 컴포넌트를 획득하다가, 다시 방송 신호가 강해지면 방송망을 통해 서비스 컴포넌트를 획득하여 서비스의 연속성이 보장될 수 있다.
ComponentInfo 엘레멘트는 해당 서비스의 서비스 컴포넌트들에 대한 정보를 포함할 수 있다. 서비스의 서비스 컴포넌트들의 개수에 따라, 이 엘레멘트는 복수개 존재할 수 있다. 이 엘레멘트는 각 서비스 컴포넌트의 타입, 롤(role), 이름, 식별자, 프로텍션 여부 등의 정보들을 기술할 수 있다. 이 엘레멘트의 자세한 정보에 대해서는 후술한다.
전술한 Channel 엘레멘트는 @serviceGenre 속성, @serviceIcon 속성 및/또는 ServiceDescription 엘레멘트를 더 포함할 수 있다. @serviceGenre 속성은 해당 서비스의 장르를 지시하고, @serviceIcon 속성은 해당 서비스를 대표하는 아이콘(icon) 의 URL 정보를 포함할 수 있다. ServiceDescription 엘레멘트는 해당 서비스의 서비스 디스크립션을 제공하는데, 이 엘레멘트는 @serviceDescrText 속성 및/또는 @serviceDescrLang 속성을 더 포함할 수 있다. 이 속성들은 각각 해당 서비스 디스크립션의 텍스트 및 그 텍스트에 사용되는 언어를 지시할 수 있다.
전술한 routeComponent 엘레멘트는 @sTSIDUri 속성, @sTSIDDestinationIpAddress 속성, @sTSIDDestinationUdpPort 속성, @sTSIDSourceIpAddress 속성, @sTSIDMajorProtocolVersion 속성 및/또는 @sTSIDMinorProtocolVersion 속성을 더 포함할 수 있다.
@sTSIDUri 속성은 S-TSID 프래그먼트를 레퍼런싱할 수 있다. 이 필드는 전술한 ROUTE 로 전달되는USBD 의 해당 필드와 같을 수 있다. 이 S-TSID 는 ROUTE 로 전달되는 서비스 컴포넌트들에 대한 액세스 관련 정보를 제공할 수 있다. 이 S-TSID 는 MMT 프로토콜에 따라 리니어 서비스 컴포넌트들이 전달되는 상황에서, ROUTE 프로토콜에 따라 전달되는 NRT 데이터들을 위해 존재할 수 있다.
@sTSIDDestinationIpAddress 속성, @sTSIDDestinationUdpPort 속성 및 @sTSIDSourceIpAddress 속성은 각각 전술한 S-TSID 를 운반하는 전송 패킷의 데스티네이션 IP 어드레스, 데스티네이션 UDP 포트, 소스 IP 어드레스를 나타낼 수 있다. 즉, 이 필드들은 전술한 S-TSID 를 운반하는 전송 세션(MMTP 세션 또는 ROUTE 세션)을 식별할 수 있다.
@sTSIDMajorProtocolVersion 속성 및 @sTSIDMinorProtocolVersion 속성은 전술한 S-TSID 를 전달하는데 사용되는 전송 프로토콜의 메이저 버전 넘버 및 마이너 버전 넘버를 지시할 수 있다.
전술한 ComponentInfo 엘레멘트는 @componentType 속성, @componentRole 속성, @componentProtectedFlag 속성, @componentId 속성 및/또는 @componentName 속성을 더 포함할 수 있다.
@componentType 속성은 해당 컴포넌트의 타입을 지시할 수 있다. 예를 들어 이 속성은 해당 컴포넌트가 오디오, 비디오, 클로즈드캡션 컴포넌트인지를 지시할 수 있다. @componentRole 속성은 해당 컴포넌트의 롤(역할)을 지시할 수 있다. 예를 들어 이 속성은 해당 컴포넌트가 오디오 컴포넌트인 경우 메인 오디오, 뮤직, 코멘터리 등인지를 지시할 수 있다. 해당 컴포넌트가 비디오 컴포넌트인 경우 프라이머리 비디오인지 등을 지시할 수 있다. 해당 컴포넌트가 클로즈드 캡션 컴포넌트인 경우 노말 캡션인지 이지리더(easy reader) 타입인지 등을 지시할 수 있다.
@componentProtectedFlag 속성은 해당 서비스 컴포넌트가 프로텍티드되었는지, 예를 들어 암호화되었는지를 지시할 수 있다. @componentId 속성은 해당 서비스 컴포넌트의 식별자를 나타낼 수 있다. 이 속성의 값은 이 서비스 컴포넌트에 해당하는 MP 테이블의 asset_id (에셋 ID) 와 같은 값일 수 있다. @componentName 속성은 해당 서비스 컴포넌트의 이름을 나타낼 수 있다.
도 6 은 본 발명의 일 실시예에 따른 링크 레이어(Link Layer) 동작을 도시한 도면이다.
링크 레이어는 피지컬 레이어와 네트워크 레이어 사이의 레이어일 수 있다. 송신 측에서는 네트워크 레이어에서 피지컬 레이어로 데이터를 전송하고, 수신 측에서는 피지컬 레이어에서 네트워크 레이어로 데이터를 전송할 수 있다(t6010). 링크 레이어의 목적은 피지컬 레이어에 의한 처리를 위해 모든 입력 패킷 타입을 하나의 포맷으로 압축(abstracting)하는 것, 아직 정의되지 않은 입력 패킷 타입에 대한 유연성(flexibility) 및 추후 확장 가능성을 보장하는 것일 수 있다. 또한 링크 레이어는 입력 패킷의 헤더의 불필요한 정보를 압축하는 옵션을 제공함으로써, 입력 데이터가 효율적으로 전송될 수 있도록 할 수 있다. 링크 레이어의 오버헤드 리덕션, 인캡슐레이션 등의 동작은 링크 레이어 프로토콜이라 불리고, 해당 프로토콜을 이용하여 생성된 패킷은 링크 레이어 패킷이라 불릴 수 있다. 링크 레이어는 패킷 인캡슐레이션(packet encapsulation), 오버헤드 리덕션(Overhead Reduction) 및/또는 시그널링 전송(Signaling Transmission) 등의 기능을 수행할 수 있다.
송신측 기준으로, 링크 레이어(ALP)는 입력 패킷에 대하여 오버헤드 리덕션 과정을 수행한 후 이들을 링크 레이어 패킷으로 인캡슐레이션할 수 있다. 또한 실시예에 따라 링크 레이어는 오버헤드 리덕션 과정을 수행하지 아니하고, 링크 레이어 패킷으로 인캡슐레이션할 수도 있다. 링크 레이어 프로토콜의 사용으로 인해 피지컬 레이어 상에서 데이터의 전송에 대한 오버헤드가 크게 감소할 수 있으며, 본 발명에 따른 링크 레이어 프로토콜은 IP 오버헤드 리덕션 및/또는 MPEG-2 TS 오버헤드 리덕션을 제공할 수 있다.
도시된, IP 패킷이 입력패킷으로 입력되는 경우에 있어서(t6010), 링크 레이어는 IP 헤더 압축, 어댑테이션 및/또는 인캡슐레이션 과정을 차례로 수행할 수 있다. 실시예에 따라 일부 과정은 생략될 수 있다. 먼저, RoHC 모듈이 IP 패킷 헤더 압축을 수행하여 불필요한 오버헤드를 줄이고, 어댑테이션 과정을 통해 컨텍스트 정보가 추출되고 대역 외로 전송될 수 있다. IP 헤더 압축과 어댑테이션 과정을 통칭하여 IP 헤더 압축이라 부를 수도 있다. 이 후 인캡슐레이션 과정을 통해 IP 패킷들이 링크 레이어 패킷들로 인캡슐레이션될 수 있다.
MPEG 2 TS 패킷이 입력패킷으로 입력되는 경우에 있어서, 링크 레이어는 TS 패킷에 대한 오버헤드 리덕션 및/또는 인캡슐레이션 과정을 차례로 수행할 수 있다. 실시예에 따라 일부 과정은 생략될 수 있다. 오버헤드 리덕션에 있어, 링크 레이어는 싱크 바이트 제거, 널 패킷 삭제 및/또는 공통(common) 헤더 제거 (압축)을 제공할 수 있다. 싱크 바이트 제거를 통해 TS 패킷당 1 바이트의 오버헤드 리덕션이 제공될 수 있다. 수신측에서 재삽입될 수 있는 방식으로 널 패킷 삭제가 수행될 수 있다. 또한 연속된 헤더들 간의 공통되는 정보들이 수신측에서 복구될 수 있는 방식으로 삭제(압축)될 수 있다. 각 오버헤드 리덕션 과정 중 일부는 생략될 수 있다. 이 후 인캡슐레이션 과정을 통해 TS 패킷들이 링크 레이어 패킷들로 인캡슐레이션될 수 있다. TS 패킷의 인캡슐레이션에 대한 링크 레이어 패킷 구조는 다른 타입의 패킷들과는 다를 수 있다.
먼저 IP 헤더 압축(IP Header Compression) 에 대해서 설명한다.
IP 패킷은 고정된 헤더 포맷을 가지고 있으나, 통신 환경에서 필요한 일부 정보는 브로드캐스트 환경에서 불필요할 수 있다. 링크 레이어 프로토콜은 IP 패킷의 헤더를 압축함으로써 브로드캐스트 오버헤드를 줄이는 메커니즘을 제공할 수 있다.
IP 헤더 압축은 헤더 컴프레서/디컴프레서 및/또는 어댑테이션 모듈을 포함할 수 있다. IP 헤더 컴프레서(RoHC 컴프레서)는 RoHC 방식에 기초하여 각 IP 패킷 헤더의 크기를 감소시킬 수 있다. 이 후 어댑테이션 모듈은 컨텍스트 정보를 추출하고 각 패킷 스트림으로부터 시그널링 정보를 생성할 수 있다. 수신기는 해당 패킷 스트림에 관련된 시그널링 정보를 파싱하고 컨텍스트 정보를 그 패킷 스트림에 붙일(attach) 수 있다. RoHC 디컴프레서는 패킷 헤더를 복구하여 원래의 IP 패킷을 재구성할 수 있다. 이하, IP 헤더 압축이란, 헤더 컴프레서에 의한 IP 헤더 압축만을 의미할 수도 있고, IP 헤더 압축과 어댑테이션 모듈에 의한 어댑테이션 과정을 합한 개념을 의미할 수도 있다. 디컴프레싱(decompressing) 에 대해서도 마찬가지이다.
이하, 어댑테이션(Adaptation) 에 대해서 설명한다.
단방향 링크를 통한 전송의 경우, 수신기가 컨텍스트의 정보를 갖고 있지 않으면, 디컴프레서는 완전한 컨텍스트를 수신할 때까지 수신된 패킷 헤더를 복구할 수 없다. 이는 채널 변경 지연 및 턴 온 딜레이 (turn-on delay)를 초래할 수 있다. 따라서 어댑테이션 기능을 통해, 컴프레서/디컴프레서 간의 컨피규레이션 파라미터와 컨텍스트 정보가 대역 외로 전송될 수 있다. 어댑테이션 펑션(function)은 컨텍스트 정보 및/또는 컨피규레이션 파라미터들을 이용하여 링크 레이어 시그널링을 생성(construction) 할 수 있다. 어댑테이션 펑션은 예전(previous) 컨피규레이션 파라미터 및/또는 컨텍스트 정보를 이용하여 각각의 피지컬 프레임을 통해 주기적으로 링크 레이어 시그널링을 전송할 수 있다.
압축된 IP 패킷들로부터 컨텍스트 정보가 추출되는데, 어댑테이션 모드에 따라 다양한 방법이 사용될 수 있다.
모드 #1 은 압축된 패킷 스트림에 대해 어떠한 동작도 수행하지 않는 모드로서, 어댑테이션 모듈이 버퍼로서 동작하는 모드일 수 있다.
모드 #2 는 압축된 패킷 스트림 중, IR 패킷을 검출하여 컨텍스트 정보(스태틱 체인)을 추출하는 모드일 수 있다. 추출후 IR 패킷은 IR-DYN 패킷으로 전환되고, IR-DYN 패킷은 원래의 IR 패킷을 대체하여 패킷 스트림 내에서 같은 순서로 전송될 수 있다.
모드 #3 (t6020) 는 압축된 패킷 스트림 중, IR 및 IR-DYN 패킷을 검출하고 컨텍스트 정보를 추출하는 모드일 수 있다. IR 패킷으로부터 스태틱 체인 및 다이나믹 체인이, IR-DYN 패킷으로부터 다이나믹 체인이 추출될 수 있다. 추출후 IR 및 IR-DYN 패킷은 일반 압축 패킷으로 전환될 수 있다. 전환된 패킷은 원래의 IR 및 IR-DYN 패킷을 대체하여 패킷 스트림 내에서 같은 순서로 전송될 수 있다.
각 모드에서, 컨텍스트 정보가 추출되고 남은 패킷들은, 압축된 IP 패킷을 위한 링크 레이어 패킷 구조에 따라 인캡슐레이션 되어 전송될 수 있다. 컨텍스트 정보들은, 링크 레이어 시그널링으로서, 시그널링 정보를 위한 링크 레이어 패킷 구조에 따라 인캡슐레이션 되어 전송될 수 있다.
추출된 컨텍스트 정보는 RDT (RoHC-U Description Table) 에 포함되어 RoHC 패킷 플로우와 별도로 전송될 수 있다. 컨텍스트 정보는 다른 시그널링 정보와 함께 특정(specific) 피지컬 데이터 경로를 통해 전송될 수 있다. 특정 피지컬 데이터 경로란, 실시예에 따라, 일반적인 PLP 중 하나를 의미할 수도 있고, LLS (Low Level Signaling) 이 전달되는 PLP 를 의미할 수도 있고, 지정된(dedicated) PLP 일 수도 있고, L1 시그널링 패쓰(path)를 의미할 수도 있다. 여기서 RDT 는 컨텍스트 정보(스태틱 체인 및/또는 다이나믹 체인) 및/또는 헤더 컴프레션과 관련된 정보를 포함하는 시그널링 정보일 수 있다. 실시예에 따라 RDT 는 컨텍스트 정보가 바뀔 때마다 전송될 수 있다. 또한 실시예에 따라 RDT 는 매 피지컬 프레임에서 전송될 수 있다. 매 피지컬 프레임에서 RDT 를 전송하기 위해서, 예전(previous) RDT 가 재사용(re-use)될 수 있다.
수신기는 패킷 스트림을 획득하기 앞서, 최초 PLP 를 선택해 SLT, RDT, LMT 등의 시그널링 정보를 먼저 획득할 수 있다. 수신기는 이 시그널링 정보들이 획득되면, 이 들을 조합하여 서비스 - IP 정보 - 컨텍스트 정보 - PLP 간의 매핑을 획득할 수 있다. 즉, 수신기는 어떤 서비스가 어느 IP 스트림들로 전송되는지, 어떤 PLP 로 어떤 IP 스트림들이 전달되는지 등을 알 수 있고, 또한 PLP 들의 해당 컨텍스트 정보들을 획득할 수 있다. 수신기는 특정 패킷 스트림을 운반하는 PLP 를 선택하여 디코딩 할 수 있다. 어댑테이션 모듈은 컨텍스트 정보를 파싱하고 이를 압축된 패킷들과 합칠 수 있다. 이를 통해 패킷 스트림이 복구될 수 있고, 이는 RoHC 디컴프레서로 전달될 수 있다. 이후 디컴프레션이 시작될 수 있다. 이 때 수신기는 어댑테이션 모드에 따라, IR 패킷을 디텍팅하여 최초 수신된 IR 패킷으로부터 디컴프레션을 시작하거나(모드 1), IR-DYN 패킷을 디텍팅하여 최초 수신된 IR-DYN 패킷으로부터 디컴프레션을 시작하거나(모드 2), 아무 일반 압축 패킷(compressed packet)으로부터 디컴프레션을 시작할 수 있다(모드 3).
이하, 패킷 인캡슐레이션에 대해서 설명한다.
링크 레이어 프로토콜은 IP 패킷, TS 패킷 등의 모든 타입의 인풋 패킷들을 링크 레이어 패킷으로인캡슐레이션할 수 있다. 이를 통해 피지컬 레이어는 네트워크 레이어의 프로토콜 타입과는 독립적으로 하나의 패킷 포맷만 처리하면 된다(여기서 네트워크 레이어 패킷의 일종으로 MPEG-2 TS 패킷을 고려). 각 네트워크 레이어 패킷 또는 입력 패킷은 제네릭 링크 레이어 패킷의 페이로드로 변형된다.
패킷 인캡슐레이션 과정에서 분할(segmentation) 이 활용될 수 있다. 네트워크 레이어 패킷이 지나치게 커서 피지컬 레이어에서 처리하지 못하는 경우, 네트워크 레이어 패킷은 두 개 이상의 세그먼트들로 나누어질 수 있다. 링크 레이어 패킷 헤더는 송신 측에서 분할을 실행하고 수신 측에서 재결합을 실행하기 위한 필드들을 포함할 수 있다. 각 세그먼트들은 원래 위치와 같은 순서로 링크 레이어 패킷으로 인캡슐레이션될 수 있다.
패킷 인캡슐레이션 과정에서 연쇄(concatenation) 또한 활용될 수 있다. 링크 레이어 패킷의 페이로드가 여러 네트워크 레이어 패킷을 포함할 정도로 네트워크 레이어 패킷이 충분히 작은 경우, 연쇄가 수행될 수 있다. 링크 레이어 패킷 헤더는 연쇄를 실행하기 위한 필드들을 포함할 수 있다. 연쇄의 경우 각 입력 패킷들은 원래의 입력 순서와 같은 순서로 링크 레이어 패킷의 페이로드로 인캡슐레이션될 수 있다.
링크 레이어 패킷은 헤더와 페이로드를 포함할 수 있고, 헤더는 베이스 헤더, 추가(additional) 헤더 및/또는 옵셔널 헤더가 포함될 수 있다. 추가 헤더는 연쇄나 분할 등의 상황에 따라 더 추가될 수 있는데, 추가헤더에는 상황에 맞춘 필요한 필드들이 포함될 수 있다. 또한 추가적인 정보의 전달을 위해 옵셔널 헤더가 더 추가될 수도 있다. 각각의 헤더 구조는 기 정의되어 있을 수 있다. 전술한 바와 같이 입력 패킷이 TS 패킷인 경우에는, 다른 패킷들과는 다른 링크 레이어 헤더 구조가 사용될 수 있다.
이하, 링크 레이어 시그널링에 대해서 설명한다.
링크 레이어 시그널링은 IP 레이어보다 하위 레벨에서 동작할 수 있다. 수신측에서는 LLS, SLT, SLS 등의 IP 레벨 시그널링보다, 링크 레이어 시그널링을 더 빠르게 획득할 수 있다. 따라서 링크 레이어 시그널링은 세션 설정(establishment) 이전에 획득될 수 있다.
링크 레이어 시그널링에는 인터널 링크 레이어 시그널링과 익스터널 링크 레이어 시그널링이 있을 수 있다. 인터널 링크 레이어 시그널링은 링크 레이어에서 생성된 시그널링 정보일 수 있다. 전술한 RDT 나 후술할 LMT 등이 여기에 해당할 수 있다. 익스터널 링크 레이어 시그널링은 외부 모듈 또는 외부 프로토콜, 상위 레이어로부터 전달받은 시그널링 정보일 수 있다. 링크 레이어는 링크 레이어 시그널링을 링크 레이어 패킷으로 인캡슐레이션하여 전달할 수 있다. 링크 레이어 시그널링을 위한 링크 레이어 패킷 구조(헤더 구조)가 정의될 수 있는데, 이 구조에 따라 링크 레이어 시그널링 정보가 인캡슐레이션될 수 있다.
도 7 은 본 발명의 일 실시예에 따른 LMT (Link Mapping Table) 를 도시한 도면이다.
LMT 는 PLP 로 운반되는 상위 레이어 세션들의 리스트를 제공할 수 있다. 또한 LMT 는 상위 레이어 세션들을 전달하는 링크 레이어 패킷들을 프로세싱하기 위한 추가적인 정보들을 제공할 수 있다. 여기서 상위 레이어 세션은 멀티캐스트(multicast) 라고 불릴 수도 있다. LMT 를 통해 특정 PLP 를 통해 어떠한 IP 스트림들, 어떠한 전송 세션들이 전송되고 있는지에 대한정보가 획득될 수 있다. 반대로 특정 전송 세션이 어느 PLP 로 전달되는지에 대한 정보를 획득할 수 있다.
LMT 는 LLS 를 운반하는 것으로 식별된 어떤 PLP 로도 전달될 수 있다. 여기서 LLS 가 전달되는 PLP 는 피지컬 레이어의 L1 디테일 시그널링 정보의 LLS 플래그에 의해 식별될 수 있다. LLS 플래그는 각각의 PLP 에 대하여, 해당 PLP 로 LLS 가 전달되는지 여부를 지시하는 플래그 필드일 수 있다. 여기서 L1 디테일 시그널링 정보는 후술할 PLS2 데이터에 해당할 수 있다.
즉, LMT 는 LLS 와 함께, 같은 PLP 로 전달될 수 있다. 각각의 LMT 들은 전술한 바와 같이 PLP 들과 IP 어드레스/포트간의 매핑을 기술할 수 있다. 전술한 바와 같이 LLS 는 SLT 를 포함할 수 있는데, LMT 가 기술하는 이 IP 어드레스/포트들은, 해당 LMT 와 같은 PLP 로 전달되는 SLT 가 기술하는, 모든(any) 서비스와 관련된 모든(any) IP 어드레스/포트들일 수 있다.
실시예에 따라 전술한 SLT, SLS 등에서의 PLP 식별자 정보가 활용되어, SLT, SLS 가 지시하는 특정전송 세션이 어느 PLP 로 전송되고 있는지에 대한 정보가 확인될 수 있다.
다른 실시예에 따라 전술한 SLT, SLS 등에서의 PLP 식별자 정보는 생략되고, SLT, SLS 가 지시하는 특정 전송 세션에 대한 PLP 정보는 LMT 내의 정보를 참조함으로써 확인될 수 있다. 이 경우 수신기는 LMT 와 다른 IP 레벨 시그널링 정보들을 조합하여, 알고자 하는 PLP 를 식별할 수 있다. 이 실시예에 있어서도 SLT, SLS 등에서의 PLP 정보는 생략되지 않고, SLT, SLS 등에 남아있을 수 있다.
도시된 실시예에 따른 LMT 는, signaling_type 필드, PLP_ID 필드, num_session 필드 및/또는 각각의 세션들에 대한 정보들을 포함할 수 있다. 도시된 실시예의 LMT 는 하나의 PLP 에 대해서, 그 PLP 로 전송되는 IP 스트림들을 기술하고 있지만, 실시예에 따라 LMT 에 PLP 루프가 추가되어, 복수개의 PLP 에 대한 정보가 기술될 수도 있다. 이 경우 LMT 는, 전술한 바와 같이, 함께 전달되는 SLT 가 기술하는 모든 서비스와 관련된 모든 IP 어드레스/포트들에 대한 PLP 들을, PLP 루프로 기술할 수 있다.
signaling_type 필드는 해당 테이블에 의해 전달되는 시그널링 정보의 타입을 지시할 수 있다. LMT 에 대한 signaling_type 필드의 값은 0x01로 설정될 수 있다. signaling_type 필드는 생략될 수 있다. PLP_ID 필드는 기술하고자 하는 대상 PLP 를 식별할 수 있다. PLP 루프가 사용되는 경우, 각각의 PLP_ID 필드는 각각의 대상 PLP 를 식별할 수 있다. PLP_ID 필드부터는 PLP 루프 내에 포함될 수 있다. 이하 언급되는 PLP_ID 필드는 PLP 루프 중의 PLP 하나에 대한 식별자이며, 이하 설명되는 필드들은 그 해당 PLP 에 대한 필드들일 수 있다.
num_session 필드는 해당 PLP_ID 필드에 의해 식별되는 PLP 로 전달되는 상위 레이어 세션들의 개수를 나타낼 수 있다. num_session 필드가 나타내는 개수에 따라, 각각의 세션들에 대한 정보들이 포함될 수 있다. 이정보에는 src_IP_add 필드, dst_IP_add 필드, src_UDP_port 필드, dst_UDP_port 필드, SID_flag 필드, compressed_flag 필드, SID 필드 및/또는 context_id 필드가 있을 수 있다.
src_IP_add 필드, dst_IP_add 필드, src_UDP_port 필드 및 dst_UDP_port 필드는 해당 PLP_ID 필드에 의해 식별되는 PLP 로 전달되는 상위 레이어 세션들 중, 해당 전송 세션에 대한 소스 IP 어드레스, 데스티네이션 IP 어드레스, 소스 UDP 포트, 데스티네이션 UDP 포트를 나타낼 수 있다.
SID_flag 필드는 해당 전송 세션을 전달하는 링크 레이어 패킷이 그 옵셔널 헤더에 SID 필드를 갖는지 여부를 지시할 수 있다. 상위 레이어 세션을 전달하는 링크 레이어 패킷은 그 옵셔널 헤더에 SID 필드를 가질 수 있고, 그 SID 필드 값은 후술할 LMT 내의 SID 필드와 동일할 수 있다.
compressed_flag 필드는 해당 전송 세션을 전달하는 링크 레이어 패킷의 데이터들에 헤더 컴프레션이 적용되었는지 여부를 지시할 수 있다. 또한 본 필드의 값에 따라 후술할 context_id 필드의 존부가 결정될 수 있다. 헤더 컴프레션이 적용된 경우(compressed_flag = 1), RDT 가 존재할 수 있고, 그 RDT 의 PLP ID 필드는 본 compressed_flag 필드와 관련된 해당 PLP_ID 필드와 같은 값을 가질 수 있다.
SID 필드는 해당 전송 세션을 전달하는 링크 레이어 패킷들에 대한 SID (sub stream ID) 를 지시할 수 있다. 이 링크 레이어 패킷들은, 그 옵셔널 헤더에 본 SID 필드와 같은 값을 가지는 SID 를 포함하고 있을 수 있다. 이를 통해 수신기는 링크 레이어 패킷을 전부 파싱할 필요 없이, LMT 의 정보와 링크 레이어 패킷 헤더의 SID 정보를 이용하여, 링크 레이어 패킷들을 필터링할 수 있다.
context_id 필드는 RDT 내의 CID(context id) 에 대한 레퍼런스를 제공할 수 있다. RDT 의 CID 정보는 해당되는 압축 IP 패킷 스트림에 대한 컨텍스트 ID 를 나타낼 수 있다. RDT 는 해당 압축 IP 패킷 스트림에 대한 컨텍스트 정보들을 제공할 수 있다. 본 필드를 통해 RDT 와 LMT 가 연관될 수 있다.
전술한, 본 발명의 시그널링 정보/테이블의 실시예들에 있어서, 각각의 필드, 엘레멘트, 속성들은 생략되거나 다른 필드로 대체될 수 있으며, 실시예에 따라 추가적인 필드, 엘레멘트, 속성들이 추가될 수도 있다.
본 발명의 일 실시예에서, 한 서비스의 서비스 컴포넌트들이 복수개의 ROUTE 세션을 통해 전달될 수 있다. 이 경우, SLT 의 부트스트랩 정보를 통하여 SLS 가 획득될 수 있다. 이 SLS 의 USBD 를 통해 S-TSID 와 MPD 가 레퍼런싱될 수 있다. S-TSID 는 SLS 가 전달되고 있는 ROUTE 세션 뿐 아니라, 서비스 컴포넌트들이 전달되고 있는 다른 ROUTE 세션에 대한 전송 세션 디스크립션 정보 또한 기술할 수 있다. 이를 통해 복수개의 ROUTE 세션을 통해 전달되는 서비스 컴포넌트들이 모두 수집될 수 있다. 이러한 사항은 한 서비스의 서비스 컴포넌트들이 복수개의 MMTP 세션을 통해 전달되는 경우에도 유사하게 적용될 수 있다. 참고로, 하나의 서비스 컴포넌트는 복수개의 서비스에 의해 동시에 사용될 수도 있다.
본 발명의 또 다른 실시예에서, ESG 서비스에 대한 부트스트래핑은 방송망 또는 브로드밴드에 의해 수행될 수 있다. 브로드밴드를 통한 ESG 획득을 통해, SLT 의 URL 정보가 활용될 수 있다. 이 URL 로 ESG 정보 등이 요청될 수 있다.
본 발명의 또 다른 실시예에서, 한 서비스의 서비스 컴포넌트가 하나는 방송망으로 하나는 브로드밴드로 전달될 수 있다(하이브리드). S-TSID 는 방송망으로 전달되는 컴포넌트들에 대해 기술해, ROUTE 클라이언트가 원하는 서비스 컴포넌트들을 획득케 할 수 있다. 또한 USBD 는 베이스 패턴 정보를 가지고 있어, 어느 세그먼트들이(어느 컴포넌트들이) 어느 경로로 전달되는지 기술할 수 있다. 따라서 수신기는 이를 이용해, 브로드밴드 서버로 요청해야될 세그먼트는 무엇인지, 방송 스트림에서 찾아야될 세그먼트는 무엇인지 알 수 있다.
본 발명의 또 다른 실시예에서, 서비스에 대한 스케일러블(scalable) 코딩이 수행될 수 있다. USBD 는 해당 서비스를 렌더링하기 위해 필요한 모든 캐패빌리티 정보를 가질 수 있다. 예를 들어 한 서비스가 HD 또는 UHD 로 제공되는 경우, USBD 의 캐패빌리티 정보는 “HD 또는 UHD” 값을 가질 수 있다. 수신기는 MPD 를 이용하여 UHD 또는 HD 서비스를 렌더링하기 위하여 어느 컴포넌트가 재생되어야 하는지 알 수 있다.
본 발명의 또 다른 실시예에서, SLS 를 전달하는 LCT 채널로 전달되는 LCT 패킷들의 TOI 필드를 통해, 해당 LCT 패킷들이 어느 SLS 프래그먼트를 전달하고 있는지(USBD, S-TSID, MPD 등..) 가 식별될 수 있다.
본 발명의 또 다른 실시예에서, 앱 기반 인핸스먼트/ 앱 기반 서비스에 사용될 앱 컴포넌트들은 NRT 컴포넌트로서 방송망을 통해 전달되거나 브로드밴드를 통해 전달될 수 있다. 또한 앱 기반 인핸스먼트에 대한 앱 시그널링은 SLS 와 함께 전달되는 AST (Application Signaling Table) 에 의해 수행될 수 있다. 또한 앱이 수행할 동작에 대한 시그널링인 이벤트는 SLS 와 함께 EMT (Event Message Table) 형태로 전달되거나, MPD 내에 시그널링되거나, DASH 레프리젠테이션 내에 box 형태로 인밴드(in-band) 시그널링될 수 있다. AST, EMT 등은 브로드밴드를 통해 전달될 수도 있다. 수집된 앱 컴포넌트들과 이러한 시그널링 정보들을 이용해 앱 기반 인핸스먼트 등이 제공될 수 있다.
본 발명의 또 다른 실시예에서, 긴급 경보를 위해 CAP 메시지가 전술한 LLS 테이블에 포함되어 제공될 수 있다. 긴급 경보를 위한 리치 미디어(Rich Media) 컨텐츠 역시 제공될 수 있다. 리치 미디어는 CAP 메시지에 의해 시그널링될 수 있으며, 리치 미디어가 존재하는 경우 이는 SLT 에 의해 시그널링되는 EAS 서비스로서 제공될 수 있다.
본 발명의 또 다른 실시예에서, MMT 프로토콜에 따라 리니어 서비스 컴포넌트들이 방송망을 통해 전달될 수 있다. 이 경우 해당 서비스에 대한 NRT 데이터(예를 들어 앱 컴포넌트)들은 ROUTE 프로토콜에 따라 방송망을 통해 전달될 수 있다. 또한 해당 서비스에 대한 데이터가 브로드밴드를 통해 전달될 수도 있다. 수신기는 SLT 의 부트스트랩 정보를 이용해 SLS 를 전달하는 MMTP 세션에 접근할 수 있다. MMT 에 따른 SLS 의 USBD 는 MP 테이블을 레퍼런싱하여, 수신기가 MMT 프로토콜에 따라 전달되는 MPU 로 포맷된 리니어 서비스 컴포넌트들을 획득케 할 수 있다. 또한, USBD 는 S-TSID 를 더 레퍼런싱하여, 수신기가 ROUTE 프로토콜에 따라 전달되는 NRT 데이터를 획득케 할 수 있다. 또한, USBD 는 MPD 를 더 레퍼런싱하여, 브로드밴드를 통해 전달되는 데이터에 대한 재생 디스크립션을 제공할 수 있다.
본 발명의 또 다른 실시예에서, 수신기는 그 컴패니언 디바이스에 스트리밍 컴포넌트 및/또는 파일 컨텐트 아이템(파일 등)을 획득할 수 있는 로케이션 URL 정보를, 웹소켓 등의 방법을 통해 전달할 수 있다. 컴패니언 디바이스의 어플리케이션은 이 URL 로 HTTP GET 등을 통해 요청하여 해당 컴포넌트, 데이터 등을 획득할 수 있다. 그 밖에 수신기는 시스템 타임 정보, 긴급 경보 정보 등의 정보를 컴패니언 디바이스 측에 전달할 수 있다.
도 8은 본 발명의 일 실시예에 따른 차세대 방송 서비스에 대한 방송 신호 송신 장치의 구조를 나타낸다.
본 발명의 일 실시예에 따른 차세대 방송 서비스에 대한 방송 신호 송신 장치는 인풋 포맷 블록 (Input Format block) (1000), BICM (bit interleaved coding & modulation) 블록(1010), 프레임 빌딩 블록 (Frame building block) (1020), OFDM (orthogonal frequency division multiplexing) 제너레이션 블록 (OFDM generation block)(1030), 및 시그널링 생성 블록(1040)을 포함할 수 있다. 방송 신호 송신 장치의 각 블록의 동작에 대해 설명한다.
본 발명의 일 실시예에 따른 입력 데이터는 IP 스트림/패킷 및 MPEG2-TS이 주요 입력 포맷이 될 수 있으며, 다른 스트림 타입은 일반 스트림으로 다루어진다.
인풋 포맷 블록(1000)은 각각의 입력 스트림을 독립적인 코딩 및 변조가 적용되는 하나 또는 다수의 데이터 파이프로 디멀티플렉싱 할 수 있다. 데이터 파이프는 견고성(robustness) 제어를 위한 기본 단위이며, 이는 QoS (Quality of Service)에 영향을 미친다. 하나 또는 다수의 서비스 또는 서비스 컴포넌트가 하나의 데이터 파이프에 의해 전달될 수 있다. 데이터 파이프는 하나 또는 다수의 서비스 또는 서비스 컴포넌트를 전달할 수 있는 서비스 데이터 또는 관련 메타데이터를 전달하는 물리 계층(physical layer)에서의 로지컬 채널이다.
QoS가 본 발명의 일 실시예에 따른 차세대 방송 서비스에 대한 방송 신호 송신 장치에 의해 제공되는 서비스의 특성에 의존하므로, 각각의 서비스에 해당하는 데이터는 서로 다른 방식을 통해 처리되어야 한다.
BICM 블록(1010)은 MIMO가 적용되지 않는 프로파일 (또는 시스템)에 적용되는 처리 블록 및/또는 MIMO가 적용되는 프로파일(또는 시스템)의 처리 블록을 포함할 수 있으며, 각각의 데이터 파이프를 처리하기 위한 복수의 처리 블록을 포함할 수 있다.
MIMO가 적용되지 않는 BICM 블록의 처리 블록은 데이터 FEC 인코더, 비트 인터리버, 컨스텔레이션 매퍼(mapper), SSD (signal space diversity) 인코딩 블록, 타임 인터리버를 포함할 수 있다. MIMO가 적용되는 BICM 블록의 처리 블록은 셀 워드 디멀티플렉서 및 MIMO 인코딩 블록을 더 포함한다는 점에서 MIMO가 적용되지 않는 BICM의 처리 블록과 구별된다.
데이터 FEC 인코더는 외부 코딩(BCH) 및 내부 코딩(LDPC)을 이용하여 FECBLOCK 절차를 생성하기 위해 입력 BBF에 FEC 인코딩을 실행한다. 외부 코딩(BCH)은 선택적인 코딩 방법이다. 비트 인터리버는 데이터 FEC 인코더의 출력을 인터리빙하여 LDPC 코드 및 변조 방식의 조합으로 최적화된 성능을 달성할 수 있다. 컨스텔레이션 매퍼는 QPSK, QAM-16, 불균일 QAM (NUQ-64, NUQ-256, NUQ-1024) 또는 불균일 컨스텔레이션 (NUC-16, NUC-64, NUC-256, NUC-1024)을 이용해서 비트 인터리버 또는 셀 워드 디멀티플렉서로부터의 셀 워드를 변조하여 파워가 정규화된 컨스텔레이션 포인트를 제공할 수 있다. NUQ가 임의의 형태를 갖는 반면, QAM-16 및 NUQ는 정사각형 모양을 갖는 것이 관찰된다. NUQ 및 NUC는 모두 각 코드 레이트(code rate)에 대해 특별히 정의되고, PLS2 데이터의 파라미터 DP_MOD에 의해 시그널링 된다. 타임 인터리버는 데이터 파이프 레벨에서 동작할 수 있다. 타임 인터리빙의 파라미터는 각각의 데이터 파이프에 대해 다르게 설정될 수 있다.
본 발명의 타임 인터리버는 BICM 체인(BICM chain) 블록과 프레임 빌더(Frame Builder) 사이에 위치할 수 있다. 이 경우, 본 발명의 타임 인터리버는 PLP (Physical Layer Pipe) 모드에 따라 컨볼루션 인터리버(Convolution Interleaver, CI)와 블록 인터리버(Block Interleaver, BI)를 선택적으로 사용하거나, 모두 사용할 수 있다. 본 발명의 일 실시예에 따른 PLP는 상술한 DP와 동일한 개념으로 사용되는 피지컬 패스(physical path)로서, 호칭은 설계자의 의도에 따라 변경 가능하다. 본 발명의 일 실시예에 따른 PLP 모드는 방송 신호 송신기 또는 방송 신호 송신 장치에서 처리하는 PLP 개수에 따라 싱글 PLP(single PLP) 모드 또는 멀티플 PLP(multiple PLP)모드를 포함할 수 있다. 본 발명에서는 PLP 모드에 따라 서로 다른 타임 인터리빙 방법을 적용하는 타임 인터리빙을 하이브리드 타임 인터리빙(Hybrid Time Interleaving)이라 호칭할 수 있다.
하이브리드 타임 인터리버는 블록 인터리버(BI)와 컨볼루션 인터리버(CI)를 포함할 수 있다. PLP_NUM=1인 경우, 블록 인터리버는 적용되지 않고(블록인터리버 오프(off)), 컨볼루션 인터리버만 적용된다. PLP_NUM>1인 경우, 블록 인터리버와 컨볼루션 인터리버가 모두 적용(블록 인터리버 온(on))될 수 있다. PLP_NUM>1인 경우 적용되는 컨볼루션 인터리버의 구조 및 동작은 PLP_NUM=1인 경우 적용되는 컨볼루션 인터리버의 구조 및 동작과 다를 수 있다. 하이브리드 타임 디인터리버는 상술한 하이브리드 타임 인터리버의 역동작에 상응하는 동작을 수행할 수 있다.
셀 워드 디멀티플렉서는 MIMO 처리를 위해 단일 셀 워드 스트림을 이중 셀 워드 스트림으로 분리하는 데 사용된다. MIMO 인코딩 블록은 MIMO 인코딩 방식을 이용해서 셀 워드 디멀티플렉서의 출력을 처리할 수 있다. 본 발명의 MIMO 인코딩 방식은 수신기 측에서의 비교적 작은 복잡도 증가로 용량 증가를 제공하기 위한 FR-SM (full-rate spatial multiplexing)으로 정의 될 수 있다. MIMO 처리는 데이터 파이프 레벨에서 적용된다. 컨스텔레이션 매퍼 출력의 페어(pair, 쌍)인 NUQ (e1,i 및 e2,i)는 MIMO 인코더의 입력으로 공급되면 MIMO 인코더 출력 페어(pair, 쌍)(g1,i 및 g2,i)은 각각의 송신 안테나의 동일한 캐리어 k 및 OFDM 심볼 l에 의해 전송된다.
프레임 빌딩 블록(1020)은 하나의 프레임 내에서 입력 데이터 파이프의 데이터 셀을 OFDM 심볼로 매핑하고 주파수 영역 다이버시티를 위해 주파수 인터리빙을 수행할 수 있다.
본 발명의 일 실시예에 따른 프레임은 프리앰블, 하나 이상의 FSS (frame signaling symbol), 노멀 데이터 심볼로 분리된다. 프리앰블은 신호의 효율적인 송신 및 수신을 위한 기본 전송 파라미터의 집합을 제공하는 특별한 심볼이다. 프리앰블은 프레임의 기본 전송 파라미터 및 전송 타입을 시그널링 할 수 있다. 특히 프리앰블은 EAS (emergency alert service)이 현재 프레임에 제공되는지 여부를 지시할 수 있다. FSS의 주된 목적은 PLS 데이터를 전달하는 것이다. 고속 동기화 및 채널 추정, PLS 데이터의 고속 디코딩을 위해, FSS는 노멀 데이터 심볼보다 고밀도의 파일럿 패턴을 갖는다.
프레임 빌딩 블록은 데이터 파이프와 해당하는 PLS 데이터 사이의 타이밍을 조절하여 송신기 측에서 데이터 파이프와 해당하는 PLS 데이터 간의 동시성(co-time)을 보장하기 위한 딜레이 컴펜세이션(delay compensation, 지연보상) 블록, PLS, 데이터 파이프, 보조 스트림, 및 더미 셀 등을 프레임 내에서 OFDM 심볼의 액티브(active) 캐리어에 매핑하기 위한 셀 매퍼 (cell mapper) 및 프리퀀시 인터리버 (frequency interleaver)를 포함할 수 있다.
프리퀀시 인터리버는 셀 매퍼로부터 의해 수신된 데이터 셀을 랜덤하게 인터리빙하여 주파수 다이버시티를 제공할 수 있다. 또한, 프리퀀시 인터리버는 단일 프레임에서 최대의 인터리빙 이득을 얻기 위해 다른 인터리빙 시드(seed) 순서를 이용하여 두 개의 순차적인 OFDM 심볼로 구성된 OFDM 심볼 페어(pair, 쌍)에 대응하는 데이터 또는 OFDM 심볼 하나에 대응하는 데이터에 대해 동작할 수 있다.
OFDM 제너레이션 블록(1030)은 프레임 빌딩 블록에 의해 생성된 셀에 의해 OFDM 캐리어를 변조하고, 파일럿을 삽입하고, 전송을 위한 시간 영역 신호를 생성한다. 또한, 해당 블록은 순차적으로 가드 인터벌을 삽입하고, PAPR 감소 처리를 적용하여 최종 RF 신호를 생성한다.
시그널링 생성 블록(1040)은 각 기능 블록의 동작에 사용되는 물리 계층(physical layer) 시그널링 정보를 생성할 수 있다. 본 발명의 일 실시예에 따른 시그널링 정보는 PLS 데이터를 포함할 수 있다. PLS는 수신기에서 피지컬 레이어(physical layer) 데이터 파이프에 접속할 수 있는 수단을 제공한다. PLS 데이터는 PLS1 데이터 및 PLS2 데이터로 구성된다.
PLS1 데이터는 PLS2 데이터를 디코딩하는 데 필요한 파라미터뿐만 아니라 시스템에 관한 기본 정보를 전달하는 고정된 사이즈, 코딩, 변조를 갖는 프레임에서 FSS로 전달되는 PLS 데이터의 첫 번째 집합이다. PLS1 데이터는 PLS2 데이터의 수신 및 디코딩을 가능하게 하는 데 요구되는 파라미터를 포함하는 기본 송신 파라미터를 제공한다. PLS2 데이터는 데이터 파이프 및 시스템에 관한 더욱 상세한 PLS 데이터를 전달하며 FSS로 전송되는 PLS 데이터의 두 번째 집합이다. PLS2 시그널링은 PLS2 스태틱(static, 정적) 데이터(PLS2-STAT 데이터) 및 PLS2 다이나믹(dynamic, 동적) 데이터(PLS2-DYN 데이터)의 두 종류의 파라미터로 더 구성된다. PLS2 스태틱(static, 정적) 데이터는 프레임 그룹의 듀레이션 동안 스태틱(static, 정적)인 PLS2 데이터이고, PLS2 다이나믹(dynamic, 동적) 데이터는 프레임마다 다이나믹(dynamic, 동적)으로 변화하는 PLS2 데이터이다.
PLS2 데이터는 FIC_FLAG 정보를 포함할 수 있다. FIC (Fast Information Channel)은 빠른 서비스 획득 및 채널 스캔(fast service acquisition and channel scanning)을 가능하게 하는 크로스-레이어 (cross-layer) 정보를 전송하기 위한 데디케이티드 채널(dedicated channel)이다. FIC_FLAG 정보는 1비트의 필드로서, FIC((fast information channel, 고속 정보 채널)가 현 프레임 그룹에서 사용되는지 여부를 나타낸다. 해당 필드의 값이 1로 설정되면, FIC는 현 프레임에서 제공된다. 해당 필드의 값이 0으로 설정되면, FIC는 현 프레임에서 전달되지 않는다.BICM 블록(1010)은 PLS 데이터의 보호를 위한 BICM 블록을 포함할 수 있다. PLS 데이터의 보호를 위한 BICM 블록은 PLS FEC 인코더, 비트 인터리버, 및 컨스텔레이션 매퍼를 포함할 수 있다.
PLS FEC 인코더는 PLS1 데이터 및 PLS2 데이터를 스크램블링하기 위한 스크램블러, PLS 보호를 위한 쇼트닝된 BCH 코드를 이용하여 스크램블링된 PLS 1,2 데이터에 외부 인코딩을 수행하고, BCH 인코딩 후에 제로 비트를 삽입하기 위한 BCH 인코딩/제로 삽입 블록, LDPC 코드를 이용하여 인코딩을 수행하기 위한 LDPC 인코딩 블록, 및 LDPC 패리티 펑처링(puncturing) 블록을 포함할 수 있다. PLS1 데이터에 대해서만, 제로 삽입의 출력 비트가 LDPC 인코딩 전에 퍼뮤테이션(permutation) 될 수 있다.. 비트 인터리버는 각각의 쇼트닝 및 펑처링된 PLS1 데이터 및 PLS2 데이터를 인터리빙하고, 컨스텔레이션 매퍼는 비트 인터리빙된 PLS1 데이터 및 PLS2 데이터를 컨스텔레이션에 매핑할 수 있다.
본 발명의 일 실시예에 따른 차세대 방송 서비스에 대한 방송 신호 수신 장치는 도 8을 참조하여 설명한 차세대 방송 서비스에 대한 방송 신호 송신 장치의 역과정을 수행할 수 있다.
본 발명의 일 실시예에 따른 차세대 방송 서비스에 대한 방송 신호 수신 장치는 방송 신호 송신 장치에 의해 실행되는 절차의 역과정에 해당하는 복조를 실행하는 동기 및 복조 모듈 (synchronization & demodulation module), 입력 신호 프레임을 파싱하고, 사용자에 의해 선택된 서비스가 전송되는 데이터를 추출하는 프레임 파싱 모듈 (frame parsing module), 입력 신호를 비트 영역 데이터로 변환한 후, 필요에 따라 비트 영역 데이터들을 디인터리빙하고, 전송 효율을 위해 적용된 매핑에 대한 디매핑을 실행하고, 디코딩을 통해 전송 채널에서 발생한 에러를 정정하는 디매핑 및 디코딩 모듈 (demapping & decoding module), 방송 신호 송신 장치에 의해 적용되는 다양한 압축/신호 처리 절차의 역과정을 실행하는 출력 프로세서 (output processor) 및 동기 및 복조 모듈에 의해 복조된 신호로부터 PLS 정보를 획득, 처리하는 시그널링 디코딩 모듈 (signaling decoding module)을 포함할 수 있다. 프레임 파싱 모듈, 디매핑 및 디코딩 모듈, 출력 프로세서는 시그널링 디코딩 모듈로부터 출력된 PLS 데이터를 이용하여 그 기능을 실행할 수 있다.
이하 타임 인터리버를 설명한다. 본 발명의 일 실시예에 따른 타임 인터리빙 그룹은 하나의 프레임에 직접 매핑되거나 PI개의 프레임에 걸쳐 확산된다. 또한 각각의 타임 인터리빙 그룹은 하나 이상(NTI개)의 타임 인터리빙 블록으로 분리된다. 여기서 각각의 타임 인터리빙 블록은 타임 인터리버 메모리의 하나의 사용에 해당한다. 타임 인터리빙 그룹 내의 타임 인터리빙 블록은 서로 다른 개수의 XFECBLOCK을 포함할 수 있다. 일반적으로, 타임 인터리버는 프레임 생성 과정 이전에 데이터 파이프 데이터에 대한 버퍼로도 작용될 수 있다.
본 발명의 일 실시예에 따른 타임 인터리버는 트위스트된 행-열 블록 인터리버이다. 본 발명의 일 실시예에 따른 트위스트된 행-열 블록 인터리버는 첫 번째 XFECBLOCK을 타임 인터리빙 메모리의 첫 번째 열에 열 방향으로 기입하고, 두 번째 XFECBLOCK은 다음 열에 기입하고 동일한 방식으로 타임 인터리빙 블록 내의 나머지 XFECBLOCK들을 기입할 수 있다. 그리고 인터리빙 어레이에서, 셀은 첫 번째 행으로부터 (가장 왼쪽 열을 시작으로 행을 따라 오른쪽으로) 마지막 행까지 대각선 방향 판독될 수 있다. 이 경우, 타임 인터리빙 블록 내의 XFECBLOCK 개수에 상관없이 수신기 측에서 단일 메모리 디인터리빙을 달성하기 위해, 트위스트된 행-열 블록 인터리버용 인터리빙 어레이는 버츄얼 XFECBLOCK을 타임 인터리빙 메모리에 삽입할 수 있다. 이 경우, 수신기 측에서 단일 메모리 디인터리빙을 달성하기 위해 버츄얼 XFECBLOCK은 다른 XFECBLOCK 가장 앞에 삽입되어야 한다.
도 9는 본 발명의 일 실시예에 따른 타임 인터리버의 라이팅 (writing) 오퍼레이션을 나타낸다.
도면의 왼쪽에 도시된 블록은 TI 메모리 어드레스 어레이(memory address array)를 나타내며, 도면의 오른쪽에 도시된 블록은 연속한 두 개의 TI 그룹들에 대해 각각 버츄얼(virtual) FEC 블록들이 TI 그룹의 가장 앞에 각각 2개 및 1개가 삽입된 경우의 라이팅 (writing) 오퍼레이션을 나타낸다.
본 발명의 일 실시예에 따른 프리퀀시 인터리버는 심볼 페어에 대응하는 데이터들에 적용하기 위한 인터리빙 어드레스를 생성하기 위한 인터리빙 어드레스 제너레이터를 포함할 수 있다.
도 10은 본 발명의 일 실시예에 따른 프리퀀시 인터리버에 포함된 각 FFT 모드에 따른 메인-PRBS 제너레이터와 서브-PRBS 제너레이터로 구성된 인터리빙 어드레스 제너레이터의 블록 다이아그램을 나타낸 도면이다.
(a)는 8K FFT 모드에 대한 인터리빙 어드레스 제너레이터의 블록 다이아그램을 나타내고, (b)는 16K FFT 모드에 대한 인터리빙 어드레스 제너레이터의 블록 다이아그램을 나타내고, (c)는 32K FFT 모드에 대한 인터리빙 어드레스 제너레이터의 블록 다이아그램을 나타낸다.
OFDM 심볼 페어에 대한 인터리빙 과정은 하나의 인터리빙 시퀀스를 이용하며 다음과 같이 설명된다. 우선, 하나의 OFDM 심볼 Om,l 에서 인터리빙 될 사용 가능한 데이터 셀(셀 매퍼로부터의 출력 셀)은 l = 0, …, Nsym-1 에 대해 Om,l =[xm,l,0,…,xm,l,p,…,xm,l,Ndata-1] 로 정의된다. 이때 xm,l,p 는 m번째 프레임에서 l 번째 OFDM 심볼의 p 번째 셀이고, Ndata 는 데이터 셀의 개수이다. 프레임 시그널링 심볼에 대해 Ndata = CFSS 이고, 노멀 데이터에 대해 Ndata = Cdata 이며, 프레임 엣지 심볼에 대해 Ndata = CFES 이다. 또한, 인터리빙된 데이터 셀은 l = 0, …, Nsym-1 에 대해 Pm,l =[vm,l,0,…,vm,l,Ndata-1] 로 정의된다.
OFDM 심볼 페어에 대해, 인터리빙 된 OFDM 심볼 페어는 각 페어의 첫 번째 OFDM 심볼에 대해 vm,l,Hi(p) = xm,l,p, p=0,…,Ndata-1 로 주어지고, 각 페어의 두 번째 OFDM 심볼에 대해 vm,l,p = xm,l,Hi(p), p=0,…,Ndata-1 로 주어진다. 이때 Hl(p) 는 PRBS 제너레이터 및 서브-PRBS 제너레이터의 사이클릭 시프트 값(심볼 오프셋)을 기반으로 생성된 인터리빙 어드레스이다.
도 11 은 본 발명의 일 실시예에 따른 하이브리드 방송 수신 장치를 나타낸 도면이다.
하이브리드 방송 시스템은 지상파 방송망 및 인터넷 망을 연동하여 방송 신호를 송신할 수 있다. 하이브리드 방송 수신 장치는 지상파 방송망 (브로드캐스트) 및 인터넷 망 (브로드밴드)을 통해 방송 신호를 수신할 수 있다. 하이브리드 방송 수신 장치는 피지컬 레이어 모듈, 피지컬 레이어 I/F 모듈, 서비스/컨텐트 획득 컨트롤러, 인터넷 억세스 제어 모듈, 시그널링 디코더, 서비스 시그널링 매니저, 서비스 가이드 매니저, 어플리케이션 시그널링 매니저, 경보 신호 매니저, 경보 신호 파서, 타겟팅 신호 파서, 스트리밍 미디어 엔진, 비실시간 파일 프로세서, 컴포넌트 싱크로나이저, 타겟팅 프로세서, 어플리케이션 프로세서, A/V 프로세서, 디바이스 매니저, 데이터 셰어링 및 커뮤니케이션 유닛, 재분배 모듈, 컴패니언 디바이스 및/또는 외부 모듈들을 포함할 수 있다.
피지컬 레이어 모듈 (Physical Layer Module(s))은 지상파 방송 채널을 통하여 방송 관련 신호를 수신 및 처리하고 이를 적절한 형태로 변환하여 피지컬 레이어 I/F 모듈로 전달할 수 있다.
피지컬 레이어 I/F 모듈 (Physical Layer I/F Module(s))은 Physical layer Module로 부터 획득된 정보로부터 IP 데이터 그램을 획득할 수 있다. 또한, 피지컬 레이어 I/F 모듈은 획득된 IP 데이터그램 등을 특정 프레임(예를 들어 RS Frame, GSE 등) 으로 변환할 수 있다.
서비스/컨텐트 획득 컨트롤러 (Service/Content Acquisition Controller)는 broadcast 및/또는 broadband 채널을 통한 서비스, 콘텐츠 및 이와 관련된 시그널링 데이터 획득을 위한 제어 동작을 수행할 수 있다.
인터넷 억세스 제어 모듈(Internet Access Control Module(s))은 Broadband 채널을 통하여 서비스, 콘텐츠 등을 획득하기 위한 수신기 동작을 제어할 수 있다.
시그널링 디코더 (Signaling Decoder)는 broadcast 채널 등을 통하여 획득한 시그널링 정보를 디코딩할 수 있다.
서비스 시그널링 매니저 (Service Signaling Manager)는 IP 데이터 그램 등으로부터 서비스 스캔 및 서비스/콘텐츠 등과 관련된 시그널링 정보 추출, 파싱 및 관리할 수 있다.
서비스 가이드 매니저 (Service Guide Manager)는 IP 데이터 그램 등으로 부터 announcement 정보를 추출하고 SG(Service Guide) database 관리하며, service guide를 제공할 수 있다.
어플리케이션 시그널링 매니저 (App Signaling Manager)는 IP 데이터 그램 등으로 부터 애플리케이션 획득 등과 관련된 시그널링 정보 추출, 파싱 및 관리할 수 있다.
경보 신호 파서 (Alert Signaling Parser)는 IP 데이터 그램 등으로 부터 alerting 관련된 시그널링 정보 추출 및 파싱, 관리할 수 있다.
타겟팅 신호 파서 (Targeting Signaling Parser)는 IP 데이터 그램 등으로 부터 서비스/콘텐츠 개인화 혹은 타겟팅 관련된 시그널링 정보 추출 및 파싱, 관리할 수 있다. 또한 타겟팅 신호 파서는 파싱된 시그널링 정보를 타겟팅 프로세서로 전달할 수 있다.
스트리밍 미디어 엔진 (Streaming Media Engine)은 IP 데이터그램 등으로 부터 A/V 스트리밍을 위한 오디오/비디오 데이터 추출 및 디코딩할 수 있다.
비실시간 파일 프로세서 (Non-real time File Processor)는 IP 데이터그램 등으로 부터 NRT 데이터 및 application 등 파일 형태 데이터 추출 및 디코딩, 관리할 수 있다.
컴포넌트 싱크로나이저 (Component Synchronizer)는 스트리밍 오디오/비디오 데이터 및 NRT 데이터 등의 콘텐츠 및 서비스를 동기화할 수 있다.
타겟팅 프로세서 (Targeting Processor)는 타겟팅 신호 파서로부터 수신한 타겟팅 시그널링 데이터에 기초하여 서비스/콘텐츠의 개인화 관련 연산을 처리할 수 있다.
어플리케이션 프로세서 (App Processor)는 application 관련 정보 및 다운로드 된 application 상태 및 디스플레이 파라미터 처리할 수 있다.
A/V 프로세서 (A/V Processor)는 디코딩된 audio 및 video data, application 데이터 등을 기반으로 오디오/비디오 랜더링 관련 동작을 수행할 수 있다.
디바이스 매니저 (Device Manager)는 외부 장치와의 연결 및 데이터 교환 동작을 수행할 수 있다. 또한 디바이스 매니저는 연동 가능한 외부 장치의 추가/삭제/갱신 등 외부 장치에 대한 관리 동작을 수행할 수 있다.
데이터 셰어링 및 커뮤니케이션 유닛 (Data Sharing & Comm.)은 하이브리드 방송 수신기와 외부 장치 간의 데이터 전송 및 교환에 관련된 정보를 처리할 수 있다. 여기서, 전송 및 교환 가능한 데이터는 시그널링, A/V 데이터 등이 될 수 있다.
재분배 모듈 (Redistribution Module(s))은 방송 수신기가 지상파 방송 신호를 직접 수신 하지 못하는 경우 차세대 방송 서비스 및 콘텐츠에 대한 관련 정보를 획득할 수 있다. 또한 재분배 모듈은 방송 수신기가 지상파 방송 신호를 직접 수신 하지 못하는 경우 차세대 방송 시스템에 의한 방송 서비스 및 콘텐츠 획득을 지원할 수 있다.
컴패니언 디바이스 (Companion device(s))는 본 발명의 방송 수신기에 연결되어 오디오, 비디오, 또는 시그널링 포함데이터를 공유할 수 있다. 컴패니언 디바이스는 방송 수신기와 연결된 외부 장치를 지칭할 수 있다.
외부 모듈 (External Management)는 방송 서비스/콘텐츠 제공을 위한 모듈을 지칭할 수 있으며 예를들어 차세대 방송 서비스/컨텐츠 서버가 될 수 있다. 외부 모듈은 방송 수신기와 연결된 외부 장치를 지칭할 수 있다.
도 12 는 본 발명의 일 실시예에 따른 DASH 기반 적응형(Adaptive) 스트리밍 모델의 전반적인 동작을 도시한 도면이다.
본 발명은 HDR (High Dynamic Range) 지원 가능한 컨텐트를 제공하는 차세대 미디어 서비스 제공 방안을 제안한다. 풍부한 밝기 표현이 가능한 HDR 컨텐트가 제공되는 경우에 있어, 본 발명은 이와 관련한 메타데이터 및 그 전달방안을 제안한다. 이를 통해 컨텐트의 다양한 장면별 특성에 따라 적응적으로 컨텐트가 조정될 수 있고, 컨텐트가 개선된 화질로 제공될 수 있다.
UHD 방송 등의 경우, 기존의 컨텐트들이 표현하지 못했던 밝기가 표현될 수 있어, 고도의 현장감이 제공될 수 있다. HDR 의 도입으로 컨텐트 영상의 밝기의 표현 범위가 증가되어, 컨텐트의 장면별 특성의 차이가 이전보다 커질 수 있다. 컨텐트의 장면별 특징들을 효과적으로 디스플레이에 나타내기 위하여, 메타데이터가 정의되고 이 것들이 수신기로 전달될 수 있다. 수신기에서는 전달받은 메타데이터들을 기반으로, 서비스 프로바이더가 의도한 바에 따라 적절하게 컨텐트의 영상이 제공될 수 있다.
도시된 실시예에 따른 DASH 기반 적응형 스트리밍 모델은, HTTP 서버와 DASH 클라이언트 간의 동작을 기술하고 있다. 여기서 DASH (Dynamic Adaptive Streaming over HTTP) 는, HTTP 기반 적응형 스트리밍을 지원하기 위한 프로토콜로서, 네트워크 상황에 따라 동적으로 스트리밍을 지원할 수 있다. 이에 따라 AV 컨텐트 재생이 끊김없이 제공될 수 있다.
먼저 DASH 클라이언트는 MPD 를 획득할 수 있다. MPD 는 HTTP 서버 등의 서비스 프로바이더로부터 전달될 수 있다. MPD 는 전술한 딜리버리 실시예에 따라 전달될 수도 있다. DASH 클라이언트는 MPD 에 기술된 세그먼트에의 접근 정보를 이용하여 서버로 해당 세그먼트들을 요청할 수 있다. 여기서 이 요청은 네트워크 상태를 반영하여 수행될 수 있다.
DASH 클라이언트는 해당 세그먼트를 획득한 후, 이를 미디어 엔진에서 처리하여 화면에 디스플레이할 수 있다. DASH 클라이언트는 재생 시간 및/또는 네트워크 상황 등을 실시간으로 반영하여, 필요한 세그먼트를 요청, 획득할 수 있다(Adaptive Streaming). 이를 통해 컨텐트가 끊김없이 재생될 수 있다.
MPD (Media Presentation Description) 는 DASH 클라이언트로 하여금 세그먼트를 동적으로 획득할 수 있도록 하기 위한 상세 정보를 포함하는 파일로서 XML 형태로 표현될 수 있다. 이 MPD 는 실시예에 따라 전술한 MPD 와 같을 수 있다.
DASH 클라이언트 컨트롤러(DASH Client Controller) 는 네트워크 상황을 반영하여 MPD 및/또는 세그먼트를 요청하는 커맨드를 생성할 수 있다. 또한, 이 컨트롤러는 획득된 정보를 미디어 엔진 등등의 내부 블락에서 사용할 수 있도록 제어할 수 있다.
MPD 파서(Parser) 는 획득한 MPD 를 실시간으로 파싱할 수 있다. 이를 통해, DASH 클라이언트 컨트롤러는 필요한 세그먼트를 획득할 수 있는 커맨드를 생성할 수 있게 될 수 있다.
세그먼트 파서(Parser) 는 획득한 세그먼트를 실시간으로 파싱할 수 있다. 세그먼트에 포함된 정보들에 따라 미디어 엔진 등의 내부 블락들은 특정 동작을 수행할 수 있다.
HTTP 클라이언트는 필요한 MPD 및/또는 세그먼트 등을 HTTP 서버에 요청할 수 있다. 또한 HTTP 클라이언트는 서버로부터 획득한 MPD 및/또는 세그먼트들을 MPD 파서 또는 세그먼트 파서로 전달할 수 있다.
미디어 엔진(Media Engine) 은 세그먼트에 포함된 미디어 데이터를 이용하여 컨텐트를 화면상에 표시할 수 있다. 이 때, MPD 의 정보들이 활용될 수 있다.
도 13 은 본 발명의 일 실시예에 따른 수신기의 블락 다이어그램을 도시한 도면이다.
도시된 실시예에 따른 수신기는 튜너 (Tuner), 피지컬 레이어 컨트롤러 (Physical Layer Controller), 피지컬 프레임 파서 (Physical Frame Parser), 링크 레이어 프레임 프로세서 (Link Layer Frame Processor), IP/UDP 데이터그램 필터 (IP/UDP Datagram Filter), DTV 컨트롤 엔진 (DTV Control Engine), ROUTE 클라이언트 (Route Client), 세그먼트 버퍼 컨트롤 (Segment Buffer Control), MMT 클라이언트 (MMT Client), MPU 리컨트스럭션 (MPU reconstruction), 미디어 프로세서 (Media Processor), 시그널링 파서 (Signaling Parser), DASH 클라이언트 (DASH Client), ISO BMFF 파서 (ISO BMFF Parser), 미디어 디코더 (Media Decoder) 및/또는 HTTP 억세스 클라이언트 (HTTP Access Client) 를 포함할 수 있다. 수신기의 각 세부 블락(block)들은 하드웨어인 프로세서일 수 있다.
Tuner는 지상파 방송 채널을 통하여 방송 신호를 수신 및 처리하고 이를 적절한 형태 (Physical Frame 등)로 변환할 수 있다. Physical Layer Controller는 수신하고자 하는 방송 채널의 RF 정보 등을 이용하여 Tuner, Physical Frame Parser 등의 동작을 제어할 수 있다. Physical Frame Parser는 수신된 Physical Frame을 파싱하고 이와 관련된 프로세싱을 통하여 Link Layer Frame 등을 획득할 수 있다.
Link Layer Frame Processor는 Link Layer Frame으로 부터 Link Layer signaling 등을 획득하거나 IP/UDP 데이터그램 획득하고 관련된 연산을 수행할 수 있다. IP/UDP Datagram Filter는 수신된 IP/UDP 데이터 그램들로부터 특정 IP/UDP 데이터 그램을 필터링할 수 있다. DTV Control Engine은 각 구성 간의 인터페이스를 담당하며 파라미터 등의 전달을 통해 각 구성의 동작을 제어할 수 있다.
Route Client는 실시간 오브젝트 전송을 지원하는 ROUTE (Real-Time Object Delivery over Unidirectional Transport) 패킷을 처리하고 여러 패킷들을 수집 및 처리하여 하나 이상의 ISOBMFF (ISO Base Media File Format) 오브젝트를 생성할 수 있다. Segment Buffer Control는 Route Client와 Dash Client 간의 세그먼트 (segment) 전송 관련한 버퍼를 제어할 수 있다.
MMT Client는 실시간 오브젝트 전송을 지원하는 MMT (MPEG Media Transport) 전송 프로토콜 패킷을 처리하고 여러 패킷을 수집 및 처리할 수 있다. MPU reconstruction는 MMTP 패킷으로부터 MPU (Media Processing Unit)을 재구성할 수 있다. Media Processor는 재구성된 MPU를 수집하고 처리할 수 있다.
Signaling Parser는 DTV 방송 서비스 관련 시그널링 (Link Layer/ Service Layer Signaling) 획득 및 파싱하고 이를 기반으로 채널 맵 등을 생성 및/또는 관리할 수 있다. 이 구성은 로우 레벨 시그널링, 서비스 레벨 시그널링을 처리할 수 있다.
DASH Client는 실시간 스트리밍 혹은 적응적 스트리밍 관련 연산 및 획득된 DASH Segment 등을 처리할 수 있다. ISO BMFF Parser는 ISO BMFF 오브젝트로부터 오디오/비디오의 데이터 및 관련 파라미터 등을 추출할 수 있다. Media Decoder는 수신된 audio 및 video data를 decoding 및/또는 presentation 처리할 수 있다. HTTP Access Client는 HTTP 서버로부터 특정 정보를 요청하고 요청에 대한 응답을 처리할 수 있다.
도 14 는 본 발명의 일 실시예에 따른 미디어 파일의 구조를 도시한 도면이다.
오디오 또는 비디오 등의 미디어 데이터를 저장하고 전송하기 위하여, 정형화된 미디어 파일 포맷이 정의될 수 있다. 실시예에 따라 본 발명의 미디어 파일은 ISO BMFF (ISO base media file format) 를 기반으로한 파일 포맷을 가질 수 있다.
본 발명에 따른 미디어 파일은 적어도 하나 이상의 박스를 포함할 수 있다. 여기서 박스(box)는 미디어 데이터 또는 미디어 데이터에 관련된 메타데이터 등을 포함하는 데이터 블락 내지 오브젝트일 수 있다. 박스들은 서로 계층적 구조를 이룰 수 있으며, 이에 따라 데이터들이 분류되어 미디어 파일이 대용량 미디어 데이터의 저장 및/또는 전송에 적합한 형태를 띄게 될 수 있다. 또한 미디어 파일은, 사용자가 미디어 컨텐츠의 특정지점으로 이동하는 등, 미디어 정보에 접근하는데 있어 용이한 구조를 가질 수 있다.
본 발명에 따른 미디어 파일은 ftyp 박스, moov 박스 및/또는 mdat 박스를 포함할 수 있다.
ftyp 박스(파일 타입 박스)는 해당 미디어 파일에 대한 파일 타입 또는 호환성 관련 정보를 제공할 수 있다. ftyp 박스는 해당 미디어 파일의 미디어 데이터에 대한 구성 버전 정보를 포함할 수 있다. 복호기는 ftyp 박스를 참조하여 해당 미디어 파일을 구분할 수 있다.
moov 박스(무비 박스)는 해당 미디어 파일의 미디어 데이터에 대한 메타 데이터를 포함하는 박스일 수 있다. moov 박스는 모든 메타 데이터들을 위한 컨테이너 역할을 할 수 있다. moov 박스는 메타 데이터 관련 박스들 중 최상위 계층의 박스일 수 있다. 실시예에 따라 moov 박스는 미디어 파일 내에 하나만 존재할 수 있다.
mdat 박스(미디어 데이터 박스) 는 해당 미디어 파일의 실제 미디어 데이터들을 담는 박스일 수 있다. 미디어 데이터들은 오디오 샘플 및/또는 비디오 샘플들을 포함할 수 있는데, mdat 박스는 이러한 미디어 샘플들을 담는 컨테이너 역할을 할 수 있다.
실시예에 따라 전술한 moov 박스는 mvhd 박스, trak 박스 및/또는 mvex 박스 등을 하위 박스로서 더 포함할 수 있다.
mvhd 박스(무비 헤더 박스)는 해당 미디어 파일에 포함되는 미디어 데이터의 미디어 프리젠테이션 관련 정보를 포함할 수 있다. 즉, mvhd 박스는 해당 미디어 프리젠테이션의 미디어 생성시간, 변경시간, 시간규격, 기간 등의 정보를 포함할 수 있다.
trak 박스(트랙 박스)는 해당 미디어 데이터의 트랙에 관련된 정보를 제공할 수 있다. trak 박스는 오디오 트랙 또는 비디오 트랙에 대한 스트림 관련 정보, 프리젠테이션 관련 정보, 액세스 관련 정보 등의 정보를 포함할 수 있다. trak 박스는 트랙의 개수에 따라 복수개 존재할 수 있다.
trak 박스는 실시예에 따라 tkhd 박스(트랙 헤더 박스)를 하위 박스로서 더 포함할 수 있다. tkhd 박스는 trak 박스가 나타내는 해당 트랙에 대한 정보를 포함할 수 있다. tkhd 박스는 해당 트랙의 생성시간, 변경시간, 트랙 식별자 등의 정보를 포함할 수 있다.
mvex 박스(무비 익스텐드 박스)는 해당 미디어 파일에 후술할 moof 박스가 있을 수 있음을 지시할 수 있다. 특정 트랙의 모든 미디어 샘플들을 알기 위해서, moof 박스들이 스캔되어야할 수 있다.
본 발명에 따른 미디어 파일은, 실시예에 따라, 복수개의 프래그먼트로 나뉘어질 수 있다(t14010). 이를 통해 미디어 파일이 분할되어 저장되거나 전송될 수 있다. 미디어 파일의 미디어 데이터들(mdat 박스)은 복수개의 프래그먼트로 나뉘어지고, 각각의 프래그먼트는 moof 박스와 나뉘어진 mdat 박스를 포함할 수 있다. 실시예에 따라 프래그먼트들을 활용하기 위해서는 ftyp 박스 및/또는 moov 박스의 정보가 필요할 수 있다.
moof 박스(무비 프래그먼트 박스)는 해당 프래그먼트의 미디어 데이터에 대한 메타 데이터를 제공할 수 있다. moof 박스는 해당 프래그먼트의 메타데이터 관련 박스들 중 최상위 계층의 박스일 수 있다.
mdat 박스(미디어 데이터 박스)는 전술한 바와 같이 실제 미디어 데이터를 포함할 수 있다. 이 mdat 박스는 각각의 해당 프래그먼트에 해당하는 미디어 데이터들의 미디어 샘플들을 포함할 수 있다.
실시예에 따라 전술한 moof 박스는 mfhd 박스 및/또는 traf 박스 등을 하위 박스로서 더 포함할 수 있다.
mfhd 박스(무비 프래그먼트 헤더 박스)는 분할된 복수개의 프래그먼트들 간의 연관성과 관련한 정보들을 포함할 수 있다. mfhd 박스는 시퀀스 넘버(sequence number) 를 포함하여, 해당 프래그먼트의 미디어 데이터가 분할된 몇 번째 데이터인지를 나타낼 수 있다. 또한, mfhd 박스를 이용하여 분할된 데이터 중 누락된 것은 없는지 여부가 확인될 수 있다.
traf 박스(트랙 프래그먼트 박스)는 해당 트랙 프래그먼트에 대한 정보를 포함할 수 있다. traf 박스는 해당 프래그먼트에 포함되는 분할된 트랙 프래그먼트에 대한 메타데이터를 제공할 수 있다. traf 박스는 해당 트랙 프래그먼트 내의 미디어 샘플들이 복호화/재생될 수 있도록 메타데이터를 제공할 수 있다. traf 박스는 트랙 프래그먼트의 개수에 따라 복수개 존재할 수 있다.
실시예에 따라 전술한 traf 박스는 tfhd 박스 및/또는 trun 박스 등을 하위 박스로서 더 포함할 수 있다.
tfhd 박스(트랙 프래그먼트 헤더 박스)는 해당 트랙 프래그먼트의 헤더 정보를 포함할 수 있다. tfhd 박스는 전술한 traf 박스가 나타내는 트랙 프래그먼트의 미디어 샘플들에 대하여, 기본적인 샘플크기, 기간, 오프셋, 식별자 등의 정보를 제공할 수 있다.
trun 박스(트랙 프래그먼트 런 박스)는 해당 트랙 프래그먼트 관련 정보를 포함할 수 있다. trun 박스는 미디어 샘플별 기간, 크기, 재생시점 등과 같은 정보를 포함할 수 있다.
전술한 미디어 파일 내지 미디어 파일의 프래그먼트들은 세그먼트들로 처리되어 전송될 수 있다. 세그먼트에는 초기화 세그먼트(initialization segment) 및/또는 미디어 세그먼트(media segment) 가 있을 수 있다.
도시된 실시예(t14020)의 파일은, 미디어 데이터는 제외하고 미디어 디코더의 초기화와 관련된 정보 등을 포함하는 파일일 수 있다. 이 파일은 예를 들어 전술한 초기화 세그먼트에 해당할 수 있다. 초기화 세그먼트는 전술한 ftyp 박스 및/또는 moov 박스를 포함할 수 있다.
도시된 실시예(t14030)의 파일은, 전술한 프래그먼트를 포함하는 파일일 수 있다. 이 파일은 예를 들어 전술한 미디어 세그먼트에 해당할 수 있다. 미디어 세그먼트는 전술한 moof 박스 및/또는 mdat 박스를 포함할 수 있다. 또한, 미디어 세그먼트는 styp 박스 및/또는 sidx 박스를 더 포함할 수 있다.
styp 박스(세그먼트 타입 박스) 는 분할된 프래그먼트의 미디어 데이터를 식별하기 위한 정보를 제공할 수 있다. styp 박스는 분할된 프래그먼트에 대해, 전술한 ftyp 박스와 같은 역할을 수행할 수 있다. 실시예에 따라 styp 박스는 ftyp 박스와 동일한 포맷을 가질 수 있다.
sidx 박스(세그먼트 인덱스 박스) 는 분할된 프래그먼트에 대한 인덱스를 나타내는 정보를 제공할 수 있다. 이를 통해 해당 분할된 프래그먼트가 몇번째 프래그먼트인지가 지시될 수 있다.
실시예에 따라(t14040) ssix 박스가 더 포함될 수 있는데, ssix 박스(서브 세그먼트 인덱스 박스)는 세그먼트가 서브 세그먼트로 더 나뉘어지는 경우에 있어, 그 서브 세그먼트의 인덱스를 나타내는 정보를 제공할 수 있다.
미디어 파일 내의 박스들은, 도시된 실시예(t14050)와 같은 박스 내지 풀 박스(FullBox) 형태를 기반으로, 더 확장된 정보들을 포함할 수 있다. 이 실시예에서 size 필드, largesize 필드는 해당 박스의 길이를 바이트 단위 등으로 나타낼 수 있다. version 필드는 해당 박스 포맷의 버전을 나타낼 수 있다. type 필드는 해당 박스의 타입 내지 식별자를 나타낼 수 있다. flags 필드는 해당 박스와 관련된 플래그 등을 나타낼 수 있다.
도 15 는 본 발명의 일 실시예에 따른 SLT 를 통한 부트스트래핑 과정을 도시한 도면이다.
전술한 바와 같이 SLT 의 부트스트랩 정보를 통하여 SLS 부트스트래핑이 수행될 수 있다. 전술한 것과 같이 SLT 는 IP/UDP 로 처리되어 전송될 수도 있고, 실시예에 따라 IP/UDP 처리되지 않고 전송될 수도 있다. 일반적으로 SLT 등의 LLS (Low Level Signaling) 은 해당 전송에서 가장 강건한(robust) 방법에 의해 전달될 수 있다.
SLS 가 ROUTE 프로토콜에 의해 전송되는 경우, 수신기는 SLT 의 부트스트랩 정보를 통하여 해당 SLS 에 접근할 수 있다. ROUTE SLS 의 정보를 이용하여 해당 서비스의 서비스 컴포넌트들이 획득될 수 있다. 여기서 SLS, 서비스 컴포넌트들은 ROUTE, UDP, IP 프로토콜에 의해 전송될 수 있다.
SLS 가 MMT 프로토콜에 의해 전송되는 경우, 수신기는 SLT 의 부트스트랩 정보를 통하여 해당 SLS 에 접근할 수 있다. MMTP SLS 의 정보를 이용하여 해당 서비스의 서비스 컴포넌트들이 획득될 수 있다. MMTP SLS 에는 USBD 및/또는 MMTP 메시지가 포함될 수 있다. 전술한 바와 같이 USBD 는 MMTP 메시지를 레퍼런싱할 수 있고, MMTP 메시지 중 MPT 메시지는 MMT 프로토콜에 의해 전달되는 스트리밍 컴포넌트들을 획득하기 위한 정보들을 제공할 수 있다. MMT 의 USBD 는 ROUTE 프로토콜로 전달되는 해당 서비스의 NRT 컴포넌트들을 획득하기 위한 S-TSID 를 더 레퍼런싱할 수 있다. 전술한 MPT 메시지 외에도, 다른 정보들을 제공하기 위한 다른 MMTP 메시지들이 정의될 수 있다. 여기서 SLS, 스트리밍 컴포넌트들은 MMT, UDP, IP 프로토콜에 의해 전송될 수 있다. 여기서 NRT 컴포넌트들은 ROUTE, UDP, IP 프로토콜에 의해 전송될 수 있다. 자세한 부트스트래핑 과정은 전술한 바와 같다.
도 16 은 본 발명의 일 실시예에 따른 MMT 프로토콜 기반의 시그널링 흐름을 도시한 도면이다.
먼저, SLT 를 획득하고 이를 이용하여 SLS 를 획득하는 과정은 동일할 수 있다. MMT 기반의 시그널링의 경우, SLS 는 USBD 및/또는 MMTP 메시지들을 포함할 수 있다. USBD 로부터 해당 서비스와 연관된 MMT 패키지(Package)에 대한 정보가 획득될 수 있다. 이를 이용하여 서비스 시그널링 채널 등으로부터 MPT (MP Table) 메시지가 획득될 수 있다. MPT 메시지를 통하여 해당 서비스의 서비스 컴포넌트들이 획득될 수 있다. 도시된 실시예에서, 스케일러블 코딩 컨텐트의 베이스 레이어에 대한 에셋(Asset) 및/또는 인핸스먼트 레이어에 대한 에셋에 대한 정보가 획득될 수 있다. 또한 각 에셋을 획득할 수 있는 경로(전송 세션 등…) 이 획득될 수 있다. 여기서 에셋은 서비스의 서비스 컴포넌트에 해당할 수 있다. 해당 경로를 통하여 MPU 들을 획득하고 이를 디코딩하여 재생할 수 있다. 자세한 부트스트래핑 과정은 전술한 바와 같다.
실시예에 따라, MPT 메시지 외의 다른 MMTP 메시지들이 정의될 수 있다. 이들 메시지를 통해 해당 서비스에 대한 부가적인 정보들이 전달될 수 있다. 예를 들어 스케일러블 코딩 관련 정보, 3D 관련 정보, HDR 관련 정보, 컬러 개밋 관련 정보, 서비스 컴포넌트에 대한 부가 정보 등등이 이들 메시지를 통해 전달될 수 있다. 실시예에 따라, 브로드밴드를 통해 전달되는 서비스 컴포넌트들을 위한 MPD, 또는 앱 시그널링을 위한 테이블, 이벤트 정보 역시 이 메시지를 통해 전달될 수 있다.
도 17 은 본 발명의 일 실시예에 따른 캐패빌리티 디스크립터를 도시한 도면이다.
본 발명은 방송 서비스 내지는 서비스에 포함되는 서비스 컴포넌트들의 캐패빌리티 정보를 시그널링하는 방안을 제안한다. 서비스/서비스 컴포넌트에 대한 캐패빌리티 또는 캐패빌리티 그룹에 대해 시그널링이 수행될 수 있으며, 타겟 디바이스(target device) 에 따라 캐패빌리티 정보가 시그널링될 수도 있다.
전술한 SLT 에는 캐패빌리티 정보가 포함될 수 있다. SLT 가 기술하는 서비스 전체에 대한 캐패빌리티 정보일 수도 있고, SLT 가 기술하는 각각의 서비스에 대한 서비스 레벨의 캐패빌리티 정보일 수도 있다. 전술한 @sltCapabilities 속성 또는 @svcCapabilities 속성이 여기에 해당할 수 있다. SLT 가 바이너리 포맷을 가지는 경우, 캐패빌리티 정보는 SLT 레벨의 디스크립터 또는 SLS 레벨의 디스크립터로서 SLT 에 포함될 수 있다.
도시된 캐패빌리티 디스크립터들은, 전술한 캐패빌리티 정보를 디스크립터 형태로 나타낸 것이다. 그러나 실시예에 따라 캐패빌리티 정보는 XML 등 다른 포맷으로 표현될 수 있다. 또한 실시예에 따라 도시된 캐패빌리티 디스크립터 내의 정보와 같은 정보들이, 전술한 SLT 의 @sltCapabilities 속성 또는 @svcCapabilities 속성에 포함될 수도 있다. 이 경우, 디스크립터 태그, 디스크립터 길이 정보 등은 생략될 수 있다. 이하에서는 디스크립터를 기준으로 이 캐패빌리티 정보를 설명한다.
도시된 실시예의 캐패빌리티 디스크립터는 descriptor_tag 필드, descriptor_length 필드 및/또는 num_capability_codes 필드를 포함할 수 있다. descriptor_tag 필드, descriptor_length 필드는 각각 해당 디스크립터가 캐패빌리티 디스크립터 임을 식별하는 정보, 해당 디스크립터의 길이 정보를 제공할 수 있다.
num_capability_codes 필드는 해당 디스크립터가 포함하는 캐패빌리티 정보의 개수를 나타낼 수 있다. 실시예에 따라 이 필드는 해당 디스크립터가 포함하는 캐패빌리티 코드의 개수를 나타낼 수 있다. num_capability_codes 필드의 값에 따라 각각의 캐패빌리티 정보에 대한 세부 필드들이 더 포함될 수 있다. 세부 필드들에는 essential_indicator 필드, capability_category 필드 및/또는 capability_code 필드가 있을 수 있다. 실시예에 따라 essential_indicator 필드는 생략될 수 있다.
essential_indicator 필드는 뒤따르는 캐패빌리티 코드가 해당 서비스 내지 서비스 컴포넌트를 재생하는데 있어서 반드시 지원되어야하는 캐패빌리티인지 여부를 지시할 수 있다. 이 필드의 값이 1 인 경우, 해당 서비스 또는 서비스 컴포넌트를 재생하는데 있어서, 뒤따르는 캐패빌리티가 반드시 지원되어야 함을 알 수 있다.
capability_category 필드는 뒤따르는 캐패빌리티 정보의 카테고리를 나타낼 수 있다. 실시예에 따라 본 필드는 뒤따르는 캐패빌리티 정보가 적용되는 대상을 나타낼 수 있다. 캐패빌리티 카테고리 정보는 캐패빌리티들의 카테고리를 분류하기 위함일 수 있다. 실시예에 따라 캐패빌리티 카테고리 정보는 해당 서비스 또는 서비스 컴포넌트에 대해 동일하게 적용될 수 있는 캐패빌리티들을 그룹핑하기 위함일 수 있다. 이를 통하여 서비스 내 컴포넌트에 동일하게 적용되는 캐패빌리티 혹은 컴포넌트 별로 적용되는 캐패빌리티 정보 등이 시그널링될 수 있다.
예를 들어 본 필드 값이 0x02 인 경우, 해당 캐패빌리티는 비디오 컴포넌트에 관련한 캐패빌리티일 수 있다. 즉 뒤 따르는 캐패빌리티 코드가 비디오 관련 캐패빌리티에 대한 캐패빌리티 코드임을 알 수 있다. 예를 들어 비디오 코덱, 레졸루션, 비디오 프로비젼 메쏘드(provision method), 전송 프로토콜, FEC 알고리즘, 타겟 디바이스 등에 관련한 캐패빌리티 코드가 뒤따를 수 있다.
본 필드 값이 0x03 인 경우, 해당 캐패빌리티는 오디오 컴포넌트에 관련한 캐패빌리티일 수 있다. 즉 뒤 따르는 캐패빌리티 코드가 오디오 관련 캐패빌리티에 대한 캐패빌리티 코드임을 알 수 있다. 예를 들어 오디오 코덱, 오디오 채널, 전송 프로토콜, FEC 알고리즘, 타겟 디바이스 등에 관련한 캐패빌리티 코드가 뒤따를 수 있다.
본 필드 값이 0x04 인 경우, 해당 캐패빌리티는 클로즈드 캡션(closed caption) 에 관한 캐패빌리티일 수 있다. 예를 들어 클로즈드 캡션 타입, 전송 프로토콜, FEC 알고리즘, 타겟 디바이스 등에 관련한 캐패빌리티 코드가 뒤따를 수 있다.
본 필드 값이 0x05 인 경우, 해당 캐패빌리티는 어플리케이션에 관련한 캐패빌리티일 수 있다. 예를 들어 어플리케이션 타입, 전송 프로토콜, FEC 알고리즘, 타겟 디바이스 등에 관련한 캐패빌리티 코드가 뒤따를 수 있다.
본 필드 값이 0x06-0x08 인 경우, 해당 캐패빌리티는 각각 전송 프로토콜, FEC 알고리즘, 타겟 디바이스에 관한 캐패빌리티일 수 있다. 즉, 비디오/오디오/클로즈드캡션/어플리케이션에 관련한 캐패빌리티가 아닐 수 있다. 이 경우, 뒤따르는 캐패빌리티 코드에 의해 지시되는 전송 프로토콜, FEC 알고리즘, 타겟 디바이스에 대한 사항은, 해당 서비스 내의 모든 컴포넌트(비디오/ 오디오/ 클로즈드캡션/ 어플리케이션)에 동일하게 적용될 수 있다.
capability_code 필드는 해당 서비스 또는 서비스 컴포넌트에 대한 캐패빌리티 정보를 나타내는 캐패빌리티 코드를 지시할 수 있다. 여기서 캐패빌리티 코드는 각각의 캐패빌리티에 대해 지정된 코드 값일 수 있다. 이에 대해서는 후술한다.
예를 들어 한 방송 서비스가, HEVC 를 기반으로하는 UHD 비디오, MPEG-H 를 기반으로 하는 7.1 채널 오디오, SMPTE 타임드 텍스트(Timed Text) 를 기반으로 하는 클로즈드 캡션을 제공하는 경우, 해당 디스크립터는 이를 나타내는 캐패빌리티 코드들을 가질 수 있다. 이 경우, num_capability_code 는 0x05 의 값을 가질 수 있다. 5 개의 capability_code 는 각각 0x13(HEVC), 0x22(ultra high definition video), 0x40(MPEG-H audio), 0x52(7.1 channel) 및/또는 0x60(SMPTE timed text) 의 값을 가질 수 있다. 여기서 essential_indicator 필드는 생략될 수 있다.
도 18 은 본 발명의 일 실시예에 따른 캐패빌리티 코드를 도시한 도면이다.
캐패빌리티 코드는 전술한 바와 같이 해당 서비스 또는 서비스 컴포넌트에 대한 캐패빌리티를 나타내는 코드일 수 있다. 도시된 캐패빌리티 코드는 전술한 capability_code 필드에 사용될 수 있는 값들일 수 있다. 도시된 캐패빌리티 코드의 각 분류들(비디오, 오디오 등…) 은 전술한 capability_category 필드에 사용될 수 있는 값들일 수 있다.
실시예에 따라 도시된 캐패빌리티 코드의 앞 부분 디짓들(예를 들어 0x01, 0x02, 0x03…)을 캐패빌리티 카테고리를 식별하는데 사용할 수도 있다. 이 경우 해당 캐패빌리티 코드의 나머지 디짓은 해당 카테고리 내에서 해당 캐패빌리티를 식별하는 데 사용될 수 있다. 본 발명의 일 실시예에 따른 캐패빌리티 코드는 하이 퀄러티 비디오 인핸스먼트 타입 (High Quality Video Enhancement Type)에 대한 캐패빌리티 코드를 포함할 수 있다. 예를 들어, 캐패빌리티 코드가 0xA0 인 경우 HDR (high dynamic range), 0xA1인 경우 WCG (wide color gamut), 0xA2인 경우 HFR (high frame rate)을 나타낼 수 있다.
도 19 는 본 발명의 다른 실시예에 따른 USBD 의 일부를 도시한 도면이다.
본 발명은 방송 서비스 내지는 서비스에 포함되는 서비스 컴포넌트들의 캐패빌리티 정보를 시그널링하는 방안을 제안한다. 또한 본 발명은 서비스/서비스 컴포넌트에 대한 비디오/오디오/클로즈드캡션 정보를 시그널링하는 방안을 제안한다. 또한 본 발명은 서비스/서비스 컴포넌트에 대한 HEVC 비디오 관련 정보를 시그널링하는 방안을 제안한다. 또한 본 발명은 서비스/서비스 컴포넌트에 대한 SMPTE-TT 또는 CEA-809 기반 클로즈드캡션에 대한 정보를 시그널링하는 방안을 제안한다. 또한 본 발명은 서비스/서비스 컴포넌트에 대한 3D, 스케일러블 컨텐트, 컴포넌트 그룹, 실시간/비실시간 컨텐트 여부, 접근성(accessibility), 디스플레이 영역에 대한 뷰 컨피규레이션, 타겟 스크린에 관한 정보를 시그널링하는 방안을 제안한다. 또한 본 발명은 서비스/서비스 컴포넌트에 대한 HDR(High Dynamic Range), WCG(wide color gamut), HFR(High Frame Rate), 풀 다운 리커버리 컨피규레이션(Pull Down Recovery Configuration) 정보를 시그널링하는 방안을 제안한다. 또한 본 발명은 서비스/서비스 컴포넌트에 대한 3D 오디오, AC-4, MPEG-H 관련 정보를 시그널링하는 방안을 제안한다. 또한 본 발명은 서비스/서비스 컴포넌트에 관련하여, PIP (Picture in Picture) 관련 정보를 시그널링하는 방안을 제안한다. 이와 관련하여 PIP 의 SRD (Spatial Relationship Description) 관련 정보, 디스플레이 프라이어리티(priority) 정보, 서로 다른 컨텐트 소스 간의 SRD 시그널링 정보, 각 view 의 디스플레이 영역에 대한 시그널링 정보, 각 view 의 역할에 관한 시그널링 정보들이 시그널링될 수 있다.
전술한 정보들은 실시예에 따라 SLT 또는 다른 서비스 시그널링 정보에 포함되어 전달될 수 있다. 실시예에 따라 이 정보들은 ROUTE 또는 MMT 에 따른 USBD 에 포함되어 전달될 수도 있다. 또한 실시예에 따라, 이 정보들은 ROUTE SLS 중 하나로서 정의되어 다른 SLS 들과 함께 전달될 수도 있고, MMTP SLS 중 하나로 정의되어 전술한 MMTP 메시지 중 하나에 포함되어 전달될 수도 있다. 실시예에 따라 이 정보들은 MPD 내에 포함되어 전달될 수 있으며, 이 경우, 전술한 에센셜 프로퍼티 (EssentialProperty) 및/또는 서플멘탈 프로퍼티 (SupplementalProperty) 에 포함되어 전달될 수도 있다. 실시예에 따라 이 정보들은 MMTP 메시지 중 전술한 MPT 메시지에 포함되거나, 따로 정의된 MMTP 메시지 중 하나에 포함되어 전달될 수도 있다. 실시예에 따라 이 정보들은 XML 또는 바이너리 형태의 다양한 디스크립터로 정의되어 전달될 수도 있고, 엘레멘트로 구성되어, ROUTE, MMT, 3GPP 등에 따른 시그널링 정보에 포함되어 전달될 수도 있다. 이 정보들에 대해서는 자세히 후술한다.
전술한 ROUTE 또는 MMT 의 USBD 는, 실시예에 따라 ComponentInfo 엘레멘트를 포함할 수 있다. ComponentInfo 엘레멘트에 대해서는 전술한 바와 같다. 실시예에 따라 ComponentInfo 엘레멘트는 도시된 필드들을 더 포함하도록 확장될 수 있다.
도시된 실시예에서, ComponentInfo 엘레멘트는 @componentGroupId, @essentialIndicator, @dependentComponentID, @protocolType, @rt, @targetDevice, @componentCodec, @componentProfile, @componentLang, @width, @height, Accessibility, Capability, Rating, Targeting, ComponentDescription 및/또는 ComponentProperty 를 더 포함할 수 있다. 실시예에 따라 이 추가된 필드들 중 일부만이 ComponentInfo 엘레멘트에 추가될 수도 있다.
@componentGroupId 는 컴포넌트 그룹의 식별자일 수 있다. 여기서 컴포넌트 그룹은 컴포넌트들의 컬렉션일 수 있다. 컴포넌트 그룹에 포함되는 컴포넌트들은 같은 씬(scene) 을 나타내거나, 프리젠테이션을 생성키 위해 조합되는 컴포넌트들일 수 있다. 예를 들어 완성된 오디오를 제공하기 위해 사용되는 뮤직, 다이어로그, 음향이펙트들을 포함하는 서비스 컴포넌트들은 하나의 컴포넌트 그룹으로 묶일 수 있다. 또한 3D 영상의 좌영상, 우영상을 포함하는 서비스 컴포넌트들은 하나의 컴포넌트 그룹으로 묶일 수 있다.
@essentialIndicator 는 해당 컴포넌트가 해당 서비스에 있어 필수적인 컴포넌트인지 여부를 지시할 수 있다. 이 필드가 1 인 경우 해당 컴포넌트는 해당 서비스에 있어 필수적인 컴포넌트일 수 있다. @dependentComponentID 는 종속적인 컴포넌트(들)에 대한 식별자(들)을 지시할 수 있다. 예를 들어 인핸스드 비디오 컴포넌트에 있어 이 필드는 베이스 비디오 컴포넌트(들)의 식별자(들)을 나타낼 수 있다.
@protocolType 은 해당 컴포넌트를 전달하는 전송 프로토콜을 지시할 수 있다. 예를 들어 ROUTE 또는 MMT 프로토콜이 지시될 수 있다. @rt 는 해당 컴포넌트가 실시간 컴포넌트인지 아닌지를 지시할 수 있다.
@targetDevice 는 해당 컴포넌트가 타겟하는 타겟 디바이스를 지시할 수 있다. 예를 들어 이 필드의 값이 0, 1, 2 3 인 경우, 해당 컴포넌트는 각각 프라이머리 디바이스, 컴패니언 디바이스, 프라이머리&컴패니언 디바이스, 프라이머리 스크린의 인셋 을 위한 컴포넌트임이 지시될 수 있다.
@componentCodec 는 해당 컴포넌트를 위한 코덱 정보를 제공할 수 있다. @componentProfile 는 해당 컴포넌트의 프로파일을 지시할 수 있다. @componentLang 는 해당 컴포넌트에서 사용되는 언어를 지시할 수 있다. 이 필드는 특히 오디오, 클로즈드 캡션 컴포넌트에 있어 사용될 수 있다. @width 는 해당 비디오 컴포넌트이 전달하는 비디오 미디어 프리젠테이션의 수평 넓이를 나타낼 수 있다. @height 는 해당 비디오 컴포넌트이 전달하는 비디오 미디어 프리젠테이션의 수직 높이를 나타낼 수 있다.
Accessibility 는 해당 컴포넌트의 접근성(accessibility) 관련 정보를 제공할 수 있다. Capability 는 해당 컴포넌트의 캐패빌리티 관련 정보를 제공할 수 있다. Rating 는 해당 컴포넌트의 레이팅 관련 정보를 제공할 수 있다. Targeting 는 해당 컴포넌트의 타겟팅 또는 개인화(personalization) 관련 정보를 제공할 수 있다. ComponentDescription 는 해당 컴포넌트의 컴포넌트 디스크립션 정보를 제공할 수 있다. 이 정보에는 코덱에 종속적인 인코딩 파라미터(codec dependent encoding parameters) 가 포함될 수 있다. ComponentProperty 는 해당 컴포넌트를 처리하기 위한 컴포넌트 속성들을 제공할 수 있다.
또한 ComponentInfo 엘레멘트 내의 전술한 @componentType 필드는 해당 컴포넌트의 타입을 지시할 수 있는데 0, 1, 2, 3 의 값을 가지는 경우, 해당 컴포넌트는 각각 오디오, 비디오, 캡션, 어플리케이션 컴포넌트임이 지시될 수 있다.
또한 @componentRole 필드는 해당 컴포넌트의 역할(role) 을 지시할 수 있다. 이 역할은 지시된 컴포넌트 타입에 따라 지시될 수 있는데, 오디오 컴포넌트인 경우, 본 필드가 1, 2, 3, 4, 5, 6, 7 의 값을 가지면, 해당 오디오 컴포넌트는 각각 컴플리트 메인(complete main), 뮤직, 이펙트, 다이아로그, 코멘터리, 비쥬얼리 임페어드(visually impaired), 히어링 임페어드(hearing impaired), 보이스 오버(voice over), 섭셋(subset) 의 역할을 할 수 있다. 여기서 비쥬얼리/히어링 임페어드란 각각 해당 오디오 컴포넌트가 시각/청각 장애인을 위한 오디오 컴포넌트임을 의미할 수 있다. 보이스 오버란 해당 오디오 컴포넌트가 비디오 컴포넌트를 디스크라이빙하는 역할을 함을 의미할 수 있다.
비디오 컴포넌트인 경우, 본 필드의 값에 따라 해당 비디오 컴포넌트는 프라이머리 비디오, 대체 카메라 뷰, 수화, 3D 좌영상, 3D 우영상, 3D 비디오 깊이(depth) 정보, 캡션 포함 비디오 등의 역할을 함이 지시될 수 있다. 캡션 컴포넌트인 경우, 본 필드의 값에 따라 해당 캡션 컴포넌트는 메인, 대체, 서플멘터리, 노멀, 이지리더 등의 역할을 함을 의미할 수 있다.
실시예에 따라 전술한 ROUTE 또는 MMT 의 USBD 의 나머지 부분도 변경될 수 있다. 이러한 변경들은 각각의 경우의 수에 따라 서로 조합될 수 있다. 실시예에 따라 USBD 는 @providerid, @serviceCategory, @spIndicator, @serviceStatus, @shortServiceName 및/또는 capabilityCode 를 더 포함할 수 있다.
@providerid 는 해당 서비스의 서비스 프로바이더를 식별할 수 있다. @serviceCategory 는 해당 서비스의 카테고리를 지시할 수 있다. @spIndicator 는 전술한 @protected 속성과 같을 수 있다. @serviceStatus 는 전술한 @servicestatus 속성과 같을 수 있다. @shortServiceName 는 해당 서비스의 쇼트(short) 네임을 지시할 수 있다. capabilityCode 는 해당 서비스의 유의미한 미디어 프리젠테이션을 수신기가 제공하기 위하여 필요한 캐패빌리티 내지 캐패빌리티 그룹을 지시할 수 있다.
실시예에 따라 USBD 는 전술한 Channel 엘레멘트에 @majorChannelNo, @minorChannelNo 및/또는 @serviceLang 을 더 포함할 수 있다.
@majorChannelNo, @minorChannelNo 는 해당 서비스의 메이저/마이너 채널 넘버를 지시할 수 있다. @serviceLang 는 해당 서비스의 주요 사용 언어(primary language) 를 지시할 수 있다.
실시예에 따라 USBD 는 전술한 routeComponent, broadbnadComponet 대신 dashComponent 엘레멘트를 더 포함할 수 있다. dashComponent 엘레멘트는 @fullMPDUri, @sTSIDUri 및/또는 deliveryMethod 엘레멘트를 포함할 수 있다.
@fullMPDUri 는 방송망 또는 브로드밴드를 통해 전달되는 서비스 컴포넌트들을 위한 MPD 에의 레퍼런스 정보를 제공할 수 있다. @sTSIDUri 는 해당 서비스의 서비스 컴포넌트에 대한 전송 세션 관련 정보를 제공할 수 있다. deliveryMethod 는 해당 서비스의 서비스 컴포넌트들의 전송 관련 정보들을 제공할 수 있다. 전술한 바와 같이 방송망/브로드밴드를 통해 전달되는 컴포넌트들 각각에 대한 엘레멘트 및/또는 그에 대한 basePattern 정보가 더 포함될 수 있다.
도 20 은 본 발명의 일 실시예에 따른 MP 테이블의 일부를 도시한 도면이다.
전술한 MPT 메시지는 MP 테이블을 전달할 수 있다. 전술한 바와 같이, 접근성, 3D, 캡션 등등의 정보들은 MMTP 메시지를 통해 전달될 수도 있다. 도시된 바와 같이 MPT 메시지 내에 일부로서 포함되어 전달될 수도 있고, 별개로 정의되는 MMTP 메시지를 통해 MMT 시그널링으로서 전달될 수도 있다. 이 정보들 및 전달 형태에 대해서는 자세히 후술한다.
이 정보들은 MPT 메시지 또는 기타 MMTP 메시지 내에 디스크립터 형태로 전달될 수 있으며, 실시예에 따라 이 디스크립터들은 에셋 디스크립터에 해당할 수도 있다. 또한, 이 디스크립터들은 SDT 또는 EIT 등의 DVB SI 서비스 시그널링에 포함되어 전달되거나, 함께 전달될 수도 있다.
실시예에 따라, MMT 상에서, 서비스 컴포넌트(에셋(asset)에 해당)에 대한 정보는 도시된 바와 같이 시그널링될 수 있다. MMTP 메시지에 후술할 필드들이 더 추가될 수 있다.
service_type 필드는 해당 서비스의 타입을 나타낼 수 있다. 즉, 해당 MP 테이블에 포함된 적어도 하나의 asset을 조합하여 제공할 수 있는 최종 service를 의미할 수 있다. 예를 들어, 해당 필드는 스테레오스코픽 3D 서비스, 멀티뷰 서비스, 파노라마 서비스 등을 나타낼 수 있다.
asset_role_flag 필드는 해당 서비스 컴포넌트(에셋)에 대한 역할(role) 정보가 포함되는지 여부를 지시할 수 있다. asset_target_flag 필드는 해당 서비스 컴포넌트에 대한 타겟 스크린 정보가 포함되는지 여부를 지시할 수 있다. asset_group_flag 필드는 해당 서비스 컴포넌트가 특정 컴포넌트 그룹에 소속되는지 여부를 지시할 수 있다. 특정 컴포넌트 그룹에 포함되는 경우, 본 필드의 값이 1 이될 수 있다. rt_flag 필드는 해당 서비스 컴포넌트가 실시간/비실시간으로 전송되는지 여부를 지시할 수 있다. 본 필드 값이 1 인 경우 해당 서비스 컴포넌트는 실시간으로 전송될 수 있다.
asset_role 필드는 해당 서비스 컴포넌트의 역할(role)을 나타낼 수 있다. 예를 들어 본 필드의 값이 0, 1, 2, 3, 4, 5, 6, 7 인 경우, 해당 서비스 컴포넌트는 프라이머리 비디오, 대체 카메라 뷰, 다른 대체 비디오 컴포넌트, 수화, 팔로우 서브젝트 비디오(Follow subject video), 3D 좌영상, 3D 우영상, 3D 깊이 정보 등의 역할을 함이 지시될 수 있다.
asset_target 필드는 해당 서비스 컴포넌트가 타겟하는 타겟 디바이스를 지시할 수 있다. 전술한 @targetDevice 의 정의와 같을 수 있다. asset_group_id 필드는 해당 서비스 컴포넌트가 포함되는 컴포넌트 그룹의 식별자를 제공할 수 있다. 컴포넌트 그룹에 대해서는 전술한 바와 같다.
도 21 은 본 발명의 일 실시예에 따른 에셋 그룹 디스크립터를 도시한 도면이다.
에셋 그룹 디스크립터는, 서비스가 MMT 프로토콜을 통해 전달되는 경우에 있어서, 컴포넌트 그룹(에셋 그룹)에 대해 기술할 수 있다. 이 디스크립터는 전술한 것과 같은 경로를 통해서 전달될 수 있다.
에셋 그룹 디스크립터는 해당 컴포넌트 그룹을 식별하는 asset_group_id 필드, 해당 컴포넌트 그룹에 포함되는 컴포넌트(에셋)의 개수를 지시하는 num_of_accessiblity 필드 및/또는 각각의 컴포넌트들을 식별하는 asset_id() 필드들을 포함할 수 있다.
도 22 는 본 발명의 일 실시예에 따른 접근성(accessibility) 정보를 도시한 도면이다.
접근성 정보는 해당 서비스 또는 서비스 컴포넌트의 접근성과 관련된 정보를 포함할 수 있다. 접근성 정보는 전술한 실시예에 따른 디스크립터들 중 하나의 형태를 가지거나, 엘레멘트의 형태를 가질 수 있다.
도시된 실시예(t25010)에서 접근성 정보는 디스크립터 형태로 정의될 수 있다. @schemeIdUri 는 해당 디스크립터가 접근성 정보에 관련한 접근성 스킴을 가짐을 식별하기 위한 URI 일 수 있다. 이 경우, @schemeIdUri 는 urn:atsc3.0:accessibility:201x 의 값을 가질 수 있다. @value 는 접근성 스킴에 따라 그 의미가 정의되는 값(value)들을 가질 수 있다. 이 값에 대해서는 후술한다. @id 는 해당 디스크립터의 식별자를 나타낼 수 있다. 동일한 식별자를 가지는 경우, 동일한 스킴 ID, 값(value), 파라미터를 포함할 수 있다.
도시된 실시예(t25020)는 전술한 @value 의 각 파라미터들을 나타낼 수 있다. Visually impaired 는 해당 서비스 컴포넌트가 시각 장애 내지 시력이 약한 시청자를 타겟한 서비스 컴포넌트인지 여부를 나타낼 수 있다. Hearing impaired 는 해당 서비스 컴포넌트가 청각 장애 내지 청력이 약한 시청자를 타겟한 서비스 컴포넌트인지 여부를 나타낼 수 있다. enhanced-audio-intelligibility 는 해당 오디오 서비스 컴포넌트가 명료함(intelligibility) 측면에서 강화된(enhanced) 형태의 오디오 서비스 컴포넌트인지 여부를 지시할 수 있다. 3D supported 는 해당 서비스 컴포넌트가 3D 기능을 지원하는 서비스 컴포넌트인지 여부를 나타낼 수 있다. 실시예에 따라 해당 서비스 컴포넌트가 3D 서비스에 포함되는 서비스 컴포넌트인지 여부를 나타낼 수도 있다. Normal 은 (주로 클로즈드 캡션 컴포넌트에 대해) 해당 서비스 컴포넌트가 일반적인 시청자들을 위한 서비스 컴포넌트인지 여부를 지시할 수 있다. Easy reader 는 (주로 클로즈드 캡션 컴포넌트에 대해) 해당 서비스 컴포넌트가 이지 리더(easy reader) 형태의 서비스 컴포넌트인지 여부를 지시할 수 있다. 이지 리더는 읽기 쉬운 형태의 클로즈드 캡션을 의미할 수 있다.
실시예에 따라 접근성 정보는, 전술한 @value 의 각 파라미터들을 서브 필드로 가지는 접근성 엘레멘트 형태로 정의될 수도 있다.
도시된 실시예(t25030)에서 접근성 정보는 디스크립터 형태로 정의될 수 있다. 이 디스크립터는 전술한 바와 같이 MMT 시그널링 정보에 포함되어 전달될 수 있다. 이 디스크립터는 전술한 MPT 메시지 또는 다른 MMTP 메시지에 포함되어 전달될 수 있다. 이 디스크립터는 에셋 디스크립터의 한 종류일 수 있다.
num_of_accessiblity 필드는 뒤 따르는 접근성 코드(accessiblity_code) 의 개수를 나타낼 수 있다. accessiblity_code 필드는 접근성 관련 정보들을 나타낼 수 있다. 접근성 관련 정보들은 접근성 코드에 의해 표현될 수 있다. 예를 들어 접근성 코드가 0x00, 0x01, 0x02 의 값을 가지는 경우, 이는 각각 비쥬얼리 임페어드, 히어링 임페어드, 3D 서포트 등의 의미를 가질 수 있다. 이들 접근성 정보에 대해서는 전술한 바와 같다. 0x03-0xFF 값은 향후 사용을 위해 남겨둘 수 있다.
도 23 은 본 발명의 일 실시예에 따른, USBD 내의 ComponentInfo 엘레멘트들을 도시한 도면이다.
도시된 실시예(t26010)에서, 3D 비디오를 이루는 각각의 컴포넌트들에 대한 시그널링이 수행되고 있다. 첫번째 컴포넌트는 비디오 컴포넌트로서(0x02, Video), 3D 좌영상으로서의 역할을 수행함이 지시되고(@componentRole = 3D video left view), 0x01 의 컴포넌트 ID 를 가질 수 있다. 두번째 컴포넌트 역시 비디오 컴포넌트로서(0x02, Video), 3D 우영상으로서의 역할을 수행함이 지시되고(@componentRole = 3D video right view), 0x02 의 컴포넌트 ID 를 가질 수 있다.
두 서비스 컴포넌트는 하나의 3D 비디오를 이루는 서비스 컴포넌트로서 서로 연관이 있어, 동일한 컴포넌트 그룹으로 묶일 수 있다. 이 컴포넌트 그룹은 0x01 의 식별자를 가질 수 있고, 이 내용이 각 componentInfo. 엘레멘트에서 시그널링될 수 있다. 두번째 컴포넌트가 첫번째 컴포넌트에 대하여 종속성(dependencyu)가 있는 경우, 두번째 컴포넌트의 @dependentComponentID 는 0x01 의 값을 가져, 첫번째 컴포넌트의 컴포넌트 ID 를 지시할 수 있다.
도시된 실시예(t26020)에서, 특정 비디오 컴포넌트에 대한, 다른 컴포넌트 상의 팔로우 서브젝트 메타데이터(follow-subject metadata)가 시그널링될 수 있다. 첫번째 컴포넌트는 비디오 컴포넌트로서 프라이머리 비디오의 역할을 수행함이 시그널링될 수 있다. 두번째 컴포넌트는 첫번째 컴포넌트에 대한 팔로우 서브젝트 메타데이터의 역할을 수행하는 컴포넌트일 수 있다. 이 역할이 시그널링될 수 있고, @dependentComponentID 는 첫번째 컴포넌트의 컴포넌트 ID 를 지시할 수 있다. 또한 연관된 컴포넌트들로서, 첫번째/두번째 컴포넌트는 동일한 컴포넌트 그룹에 포함될 수 있다(0x01).
도시된 실시예(t26030)에서, 하나의 베이스 비디오 컴포넌트, 두 개의 인핸스드 비디오 컴포넌트들이 시그널링되고 있다. 하나의 인핸스드 비디오가 베이스 비디오에 대하여 종속성을 가지고, 또 다른 인핸스드 비디오가 첫번째 인핸스드 비디오에 대해 종속성을 가지는 경우, 도시된 바와 같이 @dependentComponentID 필드를 이용해 이 관계가 시그널링될 수 있다. 또한 각각의 비디오 컴포넌트들을 동일한 씬을 구성할 수 있는 바, 동일한 컴포넌트 그룹에 포함될 수 있다.
도시된 실시예(t26040)에서, 두 서비스 컴포넌트에 대한 3D 컴포넌트로서의 역할과 스케일러블 코딩 측면에서의 역할이 시그널링되고 있다. 이 컴포넌트들은 동일한 씬을 구성할 수 있는 바, 동일한 컴포넌트 그룹에 포함될 수 있다.
첫번째 서비스 컴포넌트(ID = 0x01)는 베이스 비디오 컴포넌트임과 동시에, 3D 서비스의 우영상으로의 역할을 수행할 수 있다. 첫번째 서비스 컴포넌트에 대하여 두 개의 ComponentInfo 엘레멘트가 기술할 수 있다. 각각의 엘레멘트는 동일한 서비스 컴포넌트 ID 를 가질 수 있다(ID=0x01).
두번째 서비스 컴포넌트(ID = 0x02)는 인핸스드 비디오 컴포넌트임과 동시에, 3D 서비스의 좌영상으로의 역할을 수행할 수 있다. 마찬가지로 두 개의 ComponentInfo 엘레멘트가 두번째 서비스 컴포넌트를 기술할 수 있다. 이 엘레멘트들은 동일한 서비스 컴포넌트 ID 를 가질 수 있다(ID=0x02). 또한 두번째 서비스 컴포넌트는 첫번째 컴포넌트에 대하여 종속성을 가질 수 있다. @dependentComponentID 가 첫번째 서비스 컴포넌트의 ID 를 지시할 수 있다.
도 24 는 본 발명의 일 실시예에 따른 컴포넌트 속성(Component Property) 정보를 도시한 도면이다.
컴포넌트 속성 정보는 해당 서비스 또는 서비스 컴포넌트의 속성과 관련된 정보를 포함할 수 있다. 컴포넌트 속성 정보는 전술한 실시예에 따른 디스크립터들 중 하나의 형태를 가지거나, 엘레멘트의 형태를 가질 수 있다.
컴포넌트 속성 정보는 실시예에 따라 뷰 컨피규레이션 정보로 불릴 수도 있다. 실시예에 따라 컴포넌트 속성 정보는 비디오 컴포넌트에 대한 뷰 컨피규레이션 정보를 의미할 수 있다. 여기서 해당 컴포넌트는 비디오 컴포넌트로서, 멀티뷰의 일부일 수 있다. 비디오 컴포넌트가 비디오 어레이의 일부인 경우, 뷰 컨피규레이션 정보의 @role 속성은 해당 컴포넌트가 <n, m> 어레이의 <x, y> 번째 비디오 컴포넌트임을 지시할 수 있다.
도시된 실시예(t2710)에서 컴포넌트 속성 정보는 디스크립터 형태로 정의될 수 있다. @schemeIdUri 는 해당 디스크립터가 컴포넌트 속성 정보에 관련한 컴포넌트 속성 스킴을 가짐을 식별하기 위한 URI 일 수 있다. 이 경우, @schemeIdUri 는 urn:atsc3.0:view-conf:201x 의 값을 가질 수 있다. @value 는 컴포넌트 속성 스킴에 따라 그 의미가 정의되는 값(value)들을 가질 수 있다. 이 값들은 파라미터라고 불릴 수 있으며, 각각 ',' 에 의해 구분될 수 있다. 이 값에 대해서는 후술한다. @id 는 해당 디스크립터의 식별자를 나타낼 수 있다. 동일한 식별자를 가지는 경우, 동일한 스킴 ID, 값(value), 파라미터를 포함할 수 있다.
도시된 실시예(t27020)는 전술한 @value 의 각 파라미터들을 나타낼 수 있다. View_x 및/또는 View_y 는 화면의 왼쪽 상단(left-top) 를 기준으로 해당 비디오 컴포넌트의 영상의 원점을 지시할 수 있다. 각각의 필드들은 영상 원점의 x 좌표, y 좌표를 지시할 수 있다. View_width 및/또는 View_height 는 해당 비디오 컴포넌트의 영상의 넓이(width) 및/또는 높이(height) 를 나타낼 수 있다. View_total_width 및/또는 View_total_height 는 화면의 왼쪽 상단(left-top) 를 기준으로 비디오 어레이가 디스플레이되는 전체 영역의 넓이(width) 및/또는 높이(height) 를 나타낼 수 있다. View_display_priority 는 해당 비디오 컴포넌트의 영상의 우선순위를 나타낼 수 있다. 우선 순위란 해당 영상이 디스플레이됨에 있어서의 우선 순위일 수 있다. 영상들이 중첩되는 경우에 있어, 우선 순위가 높을 수록 다른 영상들보다 앞에 디스플레이될 수 있다. 즉, 다른 영상들을 겹치는 부분만큼 덮어씌울 수 있다. 본 필드 값이 작을수록 우선 순위는 높은 것으로 간주될 수 있다. 값이 0인 경우 화면상 가장 앞에 디스플레이될 수 있다. Source_id 는 해당 비디오 컴포넌트의 소스에 대한 식별자일 수 있다. 동시에 디스플레이되는 멀티뷰(비디오 어레이)가 여러 개의 비디오 컴포넌트로 나뉘어져 전달되는 경우, 각 비디오 컴포넌트의 소스 ID 는 동일할 수 있다.
실시예에 따라 이 컴포넌트 속성 정보는, 전술한 @value 의 각 파라미터들을 서브 필드로 가지는 컴포넌트 속성 엘레멘트 형태로 정의될 수도 있다.
도시된 실시예(t27030)에서 컴포넌트 속성 정보는 디스크립터 형태로 정의될 수 있다. 이 디스크립터는 전술한 바와 같이 MMT 시그널링 정보에 포함되어 전달될 수 있다. 이 디스크립터는 전술한 MPT 메시지 또는 다른 MMTP 메시지에 포함되어 전달될 수 있다. 이 디스크립터는 에셋 디스크립터의 한 종류일 수 있다.
view_x, view_y, view_width, view_height, total_width, total_height, source_id 및/또는 view_priority 는 전술한 정의와 같을 수 있다. total_width, total_height, view_priority 는 각각 view_total_width, view_total_height, view_display_priority 와 같을 수 있다.
source_id_flag 는 source_id 의 존부를 지시할 수 있다. view_total_info_flag 필드는 동시에 보여지는 멀티뷰가 디스플레이되는 영역에 대한 정보가 포함되는지 지시할 수 있다. 이 필드에 따라 total_width, total_height 가 존재할 수 있다. view_priority_flag 필드는 해당 비디오 컴포넌트의 영상의 우선순위 정보가 포함되는지 여부를 지시할 수 있다. 이 필드에 따라 view_priority 가 존재할 수 있다.
도 25 는 본 발명의 일 실시예에 따른 컴포넌트 속성(Component Property) 정보를 도시한 도면이다.
컴포넌트 속성 정보는 해당 서비스 또는 서비스 컴포넌트의 속성과 관련된 정보를 포함할 수 있다. 컴포넌트 속성 정보는 전술한 실시예에 따른 디스크립터들 중 하나의 형태를 가지거나, 엘레멘트의 형태를 가질 수 있다.
컴포넌트 속성 정보는 실시예에 따라 뷰 포지션 컨피규레이션 (view position configuration) 정보로 불릴 수도 있다. 실시예에 따라 컴포넌트 속성 정보는 비디오 컴포넌트에 대한 뷰 포지션 컨피규레이션 정보를 의미할 수 있다. 여기서 해당 컴포넌트는 비디오 컴포넌트로서, 스테레오스코픽 3D 서비스의 일부일 수 있다.
도시된 실시예(d25010)에서 컴포넌트 속성 정보는 디스크립터 형태로 정의될 수 있다. @schemeIdUri 는 해당 디스크립터가 컴포넌트 속성 정보에 관련한 컴포넌트 속성 스킴을 가짐을 식별하기 위한 URI 일 수 있다. 이 경우, @schemeIdUri 는 urn:atsc3.0:view-position-conf:201x 의 값을 가질 수 있다. @value 는 컴포넌트 속성 스킴에 따라 그 의미가 정의되는 값(value)들을 가질 수 있다. 이 값들은 파라미터라고 불릴 수 있으며, 각각 ',' 에 의해 구분될 수 있다. 이 값에 대해서는 후술한다. @id 는 해당 디스크립터의 식별자를 나타낼 수 있다. 동일한 식별자를 가지는 경우, 동일한 스킴 ID, 값(value), 파라미터를 포함할 수 있다.
도시된 실시예(d25020)는 전술한 @value 의 각 파라미터들을 나타낼 수 있다. right_view_flag 필드는 해당 video component가 right view인지 혹은 left view인지를 알려줄 수 있다. Video component가 left view인 경우는 값이 0, right view인 경우는 1의 값을 갖는다. 스테레오스코픽 (Stereoscopic) 3D 서비스를 구성하는 각각의 좌측/우측 시점 비디오 컴포넌트 (left/right video component)가 나뉘어서 전달 되는 경우, 각 비디오 컴포넌트에 대한 뷰 포지션 컨피규레이션 (view position configuration) 정보는 위의 컴포넌트 속성 정보 (component property element) 를 이용하여 d25040 같이 시그널링 될 수 있다. 각 좌측/우측 시점 비디오 컴포넌트 (left/right video component)는 하나의 씬 (scene) 을 구성하므로 동일한 컴포넌트 그룹 아이디 (componentGroupId) 값을 가질 수 있다.
컴포넌트 속성 정보는 실시예에 따라 뷰 포지션 컨피규레이션 (view position2 configuration) 정보로 불릴 수도 있다. 실시예에 따라 컴포넌트 속성 정보는 비디오 컴포넌트에 대한 뷰 포지션 컨피규레이션 정보를 의미할 수 있다. 여기서 해당 컴포넌트는 비디오 컴포넌트로서, 멀티뷰 서비스의 일부일 수 있다.
도시된 실시예(d25010)에서 컴포넌트 속성 정보는 디스크립터 형태로 정의될 수 있다. @schemeIdUri 는 해당 디스크립터가 컴포넌트 속성 정보에 관련한 컴포넌트 속성 스킴을 가짐을 식별하기 위한 URI 일 수 있다. 이 경우, @schemeIdUri 는 urn:atsc3.0:view-position2-conf:201x 의 값을 가질 수 있다. @value 는 컴포넌트 속성 스킴에 따라 그 의미가 정의되는 값(value)들을 가질 수 있다. 이 값들은 파라미터라고 불릴 수 있으며, 각각 ',' 에 의해 구분될 수 있다. 이 값에 대해서는 후술한다. @id 는 해당 디스크립터의 식별자를 나타낼 수 있다. 동일한 식별자를 가지는 경우, 동일한 스킴 ID, 값(value), 파라미터를 포함할 수 있다.
도시된 실시예(d25030)는 전술한 @value 의 각 파라미터들을 나타낼 수 있다. 시점 위치 정보 (view_position 필드)는 멀티뷰 (Multiview) 서비스에서 해당 비디오 컴포넌트 (video component)의 뷰 포지션 (view position) 정보를 의미할 수 있다. 시점 위치 정보 (view_position 필드)는 멀티뷰 중 가장 좌측에 위치한 첫번째 시점에 대해 0으로 설정될 수 있다. 또한, 시점 위치 정보는 첫번째 시점으로부터 다음 시점으로 좌측에서 우측으로 이동될 때마다 1씩 증가하는 값으로 설정될 수 있다. 여기서 멀티뷰 (Multiview)는 3D 멀티뷰 (Multiview) 나 파노라마 (panorama)를 위한 멀티뷰 (Multiview) 일 수 있다. 여기서, 3D 멀티뷰인 경우, 전술한 뷰 포지션 (view position) 정보는 각 시점 (view)에 대한 좌측 시점 (left view) 또는 우측 시점 (right view)의 의미를 포함할 수 있다. 즉, 숫자로 표현되는 뷰 포지션 (view position) 정보로부터, 해당 컴포넌트에 포함된 시점 (view)이 3D 서비스를 제공하기 위한 좌측 시점 (left view) 또는 우측 시점 (right view)인지를 확인할 수 있다. 멀티뷰 서비스를 구성하는 각각의 시점 (view)에 해당하는 비디오 컴포넌트 가 나뉘어서 전달 되는 경우, 각 비디오 컴포넌트에 대한 뷰 포지션 컨피규레이션 (view position2 configuration) 정보는 위의 컴포넌트 속성 정보 (component property element) 를 이용하여 d25040 같이 시그널링 될 수 있다. 멀티뷰 중 하나의 씬 (scene) 을 구성하는 비디오 컴포넌트들은 동일한 컴포넌트 그룹 아이디 (componentGroupId) 값을 가질 수 있다. 또한, 그 외의 씬 (scene) 을 구성하는 비디오 컴포넌트들은 다른 컴포넌트 그룹 아이디 (componentGroupID)값을 가질 수 있다.
도 26 은 본 발명의 일 실시예에 따른 컴포넌트 속성(Component Property) 정보의 활용을 도시한 도면이다.
도시된 실시예(t28010)에서, 하나의 화면이 두 개의 비디오 컴포넌트로 나뉘어져서 전달될 수 있다. 이 경우, 각 비디오 컴포넌트에 대한 뷰 컨피규레이션 정보는, 전술한 바와 같이 componentProperty 엘레멘트를 이용하여 시그널링될 수 있다. 이 들은 하나의 씬을 구성하므로 동일한 componentGroupId 값을 가질 수 있다. 각 컴포넌트에 대한 ComponentInfo 엘레멘트의 componentProperty 엘레멘트는 전술한 뷰 컨피규레이션 정보를 가질 수 있다.
양자 모두 urn:atsc3.0:view-conf:201x 의 스킴 ID 를 가지고, @value 는 각각 “1920, 0, 1920, 2160, 3840, 2160”, "0, 0, 1920, 2160, 3840, 2160" 를 가질 수 있다. 이 @value 의 파라미터들은 순서대로, 전술한 파라미터들의 정의에 따른 의미를 가질 수 있다.
도시된 실시예(t28020)에서, 하나의 메인 비디오를 제공하는 비디오 컴포넌트와 더불어 별도의 수화(sign language)를 포함하는 비디오 컴포넌트가 전달될 수 있다. 이 경우, 수화 비디오 컴포넌트는, 해당 수화 영상이 메인 비디오가 디스플레이되는 영역의 어느 위치에 디스플레이되는지에 대한 정보를 제공할 수 있다. 이 정보는 전술한 뷰 컨피규레이션 정보의 형태로 시그널링될 수 있다.
마찬가지로, PIP (Picture in Picture) 의 경우에도 수화의 경우와 마찬가지 방법으로 뷰 컨피규레이션 정보가 제공될 수 있다. 여기서 수화 영상 또는 PIP 영상의 경우 메인 비디오보다 앞에 디스플레이되어야 하므로, 메인 비디오보다 더 높은 우선순위를 가질 수 있다. 이 컴포넌트들은 같은 컴포넌트 그룹에 포함될 수 있으며, 수화 컴포넌트 또는 PIP 컴포넌트는 @targetDevice 속성이 “프라이머리 스크린의 인셋” 을 지시할 수 있다.
수화 컴포넌트 또는 PIP 컴포넌트의 뷰 컨피규레이션 정보는 urn:atsc3.0:view-conf:201x 의 스킴 ID 를 가지고, @value 는 “1200, 50, 1024, 768, 3840, 2160, 0" 를 가질 수 있다. 이 @value 의 파라미터들은 순서대로, 전술한 파라미터들의 정의에 따른 의미를 가질 수 있다.
전술한 캐패빌리티 정보 역시 시그널링될 수 있다. 캐패빌리티 정보는 전술한 실시예에 따른 디스크립터들 중 하나의 형태를 가지거나, 엘레멘트의 형태를 가질 수 있다. 캐패빌리티 정보 역시 그에 따른 캐패빌리티 스킴 ID 가 정의되고, 그 값(value)들이 정의될 수 있다. 또한, @value 의 각 파라미터들을 서브 필드로 가지는 캐패빌리티 엘레멘트 형태로 정의될 수도 있다. 캐패빌리티 정보는 디스크립터 형태로 정의되어 MMT 시그널링 정보에 포함되어 전달될 수 있다. 이 디스크립터는 전술한 MPT 메시지 또는 다른 MMTP 메시지에 포함되어 전달될 수 있다. 이 디스크립터는 에셋 디스크립터의 한 종류일 수 있다. 캐패빌리티 정보의 자세한 필드, 파라미터, 구조에 대한 내용은 이미 전술하였다.
도 27 은 본 발명의 일 실시예에 따른 HEVC 비디오 컴포넌트 디스크립션 정보를 도시한 도면이다.
HEVC 비디오 컴포넌트 디스크립션 정보는 해당 서비스 또는 서비스 컴포넌트의 HEVC 비디오와 관련된 정보를 포함할 수 있다. HEVC 비디오 컴포넌트 디스크립션 정보는 HEVC 비디오 정보로 부를 수도 있다. HEVC 비디오 정보는 컴포넌트 관련 인코딩 파라미터 혹은 해당 컴포넌트를 랜더링하기 위한 파라미터 등을 포함할 수 있다. HEVC 비디오 정보는 전술한 실시예에 따른 디스크립터들 중 하나의 형태를 가지거나, 엘레멘트의 형태를 가질 수 있다.
도시된 실시예(t29010)에서 HEVC 비디오 정보는 디스크립터 형태로 정의될 수 있다. @schemeIdUri 는 해당 디스크립터가 HEVC 비디오 정보에 관련한 HEVC 비디오스킴을 가짐을 식별하기 위한 URI 일 수 있다. 이 경우, @schemeIdUri 는 urn:atsc3.0:hevc:201x 의 값을 가질 수 있다. @value 는 HEVC 비디오 정보 스킴에 따라 그 의미가 정의되는 값(value)들을 가질 수 있다. 이 값에 대해서는 후술한다. @id 는 해당 디스크립터의 식별자를 나타낼 수 있다. 동일한 식별자를 가지는 경우, 동일한 스킴 ID, 값(value), 파라미터를 포함할 수 있다.
도시된 실시예(t29020)는 전술한 @value 의 각 파라미터들을 나타낼 수 있다.
profile_space 는 HEVC 비디오 스트림에 대해서는 비트스트림의 SPS 에 포함된 general_profile_space 값과 같을 수 있다. HEVC 템포럴 비디오 섭셋(temporal video subset) 이거나 HEVC 템포럴 비디오 서브-비트스트림(temporal video sub-bitstream) 인 경우 비트스트림의 SPS 에 포함된 sub_layer_profile_space 값과 같을 수 있다.
tier_flag 는 HEVC 비디오 스트림에 대해서는 비트스트림의 SPS 에 포함된 general_tier_flag 값과 같을 수 있다. HEVC 템포럴 비디오 섭셋이거나 HEVC 템포럴 비디오 서브-비트스트림인 경우 비트스트림의 SPS 에 포함된 sub_layer_tier_flag 값과 같을 수 있다.
profile_idc 는 HEVC 비디오 스트림에 대해서는 비트스트림의 SPS 에 포함된 general_profile_idc 값과 같을 수 있다. HEVC 템포럴 비디오 섭셋이거나 HEVC 템포럴 비디오 서브-비트스트림인 경우 비트스트림의 SPS 에 포함된 sub_layer_profile_idc 값과 같을 수 있다.
profile_compatibility_indication 는 HEVC 비디오 스트림에 대해서는 비트스트림의 SPS 에 포함된 general_profile_compatibility_flag[i] 값과 같을 수 있다. HEVC 템포럴 비디오 섭셋이거나 HEVC 템포럴 비디오 서브-비트스트림인 경우 비트스트림의 SPS 에 포함된 sub_layer_profile_compatibility_flag[i] 값과 같을 수 있다.
progressive_source_flag 는 HEVC 비디오 스트림에 대해서는 비트스트림의 SPS 에 포함된 general_progressive_source_flag 값과 같을 수 있다. HEVC 템포럴 비디오 섭셋이거나 HEVC 템포럴 비디오 서브-비트스트림인 경우 비트스트림의 SPS 에 포함된 sub_layer_progressive_source_flag 값과 같을 수 있다
interlaced_source_flag 는 HEVC 비디오 스트림에 대해서는 비트스트림의 SPS 에 포함된 general_interlaced_source_flag 값과 같을 수 있다. HEVC 템포럴 비디오 섭셋이거나 HEVC 템포럴 비디오 서브-비트스트림인 경우 비트스트림의 SPS 에 포함된 sub_layer_interlaced_source_flag 값과 같을 수 있다.
non_packed_constraint_flag 는 HEVC 비디오 스트림에 대해서는 비트스트림의 SPS 에 포함된 general_non_ packed_constraint_flag 값과 같을 수 있다. HEVC 템포럴 비디오 섭셋이거나 HEVC 템포럴 비디오 서브-비트스트림인 경우 비트스트림의 SPS 에 포함된 sub_layer_non_packed_constraint_flag 값과 같을 수 있다.
frame_only_constraint_flag 는 HEVC 비디오 스트림에 대해서는 비트스트림의 SPS 에 포함된 general_frame_only_constraint_flag 값과 같을 수 있다. HEVC 템포럴 비디오 섭셋이거나 HEVC 템포럴 비디오 서브-비트스트림인 경우 비트스트림의 SPS 에 포함된 sub_layer_frame_only_constraint_flag 값과 같을 수 있다.
reserved_zero_44bits 는 HEVC 비디오 스트림에 대해서는 비트스트림의 SPS 에 포함된 general_reserved_zero_44bits 값과 같을 수 있다. HEVC 템포럴 비디오 섭셋이거나 HEVC 템포럴 비디오 서브-비트스트림인 경우 비트스트림의 SPS 에 포함된 sub_layer_reserved_zero_44bits 값과 같을 수 있다.
level_idc 는 HEVC 비디오 스트림에 대해서는 비트스트림의 SPS 에 포함된 general_level_idc 값과 같을 수 있다. HEVC 템포럴 비디오 섭셋이거나 HEVC 템포럴 비디오 서브-비트스트림인 경우 비트스트림의 SPS 에 포함된 sub_layer_level_idc 값과 같을 수 있다.
HEVC_still_present_flag 는 HEVC 비디오 스트림 또는 HEVC 하이스트 템포럴 서브-레이어 레프리젠테이션(highest temporal sub-layer representation) 이 HEVC 스틸 픽쳐스(still pictures) 를 포함하는지 여부를 지시할 수 있다.
HEVC_24hr_picture_present_flag 는 HEVC 비디오 스트림 또는 HEVC 하이스트 템포럴 서브-레이어 레프리젠테이션(highest temporal sub-layer representation) 이 HEVC 24 아워스 픽쳐스(24-hours pictures) 를 포함하는지 여부를 지시할 수 있다.
temporal_id_min 및/또는 temporal_id_max 는 HEVC 비디오 스트림에 포함되는 HEVC AU 중에서 가장 작은 temporalId 값 및/또는 가장 큰 temporalId 값을 나타낼 수 있다.
실시예에 따라 HEVC 비디오 정보는, 전술한 @value 의 각 파라미터들을 서브 필드로 가지는 HEVC 비디오 정보 엘레멘트 형태로 정의될 수도 있다.
도시된 실시예(t29030)에서 HEVC 비디오 정보는 디스크립터 형태로 정의될 수 있다. 이 디스크립터는 전술한 바와 같이 MMT 시그널링 정보에 포함되어 전달될 수 있다. 이 디스크립터는 전술한 MPT 메시지 또는 다른 MMTP 메시지에 포함되어 전달될 수 있다. 이 디스크립터는 에셋 디스크립터의 한 종류일 수 있다. MMT 에셋이 HEVC 비디오 스트림 컴포넌트인 경우, MP 테이블의 에셋 타입을 HEVC 비디오 스트림에 해당하는 값을 할당할 수 있다.
profile_space, tier_flag, profile_idc, profile_compatibility_indication, progressive_source_flag, interlaced_source_flag, non_packed_constraint_flag, frame_only_constraint_flag, reserved_zero_44bits, level_idc, HEVC_still_present_flag, HEVC_24hr_picture_present_flag, temporal_id_min 및/또는 temporal_id_max 가 해당 디스크립터에 포함될 수 있으며, 의미하는 바는 전술한 바와 같을 수 있다.
도 28 은 본 발명의 일 실시예에 따른 HEVC 타이밍 & HRD 정보를 도시한 도면이다.
HEVC 타이밍 & HRD 정보는, HEVC 비디오 스트림 컴포넌트와 연관된 타이밍 정보 내지 HRD 디스크립션을 포함할 수 있다. HEVC 타이밍 & HRD 정보는 전술한 실시예에 따른 디스크립터들 중 하나의 형태를 가지거나, 엘레멘트의 형태를 가질 수 있다. 이는 전술한 componentProperty 엘레멘트 등으로 나타내어질 수도 있다.
도시된 실시예에서 HEVC 타이밍 & HRD 정보는 디스크립터 형태로 정의될 수 있다. @schemeIdUri 는 해당 디스크립터가 HEVC 타이밍 & HRD 정보에 관련한 스킴을 가짐을 식별하기 위한 URI 일 수 있다. 이 경우, @schemeIdUri 는 urn:atsc3.0:hevc-timing:201x 의 값을 가질 수 있다. @value 는 스킴에 따라 그 의미가 정의되는 값(value)들을 가질 수 있다. 이 값에 대해서는 후술한다. @id 는 해당 디스크립터의 식별자를 나타낼 수 있다. 동일한 식별자를 가지는 경우, 동일한 스킴 ID, 값(value), 파라미터를 포함할 수 있다.
도시된 실시예(t30010)는 전술한 @value 의 각 파라미터들을 나타낼 수 있다. hrd_management_valid_flag 는 HEVC 비디오 스트림 또는 HEVC 하이스트 템포럴 서브-레이어 레프리젠테이션 내에 버퍼링 피리오드 SEI (Buffering Period SEI) 및 픽쳐 타이밍 SEI (Picture Timing SEI) 메시지가 존재하는지 여부를 지시할 수 있다. picture_and_timing_info_present_flag 는 90 kHz 시스템 클럭과 정확한 매핑을 위한 90kHz_flag 와 그와 연관된 파라미터들이 해당 디스크립터에 포함되는지 여부를 나타낼 수 있다. 90kHz_flag 는 HEVC 비디오 스트림의 타임 베이스의 주파수(frequency) 가 90KHz 인지 아닌지 여부를 나타낼 수 있다. N 및/또는 K 는 타임 스케일과 관련한 N, K 파라미터 값을 제공할 수 있다. HEVC 비디오 스트림 또는 HEVC 하이스트 템포럴 서브-레이어 레프리젠테이션에 있어서, HEVC 타임 베이스의 주파수는 VUI 파라미터의 vui_time_scale 엘레멘트에 의해 정의될 수 있다. HEVC time_scale 과 STC 간의 관계는 N, K 파라미터 값에 의해 정의될 수 있는데, HEVC time_scale = (N x system_clock_frequency) / K 와 같이 표현될 수 있다. 90kHz_flag 가 1 인 경우, N 은 1, K 는 300 의 값을 가질 수 있다. 90kHz_flag 가 0 인 경우, N, K 값은 N, K 필드에 의해 제공될 수 있다. num_units_in_tick 는 VUI 파라미터의 vui_num_units_in_tick 필드와 같은 식으로 코딩될 수 있으며, 본 필드 값은 해당 HEVC 타이밍 & HRD 디스크립션 정보와 관계된 HEVC 비디오 스트림 또는 HEVC 하이스트 템포럴 서브-레이어 레프리젠테이션 전체에 적용될 수 있다.
실시예에 따라 HEVC 타이밍 & HRD 정보는, 전술한 @value 의 각 파라미터들을 서브 필드로 가지는 HEVC 타이밍 & HRD 정보 엘레멘트 형태로 정의될 수도 있다.
도시된 실시예(t30020)에서 HEVC 타이밍 & HRD 정보는 디스크립터 형태로 정의될 수 있다. 이 디스크립터는 전술한 바와 같이 MMT 시그널링 정보에 포함되어 전달될 수 있다. 이 디스크립터는 전술한 MPT 메시지 또는 다른 MMTP 메시지에 포함되어 전달될 수 있다. 이 디스크립터는 에셋 디스크립터의 한 종류일 수 있다.
hrd_management_valid_flag, picture_and_timing_info_present_flag, 90kHz_flag, N, K 및/또는 num_units_in_tick 가 해당 디스크립터에 포함될 수 있으며, 의미하는 바는 전술한 바와 같을 수 있다.
도 29 는 본 발명의 일 실시예에 따른 캡션(caption) 정보를 도시한 도면이다.
캡션 정보는 해당 서비스 컴포넌트가 클로즈드 캡션 스트림 컴포넌트인 경우, 그와 관련된 캡션 디스크립션 정보를 포함할 수 있다. 캡션 정보는 전술한 실시예에 따른 디스크립터들 중 하나의 형태를 가지거나, 엘레멘트의 형태를 가질 수 있다. 이는 전술한 componentProperty 엘레멘트 등으로 나타내어질 수도 있다.
도시된 실시예에서 캡션 정보는 디스크립터 형태로 정의될 수 있다. @schemeIdUri 는 해당 디스크립터가 캡션 정보에 관련한 캡션 스킴을 가짐을 식별하기 위한 URI 일 수 있다. 이 경우, @schemeIdUri 는 urn:atsc3.0:caption:201x 의 값을 가질 수 있다. @value 는 캡션 스킴에 따라 그 의미가 정의되는 값(value)들을 가질 수 있다. 이 값에 대해서는 후술한다. @id 는 해당 디스크립터의 식별자를 나타낼 수 있다. 동일한 식별자를 가지는 경우, 동일한 스킴 ID, 값(value), 파라미터를 포함할 수 있다.
도시된 실시예(t31010)는 전술한 @value 의 각 파라미터들을 나타낼 수 있다. caption_codec 은 해당 캡션 컴포넌트의 인코딩 타입을 나타낼 수 있다. 실시예에 따라 “CEA-608”, “CEA-708”, “SMPTE-TT” 등이 지시될 수 있다. lang 은 해당 캡션 컴포넌트의 언어정보를 포함할 수 있다. caption_service_number 는 해당 캡션 컴포넌트의 타입이 CEA-708인 경우, 해당 캡션의 서비스 넘버를 포함할 수 있다. easy_reader_flag 는 해당 캡션 컴포넌트가 이지 리더 타입인지 여부를 지시할 수 있다. aspect_ratio 는 해당 캡션 컴포넌트의 디스플레이 종횡비(display aspect ratio)를 나타낼 수 있다. 실시예에 따라 “4:3” 혹은 “16:9” 등이 지시될 수 있다. 3D supported 는 해당 캡션 컴포넌트가 3D 를 지원하는지 여부를 나타낼 수 있다.
실시예에 따라 캡션 정보는, 전술한 @value 의 각 파라미터들을 서브 필드로 가지는 캡션 엘레멘트 형태로 정의될 수도 있다.
도시된 실시예(t31020)에서 캡션 정보는 디스크립터 형태로 정의될 수 있다. 이 디스크립터는 전술한 바와 같이 MMT 시그널링 정보에 포함되어 전달될 수 있다. 이 디스크립터는 전술한 MPT 메시지 또는 다른 MMTP 메시지에 포함되어 전달될 수 있다. MMT 에셋이 클로즈드 캡션 컴포넌트인 경우, MP 테이블의 에셋 타입을 클로즈드 캡션 스트림 에 해당하는 값을 할당할 수 있다. 실시예에 따라, MP 테이블의 에셋 타입은 HEVC 비디오 스트림에 해당하는 값을 지시하면서, 에셋 디스크립터로서 도시된 디스크립터가 포함될 수도 있다. 이 경우, HEVC 비디오 비트스트림 내에 클로즈드 캡션 데이터가 포함되었음이 나타날 수도 있다. 이 디스크립터는 에셋 디스크립터의 한 종류일 수 있다.
caption_lang, caption_codec, easy_reader, wide_aspect_ratio, 3d_supported 및/또는 caption_service_number 가 해당 디스크립터에 포함될 수 있으며, 의미하는 바는 전술한 바와 같을 수 있다. caption_lang, easy_reader, wide_aspect_ratio 는 각각 전술한 lang, easy_reader_flag, aspect_ratio 와 같을 수 있다. caption_codec 의 경우, 그 값이 0x01, 0x02, 0x03, 0x04, 0x05 이면, 각각 “CEA-608”, “CEA-708”, “SMPTE timed text”, “EBU-TT-D”, “CFF-TT” 의 인코딩 타입이 사용되었음이 지시될 수 있다. url_flag, URL_length, URL_text 필드는 전술한 캡션 정보에서의 그것과 동일할 수 있다.
예를 들어, 클로즈드 캡션 컴포넌트가 SMPTE-TT 을 기반으로 영어 자막을 포함하는 경우, 디스크립터는 "urn:atsc3.0:caption:201x“ 의 스킴 ID 를 가지고 @value 는 각각 “SMPTE-TT, ENG, , false, 4:3,false" 의 값을 가질 수 있다. 이 @value 의 파라미터들은 순서대로, 전술한 파라미터들의 정의에 따른 의미를 가질 수 있다.
또한 HEVC 비디오 스트림 컴포넌트의 비트스트림 내에 CEA-708 등을 기반으로 클로즈드 캡션 데이터가 포함된 경우, 앞서 설명된 HEVC 비디오 데이터 관련 정보들과 함께, 클로즈드 캡션 관련 정보들이 전술한 방법에 의해 함께 시그널링될 수 있다.
도 30 은 본 발명의 일 실시예에 따른 HDR 정보를 도시한 도면이다.
HDR 정보는 해당 서비스 컴포넌트가 비디오 컴포넌트인 경우, 그와 관련된 HDR 파라미터 정보를 포함할 수 있다. HDR 정보는 전술한 실시예에 따른 디스크립터들 중 하나의 형태를 가지거나, 엘레멘트의 형태를 가질 수 있다. 이는 전술한 componentProperty 엘레멘트 또는 ComponentDescription 엘레멘트 등으로 나타내어질 수도 있다.
도시된 실시예에서 HDR 정보는 디스크립터 형태로 정의될 수 있다. @schemeIdUri 는 해당 디스크립터가 HDR 정보에 관련한 HDR 스킴을 가짐을 식별하기 위한 URI 일 수 있다. 이 경우, @schemeIdUri 는 urn:atsc3.0:hdr:201x 의 값을 가질 수 있다. @value 는 HDR 스킴에 따라 그 의미가 정의되는 값(value)들을 가질 수 있다. 이 값에 대해서는 후술한다. @id 는 해당 디스크립터의 식별자를 나타낼 수 있다. 동일한 식별자를 가지는 경우, 동일한 스킴 ID, 값(value), 파라미터를 포함할 수 있다.
도시된 실시예(t32010)는 전술한 @value 의 각 파라미터들을 나타낼 수 있다. OETF_type 는 해당 비디오 데이터의 소스 OETF (opto-electronic transfer function) 의 타입을 지시할 수 있다. 본 필드의 값이 1, 2, 3 인 경우, 각각 ITU-R BT.1886, ITU-R BT.709, ITU-R BT.2020 타입에 해당할 수 있다. 다른 값은 향후 사용을 위해 남겨둘 수 있다.
max_mastering_display_luminance 는 해당 비디오 데이터의 마스터링 디스플레이의 피크 루미넌스(peak luminance) 값을 나타낼 수 있다. 이 값은 100-1000 사이의 정수 값일 수 있다. min_mastering_display_luminance 는 해당 비디오 데이터의 마스터링 디스플레이의 최소 루미넌스(minimum luminance) 값을 나타낼 수 있다. 이 값은 0-0.1 사이의 분수(fractional number) 값일 수 있다.
average_frame_luminance_level 는 하나의 비디오 샘플에 대해서는 루미넌스 레벨의 평균값을 나타낼 수 있다. 또한 본 필드는 샘플 그룹 또는 비디오 트랙(스트림)에 대해서는 그곳에 소속된 샘플 각각의 루미넌스 레벨의 평균값들 중 최대값을 나타낼 수 있다. max_frame_pixel_luminance 는 하나의 비디오 샘플에 대해서는 픽셀 루미넌스 값 중의 최대값을 나타낼 수 있다. 또한 본 필드는 샘플 그룹 또는 비디오 트랙(스트림)에 대해서는 그곳에 소속된 샘플 각각의 픽셀 루미넌스 최대값들 중 가장 큰 값을 나타낼 수 있다.
hdr_type_transition_flag 는 해당 비디오 데이터에 대한 HDR 정보가 변경되어 다른 타입의 HDR 정보가 적용되는지 여부를 나타내는 플래그일 수 있다. 예를 들어 oeft:3, max_lum:100, min_lum:0.5, max_frame_lum:0, max_pixel_lum:0 이던 HDR 파라미터들이 oeft:1, max_lum:1000, min_lum:0.05, max_frame_lum:0, max_pixel_lum:0 등으로 변경되면, 본 필드가 true 값을 가질 수 있다. hdr_sdr_transition_flag 는 해당 비디오 데이터가 HDR 에서 SDR 로 전환되는지 여부를 나타내는 플래그일 수 있다. sdr_hdr_transition_flag 는 해당 비디오 데이터가 SDR 에서 HDR 로 전환되는지 여부를 나타내는 플래그일 수 있다. sdr_compatibility_flag 는 해당 비디오 데이터가 SDR 디코더 내지 SDR 디스플레이와 호환이 가능한지 여부를 나타내는 플래그일 수 있다.
실시예에 따라 HDR 정보는, 전술한 @value 의 각 파라미터들을 서브 필드로 가지는 HDR 엘레멘트 형태로 정의될 수도 있다.
도시된 실시예(t32020)에서 HDR 정보는 디스크립터 형태로 정의될 수 있다. 이 디스크립터는 전술한 바와 같이 MMT 시그널링 정보에 포함되어 전달될 수 있다. 이 디스크립터는 전술한 MPT 메시지 또는 다른 MMTP 메시지에 포함되어 전달될 수 있다. 이 디스크립터는 에셋 디스크립터의 한 종류일 수 있다. 또한, 이 디스크립터들은 SDT 또는 EIT 등의 DVB SI 서비스 시그널링에 포함되어 전달되거나, 함께 전달될 수도 있다.
OETF_type, max_mastering_display_luminance, min_mastering_display_luminance, average_frame_luminance_level, max_frame_pixel_luminance, hdr_type_transition_flag , hdr_sdr_transition_flag, sdr_hdr_transition_flag 및/또는 sdr_compatibility_flag 가 해당 디스크립터에 포함될 수 있으며, 의미하는 바는 전술한 바와 같을 수 있다.
실시예에 따라 HDRTypeTransitionFlag, HDRSDRTransitionFlag, SDRHDRTransitionFlag 들은 동시에 하나 이상 true 가 되지 않을 수 있다. 예를 들어 HDRSDRTransitionFlag 값이 true 인 경우 HDRTypeTransitionFlag, SDRHDRTransitionFlag 값이 false 가 될 수 있다.
도 31 은 본 발명의 일 실시예에 따른 WCG 정보를 도시한 도면이다.
WCG 정보는 해당 서비스 컴포넌트가 비디오 컴포넌트인 경우, 그와 관련된 WCG 정보를 포함할 수 있다. WCG 정보는 전술한 실시예에 따른 디스크립터들 중 하나의 형태를 가지거나, 엘레멘트의 형태를 가질 수 있다. 이는 전술한 componentProperty 엘레멘트 또는 ComponentDescription 엘레멘트 등으로 나타내어질 수도 있다.
WCG 정보는 color gamut 정보라 부를 수도 있다. color gamut 정보는 두가지 형태가 있을 수 있는데, 하나는 컨테이너 color gamut 이고, 다른 하나는 컨텐트 color gamut 이라 부를 수 있다. 컨테이너 color gamut 은 인코딩, 디코딩 단계 및/또는 디코딩된 화소 값을 매핑하는 과정에서 사용되는 color gamut 관련 정보를 포함할 수 있다. 컨텐트 color gamut 은 오리지널 소스(original source)의 color gamut 에 대한 정보를 포함할 수 있다. 즉, 컨텐트 color gamut 은 실제의 컨텐트에 적용된 유효한 컬러 스페이스 볼륨(color space volume) 을 나타낼 수 있다.
도시된 실시예(t33010)에서, 컨텐트 WCG 정보는 디스크립터 형태로 정의될 수 있다. @schemeIdUri 는 해당 디스크립터가 컨텐트 WCG 정보에 관련한 컨텐트 WCG 스킴을 가짐을 식별하기 위한 URI 일 수 있다. 이 경우, @schemeIdUri 는 urn:atsc3.0:wcg:content:201x 의 값을 가질 수 있다. @value 는 컨텐트 WCG 스킴에 따라 그 의미가 정의되는 값(value)들을 가질 수 있다. 이 값에 대해서는 후술한다. @id 는 해당 디스크립터의 식별자를 나타낼 수 있다. 동일한 식별자를 가지는 경우, 동일한 스킴 ID, 값(value), 파라미터를 포함할 수 있다.
도시된 실시예(t33010)는 전술한 @value 의 각 파라미터들을 나타낼 수 있다.
contentColorGamutType 은 해당 비디오 데이터에 대한 color gamut 의 타입을 지시할 수 있다. 즉, 이 필드는 소스 프라이머리스(primaries)의 크로마티시티 코디네이트(chromaticity coordinates)를 지시할 수 있다. 이 값은 VUI(video usability information) 의 컬러 프라이머리(colour primaries) 값과 같을 수 있다. VUI 파라미터의 값이 존재하지 않는 경우, VUI 의 컬러 프라이머리 값들은 특정되지 않는 것으로 되고(unspecified), 하기 8 개의 파라미터들이 값(value)을 가질 수 있다.
contentColorPrimaryRx 및 contentColorPrimaryRy 는 각각 해당 비디오 소스의 R-컬러에 대한 x 좌표, y 좌표값을 나타낼 수 있다. 이는 0 과 1 사이의 분수(fractional number) 형태일 수 있다. contentColorPrimaryGx 및 contentColorPrimaryGy 는 각각 해당 비디오 소스의 G-컬러에 대한 x 좌표, y 좌표값을 나타낼 수 있다. 이는 0 과 1 사이의 분수(fractional number) 형태일 수 있다. contentColorPrimaryBx 및 contentColorPrimaryBy 는 각각 해당 비디오 소스의 B-컬러에 대한 x 좌표, y 좌표값을 나타낼 수 있다. 이는 0 과 1 사이의 분수(fractional number) 형태일 수 있다. contentWhitePx 및 contentWhitePy 는 각각 해당 비디오 소스의 화이트 포인트(White point) 에 대한 x 좌표, y 좌표값을 나타낼 수 있다. 이는 0 과 1 사이의 분수(fractional number) 형태일 수 있다.
contentWCGTransition 는 해당 비디오 데이터의 컨텐트 color gamut 이 WCG (Wide Color Gamut) 에서 SCG (Standard Color Gamut) 으로 전환되는지 여부를 나타내는 플래그일 수 있다. 실시예에 따라 WCG 를 지원하는 비디오 데이터의 끝이 해당 비디오 컴포넌트에 포함됨을 지시할 수도 있다. contentSCGCompatibility 는 해당 WCG 비디오의 컨텐트 color gamut 이 SCG 기반의 디코더, 디스플레이와 호환이 가능한지 여부를 나타내는 플래그일 수 있다.
도시된 실시예(t33020)에서, 컨테이너 WCG 정보는 디스크립터 형태로 정의될 수 있다. @schemeIdUri 는 해당 디스크립터가 컨테이너 WCG 정보에 관련한 컨테이너 WCG 스킴을 가짐을 식별하기 위한 URI 일 수 있다. 이 경우, @schemeIdUri 는 urn:atsc3.0:wcg:container:201x 의 값을 가질 수 있다. @value 는 컨테이너 WCG 스킴에 따라 그 의미가 정의되는 값(value)들을 가질 수 있다. 이 값에 대해서는 후술한다. @id 는 해당 디스크립터의 식별자를 나타낼 수 있다. 동일한 식별자를 가지는 경우, 동일한 스킴 ID, 값(value), 파라미터를 포함할 수 있다.
도시된 실시예(t33020)는 전술한 @value 의 각 파라미터들을 나타낼 수 있다. 이 파라미터들은 전술한 컨텐트 color gamut 에 대한 파라미터들과 같을 수 있다. 단, 이 파라미터들은 컨테이너 color gamut 에 대해서 기술할 수 있다. 예를 들어 containerColorGamutType 는 해당 비디오의 컨테이너 color gamut 타입을 지시할 수 있다. 즉 인코딩시에 사용한, 또는 디코딩시에 사용할 수 있는 컬러 프라이머리스에 대한 크로마티시티 코디네이트를 가리킬 수 있다.
containerColorPrimaryRx, containerColorPrimaryRy, containerColorPrimaryGx, containerColorPrimaryGy, containerColorPrimaryBx, containerColorPrimaryBy, containerWhitePx, containerWhitePy 는 각각 인코딩/디코딩 시에 사용된/사용될 수 있는 컬러 프라이머리스의 RGB 컬러, 화이트 포인트의 x, y 좌표를 나타낼 수 있다. 즉 컨테이너의 color gamut 의 좌표가 지시될 수 있다.
containerWCGTransition 는 해당 비디오 데이터의 컨테이너 color gamut 이 WCG 에서 SCG 로 전환되는지 여부를 나타내는 플래그일 수 있다. 실시예에 따라 컨테이너의 WCG 를 지원하는 비디오 데이터의 끝이 해당 비디오 컴포넌트에 포함됨을 지시할 수도 있다. containerSCGCompatibility 는 해당 WCG 비디오의 컨테이너 color gamut 이 SCG 기반의 디코더, 디스플레이와 호환이 가능한지 여부를 나타내는 플래그일 수 있다.
실시예에 따라 컨텐트/컨테이너 WCG 정보는, 전술한 @value 의 각 파라미터들을 서브 필드로 가지는 컨텐트/컨테이너 WCG 엘레멘트 형태로 정의될 수도 있다.
도시된 실시예(t33030)에서 컨텐트/컨테이너 WCG 정보는 디스크립터 형태로 정의될 수 있다. 이 디스크립터는 전술한 바와 같이 MMT 시그널링 정보에 포함되어 전달될 수 있다. 이 디스크립터는 전술한 MPT 메시지 또는 다른 MMTP 메시지에 포함되어 전달될 수 있다. MMT 에셋이 WCG 를 지원하는 컨텐트를 포함하는 비디오 스트림 컴포넌트인 경우, 에셋 디스크립터로서 도시된 디스크립터가 포함될 수도 있다. 또한, 이 디스크립터는 SDT 또는 EIT 등의 DVB SI 서비스 시그널링에 포함되어 전달되거나, 함께 전달될 수도 있다.
이 디스크립터(t33030)는 컨텐트 WCG 정보와 컨테이너 WCG 정보를 함께 포함할 수도 있다.
color_gamut_type 는 전술한 containerColorGamutType 와 같을 수 있다. color_space_transition_flag 는 해당 비디오 컴포넌트의 비디오 샘플들에 대하여, 인코딩시에 사용한 / 디코딩시에 사용할 수 있는 컬러 프라이머리스에 대한 크로마티시티 코디네이트가 다른 크로마티시티 코디네이트로 변경되는지 여부를 나타내는 플래그일 수 있다. wcg_scg_transition_flag 는 해당 비디오 컴포넌트의 비디오 샘플들의 컨테이너 color gamut 이 WCG 에서 SCG 로 전환되는지 여부를 나타내는 플래그일 수 있다. 예를 들어 BT.2020 에서 BT.709 로 컨테이너 color gamut 이 변화되는지 여부를 나타낼 수 있다. scg_wcg_transition_flag 는 해당 비디오 컴포넌트의 비디오 샘플들의 컨테이너 color gamut 이 SCG 에서 WCG 로 전환되는지 여부를 나타내는 플래그일 수 있다. scg_compatibility_flag 는 는 해당 비디오 컴포넌트의 비디오 샘플들의 컨테이너 color gamut 이 SCG 기반 디코더, 디스플레이와 호환 가능한지 여부를 나타내는 플래그일 수 있다. 즉, 기존의 SCG 디코더 내지 디스플레이가 사용되는 경우에 있어, 별도의 매핑 정보나 업그레이드 없이도 해당 WCG 비디오를 퀄리티 문제 없이 출력이 가능한지 여부가, 이 필드로 인해 확인될 수 있다.컨테이너 color gamut 에 관한 정보이므로, 이 필드는 SCG 기반 디코더/디스플레이가 BT.2020 같은 color gamut 을 모르더라도 해당 비디오 데이터를 디코딩할 수 있는지 여부를 나타낼 수 있다. color_primary_flag 는 해당 비디오 컴포넌트의 비디오 샘플들의 인코딩/디코딩 시에 사용할 수 있는 컬러 프라이머리스의 크로마티시티 코디네이트에 대한 세부 정보가 존재하는지 여부를 나타내는 플래그일 수 있다. color_primary_flag 의 값에 따라 color_primaryRx 필드, color_primaryRy 필드, color_primaryGx 필드, color_primaryGy 필드, color_primaryBx 필드, color_primaryBy 필드, color_whitePx 필드 및/또는 color_whitePy 필드가 포함될 수 있다. 이 필드들은 각각 인코딩/디코딩 시에 사용된/사용될 수 있는 컬러 프라이머리스의 RGB 컬러, 화이트 포인트의 x, y 좌표를 나타낼 수 있다.
content_wcg_flag 는 해당 비디오 컴포넌트에 대하여 컨텐트 color gamut 에 대한 세부 정보들이 해당 디스크립터에 포함되었는지 여부를 나타낼 수 있다. content_color_gamut_type 은 해당 비디오 스트림의 컨텐트 color gamut 타입을 지시할 수 있다. 즉 이 필드는 해당 비디오 데이터의 오리지널 소스 프라이머리스에 대한 크로마티시티 코디네이트를 가리킬 수 있다. content_color_space_transition_flag 는 해당 비디오 컴포넌트의 비디오 데이터들의 오리지널 소스 프라이머스에 대하여, 이 것들의 크로마티시티 코디네이트가 다른 크로마티시티 코디네이트로 변경되는지 여부를 나타내는 플래그일 수 있다. content_wcg_scg_transition_flag 는 해당 비디오 컴포넌트의 비디오 데이터들의 컨텐트 color gamut 이 WCG 에서 SCG 로 전환되는지 여부를 나타내는 플래그일 수 있다. content_scg_wcg_transition_flag 필드는 해당 비디오 컴포넌트의 비디오 데이터들의 컨텐트 color gamut 이 SCG 에서 WCG 로 전환되는지 여부를 나타내는 플래그일 수 있다. content_scg_compatibility_flag 필드는 해당 비디오 컴포넌트의 비디오 데이터들의 컨텐트 color gamut 이 SCG 기반 디코더, 디스플레이와 호환 가능한지 여부를 나타내는 플래그일 수 있다. 즉 이 필드의 값이 1 인 경우, 해당 비디오 데이터의 유효 색 표현 범위가 SCG 호환이고, 별도의 매핑등이 필요 없음을 나타낼 수 있다. content_color_primary_flag 필드는 해당 비디오 컴포넌트의 비디오 데이터들의 오리지널 소스 프라이머리스의 크로마티시티 코디네이트에 대한 세부 정보가 존재하는지 여부를 나타내는 플래그일 수 있다. content_color_primary_flag 필드의 값에 따라 content_color_primaryRx 필드, content_color_primaryRy 필드, content_color_primaryGx 필드, content_color_primaryGy 필드, content_color_primaryBx 필드, content_color_primaryBy 필드, content_color_whitePx 필드 및/또는 content_color_whitePy 필드가 포함될 수 있다. 이 필드들은 각각 오리지널 소스 프라이머리스의 RGB 컬러, 화이트 포인트의 x, y 좌표를 나타낼 수 있다.
실시예에 따라, 전술한 color_gamut_type 및/또는 content_color_gamut_type 은 다음과 같은 의미를 가질 수 있다.
0 : reserved / 1 : Rec. ITU-R BT.709-5, Rec. ITU-R BT.1361 conventional colour gamut system and extended colour gamut system, IEC 61966-2-1 (sRGB or sYCC), IEC 61966-2-4, Society of Motion Picture and Television Engineers RP 177 (1993) / 2 : unspecified / 3 : Reserved for future use / 4 : Rec. ITU-R BT.470-6 System M (historical), United States National Television System Committee 1953 Recommendation for transmission standards for colour television, United States Federal Communications Commission Title 47 Code of Federal Regulations (2003) 73.682 (a) / 5 : Rec. ITU-R BT.470-6 System B, G (historical), Rec. ITU-R BT.601-6 625, Rec. ITU-R BT.1358 625, Rec. ITU-R BT.1700 625 PAL and 625 SECAM / 6 : Rec. ITU-R BT.601-6 525, Rec. ITU-R BT.1358 525, Rec. ITU-R BT.1700 NTSC, Society of Motion Picture and Television Engineers 170M (2004) / 7 : Society of Motion Picture and Television Engineers 240M (1999) / 8 : Generic film (colour filters using Illuminant C) / 9: Rec. ITU-R BT.2020 / 10-255 : Reserved for future use
도 32 는 본 발명의 일 실시예에 따른 HFR 정보 / 풀다운(Pull Down) 정보를 도시한 도면이다.
HFR 정보는 해당 비디오 서비스 컴포넌트가 HFR 을 지원하는 경우, 그와 관련된 HFR 정보를 포함할 수 있다. HFR 정보는 전술한 실시예에 따른 디스크립터들 중 하나의 형태를 가지거나, 엘레멘트의 형태를 가질 수 있다. 이는 전술한 componentProperty 엘레멘트 또는 ComponentDescription 엘레멘트 등으로 나타내어질 수도 있다. 전술한 바와 같이 HFR 정보는 MPD 등에도 포함될 수 있다.
도시된 실시예(t34010)에서, HFR 정보는 디스크립터 형태로 정의될 수 있다. @schemeIdUri 는 해당 디스크립터가 HFR 정보에 관련한 HFR 스킴을 가짐을 식별하기 위한 URI 일 수 있다. 이 경우, @schemeIdUri 는 urn:atsc3.0:hfr:201x 의 값을 가질 수 있다. @value 는 HFR 스킴에 따라 그 의미가 정의되는 값(value)들을 가질 수 있다. 이 값에 대해서는 후술한다. @id 는 해당 디스크립터의 식별자를 나타낼 수 있다. 동일한 식별자를 가지는 경우, 동일한 스킴 ID, 값(value), 파라미터를 포함할 수 있다.
도시된 실시예(t34010)는 전술한 @value 의 각 파라미터들을 나타낼 수 있다. SFRCompatibility 는 해당 비디오 컴포넌트가 SFR (Standard Frame Rate) 또는 레거시 프레임 레이트와 호환이 되는지 여부를 지시할 수 있다. SFR_HFR_Transition 는 해당 비디오 컴포넌트가 일반적인 프레임 레이트(SFR 또는 레거시 프레임 레이트) 에서 HFR 로의 트랜지션(transition)을 포함하는지 여부를 지시할 수 있다. HFR_SFR_Transition 는 해당 비디오 컴포넌트가 HFR 에서 일반적인 프레임 레이트(SFR 또는 레거시 프레임 레이트) 로의 트랜지션(transition)을 포함하는지 여부를 지시할 수 있다.
풀다운 정보는 해당 서비스 컴포넌트에 대한 풀 다운 리커버리 컨피규레이션(Pull Down Recovery Configuration) 정보를 포함할 수 있다. 풀다운 정보는 전술한 실시예에 따른 디스크립터들 중 하나의 형태를 가지거나, 엘레멘트의 형태를 가질 수 있다. 이는 전술한 componentProperty 엘레멘트 또는 ComponentDescription 엘레멘트 등으로 나타내어질 수도 있다.
풀다운 리커버리 컨피규레이션에 대해 설명한다. 예를 들어, 오리지널 소스가 필름 모드(e.g. 24p)인 경우, 이는 인코딩을 위하여 다른 프레임 레이트로 변경될 수 있다(e.g. 60i). 이 경우, 더티 프레임들(dirty frames)이 발생될 수 있다. 더티 프레임은 다음과 같은 방식에 의해 생성될 수 있다.
모든 오리지널 필름 프레임은 두 필드들로 구성되었다고 간주될 수 있다. 하나는 이미지의 홀수 번째 라인을 위함이고, 다른 하나는 이미지의 짝수 번째 라인들을 위함일 수 있다. 따라서 4 개의 필름 프레임들마다 8 개의 필드가 있을 수 있다. 여기서 4 개의 필름 프레임들을 각각 A, B, C, D 라고 부를 수 있다. 이 8 개의 필드들은 10 개의 필드들로 늘어날(stretched) 수 있다. 이는 두 개의 필드를 반복함으로써(탑, 바텀) 수행될 수 있다.
A 프레임은 3 개의 필드로 걸쳐질(across) 수 있고(At, Ab, Ab), B 프레임은 2 개의 필드로 걸쳐질 수 있고(Bt, Bb), C 프레임은 3 개의 필드로 걸쳐질 수 있고(Ct, Ct, Cb), B 프레임은 2 개의 필드로 걸쳐질 수 있다(Dt, Db). 이 들은 At-Ab-Ab-Bt-Bb-Ct-Ct-Cb-Dt-Db 또는 3-2-3-2 풀다운 또는 간단힌 3-2 풀 다운이라고 쓰여질 수 있다. 여기서 At 는 A 프레임의 탑 필드라는 뜻이고, Bb 는 B 프레임의 바텀 필드라는 뜻일 수 있다.
“At-Ab-Ab-Bt-Bb-Ct-Ct-Cb-Dt-Db” 케이스에서, Ab-Bt 프레임과 Bb-Ct 프레임은 더티 프레임들이라고 부를 수 있다. 그러나 수신기는 오리지널 프레임 레이트는 풀 다운 리커버리 컨피규레이션을 통해 알 수 있다. 수신기는 오리지널 프레임 레이트 스트림을 인코딩/전송된 프레임 레이트 스트림으로부터 복구해낼 수 있다. 여기서 복구는 더티 프레임을 없애는 과정일 수 있다.
풀 다운은 필름메이킹/TV 프로덕션 등에 있어서, 필름 또는 비디오의 전달을 위한 포스트 프로덕션 프로세스와 관련하여 사용되는 용어일 수 있다. 필름 프레임 레이트는 브로드캐스터에 의해 방송 프레임 레이트로 전환될 수 있다. 그러나 시스템 레벨의 프레임 레이트 관련 정보는 방송 프레임 레이트 정보만을 포함할 수 있다. 따라서 오리지널 프레임 레이트를 복구하기 위하여, 시스템 레벨 시그널링은 오리지널 프레임 레이트와 관련된 정보를 시그널링해줄 수 있어야 할 수 있다. 예를 들어 오리지널 프레임 레이트(e.g. 24p) 정보 및/또는 풀다운 타입 정보(e.g. 3:2 풀다운) 가 시그널링 정보에 포함될 수 있다. 또한 풀다운된 비디오의 비디오 레벨 정보는 오리지널 비디오로의 복구를 요청할 수 있다.
도시된 실시예(t34020)에서, 풀다운 정보는 디스크립터 형태로 정의될 수 있다. @schemeIdUri 는 해당 디스크립터가 풀다운 정보에 관련한 풀다운 스킴을 가짐을 식별하기 위한 URI 일 수 있다. 이 경우, @schemeIdUri 는 urn:atsc3.0:pulldown:201x 의 값을 가질 수 있다. @value 는 풀다운 스킴에 따라 그 의미가 정의되는 값(value)들을 가질 수 있다. 이 값에 대해서는 후술한다. @id 는 해당 디스크립터의 식별자를 나타낼 수 있다. 동일한 식별자를 가지는 경우, 동일한 스킴 ID, 값(value), 파라미터를 포함할 수 있다.
도시된 실시예(t34020)는 전술한 @value 의 각 파라미터들을 나타낼 수 있다. PullDownType 는 해당 인코딩된 비디오 스트림에 적용된 풀다운의 타입을 지시할 수 있다. 음수가 아닌 10 진수 정수로서 표현될 수 있다. 본 필드는 그 값에 따라, 0 - reserved, 1 - 2:2 pull-down, 2 - 2:3 pull down, 3- 3:2 pull-down, 4 - 4:4 pull-down, 5 - 5:5 pull-down, 6 - 6:4 pull-down, … , 등의 타입을 지시할 수 있다.
PullDownTransition 는 풀다운된 데이터에서 오리지널 프레임 레이트로의 트랜지션이 해당 비디오 컴포넌트에 포함되는지 여부를 지시할 수 있다. 실시예에 따라 본 필드는 풀다운된 데이터의 끝이 해당 비디오 컴포넌트에 포함되는지 여부를 지시할 수 있다.
OriginalFrameRate 는 해당 비디오 데이터의 오리지널 프레임 레이트(캡쳐드(captured) 프레임 레이트)를 지시할 수 있다. 본 필드는 음수가 아닌 10 진수 정수로서 표현될 수 있다. 이 정보는 인코딩 프레임 레이트로부터 오리지널 프레임 레이트로 복구를 수행하기 위해 제공될 수 있다. 본 필드는 그 값에 따라, 0- reserved, 1- 120, 2- 120/1.001, 3- 100, 4- 60, 5- 60/1.001, 6- 50, 7- 30, 8- 30/1.001, 9- 25, 10- 24, 11- 24/1.001, 12 ~ 14- reserved, 등의 오리지널 프레임 레이트를 지시할 수 있다.
OriginalScanType 는 해당 비디오에 해당하는 오리지널 비디오의 스캐닝 타입을 지시할 수 있다. 본 필드는 음수가 아닌 10 진수 정수로서 표현될 수 있다. 본 필드는 그 값에 따라 0- reserved, 1- interlaced, 2- progressive, 3- unspecified 등의 타입을 지시할 수 있다.
실시예에 따라 풀다운 정보는, 전술한 @value 의 각 파라미터들을 서브 필드로 가지는 풀다운 엘레멘트 형태로 정의될 수도 있다.
도시된 실시예(t34030)에서 HFR 정보 & 풀다운 정보는 디스크립터 형태로 정의될 수 있다. 이 디스크립터는 전술한 바와 같이 MMT 시그널링 정보에 포함되어 전달될 수 있다. 이 디스크립터는 전술한 MPT 메시지 또는 다른 MMTP 메시지에 포함되어 전달될 수 있다. MMT 에셋이 HFR 을 지원하는 컨텐트를 포함하는 비디오 스트림 컴포넌트인 경우, 에셋 디스크립터로서 도시된 디스크립터가 포함될 수도 있다. 또한, 이 디스크립터는 SDT 또는 EIT 등의 DVB SI 서비스 시그널링에 포함되어 전달되거나, 함께 전달될 수도 있다.
이 디스크립터(t34030)는 HFR 정보 & 풀다운 정보를 함께 포함할 수도 있다. sfr_compatibility_flag, sfr_hfr_transition_flag, hfr_sfr_transition_flag, pull_down_type, pull_down_transition_flag, original_framerate 및/또는 original_scan_type 는 각각 전술한 SFRCompatibility, SFR_HFR_Transition, HFR_SFR_Transition, PullDownType, PullDownTransition, OriginalFrameRate, OriginalScanType 와 같을 수 있다. original_framerate_flag 는 해당 디스크립터에 original_framerate 필드가 존재하는지 여부를 지시할 수 있다. original_scane_type_flag 는 해당 디스크립터에 original_scane_type 필드가 존재하는지 여부를 지시할 수 있다.
도 33 은 본 발명의 일 실시예에 따른 3D 서비스 및 멀티뷰 서비스 관련 시그널링 정보를 나타낸다. MMT asset 이 스테레오스코픽 (stereoscopic) 3D 서비스를 위한 비디오 스트림 컴포넌트 (video stream component) 인 경우 MP_table 내의 asset _descriptor 로써 뷰 포지션 디스크립터 (view_position_descriptor, d33010)를 포함할 수 있다. 뷰 포지션 디스크립터 (view_position_descriptor)는 스테레오스코픽 3D 파라미터 정보 등을 포함할 수 있다. 이는 MMT 의 다른 시그널링 테이블 혹은 DVB 의 SI (SDT 또는 EIT) 등에 포함될 수도 있다. 뷰 포지션 디스크립터는 다음의 필드들 중 적어도 하나를 포함할 수 있다. descriptor_tag 필드는 뷰 포지션 디스크립터 (view_position_descriptor) 에 대한 식별자 일 수 있다. descriptor_length 필드는 뷰 포지션 디스크립터 (view_position_descriptor) 의 길이를 나타낼 수 있다. right_view_flag 필드는 해당 비디오 스트림 (video stream)의 컴포넌트 (component)가 우측 시점 (right view) 컴포넌트인지 여부를 나타낼 수 있다. 필드 값이 0인 경우, 해당 비디오 스트림 (video stream)의 컴포넌트 (component)가 좌측 시점 (left view) 컴포넌트임을 나타내고, 필드 값이 1인 경우 우측 시점 (right view) 컴포넌트임을 나타낼 수 있다.
MMT asset 이 멀티뷰 (Multiview) 서비스를 위한 비디오 스트림 컴포넌트 (video stream component) 인 경우 MP_table 내의 asset _descriptor 로써 뷰 포지션 디스크립터 (view_position2_descriptor, d33020)를 포함할 수 있다. 뷰 포지션 디스크립터 (view_position2_descriptor)는 멀티뷰 (Multiview) 파라미터 정보 등을 포함할 수 있다. 뷰 포지션 디스크립터 (view_position2_descriptor)는 컴포넌트 간의 의존성 (dependency) 정보도 포함하고 있다. 이는 MMT 의 다른 시그널링 테이블 혹은 DVB 의 SI (SDT 또는 EIT) 등에 포함될 수도 있다. 뷰 포지션 디스크립터(view_position2_descriptor)는 다음의 필드들 중 적어도 하나를 포함할 수 있다. descriptor_tag 필드는 뷰 포지션 디스크립터 (view_position2_descriptor)에 대한 식별자 일 수 있다. descriptor_length 필드는 해당 뷰 포지션 디스크립터 (view_position2_descriptor)의 길이를 나타낼 수 있다. num_of_views 필드는 해당 뷰 포지션 디스크립터 (view_position2_descriptor)에 포함된 총 view의 개수를 의미할 수 있다. 즉, 멀티뷰 서비스에서 제공하는 시점 (view)의 총 개수를 나타낼 수 있다. view_position 필드는 멀티뷰 (Multiview)인 경우 해당 비디오 컴포넌트 (video component)의 뷰 포지션 (view position) 정보를 의미할 수 있다. 여기서 시점 위치 정보는 멀티뷰 중 가장 좌측에 위치한 첫번째 시점에 대해 0으로 설정될 수 있다. 또한, 시점 위치 정보는 첫번째 시점으로부터 다음 시점으로 좌측에서 우측으로 이동될 때마다 1씩 증가하는 값으로 설정될 수 있다. (The view position means the order for the left-most view being equal to 0 and the value of the order increasing by 1 for next view from left to right.) 여기서 멀티뷰 (Multiview)는 3D 멀티뷰 (Multiview) 나 파노라마 (panorama)를 위한 멀티뷰 (Multiview) 일 수 있다. 여기서, 3D 멀티뷰인 경우, 전술한 뷰 포지션 (view position) 정보는 각 시점 (view)에 대한 좌측 시점 (left view) 또는 우측 시점 (right view)의 의미를 포함할 수 있다. 즉, 숫자로 표현되는 뷰 포지션 (view position) 정보로부터, 해당 컴포넌트에 포함된 시점 (view)이 3D 서비스를 제공하기 위한 좌측 시점 (left view) 또는 우측 시점 (right view)인지를 확인할 수 있다.
도 34 는 본 발명의 일 실시예에 따른, HDR 정보 처리 능력에 기반한 수신기의 미디어 엔진 동작을 도시한 도면이다.
수신기의 파서(ISOBMFF 파서)는 ISOBMFF 기반 미디어 파일, DASH 세그먼트 및/또는 MMT MPU 등을 파싱할 수 있다. 파싱한 결과에 따라 비디오 샘플들은 비디오 디코더로 전달되고, HDR 정보(메타데이터)는 메타데이터 파서로 전달될 수 있다.
비디오 디코더는 비디오 샘플들을 디코딩하여 HDR 비디오 데이터들을 획득할 수 있다. 이 과정에서 획득한 HDR 정보가 있는 경우 이를 메타데이터 파서로 전달할 수 있다. DASH/ MMT 등의 시그널링 메시지가 수신되면, 시그널링 프로세서는 이들로부터 HDR 메타데이터를 추출해 메타 데이터 파서로 전달할 수 있다. 메타데이터 파서는 전달받은 HDR 메타데이터들을 파싱할 수 있다. 여기서 획득한 메타데이터를 이용해 비디오 디코더에 필요한 컨트롤 정보 등이 비디오 디코더로 전달될 수 있다. 메타데이터 파서는 버퍼 내지 메타데이터 업데이트 역할을 수행할 수도 있다. 업데이트는 set_number, version_number 등을 이용해 수행될 수 있다.
수신기가 HDR 디스플레이가 가능한지에 따라 경우의 수가 나뉠 수 있다. HDR 비디오의 디스플레이가 불가능한 경우, HDR 비디오 데이터는 HDR-SDR 컨버전을 거쳐 SDR 디스플레이 블락으로 전달될 수 있다. SDR 디스플레이 블락은 하드웨어 블락으로서, 컨버전된 SDR 비디오를 전달받아 재생할 수 있다. 이 때, 컨버전에는 메타데이터 파서로부터 전달받은 정보가 사용될 수 있다.
수신기가 HDR 디스플레이가 가능한 경우, HDR 비디오에 대해 퀄리티 인핸스먼트가 수행될 수 있다. 이 때 메타데이터 파서로부터 전달받은 공통된(common) HDR 정보(Dynamic range, transfer function, color gamut, color temperature, DR/CG mapping, Viewing condition 등) 를 이용하여 퀄리티 인핸스먼트가 수행될 수 있다.
수신기가 신/프레임(scene/frame) 별 메타데이터를 처리할 수 있는 경우에 따라 경우의 수가 나뉠 수 있다. 신/프레임별 메타데이터를 처리할 수 없는 경우, 수신기의 HDR 디스플레이 블락은 전달받은 HDR 비디오 데이터를 재생할 수 있다.
신/프레임별 메타데이터가 처리될 수 있는 경우, 신 별 HDR 비디오 퀄리티 인핸스먼트(Scene-by-Scene HDR video quality enhancement)가 수행될 수 있다. 이 때, 메타데이터 파서로부터 전달받은 신/프레임 HDR 메타데이터(While levels, Black levels, frame-by-frame, DR/CG mapping 등) 를 이용하여 퀄리티 인핸스먼트가 수행될 수 있다. 이 경우, 수신기의 HDR 디스플레이 블락은 인핸스드된 HDR 비디오 데이터를 재생할 수 있다. HDR 디스플레이 블락은 하드웨어 블락일 수 있다.
타이밍 컨버터는 메타데이터 파서, 싱크로나이저 등으로 타임 관련 정보를 전달할 수 있다. 싱크로 나이저는 sync_start, sync_duration 등의 정보를 활용하여, 신 별 HDR 비디오 퀄리티 인핸스먼트 동작에 필요한 정보를 제공할 수 있다.
도 35 는 본 발명의 일 실시예에 따른, WCG 정보 처리 능력에 기반한 수신기의 미디어 엔진 동작을 도시한 도면이다.
수신기의 파서(ISOBMFF 파서)는 ISOBMFF 기반 미디어 파일, DASH 세그먼트 및/또는 MMT MPU 등을 파싱할 수 있다. 파싱한 결과에 따라 WCG 비디오 샘플들은 비디오 디코더로 전달되고, color gamut 정보(메타데이터)는 메타데이터 파서로 전달될 수 있다.
비디오 디코더는 비디오 샘플들을 디코딩하여 WCG 비디오 데이터들을 획득할 수 있다. 이 과정에서 획득한 color gamut 관련 정보가 있는 경우 이를 메타데이터 파서로 전달할 수 있다. DASH/ MMT 등의 시그널링 메시지가 수신되면, 시그널링 프로세서는 이들로부터 color gamut 메타데이터를 추출해 메타 데이터 파서로 전달할 수 있다. 메타데이터 파서는 전달받은 color gamut 메타데이터들을 파싱할 수 있다. 여기서 획득한 컨테이너/컨텐트 color gamut 정보가 수신기 처리 과정에서 활용될 수 있다. 메타데이터 파서는 버퍼 내지 메타데이터 업데이트 역할을 수행할 수도 있다. 업데이트는 set_number, version_number 등을 이용해 수행될 수 있다.
수신한 데이터에 대하여, 컨텐트 color gamut 정보가 포함되어 있는지에 따라 경우의 수가 나뉠 수 있다. 컨텐트 color gamut 정보가 포함되어 있지 않은 경우, 수신기는 디스플레이 color gamut 이 컨테이너 color gamut 보다 크거나 같은지를 판단할 수 있다. 디스플레이 color gamut 이 컨테이너 color gamut 보다 크거나 같은 경우, 수신기는 완전한(full) WCG 디스플레이를 제공할 수 있다. 디스플레이 color gamut 이 컨테이너 color gamut 보다 작은 경우, 수신기는 컨테이너 color gamut 으로부터 디스플레이 color gamut 으로 gamut 매핑을 수행할 수 있다. 이 후 수신기는 SCG 디스플레이 또는 파셜(partial) WCG 디스플레이를 제공할 수 있다. 이 과정에서 메타데이터 파서로부터 전달받은 공통(common) 컨테이너 color gamut 관련 정보들이 활용될 수 있다.
반대로 수신한 데이터에 대하여, 컨텐트 color gamut 정보가 포함되어 있는 경우, 수신기는 디스플레이 color gamut 이 컨텐트 color gamut 보다 크거나 같은지를 판단할 수 있다. 디스플레이 color gamut 이 컨텐트 color gamut 보다 크거나 같은 경우, 수신기는 완전한(full) WCG 디스플레이를 제공할 수 있다. 디스플레이 color gamut 이 컨텐트 color gamut 보다 작은 경우, 수신기는 컨텐트 color gamut 으로부터 디스플레이 color gamut 으로 gamut 매핑을 수행할 수 있다. 이 후 수신기는 SCG 디스플레이 또는 파셜(partial) WCG 디스플레이를 제공할 수 있다. 이 과정에서 메타데이터 파서로부터 전달받은 공통(common) 컨텐트 color gamut 관련 정보들이 활용될 수 있다.
도 36 은 본 발명의 일 실시예에 따른, HFR 정보 처리 능력에 기반한 수신기의 미디어 엔진 동작을 도시한 도면이다.
수신기의 파서(ISOBMFF 파서)는 ISOBMFF 기반 미디어 파일, DASH 세그먼트 및/또는 MMT MPU 등을 파싱할 수 있다. 파싱한 결과에 따라 HFR 비디오 데이터들이 획득될 수 있다.
DASH MPD 또는 MMT 기반의 시그널링 메시지가 수신되면, 시그널링 프로세서는 이들로부터 HFR 메타데이터를 추출해 메타 데이터 파서로 전달할 수 있다. 메타데이터 파서는 전달받은 HFR 메타데이터들을 파싱할 수 있다. 여기서 획득한 HFR 정보가 수신기 처리 과정에서 활용될 수 있다. 메타데이터 파서는 버퍼 내지 메타데이터 업데이트 역할을 수행할 수도 있다. 업데이트는 set_number, version_number 등을 이용해 수행될 수 있다.
HFR 비디오 데이터에 대하여, HFR 디코딩/디스플레이가 수행될 수 있는 경우, HFR 비디오 데이터는 비디오 디코더로 전달될 수 있다. HFR 비디오 디코더는 비디오 샘플들을 디코딩할 수 있다. 이 때 HFR 메타데이터가 획득되면, 이를 메타데이터 파서로 전달할 수도 있다. HFR 비디오 디코더는 디코딩한 데이터를 HFR 디스플레이로 전달하고, HFR 디스플레이는 이를 디스플레이할 수 있다.
HFR 디코딩/디스플레이가 수행될 수 없는 경우, SFR 과의 호환성을 확인할 수 있다. SFRCompatibility 가 1 의 값을 가지는 경우, 호환성이 있는 것이고, 프레임 레이트 변환이 수행될 수 있다. 변환후의 데이터는 SFR 또는 레거시 비디오 디코더로 전달될 수 있다. 이 과정에서 메타데이터 파서로부터 HFR 메타데이터를 전달받아 활용할 수 있다. 비디오 디코딩 과정에서 HFR 메타데이터가 획득되는 경우, 이를 메타데이터 파서로 전달할 수도 있다. 비디오 디코더는 이를 레거시 디스플레이로 전달할 수 있다. 이 비디오 데이터는 오리지널 프레임 레이트로 변환된 비디오 데이터일 수 있다. 레거시 디스플레이는 이를 디스플레이할 수 있다.
도 37 은 본 발명의 일 실시예에 따른, 풀다운 리커버리 정보 처리 능력에 기반한 수신기의 미디어 엔진 동작을 도시한 도면이다.
수신기의 파서(ISOBMFF 파서)는 ISOBMFF 기반 미디어 파일, DASH 세그먼트 및/또는 MMT MPU 등을 파싱할 수 있다. 파싱한 결과에 따라 비디오 샘플들은 비디오 디코더로 전달되어 디코딩될 수 있다.
DASH MPD 또는 MMT 기반의 시그널링 메시지가 수신되면, 시그널링 프로세서는 이들로부터 풀다운 리커버리 관련 메타데이터를 추출해 메타 데이터 파서로 전달할 수 있다. 메타데이터 파서는 전달받은 풀다운 리커버리 관련 메타데이터들을 파싱할 수 있다. 여기서 획득한 풀다운 리커버리 관련 정보가 수신기 처리 과정에서 활용될 수 있다. 메타데이터 파서는 버퍼 내지 메타데이터 업데이트 역할을 수행할 수도 있다. 업데이트는 set_number, version_number 등을 이용해 수행될 수 있다.
수신기는 PullDownFlag 를 확인하여, 디코딩된 비디오가 풀다운된 비디오인지 아닌지 확인할 수 있다. 수신기는 풀다운된 비디오인 경우, 오리지널 FR 스트림을, 풀다운된 타입 등의 정보를 이용하여 복구할 수 있다. 이 과정에서 메타데이터 파서의 풀다운 리커버리 관련 정보가 활용될 수 있다. 풀다운된 비디오가 아닌 경우, 이러한 과정을 거치지 않을 수 있다. 리커버된 소스 FR 비디오 또는 디코딩된 비디오 데이터는 디스플레이로 전달되어 디스플레이될 수 있다.
도 38 은 본 발명의 일 실시예에 따른 3D 서비스를 지원하기 위한 메타데이터를 나타낸다. 본 발명의 일 실시예에 따르면, 비디오 데이터는 3D 서비스를 지원하기 위한 메타데이터를 포함하는 SEI 메시지를 포함할 수 있다. 본 발명에서 3D 서비스를 지원하는 컨텐트를 구성하는 레퍼런스 뷰 비디오 (reference view video) 및 어디셔널 뷰 비디오 (additional view video)를 위한 컴프레션 포맷은 HD 또는 UHD가 될 수 있다. 화면 비율과 관련하여, 레퍼런스 뷰 비디오 및 어디셔널 뷰 비디오는 액티브 영역 (active area)에 대해 동일한 화면 비율 (aspect ratio)를 가질 수 있다. 만약, 3D 서비스를 구성하는 좌측 이미지 (Left picture)와 우측 이미지 (right picture)의 화면 비율들이 정확히 동일하지 않는 경우, 더 작은 입력 이미지들은 레터 박스드(letterboxed)되거나 필러 박스드 (pillar boxed) 될 수 있다. 여기서 레터 박스드란 대상 이미지의 상하에 검은색 바(black bars) 등을 위치시켜 화면 비율을 조정하는 것을 의미할 수 있다. 또한 필러 박스드란 대상 이미지의 좌우에 검은색 바(black bars) 등을 위치시켜 화면 비율을 조정하는 것을 의미할 수 있다. 이러한 동작은 컴프레션 이전에 수행될 수 있으며, 두 개의 뷰가 액티브 영역에서 동일한 화면 비율을 갖도록 할 수 있다. 또한 전술한 이미지에 내장된 (embedded) 바(bars)의 존재는 액티브 포맷 디스크립터 (Active Format Description, AFD)에 의해 지시될 수 있다. 또한 바(bars)의 존재는 선택적으로는 바 데이터 정보 (Bar Data information)에 의해 지시될 수도 있다. 프레임 레이트 (Frame rate)와 관련하여, 어디셔널 뷰 비디오의 프레임 레이트는 레퍼런스 뷰 비디오의 프레임 레이트를 1 또는 그 이상의 정수로 나눈 값이 될 수 있다.
도면 상단에 도시된 실시예 (d38010)는 멀티뷰 뷰 포시젼 (multiview view position) SEI 메시지를 나타낼 수 있다. 해당 SEI 메시지는 비디오 데이터에 포함되어 함께 전송될 수 있다. 해당 SEI 메시지는 SHVC (Scalable HEVC, Scalable High Efficiency Video Coding)에 의해 운반되는 스테레오스코픽 비디오의 좌측 시점 및 우측 시점 (left view and right view)를 지시할 수 있다.
멀티뷰 뷰 포시젼 (multiview view position) SEI 메시지는 180의 값을 갖는 페이로드 타입 (payloadType) 정보에 의해 식별될수 있다. 도시된 바와 같이 멀티뷰 뷰 포시젼 (multiview view position) SEI 메시지는 num_views_minus1 필드 및 view_position[i] 정보를 포함할 수 있다. num_views_minus1 필드는 멀티뷰 서비스에 포함된 뷰의 개수를 나타낼 수 있다. 실시예에 따라 num_views_minus1 필드는 멀티뷰 서비스에 포함된 뷰의 개수보다 1만큼 적은 수를 나타낼 수 있다. 멀티뷰 뷰 포시젼 (multiview view position) SEI 메시지는 각 view에 대한 view_position[i] 정보를 포함할 수 있다. 픽스드 앤 모바일 (fixed & mobile) 하이브리드 3D 서비스를 위해, SEI 메시지 내의 view_position[i] 정보는 i 와 동일한디펜던시아이디 (DependencyId)를 갖는 뷰의 순서를 지시할 수 있다. 이러한 뷰는 디스플레이를 위한, 좌측부터 우측으로의 순서에 따른 뷰들 중 하나일 수 있다. 여기서 뷰의 순서는 가장 좌측에 위치한 뷰를 0으로 하고, 그로부터 우측으로 하나씩 이동함에 따라 1씩 증가하는 순서의 값을 의미할 수 있다. 예를 들어, 베이스 레이어 비디오가 우측 시점(right view)이고, 인핸스먼트 레이어 비디오가 좌측 시점 (left view)일 때, view_position[0]은 1이고, view_position[1]은 0일 수 있다. 즉 디펜던시아이디 1을 갖는 인핸스먼트 레이어 비디오가 좌측 시점이므로, 인핸스먼트 레이어 비디오의 뷰 포지션 정보는 0으로 설정될 수 있다. 또한 디펜던시아이디 0을 갖는 베이스 레이어 비디오가 우측 시점이므로, 베이스 레이어 비디오의 뷰 포지션 정보는 1로 설정될 수 있다.
도면 하단에 도시된 실시예 (d38020)는 멀티뷰 씬 포시젼 (multiview scene position) SEI 메시지를 나타낼 수 있다. 해당 SEI 메시지는 비디오 데이터에 포함되어 함께 전송될 수 있다. 해당 SEI 메시지는 min_disparity 정보 및/또는 max_disparity_range 정보를 포함할 수 있다. 멀티뷰 씬 포시젼 (multiview scene position) SEI 메시지는 페이로드 타입 (payloadType) 정보에 의해 식별될수 있다. 멀티뷰 씬 포시젼 (multiview scene position) SEI 메시지는 이미지를 3D 디스플레이에 렌더링하기에 앞서 디코딩된 뷰들(views)을 프로세싱하기 위해 사용될 수 있다. 최소 양안시차 (minimum disparity)는 비디오 내에서 가장 앞쪽에 위치하는 오브젝트 (front-most object)의 3차원 로케이션을 지시할 수 있다. OSD (on-screen display)와 같이 수신기가 생성하는 (receiver-generated) 그래픽을 상기 디코딩된 뷰들(views)보다 앞쪽에 렌더링하기 위해, 최소 양안시차 (minimum disparity)는
멀티뷰 씬 포시젼 (multiview scene position) SEI 메시지 내에 포함될 수 있다. 즉, 수신기는 비디오 데이터 내의 SEI 메시지 중 멀티뷰 씬 포시젼 (multiview scene position) SEI 메시지에 포함된 최소 양안시차 (minimum disparity) 정보를 이용하여 해당 비디오 데이터가 디스플레이되는 위치보다 앞쪽에, 수신기가 생성하는 그래픽 정보를 디스플레이할 수 있다. 전술한 실시예에서 각 SEI 메시지는 디펜던시아이디를 추가로 포함할 수 있다.
도 39 는 본 발명의 일 실시예에 따른 바(bar)에 대한 메타데이터를 나타낼 수 있다. 바(bar)에 대한 정보는 비디오 데이터 내에 SEI 메시지로써 포함되어 전송될 수 있다. 바(bar)에 대한 정보는 별도의 테이블 또는 디스크립터로써 SDT 또는 EIT 등의 DVB SI 서비스 시그널링에 포함되어 전달되거나, 함께 전달될 수 있다. 바(bar)에 대한 정보는 다음의 정보들 중 적어도 하나를 포함할 수 있다. top_bar_flag 필드는 디스플레이되는 화면의 위쪽에 bar가 존재하는지 여부를 나타낼 수 있다. bottom_bar_flag 필드는 디스플레이되는 화면의 아래쪽에 bar가 존재하는지 여부를 나타낼 수 있다. left_bar_flag 필드는 디스플레이되는 화면의 좌측에 bar가 존재하는지 여부를 나타낼 수 있다. right_bar_flag 필드는 디스플레이되는 화면의 우측에 bar가 존재하는지 여부를 나타낼 수 있다. top_bar_flag 필드가 1로 설정되는 경우, 즉 화면 위쪽에 bar가 존재하는 경우, marker_bits 필드 및 line_number_end_of_top_bar 필드가 바(bar)에 대한 메타데이터에 포함될 수 있다. line_number_end_of_top_bar 필드는 top bar의 마지막 line number를 정의할 수 있다. 즉 top bar는 화면 상단부터 line_number_end_of_top_bar 필드에 의해 정의되는 line 까지의 크기를 가질 수 있다. bottom_bar_flag 필드가 1로 설정되는 경우, 즉 화면 아래쪽에 bar가 존재하는 경우, marker_bits 필드 및 line_number_start_of_bottom_bar 필드가 바(bar)에 대한 메타데이터에 포함될 수 있다. line_number_start_of_bottom_bar 필드는 bottom bar의 시작 line number를 정의할 수 있다. 즉 bottom bar는 line_number_start_of_bottom_bar 필드에 의해 정의되는 line 부터 화면 하단까지의 크기를 가질 수 있다. left_bar_flag 필드가 1로 설정되는 경우, 즉 화면 좌측에 bar가 존재하는 경우, marker_bits 필드 및 pixel_number_ end_of_left_bar 필드가 바(bar)에 대한 메타데이터에 포함될 수 있다. pixel_number_end_of_left_bar 필드는 left bar의 마지막 pixel number를 정의할 수 있다. 즉 left bar는 화면 좌측 사이드부터 pixel_number_end_of_left_bar 필드에 의해 정의되는 pixel 까지의 크기를 가질 수 있다. right_bar_flag 필드가 1로 설정되는 경우, 즉 화면 우측에 bar가 존재하는 경우, marker_bits 필드 및 pixel_number_start_of_right_bar 필드가 바(bar)에 대한 메타데이터에 포함될 수 있다. pixel_number_start_of_right_bar 필드는 right bar의 시작 pixel number를 정의할 수 있다. 즉 right bar는 pixel_number_start_of_right_bar 필드에 의해 정의되는 pixel 부터 화면 우측 사이드까지의 크기를 가질 수 있다. 추가적으로 additional_bar_data가 더 포함될 수 있다. 전술한 필드들을 이용하여 바(bar)에 대한 정보는 화면상에 디스플레이되는 bar의 크기를 기술할 수 있다. 즉, 레터 박스 바(letter box bars)들의 크기는 전술한 바와 같이 line_number_end_of_top_bar 필드 및 line_number_start_of_bottom_bar 필드에 의해 지시될 수 있다. 또한 필러 박스 바(pillar box bars)들의 크기는 전술한 바와 같이 pixel_number_end_of_left_bar 필드 및 pixel_number_start_of_right_bar 필드에 의해 지시될 수 있다. 하지만, 이러한 필드들은 오리지널 소스 포맷 (original source format)에 기초하여 작성된 것이다. 즉, 해당 비디오 컨텐트의 제작 (production) 당시의 포맷에 기초한 line, pixel 값이므로 수신 상황에 따라 그 값이 의미하는 바가 달라질 수 있다. 즉, 송신단에서 전송된 비디오 포맷, 또는 송신단에서 인코딩된 비디오 포맷이 오리지널 소스 포맷과 다른 경우가 발생할 수 있다. 이는 전송을 위해 해당 비디오 컨텐트가 리사이징된 경우 등을 예로 들 수 있다. 이러한 경우, 수신단에서의 바(bar)에 대한 정보의 해석은 모호해질 수 있다. 이는 바(bar)에 대한 정보가 오리지널 소스 포맷에 기초한 값인데 비해, 컨텐트는 변경된 포맷을 갖기 때문이다.
도 40 은 본 발명의 일 실시예에 따른 오리지널 소스 포맷에 대한 메타데이터를 나타낼 수 있다. 오리지널 소스 포맷에 대한 정보는 비디오 데이터 내에 SEI 메시지로써 포함되어 전송될 수 있다. 오리지널 소스 포맷에 대한 정보는 별도의 테이블 또는 디스크립터로써 SDT 또는 EIT 등의 DVB SI 서비스 시그널링에 포함되어 전달되거나, 함께 전달될 수 있다. 오리지널 소스 포맷에 대한 정보는 다음의 정보들 중 적어도 하나를 포함할 수 있다. identical_format_flag 필드는 압축 포맷 (compression format)과 제작 포맷 (production format)이 같은지 여부를 나타낼 수 있다. compression flag와 production format이 같은 경우에 1로, 다른 경우에 0으로 signaling될 수 있다. 여기서 제작 포맷은 오리지널 소스 포맷을 의미할 수 있다. org_spatial_resolution 필드는 제작 (production) 단에서 촬영된 실제 공간 해상도 (spatial resolution)를 signaling할 수 있다. 예를 들어, 각 필드 값에 따른 해상도는 다음과 같을 수 있다. 0x0: unspecified; 0x1: 3840 x 2160; 0x2: 2160 x 1440; 0x3: 1920 x 1080; 0x4: 1280 x 720; 0x5: 960 x 540; 0x6: 640 x 360; 0x7: customized.
org_frame_rate 필드는 제작 (production) 단에서 촬영된 실제 프레임 레이트 (frame rate)를 시그널링할 수 있다. 예를 들어, 각 필드 값에 따른 프레임 레이트는 다음과 같을 수 있다. 0x0: reserved; 0x1 = 23.976 Hz, 0x2 = 24 Hz, 0x3 = 29.97 Hz, 0x4 = 30 Hz, 0x5 = 59.94 Hz, 0x6 = 60 Hz, 0x7 = 25 Hz, 0x08 = 50 Hz, 0x09 = 100 Hz, 0x0A = 120/1.001 Hz, 0x0B = 120 Hz.
scanning_format 필드는 스캐닝 포맷이 interlaced 인지 progressive인지를 시그널링할 수 있다. 예를 들어, 각 필드 값에 따른 스캐닝 포맷은 다음과 같을 수 있다. 00: unspecified, 01: progressive, 10: interlaced, 11: reserved.
org_horizontal_size_div_8 필드 및 org_vertical_size_div_8 필드는 제작 (production) 단에서 촬영된 실제 spatial resolution에서 pre-defined format이 아닌 경우를 시그널링할 수 있다. 즉, 기설정된 값을 시그널링하는 것이 아니라 실제 production format의 가로 및 세로 해상도의 값을 나타낸다. 실제 가로 및 세로 해상도는 각 필드 값에 8을 곱한 값일 수 있다. 이와 같이 오리지널 소스 포맷에 대한 정보는 원작자 의도(Artistric intent)를 반영할 수 있는 정보로써 이용될 수 있다.
도 41 은 본 발명의 일 실시예에 따른 바 데이터 (bar data)를 이용하여 레터 박스를 생성하는 방법을 나타낸다. 그 첫번째 케이스로써 방송 시스템이 송출하는 에미션 포맷 (emission format)이 프로덕션 포맷 (production format)과 동일한 경우이다. 예를 들어 에미션 포맷, 즉 인코딩된 비디오의 해상도는 3840*2160 일 수 있다. 또한 프로덕션 포맷, 즉 오리지널 소스 비디오의 해상도는 동일하게 3840*2160 일 수 있다. 이 경우 전술한 오리지널 소스 포맷에 대한 정보에 포함된 identical_format_flag 필드는 1로 설정될 수 있다. 또한 바에 대한 정보 (bar_data, d41010)에서 top_bar_flag 필드 및 bottom_bar_flag 필드는 1로 설정되어 상측 bar (top bar)와 하측 bar (bottom bar)를 이용한 레터 박스가 생성됨을 나타낼 수 있다. 또한 바에 대한 정보 (bar_data, d41010)에서 line_number_end_of_top_bar 필드는 A 값을 갖고, line_number_start_of_bottom_bar 필드는 B 값을 가질 수 있다. 이 경우, d41020에 도시된 바와 같이 top bar는 A+1의 수직 크기를 가질 수 있다. 여기서 top bar의 수평 크기는 프로덕션 포맷의 수평 크기와 동일할 수 있다. 또한 bottom bar는 V-B의 수직 크기를 가질 수 있다. 여기서 V는 프로덕션 포맷의 수직 크기를 나타낼 수 있다. 즉, 프로덕션 포맷이 3840*2160 이므로 V는 2160의 값을 가질 수 있으며, bottom bar는 2160-B의 수직 크기를 가질 수 있다. 여기서 bottom bar의 수평 크기는 에미션 포맷 또는 프로덕션 포맷의 수평 크기와 동일할 수 있다. 이와 같이 프로덕션 포맷과 에미션 포맷이 동일한 경우, 방송 수신 장치는 에미션 포맷에 bar_data에 포함된 정보를 그대로 적용하여 레터 박스의 크기를 산출하고 레터 박스를 생성할 수 있다. 방송 수신 장치의 디스플레이에서 생성된 레터 박스를 제외한 영역이 액티브 이미지 영역 (active image area)이 될 수 있다.
도 42 는 본 발명의 다른 실시예에 따른 바 데이터 (bar data)를 이용하여 레터 박스를 생성하는 방법을 나타낸다. 본 도면에서는 방송 시스템이 송출하는 에미션 포맷 (emission format)이 프로덕션 포맷 (production format)과 다른 경우에 대해 설명할 수 있다. 두번째 케이스로써 방송 시스템이 송출하는 에미션 포맷 (emission format)이 프로덕션 포맷 (production format)보다 작은 경우이다(d42010). 예를 들어 에미션 포맷, 즉 인코딩된 비디오의 해상도는 1920*1080 일 수 있다. 또한 프로덕션 포맷, 즉 오리지널 소스 비디오의 해상도는 이보다 큰 3840*2160 일 수 있다. 이 경우 전술한 오리지널 소스 포맷에 대한 정보에 포함된 identical_format_flag 필드는 0으로 설정될 수 있다. 또한 바에 대한 정보에서 top_bar_flag 필드 및 bottom_bar_flag 필드는 1로 설정되어 상측 bar (top bar)와 하측 bar (bottom bar)를 이용한 레터 박스가 생성됨을 나타낼 수 있다. 또한 바에 대한 정보에서 line_number_end_of_top_bar 필드는 A 값을 갖고, line_number_start_of_bottom_bar 필드는 B 값을 가질 수 있다. 이 경우, d42010에 도시된 바와 같이 top bar는 (A+1)/R의 수직 크기를 가질 수 있다. 여기서 R은 에미션 포맷과 프로덕션 포맷 사이의 비율이다. 실시예에서 프로덕션 포맷 (3840*2160)은 에미션 포맷 (1920*1080)의 2배 크기를 가지므로, R 값은 2가 될 수 있다. 실시예에 따라 R은 프로덕션 포맷의 수직 크기인 V를 에미션 포맷의 수직 크기로 나눈 값을 의미할 수 있다. 이 경우에도 R 값은 2이다. 여기서 top bar의 수평 크기는 에미션 포맷의 수평 크기와 동일할 수 있다. 또한 bottom bar는 (V-B)/R의 수직 크기를 가질 수 있다. 여기서 V는 프로덕션 포맷의 수직 크기를 나타낼 수 있다. 즉, 프로덕션 포맷이 3840*2160 이므로 V는 2160의 값을 가질 수 있으며, bottom bar는 (2160-B)/2의 수직 크기를 가질 수 있다. 여기서 bottom bar의 수평 크기는 에미션 포맷의 수평 크기와 동일할 수 있다. 이와 같이 프로덕션 포맷이 에미션 포맷보다 큰 경우, 방송 수신 장치는 bar_data에 포함된 정보를 프로덕션 포맷에 적용하고, 프로덕션 포맷과 에미션 포맷 사이의 비율에 따라 스케일링하여 bar의 크기를 결정하고 bar를 생성할 수 있다. 즉, 방송 수신 장치는 바에 대한 정보와 함께 수신된 오리지널 소스 포맷에 대한 정보를 이용하여, 에미션 포맷에서의 bar 크기를 확인하고 스케일링을 통한 레터 박스 생성을 수행할 수 있다. 방송 수신 장치의 디스플레이에서 생성된 레터 박스를 제외한 영역이 액티브 이미지 영역 (active image area)이 될 수 있다.
세번째 케이스로써 방송 시스템이 송출하는 에미션 포맷 (emission format)이 프로덕션 포맷 (production format)보다 큰 경우이다(d42020). 예를 들어 에미션 포맷, 즉 인코딩된 비디오의 해상도는 1920*1080 일 수 있다. 또한 프로덕션 포맷, 즉 오리지널 소스 비디오의 해상도는 이보다 작은 1280*720 일 수 있다. 이 경우 전술한 오리지널 소스 포맷에 대한 정보에 포함된 identical_format_flag 필드는 0으로 설정될 수 있다. 또한 바에 대한 정보에서 top_bar_flag 필드 및 bottom_bar_flag 필드는 1로 설정되어 상측 bar (top bar)와 하측 bar (bottom bar)를 이용한 레터 박스가 생성됨을 나타낼 수 있다. 또한 바에 대한 정보에서 line_number_end_of_top_bar 필드는 A 값을 갖고, line_number_start_of_bottom_bar 필드는 B 값을 가질 수 있다. 이 경우, d42020에 도시된 바와 같이 top bar는 (A+1)*F의 수직 크기를 가질 수 있다. 여기서 F은 에미션 포맷과 프로덕션 포맷 사이의 비율이다. 실시예에서 에미션 포맷 (1920*1080)은 프로덕션 포맷 (1280*720)의 1.5배 크기를 가지므로, F 값은 1.5가 될 수 있다. 실시예에 따라 F는 에미션 포맷의 수직 크기를 프로덕션 포맷의 수직 크기인 V로 나눈 값을 의미할 수 있다. 이 경우에도 F 값은 1.5이다. 여기서 top bar의 수평 크기는 에미션 포맷의 수평 크기와 동일할 수 있다. 또한 bottom bar는 (V-B)*F의 수직 크기를 가질 수 있다. 여기서 V는 프로덕션 포맷의 수직 크기를 나타낼 수 있다. 즉, 프로덕션 포맷이 1280*720 이므로 V는 720의 값을 가질 수 있으며, bottom bar는 (720-B)*1.5의 수직 크기를 가질 수 있다. 여기서 bottom bar의 수평 크기는 에미션 포맷의 수평 크기와 동일할 수 있다. 이와 같이 프로덕션 포맷이 에미션 포맷보다 작은 경우, 방송 수신 장치는 bar_data에 포함된 정보를 프로덕션 포맷에 적용하고, 프로덕션 포맷과 에미션 포맷 사이의 비율에 따라 스케일링하여 bar의 크기를 결정하고 bar를 생성할 수 있다. 즉, 방송 수신 장치는 바에 대한 정보와 함께 수신된 오리지널 소스 포맷에 대한 정보를 이용하여, 에미션 포맷에서의 bar 크기를 확인하고 스케일링을 통한 레터 박스 생성을 수행할 수 있다. 방송 수신 장치의 디스플레이에서 생성된 레터 박스를 제외한 영역이 액티브 이미지 영역 (active image area)이 될 수 있다.
도 43 은 본 발명의 일 실시예에 따른 바 데이터 (bar data)를 이용하여 필러 박스 (pillarbox)를 생성하는 방법을 나타낸다. 그 첫번째 케이스로써 방송 시스템이 송출하는 에미션 포맷 (emission format)이 프로덕션 포맷 (production format)과 동일한 경우이다. 예를 들어 에미션 포맷, 즉 인코딩된 비디오의 해상도는 3840*2160 일 수 있다. 또한 프로덕션 포맷, 즉 오리지널 소스 비디오의 해상도는 동일하게 3840*2160 일 수 있다. 이 경우 전술한 오리지널 소스 포맷에 대한 정보에 포함된 identical_format_flag 필드는 1로 설정될 수 있다. 또한 바에 대한 정보 (bar_data, d43010)에서 left_bar_flag 필드 및 right_bar_flag 필드는 1로 설정되어 좌측 bar (left bar)와 우측 bar (right bar)를 이용한 필러 박스가 생성됨을 나타낼 수 있다. 또한 바에 대한 정보 (bar_data, d43010)에서 pixel_number_end_of_left_bar 필드는 C 값을 갖고, pixel_number_start_of_right_bar 필드는 D 값을 가질 수 있다. 이 경우, d43020에 도시된 바와 같이 left bar는 C+1의 수평 크기를 가질 수 있다. 여기서 left bar의 수직 크기는 프로덕션 포맷의 수직 크기와 동일할 수 있다. 또한 right bar는 H-B의 수평 크기를 가질 수 있다. 여기서 H는 프로덕션 포맷의 수평 크기를 나타낼 수 있다. 즉, 프로덕션 포맷이 3840*2160 이므로 H는 2160의 값을 가질 수 있으며, right bar는 2160-D의 수평 크기를 가질 수 있다. 여기서 right bar의 수직 크기는 에미션 포맷 또는 프로덕션 포맷의 수직 크기와 동일할 수 있다. 이와 같이 프로덕션 포맷과 에미션 포맷이 동일한 경우, 방송 수신 장치는 에미션 포맷에 bar_data에 포함된 정보를 그대로 적용하여 필러 박스의 크기를 산출하고 필러 박스를 생성할 수 있다. 방송 수신 장치의 디스플레이에서 생성된 필러 박스를 제외한 영역이 액티브 이미지 영역 (active image area)이 될 수 있다.
도 44 는 본 발명의 다른 실시예에 따른 바 데이터 (bar data)를 이용하여 필러 박스를 생성하는 방법을 나타낸다. 본 도면에서는 방송 시스템이 송출하는 에미션 포맷 (emission format)이 프로덕션 포맷 (production format)과 다른 경우에 대해 설명할 수 있다. 두번째 케이스로써 방송 시스템이 송출하는 에미션 포맷 (emission format)이 프로덕션 포맷 (production format)보다 작은 경우이다(d44010). 예를 들어 에미션 포맷, 즉 인코딩된 비디오의 해상도는 1920*1080 일 수 있다. 또한 프로덕션 포맷, 즉 오리지널 소스 비디오의 해상도는 이보다 큰 3840*2160 일 수 있다. 이 경우 전술한 오리지널 소스 포맷에 대한 정보에 포함된 identical_format_flag 필드는 0으로 설정될 수 있다. 또한 바에 대한 정보 (bar_data, d43010)에서 left_bar_flag 필드 및 right_bar_flag 필드는 1로 설정되어 좌측 bar (left bar)와 우측 bar (right bar)를 이용한 필러 박스가 생성됨을 나타낼 수 있다. 또한 바에 대한 정보 (bar_data, d43010)에서 pixel_number_end_of_left_bar 필드는 C 값을 갖고, pixel_number_start_of_right_bar 필드는 D 값을 가질 수 있다. 이 경우, d44010에 도시된 바와 같이 left bar는 (C+1)/R의 수평 크기를 가질 수 있다. 여기서 R은 에미션 포맷과 프로덕션 포맷 사이의 비율이다. 실시예에서 프로덕션 포맷 (3840*2160)은 에미션 포맷 (1920*1080)의 2배 크기를 가지므로, R 값은 2가 될 수 있다. 실시예에 따라 R은 프로덕션 포맷의 수평 크기인 H를 에미션 포맷의 수평 크기로 나눈 값을 의미할 수 있다. 이 경우에도 R 값은 2이다. 여기서 left bar의 수직 크기는 에미션 포맷의 수직 크기와 동일할 수 있다. 또한 right bar는 (H-D)/R의 수평 크기를 가질 수 있다. 여기서 H는 프로덕션 포맷의 수평 크기를 나타낼 수 있다. 즉, 프로덕션 포맷이 3840*2160 이므로 H는 3840의 값을 가질 수 있으며, right bar는 (3840-B)/2의 수평 크기를 가질 수 있다. 여기서 right bar의 수직 크기는 에미션 포맷의 수직 크기와 동일할 수 있다. 이와 같이 프로덕션 포맷이 에미션 포맷보다 큰 경우, 방송 수신 장치는 bar_data에 포함된 정보를 프로덕션 포맷에 적용하고, 프로덕션 포맷과 에미션 포맷 사이의 비율에 따라 스케일링하여 bar의 크기를 결정하고 bar를 생성할 수 있다. 즉, 방송 수신 장치는 바에 대한 정보와 함께 수신된 오리지널 소스 포맷에 대한 정보를 이용하여, 에미션 포맷에서의 bar 크기를 확인하고 스케일링을 통한 필러 박스 생성을 수행할 수 있다. 방송 수신 장치의 디스플레이에서 생성된 필러 박스를 제외한 영역이 액티브 이미지 영역 (active image area)이 될 수 있다.
세번째 케이스로써 방송 시스템이 송출하는 에미션 포맷 (emission format)이 프로덕션 포맷 (production format)보다 큰 경우이다(d44020). 예를 들어 에미션 포맷, 즉 인코딩된 비디오의 해상도는 1920*1080 일 수 있다. 또한 프로덕션 포맷, 즉 오리지널 소스 비디오의 해상도는 이보다 작은 1280*720 일 수 있다. 이 경우 전술한 오리지널 소스 포맷에 대한 정보에 포함된 identical_format_flag 필드는 0으로 설정될 수 있다. 또한 바에 대한 정보에서 left_bar_flag 필드 및 right_bar_flag 필드는 1로 설정되어 좌측 bar (left bar)와 우측 bar (right bar)를 이용한 필러 박스가 생성됨을 나타낼 수 있다. 또한 바에 대한 정보에서 pixel_number_end_of_left_bar 필드는 C 값을 갖고, pixel_number_start_of_right_bar 필드는 D 값을 가질 수 있다. 이 경우, d44020에 도시된 바와 같이 left bar는 (C+1)*F의 수평 크기를 가질 수 있다. 여기서 F는 에미션 포맷과 프로덕션 포맷 사이의 비율이다. 실시예에서 에미션 포맷 (1920*1080)은 프로덕션 포맷 (1280*720)의 1.5배 크기를 가지므로, F 값은 1.5가 될 수 있다. 실시예에 따라 F는 에미션 포맷의 수직 크기를 프로덕션 포맷의 수직 크기로 나눈 값을 의미할 수 있다. 이 경우에도 F 값은 1.5이다. 여기서 left bar의 수직 크기는 에미션 포맷의 수직 크기와 동일할 수 있다. 또한 right bar는 (H-D)*F의 수평 크기를 가질 수 있다. 여기서 H는 프로덕션 포맷의 수평 크기를 나타낼 수 있다. 즉, 프로덕션 포맷이 1280*720 이므로 H는 1280의 값을 가질 수 있으며, right bar는 (1280-D)*1.5의 수평 크기를 가질 수 있다. 여기서 right bar의 수직 크기는 에미션 포맷의 수직 크기와 동일할 수 있다. 이와 같이 프로덕션 포맷이 에미션 포맷보다 작은 경우, 방송 수신 장치는 bar_data에 포함된 정보를 프로덕션 포맷에 적용하고, 프로덕션 포맷과 에미션 포맷 사이의 비율에 따라 스케일링하여 bar의 크기를 결정하고 bar를 생성할 수 있다. 즉, 방송 수신 장치는 바에 대한 정보와 함께 수신된 오리지널 소스 포맷에 대한 정보를 이용하여, 에미션 포맷에서의 bar 크기를 확인하고 스케일링을 통한 필러 박스 생성을 수행할 수 있다. 방송 수신 장치의 디스플레이에서 생성된 필러 박스를 제외한 영역이 액티브 이미지 영역 (active image area)이 될 수 있다.
도 45 는 본 발명의 일 실시예에 따른 방송 신호를 전송하는 방법을 도시한 도면이다.
본 발명의 일 실시예에 따른 방송 신호를 전송하는 방법은 서비스 데이터 및 서비스 시그널링 정보를 생성하는 단계(ds45010), 서비스 리스트 테이블을 생성하는 단계(ds45020), IP (Internet Protocol) 패킷들로 처리하는 단계 (ds45030) 및/또는 방송 신호를 생성하고, 이를 방송망을 통해 전송하는 단계(ds45040)를 포함할 수 있다.
먼저 송신측의 서비스 데이터 생성부(d46010)는 방송 서비스의 서비스 데이터 및/또는 방송 서비스를 시그널링하는 서비스 시그널링 정보를 생성할 수 있다. 여기서 서비스 데이터는 해당 방송 서비스에 포함되는 미디어 데이터, NRT 데이터, 스트리밍 데이터 등등을 총괄하는 개념일 수 있다. 서비스 데이터는 해당 서비스의 서비스 컴포넌트들을 포함할 수 있다. 여기서 서비스 시그널링 정보는 전술한 SLS 에 해당할 수 있다. 서비스 데이터 생성부는 서비스 프로바이더 측에서 서비스를 제공하기 위해 실제 서비스와 관련된 데이터들을 생성해내는 블락으로서, 하드웨어 엘레멘트일 수 있다.
송신측의 하위 레벨 시그널링 생성부(d46020)는 서비스 리스트 테이블을 생성할 수 있다. 서비스 리스트 테이블은 전술한 SLT 에 해당할 수 있다. 서비스 리스트 테이블은 전술한 것과 같이 서비스 시그널링 정보가 전달되는 전송 세션을 식별하는 부트스트랩 정보를 포함할 수 있다. 여기서 부트스트랩 정보는 전술한 바와 같다. 전송 세션은 실시예에 따라 MMTP 세션 및/또는 ROUTE 세션일 수 있다. 하위 레벨 시그널링 생성부는 SLT 등의 LLS (Low Level Signaling) 을 생성하는 것을 관장하는 블락으로서, 하드웨어 엘레멘트일 수 있다.
송신측의 전송 레이어 처리부(d46030)는 생성된 서비스 컴포넌트들, 서비스 시그널링 정보 및/또는 서비스 리스트 테이블을 IP 패킷들로 처리할 수 있다. 이에 앞서 해당 데이터들은 UDP 에 따라 처리될 수 있다. 전송 레이어 처리부는 상위 레이어의 데이터들을 전송을 위해 처리하는 것을 담당하는 블락으로서, 하드웨어 엘레멘트일 수 있다.
송신측의 피지컬 레이어 처리부(d46040)는 생성된 IP 패킷들을 처리하여 방송 신호를 생성하고, 방송 신호를 방송망을 통해 전송할 수 있다. 이 과정에서 전술한 링크 레이어에 다른 동작들이 먼저 수행되어 상위 레이어 데이터(IP 패킷 등)들이 링크 레이어 패킷으로 인캡슐레이션될 수 있다. 이 후 링크 레이어 패킷들이 피지컬 레이어에서 정의하는 동작들에 따라 인코딩/인터리빙 등의 과정을 거쳐 방송 신호로 처리될 수 있다. 생성된 방송 신호는 방송망 등을 통해 전송될 수 있다. 실시예에 따라 전술한 데이터들은 브로드밴드로 전달될 수도 있다. 피지컬 레이어 처리부는 전술한 링크 레이어 및/또는 피지컬 레이어를 담당하는 블락으로서, 하드웨어 엘레멘트일 수 있다.
본 발명의 다른 실시예에 따른 방송 신호를 전송하는 방법에서, 서비스 시그널링 정보는 USBD 를 포함할 수 있다. 전술한 바와 같이, USBD 는 방송 서비스와 관련된 기술적 정보들을 기술하는 시그널링 허브로서 동작할 수 있다. USBD 는 서비스 타입 정보를 더 포함할 수 있다. 여기서 서비스 타입 정보는 USBD 에서 기술하는 컴포넌트들을 조합하여 제공하는 최종 service의 타입을 의미할 수 있다. 서비스 타입 정보는 Stereoscopic 3D, Multiview 등이 될 수 있다.
본 발명의 또 다른 실시예에 따른 방송 신호를 전송하는 방법에서, 서비스 리스트 테이블 또는 USBD 는 캐패빌리티 정보를 더 포함할 수 있다. 이는 전술한 SLT 내지 USBD 내에 포함되는 다양한 캐패빌리티 정보를 의미할 수 있다. 캐패빌리티 정보는 방송 서비스를 유의미하게 프리젠테이션하는데 요구되는 적어도 하나 이상의 캐패빌리티를 기술할 수 있다. 여기서 캐패빌리티 정보는 기 정의된 캐패빌리티 코드를 이용해 기술될 수 있다. 실시예에 따라 캐패빌리티 정보는 캐패빌리티의 카테고리를 지시하는 캐패빌리티 카테고리 코드에 의해 기술될 수도 있다. 실시예에 따라 캐패빌리티 카테고리 코드와 해당 카테고리 내에서 구체적으로 어떤 캐패빌리티 정보를 의미하는지 지시하는 캐패빌리티 코드를 조합하여, 해당 캐패빌리티 정보가 기술될 수도 있다. 캐패빌리티 정보에 대해서는 전술한 바와 같다.
본 발명의 또 다른 실시예에 따른 방송 신호를 전송하는 방법에서, 방송 서비스의 서비스 시그널링 정보가 MMT 프로토콜에 의해 전달되는 경우, 서비스 시그널링 정보는 방송 서비스에 대한 캡션 정보를 포함하는 시그널링 메시지를 더 포함할수 있다. 전술한 바와 같이 MMTP 에 따라 SLS 가 전달되는 경우, MMTP 메시지를 통하여 시그널링 정보들이 전달될 수 있다. 실시예에 따라 MPT 메시지 또는 새로 정의되는 다른 MMTP 메시지 내에서 다양한 정보(멀티뷰, 캡션, 3D, WCG, HDR 등등)가 전달될 수 있다. 실시예에 따라 하나의 MMTP 메시지가 복수개의 정보들을 동시에 포함할 수도 있다. 또한 MPT 메시지 또는 새로 정의되는 다른 MMTP 메시지는 서비스 타입 정보를 더 포함할 수 있다. 여기서 서비스 타입 정보는 MPT 메시지 또는 새로 정의되는 다른 MMTP 메시지에서 기술하는 asset들을 조합하여 제공하는 최종 service의 타입을 의미할 수 있다. 서비스 타입 정보는 Stereoscopic 3D, Multiview 등이 될 수 있다.
이 캡션 정보는 해당 방송 서비스의 캡션의 언어를 지시하는 언어 정보, 캡션의 역할을 지시하는 역할 정보, 캡션의 종횡비(aspect ratio)를 지시하는 종횡비 정보, 캡션이 이지 리더(easy reader) 캡션인지 여부를 지시하는 이지 리더 정보 및/또는 캡션이 3D (3-Dimensional) 를 지원하는지 여부를 지시하는 3D 지원 정보 등을 포함할 수 있다. 캡션 정보에 대해서는 전술한 바와 같다. 전술한 바와 같이 멀티뷰 정보는 MPD 내에 포함될 수도 있다.
본 발명의 또 다른 실시예에 따른 방송 신호를 전송하는 방법에서, 시그널링 메시지는 방송 서비스의 서비스 컴포넌트들에 대한 3D 관련 정보를 더 포함할 수 있다. 여기서 시그널링 메시지는 MMTP 메시지 중 하나를 의미할 수 있다. 3D 관련 정보는 해당 서비스 컴포넌트의 영상(view)과 그 영상의 인접(adjacent) 영상들간의 최소 디스패리티 정보 및/또는 해당 영상과 인접 영상들간의 최대 디스패리티 정보를 포함할 수 있다. 3D 정보에 대해서는 전술한 바와 같다. 실시예에 따라 3D 관련 정보는 해당 서비스 컴포넌트의 영상(view)의 순서를 지시하는 뷰 포지션 정보를 더 포함할 수 있다. 실시예에 따라 뷰 포지션 정보는 다른 MMTP 메시지 또는 MPD 를 통해 전달될 수도 있다.
MPD를 통해 전달되는 뷰 포지션 정보는 3D 서비스와 관련하여 각 컴포넌트에 대해 우측 시점 정보 (right view flag)를 포함할 수 있다. 이는 해당 컴포넌트가 우측 시점 (right view)인지 또는 좌측 시점 (left view)인지 여부를 나타낼 수 있다. 또한 MPD를 통해 전달되는 뷰 포지션 정보는 멀티뷰 서비스와 관련하여 각 컴포넌트의 뷰 포지션 정보를 포함할 수 있다. 여기서 멀티뷰 서비스는 3D 멀티뷰 또는 파노라마 멀티뷰를 의미할 수 있다. 3D 멀티뷰인 경우 뷰 포지션 정보는 좌측 시점 또는 우측 시점을 나타낼 수 있다.
MMT asset 이 스테레오스코픽 3D 서비스를 위한 비디오 스트림 컴포넌트인 경우 MP table 내의 asset _descriptor로써 뷰 포지션 디스크립터를 포함할 수 있다. 뷰 포지션 디스크립터를 통해 전달되는 뷰 포지션 정보는 3D 서비스와 관련하여 각 컴포넌트에 대해 우측 시점 정보 (right view flag)를 포함할 수 있다. 이는 해당 컴포넌트가 우측 시점 (right view)인지 또는 좌측 시점 (left view)인지 여부를 나타낼 수 있다. 또한 MPD를 통해 전달되는 뷰 포지션 정보는 멀티뷰 서비스와 관련하여 각 컴포넌트의 뷰 포지션 정보를 포함할 수 있다. 여기서 멀티뷰 서비스는 3D 멀티뷰 또는 파노라마 멀티뷰를 의미할 수 있다. 3D 멀티뷰인 경우 뷰 포지션 정보는 좌측 시점 또는 우측 시점을 나타낼 수 있다.
본 발명의 또 다른 실시예에 따른 방송 신호를 전송하는 방법에서, USBD 는 방송 서비스의 서비스 컴포넌트들에 대한 컴포넌트 정보들을 포함할 수 있다. 컴포넌트 정보에 대해서는 전술한 바와 같을 수 있다. 컴포넌트 정보는 해당 서비스 컴포넌트의 타입을 지시하는 컴포넌트 타입 정보 및/또는 해당 서비스 컴포넌트의 타입에 따라 해당 서비스 컴포넌트의 역할을 지시하는 컴포넌트 역할(role) 정보를 포함할 수 있다. 각각의 정보는 전술한 @componentType 속성 및/또는 @componentRole 속성에 해당할 수 있다. 컴포넌트 역할 정보는 해당 방송 서비스의 오디오 또는 비디오 컴포넌트가 청각 또는 시각 장애인을 위한 서비스 컴포넌트인지 여부를 지시할 수 있다. 즉, 이 정보는 해당 컴포넌트가 hearing impaired / visually impaired 를 위한 컴포넌트인지 여부를 지시할 수 있다.
본 발명의 또 다른 실시예에 따른 방송 신호를 전송하는 방법에서, 방송 서비스의 서비스 시그널링 정보가 ROUTE 프로토콜에 의해 전달되는 경우, USBD 는 MPD 를 레퍼런싱하는 정보를 더 포함할 수 있다. MPD 는 전술한 바와 같이 방송 서비스의 서비스 데이터에 대한 리소스 식별자들 및/또는 리소스의 컨텍스트(context) 정보를 포함할 수 있다. 전술한 바와 같이 이 MPD 는 컴포넌트들에 대한 다양한 전술한 정보들을 포함할 수 있다. 실시예에 따라 MPD 는 방송 서비스에 대한 캡션 정보 및/또는 3D 관련 정보를 더 포함할 수 있다.
본 발명의 일 실시예에 따른 방송 신호를 수신하는 방법을 설명한다. 이 방법은 도면에 도시되지 아니하였다.
본 발명의 일 실시예에 따른 방송 신호를 수신하는 방법은 수신측의 피지컬 레이어 처리부가 방송 신호를 처리하고, 이로부터 IP 패킷들을 획득하는 단계, 하위레벨 시그널링 처리부가 SLT 를 획득하고 이로부터 부트스트랩 정보를 획득하는 단계, 부트스트랩 정보를 이용하여 SLS 를 전달하는 전송 세션을 식별하고, 그 전송 세션에 접근하여 SLS 를 획득하는 단계, 그 SLS 를 이용하여 방송 서비스의 서비스 컴포넌트들을 획득하는 단계 및/또는 디스플레이부가 획득된 서비스 컴포넌트들을 이용하여 방송 서비스를 제공하는 단계를 포함할 수 있다. 실시예에 따라 SLT 및/또는 SLS 의 정보들로부터 전술한 캡션, 3D, HDR, WCG, 멀티뷰 등등의 정보들이 획득될 수 있다. MMTP 또는 ROUTE 프로토콜중 어느 전송 프로토콜을 사용하는지에 따라, 해당 정보들은 SLS 의 MPD 또는 SLS 의 MMTP 메시지로부터 획득될 수 있다. 수신측의 피지컬 레이어 처리부, 하위 레벨 시그널링 처리부 및/또는 디스플레이부는 하드웨어 엘레멘트일 수 있다.
본 발명의 실시예들에 따른 방송 신호를 수신하는 방법들은, 전술한 본 발명의 실시예들에 따른 방송 신호를 전송하는 방법들에 대응될 수 있다. 방송 신호를 수신하는 방법들은, 방송 신호를 전송하는 방법에서 사용되는 모듈들(예를 들어, 서비스 데이터 생성부, 전송 레이어 처리부, 하위 레벨 시그널링 생성부, 피지컬 레이어 처리부 등)에 대응되는 하드웨어 모듈들에 의해 수행될 수 있다. 방송 신호를 수신하는 방법은, 전술한 방송 신호를 전송하는 방법의 실시예들에 대응되는 실시예들을 가질 수 있다.
전술한 단계들은 실시예에 따라 생략되거나, 유사/동일한 동작을 수행하는 다른 단계에 의해 대체될 수 있다.
도 46 은 본 발명의 일 실시예에 따른 방송 신호를 전송하는 장치를 도시한 도면이다.
본 발명의 일 실시예에 따른 방송 신호를 전송하는 장치는 전술한 서비스 데이터 생성부, 전송 레이어 처리부, 하위 레벨 시그널링 생성부 및/또는 피지컬 레이어 처리부를 포함할 수 있다. 각각의 블락, 모듈들은 전술한 바와 같다.
본 발명의 일 실시예에 따른 방송 신호를 전송하는 장치 및 그 내부 모듈/블락들은, 전술한 본 발명의 방송 신호를 전송하는 방법의 실시예들을 수행할 수 있다.
본 발명의 일 실시예에 따른 방송 신호를 수신하는 장치를 설명한다. 이 장치는 도면에 도시되지 아니하였다.
본 발명의 일 실시예에 따른 방송 신호를 수신하는 장치는 전술한 피지컬 레이어 처리부, 하위 레벨 시그널링 처리부 및/또는 디스플레이부를 포함할 수 있다. 각각의 블락, 모듈들은 전술한 바와 같다.
본 발명의 일 실시예에 따른 방송 신호를 수신하는 장치 및 그 내부 모듈/블락들은, 전술한 본 발명의 방송 신호를 수신하는 방법의 실시예들을 수행할 수 있다.
전술한 장치 내부의 블락/모듈 등은 메모리에 저장된 연속된 수행과정들을 실행하는 프로세서들일 수 있고, 실시예에 따라 장치 내/외부에 위치하는 하드웨어 엘레멘트들일 수 있다.
전술한 모듈들은 실시예에 따라 생략되거나, 유사/동일한 동작을 수행하는 다른 모듈에 의해 대체될 수 있다.
모듈 또는 유닛은 메모리(또는 저장 유닛)에 저장된 연속된 수행과정들을 실행하는 프로세서들일 수 있다. 전술한 실시예에 기술된 각 단계들은 하드웨어/프로세서들에 의해 수행될 수 있다. 전술한 실시예에 기술된 각 모듈/블락/유닛들은 하드웨어/프로세서로서 동작할 수 있다. 또한, 본 발명이 제시하는 방법들은 코드로서 실행될 수 있다. 이 코드는 프로세서가 읽을 수 있는 저장매체에 쓰여질 수 있고, 따라서 장치(apparatus)가 제공하는 프로세서에 의해 읽혀질 수 있다.
설명의 편의를 위하여 각 도면을 나누어 설명하였으나, 각 도면에 서술되어 있는 실시 예들을 병합하여 새로운 실시 예를 구현하도록 설계하는 것도 가능하다. 그리고, 통상의 기술자의 필요에 따라, 이전에 설명된 실시 예들을 실행하기 위한 프로그램이 기록되어 있는 컴퓨터에서 판독 가능한 기록 매체를 설계하는 것도 본 발명의 권리범위에 속한다.
본 발명에 따른 장치 및 방법은 상술한 바와 같이 설명된 실시 예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상술한 실시 예들은 다양한 변형이 이루어질 수 있도록 각 실시 예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.
한편, 본 발명이 제안하는 방법을 네트워크 디바이스에 구비된, 프로세서가 읽을 수 있는 기록매체에, 프로세서가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 프로세서가 읽을 수 있는 기록매체는 프로세서에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 프로세서가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한, 인터넷을 통한 전송 등과 같은 캐리어 웨이브의 형태로 구현되는 것도 포함한다. 또한, 프로세서가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 프로세서가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
또한, 이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해돼서는 안 될 것이다.
그리고, 당해 명세서에서는 물건 발명과 방법 발명이 모두 설명되고 있으며, 필요에 따라 양 발명의 설명은 보충적으로 적용될 수가 있다.
본 발명의 사상이나 범위를 벗어나지 않고 본 발명에서 다양한 변경 및 변형이 가능함은 당업자에게 이해된다. 따라서, 본 발명은 첨부된 청구항 및 그 동등 범위 내에서 제공되는 본 발명의 변경 및 변형을 포함하는 것으로 의도된다.
본 명세서에서 장치 및 방법 발명이 모두 언급되고, 장치 및 방법 발명 모두의 설명은 서로 보완하여 적용될 수 있다.
발명의 실시를 위한 형태
다양한 실시예가 본 발명을 실시하기 위한 최선의 형태에서 설명되었다.
본 발명은 일련의 방송 신호 제공 분야에서 이용된다.
본 발명의 사상이나 범위를 벗어나지 않고 본 발명에서 다양한 변경 및 변형이 가능함은 당업자에게 자명하다. 따라서, 본 발명은 첨부된 청구항 및 그 동등 범위 내에서 제공되는 본 발명의 변경 및 변형을 포함하는 것으로 의도된다.

Claims (14)

  1. 서비스 데이터 및 상기 서비스 데이터에 포함되는 서비스 컴포넌트들을 획득하기 위한 서비스 시그널링 정보를 생성하는 단계, 상기 서비스 컴포넌트들은 SHVC (Scalable High Efficiency Video Coding)로 인코딩된 스테레오스코픽 비디오임;
    서비스 리스트 테이블을 생성하는 단계, 상기 서비스 리스트 테이블은 상기 서비스 시그널링 정보를 식별하는 부트스트랩 정보를 포함하고;
    상기 서비스 컴포넌트들, 상기 서비스 시그널링 정보 및 상기 서비스 리스트 테이블을 포함하는 IP (Internet Protocol) 패킷들을 생성하는 단계; 및
    상기 IP 패킷들을 포함하는 방송 신호를 전송하는 단계; 를 포함하고,
    상기 스테레오스코픽 비디오는 좌 시점 및 우 시점을 나타내는 멀티뷰 뷰 포지션 (multi-view view position) SEI (Supplemental Enhancement Information) 메시지를 포함하고,
    상기 멀티뷰 뷰 포지션 SEI 메시지에 포함된 시점 위치 정보 (view position information)는 디펜던시아이디(dependency identifiers)에 기초한 복수의 시점들에 대한 순서들을 좌에서 우 방향으로 나타내며,
    상기 시점 위치 정보는 극좌(left-most) 시점에 대해 0의 값을 가지고, 상기 극좌 시점으로부터 우측에 위치한 다음 시점마다 1씩 증가하는 값을 가지는 것을 특징으로 하는
    방송 신호 전송 방법.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 디펜던시아이디는 베이스 레이어 (base layer) 비디오에 대해 0으로 설정되고, 인핸스먼트 레이어 (enhancement layer) 비디오에 대해 1로 설정되는 것을 특징으로하는 방송 신호 전송 방법.

  4. 삭제
  5. 제 1 항에 있어서, 상기 스테레오스코픽 비디오는 멀티뷰 씬 포지션 (multi-view scene position) SEI 메시지를 포함하고, 상기 멀티뷰 씬 포지션 SEI 메시지는 3D 디스플레이에 렌더링하기에 앞서 시점들을 프로세싱하는데 사용되는 방송 신호 전송 방법.
  6. 제 5 항에 있어서, 상기 멀티뷰 씬 포지션 SEI 메시지는 최소 시차 정보 (minimum disparity information) 또는 최대 시차 범위 정보 (maximum disparity range)를 포함하고,
    상기 최소 시차 정보는 상기 스테레오스코픽 비디오 내의 최전방 오브젝트의 3차원 위치를 지시하는 것을 특징으로 하는 방송 신호 전송 방법.
  7. 제 6 항에 있어서, 상기 최소 시차 정보는 상기 3D 디스플레이 상의 상기 시점들의 전방에 OSD (on-screen display )와 같은 수신기에서 생성되는 그래픽을 렌더링하는데 사용되는 것을 특징으로 하는 방송 신호 전송 방법.
  8. 서비스 데이터 및 상기 서비스 데이터에 포함되는 서비스 컴포넌트들을 획득하기 위한 서비스 시그널링 정보를 생성하는 서비스 데이터 생성부, 상기 서비스 컴포넌트들은 SHVC (Scalable High Efficiency Video Coding)로 인코딩된 스테레오스코픽 비디오임;
    서비스 리스트 테이블을 생성하는 하위 레벨 시그널링(low level signaling) 생성부, 상기 서비스 리스트 테이블은 상기 서비스 시그널링 정보를 식별하는 부트스트랩 정보를 포함하고;
    상기 서비스 컴포넌트들, 상기 서비스 시그널링 정보 및 상기 서비스 리스트 테이블을 포함하는 IP (Internet Protocol) 패킷들을 생성하는 전송 레이어 처리부; 및
    상기 IP 패킷들을 포함하는 방송 신호를 전송하는 피지컬 레이어 처리부; 를 포함하고,
    상기 스테레오스코픽 비디오는 좌 시점 및 우 시점을 나타내는 멀티뷰 뷰 포지션 (multi-view view position) SEI (Supplemental Enhancement Information) 메시지를 포함하고,
    상기 멀티뷰 뷰 포지션 SEI 메시지에 포함된 시점 위치 정보(view position information)는 디펜던시아이디(dependency identifiers)에 기초한 복수의 시점들에 대한 순서들을 좌에서 우 방향으로 나타내며,
    상기 시점 위치 정보는 극좌(left-most) 시점에 대해 0의 값을 가지고, 상기 극좌 시점으로부터 우측에 위치한 다음 시점마다 1씩 증가하는 값을 가지
    는 것을 특징으로 하는 방송 신호 전송 장치.
  9. 삭제
  10. 제 8 항에 있어서,
    상기 디펜던시아이디는 베이스 레이어 (base layer) 비디오에 대해 0으로 설정되고, 인핸스먼트 레이어 (enhancement layer) 비디오에 대해 1로 설정되는 것을 특징으로하는 방송 신호 전송 장치.
  11. 삭제
  12. 제 8 항에 있어서, 상기 스테레오스코픽 비디오는 멀티뷰 씬 포지션 (multi-view scene position) SEI 메시지를 포함하고, 상기 멀티뷰 씬 포지션 SEI 메시지는 3D 디스플레이에 렌더링하기에 앞서 시점들을 프로세싱하는데 사용되는 방송 신호 전송 장치.
  13. 제 12 항에 있어서, 상기 멀티뷰 씬 포지션 SEI 메시지는 최소 시차 정보 (minimum disparity information) 또는 최대 시차 범위 정보 (maximum disparity range)를 포함하고,
    상기 최소 시차 정보는 상기 스테레오스코픽 비디오 내의 최전방 오브젝트의 3차원 위치를 지시하는 것을 특징으로 하는 방송 신호 전송 장치.
  14. 제 13 항에 있어서, 상기 최소 시차 정보는 상기 3D 디스플레이 상의 상기 시점들의 전방에 OSD (on-screen display )와 같은 수신기에서 생성되는 그래픽을 렌더링하는데 사용되는 것을 특징으로 하는 방송 신호 전송 장치.
KR1020177023471A 2015-07-08 2016-07-07 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법 KR102023018B1 (ko)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201562189773P 2015-07-08 2015-07-08
US201562189776P 2015-07-08 2015-07-08
US62/189,773 2015-07-08
US62/189,776 2015-07-08
US201562195283P 2015-07-21 2015-07-21
US62/195,283 2015-07-21
PCT/KR2016/007366 WO2017007258A1 (ko) 2015-07-08 2016-07-07 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법

Publications (2)

Publication Number Publication Date
KR20170103013A KR20170103013A (ko) 2017-09-12
KR102023018B1 true KR102023018B1 (ko) 2019-09-19

Family

ID=57685278

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177023471A KR102023018B1 (ko) 2015-07-08 2016-07-07 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법

Country Status (3)

Country Link
JP (1) JP2018517329A (ko)
KR (1) KR102023018B1 (ko)
WO (1) WO2017007258A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102263223B1 (ko) * 2017-03-14 2021-06-09 삼성전자 주식회사 전자장치 및 그 제어방법
CN108833906B (zh) * 2018-06-11 2020-07-10 深圳创维数字技术有限公司 一种有线电视信号的传输方法、系统、服务器和存储介质
US10834473B2 (en) * 2018-11-23 2020-11-10 Sony Corporation Television receiver application for TV and electronic devices

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101398168B1 (ko) * 2007-10-10 2014-05-22 한국전자통신연구원 스테레오스코픽 데이터의 저장 및 재생을 위한 메타데이터구조 및 이를 이용하는 스테레오스코픽 콘텐츠 파일의 저장방법

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080253467A1 (en) * 2007-04-13 2008-10-16 Nokia Corporation System and method for using redundant pictures for inter-layer prediction in scalable video coding
US7912006B2 (en) * 2007-08-24 2011-03-22 Lg Electronics Inc. Digital broadcasting system and method of processing data in digital broadcasting system
WO2010021493A2 (en) * 2008-08-20 2010-02-25 Samsung Electronics Co,. Ltd. Method and apparatus for transmitting broadcast data, and method and apparatus for receiving broadcast data
CA2749065C (en) * 2009-01-28 2017-01-17 Lg Electronics Inc. Broadcast receiver and video data processing method thereof
WO2012030176A2 (ko) * 2010-09-01 2012-03-08 엘지전자 주식회사 3d (3-dimentional) 방송 서비스를 위한 방송 신호 처리 방법 및 장치
JP5539146B2 (ja) * 2010-10-12 2014-07-02 キヤノン株式会社 立体映像処理装置及びその制御方法
KR20120138319A (ko) * 2011-06-14 2012-12-26 삼성전자주식회사 멀티미디어 데이터 특징 정보를 이용하여 멀티미디어 서비스 데이터 패킷을 송신하는 방법 및 장치
CN104247436A (zh) * 2012-04-25 2014-12-24 三星电子株式会社 在数字广播系统中用于发送和接收的信令信息的装置和方法
BR112014012158A2 (pt) * 2012-09-27 2017-05-30 Sony Corp aparelho e método de transmissão, receptor, e, método de recepção

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101398168B1 (ko) * 2007-10-10 2014-05-22 한국전자통신연구원 스테레오스코픽 데이터의 저장 및 재생을 위한 메타데이터구조 및 이를 이용하는 스테레오스코픽 콘텐츠 파일의 저장방법

Also Published As

Publication number Publication date
KR20170103013A (ko) 2017-09-12
JP2018517329A (ja) 2018-06-28
WO2017007258A1 (ko) 2017-01-12

Similar Documents

Publication Publication Date Title
US11323755B2 (en) Broadcast signal transmission device, broadcast signal reception device, broadcast signal transmission method, and broadcast signal reception method
US11445228B2 (en) Apparatus for transmitting broadcast signal, apparatus for receiving broadcast signal, method for transmitting broadcast signal and method for receiving broadcast signal
US11178436B2 (en) Broadcast signal transmission device, broadcast signal reception device, broadcast signal transmission method, and broadcast signal reception method
JP6633739B2 (ja) 放送信号送信装置、放送信号受信装置、放送信号送信方法、及び放送信号受信方法
US10171849B1 (en) Broadcast signal transmission device, broadcast signal reception device, broadcast signal transmission method, and broadcast signal reception method
US20180213216A1 (en) Media data transmission device, media data reception device, media data transmission method, and media data rececption method
US10349095B2 (en) Transmission device for processing video data related to HDR/SDR and method for controlling the same
US10666549B2 (en) Broadcast signal transmission apparatus, broadcast signal reception apparatus, broadcast signal transmission method and broadcast signal reception method
US10362342B2 (en) Broadcast signal transmission device, broadcast signal reception device, broadcast signal transmission method, and broadcast signal reception method
KR102023018B1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
EP3300375A1 (en) Broadcast signal transmitting apparatus, broadcast signal receiving apparatus, broadcast signal transmitting method, and broadcast signal receiving method

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right