KR101122200B1 - 방송 송신 방법 및 장치와 방송 수신 방법 및 장치 - Google Patents

방송 송신 방법 및 장치와 방송 수신 방법 및 장치 Download PDF

Info

Publication number
KR101122200B1
KR101122200B1 KR1020097016241A KR20097016241A KR101122200B1 KR 101122200 B1 KR101122200 B1 KR 101122200B1 KR 1020097016241 A KR1020097016241 A KR 1020097016241A KR 20097016241 A KR20097016241 A KR 20097016241A KR 101122200 B1 KR101122200 B1 KR 101122200B1
Authority
KR
South Korea
Prior art keywords
field
information
channel
packet
service
Prior art date
Application number
KR1020097016241A
Other languages
English (en)
Other versions
KR20090112684A (ko
Inventor
류가현
박성일
김종화
추교신
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020097016241A priority Critical patent/KR101122200B1/ko
Priority claimed from PCT/KR2008/002699 external-priority patent/WO2008140263A1/en
Publication of KR20090112684A publication Critical patent/KR20090112684A/ko
Application granted granted Critical
Publication of KR101122200B1 publication Critical patent/KR101122200B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4345Extraction or processing of SI, e.g. extracting service information from an MPEG stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4343Extraction or processing of packetized elementary streams [PES]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/64322IP

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

A-VSB 전송 시스템을 모바일 방송에 적용하는 것이 부적합하다.
전송될 애플리케이션 데이터의 종류에 적응적인 설정 정보 및 상기 애플리케이션 데이터를 포함하는 캡슐화 패킷을 생성하고, 소정 사이즈로 분할된 상기 캡슐화 패킷의 데이터를 포함하는 전송 패킷을 생성하고, 상기 전송 패킷은 상기 전송 패킷의 구조에 대한 정보를 포함하며, 전송 스트림 상의 적어도 하나 이상의 전송 채널들 중 소정 위치의 서비스 정보 채널에, 상기 전송 패킷을 포함하는 채널에 대해 설정된 정보를 포함하는 서비스 설정 정보를 생성함으로써, 데이터 공간을 효율적으로 이용할 수 있고, 전송 속도면에서 유리하다.

Description

방송 송신 방법 및 장치와 방송 수신 방법 및 장치{METHOD AND APPARATUS FOR TRANSMITTING BROADCAST, METHOD AND APPARATUS FOR RECEIVING BROADCAST}
본 발명은 방송 송신 방법 및 장치와 방송 수신 방법 및 장치에 관한 것이며, 특히 모바일 방송 서비스를 제공하기 위한 방송 송신 방법 및 장치에 관한 것이다.
ATSC(Advanced Television System Committee) 는 지상파 DTV(Digital Television) 방송 전송 방식 중 미국 DTV 방식을 지칭한다. 이 규격의 핵심 요소는 비디오 및 오디오의 압축, 전송 등에 관한 것으로 영상 신호는 MPEG2로 압축하고 음향 및 음성 신호는 AC-3으로 압축하고 이러한 신호를 실어보내는 전송 기술로는 VSB(Vestigial Side Band) 기술을 사용한다. 지상파 DTV 수신 표준 규격인 VSB는 주파수 대역의 활용성이 높아 시청 영역을 최대화할 수 있는 장점이 있는 반면, 이동시에는 전파 수신이 어렵기 때문에 모바일 TV로의 적용에 약점이 있다.
한편, 지상파 DMB 방송 서비스 및 위성 DMB 방송 서비스 등, 이동 통신 장치를 이용한 방송 서비스의 수요 및 필요성이 늘어나고, 방송 서비스에 대한 요구가 높아지고 다양해지고 있어, 사용자의 요구를 충족하기 위한 다양한 방송 기술이 제안되고 있다.
도 1 a및 도 1b는 본 발명의 일 실시예에 따른 MCAST 데이터 프로토콜 스택을 나타낸다.
도 2는 본 발명의 다른 실시예에 따른 MCAST 데이터 프로토콜 스택을 나타낸다.
도 3은 본 발명의 일 실시예에 따른 A-VSB MCAST의 개략적인 구조를 나타낸다.
도 4은 본 발명의 다른 실시예에 따른 A-VSB MCAST전송 시스템의 개략적인 구조를 나타낸다.
도 5는 본 발명에 따른 OMA BCAST 서비스 계층에 관한 계략적인 구조를 나타낸다.
도 6은 본 발명의 일 실시예에 따른 터미널-네트워크 프로토콜 인터페이스의 대략적인 구조를 나타낸다.
도 7은 본 발명에 따른 ATSC-MCAST 시스템이 지원하는 고속 서비스 접근 방법에 관한 일 실시예를 나타낸다.
도 8은 본 발명에 따른 ATSC-MCAST 시스템이 지원하는 고속 서비스 접근 방법에 관한 다른 실시예를 나타낸다.
도 9은 본 발명에 따른 ATSC-MCAST 시스템이 지원하는 고속 서비스 접근 방법에 관한 또 다른 실시예를 나타낸다.
도 10은 본 발명에 다른 서비스 구성 정보(Service Configuration Information)에 관한 일 실시예를 나타낸다.
도 11은 도 10a에 도시된 version_indicator_informaton() 필드의 구조에 관한 일 실시예를 나타낸다.
도 12는 도 10a에 도시된 frame_group_information() 필드의 구조에 관한 일 실시예를 나타낸다.
도 13는 도 10a에 도시된 turbo_channel_information() 필드의 구조에 관한 일 실시예를 나타낸다.
도 14는 도 10a에 도시된 additional_service_information() 필드의 구조에 관한 일 실시예를 나타낸다.
도 15는 본 발명에 따른Turbo_channel_information_description() 필드의 구조에 관한 일 실시예를 나타낸다.
도 16a은 도 10b에 도시된 turbo_channel_configuration() 필드의 구조에 관한 일 실시예를 나타낸다.
도 16b는 본 발명에 따른 turbo_channel_configuration() 필드의 구조에 관한 다른 실시예를 나타낸다.
도 17은 도 16a에 도시된 descriptor_loop() 필드의 구조에 관한 일 실시예를 나타낸다.
도 18은 도 17에 도시된 tag 필드 값이 '0'로 설정된 경우의, 'frame_group_update'필드의 구조에 관한 일 실시예를 나타낸다.
도 19a는 도 17에 도시된 tag 필드 값이 '1'로 설정된 경우에 있어서의, 'Frame_Slicing_Duration_Update'필드의 구조에 관한 일 실시예를 나타낸다.
도 19b는 도 17에 도시된 tag 필드 값이 '1'로 설정된 경우에 있어서의, 'Frame_Slicing_Duration_Update'필드의 구조에 관한 다른 실시예를 나타낸다.
도 20a는 도 17에 도시된 tag 필드 값이 '2'로 설정된 경우에 있어서의, 'SRS_position_update'필드의 구조에 관한 일 실시예를 나타낸다.
도 20b는 도 17에 도시된 tag 필드 값이 '2'로 설정된 경우에 있어서의, 'SRS_position_update'필드의 구조에 관한 다른 실시예를 나타낸다.
도 21a는 도 17에 도시된 tag 필드 값이 '3'로 설정된 경우의, 'turbo_channel_update'필드의 구조에 관한 다른 실시예를 나타낸다.
도 21b는 도 17에 도시된 tag 필드 값이 '3'로 설정된 경우의, 'turbo_channel_update'필드의 구조에 관한 다른 실시예를 나타낸다.
도 22a은 본 발명에 따른 BD_Packet 필드의 구조에 관한 일 실시예를 설명한다.
도 22b은 본 발명에 따른 BD_Packet 필드의 구조에 관한 일 실시예를 설명한다.
도 23는 본 발명에 따른 방송 기술자(Boradcast Descriptor, BD)의 구조에 관한 일 실시예를 설명한다.
도 24a는 도 23에 도시된 'tag'필드 값이1인 경우의 Channel_info_update() 필드의 구조에 관한 일 실시예를 나타낸다.
도 24b는 본 발명에 따른 Channel_info_update() 필드의 구조에 관한 다른 실시예를 나타낸다.
도 24c는 본 발명에 따른 Channel_info_update() 필드의 구조에 관한 다른 실시예를 나타낸다.
도 25a는 도 23에 도시된 'tag'필드 값이1인 경우의 IP 맵핑 기술자(IP mapping descriptor)의 일 실시예를 나타낸다.
도 25b는 본 발명에 따른 IP 맵핑 기술자(IP mapping descriptor)의 다른 실시예를 나타낸다.
도 26는 도 25a에 도시된 IP_channel_description 필드의 구조에 관한 일 실시예를 나타낸다.
도 27a는 도 26에 도시된 'tag'필드 값이 '1'인 경우의 IP_address_table 필드의 구조에 관한 일 실시예를 나타낸다.
도 27b는 도 26에 도시된 'tag'필드 값이 '1'인 경우의 IP_address_table 필드의 구조에 관한 다른 실시예를 나타낸다.
도 28는 도 26에 도시된 'tag'필드 값이 '2'인 경우의 MAC_address_table 필드의 구조에 관한 일 실시예를 나타낸다.
도 29는 도 26에 도시된 'tag'필드 값이 '3'인 경우의 Text_description_table 필드의 구조에 관한 일 실시예를 나타낸다.
도 30a는 본 발명에 따른 MCAST 다중화 구조의 일 실시예를 나타낸다.
도 30b는 본 발명에 따른 MCAST 다중화 구조의 다른 실시예를 나타낸다.
도 31a는 본 발명에 따른 MCAST 프레임 구조 및 LMT에 관한 일 실시예를 나 타낸다.
도 31b는 본 발명에 따른 MCAST 프레임 구조 및 LMT에 관한 다른 실시예를 나타낸다.
도 32는 본 발명에 따른 VMI를 이용하여 서브 데이터 채널의 변경을 확인하는 방법에 관한 일 실시예를 나타낸다.
도 33에서는 본 발명에 따른 VMI를 이용하여 서비스를 획득하는 일 실시예에 관한 흐름도를 나타낸다.
도 34a는 본 발명에 따른 LMT의 구조에 관한 일 실시예를 나타낸다.
도 34b는 도 34a에 따른 LMT구조의 상세한 일 실시예를 나타낸다.
도 35a 및 35b는 본 발명에 따른 LMT 구조에 관한 다른 실시예를 나타낸다.
도 36는 도 35에 도시된 'LMT_information'필드의 구조에 관한 일 실시예를 나타낸다.
도 37a 및 37b는 본 발명에 따른 LMT 구조 및 LMT_information 필드에 관한 다른 다른 실시예를 나타낸다.
도 38은 본 발명에 따른 LMT 구조에 관한 다른 실시예를 나타낸다.
도 39는 본 발명에 따른 MCAST 프레임 및 LIT의 구조에 관한 일 실시예를 나타낸다.
도 40은 본 발명에 따른 LIT 구조에 관한 일 실시예를 나타낸다.
도 41a 및 41b는 본 발명에 따른 LIT 구조에 관한 다른 실시예를 나타낸다.
도 42a는 본 발명에 따른 LMT 및 LIT를 이용하여 서비스를 제공하는 방법의 일 실시예에 관한 흐름도를 나타낸다 .
도 42b는 본 발명에 따른 LMT 및 LIT를 이용하여 서비스를 제공하는 방법의 일 실시예에 관한 흐름도를 나타낸다 .
도 43은 본 발명에 따른 오브젝트 전송 정보의 구조에 관한 일 실시예를 나타낸다.
도 44는 도 43에 도시된 directory_information 필드의 구조에 관한 일 실시예를 나타낸다.
도 45은 도 43에 도시된 time_table 필드의 구조에 관한 일 실시예를 나타낸다.
도 46은 도 43에 도시된 'tag'필드 값이 '1'인 경우의 'content_name_descriptor'필드의 구조에 관한 일 실시예를 나타낸다.
도 47은 도 43에 도시된 'tag'필드 값이 '2'인 경우의 'mime_type_description'필드의 구조에 관한 일 실시예를 나타낸다.
도 48은 본 발명에 따른 MCAST 시스템에서 캡슐화 패킷과 전송 패킷간의 관계를 나타낸다.
도 49a 및 49b는 본 발명에 따른 시그널링을 위한 캡슐화 패킷의 구조에 관한 일 실시예를 나타낸다.
도 50a 및 50b는 본 발명에 따른 실시간 데이터를 위한 캡슐화 패킷의 구조에 관한 일 실시예를 나타낸다.
도 51는 본 발명에 따른 실시간 데이터를 위한 캡슐화 패킷의 신택스 구조에 관한 다른 실시예를 나타낸다.
도 52a 및 52b는 본 발명에 따른 IP 데이터를 위한 캡슐화 패킷의 신택스 구조에 관한 일 실시예를 나타낸다.
도 53은 본 발명에 따른 IP 데이터를 위한 캡슐화 패킷의 신택스 구조에 관한 다른 실시예를 나타낸다.
도 54a 및 54b는 본 발명에 따른 오브젝트 데이터를 위한 패킷의 구조에 관한 일 실시예를 나타낸다.
도 55a및 55b는 본 발명에 따른 오브젝트 데이터를 위한 패킷의 구조에 관한 다른 실시예를 나타낸다.
도 56은 본 발명에 따른 오브젝트 데이터의 전송 방법에 관한 일 실시예를 나타낸다 .
도 57은 본 발명에 따른 AL-FEC의 적용에 관한 일 실시예를 나타낸다 .
도 58는 본 발명에 따른 전송 패킷 및 전송 패킷의 해더 구조에 관한 일 실시예를 나타낸다 .
도 59는 본 발명에 따른 전송 패킷의 신택스 구조에 관한 일 실시예를 나타낸다 .
도 60a및 도 60b는 본 발명에 따른 전송 패킷 , 기본 해더 및 부가 필드의 구조에 관한 다른 실시예를 나타낸다 .
도 61a및 61b는 도 60에 도시된 ' tag '필드 값이 ' 0 '인 경우의 ' padding_field ' 필드의 구조에 관한 일 실시예를 나타낸다 .
도 62는 도 60에 도시된 ' tag '필드 값이 ' 1 '인 경우의 ' LMT_field ' 필드의 구조에 관한 일 실시예를 나타낸다 .
도 63은 도 60에 도시된 ' tag '필드 값이 ' 2 '인 경우의 ' compression_field_parameter ' 필드의 구조에 관한 일 실시예를 나타낸다 .
도 64a및 64b는 본 발명에 따른 시그널링 패킷의 구조에 관한 일 실시예를 나타낸다.
도65는 본 발명에 따른 MCAST 전송 시스템에서 OMA BCAST 서비스를 제공하는 과정을 나타낸다.
도 66은 본 발명에 따른 OMA-BCAST를 지원하는 MCAST를 이용하여 서비스를 제공하는 방법에 관한 일 실시예를 나타낸다.
도 67는 본 발명에 따른 서비스 및 컨텐트 보호를 위한 4 계층의 개략적인 구조를 나타낸다.
도 68은 본 발명에 따른 전력 관리 메커니즘에 관한 일 실시예를 나타낸다.
도 69은 본 발명에 따른 MCAST 프레임 슬라이싱과 관련된 파라미터들에 관한 일 실시예를 나타낸다.
도 70는 본 발명에 따른 파워 절약과 관련된 파라미터들의 일 실시예를 나타낸다 .
도 71는 본 발명에 따른 버스트 모드 전송을 위하여 , 서비스들이 일정한 대역폭에 할당되는 방법에 관한 일 실시예를 나타낸다 .
도 72는 본 발명에 따른 버스트 모드 전송을 위하여 , 서비스들의 회전에 관 한 일 실시예를 나타낸다 .
도 73는 본 발명에 따른 생성 행렬을 나타내는 그래프이다 .
도 74은 본 발명에 따른 deg(v i)를 결정하기 위한 일 실시예에 관한 흐름도를 나타낸다 .
도 75는 본 발명에 따른 메시지 노드와 코드 노드간의 연결에 관한 일 실시예를 나타내는 흐름도이다 .
도 76는 도 75의 단계 s7520에 관한 구체적인 흐름도를 나타낸다 .
도 77은 본 발명에 따른 MCAST 방송 수신 장치에 관한 일 실시예를 나타낸다.
도 78은 본 발명에 따른 방송 수신 방법의 일 실시예에 관한 흐름도를 나타낸다.
도 79은 본 발명에 따른 A-VSB MCAST수신 시스템의 개략적인 구조를 나타낸다.
도 80은 본 발명에 따른 에러 패킷을 표시하는 방송 수신 장치에 관한 일 실시예를 나타낸다.
도 81은 본 발명에 따른 에러 패킷을 표시하는 방송 수신 방법의 일 실시예에 관한 흐름도를 나타낸다.
도 82a, 및 도 82b는 본 발명에 따른 전 해더 구조의 일 실시예를 나타낸다.
도 83은 본 발명의 일 실시예에 따른 방송 수신 장치에서 DCI를 처리하는 방 법에 관한 흐름도를 나타낸다.
도 84a는 본 발명에 따른 적응적 타입 슬라이싱에서 TCC를 업데이트하는 방법에 관한 일 실시예를 나타낸다.
도 84b는 본 발명에 따른 적응적 타입 슬라이싱에서 BD를 이용한 업데이트 방법에 관한 일 실시예를 나타낸다.
도 85는 본 발명에 따른 방송 서비스 전송 장치의 일 실시예에 관한 블록도를 나타낸다.
도 86은 본 발명에 따른 방송 서비스 수신 장치의 일 실시예에 관한 블록도를 나타낸다 .
도 87 는 본 발명에 따른 방송 서비스 전송 방법의 일 실시예에 관한 흐름도를 나타낸다 .
도 88은 본 발명에 따른 이동 통신용 방송 서비스 수신 방법의 일 실시예에 관한 흐름도를 도시한다 .
기술적 과제
상기의 문제점을 해결하기 위한 본 발명의 목적은, 이동 통신 시스템에서 표준 규격의 고품질 방송 서비스를 빠르고 효율적으로 제공하기 위한 방송 서비스 전송 방법과 그 장치, 그리고 방송 서비스 수신 방법과 그 장치를 제공하는 것이다.
기술적 해결방법
전송될 애플리케이션 데이터의 종류에 적응적인 설정 정보 및 상기 애플리케이션 데이터를 포함하는 캡슐화 패킷을 생성하고, 소정 사이즈로 분할된 상기 캡슐화 패킷의 데이터를 포함하는 전송 패킷을 생성하고, 상기 전송 패킷은 상기 전송 패킷의 구조에 대한 정보를 포함하며, 전송 스트림 상의 적어도 하나 이상의 전송 채널들 중 소정 위치의 서비스 정보 채널에, 상기 전송 패킷을 포함하는 채널에 대해 설정된 정보를 포함하는 서비스 설정 정보를 생성한다.
유리한 효과
본 발명에 따르면 , 전송 프레임의 일정한 영역에 서비스 설정 정보가 위치하므로 , 방송 서비스 수신 장치는 시그널링 정보 채널을 처리하지 않고도 서비스 설정 정보를 이용하여 전송 채널에 접근할 수 있다 . 따라서 , 방송 서비스 수신 장치가 방송 서비스를 제공할 때 , 전송 프레임에서 시그널링 정보 채널을 찾고 , 시그널링 정보 채널을 해석한 다음에서야 각각의 방송 서비스에 접근하는 과정을 거쳐야 하므로 발생되는 방송 서비스를 제공받기 위해 대기해야 하는 시간을 단축시킬 수 있다 .
또한 , 본 발명에 따르면 , 제공되는 애플리케이션 데이터의 종류에 적응적으로 캡슐화 패킷 및 전송 패킷의 구조가 결정되므로 , 데이터 공간을 효율적으로 이용할 수 있고 , 전송 속도 면에서 유리하다 .
또한 , 본 발명에 따르면 , 실시간 미디어 데이터를 제공하는 방송 서비스를 전송하는 경우 , 디코더 설정 정보를 함께 전송하므로 , 수신단 측에서 디코더 설정 정보를 이용하여 , 방송 서비스로 제공되는 미디어 데이터의 포맷에 적합한 디코더의 세부 설정 사항을 미리 갱신할 수 있다 .
발명의 실시를 위한 최선의 형태
상기의 목적을 달성하기 위한 본 발명의 하나의 특징은, 전송될 애플리케이션 데이터의 종류에 적응적인 설정 정보 및 상기 애플리케이션 데이터를 포함하는 캡슐화 패킷을 생성하는 단계; 소정 사이즈로 분할된 상기 캡슐화 패킷의 데이터를 포함하는 전송 패킷을 생성하고, 상기 전송 패킷은 상기 전송 패킷의 구조에 대한 정보를 포함하는 단계; 및 전송 스트림 상의 적어도 하나 이상의 전송 채널들 중 소정 위치의 서비스 정보 채널에, 상기 전송 패킷을 포함하는 채널에 대해 설정된 정보를 포함하는 서비스 설정 정보를 생성하는 단계를 포함하는 것이다.
본 발명의 다른 하나의 특징은, 전송될 애플리케이션 데이터의 종류에 적응적인 설정 정보 및 상기 애플리케이션 데이터를 포함하는 캡슐화 패킷을 생성하는 캡슐화 패킷 생성부; 소정 사이즈로 분할된 상기 캡슐화 패킷의 데이터를 포함하는 전송 패킷을 생성하고, 상기 전송 패킷은 상기 전송 패킷의 구조에 대한 정보를 포함하는 전송 패킷 생성부; 및 전송 스트림 상의 적어도 하나 이상의 전송 채널들 중 소정 위치의 서비스 정보 채널에, 상기 전송 패킷을 포함하는 채널에 대해 설정된 정보를 포함하는 서비스 설정 정보를 생성하는 서비스 설정 정보 생성부를 포함하는 것이다.
본 발명의 다른 하나의 특징은, 서비스 정보 채널로부터 추출된 서비스 설정 정보를 이용하여 소정의 전송 채널을 결정하는 단계; 상기 결정된 전송 채널로부터 전송 패킷을 추출하는 단계; 상기 추출된 전송 패킷으로부터 전송 패킷에 대한 정보를 추출하는 단계; 상기 추출된 전송 패킷에 대한 정보를 이용하여, 적어도 하나 이상의 전송 패킷을 포함하는 캡슐화 패킷을 조합하는 단계; 및 상기 조합된 캡슐화 패킷으로부터 추출된 캡슐화 패킷에 대한 정보를 이용하여, 적어도 하나 이상의 캡슐화 패킷을 포함하는 애플리케이션 데이터를 조합하는 단계를 포함하는 것이다.
본 발명의 다른 하나의 특징은, 서비스 정보 채널로부터 추출된 서비스 설정 정보를 이용하여 소정의 전송 채널을 결정하는 전송 채널 결정부; 상기 결정된 전송 채널로부터 전송 패킷을 추출하는 전송 패킷 추출부; 상기 추출된 전송 패킷으로부터 전송 패킷에 대한 정보를 추출하는 전송 패킷 정보 추출부; 상기 추출된 전송 패킷에 대한 정보를 이용하여, 적어도 하나 이상의 전송 패킷을 포함하는 캡슐화 패킷을 조합하는 캡슐화 패킷 조합부; 및 상기 조합된 캡슐화 패킷으로부터 추출된 캡슐화 패킷에 대한 정보를 이용하여, 적어도 하나 이상의 캡슐화 패킷을 포함하는 애플리케이션 데이터를 조합하는 애플리케이션 데이터 조합부를 포함하는 것이다.
본 발명의 다른 특징은 , 제 1 전송 스트림에 이동 단말에서 수신할 수 있는 제 2 전송 스트림을 삽입하는 단계 ; 및
상기 제 2 전송 스트림이 삽입된 상기 제 1 전송 스트림을 전송하는 단계를 포함하는 것이다 .
상기 제 2 전송 스트림은 , 상기 제 1 전송 스트림내의 일정한 위치에 삽입될 수 있다 .
상기 제 2 전송 스트림이 삽입된 위치 및 상기 제 2 전송 스트림의 처리에 필요한 정보 중 적어도 하나를 포함하는 시그널링 정보를 생성하고 , 상기 전송하는 단계는 , 상기 시그널링 정보를 더 전송할 수 있다 .
본 발명의 다른 특징은 , 상기 2 전송 스트림이 삽입된 제 1 전송 스트림을 수신하여 상기 제 2 전송 스트림을 획득하는 단계 ; 및 상기 제 2 전송 스트림을 처리하는 단계를 포함하는 것이다 .
상기 제 2 전송 스트림은 , 상기 제 1 전송 스트림내의 일정한 위치에 삽입될 수 있다 .
상기 획득하는 단계는, 상기 제 2 전송 스트림이 삽입된 위치 및 상기 제 2 전송 스트림의 처리에 필요한 정보 중 적어도 하나를 포함하는 시그널링 정보를 더 획득하고, 상기 처리하는 단계는, 상기 시그널링 정보에 기초하여 상기 제 2 전송 스트림을 처리할 수 있다.
발명의 실시를 위한 형태
설명의 편의를 위하여 본 명세서에서 쓰이는 약어 및 용어를 정의한다.
Application layer- A/V 스트리밍, IP 및 NRT 서비스들 의미한다.
ATSC-M/H Terminal-ATSC-M/H 서비스에 접근하는 단말 장치
ATSC-M/H Service- 모바일 및 핸드헬드 단말들을 목적으로 하는 ATSC 방송 서비스
ATSC-M/H System 방송 채널 또는 선택적인 양방향 채널을 통하여 ATSC-M/H 서비스를 가능하게 하는 서비스 시스템 및 해드 엔드 장치의 결합
Cluster- 터보 프래그먼트(frament)가 위치한 다수 섹터들의 집합
Primary Service- 전원이 인가될 때, 시청자가 시청하는 최 우선 순위의 서비스. Primary Service는 방송 사업자에 의해 제공될 수 있는 (optional) 서비스이다.
Link Layer-FEC 인코딩, 파티셔닝 및 터보 스트림과 클러스터들 간의 맵핑
LIT(Linkage Information Table)- MCAST 파슬(parcel) 내의 도처에 위치하는 서비스구성 요소들간의 연결 정보 테이블
LMT(Location Map Table)- MCAST 파슬내의 도처에 위치하는 위치 정보 테이블.
MCAST Packet- MCAST 패킷에서 정의된 전송 패킷
MCAST Parcel- 파셀로부터 터보 패킷들이 추출된 후 디코딩된 MCAST 패킷들의 집합
MCAST Stream-MCAST 패킷들의 시퀀스
MCAST Transport layer-ATSC-MCAST 에서 정의되는 전송 계층
MPEG data- 동기 바이트가 제외된 TS
MPEG data packet - 동기 바이트가 제외된 TS 패킷
Parcel-MPEG 데이터 패킷들의 624 TS 그룹
Sector-TS 의AF 또는 MPEG 데이터 패킷내의 예약된(reserved)8 바이트 공간
SIC- 터보 채널의 일종이며, 모든 터보 채널들을 처리하기 위한 정보를 포함하는 시그널링 정보 채널
Sub channel-A/V 스트리밍, IP 및 NRT 데이터를 위한 물리적인 공간
Sub data channel- 서브 채널 컴포넌트들을 위한 물리적인 공간
Transport layer-ATSC-MCAST 에서 정의된 전송 계층
Turbo channel- 전송 스트림을 담기 위한 물리적인 공간, 각 공간은 다른 보호 등급(protection level)을 가질 수 있다.
Trubo Stream- 터보 코딩된 TS
VSB Frame- 2 개의 데이터 필드 동기 세그먼트 및 624(데이터 +FEC)개의 세그먼트들로 구성되는 626개의 세그먼트들
A-VSB- Advanced VSB System
AF- Adaptation Field in A/53 defined TS packet
ATSC-Advanced Television Systems Committee
BD-Broadcast Descriptor
BCAST-OMA Mobile Broadcast Services Enabler
IRD- Integrated Receiver and Decoder
DC- Decoder Configuration
DCI- Decoder Configuration Information
DFS- Data Field Sync
DVB-Digital Video Broadcasting
ES-Elementary Stream
EC channel- Elementary Component channel
FEC-Forward Error Correction
F/L- First/Last
IMT-IP Mapping Table
IPEP- IP Encapsulation Packet
LMT- Location Map Table
LIT- Linkage Information Table
MAC-Medium Access Layer
MCAST- Mobile Broadcasting
OEP- Object Encapsulation Packet
OMA-Open Mobile Alliance
PCR-Program Clock Reference
PSI- Program Specific Information
PSIP-Program Specific Information Protocol
REP- Real-time Encapsulation Packet
SD-VFG- Service Division in Variable Frame Group
SEP- Signaling Encapsulation Packet
SG-Service Guide
SIC- Signaling Information Channel
SRC-Supplementary Reference Sequence
TS-Transport Stream
이하에서는 첨부된 도면을 참고하여 본 발명의 바람직한 실시예를 상세히 설명한다.
본 발명에 따른 MCAST 전송 시스템에서는 다양한 타입의 서비스들을 함께 제공할 수도 있으며, IP 서비스와 같은 특정한 타입의 서비스만을 제공할 수도 있다. 도 1에서는 다양한 타입의 서비스들을 함께 제공하는 경우를 설명하며, 도 2에서는 특정한 타입의 서비스만을 제공하는 경우를 설명한다.
도 1 a및 도 1b는 본 발명의 일 실시예에 따른 MCAST 데이터 프로토콜 스택을 나타낸다.
도 1a 및 도 1b에서는 MCAST 전송 시트템을 통하여 다양한 타입의 서비스들을 제공하도록 다양한 타입의 컨텐트를 전송한다. 이하에서는, MCAST 전송 시스템이 지원하는 서비스의 일 예들로써, 실시간 서비스, IP 서비스 및 오브젝트 다운로드 서비스를 설명한다. 그러나, MCAST 전송 시스템이 지원하는 서비스의 종류가 여기에 한정되는 것은 아니다.
실시간 서비스는 데이터가 실시간으로 수신되고, 데이터가 수신되자마자 소비되는 것이 예정된 서비스이다. 실시간 서비스를 제공하는 데이터의 타입에는 비디오, 오디오 및 A/V와 함께 표시될 보조(anxiliary)정보등이 존재한다.
IP 서비스는 IP 데이터캐스팅과 같은 IP 기반의 데이터를 이용한 서비스를 모두 포함하는 광범위한 개념이다. IP 서비스에서는, 실시간으로 수신된 IP 기반 데이터가 수신된 순간 소비되거나 가까운 장래에 소비되는 것이 예정된다. 혹은 오브젝트(object)로 다운로드하여 저장 장치에 저장하고 향후에 사용하는 서비스로 확장할 수도 있다.
오브젝트 다운로드 서비스는 임의의 시점에서 멀티미디어 혹은 일반적인 오브젝트 데이터가 수신되고, 수신되는 제어 신호에 따라 표시 또는 저장되는 서비스이다.
이하에서는, 서비스를 제공하기 위한 MCAST시스템이 지원하는 데이터들의 특징을 살펴본다.
MCAST 는 H.264/AVC 비디오로 인코딩된 스트림의 전송/수신을 지원한다. 종래의 스펙에 완전히 일치하며, 미래의 향상된 버전과의 호환성을 제공하기 위하여, IRD는 지금은 예약(reserved)되었거나, IRD에 의하여 구현되지 않은 기능들에 대응하는 잔여 데이터 구조를 비워둘 수 있다.
프로파일 및 레벨(Profile and level)과 관련하여 MCAST는 다음과 같은 인코딩 및 디코딩을 지원한다. 먼저 인코딩에 있어서, H.264/AVC 비트스트림은 constraint_set1_flag가 '1'인 베이스라인 프로파일(Baseline Profile)을 위하여, ITU-T 추천 H.264(ITU-T에서 추천하는 H.264)/ISO/IEC 1449610 에서 설명된 제약 사항을 준수할 것이다. 유사하게 디코딩에 있어서, H.264/AVC를 지원하는 IRD는 constraint_set1_flag가 '1'인 1.3 레벨 베이스라인 프로파일(Baseline Profile)을 이용하여 픽처를 디코딩 및 랜더링할 수 있을 것이다.
샘플 모양 비(Sample Aspect Ratio)를 살펴보면, 인코딩 과정에서는 정사각형(1:1) 샘플 모양비(Sample Aspect Ratio)가 사용되며, 디코딩 과정에서 각각의 IRD는 정사각형(1:1) 샘플 모양 비를 갖는 픽처의 디코딩 및 렌더링을 지원할 것이다.
임의 접근 지점(Random Access Points)과 관련하여, 적어도 매 2초마다 한번씩 시퀀스 및 픽처 파리미터 집합들을 임의 접근 지점과 함께 전송하는 것이 바람직하다.
오디오와 관련하여, ATSC-MCAST는 MPEG-4 AAC 프로파일, MPEG-4 HE AAC 프로파일 및 MPEG HE AAC v2 프로파일을 지원한다. ISO/IEC 14496-3[5] 스펙에 완전히 일치하고, 미래의 향상된 버전과의 호환성을 제공하기 위하여, IRD는 지금은 예약(reserved)되었거나, IRD에 의하여 구현되지 않은 기능들에 대응하는 잔여 데이터 구조를 비워둘 수 있다.
오디오 모드(Audio Mode)와 관련하여, 인코딩 과정에서 오디오는 HE AAC v2 프로파일 레벨 2에 정의된 기능성에 따른 모노, 파라메트릭 스테레오 또는 2채널 스테레오이거나, HE AAC v2 프로파일 레벨 4에 정의된 기능성에 따른 멀티채널일 수 있다. 이에 관한 자세한 설명은 개정 1 및 2[5]을 포함하는 ISO/IEC 14496-3에 설명되어 있다. 디코딩 과정에서 IRD HE AAC v2 프로파일 레벨 2에서 정의된 기능성에 따른 모노, 파라메트릭 스테레오 또는 2채널 스테레오를 디코딩 할 수 있을 것이다. 이에 관한 자세한 설명은 개정 1 및 2[5]을 포함하는 ISO/IEC 14496-3에 설명되어 있다.
비트레이트(Bitrate)와 관련하여, 인코딩 과정에서 오디오의 최대 비트레이트는 스테레오 쌍에 관하여는 192kbit/s를 초과하지 않으며, 멀티 채널 오디오에 관하여는 320kbit/s를 초과하지 않을 것이다. 디코딩 과정에서 IRD 는 HE AAC v2 프로파일을 지원하며, 스테레오 쌍을 위하여 최대 192kbit/s로 선택된 레벨 대상(subject)를 지원할 것이다.
또한, 메트릭스 다운믹스(Matrix downmix)와 관련하여, IRD는 MPEG-4에 정의된 것과 같은 메트릭스 다운 믹스를 지원할 것이다.
MCAST 는 위에서 언급한 인코딩 방식에 국한되지 않는다. 다른 인코딩 방식(ex. MPEG-2 Video/BSAC)에 의해 처리되는 스트림들도 인코딩 방식을 직/간접적으로 표현함으로써, 다른 방식으로 인코딩된 스트림을 전송할 수 있다.
도 2는 본 발명의 다른 실시예에 따른MCAST 데이터 프로토콜 스택을 나타낸다.
도 2에서는 IP 서비스만이 MCAST를 통하여 제공되는 경우를 설명한다.
패킷 계층(Packet Layer)은 시그널링 정보 및 IP 데이터그램을 MCAST 패킷으로 세그먼트화하고, 전송 해더를 부가한다. SIC(Signaling Information Channel)에는 모든 터보 채널들에 관한 시그널링 정보가 포함된다.
모바일 서비스에 있어서, 고속 서비스 획득은 중요한 문제이다. MCAST는 튜닝, 역 다중화 및 서비스들의 디코딩 단계등을 줄임으로써 고속 서비스 획득을 지원한다.
또한 MCAST는 프라이머리 서비스의 개념을 지원한다. 프라이머리 서비스는 사용자가 시청하는 최우선 서비스를 지칭한다. 일반적으로, 터보 스트림상에서 서비스에 접근하기 위해서는 SIC가 먼저 획득되고 디코딩되어야 한다. SIC는 모든 터보 서비스들의 물리적인 디코딩 정보 및 간단한 설명 정보를 포함하기 때문이다. 그러나, 프라이머리 서비스에서는 접근 정보가 DFS(Data Field Sync)에서 정의되므로, 신속하게 접근할 수 있다. 고속 접근 방법에 관한 자세한 설명은 도 7 내지 도 9에서 후술한다.
SIC 및 프라이머리 서비스는 연속 전송 모드에서 존재한다. 연속 전송 모드는 프레임을 연속적으로 전송하는 방식을 의미하며, 버스트 전송 모드는 특정 시점에 복수의 프레임을 한번에 전송하는 방식을 의미한다. 버스트 전송 모드에 관한 자세한 설명은 도 68에서 후술한다. SIC 는 모든 프레임내에 존재하며, 필수적이다. 그러나, 프라이머리 서비스는 선택적이며, 프라이머리 서비스를 제공할 것인지 여부는 서비스 제공자에게 달려있다.
도 3은 본 발명의 일 실시예에 따른 A-VSB MCAST의 개략적인 구조를 나타낸다.
도 3에서 MCAST는 다양한 타입의 서비스들을 지원한다. MCAST 구조는 어플리케이션 계층(application layer), 전송 계층(transport layer), 데이터 연결 계층(link layer) 및 물리 계층(physical layer)의 4개의 계층으로 구성된다. 도 3을 참고하면, 각 계층은 왼쪽에서부터 오른쪽으로 순차적으로 위치한다.
전송 계층은 어플리케이션 상세 정보 및 어플리케이션 데이터의 프레그멘테이션(fragmentation) 정보를 제공하며, 기본 단위(elementary unit)들을 미리 정의된 신택스를 갖도록 캡슐화한다. 어플리케이션 스트림들은 타입에 따라 캡슐화되고, MCAST 터보 스트림으로 명명되는 정해진 길이의 전송 패킷들로 다중화된다. 패킷들은 이후에 터보 채널들을 형성한다.
데이터 연결 계층은 터보 채널들을 수신하고, 각각의 터보 채널에 특정한 FEC(code rate 등등)을 적용한다. SIC내의 시그널링 정보는 중요한 정보이므로 낮은 SNR 레벨에서도 시그널링하는 어플리케이션을 수신할 수 있도록 가장 강력한FEC를 적용한다. 다음으로, FEC가 적용된 터보 채널들은 일반적인 TS 패킷들과 함께 A-VSB MAC 계층으로 전송된다.
A-VSB MAC 계층은 정상적인 TS내에 이동 단말이 수신할 수 있는 추가적인 데이터를 포함하는 로버스트 패킷을 삽입 혹은 추가한다. 일 예로, MPEG TS의 널(null) 패킷 영역에 로버스트 패킷을 삽입하거나, MPEG-2 TS의 사적 데이터(private data)영역에 로버스트 패킷을 포함시킬 수 있다. A-VSB MAC 계층은 필요하다면, 일반적인 TS 패킷들내의 AF(adaptation fields)를 연다. 이 때, 로버스트 패킷을 처리하기 위한 시그널링 정보를 전송하는 SIC를 정의하며, SIC는 일정한 지점에 위치하거나 SIC의 위치를 나타내는 플래그를 사용함으로써 용이하게 획득될 수 있다. 이와 같이, A-VSB MAC 계층은 정상적인 TS내에 어떻게 로버스트 데이터를 삽입 혹은 추가하는지에 관한 방법 및 정보를 규정한다. 호환성을 여전히 유지하면서 8-VSB 시스템이 태생적으로 갖지 못한 시스템상의 효율성의 총제적인 이득 및 성과(향상)를 획득하기 위하여 로버스트 데이터는 결정론적인 프레임(Deterministic Frame)구조에 맵핑되고, 시그널링 된 후, 8-VSB 물리 계층으로 전송된다. 또한, 물리 계층에서 익사이터(exciter)는 MAC 계층의 제어하에서 결정론적(deterministically)으로 동작하며, DFS에 시그널링을 삽입한다.
MCAST 는 실시간 서비스, IP 서비스 및 오브젝트 서비스를 어플리케이션 서비스로써 제공한다. 이들 중 하나 이상의 타입의 어플리케이션 서비스는 터보 채널마다 MCAST 스트림으로 다중화된다. 특히, MCAST는 고속 초기 서비스 획득을 위하여, 프라이머리 서비스를 제공할 수 있다.
MCAST 는 다양한 서비스들을 제공하기 위하여, 실시간 A/V , IP, 오브젝트 시그널링의 네가지 타입의 데이터 중 하나 이상을 전송하며 대 용량 파일을 전송하는 경우와 같이 어플리케이션들의 서비스 품질을 향상시키기 위하여 오브젝트 스트림들 또는 IP 스트림들에 어플리케이션 레이어 FEC(application layer FEC, AL-FEC)를 적용할 수 있다. AL-FEC에 관한 설명은 도 57에서 후술한다.
도 4은 본 발명의 다른 실시예에 따른 A-VSB MCAST전송 시스템의 개략적인 구조를 나타낸다.
도 4에서 MCAST는 IP 서비스만을 지원한다 . IP 서비스들만이 터보 채널마다 하나의 MCAST 스트림으로 다중화 되는 것을 제외하고는 도 3과 동일하므로 이하 설명을 생략한다 .
도 5는 본 발명에 따른 OMA BCAST 서비스 계층에 관한 계략적인 구조를 나타낸다.
도 5에 도시된 '터미널 '은 기능적으로 'ATSC-M/H 터미널'에 대응하며, 나머지는 'ATSC-M/H 시스템'에 대응한다.
BCAST-5 는 관리 계층의 상위 부분을 위한 방송 서비스 계층 인터페이스이다. BCAST-5의 최 하위 부분은IP(internet protocol)이며, 인터페이스X3/X4와 연결된다.
BCAST-6 은 관리 계층의 상위 부분을 위한 양방향 서비스 계층 인터페이스이다.
BCAST-7 은 가입자(subscriber) 관리 및 서비스/컨텐트 처리를 위한 시그널링을 지원하는 인터페이스이다.
BCAST-8 은 서비스 경계 상호 작용(service-bound interactivity)을 위한 인터페이스이다.
X3 및X4는 동일한 것으로 가정한다. 이들은 베어러 계층을 나타내며, 인터페이스 BCAST-5와 관련된 데이터를 전송한다. 더 하위 부분과 관련하여 이 인터페이스는 A-VSB 베어러를 제공하고, 더 상위 부분과 관련하여 이 인터페이스는 BCAST-5의 전달을 지원하는 MCAST 전송을 제공한다.
X5 및X6은 동일한 것으로 가정한다. 이들은 인터페이스 BCAST-6, BCAST-7 및 BCAST-8와 관련된 데이터를 전송하기 위한 선택적인 (optional) 인터렉티브 네트워크/베어러를 제공한다.
인터페이스 BCAST-1, BCAST-2, BCAST-3, BCAST-4,BDS-1,BDS-2,X1 및 X2는 본 발명과 무관하므로 이하 설명을 생략한다.
도 6은 본 발명의 일 실시예에 따른 터미널-네트워크 프로토콜 인터페이스의 대략적인 구조를 나타낸다.
도 6에서는 , BCAST 인터페이스 및 MCAST 구조의 개념을 이용하여 ATSC-M/H 터미널 -네트워크 인터페이스를 보다 상세히 설명한다 . 도 6은 방송 상호 모드(broadcast interactive mode) 뿐만 아니라 방송 전용 모드(broadcast-only mode)를 위한 ATSC-M/H에 관하여 제안된 프로토콜 스택을 나타낸다. 스택은 두 개의 주요 부분으로 나뉜다. 첫번째 부분은, ATSC-MH 서비스 계층이며, 모든 ATSC-M/H 수신기에 적용할 수 있는 방법과 선택적인 양방향(interactivity) 방법으로 구성된다. ATSC-MH 서비스 계층 하부에는 베어러 계층들이 존재하며, 이들 중 일부는 ATSC-M/H 베어러 계층을 나타내며 나머지는 선택적인 양방향 베어러를 나타낸다.
이하에서는 MCAST 시스템의 시그널링 방법에 대하여 설명한다. 모바일 방송에서는 고속 서비스 접근이 중요한 요구 사항이다. ATSC-MCAST에서는 고속 서비스 접근을 위한 대표적인 두 가지 방안을 제공한다. 하나는, 프라이머리 서비스이며 다른 하나는 실시간 미디어 서비스를 위한 ES 시그널링 정보의 분할이다. ATSC-MCAST 시스템이 지원하는 고속 서비스 접근 방법에 관한 자세한 설명은 도 7에서 후술한다.
또한, ATSC-MCAST 시스템은 SIC를 제공할 수 있다. SIC는 터보 채널을 처리하기 위한 필수적인 정보를 포함할 수 있다. SIC는 사용자가 방송을 시청하는데 있어서 반드시 필요한 정보를 포함할 수 있다. 일 예로, SIC에는 물리적인 디코딩 정보 또는 모든 터보 서비스들에 관한 간단한 설명(선택 사항)등이 포함될 수 있다. SIC는 다른 터보 채널들을 처리하기 위하여 먼저 처리되어야 한다. SIC에 관한 자세한 설명은 도 10에서 후술한다.
프라이머리 서비스 및 SIC는 연속 전송 모드에서 존재하며, SIC는 모든 프레임에 존재할 수 있다. SIC는 필수적인 요소이지만, 프라이머리 서비스의 제공 여부는 서비스 제공자에 의해 결정될 수 있다.
도 7은 본 발명에 따른 ATSC-MCAST 시스템이 지원하는 고속 서비스 접근 방법에 관한 일 실시예를 나타낸다.
도 7에서는 고속 서비스 접근 방법으로, 프라이머리 서비스를 제공한다. 프라이머리 서비스는 사용자가 방송 서비스를 제공받는데 있어서 가장 우선시 되는 서비스이다.
도 7a는 본 발명에 따른 MCAST시스템에서 서비스를 제공받는 과정을 나타내는 도면이다.
방송 수신 장치는 DFC를 해석하여 , SIC의 위치 정보를 확인한다 . 그런 다음 확인된 SIC의 위치 정보를 이용하여 화살표 (1)로 표시된 바와 같이 SIC에 접근한다 . SIC에는 프레임이 몇 개의 터보 채널로 구성되어 있는지에 관한 정보와 각 터보 채널의 구성 정보 (터보 채널 디코딩 정보 , 메타 정보 등등 )가 포함되어 있다 .
방송 수신 장치는 SIC에 포함된 정보를 이용하여 화살표 (2)로 표시된바와 같이 소정의 터보 채널에 접근하고 , 터보 채널을 통하여 전송되는 터보 스트림을 처리함으로써 , 화살표 (3)로 표시된 바와 같이 어플리케이션 계층의 데이터를 획득할 수 있다 .
이와 같이 사용자가 방송 서비스를 제공받기 위해서는 , 방송 수신 장치에 전원이 공급되어 방송 신호가 수신된 후 상기의 과정을 모두 거쳐야 하므로 일정한 대기 시간이 필요하다 . SIC가 모두 해석될 때까지 방송 서비스가 제공되지 않는 점을 해결하기 위하여 , 방송 수신 장치가 동작하고나서 SIC를 수신하기 전에 디폴트로 제공될 수 있는 서비스를 지원하고 이를 '프라이머리 서비스 '로 정의한다 . 프라이머리 서비스는 방송 서비스 제공측에서 사용자가 최우선적으로 시청하도록 의도된 서비스이다 .
도 7b는 본 발명에 따른 MCAST시스템에서 프라이머리 서비스를 제공하는 과정을 나타내는 도면이다.
도 7b에서 프라이머리 서비스에 접근하기 위한 접근 정보는 전송 프레임의 소정의 영역에 위치한다 .
ATSC 규격에 따른 ATSC 전송 프레임의 경우 프라이머리 서비스에 접근하기 위한 접근 정보는 DFS에서 정의될 수 있다 . 따라서 , 방송 수신 장치는 SIC를 검색하여 처리하는 과정을 거치지 않고 , 화살표 (1)에 표시된 바와 같이 DFS로부터 바로 프라이머리 서비스를 위한 터보 스트림에 접근할 수 있다 .
도 7c은 프라이머리 서비스를 위한 터보 스트림을 전송하는 방법에 관한 일 실시예를 나타낸다 .
프라이머리 서비스를 위한 터보 스트림은 다른 터보 스트림과 동일하게 형성되고 , 다른 터보 스트림과 마찬가지로 전송 프레임에 매핑되어 전송될 수 있으나 , 프라이머리 서비스를 위한 터보 스트림을 전송 프레임의 남는 데이터 영역을 통하여 전송할 수 도 있다 . 통상적으로 전송 프레임의 남는 데이터 영역은 프라이머리 서비스를 위한 채널의 크기보다 작을 것이므로 , 프라이머리 서비스를 위한 터보 스트림을 전송 프레임의 남은 데이터 영역의 크기로 분할한 후 복수 개의 전송 프레임을 통하여 전송할 것이다 .
이와 유사한 방법으로 후술할 시그널링 정보를 전송할 수도 있다 . 즉 , 시그널링 정보를 SIC라는 별도의 채널를 통하여 전송 할수도 있으나 , 전송 프레임의 남은 데이터 영역을 통하여 전송할 수 있다 . 이하에서는 각각의 경우에 사용자가 프라이머리 서비스를 시청하는 중 시그널링 정보를 획득하는 방법을 설명한다 .
도 7d는 본 발명의 일 실시예에 따른 MCAST 시스템에서 시그널링 정보를 획득하는 방법을 나타낸다 .
단계 s710에서 , 방송 수신 장치에 전원이 인가되면 방송 신호를 검색한다 .
단계 s720에서 , 방송 수신 장치는 프라이머리 서비스를 위한 터보 스트림을 처리한다 . 프라이머리 서비스를 위한 터보 스트림은 별도의 터보 채널에 탑재되거나 , 분할되어 전송 프레임의 남은 영역에 나누어 탑재될 수 있다 .
단계 s730에서 , 방송 수신 장치는 단계 s720에서의 처리 결과를 이용하여 프라이머리 서비스를 제공한다 . 이와 동시에 단계 s740을 수행하여 , 시그널링 정보를 획득한다 . 시그널링 정보 또는 프라이머리 서비스를 위한 터보 스트림이 별도의 채널을 통하여 전송되는지 , 전송 프레임의 남은 영역을 통하여 전송되는지를 나타내기 위한 정보를 전송 프레임의 소정의 영역에 포함시킬 수 있으며 , 이 정보를 이용하여 시그널링 정보 및 프라이머리 서비스를 위한 터보 스트림을 획득한다 . ATSC 시스템의 경우 , 이 정보는 DFS에 포함될 수 있다 .
별도의 SIC 채널을 통하여 시그널링 정보를 전송하는 경우에는 단계 s742를 수행하여 SIC를 처리하여 시그널링 정보를 획득한다 . 전송 프레임의 남은 영역에 시그널링 정보를 나누어 전송하는 경우에는 단계 s744를 수행하여 , 전송 프레임의 남은 영역을 통하여 전송되는 시그널링 정보를 획득한다 .
단계 s750에서는 시그널링 정보가 업데이트 되었는지를 판단하고 , 시그널링 정보가 업데이트 된 경우에는 단계 s740을 재 수행하여 업데이트 된 시그널링 정보를 획득하고 , 그렇지 않은 경우에는 저장된 시그널링 정보를 이용하여 단계 s760을 수행하여 채널 전환을 수행한다 .
도 8은 본 발명에 따른 ATSC-MCAST 시스템이 지원하는 고속 서비스 접근 방법에 관한 다른 실시예를 나타낸다.
도8에서는 고속 서비스 접근 방법으로, 시그널링 정보의 분할을 사용한다.
실시간 리치(rich) 미디어 서비스에 있어서, 방송 수신 장치는 미디어 데이터를 디코딩하기 위한PSI(예를 들면 PAT,CAT,NIT)와 같은 정보를 먼저 획득하여야 한다. 일반적으로는 방송 수신 장치에서는 모든 PSI가 수신된 후에 사용자에게 방송을 제공한다. 따라서, 방송 수신 장치가 디코딩 프레임을 획득하였다 하더라도, 사용자는 방송 수신 장치가 PSI로부터 디코더 상세 정보(decoder specific information)를 수신할 때까지 방송을 시청할 수 없다.
이러한 문제점을 해결하기 위하여, ATSC-MCAST 시스템은 각각의 멀티미디어 기본 스트림(Elementary Stream, ES)내에 멀티미디어 디코더 상세 정보 기술자(decoder specific information descriptor)를 포함하여 전송하는 방법을 제안하였다. 이는, 디코더 상세 정보와 멀티미디어 데이터가 동시에 전송됨을 의미한다. 따라서, 방송 수신 장치는 PSI를 획득하기 위하여 대기할 필요가 없게 된다.
즉, 모든 멀티미디어 기본 스트림이 디코더 상세 정보 기술자를 포함하므로, 방송 수신 장치는 PSI의 수신을 기다릴 필요 없이 I 프레임의 비디오 데이터가 수신되면, 수신된 멀티 미디어 데이터를 처리하여 방송 서비스를 제공한다.
도 8a는 본 발명에 따른 ATSC-MCAST와 종래의 방송 시스템에서의 서비스 접근 시간을 비교한 도면이다.
일 예로, PAT 및 PMT의 전송 주기가 0.5초이고, I 프레임의 전송 주기가 델타 초라고 가정한다. 최초의 비디오를 시청하기 위해서는 PAT, PMT 및 프레임이 모두 획득되어야 하므로, 최악의 경우 '0.5+0.5+델타'초 만큼의 시간이 필요하다. 그러나, ATSC-MCAST에서는 방송 수신 장치에 표시될 최초의 I 프레임을 획득하기 위한 델타 초만이 필요하다. 따라서, ATSC-MCAST 에서는, 방송 수신 장치가 I 프레임을 수신하면, 신속하게 I 프레임을 처리할 수 있다. 디코더 상세 정보에 관한 자세한 설명은 도 8b에서 후술한다.
도 8b는 본 발명에 따른 디코더 상세 정보에 관한 일 실시예를 나타낸다. 디코더 구성 정보(Decoder Configuration Information, DCI)는 'DCI_field'에 포함된다.
도 8b에 도시된 'DCI_field'필드는 MCAST 캡슐화 계층에서의 실시간 미디어를 위한 것이다. 'DCI_field'필드에 포함된 디코더 상세 정보 필드는 미디어 디코더에 관한 상세한 정보를 포함한다. 'DCI_field'필드는 실시간 미디어를 위한 캡슐화 패킷에만 존재할 수 있다.
'Content Type' 필드는 컨텐트 디스크립션 타입을 나타낸다. 필드 값에 따라 정의되는 컨텐트 디스크립션 타입의 일 예는 다음의 표 1과 같다.
[ 표1]
Figure 112009047453220-pct00001
'Max Decoding Buffer Size' 필드는 디코딩 버퍼의 길이를 바이트 단위로 나타낸다. 버퍼의 정의는 스트림의 타입에 의존한다.
'DSI length' 필드는 후술할 'Decoder Specific Information' 필드의 길이를 바이트 단위로 나타낸다.
'Decoder Specific Information' 필드는 디코더 상세 정보를 포함한다. 'Decoder Specific Information' 필드는 컨텐트의 타입에 따라서 결정되며, 디코더에 관한 세부 정보를 표현한다.
도 9은 본 발명에 따른 ATSC-MCAST 시스템이 지원하는 고속 서비스 접근 방법에 관한 또 다른 실시예를 나타낸다.
도 9에서는 MCAST에 의하여 IP 데이터캐스팅 혹은 IP 서비스가 제공되는 경우를 가정한다. 일반적으로 IP 데이터캐스팅 혹은 IP 서비스를 제공하기 위하여 서비스 가이드(Service Guide, SG)가 동시에 제공되어야 한다. 일반적인 방송 수신기에서는 IP데이터캐스팅 혹은 IP 서비스를 획득하기 위하여 서비스 가이드를 먼저 획득되어야 한다. 이하에서는, 서비스 가이드의 일 예로써 OMA-BCAST에서 정의하는 SG 를 사용하지만, 이에 한정되지 아니하며 IP데이터캐스팅 혹은 IP서브스에 대한 정보 혹은 연결을 위한 접속 정보를 제공하기 위해 일반적으로 사용되는 어떠한 서비스 가이드도 사용될 수 있다.
사용자가 IP 데이터캐스팅을 통하여 서비스를 제공받기 위해서는 서비스 가이드를 먼저 획득하여야 하므로, 방송 수신 장치는 사용자가 서비스 가이드를 원하는지 여부와 관계없이 서비스 가이드가 수신될 때까지 대기하여야 한다. 이러한 문제점을 극복하기 위하여, IP 데이터캐스팅 혹은 IP 서비스를 수신하는데 필요한 정보를 전송하여, 서비스 가이드를 획득하지 않은 상태에서 우선적으로 서비스를 제공할 수 있도록 한다. 이로 인하여, IP 데이터캐스팅 혹은 IP 서비스에 있어서, 고속 서비스 접근이 가능하게 된다.
도 9a는 본 발명에 따른 IP 데이터캐스팅에 있어서의 고속 서비스 접근에 사용되는 전송 데이터의 구조에 관한 일 실시예를 나타낸다.
SIC 에는 서비스 가이드의 IP 주소와 같은 서비스 가이드를 수신하기 위한 IP 정보가 포함된다. 서비스 가이드의 IP 주소는 방송 수신 장치가 미리 알고 있는 고정된 주소를 사용하거나, IP 정보에 서비스 가이드가 포함되어 있음을 표시할 수 있다. 일 예로, 이러한 표시는 서비스 가이드가 전송됨을 IP 연결 정보내에서 플래그등을 통하여 간접적으로 표현할 수 있다.
또한, SIC는 방송 수신 장치가 서비스 가이드를 일부 혹은 모두 획득하기 전에 사용자에게 서비스를 제공할 수 있도록 하기 위한 부가 정보를 포함할 수 있다. 이하에서는 설명의 편의를 위하여 서비스 가이드를 일부 혹은 모두 획득하기 전에 사용자에게 제공될 수 있는 서비스를 대표 서비스로 명명한다. 이러한 부가 정보에는 대표 서비스에 대응하는IP 데이터캐스팅 혹은 IP 서비스를 제공하기 위한 정보 혹은 이러한 정보가 존재하는 위치를 지시하는 정보가 포함될 수 있다. 또한, 부가 정보는 대표 서비스에 관한 IP 주소를 포함할 수 있다. IP 주소가 지시하는 위치에는 대표 서비스를 제공하기 위한 스트림 또는 대표 서비스를 제공하기 위하여 필요한 정보를 포함한다. 이러한 정보의 일 예로는 플루트 세션 정보(Flute Session information, FDT), SDP(Session Description Protocol) 또는 스트림 처리 정보일 수 있다.
MCAST 시스템에서 대표 서비스는 하나일 수도 있으나 복수개 일 수도 있다. 복수 개의 대표 서비스들이 제공되는 경우에는, 대표 서비스들에 관한 정보를 방송 수신 장치에 출력하여 사용자가 선택하도록 할 수 있다. 사용자가 복수 개의 대표 서비스들 중 하나를 선택하면, 방송 수신 장치가 서비스 가이드를 모두 획득할 때까지 선택된 대표 서비스가 제공된다. 이 후, 서비스 가이드를 모두 획득하면 서비스 가이드를 통하여 사용자가 원하는 서비스를 다시 선택하도록 할 수 있다.
실시 예에 따라서는, 하나의 대표 서비스만이 제공되거나, 복수의 대표 서비스들을 제공하는 경우라 하더라도 사용자의 선택 없이 선정된 하나의 대표 서비스를 제공하도록 할 수 있다.
터보 채널내에는 대표 서비스를 제공하기 위한 IP 스트림 및 일반적인 방송 서비스를 제공하기 위한 IP 스트림들이 전송된다.
도 9b는 본 발명에 따른 IP 데이터캐스팅에 있어서의 고속 서비스 접근 방법의 일 실시예에 관한 흐름도를 나타낸다.
단계 s910에서는 IMT를 획득한다. IMT는 IP 주소와 터보 채널간의 맵핑 정보를 나타내며 SIC를 통하여 전달될 수 있다.
단계 s920에서는 전송 시스템이 대표 서비스를 제공하는지를 판단한다. 대표 서비스를 제공하지 않는 경우에는, 단계 s932를 수행하여 서비스 가이드를 획득한다. 이 경우 서비스 가이드가 일정 부분 이상 혹은 전부 획득될 때까지 사용자에게 방송 서비스를 제공할 수 없다. 반면, 대표 서비스를 제공하는 경우에는, 단계 s934를 수행하여 대표 서비스를 사용자에게 제공한다. 즉, SIC(혹은 DFS)에 포함된 대표 서비스에 관한 정보 및 IMT를 이용하여 대표 서비스를 제공하는 스트림을 파싱하여 대표 서비스를 제공한다. 또한, 이와 동시에 백 그라운드에서는 단계 s936을 수행하여 서비스 가이드를 획득한다.
서비스 가이드가 모두 획득되면, 단계 s940을 수행하여 사용자 입력이 존재하는지를 판단한다. 사용자 입력이 없는 경우에는 단계 s952를 수행하여 사용자의 입력이 있을 때까지 대표 서비스를 반복 재생하거나 대기한다. 사용자 입력이 있는 경우에는 단계 s954를 수행하여 사용자가 선택한 채널에 대응하는 IP 스트림을 처리하여 재생한다.
도 10a는 본 발명에 다른 서비스 구성 정보(Service Configuration Information)에 관한 일 실시예를 나타낸다.
SIC 는 터보 채널 정보에 관한 정보와 같은 시그널링 정보를 포함한다. 특히, SIC에는 서비스 구성 정보가 포함되는데, 서비스 구성 정보에는 A-VSB 프레임내의 각 터보 채널의 위치 정보, 타임 슬라이싱 정보 및 각 터보 채널을 처리하기 위한 정보등이 포함된다. SIC는 터보 채널의 일종으로 A-VSB 프레임내의 정해진 위치에 존재하도록 할 수 있다.
이하에서는, 도 10a을 참고하여 서비스 구성 정보의 구조에 관한 일 실시예를 살펴본다.
'turbo_channel_information_flag' 필드는 터보 채널 정보가 존재하는지를 나타낸다. 본 실시예에서는, 'turbo_channel_information'필드가 터보 채널 정보를 포함한다. 터보 채널 정보에 관한 자세한 설명은 도13에서 후술한다.
'additional_service_information_flag' 필드는 터보 서비스의 기술(description) 정보가 존재하는지를 나타낸다. 본 실시예에서는, 'additional_service_information' 필드가 모든 터보 채널의 부가적인 기술 정보를 포함한다. 부가적인 서비스 정보에 관한 자세한 설명은 도 14에서 후술한다.
'padding_flag' 필드는 패딩 구간이 존재하는지를 나타낸다.
'version_indicator_information() ' 필드는 서비스 구성 정보의 버전과 업데이트 시점을 나타낸다. 본 실시예에서는, 'ServiceConfigurationInformation() ' 필드의 버전과 업데이트 시점을 나타낸다. 'version_indicator_information() '필드에 관한 자세한 설명은 도 11에서 후술한다.
'frame_group_information()' 필드는 현재 프레임의 번호와 프레임 그룹내의 전체 프레임의 개수를 나타낸다. 'frame_group_information() '필드에 관한 자세한 설명은 도 12에서 후술한다.
'byte' 필드는 패딩 바이트를 나타내며, 인코더에 의하여 사용된다. OxFF 값을 갖는 할당되지 않은 영역을 채우는데 사용된다.
'CRC' 필드에는 CRC 값이 포함된다.
도 10b는 본 발명에 다른 서비스 구성 정보(Service Configuration Information)에 관한 다른 실시예를 나타낸다.
'current_frame_number' 필드는 현재 프레임 번호를 나타낸다. 프레임 번호는 프레임 그룹내에서 1 씩 증가한다.
'total_frame_number' 필드는 프레임 그룹내에 존재하는 프레임들의 전체 개수를 나타낸다. 적어도 둘 이상의 프레임들이 프레임 그룹에 포함되어야 한다.
본 실시예에서 서비스 구성 정보에는 현재 프레임의 번호에 따라 TCC 또는 BD에 관한 정보가 포함될 수 있다. 즉, 현재 프레임의 번호가 짝수이면, TCC에 관한 정보가 포함되고, 현재 프레임의 번호가 홀수이면 BD에 관한 정보가 포함된다.
'TCC_next_update_offset' 필드는 터보 채널 구성 정보(Trubo channel configuration information)의 버전이 업데이트 되기 전까지의 프레임들의 개수를 나타낸다. 본 실시예에서 'Turbo_channel_configuration' 필드는 터보 채널 구성 정보를 포함한다.
'TCC_version' 필드는3 비트로 구성되며, TCC 필드들의 버전 넘버를 나타낸다. TCC와 관련된 필드들이 한번 변경될 때마다, 버전 넘버는 모듈로 8에 의하여 1씩 증가한다.
'number_of_turbo_channel' 필드는 ATSC에 의하여 전송되는 전체 터보 채널들의 개수를 나타낸다. 흩어진 SRS 채널들의 개수 또한 이 필드에 포함된다.
'turbo_channel_configuration' 필드는 터보 채널 구성 정보를 포함한다. 'turbo_channel_configuration' 필드에 관한 자세한 설명은 도 16에서 후술한다.
'BD_next_update_offset' 필드는 방송 기술자(Broadcast descriptor,BD)가 업데이트 되기 전 프레임들의 개수를 나타낸다.
'BD_paket()' 필드는 방송 기술자를 포함한다. BD_paket() 필드에 관한 자세한 설명은 도 22에서 후술한다.
도 10c는 본 발명에 다른 서비스 구성 정보(Service Configuration Information)에 관한 다른 실시예를 나타낸다.
도 10c에 도시된 서비스 구성 정보는 'wake_up_mode'필드를 제외하면, 도 10b에 도시된 서비스 구성 정보와 동일하므로, 다른 필드에 대한 설명은 생략한다.
'wake_up_mode' 필드는 다음에 존재하는 'TCC_next_update_offset'필드에서의 TCC 파싱 모드를 나타낸다. 일 예로, 필드 값이 '1'로 설정되면, 다음에 존재하는TCC가 파싱될 수 있다.
도 11은 도 10a에 도시된 version_indicator_informaton() 필드의 구조에 관한 일 실시예를 나타낸다.
모바일 방송에 있어서, 서비스 구성 정보는 매우 중요하다. 이하에서 설명할version_indicator_informaton()필드에는 서비스 구성 정보의 업데이트 정보가 포함된다. 따라서, Service Configuration Information() 필드는 향후 변경되는 프레임의 정확한 위치와 변경되는 버전을 알려주는 역할을 한다.
'frame_counter' 필드는 서비스 구성 정보가 변경되기 전까지 전송되는 전송 프레임의 개수를 나타낸다. 전송 프레임을 수신한 후에, 서비스 구성 정보가 변경될 것이다.
'version' 필드는 서비스 구성 정보의 버전을 나타낸다. 서비스 구성 정보가 한번 변경되면, 버전 값이 '1'씩 증가한다.
도 12는 도 10a에 도시된 frame_group_information() 필드의 구조에 관한 일 실시예를 나타낸다.
프레임 그룹은 MCAST 프레임 슬라이싱으로 인하여 생성된 프레임들의 그룹이며, 프레임 그룹은 동일한 개수의 프레임마다 주기적으로 형성된다. 하나 이상의 프레임을 묶어서 버스트로 전송하기 위한 기법을 프레임 슬라이싱 기법이라 명명한다. 프레임 슬라이싱 기법을 통하여 대상 서비스에 대한 데이터가 전송되지 않는 프레임이 발생하게 되고, 이 프레임이 전송되는 구간에서 단말은 신호를 수신하지 않고 쉴수 있다. 이와 같은 방식을 통해 전원을 절약하는 효과를 획득할 수 있다. 버스트 구간은 대상 서비스에 대한 데이터가 존재하는 프레임 그룹을 의미하고, 이는 후술할 프레임 넘버등에 의하여 표현될 수 있다.
'current_frame_number' 필드는 프레임 그룹내에서의 현재 프레임의 번호를 나타낸다. 프레임 그룹내에서 프레임 번호는 '1'씩 증가할 수 있다.
'total_frame_number' 필드는 프레임 그룹 내의 총 프레임 개수를 나타낸다.
도 13는 도 10a에 도시된 turbo_channel_information() 필드의 구조에 관한 일 실시예를 나타낸다.
'turbo_channel_information()' 필드는 터보 채널 정보를 나타내며, 터보 채널들에 관한 필수적인 정보들을 포함한다. 물리적인 디코딩 정보, MCAST 프레임 슬라이싱의 존재 여부 및 터보 채널들의 전체 개수는 중요한 요소이다. 특히, MCAST 프레임 슬라이싱을 지원하는 경우에 'turbo_channel_information()' 필드는 현재 프레임의 번호 및 선택된 터보 채널을 위하여 수신될 프레임 블록들의 개수를 나타낸다.
'version' 필드는3비트로 구성되며, 터보 채널 정보의 버전을 나타낸다. 본 실시예에서는, 'turbo_channel_information()' 필드가 한번 변경되면 버전이 '1'씩 증가할 수 있다. 버전 정보가 변경되기 전, 터보 채널 정보가 미리 전송될 수 있다.
'Trubo_svc' 필드는 본 발명이 A-VSB 시스템에서 구현되는 터보 채널의총 개수 정보를 나타낸다.
'Turbo_svc_id' 필드는 현재 터보 채널의 식별 번호를 나타낸다.
'Is_enhanced' 필드는 데이터가 기본 데이터인지 확장 데이터인지를 표현한다. 일 예로, 'sclable'비디오 코덱을 사용하는 경우 기본 스트림과 확장 스트림을 별도의 터보 채널 혹은 서브 데이터 채널에 실을 수 있다. 별도의 터보 채널에 실리는 경우 이 필드에 의해서 기본 스트림인지 확장 스트림인지를 구분한다.
'MCAST_Frame_Slicing_flag' 필드는 현재 터보 채널이 버스트 모드로 전송되는지를 나타낸다.
'MCAST_AL_FEC_flag' 필드는 현재 터보 채널이 어플리케이션 FEC(AL-FEC)를 지원하는지를 나타낸다.
'turbo_start_position' 필드는 터보 채널의 시작 위치를 나타낸다.
'turbo_fragments_bits' 필드는 터보 채널 길이의 인덱스를 나타낸다.
turbo_arrange_index 필드는 숫자를 나타내는데, 숫자가 n이면 모든 n 번째 패킷이 터보 채널 프레그먼트를 포함함을 나타낸다.
'coding_rates' 필드는 터보 채널 코딩 레이트의 인덱스를 나타낸다.
MAST 프레임 슬라이싱이 존재하는 경우, 'start_frame_number' 필드는 현재 터보 서비스의 시작 프레임 번호를 나타낸다.
'frame_block_number' 필드는 현재 터보 채널이 몇 개의 프레임으로 구성되는지를 나타낸다.
도 14는 도 10a에 도시된 additional_service_information() 필드의 구조에 관한 일 실시예를 나타낸다.
SIC 는 부가 정보를 전송하기 위한 구조를 제공한다. 본 실시예에서 'additional_service_information'필드는 부가 정보를 포함한다. 'additional_service_information'필드는 여러 개의 블록들로 전송될 수 있으며, 분할된(segmented) 블록들의 현재와 마지막 인덱스를 알려준다.
'current_index' 필드는 기술 블록들의 총 개수 내에서의 현재 블록의 인덱스를 나타낸다.
'last_index' 필드는 기술 블록들의 총 개수 내에서의 마지막 블록의 인덱스를 나타낸다.
'length' 필드는 부가 서비스 정보의 길이를 나타낸다.
'user_data' 필드는 사용자 사적 데이터를 나타내며, 사용자 사적 데이터의 신택스는 <tag><length><data>를 따를 것이다. 태그 값에 따른 정의의 일 예는 표2에 의한다.
[ 표2]
Figure 112009047453220-pct00002
태그 값이 '1'인 경우는, 'data'필드에는 터보 채널 정보 기술자가 포함된다. 터보 채널 정보 기술자에 관한 자세한 설명은 도 15에서 후술한다.
도 15는 본 발명에 따른 Turbo_channel_information_description() 필드의 구조에 관한 일 실시예를 나타낸다. Turbo_channel_information_description() 필드의 구조는 도 13에 도시된 'turbo_channel_information'와 유사하므로 이하 설명을 생략한다.
도 16a은 도 10b에 도시된 turbo_channel_configuration() 필드의 구조에 관한 일 실시예를 나타낸다.
'turbo_channel_configuration()' 필드는 터보 채널들을 위한 필수적인 구성 정보를 포함한다. 'turho_channel_configuration()' 필드는 도 13의 'turbo_channel_information' 필드와 유사하게 물리적인 디코딩 정보, 프레임 슬라이싱의 존재 여부 및 터보 채널들의 총 개수와 같은 중요한 정보가 포함될 수 있다.또한 프레임 슬라이싱을 지원하는 경우, 현재 프레임의 번호 및 선택된 터보 채널을 위하여 수신하여야 할 프레임 블록들의 개수정보 등이 포함될 수 있다.
'selector_bits' 필드는 프레임 슬라이싱 채널, 흩어진 SRS 채널, 터보 채널 또는 'turbo_channel_descriptor_loop' 필드가 존재하는지를 나타낸다. 필드 값에 따른 정의의 일 실시예는 다음의 표 3에 따른다. 표 3에서의 'x'는 '0' 또는 '1'일 수 있다.
[ 표3]
Figure 112009047453220-pct00003
'turbo_channel_id' 필드는 터보 채널의 식별자를 나타낸다. 해당 터보 채널에 특정 기술자(descriptor)가 포함되면, 'turbo_channel_id'필드 값은 기술자가 적용될 터보 채널의 식별을 위하여 사용된다. 그러나, 필드 값이 '0x1F'과 같이 사전에 결정된 값인 경우에는 기술자를 모든 터보 채널에 적용할 것이다. 예를 들면, 프레임 그룹에 관한 정보가 포함된 필드가 업데이트 되며, 'turbo_channel_id 필드 값이 '0x1F'인 경우 프레임 그룹에 관한 정보는 모든 채널에 관한 turbo_channel_configuration 필드에 적용될 것이다.
'start_frame_number' 필드는 버스트 모드에서 전송되는 서비스의 시작 프레임 번호를 나타낸다. 시작 프레임은 서비스를 획득하기 위하여 처음으로 수신될 프레임이다.
'frame_count' 필드는 버스트 모드에서의 서비스를 위하여 획득될 프레임들의 개수를 나타낸다.
'reserved' 필드는 예약된 필드로써 향후에 사용될 수 있도록 남겨진다. 'reserved' 필드는 '1'로 설정될 수 있다. 본 명세서에서 'reserved'필드는 동일한 기능을 수행하므로, 이하에서는 설명을 생략한다.
'turbo_cluster_size' 필드는 다수의 섹터들내에 흩어진 SRS 스트림의 클러스터 크기를 나타낸다.
'is_enhanced' 필드는 현재 터보 채널이 고급(enchanced) 데이터를 포함하는지를 나타낸다. 필드 값이 '1'로 설정되면, 현재 터보 채널이 고급 데이터를 포함함을 의미할 수 있다. 이 때, 기본 채널 및 고급 채널은 동일한 채널 id를 공유하여야 한다. 수신기는 이 두 채널을 모두 수신하여 마치 하나의 채널인 것처럼 제공할 수 있다. 일 예로, 'Scalable'비디오 코덱을 사용하는 경우, 이 두 채널을 모두 수신하게 되면 단일 채널일 때에 비해 고화질의 영상을 제공할 수 있다.
'adaptive_time_slicing_flag' 필드는 현재 터보 채널이 적응적 타임 슬라이싱(adaptive time slicing)을 지원하는 지를 나타낸다. 필드 값이 '1'로 설정되면, 현재 터보 채널이 적응적 타임 슬라이싱을 지원함을 의미할 수 있다. 물리적인 구성이 이 필드에 의하여 변경된다
'coding_rates' 필드는 터보 채널 코딩 레이트(rate)의 인덱스를 나타낸다.
'full_packet_flag' 는 터보 스트림의 첫번째 섹터가 널 패킷 또는 지정된 PID 패킷에 의하여 전송되는지를 나타낸다. 필드 값이 '1'로 설정되면 터보 스트림의 첫 번째 섹터는 AF 해더 필드 없이 널 패킷 또는 지정된 PID 패킷에 의하여 전송됨을 의미할 수 있다. 유사하게 필드 값이 '0'으로 설정되면 첫번째 섹터는 AF에 의하여 전송됨을 의미할 수 있다.
'turbo_start_sector' 필드는 터보 스트림의 물리적인 시작 위치를 나타낸다.
'turbo_cluster_size' 필드는 다수의 섹터들내의 터보 스트림의 클러스터 크기를 나타낸다.
'turbo_channel_descriptor_loop()' 필드는 터보 채널에 관한 부가적이며 선택적인 정보를 제공한다. turbo_channel_descriptor_loop() 필드에 관한 자세한 설명은 도 17에서 후술한다.
도 16b는 본 발명에 따른 turbo_channel_configuration() 필드의 구조에 관한 다른 실시예를 나타낸다.
도 16b에 도시된 'turbo_channel_configuration()' 필드의 구조는 'enhanced_protection_mode'필드를 제외하면, 도 17a와 동일하다. 따라서, 다른 필드에 관한 설명은 생략한다.
'enhanced_protection_mode' 필드는 고급 보호 모드를 지원할 것인지 여부를 나타낸다. 전송되는 데이터의 종류나 통신 환경에 따라서는 에러를 용이하게 복원하여야 하는 경우가 있다. 이 경우, 패킷내의 패이로드의 길이를 줄이고, RS 바이트를 크게 함으로써 에러를 용이하게 복원할 수 있도록 할 수 있다. 필드 값이 '1'로 설정되면, 전송 패킷의 패이로드 길이는 168 바이트가 되며, RS 바이트는 40byte가 된다. 그러나, 필드 값이 '0'으로 설정되면 페이로드의 길이는 188바이트가 되고 RS 바이트는 20 바이트가 된다.
도 17은 도 16a에 도시된 descriptor_loop() 필드의 구조에 관한 일 실시예를 나타낸다.
'descriptor_loop()' 필드는 각각의 터보 채널에 관한 부가적인 정보의 시그널링을 가능하게 한다. 프레임 그룹 번호들, 터보 채널들에 관한 타임 슬라이싱 지속 기간, 터보 채널들의 위치등과 같은 정보의 변화는, 'descriptor_loop()'필드에 의하여 시그널링 될 것이다.
'next_indicator' 필드는1비트로 구성되며, 이후에 추가적인 'descriptor_information' 필드가 존재하는지를 나타낸다. 필드 값이 '1'로 설정되면, 이후에 'descriptor_information' 필드가 존재함을 의미하고, 필드 값이 '0'으로 설정되면 'descriptor_loop()'필드내에 더 이상의 'descriptor_information' 필드가 존재하지 않음을 의미할 수 있다.
'tag' 필드는 'descriptor_information'필드의 식별자를 나타낸다. 필드 값에 따른 정의의 일 예는 다음의 표 4에 따른다.
[ 표4]
Figure 112009047453220-pct00004
'length' 필드는 'descriptor_information'필드의 길이를 바이트 단위로 나타낸다.
'descriptor_information' 필드는 'tag' 필드 값에 따라서 정의하는 바가 다를 수 있다. 표 4에 따라 정의된 'descriptor_information'필드에 관한 자세한 설명은 도 18 내지 도 21에서 후술한다.
도 18은 도 17에 도시된 tag 필드 값이 '0'로 설정된 경우의, 'frame_group_update'필드의 구조에 관한 일 실시예를 나타낸다.
프레임 그룹 업데이트는 타임 슬라이싱의 주기를 변경하는데 사용될 수 있다. 즉, 'Frame_group_update'필드는 프레임 그룹의 개수를 업데이트하기 위해 사용될 수 있다. 'Frame_group_update'필드는 업데이트 시점으로부터 적어도 6초 전에 시그널링 될 수 있다. 'Frame_group_update'필드에 포함된 정보는 모든 터보 채널들의 구성에 영향을 줄 수 있다. 'Frame_group_update'필드가 수신되면, 'selector bits'필드 값은 프레임 그룹 업데이터를 나타내는 '0x001'로 설정되고, 'turbo_channel_id'필드는 '0x1f'과 같이 모든 터보 채널에 프레임 그룹 업데이트를 적용하기 위한 정해진 값으로 설정될 수 있다.
'next_update_offset' 필드는 새로운 GOF(Group Of Frame) 개수가 적용되기 전까지 남은 프레임의 개수를 의미한다. 이 필드 값은 상술한 'TCC_next_update_offset'필드에 기초한 상대적인 값이다. 따라서 'TCC가 업데이트 되는 시점에서 필드 값이 변경된다. 즉, 필드 값이 프레임마다 변하는 것이 아니라, TCC 버전이 변경될 때마다 바뀐다. 이를 통하여 TCC의 업데이터 횟수를 줄일 수 있다.
'new_GOF' 필드는 새로운 GOF의 프레임 개수를 나타낸다.
도 19a는 도 17에 도시된 tag 필드 값이 '1'로 설정된 경우에 있어서의, 'Frame_Slicing_Duration_Update'필드의 구조에 관한 일 실시예를 나타낸다.
Frame_Slicing_Duration_Update 필드는 현재 터보 채널에서 프레임 슬라이싱을 구성하는 프레임의 개수를 변경하는 경우에 사용된다. 다음의 수학식 1에서의 계산 값은 프레임 슬라이싱이 적용되는 경우, 휴지 기간을 구하는데 사용될 수 있다. 이 경우 업데이트는 프레임 그룹을 구성하는 프레임 개수 단위로 이루어진다.
[ 수학식1]
(TCC_next_update+start_frame_number)*48.4ms+Jitter Time
수학식 1에서의 Jitter time은 물리 계층을 위하여 요청된 셋업 시간이다. 48.4ms는 VSB 프레임의 전송주기 이다. 그러나, VSB 프레임은 일 실시예에 불과하며, 다른 전송 프레임 및 프레임 군 단위로 전송 주기를 결정하는 경우에는 해당하는 값으로 변경된다.
'new_start_frame_number' 필드는 GOF내에서의 프레임 슬라이싱을 위한 새로운 시작 프레임 번호이다.
'new_frame_count' 필드는 GOF내에서의 프레임 슬라이싱을 위한 새로운 마지막 프레임 번호이다.
도 19b는 도 17에 도시된 tag 필드 값이 '1'로 설정된 경우에 있어서의, 'Frame_Slicing_Duration_Update' 필드의 구조에 관한 다른 실시예를 나타낸다.
수학식 2는 도 19b에 도시된 신택스를 갖는 descriptor_information필드에 있어서, 프레임 슬라이싱을 위하여 첫 번째 프레임을 획득하는 시간을 나타낸다.
[ 수학식2]
(TCC_next_update_offset + next_update_offset)*48.4ms+Jitter Time
도 19b에 도시된 descriptor_information필드는 'next_update_offset'필드를 제외하면, 도 19a와 동일하다.
'next_update_offset' 필드는 이후에 새로운 프레임 슬라이싱 정보가 적용될 프레임의 위치를 'TCC_next_update_offset'을 기준으로 나타낸다.
도 20a는 도 17에 도시된 tag 필드 값이 '2'로 설정된 경우에 있어서의, 'SRS_position_update'필드의 구조에 관한 일 실시예를 나타낸다.
'SRS_position_update' 필드는 흩어진(scattered) SRS의 위치가 변경되는 경우에 사용된다. 새로운 위치 정보가 적용되는 시점은 GOF의 시작을 기준으로 상대적으로 계산될 수 있다.
'start_frame_offset' 필드는 새로운 SRS 위치를 적용할 새로운 GOF내에서의 시작 프레임 번호를 나타낸다.
'turbo_cluster_size' 필드는 다수의 섹터들내의 새로운 터보 클러스터 크기를 나타낸다.
도 20b는 도 17에 도시된 tag 필드 값이 '2'로 설정된 경우에 있어서의, 'SRS_position_update'필드의 구조에 관한 다른 실시예를 나타낸다.
도 20b에 도시된 'SRS_position_update'필드는 'next_update_offset'필드를 제외하면, 도 20a와 동일하다.
'next_update_offset' 필드는 이후에 존재하는 필드 값을 적용하는 다음 SRS 업데이트 위치를 나타낸다.
새로운 위치 정보가 적용되는 시점은TCC_next_update_offset 필드 값에 next_update_offset 필드 값을 합산하여 표현할 수 있다. 혹은TCC_next_update_offset 값에 상대적인 값으로 next_update_offset을 사용하여 표현할 수 있다.
도 21a는 도 17에 도시된 tag 필드 값이 '3'로 설정된 경우의, 'turbo_channel_update'필드의 구조에 관한 다른 실시예를 나타낸다.
'turbo_channel_update' 필드는 터보 채널의 위치가 변경되는 경우에 사용된다. 'turbo_channel_update' 필드는 새로운 GOF를 나타내는 TCC_next_update_offset가 수신된 이후에 적용될 것이다.
'start_frame_offset' 필드는 새로운 GOF 내에서의 시작 프레임 번호를 나타낸다. 이 프레임으로부터 새로운 turbo_cluster_size 필드가 적용될 것이다.
'is_enhanced' 필드는 현재 터보 채널이 고급 데이터를 포함하는지를 나타낸다. 필드 값이 '1'로 설정되면, 현재 터보 채널이 고급 데이터를 포함함을 의미할 수 있다. 이 때, 기본 채널 및 고급 채널이 동일한 터보 채널 id를 공유할 수 있음은 상술한 바이다.
'coding_rates' 필드는 터보 채널 코딩 레이트의 인덱스를 나타낸다.
'ful_packet_flag' 필드는 터보 스트림의 첫 번째 섹터가 AF 해더 필드를 사용하지 않고 널 패킷 또는 특정한 PID 패킷에 의하여 전송되는지를 나타낸다. 필드 값이 '1'로 설정되면, 첫 번째 섹터가 AF 해더 필드를 사용하지 않고 널 패킷 또는 특정한 PID 패킷에 의하여 전송됨을 의미하며, 필드 값이 '0'으로 설정되면 첫 번째 섹터는 AF에 의하여 전송됨을 의미할 수 있다.
'turbo_start_sector' 필드는 터보 스트림의 물리적인 시작 위치를 나타낸다.
'turbo_cluster_size' 필드는 다수의 섹터들 내의 터보 스트림의 클러스터 크기를 나타낸다.
도 21b는 도 17에 도시된 tag 필드 값이 '3'로 설정된 경우의, 'turbo_channel_update'필드의 구조에 관한 다른 실시예를 나타낸다.
도 21b에 도시된 'turbo_channel_update'필드는 'next_update_offset'필드, adaptive_time_slicing_flag 필드 및enhanced_protection_mode 필드를 제외하면, 도 21a와 동일하다.
'next_update_offset' 필드는 이후에 존재하는 필드 값을 적용할 업데이트 위치를 나타낸다. 새로운 위치 정보가 적용되는 시점은TCC_next_update_offset 필드 값에 next_update_offset 필드 값을 합산하여 표현할 수 있다. 혹은TCC_next_update_offset 필드 값에 상대적인 값으로next_update_offset 필드 값을 사용하여 표현할 수 있다.
'adaptive_time_slicing_flag' 필드는 현재 터보 채널이 적응적 타임 슬라이싱을 지원하는지를 나타낸다. 필드 값이 '1'로 설정되면 현재 터보 채널이 적응적 타임 슬라이싱을 지원함을 의미할 수 있다. 물리적인 구성(??)은 이 필드에 기인하여 변경된다.
'enhanced_protection_mode' 필드는 현재 터보 채널이 고급 방어 모드를 지원하는지를 나타낸다. 필드 값이 '1'로 설정되면 현재 터보 채널이 고급 방어 모드를 지원함을 나타낸다.
일 예로, 필드 값이 '1'로 설정되면, 전송 패킷내의 페이로드의 길이가 168바이트가 되고, RS 바이트가40 바이트가 되고, 필드 값이 '0'으로 설정되면 페이로드의 길이가 188바이트가 되고 RS 바이트가 20바이트가 될 수 있다.
도 22a은 본 발명에 따른 BD_Packet 필드의 구조에 관한 일 실시예를 설명한다.
'BD_Packet' 필드는IP 맵핑 테이블 및 터보 채널 업데이트 정보와 같은 터보 스트림에 관한 부가 정보를 전송하는데 사용될 것이다. BD_Packet 필드는 모든 터보 채널들에 적용될 수 있으며, 다수의 프래그먼트들 내에서 전송될 수 있다.
'first_last' 필드는2비트로 구성되며, 패킷이 첫 번째 또는 마지막 패킷인지를 나타낸다. 필드 값에 따른 정의의 일 예는 다음의 표 5에 따른다.
[ 표5]
Figure 112009047453220-pct00005
'padding_flag' 필드는 패딩 바이트가 존재하는지를 나타낸다.
'BD_version' 필드는3비트로 구성되며, 방송 기술자(Broadcast Description, 이하 BD)의 버전 넘버를 나타낸다. BD가 한번 업데이트 될 때마다 버전 넘버가 모듈로 8에 의하여 1씩 증가할 것이다.
'padding_length' 필드는BD_packet 필드내의 패딩 바이트들의 개수를 나타낸다.
'padding_byte' 필드는0xFF로 설정된 하나 또는 그 이상의 8비트 값이며, 인코더에 의하여 삽입될 수 있다. 'padding_byte' 필드는 디코더에 의하여 제거된다.
'BD_Fragment' 필드에는 프레그먼트화 된 BD가 포함된다. 즉, BD는 복수의 프래그먼트 조각으로 분할되어 'BD_Fragment' 필드를 통하여 전송된다. BD 에 관한 자세한 설명은 도 23에서 후술한다.
도 22b은 본 발명에 따른 BD_Packet 필드의 구조에 관한 일 실시예를 설명한다.
도 22b에 도시된 BD Packet 필드는 'System_time_flag' 필드 및 'system_time' 필드를 제외하면 도 22a에 도시된 BD packet 필드와 동일하다.
'System_time_flag' 필드는 시스템 시간(system time) 정보가 존재하는지를 나타낸다. 본 명세서에서 'system_time' 필드가 시스템 시간 정보를 포함한다. 필드 값이 '1'로 설정되면, 'system_time' 필드가 존재한다.
'system_time' 필드는 시스템 시간을 나타낸다. 시스템 시간은 UTC와 같은 어디에서나 동일한 절대 시간에 기초하여 표현될 수 있다. 그러나, 절대 시간이 아닌 송출 시스템에 영향을 받는 시간에 기초하여 표현될 수 있다. 시스템 시간은 단말 내의 시간을 보정하는데 사용될 수 있으며, 이를 위해 지역에 다른 차이 값(offset 시간)을 포함할 수 있다. 시스템 시간은 서비스를 제공하는 측과 서비스를 수신하는 측의 시계를 동일하게 하는데 혹은 보정하는데 사용될 수 있다. 일 예로, ESG와 같은 정보는 각 서비스에 대해 시작 혹은 종료 시간과 같은 시간 정보를 포함할 수 있다. 이 때, 방송 수신 장치가 시스템 시간 정보를 이용하여 정확한 시간에 사용자에게 서비스를 시작 혹은 종료할 수 있도록 할 수 있다.
도 23는 본 발명에 따른 방송 기술자(Boradcast Descriptor, BD)의 구조에 관한 일 실시예를 설명한다.
BD 는 다수의 BD 프레그먼트로 단편화되고, BD_packet 필드로 맵핑된다.
'number_of_BD' 필드는 후술할 'Broadcast_Descriptor_information '필드의 개수를 나타낸다.
'tag' 필드는 'Broadcast_Descriptor_information'필드의 데이터 타입을 나타낸다. 'tag' 필드 값에 따른 데이터 타입의 일 예는 다음의 표 6에 의한다.
[ 표6]
Figure 112009047453220-pct00006
'length' 필드는 'Broadcast_Descriptor_information' 필드의 길이를 나타낸다.
'Broadcast_Descriptor_information' 필드에 포함된 데이터 타입은 상술한 표6에 의하여 결정된다. 각각의 데이터 타입에 따른 'Broadcast_Descriptor_information' 필드의 구조는 도 24 및 도 25에서 후술한다.
도 24a는 도 23에 도시된 'tag'필드 값이1인 경우의 Channel_info_update() 필드의 구조에 관한 일 실시예를 나타낸다.
'channel_info_update()' 필드는 터보 채널 정보를 업데이트 하는 경우에 사용된다. 'update_frame_counter'필드는 새로운 터보 채널 정보가 언제 적용될 것인지를 나타내며, 버전과 터보 채널 구성 정보등이 'Channel_info_update()' 필드에 포함될 수 있다.
'update_frame_counter' 필드는 새로운 TCC가 적용되는 프레임을 상대적으로 나타낸다.
'new_TCC_version' 필드는TCC 정보의 버전을 나타낸다. 'new_TCC_version' 필드는 업데이트 되는 시점의 SIC내에 존재하는 'TCC_version' 필드와 동일해야 한다.
'number_of_turbo_channel' 필드는 다음에 존재하는 'new_turbo_channel_configuration()' 필드의 개수를 나타낸다.
'new_turbo_channel_configuration()' 필드의 구조는 상술한 'turbo_channel_configuration()' 필드의 구조와 동일할 수 있다.
도 24b는 본 발명에 따른 Channel_info_update() 필드의 구조에 관한 다른 실시예를 나타낸다.
도 24b에 도시된 'Channel_info_update()' 필드는 'next_update_offset '필드를 제외하면 도 24a과 동일하므로 이하 설명을 생략한다.
'next_update_offset' 필드는 새로운 TCC가 적용되는 프레임을 나타낸다. 필드 값은 'BD_next_update_offset'에 기초한 상대적인 값이다.
도 24c는 본 발명에 따른 Channel_info_update() 필드의 구조에 관한 다른 실시예를 나타낸다.
도 24c에 도시된 'Channel_info_update()' 필드는 'update_frame_counter'필드 및 'new_TCC_version '필드를 제외하면 도 24b과 동일하다.
'update_frame_counter' 필드는 새로운 TCC가 적용되는 프레임을 나타낸다.
'new_TCC_version ' 필드는TCC의 버전 정보를 나타낸다. 버전 값은 SIC내의 TCC의 버전과 동일하여야 한다.
도 25a는 도 23에 도시된 'tag'필드 값이1인 경우의 IP 맵핑 기술자(IP mapping descriptor)의 일 실시예를 나타낸다.
IP 맵핑 기술자는 IP 스트림과 터보 채널간의 맵핑 정보를 제공하며, 터보 채널 정보, IP주소, MAC 주소 및 IP에 관한 간단한 설명 중 적어도 하나가 포함될 수 있다. 본 실시예에서 IP Mapping Table(이하 IMT)은 IP 맵핑 기술자를 나타낸다.
'Extended_version' 필드는IMT가 업데이트 되었는지를 나타낸다. 필드 값이 '0'으로 설정되면, 'BD_version_numer' 필드가 업데이트 되었다하더라도 IMT는 업데이트 되지 않음을 의미할 수 있다.
'Number_of_IP' 필드는IP 스트림들의 개수를 나타낸다.
'Reference_ch_flag' 필드는 현재 채널이 참고 채널(reference channel)인지를 나타낸다. 필드 값이 '1'로 설정되면, 현재 채널이 참고 채널임을 의미할 수 있다. 참고 채널의 일 예로는 통합된 ESG가 포함된 채널을 들 수 있다. ESG 정보는 용량이 크기 때문에 일반적으로 하나의 채널에 전체 ESG 정보를 포함하지 못할수도 있다. 이 때, 방송 수신 장치는 참고 채널만을 통하여 모든 ESG 정보를 수집할 수 있다. 따라서, 개별 채널에는 참고 채널에 비해 상대적으로 적은 양의 ESG만을 포함하여 전송할 수 있다. 이를 통하여 컨텐트에 보다 많은 대역을 할당할 수 있게 된다.
'turbo_channel_id' 필드는 현재 터보 채널의 식별자를 나타낸다.
'LMT_index_number' 필드는 터보 채널내의 IP 스트림들의 위치를 나타낸다. IP 스트림들은 터보 채널내의 서브 데이터 채널에 맵핑된다.
'number_of_IP_ch_descriptor' 필드는 이후에 존재하는 'IP_channel_description' 필드의 개수를 나타낸다.
'IP_channel_description' 필드는 IP 채널의 부가적인 설명을 포함한다. 'IP_channel_description' 필드에 관한 자세한 설명은 도 26에서 후술한다.
도 25b는 본 발명에 따른 IP 맵핑 기술자(IP mapping descriptor)의 다른 실시예를 나타낸다.
도 25b에 도시된 IMT 는 'number_of_channel'필드 및 'VMI' 필드를 제외하면 도 25a와 동일하다.
'number_of_channel' 필드는 터보 채널 또는 서브 데이터 채널의 개수를 나타낸다.
'VMI(Virtual Map ID)' 필드는 터보 채널내의 서브 데이터 채널의 식별자를 나타낸다.
도 26는 도 25a에 도시된 IP_channel_description 필드의 구조에 관한 일 실시예를 나타낸다.
'IP_channel_description' 필드는 상술한 바데로 IP 채널에 관한 부가 정보를 전송하는데 사용된다.
'tag' 필드는 'IP_channel_table'필드에 포함된 데이터의 종류를 식별하는데 사용된다. 'tag'필드 값에 따른 데이터의 종류에 관한 일 예는 다음의 표 7에 따른다.
[ 표7]
Figure 112009047453220-pct00007
'Length' 필드는 'IP_channel_description' 필드의 길이를 바이트 단위로 나타낸다.
'IP_channel_table()' 필드는 IP 주소 및 포트와 같은 IP 채널 정보를 나타낸다. 'IP_channel_table()' 필드에 관한 자세한 설명은 도 27 내지 도 29에서 후술한다.
도 27a는 도 26에 도시된 'tag'필드 값이 '1'인 경우의 IP_address_table 필드의 구조에 관한 일 실시예를 나타낸다.
'IP_verseion' 필드는4 또는 6과 같은 IP 버전을 나타낸다. IP의 버전은 실시예에 불과하며, 다른 버전이 예약될 수 있다.
IPv4_address 에 관한 자세한 설명은 RFC 791에 기재되어 있으며, IPv6address에 관한 설명은 RFC 2460에 기재되어 있으므로 이하 설명을 생략한다. 또한, Port_number에 관한 자세한 설명은 TCP에 관한 RFC 793 및 UDP를 위한RFC 768에 기재되어 있다.
도 27b는 도 26에 도시된 'tag'필드 값이 '1'인 경우의 IP_address_table 필드의 구조에 관한 다른 실시예를 나타낸다.
도 27b에 도시된 'IP_address_table' 필드는 'port_number_usage_flag' 필드를 제외하면, 도 27a와 동일하다.
'Port_number_usage_flag' 필드는 포트 번호가 존재하는지를 나타낸다. 본 실시예에서는, 'IP_address_table' 필드내에 'port_number' 필드가 존재하는지를 나타낸다.
도 28는 도 26에 도시된 'tag'필드 값이 '2'인 경우의 MAC_address_table 필드의 구조에 관한 일 실시예를 나타낸다.
Mac_address 에 관한 자세한 설명은 RFC 1042에 기재되어 있으므로 설명을 생략한다.
도 29는 도 26에 도시된 'tag'필드 값이 '3'인 경우의 Text_description_table 필드의 구조에 관한 일 실시예를 나타낸다.
'text_description_table' 필드는 IP 채널에 관한 텍스트 설명 정보를 제공한다.
'ISO_639_language_code' 필드는 이후에 존재하는 텍스트 정보가 ISO 639-3 언어 코드에 의하여 분류되었음을 나타낸다. 본 실시예에서, 'description'필드가 텍스트 정보를 포함한다.
'description' 필드는IP 채널에 관한 텍스트 설명을 제공한다. 텍스트 설명은IOS 8859-1 문자들에 의하여 코딩된다.
계속하여 MCAST 시스템의 다중화 구조를 설명한다.
전송 프레임은 다수의 터보 채널들을 포함하고, 각각의 터보 채널들은 다수의 서브 채널들을 포함한다. 또한, 각각의 서브 채널은 서브 데이터 채널들을 포함할 수 있다. 서브 채널에는 동일한 타입의 데이터가 전송된다. 서브 데이터 채널들은 서비스 그 자체이거나 서비스의 컴포넌트 일 수 있다.
한편, MCAST에서는 다양한 타입의 데이터를 다중화하여 전송하거나, 특정 타입의 데이터만을 전송할 수 있다. 전자의 일 예로, 시그널링 데이터, 실시간 미디어 데이터, IP 데이터, 오브젝트 데이터 및 시그널링 데이터를 다중화하여 전송할 수 있다. 후자의 일 예로 시그널링 데이터 및 IP 데이터만이 전송될 수 있다. 이 때, 각각의 서브 데이터 채널은 IP 압축 타입에 따라서 분류될 수 있다.
시그널링 데이터는 LMT및 LIT 중 적어도 하나를 포함하는 168 또는 188(또는 187) 바이트의MCAST 전송 패킷에 의하여 전송된다. 전송 패킷의 길이는 변경될 수 있다. LMT는 지원되는 데이터 타입을 위한 모든 서브 데이터 채널들의 위치, VMI 및 서브 데이터 채널의 타입등을 나타낸다. 또한, 서브 데이터 채널에 맵핑되는 데이터 타입의 위치를 제공하거나, 터보 채널내의 IP 스트림들의 위치를 제공할 수 있다.
후술할 LMT는 터보 데이터 채널내의 임의의 전송 패킷내에 위치하거나 특정한 위치에 존재하는 패킷내에서 주기적 또는 비주기적으로 존재할 수도 있다. 예를 들면, 처음으로 존재하는 시그널링 서브 데이터 채널에 위치하거나, MCAST 패킷 해더에 위치하며, LMT는 매 프레임마다 존재할 수도 있으며 프레임 상에서 서비스 컴포넌트들의 위치가 고정되어 있는 경우에는 전송되지 않을 수도 있다.
LIT 는 서비스 구성 정보를 포함하며, 서브 데이터 채널의 번호 및 식별자를 포함한다.
종래의 방송 시스템에서는 PID 필터링을 통하여 원하는 프로그램을 검색하였으나, MCAST에서는 LMT 및/또는 LIT를 이용하여 프레임별로 각각의 서비스를 구성하는 데이터의 정확한 위치를 알 수 있도록 함으로써 필터링 과정을 거치지 않고서도 사용자에게 원하는 서비스를 쉽게 제공할 수 있게 된다.
도 30a는 본 발명에 따른 MCAST 다중화 구조의 일 실시예를 나타낸다.
도 30a 에서는 시그널링 데이터 , 실시간 데이터 , IP데이터 및 오브젝트 데이터를 다중화하는 경우를 나타낸다 . 프레임은 LMT 또는 LIT와 같이 서비스에 접근하기 위한 서비스 접근 영역과 데이터를 전송하는 데이터 영역으로 구분된다 . 본 발명에 따른 MCAST 전송 프레임은 다른 방송 시스템의 전송 프레임의 일부로 삽입되어 전송되거나 , 독자적으로 전송되거나 , 다른 방송 시스템의 전송 프레임에 일대일로 맵핑되어 전송될 수도 있다 . 본 실시예에서는 MCAST 전송 프레임이 ATSC 전송 프레임에 삽입되어 전송된다.
상술한바대로 MCAST 전송 프레임은 데이터의 타입에 따라 구별되는 서브 채널들로 구분된다 . 서브 채널들은 데이터 스트림을 전송하는 터보 채널을 데이터의 타입에 따라 물리적으로 구분하여 보다 세분화한 채널을 말한다 . 도 30a에서 서브 채널들은 실시간 데이터 타입을 위한 서브 채널 , IP 데이터 타입을 위한 서브 채널 및 오브젝트 데이터 타입을 위한 서브 채널로 구분되었다 .
서브 채널은 독립적인 서브 데이터 채널들로 나뉘어질 수 있다 . 서브 데이터 채널은 하나 이상의 전송 패킷으로 구성된다 . 서브 데이터 채널은 ATSC 프레임내에서 188바이트(또는 168 바이트)의 MCAST 전송 패킷의 집합들로 구성된다. 패킷의 길이는 가변적일 수 있다.
도 30b는 본 발명에 따른 MCAST 다중화 구조의 다른 실시예를 나타낸다.
도 30b에서는 시그널링 데이터 및 IP 데이터만을 다중화하는 경우이다 . LMT 정보는 SIC 또는 IP 데이터 타입의 서브 채널에 포함되어 전송될 수 있다 .
도 31a는 본 발명에 따른 MCAST 프레임 구조 및 LMT에 관한 일 실시예를 나타낸다.
도 31a 는 도 30a에 도시된 서브 채널을 보다 상세히 나타내었다. 도 31a를 참고하면, MCAST 전송 프레임은 시그널링 서브 채널, 실시간 미디어 서브 채널, IP 서브 채널 및 오브젝트 서브 채널로 구성된다. 즉, MCAST 전송 프레임을 통하여 실시간 미디어 데이터, IP 데이터, 오브젝트 데이터등 세가지 타입의 데이터 중 적어도 하나 이상의 데이터가 전송된다.
또한, 각각의 서브 채널은 서브 데이터 채널로 구성된다.
실시간 미디어 서브 채널은 A/V 스트림과 같은 실시간 미디어 데이터를 전송하기 위한 것으로, 본 실시예에서는 서브 데이터 채널 1(R-1) 및 서브 데이터 채널 2(R-2)로 구성된다. IP 서브 채널은 IP 데이터를 전송하기 위한 것으로 본 실시예에서는 서브 데이터 채널(IP-1)로 구성된다. 오브젝트 서브 채널은 방송 서비스 수신 장치에서 실시간으로 또는 수신되어 저장된 후에 이용되는 오브젝트 데이터를 전송하기 위한 것으로, 본 실시예에서는 서브 데이터 채널 1(O-1), 서브 데이터 채널 2(O-2), 서브 데이터 채널 3 (O-3)및 서브 데이터 채널 4((O-4)로 구성된다.
하나의 서비스는 하나 이상의 서비스 컴포넌트들로 구성되어 있다. 따라서, 어떤 서비스를 제공하기 위해서는 그 서비스를 구성하는 서비스 컴포넌트들을 모두 수신하여야 한다. 서브 데이터 채널은 하나의 서비스 컴포넌트 만을 전송하는 통로이다. 따라서, 하나의 서비스에 접근하기 위해서는 각 서비스 컴포넌트를 전송하고 있는 각 서브 데이터 채널의 위치를 알고 있어야 한다.
이와 같이 서비스를 구성하는 각 서비스 컴포넌트에 접근하기 위한 LMT 또는 LIT와 같은 서비스 접근 정보는 전송 패킷의 해더부에 포함된다. 전송 패킷은 해더 필드, LMT 필드, LIT. 필드 및 페이로드를 포함할 수 있다.
LMT 필드는 서브 데이터 채널의 구성 및 물리적인 위치 정보를 제공하기 위한 필드로써, LMT 필드의 구조에 관한 자세한 설명은 도 34에서 후술한다.
도 31b는 본 발명에 따른 MCAST 프레임 구조 및 LMT에 관한 다른 실시예를 나타낸다.
도 31b에서는, MCAST 프레임을 통하여 IP 데이터만을 전송하며, 서브 데이터 채널을 식별하기 위한 VMI 정보가 포함되어 있다.
MCAST 프레임에서 서브 데이터 채널의 위치를 아는 것은 매우 중요하며, 이러한 정보는 LMT에 포함되어 있음은 상술한 바이다. 이 때, 서브 데이터 채널의 위치는 프레임내에서의 오프셋 값에 의하여 구분된다. 그러나, 서브 데이터 채널이 추가되거나 제거된 경우와 같이 서브 데이터 채널에 변경이 발생한 경우, 이를 인지하는 것이 필요하며, VMI를 이용하여 서브 데이터 채널들을 식별할 수 있게되면 서브 데이터 채널의 변경을 용이하게 알 수 있게 된다. VMI에 관한 자세한 설명은 도 32에서 후술한다.
도 32는 본 발명에 따른 VMI를 이용하여 서브 데이터 채널의 변경을 확인하는 방법에 관한 일 실시예를 나타낸다.
본 발명에 따른 VMI는 LMT,LIT,IMT 와 같은 시그널링 정보에 포함된다. VMI는 서브 데이터 채널들을 식별하기 위한 식별자로써 VMI를 통하여 서브 데이터 채널이 변경되었는지 여부를 알 수 있다.
도 32를 참고하면, 이전 프레임에서는 서비스 1을 구성하는 서브 데이터 채널은 오디오 1, 비디오 1 및 이미지 1이다. 이들 서브 데이터 채널에는 1,3,5의 VMI 값이 할당되어 있음을 알 수 있다.
다음 프레임에서는 이미지 1에 해당하는 서브 데이터 채널이 제거되었다. 만일, 서브 데이터 채널의 위치를 프레임상에서의 오프셋으로만 표시하면 각각의 프레임마다 오프셋 값이 변경되므로, 오프셋 값을 식별자로 사용하는 것은 불합리하다. 그러나, VMI를 이용하여 서브 데이터 채널에 고유한 식별자를 부여함으로써 변경이 발생한 서브 데이터 채널을 정확하게 인지할 수 있게된다.
도 33에서는 본 발명에 따른 VMI를 이용하여 서비스를 획득하는 일 실시예에 관한 흐름도를 나타낸다.
단계 3310에서는, LMT 및/또는 LIT를 획득한다.
단계 3320에서는, 요청된 서비스를 구성하는 서비스 컴포넌트가 전송되는 서브 데이터 채널에 관한VMI를 확인한다.
단계 s3330에서는, IMT를 획득한다.
단계 s3340에서는 현재 터보 채널내의 VMI를 확인한다.
단계 s3350에서는 원하는 서브 데이터 채널에 접근하여 데이터를 획득한다.
도 34a는 본 발명에 따른 LMT의 구조에 관한 일 실시예를 나타낸다.
본 발명의 일 실시예에 따른 LMT는 타입 비트맵 필드, 버전 넘버 필드 및 적어도 하나의 서브 데이터 채널 넘버 필드를 포함한다.
타입 비트맵 필드는 소정의 주기에 따라 전송되는 MCAST 전송 프레임에 어떤 데이터가 포함되어 있는지를 나타낸다. MCATS 전송 프레임이 오브젝트 데이터, 실시간 미디어 데이터 및IP 데이터를 전송하는 것으로 가정한다.
타입 비트맵 필드는 3비트로 구성되며, 각 비트가 타입별 데이터의 존재 여부를 나타낼 수 있다. 예를 들면, 첫번째 비트는 프레임내에 실시간 미디어 데이터가 존재하는지를, 두번째 비트는 IP 데이터가 존재하는지를, 세번째 비트는 오브젝트 데이터가 존재하는지를 각각 나타내며, 비트 값이 '1'인 경우에 대응하는 데이터가 존재하는 것으로 가정한다. 따라서 타임 비트맵 필드 값이 '111'이면, 모든 타입의 데이터가 존재함을 의미하고, 타임 비트맵 필드 값이 '011'이면 IP 데이터 및 오브젝트 데이터가 존재함을 의미한다.
버전 넘버는 LMT의 버전을 나타낸다.
서브 데이터 채널 넘버는 각 타입별 서브 데이터 채널의 개수를 나타낸다. 서브 데이터 채널 넘버는 서브 데이터 채널의 물리적인 주소를 나타내는 채널 포인터의 개수에 대응한다.
도34a를 참고하면, 실시간 미디어 데이터에 대응하는 채널 포인터가 '1'개 존재하므로, 실시간 미디어에 관한 서브 데이터 채널 넘버는 '1'이며, 실시간 미디어 데이터를 전송하는 서브 데이터 채널은 '1'개가 존재한다.
채널 포인터 필드는 각 서브 데이터 채널의 물리적인 위치를 나타낸다. 채널 포인터 필드에는 순차적으로 인덱스 넘버가 할당될 수 있다. 이와 같이 LMT에서 채널 포인터 필드에 순차적으로 부여되는 넘버를 LMT 인덱스 넘버라고 한다. LMT 인덱스 넘버는 채널 포인터 필드에 포함되지 않고, 방송 수신 장치가 LMT 필드를 해석하면서 각 채널 포인터 필드에 순차적으로 부여할 수 있다. LMT 인덱스 넘버는 LIT 구조에서 각 서비스를 구성하는 서브 채널의 채널 포인터를 참조하기 위하여 부여된다.
도 34b는 도 34a에 따른 LMT구조의 상세한 일 실시예를 나타낸다.
타입 비트맵 필드 값이 '011'이며 , IP 데이터에 대한 서브 데이터 채널 넘버가 '2'이고, 오브젝트 데이터에 관한 서브 데이터 채널 넘버가 '3'인 경우를 가정하면, 채널 포인터 1 및 2는 IP 데이터에 대한 서브 데이터 채널의 위치를 나타내고, 채널 포인터 3 내지 5는 오브젝트 데이터에 대한 서브 데이터 채널의 위치를 나타낸다. LMT 인덱스 번호를 각각의 채널 포인터에 순차적으로 부여하면 채널 포인터 1 내지 5에는 LMT 인덱스 번호 1 내지 5가 각각 할당된다.
도 35a 및 35b는 본 발명에 따른 LMT 구조에 관한 다른 실시예를 나타낸다.
'tag' 필드는 이후에 LMT 정보가 포함되는지를 나타낸다. 본 실시예에서 'LMT_information'필드가 실제 LMT 정보를 포함한다.
'length' 필드는8비트로 구성되며, 'LMT_information'필드의 길이를 나타낸다.
'LMT_information' 필드는 서브 채널내의 서브 데이터 채널들의 위치 정보 및 시그널링 서브 채널내의 시그널링 데이터(Signaling data,SD)의 위치를 나타낸다. 'LMT_information'필드에 관한 자세한 설명은 도 36c에서 후술한다.
도 36는 도 35에 도시된 'LMT_information'필드의 구조에 관한 일 실시예를 나타낸다.
'LMT_coverage' 필드는 현재 LMT와 동일한 이후에 존재하는 LMT의 개수를 나타낸다. 일 예로, 후술할 'version_numer'필드 값이 '1'이고, 'LMT_coverage' 필드 값이 '001'이면, 버전이 '1'인 LMT가 이후에 하나 존재함을 의미한다. 유사하게 이후에 존재하는 LMT가 현재 LMT와 동일하지 않으면, 필드 값은 '0'으로 설정된다.
'version_number' 필드는4비트로 구성되며, LMT의 버전을 나타낸다. LMT와 관련된 필드 중 하나가 변경될 때마다. 버전 넘버가 16 모듈로에 의하여 1씩 증가할 것이다.
'LMT_boundary' 필드는 현재 LMT가 커버하는 패킷의 위치를 나타낸다. 'LMT_boundary' 필드는 현재 LMT가 커버하는 패킷의 오프셋 값, 또는 패킷의 개수와 같이 현재 LMT가 커버하는 패킷을 나타낼 수 있는 값이면 어떠한 값도 무관하다.
'SD_end_offset' 필드는8비트로 구성되며, 시그널링 서브 채널의 마지막 위치를 나타낸다. 시그널링 서브 채널에 시그널링 데이터 없으면, 필드 값은 '0'로 설정되어야 한다.
'number_of_IP' 필드는IP 서브 데이터 채널의 개수를 나타낸다.
'IP_end_offset' 필드는8비트로 구성되며, IP 서브 채널내의 IP 서브 데이터 채널들의 마지막 위치를 나타낸다. 첫 번째 IP 서브 데이터 채널에 IP 데이터가 포함되지 않으면, 필드 값은 '0'으로 설정되어야 한다.
도 37a 및 37b는 본 발명에 따른 LMT 구조 및 LMT_information 필드에 관한 다른 다른 실시예를 나타낸다.
도 37a에서 LMT는 서브 데이터 채널들의 종료 오프셋 정보를 나타낸다 . 서브 데이터 채널들은 시그널링 데이터 , 실시간 미디어 데이터 , IP 데이터 및 오브젝트 데이터등 4가지 타입의 데이터를 각각 전송하며 , 타입별 서브 데이터 채널의 위치는 종료 오프셋으로 표현된다 .
각각의 서브 데이터 채널의 시작 값은 항상 ' 1 '이고 각 서브 데이터 타입별로 별도로 번호가 할당된다 . 단 , 첫 번째 서브 데이터 채널이 존재하지 않는다면 , next_indicator()의 필드 값은 ' 0 '으로 설정된다 .
만일 한 개 이상의 파슬에서 유효한 데이터 패킷이 일시적으로 존재하지 않는 경우 , 해당 서브 데이터 채널의 오프셋은 이전 패킷의 오프셋과 동일하게 적용된다 . 단 첫 번째 서브 데이터 채널의 경우는 0으로 설정된다 .
각 필드의 정의는 도 37b를 참고하여 설명한다 .
' SEP_flag ' 필드는 SEP(Signal encapsulation packet)의 존재 여부를 나타낸다 .
' SEP_end_offset ' 필드는 7비트로 구성되며 , ' SEP_flag ' 필드 값이 ' 1 '로 설정되는 경우에 SEP 서브 데이터 채널의 종료 위치를 나타낸다 .
첫번째 ' next_indicator ' 필드는 이후에 ' real_time_end_offset ' 필드가 또 존재하는지를 나타낸다 . 필드 값이 ' 0 '으로 설정되면 , 현재 필드가 마지막이며 , 필드 값이 ' 1 '로 설정되면 뒤이어 ' real_time_end_offset ' 필드가 존재함을 의미한다 .
' real-time_end_offset ' 필드는 8비트로 구성되며 , 실시간 미디터 데이터를 전송하는 실시간 서브 데이터 채널의 종료 위치를 나타낸다 . 만일 , 현재 MCAST 파슬이 실시간 데이터를 포함하고 있지 아니하면 , 필드 값이 ' 0 '으로 설정되거나 이 필드 자체가 존재하지 않을 수도 있다 .
두번째 ' next_indicator ' 필드는 이후에 ' IP_time_end_offset ' 필드가 또 존재하는지를 나타낸다 . 필드 값이 ' 0 '으로 설정되면 현재 필드가 마지막이며 , ' 1 '로 설정되면 뒤이어 IP_end_offset 필드가 존재함을 의미한다 .
' IP_end_offset ' 필드는 7비트로 구성되며 , IP 데이터를 전송하는 IP 서브 데이터 채널의 종료 위치를 나타낸다 . 현재 MCAST 파슬내에 IP 서브 데이터 채널이 존재하지 않으면 , 필드 값은 ' 0 '으로 설정되거나 , 이 필드 자체가 존재하지 않을 수도 있다 .
세번째 ' next_indicator ' 필드는 이후에 ' object_time_end_offset ' 필드가 존재하는지를 나타낸다 . 필드 값이 '0 '으로 설정되면 현재 필드가 마지막이며 , ' 1 '로 설정되면 뒤이어 ' object_end_offset ' 필드가 존재한다 .
' object_end_offset ' 필드는 7비트로 구성되며 , 오브젝트 데이터를 전송하는 오브젝트 서브 데이터 채널의 종료 위치를 나타낸다 . 현재 MCAST 파슬내에 오브젝트 서브 데이터 채널이 존재하지 않으면 필드 값은 ' 0 '으로 설정되거나 , 이 필드 자체가 존재하지 않을 수도 있다 .
도 38은 본 발명에 따른 LMT 구조에 관한 다른 실시예를 나타낸다.
' LMT_coverage ' 필드는 현재 LMT와 동일한 이후에 존재하는 LMT의 개수를 나타낸다 . 이후에 존재하는 LMT가 현재 LMT와 다르면 , 필드 값이 ' 0 '으로 설정된다 .
' version_numer ' 필드는 2비트로 구성되며 , LMT의 버전 넘버를 나타낸다 . LMT 필드들 중 어느 하나가 변경될 때마다 , 버전 넘버가 모듈로 4에 의하여 1씩 증가할 것이다 .
' selector_bits ' (SEP,reserved,IP) 필드는 존재하는 서브 데이터 채널의 타입을 나타낸다 . 도 38은 MCAST 프레임이 IP 데이터만을 전송하는 경우를 가정하므로 , 두번째 비트는 예약 비트이다 . 첫번째 비트가 ' 1 '이면 , SEP 서브 데이터 채널이 존재함을 의미하고 , 세번째 비트가 ' 1 '이면 IP 서브 데이터 채널이 존재함을 의미한다 .
' LMT_length ' 필드는 LMT 필드의 길이를 나타낸다 .
' LMT_boundary ' 필드는 현재 LMT에 의하여 커버되는 패킷의 개수 또는 패킷 오프셋을 나타낸다 .
' number of SEP ' 필드는 8비트로 구성되며 , SEP 서브 데이터 채널들의 개수를 나타낸다 .
' VMI ' 필드는 서브 데이터 채널의 식별자를 나타낸다 . 이 값은 터보 채널내에서 유일하다 .
' SEP_end_offset ' 필드는 8비트로 구성되며 , SEP 서브 데이터 채널의 종료 위치를 나타낸다.
' num_of_IP ' 필드는 IP 서브 데이터 채널들의 개수를 나타낸다 .
' IP_end_offset ' 필드는 8비트로 구성되며 , IP 서브 채널의 종료 위치를 나타낸다 . SEP_end_offset 및 IP_end_offset 은 LMT가 존재하는 패킷을 기준으로 패킷 개수를 세어 계산한다. 본 발명의 다른 실시예에서는 단위로 오프셋을 계산할 수 있다.
도 39는 본 발명에 따른 MCAST 프레임 및 LIT의 구조에 관한 일 실시예를 나타낸다.
LIT 는ATSC 프레임내에서 데이터가 탑재되는 터보 채널의 첫번째에 위치하는 시그널링 서브 채널상에 존재할 수 있다. 모든 서비스는 하나 이상의 서비스 컴포넌트들로 구성되며, LIT는 서비스 컴포넌트들의 리스트를 나타낸다. 즉, LIT는 서비스 구성 정보를 나타낸다. 서브 데이터 채널의 위치는 상술한 LMT로부터 획득한다.
LIT 는LMT와 긴밀하게 연결되어 있으며, 매 프레임별로 존재할 수도 있으나 그렇지 않을 수도 있다.
도 40은 본 발명에 따른 LIT 구조에 관한 일 실시예를 나타낸다.
'service_number' 필드는 본 발명에 따른 MCAST 프레임 하나에 포함된 서비스의 개수를 나타낸다.
'version_number' 필드는LIT의 버전을 나타낸다.
각각의 서비스 필드는 서비스 식별자 필드 및 적어도 하나의 LMT인덱스 넘버 필드로 구성된다. LMT 인덱스 넘버 필드는 상술한바데로 채널 포인터에 부여되는 넘버이다. 따라서, 방송 수신 장치는 LIT를 해석하여 전송 프레임에서 원하는 서비스에 대한 서브 데이터 채널의 물리적 주소를 알 수 있다.
도 41a 및 41b는 본 발명에 따른 LIT 구조에 관한 다른 실시예를 나타낸다.
다수의 서브 데이터 채널이 모여서 하나의 서비스를 구성할 때 , LIT는 서비스가 어떻게 구성되는지를 나타낸다 . 서브 데이터 채널의 위치는 , LMT에 포함된 서브 데이터 채널의 오프셋 정보에 의하여 알 수 있다 . 즉 , 각각의 서브 데이터 채널의 누적 카운터에 의하여 각각의 구성 요소를 구분할 수 있다 .
' num_of_service ' 필드는 6비트로 구성되며 , 현재 프레임에서 제공될 수 있는 서비스들의 개수를 나타낸다 .
' version_number ' 필드는 10비트로 구성되며 , LIT 와 관련된 필드들의 버전 넘버를 나타낸다 . LIT와 관련된 필드들 중 하나가 변경될 때마다 버전 넘버가 1씩 증가할 것이다 .
' service_ID ' 필드는 8비트로 구성되며 , 터보 채널내의 서비스를 식별한다 .
' next_indicator ' 필드는 1비트로 구성되며 ,추가적인 ' next_indicator ' 필드 및 ' LMT_index_number ' 필드들이 존재하는지를 나타낸다 . 필드 값이 ' 1 '로 설정되면 , 추가적인 ' next_indicator ' 필드 및 ' LMT_index_number ' 필드들이 존재하고 , 필드 값이 ' 0 '으로 설정되면 더 이상의 ' next_indicator ' 필드 및 ' LMT_index_number ' 필드들이 존재하지 않는다 .
' type_info ' 필드는 ' LMT_index_number ' 필드가 지시하는 서브 데이터 채널의 타입을 나타낸다 . 필드 값에 따른 정의에 관한 일 예는 다음의 표 8에 따른다
[표 8]
Figure 112009047453220-pct00008
' LMT_index_number ' 필드는 7비트로 구성되며 , 각각의 LMT의 ' array ' 인덱스를 나타낸다 . 필드 값은 ' type_info ' 필드에 따라 개별적으로 증가한다 . 즉, 도 40에 LMT 인덱스 넘버는 서브 데이터 채널의 종류에 관계없이 순차적으로 증가하였다 . 그러나 , 도 41에서는 LMT 인덱스 넘버가 서브 데이터 채널의 종류에 따라 개별적으로 증가한다 .
일 예로 , MCAST 프레임내에 IP 서브 데이터 채널에 대응하는 채널 포인터가 ' 2 '개 존재하고 , 오브젝트 서브 데이터 채널에 대응하는 채널 포인터가 ' 3 '개 존재하는 경우를 가정하자 . 이 경우 , 도 40에 따르면 각각의 채널 포인터는 ' 1 '부터 ' 5 '까지의 LMT 인덱스 넘버가 순차적으로 부여되므로 , 오브젝트 서브 데이터 채널에 대응하는 채널 포인터는 각각 LMT 인덱스 넘버 3,4,5가 할당된다 . 그러나 , 도 41에서는 서브 데이터 채널의 종별에 따라 LMT 인덱스 넘버가 개별적으로 증가하므로 , 오브젝트 서브 데이터 채널에 대응하는 채널 포인터는 LMT 인덱스 넘버 1,2,3이 각각 할당된다 .
도 42a는 본 발명에 따른 LMT 및 LIT를 이용하여 서비스를 제공하는 방법의 일 실시예에 관한 흐름도를 나타낸다 .
도 42a에서, LMT필드는 일정한 주기를 가지고 전송되며,MCAST 프레임의 일정한 영역에 위치한다. 방송 서비스 수신 장치가 전송 프레임을 수신하면, 단계 S 4201에서, 방송 수신 장치는MCAST 프레임의 소정의 영역에 위치한 서비스 접근 정보를 포함하는 시그널링 패킷을 획득하여 해석한다.
단계 S 4203에서, 방송 서비스 수신 장치는 시그널링 패킷에 LMT 필드가 존재하는지 확인한다. 단계 S 4203에서, LMT 필드가 존재하지 않는 경우에는, 단계 4205에서, 방송 서비스 수신 장치에 이전 LMT가 저장되어 존재하는지 확인한다. 이전 LMT가 존재하는 경우에는 단계 S 4111로 진행한다.
단계 S 4203에서, LMT 필드가 존재하는 경우, 방송 서비스 수신 장치는 LMT 필드에 포함된 버전 정보를 이용하여 단계 S 4207에서, LMT 버전이 업데이트되었는지 확인한다. LMT 버전이 업데이트된 경우에는, 단계 S 4209에서 LMT 필드를 해석한다. 단계S 4209에서, LMT 필드가 해석되면 각 서브 데이터 채널의 위치 정보가 획득된다.
단계 S 4211에서, 방송 서비스 수신 장치는 LIT 필드가 존재하는지 확인한다. 단계S 4211에서, LIT 필드가 존재하지 않으면, 단계 S 4213에서 방송 서비스 수신 장치에 이전 LIT가 존재하는지 확인한다. 이전 LIT가 존재하는 경우에는 단계 S 4219로 진행한다.
단계 S 4211에서, LIT 필드가 존재하면, 단계 S 4215에서 LIT를 해석한다. 단계 S 4215에서 LIT가 해석되면 각 서비스에 대한 연결 정보 즉, 서비스 구성 정보가 획득된다.
LMT 및LIT의 해석 결과를 이용하여 단계 S4219에서 서비스를 획득하여 처리한다.
도 42b는 본 발명에 따른 LMT 및 LIT를 이용하여 서비스를 제공하는 방법의 일 실시예에 관한 흐름도를 나타낸다 .
도 42b에서 LMT는 다음 ' LMT_coverage ' 필드를 포함하므로 , LMT가 포함된 패킷에 에러가 있어 수신하지 못하는 경우 또는 주기적으로 삽입되지 아니하는 경우에도 다음 LMT의 위치를 알 수 있다 . 따라서 , LMT의 위치 및 삽입 주기는 가변적이다 . 단계 42b에서 단계 42a와 식별번호가 동일한 단계는 동일한 동작을 수행하므로 이하 설명을 생략한다 .
단계 s4220에서는 이전 LMT로부터 추출한 LMT 포인터 정보에 기초하여 MCAST 프레임내의 LMT를 추출한다 . LMT 포인터 정보는 다음 LMT의 위치를 지시한다 . 따라서 , MCAST 프레임내의 일정한 위치에 LMT가 삽입되지 않더라도 용이하게 LMT를 추출할 수 있다 .
단계 s4203에서 LMT 포인터 정보가 지시하는 위치에 LMT 필드가 존재하는지를 판단한다 . LMT 필드가 존재하는 경우에는 단계 s4207을 수행한다 . 그러나, LMT 필드가 존재하지 않는 경우에는 단계 s4230를 수행한다 LMT 필드가 존재하지 않는 경우라 함은 , LMT 필드가 누락된 경우는 물론이고 , LMT 필드에 에러가 생긴 경우 를 총칭한다 .
단계 s4220에서는 이전 LMT 필드에 포함된 동일 버전 LMT 개수 정보에 기초하여 이전 LMT가 유효한지를 판단한다 . 이전 LMT가 유효하다는 것은 이전 LMT를 계속해서 사용할 수 있음을 의미한다 . 만일 , 이전 LMT가 여전히 유효하면 , 단계 s4211을 수행한다 .
이하에서는 데이터의 타입에 따른 전송 정보의 구조를 살펴본다.
우선, 실시간 리치 서비스의 경우, MPEG-2 및 ATSC의 PSI가 획득되어야 하며, 방송 시스템내의 멀티미디어 기본 스트림들을 디코딩하기 위하여 이들이 먼저 디코딩되어야 한다. 이 후, 디코더는 최초의 디코딩할 수 있는 프레임을 기다려야 한다. 이러한 일련의 과정을 거친 후에 사용자는 비디오를 시청할 수 있다. MCAST에서, 중요한 디코딩 정보는 각각의 멀티미디어 기본 스트림내에 포함된 정보 기술자(information descriptor)에 인코딩된다.
이 때, 고속 접근을 위하여 디코더 구성 정보 및 멀티미디어 데이터가 동시에 전송할 수 있음은 상술한 바이다. 즉, 디코더 구성 정보(Decoder Configuration Information,를 I 프레임에 부착하여 전송한다. DCI 에 관한 자세한 설명은 도 4에서 상술하였으므로 이하 설명을 생략한다.
도 43은 본 발명에 따른 오브젝트 전송 정보의 구조에 관한 일 실시예를 나타낸다.
도 43에 도시된 'Object_Delivery_information' 필드는 오브젝트를 전송하기 위한 시그널링 정보를 포함한다. 'Object_Delivery_information' 필드는 오브젝트의 만료 시간, AL-FEC를 위한 파라미터들 및 부가 기술자를 포함한다. 디렉토리의 컴포넌트들은 오브젝트들 또는 다른 디렉토리들이다.
'object_Delivery_information' 필드는 SEP(Signaling Encapsulation Packet)에 의하여 전송된다.
'directory_information_flag' 필드는 디렉토리가 존재하는지를 나타낸다.
오브젝트 정보는 디렉토리를 갖는 트리 형식으로 표현될 수 있으며, 'Directory_information_flag' 필드 값이 '1'로 설정되면 디렉토리가 존재함을 의미할 수 있다.
'number_of_objects' 필드는 'object_delivery_information'필드에 의하여 전송되는 오브젝트의 개수를 나타낸다.
'number_of_directory' 필드는 디렉토리 정보의 개수를 나타낸다. 본 실시예에서는 'directory_information'필드가 디렉토리 정보를 포함한다.
'directory_information' 필드는 디렉토리 정보를 포함한다. 'directory_information'필드에 관한 자세한 설명은 도 44에서 후술한다.
'object_id' 필드는 오브젝트의 식별자를 나타낸다.
'expire_time_flag' 필드는 오브젝트에 관한 만료 시간이 존재하는지를 나타낸다.
'LMT_index_number' 필드는 데이터 타입에 의하여 분류된 서브 데이터 채널의 인덱스 넘버를 나타낸다.
'object_extension_id' 필드는 동일한 서브 데이터 채널내에서 복수개의 오브젝트들이 전송되는 경우, 오브젝트들의 추가적인 식별자로써 사용된다.
'AL-FEC_mode' 필드는AL-FEC 모드을 나타낸다. 필드 값에 따른 AL-FEC 모드에 관한 일 예는 다음의 표 9에 따른다.
[ 표 9]
Figure 112009047453220-pct00009
'total_length' 필드는 오브젝트의 길이를 바이트 단위로 나타낸다.
'time_table' 필드는 오브젝트들이 사용 기간이 만료된 후에 사용되지 않도록 하기 위한 시간 정보를 포함한다. 'time_table'필드에 관한 자세한 설명은 도 45에서 후술한다.
'encoding_mode' 필드는AL-FEC에 의하여 사용되는 인코딩 모드를 나타낸다. 필드 값에 따른 인코딩 모드에 관한 일 예는 다음의 표 10에 따른다.
[ 표10]
Figure 112009047453220-pct00010
'padding_length' 필드는 오브젝트의 마지막 소스 블록내의 패딩의 길이를 나타낸다.
'number_of_descriptors' 필드는 이후에 존재하는 'descriptor' 필드의 개수를 나타낸다.
'tag' 필드는 오브젝트들의 데이터 종류를 나타낸다. 본 실시예에서는 'descriptor'필드에 포함된 데이터의 종류를 나타낸다. 필드 값에 따른 데이터 종류의 일 예는 다음의 표 11에 따른다.
[ 표11]
Figure 112009047453220-pct00011
'length' 필드는descriptor 필드들의 길이를 바이트 단위로 나타낸다.
'descriptor' 필드는 'tag'필드 값에 따라 제공되는 기술자들이다. 'tag' 필드 값에 따른 'descriptor'필드에 관한 자세한 설명은 도 46 및 도 47에서 후술한다.
도 44는 도 43에 도시된 directory_information 필드의 구조에 관한 일 실시예를 나타낸다.
'number_of directory' 필드는 디렉토리들의 개수를 나타낸다.
'directory_id' 필드는 디렉토리의 식별자를 나타낸다.
'directory_name_length' 필드는 디렉토리 이름의 길이를 바이트 단위로 나타낸다.
'directory_name' 필드는ISO 8859-1 문자들로 인코딩된 디렉토리 이름을 나타낸다.
'number_of_components' 필드는 디렉토리에 포함된 컴포넌트들의 개수를 나타낸다.
'object_id, directory_id' 필드는 오브젝트들 또는 다른 디렉토리들의 식별자를 나타낸다.
도 45는 도 43에 도시된 time_table 필드의 구조에 관한 일 실시예를 나타낸다.
'years' 필드는 연도를 나타내며, 특정 시점부터의 경과 년도를 나타낼 수 있다. 일 예로, 1970년 이후의 경과 연도를 나타내는 경우 필드 값이 '0'으로 설정되면 1970년을 의미한다.
'months' 필드는1~12까지의 달을 나타낸다.
'days' 필드는 날짜를 나타낸다.
'hours' 필드는1~24까지의 시간을 나타낸다.
'minutes' 필드는1~60까지의 분을 나타낸다.
도 46은 도 43에 도시된 'tag'필드 값이 '1'인 경우의 'content_name_descriptor'필드의 구조에 관한 일 실시예를 나타낸다.
'comtent_name_length' 필드는 컨텐트 이름의 길이를 바이트 단위로 나타낸다.
'content_name' 필드는ISO 8859-1 문자들로 인코딩된 컨텐트의 이름을 나타낸다.
도 47은 도 43에 도시된 'tag'필드 값이 '2'인 경우의 'mime_type_description'필드의 구조에 관한 일 실시예를 나타낸다.
'mime_type_length' 필드는mime 타입의 길이를 바이트 단위로 나타낸다.
'mime_type' 필드는mime 타입을 나타낸다. 'mime_type'필드는 IANA에 등록된 어떤 미디어 타입의 문자열 인코딩으로 설정된다. 이에 관한 자세한 설명은 필드는 RFC 2045, RFC 2046, http://www.iana.org/assignments/media-typs에 기재되어 있으므로 이하 설명을 생략한다.
도 48은 본 발명에 따른 MCAST 시스템에서 캡슐화 패킷과 전송 패킷간의 관계를 나타낸다.
MCAST 시스템의 전송 계층은 캡슐화 계층 및 패킷화 계층의 두 부분으로 나뉜다. 캡슐화 계층은 어플리케이션 데이터의 프레그먼트를 담당하고, 전송 계층은, 캡슐화 패킷을 MCAST 전송 패킷으로 분할한다.
구체적으로, 캡슐화 계층에서는 모든 타입의 어플리케이션 데이터를 A-VSB전송 방식에 적합하도록 캡슐화한다. 즉, 어플리케이션 데이터 형식에 적합하도록 어플리케이션 데이터에 적응적인 구조의 캡슐화 패킷을 생성한다. 어플리케이션 데이터는 실시간 미디어 데이터, IP 데이터, 오브젝트 데이터 및 시그널링 데이터를 포함한다. 캡슐화 패킷은 어플리케이션 타입에 따라 특정한 구조를 갖는다.
패킷화 계층은, 캡슐화 계층에서 생성된 캡슐화 패킷을 적어도 하나의 전송 패킷으로 분할한다. 전송 패킷의 크기는 실시예에 따라서 168 바이트 또는 188바이트등과 같이 다양하게 결정된다.
MCAST 패킷의 페이로드는 얽혀서(concatenately) 전송될 수 있다. 즉, 하나의 MCAST 패킷에 둘 이상의 캡슐화 패킷의 일부 혹은 전부가 포함될 수 있다. 본 발명에서는 비트들을 적약하면서, 이러한 상황을 나타내기 위한 필드로써 first_last 및 pointer 필드가 사용된다.
후술할 전송 패킷의 해더 영역에 존재하는 'first_last'필드 및 'pointer_field' 필드의 정의에 관한 일 예는 다음의 표 12에 따른다.
[표 12]
Figure 112009047453220-pct00012
Figure 112009047453220-pct00013
'pointer_field' 필드는MCAST 전송 패킷에 둘 이상의 캡슐화 패킷이 포함되어 있는지를 나타낸다. 필드 값이 '1'로 설정되면, 현재MCAST 전송 패킷에 둘 이상의 캡슐화 패킷이 포함되어 있음을 나타낸다. 본 실시예에서는 필드 값이 '1'이므로 현재 MCAST 전송 패킷에는 둘 이상의 캡슐화 패킷이 포함되어 있다.
'first_last' 필드는 캡슐화 패킷의 시작 또는 끝이 현재 MCAST 전송 패킷에 포함되어 있는지를 나타낸다. 설명의 편의를 위하여 둘 이상의 연속하는 캡슐화 패킷에 있어서, 이전에 존재하는 패킷을 제 1 캡슐화 패킷으로 지칭하고 다음에 존재하는 패킷을 제 2 캡슐화 패킷으로 지칭한다. 둘 이상의 캡슐화 패킷이 MCAST 전송 패킷에 포함되는 경우에는 반드시 제 1 캡슐화 패킷의 끝과 제 2 캡슐화 패킷의 시작이 MCAST 전송 패킷에 포함되게 된다.
'first_last' 필드를 구성하는 첫번째 비트는 제 1 캡슐화 패킷의 시작이 MCAST 전송 패킷에 포함되어 있는지를 나타내며, 두번째 비트는 제 2 캡슐화 패킷의 끝이 현재 MCAST 전송 패킷에 포함되어 있는지를 나타낸다. 일 예로, 필드 값이 '10'인 경우에는 제 1 캡슐화 패킷의 시작과 끝은 현재 MCATS 전송 패킷에 모두 포함되며, 제 2 캡슐화 패킷은 시작만이 현재 MCAST 전송 패킷에 포함됨을 나타낸다.
도 49 내지 도 55에서는 캡슐화 패킷의 일 예들을 살펴본다.
도 49a 및 49b는 본 발명에 따른 시그널링을 위한 캡슐화 패킷의 구조에 관한 일 실시예를 나타낸다.
도 49a에 도시된 패킷은 4바이트의 해더와 페이로드를 갖는다. 페이로드는 ESG, EPG등과 같은 어플리케이션의 설명 또는 메타 데이터를 포함할 수 있다. 또한, 페이로드는 IP 맵핑 정보 테이블 및 오브젝트의 메타데이터 정보와 같은 선택적인(optional) 데이터를 포함한다.
'first_last' 필드는 2비트로 구성되며, 처음 또는 마지막 캡슐화 패킷인지를 나타낸다. 필드 값에 따른 정의에 관한 일 예는 상술한 표 5에 따른다.
'compression_flag' 필드는 1비트로 구성되며, 페이로드 데이터가 압축되었는지 압축되지 않았는지를 나타낸다. 필드 값이 '1'로 설정되면, 페이로드 데이터가 압축되었음을 의미할 수 있다.
'signal_type' 필드는 페이로드 데이터의 타입을 나타낸다. 필드 값에 따른 페이로드 데이터 타입에 관한 일 예는 다음의 표 13 또는 14중 하나에 의한다.
[ 표13]
Figure 112009047453220-pct00014
[ 표14]
Figure 112009047453220-pct00015
'sequence_number' 필드는8비트로 구성되며, 동일한 데이터 타입의 캡슐화 패킷내에서 증가하는 값이다. 필드 값이 최대 치를 초과하면 0으로 돌아온다.
'sequence_number' 필드는 재 전송동안 오브젝트 프레그먼트화 식별자를 위하여 사용된다.
'version_number' 필드는4비트로 구성되며, 시그널링 캡슐화 패킷(SEP)의 버전을 나타낸다. 페이로드가 한번 변경될 때마다, 버전 넘버는 1씩 증가한다.
'packet_length' 필드는 패킷내의 페이로드의 길이를 바이트 단위로 나타낸다.
'data_byte' 필드는8비트로 구성된다. 페이로드를 통하여 전송되는 데이터의 종류는 'signal_type' 필드 값에 의존한다.
도 50a 및 50b는 본 발명에 따른 실시간 데이터를 위한 캡슐화 패킷의 구조에 관한 일 실시예를 나타낸다.
도 50에 도시된 패킷은 실시간 데이터 타입을 위한 캡슐화 패킷으로 , 해더 , 부가 필드 및 페이로드를 갖는다 .
'first_last' 필드는 2비트로 구성되며, 처음 또는 마지막 캡슐화 패킷인지를 나타낸다. 필드 값에 따른 정의에 관한 일 예는 상술한 표 5에 따른다.
'RT_type' 필드는 6비트로 구성되며, 페이로드를 통하여 전송되는 데이터의 타입을 나타낸다. 필드 값에 따른 데이터 타입에 관한 일 예는 다음의 표 15에 따른다.
[ 표15]
Figure 112009047453220-pct00016
'DCI_flag' 필드는 캡슐화 패킷 해더에 디코더 구성 정보(Decoder Configuration Information)가 존재하는지를 나타낸다. 본 실시예에서 'DCI_field' 필드가 디코더 구성 정보를 포함한다.
'DC_version' 필드는DCI의 버전을 나타낸다. 필드 값은 전송 패킷의 DC 필드(또는 DCI_field) 값과 밀접하게 연결되며, 동일하게 설정되어야 한다.
'addition_flag' 필드는 캡슐화 패킷 해더에 부가 정보가 존재하는지를 나타낸다. 본 실시예에서'additional_field'필드는 부가 정보를 포함한다.
'DCI_length' 필드는 패킷 해더내의 'DCI_field'길이를 바이트 단위로 나타낸다.
'DCI_field' 필드는 디코더 구성 정보 데이터를 나타낸다. 'DCI_field' (또는 'Decoder_Configuration_Information')필드에 관한 자세한 설명은 도 4에서 상술한 바이다.
'packet_length' 필드는 'packet_length' 필드 바로 다음에 존재하는 패킷의 페이로드의 길이를 바이트 단위로 나타낸다.
'PTS_flag' 필드는 캡슐화 패킷의 해더내에 PTS 정보가 존재하는지를 나타낸다. 본 실시예에서 'PTS'필드는 PTS 정보를 포함한다.
'DTS_flag' 필드는 캡슐화 패킷의 해더내에 DTS 정보가 존재하는지를 나타낸다. 본 실시예에서 'DTS'필드는 DTS 정보를 포함한다.
'padding_flag' 필드는 캡슐화 패킷의 해더내에 패딩 바이트가 존재하는지를 나타낸다.
'scrambling_control' 필드는 캡슐화 패킷의 페이로드의 스크램블링 모드를 시그널링한다.
'PTS' 필드는33비트로 구성되며, ISO/IEC 13818-1에서 정의된 바와 같은 PTS를 나타낸다.
'DTS' 필드는33비트로 구성되며, ISO/IEC 13818-1에서 정의된 바와 같은 DTS를 나타낸다.
'padding_length' 필드는 피캣내의 패딩 데이터의 길이를 바이트 단위로 나타낸다. 본 실시예에서 'padding_byte' 필드는 패딩 데이터를 포함한다.
'padding_byte' 필드는 '0xFF'와 동일한 8비트 값이며, 인코더에 의하여 삽입될 수 있다. 'padding_byte' 필드는 디코더에 의하여 버려진다.
'data_byte' 필드는8비트로 구성된다.
도 51는 본 발명에 따른 실시간 데이터를 위한 캡슐화 패킷의 신택스 구조에 관한 다른 실시예를 나타낸다. 도 51에 도시된 캡슐화 패킷내의 각 필드는 도 50과 동일하므로, 이하 설명을 생략한다.
도 52a 및 52b는 본 발명에 따른 IP 데이터를 위한 캡슐화 패킷의 신택스 구조에 관한 일 실시예를 나타낸다.
도 52에 도시된 패킷은 IP 데이터그램을 전송하기 위한 패킷이다. IP 데이터그램은 다수의 캡슐화 패킷으로 나뉘어져 전송될 수 있다. 현재 패킷이 마지막 패킷인지를 표시할 필요가 있으며, 이는 후술할 'first_last'필드에 의하여 표시된다. 실시예에 따라서는, 'first_last' 필드 값이 '0x01 또는 0x03으로 설정되면 마지막IP 캡슐화 패킷으로 판단할 수 있다.
해당 캡슐화 패킷이 첫번째 패킷인 경우에는, 해더 필드에는 캡슐화 패킷이 첫 번째 또는 마지막 패킷인지를 나타내는 정보, 부가 정보가 존재하는지를 나타내는 정보, 페이로드 영역에 포함된 IP 데이터의 형식에 관한 정보 및 캡슐화 패킷의 길이 정보를 포함한다.
해당 캡슐화 패킷이 첫번째 패킷이 아닌 경우에는, 해더 필드에는 캡슐화 패킷이 첫번째 또는 마지막 패킷인지를 나타내는 정보, 시퀀스 번호 정보 및 캡슐화 패킷의 길이 정보를 포함한다.
부가 해더 필드는 다음 부가 정보의 존재 여부에 관한 정보, 부가 정보의 타입에 대한 정보, 부가 정보의 길이 정보 및 부가 정보를 포함한다.
'first_last' 필드는 2비트로 구성되며 처음 또는 마지막 캡슐화 패킷인지를 나타낸다. 필드 값에 따른 정의에 관한 일 예는 상술한 표 5에 따른다.
'addition_flag' 필드는 1비트로 구성되며 부가 정보가 존재하는지를 나타낸다. 본 실시예에서 'additional_data'필드가 부가 정보를 포함하며, 'addition_flag'필드 값이 '1'로 설정되면, 'additional_data' 필드가 존재함을 의미할 수 있다.
'IP_type' 필드는 5비트로 구성되며, IP 페이로드를 통하여 전송되는 데이터의 타입을 나타낸다. 예를 들면, IPv4, IPv6의 타입을 구별하기 위하여 사용될 수 있다.
'sequence_number' 필드는 4비트로 구성되며, 동일한 테이터 타입을 갖는 캡슐화 패킷에서 1씩 증가한다. 이 값은 최대 값을 초과하면, 0으로 돌아올 수 있다. 이 필드는 재 전송동안 IP 프레그먼트화 식별자로써 사용된다.
'encapsulation_packet_length' 필드는12비트로 구성되며, 페이로드 길이를 바이트 단위로 나타낸다.
'continuity_flag' 필드는 1비트로 구성되며, 이후에 {tag, length, additional_data} 필드들이 존재하는지를 나타낸다. 필드 값이 '0'으로 설정되면, 현재 필드가 부가 정보가 포함된 마지막 필드임을 의미할 수 있다.
'tag' 필드는 7비트로 구성되며, 'additional_data' 필드의 타입을 나타낸다. 이 필드는 IP 데이터를 전송할 때 부가적으로 필요한 어떠한 타입의 정보도 포함할 수 있는 컨테이너의 역할을 수행한다. 부가적으로 필요한 정보에 대하여는 특별한 제한이 없다.
'length' 필드는 'additional_data' 필드의 길이를 바이트 단위로 나타낸다.
'Additional_Data' 필드는 다양한 길이를 가질 수 있으며, tag 필드 값에 따른 부가 정보를 포함한다.
'payload' 필드는 다양한 길이를 가질 수 있으며, IP_type 필드에 의하여 정의된 것과 같은 IP 패킷 데이터를 포함한다.
도 53은 본 발명에 따른 IP 데이터를 위한 캡슐화 패킷의 신택스 구조에 관한 다른 실시예를 나타낸다.
도 53에 도시된 패킷은 도 52에 도시된 패킷의 해더가 수정된 형태이다. 도 53에 도시된 패킷내의 각 필드는 도 52와 동일하므로 이하 설명을 생략한다.
도 54a 및 54b는 본 발명에 따른 오브젝트 데이터를 위한 패킷의 구조에 관한 일 실시예를 나타낸다.
도 54a에 도시된 패킷은 오브젝트 데이터 타입을 전송하기 위한 캡슐화 패킷이다 . 패킷은 오브젝트 데이터 타입을 전송하는 다수의 전송 패킷들을 포함한다 . 패킷은 해더 , 부가 정보 및 페이로드를 포함하며 , 부가 해더 필드는 페이로드에 관한 추가적인 정보를 포함한다 .
오브젝트 데이터는 오브젝트 서브 데이터 채널을 통하여 전송되는데 , 두가지 방법으로 전송할 수 있다 . 오브젝트 데이터의 전송 방법에 관한 자세한 설명은 도 56에서 후술한다 .
캡슐화 패킷이 첫 번째 패킷인 경우 , 해더 필드에는 해당 패킷이 첫번째 또는 마지막 패킷인지를 나타내는 정보 , 부가 정보가 존재하는지를 나타내는 정보 , 페이로드 필드를 통하여 전송되는 오브젝트 데이터의 식별 정보 , 오브젝트 데이터에 타입에 관한 정보 및 패킷의 길이 정보를 포함한다 .
캡슐화 패킷이 첫 번째 패킷이 아닌 경우 , 해더 필드에는 해당 패킷이 첫번째 또는 마지막 패킷인지를 나타내는 정보 , 부가 정보가 존재하는지를 나타내는 정보 , 시퀀스 번호 정보 및 패킷의 길이 정보를 포함한다 .
부가 해더 필드는 이후에 부가 정보가 존재하는지를 나타내는 정보 , 부가 정보의 타입에 관한 정보 , 부가 정보의 길이 및 부가 정보를 포함한다 .
'first_last' 필드는 현재 패킷이 처음 또는 마지막 캡슐화 패킷인지를 나타낸다. 필드 값에 따른 정의에 관한 일 예는 상술한 표 5에 따른다.
'addition_flag' 필드는 캡슐화 패킷 해더에 부가 정보가 존재하는지를 나타낸다. 본 실시예에서, 'additional_field'필드는 부가 정보를 포함한다.
'object_ID' 필드는 동일한 서브 데이터 채널을 통하여 전송되는 모든 오브젝트를 식별하는데 사용된다.
'object_type' 필드는jpeg(압축 또는 비압축), text(압축 또는 비압축), mp3 등과 같이 오브젝트의 데이터의 타입을 나타낸다.
'sequence_number' 필드는 플래그맨테이션 정보를 나타낸다.
'packet_length' 필드는 바로 다음에 존재하는 데이터의 길이를 나타낸다.
'continuity_flag' 필드는 이후에 'additional_filed' 필드가 존재하는지를 나타낸다. 필드 값이 '1'로 설정되면, 이후에'additional_field' 필드가 존재함을 의미하고, 필드 값이 '0'으로 설정되면, 'additional_field'필드가 마지막 'additional_field'필드임을 의미한다.
'tag' 필드는 오브젝트 디코더 상세 정보의 타입을 타나낸다. 이는 'object_type'에서 나타낸 오브젝트 데이터 타입의 더 세분화된 타입을 나타낸다. 일 예로, 'object_type'필드가'text(압축)을 나타내는 경우, 압축 방식에 따라 데이터 타입이 더 세분화될 수 있다. 이 때, 'tag'필드를 통하여 'GZIP compressed text'와 같이 나타낼 수 있다.
'length' 필드는 'additional_field_data'의 길이를 바이트 단위로 나타낸다.
'additional_field_data' 필드는 오브젝트 디코더 상세 정보를 포함한다.
'payload' 필드는 오브젝트 데이터를 포함한다.
도 55a및 55b는 본 발명에 따른 오브젝트 데이터를 위한 패킷의 구조에 관한 다른 실시예를 나타낸다.
'First_last' 필드는 2비트로 구성되며, 패킷이 처음 또는 마지막 캡슐화 패킷인지를 나타낸다. 필드 값에 따른 정의에 관한 일 예는 표 5에 따른다.
'object_delivery_mode' 필드는 소스 블록 모드를 나타낸다. 필드 값이 '0'으로 설정되면 소브 블록 넘버가 사용되지 않으며, 필드 값이 '3'인 경우는 나중을 위하여 설정되지 않을 수 있다.
'object_extention_id' 필드는 동일한 서브 데이터 채널내에서 복수의 오브젝트가 전송되는 경우, 오브젝트들의 추가적인 식별자로써 사용된다.
'source_block_number_8' 필드는 8비트로 구성되며, 소스 블록 넘버를 나타낸다. 이 값은 현재 OEP가 속하는 소스 블록의 번호를 나타낸다.
'source_block_number 16' 필드는 16비트로 구성되며, 소스 블록의 넘버를 나타낸다. 이 값은 현재 OEP가 속하는 소스 블록의 번호를 나타낸다.
'version' 필드는 오브젝트 데이터의 버전을 나타낸다. 오브젝트 데이터가 변할때마다 버전이 1 씩 증가할 것이다. 오브젝트가 변한다는 것은 오브젝트의 업데이터를 의미한다. 일 예로, 지도 파일에서 새로운 지명이 추가되는 경우 지도파일이라고 하는 오브젝트가 변경된 것이다.
'fragment_number' 필드는 소스 블록 또는 오브젝트의 길이가 최대 패킷 길이를 초과하는 경우 소스 블록 또는 오브젝트의 프레그먼트화 정보를 나타낸다.
'packet_length' 필드는 패킷 길이를 바이트 단위로 나타낸다.
도 56은 본 발명에 따른 오브젝트 데이터의 전송 방법에 관한 일 실시예를 나타낸다 .
하나의 서브 데이터 채널은 한번에 하나 또는 그 이상의 오브젝트 데이터들을 전송한다 . 서브 데이터 채널이 하나의 오브젝트 데이터를 전송하는 경우는 싱글 오브젝트 모드로 지칭하며 , 서브 데이터 채널이 다수의 오브젝트 데이터를 전송하는 경우는 멀티 오브젝트 모드로 지칭한다 .
멀티 오브젝트 모드의 경우 , 서브 데이터 채널내의 연속하는 오브젝트 데이터별로 식별자가 할당되어야 한다 . 실시예에 따라서는 오브젝트 ID를 통하여 동일한 서브 데이터 채널을 통하여 전송되는 오브젝트 데이터들을 식별할 수 있다 . 또는 , 패킷이 오브젝트 데이터의 특성 정보와 같은 부가 정보를 전송하는 ' additional_field ' 필드를 포함하는 경우에는 동일한 서브 데이터 채널내에서 연속적인 오브젝트들의 식별하기 위하여 ' object_extension_id' 필드를 ' additional_field ' 필드에 포함함으로써 , 오브젝트 데이터들을 식별할 수 있다 .
도 57은 본 발명에 따른 AL-FEC의 적용에 관한 일 실시예를 나타낸다 .
OEP 패킷은 해더 및 페이로드를 포함하며 , 다수의 전송 패킷들로 구성된다 . SEP는 AL-FEC의 사용 정보 및 상세한 파라미터들을 제공한다 . 이하에서는 도 57을 참고하여 , AL-FEC 계층 및 오브젝트들을 배치하는 방법을 설명한다 .
MCAST AL-FEC가 적용되면 , 오브젝트들은 다수의 소스 블록들로 단편화된다 . 각각의 소스 블록은 정해진 길이의 패킷들로 구성된다 . 패킷 길이 및 개수는 MCAST AL-FEC 인코딩 모드에 의하여 결정된다 . MCAST AL_FEC가 인코딩이 수행된 후 , 잔여 (redundant) 패킷이 부가된다. 잔여 패킷의 범위내에서 에러가 보정될 수 있다 .
이하에서는 MCAST 전송 패킷을 설명한다 .
도 58는 본 발명에 따른 전송 패킷 및 전송 패킷의 해더 구조에 관한 일 실시예를 나타낸다 .
도 58a에 도시된 본 발명의 일 실시예에 따른 전송 패킷은 기본 해더 필드 , PCR 정보 필드 , 포인터 필드 , 패딩 필드 , LMT 필드 , LIT 필드 및 페이로드 필드를 포함한다 .
기본 해더 필드는 전송 패킷이 캡슐화 패킷내에서 첫번째 패킷 또는 마지막 패킷인지 여부에 관한 정보 , PCR이 포함되어 있는지를 나타내는 정보 , 캡슐화 패킷의 해더 필드에 디코더 설정 정보가 존재하는지를 나타내는 정보 , 패딩 영역이 존재하는지를 나타내는 정보 , LMT가 존재하는지를 나타내는 정보 및 LIT가 존재하는지를 나타내는 정보를 포함한다 . 각 필드에 관한 자세한 설명은 도 59에서 후술한다 .
도 58b는 본 발명에 따른 전송 패킷의 패딩 필드의 구조에 관한 일 실시예를 나타낸다 .
본 발명의 일 실시예에 따른 전송 패킷의 패딩 필드는 패딩의 길이 정보 및 패딩 바이트를 포함할 수 있다 .
전송 패킷 내의 LMT 필드 및 LIT 필드의 구조는 도 34 내지 도 41에서 상술한바와 동일하므로 이하 설명을 생략한다 .
도 58c 및 58d는 본 발명에 따른 전송 패킷 및 전송 패킷의 해더 구조에 관한 다른 실시예를 나타낸다 .
도 58c 및 58d에 도시된 패킷은 MAST 시스템을 통하여 IP 데이터만을 전송하는 경우와 같이 한 종류의 데이터를 전송하는 경우에 사용될 수 있다 .
도 59a는 본 발명에 따른 전송 패킷의 신택스 구조에 관한 일 실시예를 나타낸다 .
'first_last' 필드는 전송 패킷이 캡슐화 패킷내에서의 처음 또는 마지막 패킷인지를 나타낸다. 필드 값에 따른 정의에 관한 일 예는 상술한 표 5에 따른다.
'DC-flag' 필드는 캡슐화 패킷의 해더에 디코더 구성 정보가 존재하는지를 나타낸다. 본 실시예에서 'decoder_configuration_information' 필드는 디코더 구성 정보를 포함한다.
'pointer_flag' 필드는 전송 패킷의 해더에 'point_field'필드가 존재하는지를 나타낸다.
'padding_flag' 필드는 전송 패킷의 해더에 padding 필드가 존재하는지를 나타낸다.
'LMT_flag' 필드는 전송 패킷의 해더에 'LMT_field'필드가 존재하는지를 나타낸다.
'LIT_flag' 필드는 전송 패킷의 해더에 'LIT_field'필드가 존재하는지를 나타낸다.
'PCR_flag' 필드는 전송 패킷이 'PCR_field' 필드를 포함하는지를 나타낸다. 필드 값이 '1'로 설정되면, 전송 패킷이 'PCR_field'필드를 포함함을 의미할 수 있다.
'pointer_field' 는 한 전송 패킷내에 두 개의 캡슐화 패킷이 포함되어 있는 경우 두 번째 페이로드의 시작 위치를 지시한다.
'padding_length' 필드는 패킷내의 패딩의 길이를 바이트 단위로 나타낸다.
'padding_byte' 필드는 인코더에 의하여 삽입되는 '0xFF'와 동일한 8비트 값이다. 'padding_byte' 필드는 디코더에 의하여 제거된다.
'type_bitmap' 필드 내지 'object_channel_pointer' 필드는 LMT도 34에 도시된 LMT 구조와 동일하므로, 이하에서는 간략히 설명한다.
'type_bitmap' 필드는 전송 패킷을 통하여 전송되는 데이터의 타입을 나타낸다. 필드의 각각의 비트가 의미를 갖는다. 첫 번째 비트는 실시간 데이터 채널가 존재함을 의미하고, 두 번째 비트는IP 데이터 채널의 존재를 의미한다. 세 번째 비트는 오브젝트 데이터 채널의 존재를 의미한다.
'version_number' 필드는LMT의 버전 넘버를 나타낸다. LMT 데이터가 변경될 때마다 버전 넘버가 16 모듈로에 의하여 1씩 증가할 것이다.
real-time_channel_number 필드는 실시간 미디어 타입의 채널내의 서브 데이터 채널의 개수를 나타낸다.
IP_channel_number 필드는IP 타입의 채널내의 서브 데이터 채널의 개수를 나타낸다.
object_channel_number 필드는 오브젝트 타입의 채널내의 서브 데이터 채널의 개수를 나타낸다.
real-time_channel_pointer 필드는 데이터 채널내의 실시간 데이터 타입의 서브 데이터 채널의 위치를 나타낸다.
IP_channel_pointer 필드는 데이터 채널내의 IP 데이터 타입의 서브 데이터 채널의 위치를 나타낸다.
object_channel_pointer 필드는 데이터 채널내의 오브젝트 데이터 타입의 서브 데이터 채널의 위치를 나타낸다.
'service_number' 필드 내지 'LMT_index_number' 필드는 LMT도 40에 도시된 LIT 구조와 동일하므로, 이하에서는 간략히 설명한다.
'service_number' 필드는 이 데이터 채널내에서 이용가능한 서비스들의 개수를 나타낸다.
'version_number' 필드는LIT 필드의 버전 넘버를 나타낸다. 시그널링 데이터가 변경될때마다 버전 넘버가 '1'씩 증가할 것이다.
'service_ID' 필드는 터보 채널내의 서비스를 식별한다. ID는 터보 채널내에서 유일한 값을 갖는다.
'next_indicator' 필드는 다음 next_indicator 및 LMT_index_number 필드의 존재를 나타낸다. 일 예로, 필드 값이 '0'로 설정되면, 더 이상의next_indicator 및 LMT_index_number 필드가 존재하지 않음을 의미한다.
'LMT_index_number' 필드는LMT내의 서브 데이터 채널의 위치를 나타낸다. 'index_number' 필드는 서비스와 연관된 기본(elementary) 채널의 시퀀스 번호를 나타낸다.
' Program_clock_reference_base ' / ' Program_clock_reference_extension ' 필드는 두 부분으로 코딩된 42 비트의 PCR을 포함한다 . 첫 번째 부분은 , MPEG-2 13818-1 스펙의 14페이지 2-1에 정의된 것과 동일한 식으로부터 얻어지는 33비트 필드의 기본 값이다 . 두 번째 부분은 , MPEG-2 13818-1 스펠의 14 페이지 2-2에 정의된 것과 동일한 식으로부터 얻어지는 9비트 필드의 값이다 .
' data_byte ' 필드는 8비트로 구성되며 , 캡슐화 패킷 데이터를 포함한다 .
도 59b는 본 발명에 따른 전송 패킷의 구조에 관한 다른 실시예를 나타낸다 .
도 59b에 도시된 전송 패킷내의 각 필드들은 도 59a에 도시된 전송 패킷과 동일하므로 , 이하 설명을 생략한다 .
도 59c는 본 발명에 따른 전송 패킷의 구조에 관한 다른 실시예를 나타낸다 .
도 59c에 도시된 전송 패킷의 구조는 'Error_flag' 필드를 제외하면 도 59a와 동일하다.
'Error_flag' 필드는 현재 패킷에 에러가 존재하는지를 나타낸다. 필드 값이 '1'로 설정되면, 현재 패킷을 디패킷화하는 과정에서 에러가 존재함을 의미할 수 있다.
도 59d는 본 발명에 따른 전송 패킷의 구조에 관한 다른 실시예를 나타낸다 .
도 59d에 도시된 전송 패킷내의 필드는 도 59a에 도시된 전송 패킷과 동일하므로 이하 설명을 생략한다 .
도 60a및 도 60b는 본 발명에 따른 전송 패킷 , 기본 해더 및 부가 필드의 구조에 관한 다른 실시예를 나타낸다 .
도 60a에 도시된 전송 패킷은 다수의 해더 필드 및 페이로드 필드를 포함한다 . 해더 필드에는 , 기본 해더 정보 , 포인터가 존재하는지를 나타내는 정보 , LMT 정보 , 부가 정보 및 페이로드가 포함된다 . IP 데이터그램 및 시그널링 패킷들은 페이로드 필드에 의하여 전송된다 .
도 60a는 본 발명에 따른 전송 패킷의 신택스 구조에 관한 다른 실시예를 나타낸다 .
'first_last' 필드는2비트로 구성되며, 전송 패킷이 캡슐화 패킷내에서의 첫 번째 또는 마지막 캡슐화 패킷인지를 나타낸다. 필드 값에 따른 정의에 관한 일 예는 상술한 표 5에 따른다.
'signal_pkt_indicator' 필드는 페이로드 데이터가 시그널링 데이터인지를 나타낸다. 필드 값이 '1'로 설정되면, 'payload'를 통하여 전송되는 데이터가 시그널링 데이터임을 의미할 수 있다.
'error_indicator' 필드는 패킷에 에러가 존재하는지 여부를 나타낸다.
'additional_flag' 필드는1비트로 구성되며, 부가 정보가 존재하는지를 나타낸다. 본 실시예에서 'additional_field'필드는 부가 정보를 포함한다. 필드 값이 '1'로 설정되면, 'additional_field' 필드가 존재함을 의미할 수 있다.
'compression_flag' 필드는 IP 데이터 그램이 압축되었는지 아닌지를 나타낸다. 필드 값이 '1'로 설정되면 'payload' 필드를 통하여 전송되는 IP 데이터그램이 압축되었음을 의미한다.
'pointer_flag' 필드는 다른 IP 데이터그램 또는 시그널링 데이터의 존재 여부를 나타낸다. 필드 값이 '1'로 설정되면, 다른 IP 데이터 그램 또는 시그널링 데이터가 존재함을 의미할 수 있다.
'continuity_flag' 필드는1비트로 구성되며, 이후에<tag><length><additional field data> 필드가 존재하는지를 나타낸다. 즉, <tag><length><additional field data> 필드를 'Add.Field'필드라고 지칭하면, 'continuity_flag' 필드 값이 '1'로 설정되면 'Add.Field'필드가 존재하고, 필드 값이 '0'으로 설정되면 더 이상의 'Add.Field'필드가 존재하지 않음을 의미할 수 있다.
'tag' 필드는 부가 정보의 데이터 타입을 정의한다. 필드 값에 따른 부가 정보의 데이터 타입에 관한 일 예는 다음의 표 16에 의한다.
[ 표16]
Figure 112009047453220-pct00017
'length' 필드는 이후에 존재하는 부가 정보의 길이를 나타낸다. 본 실시예에서 'additional_field'필드가 부가 정보를 포함하므로, 'length'필드는 'additional_field'필드의 길이를 나타낸다.
'addition_field' 는 부가 정보를 포함한다.
'pointer_field' 는 8비트로 구성되며, 전송 패킷내에 둘 이상의 캡슐화 패킷이 존재하는 경우 두번째 캡슐화 패킷의 최초 바이트까지의 오프셋을 나타낸다.
'data_byte' 필드는IP 데이터그램 또는 시그널링 데이터를 포함한다. 데이터는 단편화 될 수 있다.
도 61a및 61b는 도 60에 도시된 ' tag '필드 값이 ' 0 '인 경우의 ' padding_field ' 필드의 구조에 관한 일 실시예를 나타낸다 .
' tag ' 필드는 이후에 패딩이 존재함을 의미한다 .
' length ' 필드는 8비트로 구성되며 패딩의 길이를 나타낸다 . 본 명세서에서 ' padding_byte ' 필드가 패딩 데이터를 포함하므로 , ' length ' 필드는 ' padding_byte ' 필드의 길이를 나타낸다 .
' padding_byte ' 필드는 인코더에 의하여 삽입될 수 있는 '0xFF'와 동일한 8비트 값이다. ' padding_byte ' 필드는 디코더에 의하여 제거된다.
도 62는 도 60에 도시된 ' tag '필드 값이 ' 1 '인 경우의 ' LMT_field ' 필드의 구조에 관한 일 실시예를 나타낸다 .
' tag ' 필드는 이후에 LMT 정보가 존재함을 나타낸다 . 본 실시예서 ' LMT_information '필드는 LMT 정보를 포함한다 .
' length ' 필드는 8비트로 구성되며 , ' LMT_information ' 필드의 길이를 바이트 단위로 나타낸다 .
' LMT_information ' 필드는 IP 서브 데이터 채널내의 모든 IP 데이터에 관한 위치 정보 및 시그널링 서브 데이터 채널내의 모든 시그널링 데이터에 관한 위치 정보를 포함한다 . ' LMT_information ' 필드에 관한 자세한 설명은 도 34 내지 도 39에서 상술한바와 같다 .
도 63은 도 60에 도시된 ' tag '필드 값이 ' 2 '인 경우의 ' compression_field_parameter ' 필드의 구조에 관한 일 실시예를 나타낸다 .
'tag' 필드는 이후에 압축 파라미터에 관한 정보가 존재하는지를 나타낸다. 본 실시예에서 'compression_parameter' 필드는 압축 파라미터에 관한 정보를 포함한다.
'length' 필드는8비트로 구성되며, 'compression_type' 필드 및 'compression_parameter' 필드의 길이를 바이트 단위로 나타낸다.
'Compression_type' 필드는 압축 타입을 나타낸다. 압축 타입에 관한 부가 정보는 'additional_field'필드를 통하여 전송될 것이다. 필드 값에 따른 압축 타입에 관한 일 예는 다음의 표 17에 따른다.
[ 표17]
Figure 112009047453220-pct00018
'compression_parameter' 필드는 페이로드 데이터의 압축과 관련된 파라미터들을 포함한다. 파라미터들은 압축 타입에 따라서 달라진다.
도 64a및 64b는 본 발명에 따른 시그널링 패킷의 구조에 관한 일 실시예를 나타낸다.
시그널링 데이터는 MCAST 전송 패킷의 페이로드에 의하여 전송된다. 시그널링 데이터는 IP 데이터그램에 관한 부가 정보를 포함한다. 시그널링 패킷을 통하여 전송되는 IMT 정보는 IP 스트림 및 IP 서브 데이터 채널간의 연결 정보를 포함한다.
'signal_type' 필드는 페이로드를 통하여 전송되는 데이터의 타입을 나타낸다. 필드 값에 따른 데이터 타입에 관한 일 예는 다음의 표 18에 따른다.
[ 표18]
Figure 112009047453220-pct00019
'version_number' 필드는3비트로 구성되며, 시그널링 패킷의 버전을 나타낸다. 페이로드를 통하여 전송되는 시그널링 데이터가 변경될 때마다, 버전 넘버가 '1'씩 증가할 것이다.
'payload_length' 필드는16비트로 구성되며, 이후에 존재하는 시그널링 데이터의 길이를 나타낸다.
'data_bype' 필드에는 'signal_type'필드에 따른 시그널링 데이터가 포함된다.
계속하여 본 발명에 따른 MCAST를 이용하여 OMA-BCAST를 지원하는 방법 및 OMA-BCAST와 본 발명에 따른 MCAST와의 관계를 설명한다.
ATSC_M/H 단말은 일반적인 캡슐화 및 네트워크 패킷 전송을 위하여 IPv6 뿐만 아니라 IPv4 지원한다. ATSC-M/H 시스템 또한 IPv6 및 IPv4를 모두 사용할 수 있다. 인터넷 프로토콜은 베어러 계층과 관리 계층간의 추상적이고 논리적으로 분리할 수 있도록 한다. IP 데이터그램들은 MCAST 전송 패킷으로 캡슐화된다. MCAST 전송을 위하여 IP 데이터그램과 터보 채널간의 맵핑 정보가 필요하며, 이러한 IP 주소 맵핑 시그널링은 상술한 IMT에 의하여 수행될 수 있다.
이하에서는, OMA BCAST 서비스와 MCAST가 어떻게 연결되는지를 설명한다. 이 연결에 있어서 가장 중요한 사항은 시그널링, 서비스 가이드 수록 지점의 발견 및 전송 세션들의 발견이다. 이를 위하여 IP 스트림들과 전송 채널들은 상호 연결되고 시그널링 되어야 한다. OMA BCAST 서비스에 접근하기 위해서는, 서비스 공표 정보(service announcement information)의 수록 지점(entry point)이 먼저 획득되어야 한다. 서비스 공표 정보는 하나 이상의 터보 채널에 의하여 전송될 수 있다. MCAST는 SIC를 통하여 전송되는 IMT를 이용하여 서비스 수록 지점의 터보 채널 위치를 전송한다. 또한, 각각의 터보 채널의 특정 위치에는, 탑재된 IP 스트림의 위치에 관한 정보를 포함하는 IMT를 포함할 수 있다. 이하에서는 설명의 편의를 위하여 SIC를 통하여 전송되는 맵핑 정보를 i-IMT 명명하고, 데이터를 전송하는 터보 채널내의 맵핑 정보는 IMT로 명명한다.
OMA-BCAST 서비스 가이드(service guide)를 제공하기 위하여 서비스 가이드 공표 채널(service guide announcement channel) 및 서비스 가이드 전송 채널(service guide delivery channel)은 터보 채널에 탑재된다. 특히, 터보 채널 중 하나는 통합 ESG과 같은 모든 터보 채널내의 서비스 가이드를 위한 서비스 프레그먼트들의 풍부한 정보를 전송할 수 있다. 또한, 이 채널은 서비스 공표 채널을 제공할 수 있다. 통합 ESG 채널은 다른 터보 채널에 탑재된 IP 스트림들의 위치 정보를 제공한다. 따라서, 이 정보를 이용하여 특정 IP 스트림을 획득하기 위하여 다른 터보 채널에 접근하는 것이 가능하다.
도65는 본 발명에 따른 MCAST 전송 시스템에서 OMA BCAST 서비스를 제공하는 과정을 나타낸다.
도 65을 참고하면, SIC는 모든 서비스 수록 지점에 관한 리스트를 포함하는i-IMT를 포함한다. 서비스 수록 지점들은 특정 서비스 가이드 또는 통합 서비스 가이드 채널을 서술한다. I-IMT는 터보 채널내의 IP 스트림의 위치 정보를 포함한다.
방송 수신 장치는 SIC 로부터 i-IMT를 획득한다. i-IMT에는 특정 서비스 가이드 또는 통합 서비스 가이드가 포함된 채널의 위치 정보가 포함된다. 방송 수신 장치는 i-IMT에 포함된 위치 정보를 이용하여 원하는 서비스가 포함된 터보 채널에 접근한다.
각 터보 채널에는 시그널링 데이터를 전송하는 시그널링 서브 데이터 채널이 존재하며, 시그널링 서브 데이터 채널에IMT가 포함될 수 있다. IMT는 해당 방송 채널에 포함된 서비스 가이드 공표(Service Guide announcement)채널, 서비스 가이드 전송(Service Guide Deliver) 채널 또는 IP스트림의 위치 정보가 존재할 수 있다. 방송 수신 장치는 IMT에 포함된 위치 정보를 이용하여 서비스 가이드를 획득한다. 방송 수신 장치는 서비스 가이드에 포함된 정보를 이용하여 특정 서비스에 접근할 수 있다. 사용자가 서비스를 제공받는 보다 구체적인 예를 도 66에서 후술한다.
도 66은 본 발명에 따른 OMA-BCAST를 지원하는 MCAST를 이용하여 서비스를 제공하는 방법에 관한 일 실시예를 나타낸다.
우선 OMA BCAST를 지원하기 위하여 SG 공표 채널,(service guide announcement) SG 전송 채널(service delivery channel)이 하나 이상의 채널을 통하여 전송되어야 한다. 방송 수신 장치는 SG 공표 채널 및 SG 전송 채널에 순차적으로 접근하여야 한다. SG 전송 채널은 서비스 가이드의 프레그먼트들을 전송하는 채널이며, 서비스 가이드는 방송 서비스의 편성 시간과 같은 방송 서비스에 관한 메타 데이터를 제공한다. SG 공표 채널은SG 전송 채널을 처리하기 위한 정보를 제공한다.
방송 수신 장치는 먼저, SIC에 접근하여, SG 공표 채널이 어느 터보 채널을 통하여 전송되는지를 확인한다. i-IMT에는 SG 공표 채널의IP 주소 또는, SG 공표 채널 또는 IP 스트림이 포함된 채널의 위치 정보가 포함된다. 일 예로, SG 공표 채널의 IP 주소와 터보 채널 번호간의 맵핑 정보를 포함할 수 있다.
방송 수신 장치는 i-IMT에 포함된 채널에 관한 정보를 사용자에게 디스플레이함으로써 사용자가 특정 채널을 선택하도록 유도하거나, 사용자의 입력 없이 임의의 공표 채널을 디폴트로 선택할 수 있다. 만일, 사용자가 특정 채널을 선택하면, 선택된 채널의 IP 주소와 i-IMT에 포함된 정보를 이용하여 선택된 채널에 접근한다. 이러한 과정을 통하여 사용자에게 추가적으로 서비스 가이드를 출력하거나 서비스를 출력할 수 있다.
터보 채널에는 시그널링 데이터를 전송하는 시그널링 서브 데이터 채널이 존재한다. 시그널링 서브 데이터 채널에는 현재 터보 채널이 전송하는 스트림들의 위치 정보를 포함하는 IMT가 존재한다. 일 예로, 현재 터보 채널을 통하여 전송되는 IP 스트림들의 IP주소 및 서브 데이터 채널간의 맵핑 정보가 포함될 수 있다.
방송 수신 장치는 IMT로부터 SG 공표 채널의 위치 정보를 획득할 수 있다. i-IMT로부터 획득한 SG 공표 채널의 IP 주소와IMT를 이용하여 SG 공표 채널이 포함된 서브 데이터 채널에 접근한다. 방송 수신 장치는 SG 공표 채널을 처리하여, SG 전송 채널의 위치 정보를 획득한다. 일 예로, SG 공표 채널을 처리하여 획득하고자하는 SG 전송 채널의 IP 주소를 획득할 수 있다. 사전에 획득한 IMT에는 IP 주소와 서브 데이터 채널간의 맵핑 정보가 존재하므로, 방송 수신 장치는 SG 전송 채널의 IP 주소 및 IMT를 이용하여 SG 전송 채널에 접근하고, SG 전송 채널로부터 서비스 가이드를 획득한다.
서비스 가이드는 ESG, EPG와 같이 제공되는 방송 서비스에 관한 메타 데이터임은 상술한 바이다. 방송 수신 장치는 획득한 서비스 가이드를 사용자에게 제공함으로써 사용자가 원하는 방송 서비스를 선택하도록 하거나, 디폴트로 지정된 방송 서비스를 제공할 수 있다. 사용자가 원하는 방송 서비스를 선택하면, 서비스 가이드를 이용하여 원하는 방송 서비스를 제공한다. 일 예로, 서비스 가이드는 서비스를 제공하기 위한 IP 스트림들의 IP 주소를 포함할 수 있다. 사전에 획득한 IMT에는 IP 주소와 서브 데이터 채널간의 맵핑 정보를 포함하므로, 서비스 가이드로부터 획득한 방송 서비스를 제공하기 위한 IP 스트림들의 IP 주소 및 IMT를 이용하여 IP 스트림을 획득한다. 방송 수신 장치는 획득된 IP 스트림을 이용하여 방송 서비스를 제공한다.
이하에서는 OMA BCAST 서비스 계층에 대하여 간략히 설명한다
서비스 가이드의 기능은, 서비스 및 컨텐트 제공자가 방송 채널과 양방향 채널 모두를 통하여 직접 제작하였거나, 가입 또는 구매를 위하여 제공되는 서비스들 및 컨텐트들을 서술할 수 있도록 하는 것이다. 또한, 서비스들에 어떻게 접근할 것인지에 관한 방법을 설명한다. 단말 사용자의 관점에서 서비스 가이드는, 현재 사용가능하거나 앞으로 계획된 서비스들 및 컨텐트들의 발견을 위한 접근 지점이다. 뿐만 아니라, 서비스 가이드는 임의적인 양방향 서비스를 위한 데이터 수록 지점을 제공한다.
서비스 가이드는 다음의 기능성을 제공한다.
첫째, 서비스 가이드 데이터 모델(Service Guide Data Model)은 서비스 가이드 프레그먼트 형식으로 서비스, 일정, 컨텐트, 구매와 관련된 데이터 공급, 접근 및 양방향 데이터를 만든다.
둘째, 서비스 가이드 발견(Service Guide Discovery)는 초기 부트 스트랩 및 서비스 가이드에 관한 수록 지점의 발견을 가능하게 한다.
셋째, 서비스 가이드 전송(Service Guide Delivery)는 임의적인 양방향 채널 뿐만 아니라 방송 채널을 통하여 전송한다.
마지막으로, 서비스 가이드 업데이트, 관리 및 완료(Service Gudie Update, Management and Completeness)는 시청을 위한 사용자에게 충분히 제공될 수 있도록 서비스 가이드의 업데이트 및 완료를 보장한다.
ATSC_M/H 단말은 서비스 가이드의 기능을 제공하기 위하여 OMA BCAST 서비스 가이드의 필수적인 부분을 지원할 것이다. 또한, 서비스 가이드의 전송 및 사용과 관련된 부분들은 OMA BCAST 스펙에 필수적인 것으로 기재되어 있으나, 본 명세서에서는 임의적인 것으로 기술될 것이다.
다음으로 전송 경로 및 데이터 형식에 따른 전송을 살펴본다.
우선, 방송을 통한 실시간 A/V 스트림 전송을 설명한다.
ATSC-M/H 를 위한 실시간 A/V 방송 서비스의 전송을 실현하기 위하여, 전송 프로토콜로써 RTP/UDP 가 사용될 것이다. 상이한 오디오 및 비디오 형식은 특정 코덱에 대하여 각각 정의된 RTP 페이로드 형식을 통하여 RTP로 캡슐화된다.
ATSC-M/H 단말은 실시간 A/V 스트림의 전송을 위하여 스펙 [16]의 6.2에 기재된 OMA BCAST 파일 및 스트림 분산의 필수적인 부분을 지원한다. 또한, 단말은 스펙에 기재된 OMA BCAST 파일 및 스트림 분산의 관련된 전송 절차를 제공할 수 있다.
다음으로 양방향 채널을 통한 요구된A/V 스트림의 전송을 설명한다.
요청된 서비스들을 위하여, 양방향 채널을 통하여 A/V 스트림들을 전송하기 위해서는 RTP/UDP 전송 프로토콜이 또한 사용된다. 양방향 모드가 임의적인 것이기 때문에, ATSC-M/H 단말은 스펙에 기재된바와 같이 OMA BCAST 스트림 분산의 양방향 부분을 지원할 수 있다.
다음으로, 방송 채널을 통한 비 실시간 컨텐트의 전송을 설명한다.
방송 채널을 통한 비 실시간 컨텐트의 전송을 구현하기 위하여, FLUTE/UDP가 전송 프로토콜로써 사용된다. 로부스트한 파일 전송은 다음의 두가지 방법으로 향상될 수 있다. 하나는, 어플레케이션FEC(AF-FEC)를 적용하는 것이며, 다른 하나는 스펙에 기재된 임의적인 반환 채널을 통하여 동작하는 후(post) 전송(에러 보정) 과정을 적용하는 것이다.
다음으로, 양방향 채널을 통한 비 실시간 컨텐트의 전송을 설명한다.
양방향 모드가 임의적이므로, ATSC/M/H 단말은 스펙에 기재된 OMA BCAST 파일 분산의 양방향 부분을 지원할 수 있다. 주의할 것은, 이 경우 스펙에 기재된 필수적인 부분만이 지원될 것이다.
마지막으로, 부가 데이터(Auxiliary Data), 광고 및 통지의 지원에 관련하여, ATSC-M/H 단말은 스펙에 기재된 것과 같이 부가 데이터, 광고 및 통지를 지원할 것이다.
다음으로, OMA BCAST에서 수행되는 서비스 및 컨텐트 보호를 설명한다.
도 67는 본 발명에 따른 서비스 및 컨텐트 보호를 위한 4 계층의 개략적인 구조를 나타낸다.
서비스 보호를 위하여 두가지 키 관리 시스템 (KMSs) 이 사용된다.
하나는, 단말 기반의 KMS(DRM 프로파일)로써 단말에서 수행되는 키 관리이며, 다른 하나는 스마트 카드 기반의 KMS(스마트카드 프로파일)로써 (U)SIM 또는(R)UIM/CSIM에서 수행되는 키 관리이다.
ATSC-M/H 단말은 이 둘을 모두 지원할 수도 있으며, 모두를 지원하지 않을 수도 있다.
ATSC-M/H 단말이 단말 기반 KMS를 지원하는 경우에는 스펙에 기재된 DRM 프로파일의 필수적인 부분을 지원할 것이며, ATSC-M/H 단말이 스마트카드 기반 KMS를 지원하는 경우에는 스펙에 기재된 스마트카드 프로파일의 필수적인 부분을 지원할 것이다.
상술한 두개의 KMS들은 모바일 장치 서비스 보호에 관한 높은 수준의 보안을 제공하며, 동시에 적용될 수 있다.
이하에서는 도 59를 참고하여 각각의 계층을 설명한다.
트래픽 계층에서는 트래픽 암호로써IPsec, SRTP 또는 ISMACryp를 사용한다.
IPsec 는ESP(Encapsulating Security Payload)이며, 암호화 알고리즘으로 각각의 IP 패킷내에서 명시적인 IV와 함께 AES-128-cbc를 사용한다. 인증은 임의적이며, HMAC-SHA-1-96을 사용한다.
SRTP 는 암호화 알고리즘으로 AES-128-CTR을 사용한다. 인증은 임의적이며, HMAN-SHA-1-80을 사용한다.
OMA BCAST 와 함께 ISMACryp 1.1 은 코덱 알로리즘에 관한 확장이 기재되었다. 암호화 알고리즘으로 AES-BYTE-CTR을 사용한다. 인증은 임의적이며, HMAC-SHA1을 사용한다.
마이크로소프트 플레이레디(Microsoft PlayReady)를 사용한 DRM 프로파일에 관한 키 관리 계층, 권리 관리 계층 및 등록 계층은 스펙 [18]에서 기술된다.
OMA DRM 2.0 을 사용한 DRM 프로파일에 관한 키 관리 계층, 권리 관리 계층 및 등록 계층은 스펙에 기술되어 있다.
스마트카드 프로파일에 관한 키 관리 계층, 권리 관리 계층 및 등록 계층은 스펙에서 기술된다.
양방향성을 지원하는 단말은 DRM 프로파일 및 스마트카드 프로파일 중에 하나를 지원하거나 모두를 지원할 수 있다. DRM 프로파일을 위하여, 양방향 채널을 통한 LTKM(Long Term Key Message) 전송이 지원될 것이며, 방송 채널을 통한 LTKM이 지원될 수 있을 것이다.
양방향성을 지원하지 않는 단말은 DRM 프로파일을 지원할 수 있다. 방송 채널을 통한 LTKM 전송이 지원될 것이다.
ATSC-M/H 단말은 컨텐트 보호를 지원할 것이다. ATSC-M/H 단말이 컨텐트 보호를 지원하는 경우, 마이크로소프트 플레이레디 및 OMA DRM v2.0 중 하나 또는 양쪽 모두를 지원할 것이다.
본 발명에 따른 MCAST시스템은 양방향 채널을 위한 임의적인 지원을 허용한다. 양방향 특성에 관한 지원은 ATSC-M/H 단말에서는 임의적이다. 그러나, ATSC-M/H 단말이 양방향 특성을 지원한다면, 단말은 주소 양방향성을 위하여 OMA BCAST 1.0 스펙을 지원할 것이다. 이 스펙에 관한 필수적인 부분들이 지원될 것이다.
이하에서는 본 발명에 따른 ATSC-M/H의 표현 계층의 특성을 살펴본다.
먼저 비디오 코덱을 살펴보면, ATSC-M/H 단말은 H.264/AVC 비디오 코덱[21]을 지원할 수 있다. 또한, ATSC-M/H 단말은 다음의 다섯가지 기능 중 하나를 지원할 수 있다.
다섯 가지 기능은, constraint_set1_flag가 1 을 갖는 베이스라인 프라파일(Baseline profile)의 H.264/AVC 레벨 1b와 일치하는 비트스트림의 디코딩, constraint_set1_flag가 1 을 갖는 베이스라인 프로파일(Baseline profile)의 H.264/AVC 레벨 1.2와 일치하는 비트스트림의 디코딩, constraint_set1_flag가 1 을 갖는 베이스라인 프로파일(Baseline profile)의 H.264/AVC 레벨 2와 일치하는 비트스트림의 디코딩, constraint_set1_flag가 1 을 갖는 베이스라인 프로파일(Baseline profile)의 H.264/AVC 레벨 3와 일치하는 비트스트림의 디코딩, constraint_set1_flag가 1 을 갖는 베이스라인 프로파일(Baseline profile)의 H.264/AVC 레벨 4와 일치하는 비트스트림의 디코딩을 지칭한다.
ATSC-M/H 단말은 이러한 기능 중 하나 이상과, 이 기능에 의하여 요구되는 것보다 더 높은 레벨 및 프로파일의 디코딩을 선택적으로 지원하기 위한 기능을 임의적으로 지원할 수 있다.
프레임 레이트와 관련하여, 구현된 기능과 관련된 H.264/AVC 프로파일 및 레벨에 의하여 허용되는 각각의 프레임 레이트들을 디코딩한다. 프레임 레이트들에는 변할 수 있는 프레임 레이트들을 포함될 수 있다. 디코더는 픽처간의 최대 거리가 0.7초를 초과하는 경우 비트스트림들을 디코딩하도록 요구되지 않을 것이다.
형상 비율과 관련하여, ATSC-M/H단말은 구현된 기능과 관련된 H.264/AVC 프로파일 및 레벨에 의하여 허용되는 형상 비들을 디코딩할 것이다.
광학 해상도와 관련하여, ATSC-M/H 단말은 구현된 기능과 관련된 H.264/AVC 프로파일 및 레벨에 의하여 허용되는 광학 해상도들을 디코딩할 것이다.
색도(chromacity)와 관련하여 ATSC-M/H 단말은 colour_primariet, transfer_characteristics 및 matrix_coefficients의 허용된 값을 디코딩할 것이다.
색차 형식과 관련하여, ATSC-M/H 단말은 chroma_sample_loc_type_top_field 및chroma_sample_loc_type_bottom_field 의 허용된 값을 디코딩 할것이다.
오디오 코덱과 관련하여, ATSC-M/H 단말은 HH AAC v2및 AMR-WB+(확장된 AMR-WB)중 하나 또는 모두를 지원할 것이다.
먼저, HH AAC v2를 살펴본다. ATSC-M/H 단말은 모노, 파라메트릭 코딩 또는 HE AAC v2프로파일 레벨 2에서 정의된 2채널 스테레오 기능을 지원할 수 있다. ATSC-M/H 단말은 임의적으로 HE AAC v2 프로파일 레벨 4에서 정의된 다중 채널 오디오의 디코딩 기능을 지원할 수 있다.
프로파일과 관련하여, ATSC-M/H 단말은 HE AAC v2 프로파일을 지원할 수 있다. ATSC-M/H 단말은 임의적으로 HE AAC 프로파일을 지원할 수 있다.
비트레이트와 관련하여, ATSC-M/H 단말은 HE AAC v2 프로파일 및 선택된 레벨에 의하여 허용된 어떠한 비트 레이트도 디코딩 할 수 있다.
샘플링 주파수와 관련하여, ATSC-M/H 단말은 HE AAC v2 프로파일 및 선택된 레벨에 의하여 허용되는 각각의 오디오 샘플링 레이트를 디코딩할 수 있다.
동적 범위 제어와 관련하여, ATSC-M/H 단말은 MPEG-4 AAC 동적 범위 제어(Dynamic Range Control) 장치를 지원할 수 있다.
다운믹스와 관련항, ATSC-M/H 단말은 MPEG-4에서 정의된 매트릭스 다운믹스를 지원할 것이다.
다음으로 AMR-WB에 관하여 설명한다.
오디오 모드와 관련하여, ATSC-M/H 단말은 모노 또는 AMR-WB+에서 정의된 스테레오 기능을 디코딩할 수 있다.
샘플링 주기와 관련하여, ATSC-M/H 단말은 모노 또는 스테레오에 관하여 AMR-WB+에서 허용된 각각의 오디오 샘플링 비율을 디코딩할 수 있다.
캡셔닝과 관련하여, ATSC-M/H 단말은 3GPP Timed Text 형식을 사용하여 닫혀진 캡션들(closed caption) 및 서브타이들을 제공할 수 있다. ATSC-M/H 단말은 서브타이틀 및 닫혀진 캡션들을 위하여 3GPP Timed Text 형식을 지원하여야 한다.
도 68은 본 발명에 따른 전력 관리 메커니즘에 관한 일 실시예를 나타낸다.
일반적으로 전력 소모의 중요한 장치는LCD와 같은 디스플레이 패널과 RF 모듈이다. 이하에서는 RF 모듈을 제어함으로써 전력을 절약하는 메커니즘에 관하여 설명한다.
일반적인 방송 시스템에서 원하는 프레임을 획득하기 위해서는 RF 모듈이 켜진 상태에서 모든 입력 프레임들을 감시하여야 한다. ATSC-MCAST에서는 모든 터보 서비스들이 그룹화되어 프레임들의 시퀀스 집합에 맵핑되며, 프레임의 위치 프레임의 개수등의 정보는 SIC를 통하여 전송된다. 이와 같은 정보를 통하여 방송 수신 장치는 작업이 진행 되는 구간(work period)와 작업이 진행되지 않는 구간(idle period)를 구분할 수 있다.
도 68에서 MCAST 프레임 슬라이싱에 관한 일 예와 서비스를 확인하는데 사용되는 프레임 번호들의 일 예가 도시된다. 일 예로 사용자가 프로그램 1을 선택하였다고 가정한다. RF 모듈은 RF 프레임 그룹들 내에서 프레임 번호 1번부터 프레임 번호 4번까지를 수신한다. 즉, 전송 계층이 물리 계층에 프레임번호 1 번부터 프레임번호 4번까지의 프레임들을 수신하도록 지시한다. RF 프레임 그룹들의 전체 개수 또는 프레임 슬라이싱의 지속 기간등은 변할 수 있으며, 변화 정보는 SIC를 통하여 전송된다.
정해진 개수의 MCAST 패킷들이 버스트 단위이다. MCAST 패킷들의 개수는 터보 코딩 모드의 기능에 따라서 변경된다. MCAST 패킷 번호들이 각 버스트에서 변경될 수 있다.
도 69은 본 발명에 따른 MCAST 프레임 슬라이싱과 관련된 파라미터들에 관한 일 실시예를 나타낸다.
이하에서는 , 데이터를 버스트 전송 방법을 통하여 전송하는 방법을 설명한다 .
도 69을 참고하면 , 타임 슬라이싱에 사용되는 파라미터들을 알 수 있다 . 파라미터들에 관한 구체적인 정의는 다음의 표 19에 의한다
[표 19]
Figure 112009047453220-pct00020
파라미터 Bd, Bb, Bp and Cb 는 B d * B b = B p * C b 의 관계를 갖는다 .
도 70는 본 발명에 따른 파워 절약과 관련된 파라미터들의 일 실시예를 나타낸다.
복수의 버스트 서비스들을 터보 채널로 할당하기 위해서는 다음의 세 단계가 필요하다 .
먼저, 다음의 수학식 3을 통하여 각각의 서비스의 일정한 대역폭이 획득되어야 한다. 수학식 3에서 Tc는 터보 코딩 레이트(1/2,1/3,1/4)이다.
[수학식 3]
Figure 112009047453220-pct00021
다음으로 , 서비스들이 일정한 대역폭에 할당된다 .
도 71는 본 발명에 따른 버스트 모드 전송을 위하여 , 서비스들이 일정한 대역폭에 할당되는 방법에 관한 일 실시예를 나타낸다 .
전체 대역폭은 다음의 수학식 4에 의하여 계산된다 .
[수학식 4]
Cb(total) = Cb1 + Cb2 + ... ..+ CbN.
마지막으로 서비스 1, 서비스 2 및 서비스 3이 시계 방향 또는 반 시계 방향으로 90도 회전되어야 한다 .
도 72는 본 발명에 따른 버스트 모드 전송을 위하여 , 서비스들의 회전에 관한 일 실시예를 나타낸다 .
이하에서는 본 발명에 따른 AL-FEC를 설명한다 .
인코딩과 관련하여 , MCAST AL-FEC는 두 개의 선형 블록 코드들이 연결된 코드이다 . 내부 및 외부의 코드들은 생성 행렬 (generator matrices) 또는 등가 그래프 (equivalently graphs)로 정의된다 . 예를 들면 , 내부 또는 외부 코드는 메시지 코드 (u1,u2)를 갖는다 . u1 및 u2 각각은 1보다 큰 길이 L을 갖는 비트열을 나타낸다 . 유사하게 , 코드내의 코드워드는(v1, v2 ,v3 ,v4 ,v5 ,v6)으로 표현되며 , vi {i=1, ... 6}는 길이 L을 갖는 비트열이다 .
메트릭스 G가 다음의 수학식 5와 같이 주어지면 ,
v1=u1, v2=u1(+)u2, v3=u1(+)u2, v4=u2, v5=u1 , v6=u2에 의하여 메시지 코드 (u1,u2)는 코드워드 (v1, v2, v3, v4, v5, v6)로 인코딩된다 . 상술한 (+) 연산자는 비트별 XOR(exclusive-OR)를 의미한다 .
[수학식 5]
Figure 112009047453220-pct00022
코드워드의 길이가 메시지 워드의 길이의 3배이므로 , 코드 레이트는 1/3이다 . 생성 행렬은 종래의 그래프에 의하여 표현될 수 있다 .
도 73는 본 발명에 따른 생성 행렬을 나타내는 그래프이다 .
도 73에 도시된 그래프는 수학식 5의 행렬 G를 나타낸다 . 그래프의 설명은 생성 행렬의 설명과 동일하다 . 각 열은 메시지 코드 , u1, u2를 나타내는 반면 , 그래프내의 행은 코드워드 (vi, i=1 ... 6)에 대응한다 . G 내의 x 번째 열 및 y번째 행에 기재된 값은 그래프내의 ux 및 vy 에 대응한다 . 노드 (u 또는 v)의 각도는 노드와 연결된 선들의 개수이며 , deg(u 또는 v)로 기술한다 . 예를들어 , deg(u 1)은 4이고 , deg(v 3)은 2이다 . 생성 행렬은 적절하게 설계되어야 할 중요한 요소이다 .
이하에서는 생성 행렬의 설계를 살펴본다 .
메시지 노드의 개수를 k라 가정하고 , 코드 노드들의 개수를 n이라 가정한다 . 코드 레이트는 k/n이 된다 . 다음으로 , 메시지 워드는 (u1 ,u2 , ... ..,uk)로 나타내고 , 코드워드는 (v1 ,v2 , ... .,vn)으로 나타낸다 . 먼저 , 그래프를 설계한 후 , 그래프를 변환함으로써 생성 행렬을 획득한다 . 그래프는 2단계로 얻어진다 . 첫번째 단계는 코드워드 노드들의 각도 (deg(v i))를 결정하는 것이며 , 다음 단계는 메시지 노드와 코드워드 노드들을 연결하는 것이다 .
우선 그래프 획득을 위한 첫번째 단계를 살펴본다 .
메시지 노드들의 개수는 k개 , alc 코드워드 노드들의 개수는 n개로 주어지며 , 코드워드 노드들의 각도 (deg(v 1))는 다음에 따라 결정된다 .
1. 설계 파라미터 Δ 로부터 dMax 를 결정한다 . Δ 는 1 내지 16사이의 정수 값이다 . dMax 는 표 20의 Δ 값에 의하여 분류된다 . 예를들어 , Δ 가 8인 경우 , dMax 는 61이 된다 .
[표 20]
Figure 112009047453220-pct00023
2. (N[i]: i=1,2,......,dMax ) 정수 값들의 배치를 다음에 따라서 결정한다 .
외부 코드가 설계되면 , N[1]=n 이고 , N[i]=0 (i=2, ... .., dMax )
내부 코드가 결정되면 ,
Figure 112009047453220-pct00024
[x]는 x보다 작거나 같은 가장큰 양의 정수를 의미한다 .
3.도 63에 도시된 흐름도로부터 각 코드워드 노드 (deg( v 1 ,), deg( v 2 ), ... , deg( v n ))의 각도를 결정한다 .
도 74은 본 발명에 따른 deg(v i)를 결정하기 위한 일 실시예에 관한 흐름도를 나타낸다 .
단계 7410 에서는 변수 (k1,k2, ... .,km)의 값을 0으로 초기화한다 . 즉 , k1=k2= ... =km=0으로 설정한다 . 이 때 , m은 N[m]이 영이 아닌것과 같은 가장 큰 정수이다 . 다른 정수 변수 j는 1로 설정된다 .
단계 s7420에서는 ,
Figure 112009047453220-pct00025
와 같은 인덱스 a를 결정한다 . 최소 값들이 존재하는 경우 , 인덱스들의 집합 {a, b, ... , c}이 결정된다 .
단계 s7430에서는 , v j 의 각도는 a 가 되며 , j는 1 증가한다 . v j 의 각도가 b가 되며 j는 1 증가한다 . 모든 인덱스가 사용될때까지 상기의 절차가 반복된다 .
단계 s7440에서는 인덱스 집합 { a, b, ... , c} 으로 분류된 (k a , k b , ... , k c } 변수들만이 1 증가한다 .
단계 s7450에서는 , 모든 각도들 (deg(v j ),j=1,..,n)이 결정되었는지를 확인한다 . 모든 각도들이 결정되지 않았으면 단계 s7420을 다시 진행한다 .
이하에서는 , 계속하여 두번째 단계를 설명한다 .
메시지 노드들의 개수는 k개 , 코드워드 노드들의 개수는 n개로 주어지며 , 코드워드 노드들의 각도는 deg(vi)이고 , 코드워드 노드에 연결된 메시지노드들은 도 64의 흐름도에 의하여 확인된다 .
도 75는 본 발명에 따른 메시지 노드와 코드 노드간의 연결에 관한 일 실시예를 나타내는 흐름도이다 .
단계 s7510에서는 , 코드워드 노드 vj 의 인덱스 변수 j를 초기화한다 .
vj 와 연결될 메시지 노드 인덱스들의 집합을 {a, b, ... ,c} 획득한다 . 이 집합의 구성 성분들 (|{a, b, ... ,c}|) 은 vj,의 각도인 deg(v j)와 동일하다 .
단계 s7520에서는 , {ua, ub, ... , uc}를 갖는 vj 와 연결된 메시지 노드들을 확인한다 .
단계 s7530을 통하여 모든 코드워드들에 대하여 상기의 절차를 반복한다 .
도 76는 도 75의 단계 s7520에 관한 구체적인 흐름도를 나타낸다 .
단계 s7610에서는 메시지 노드 인덱스 집합 U 및 S는 {1, ... ..,k} 및 {}로 각각 초기화된다 . 집합 U 및 S는 정렬된 집합이며 , 정렬 순서는 다음에 의하여 정의된다 . U 또는 S내의 x번째 성분을 a, y번째 성분을 b라 한다 . x<y이면 , a<b이거나 반대이다 . 초기화는 이 과정이 수행되기 전에 오직 한번 진행된다 .
단계 s7620에서는 {0, ... ,| U|}내에서 허위 (pseudo)의 랜덤 값 x가 얻어진 후 , 반환될 메시지 노드 인덱스는 집합 U내의 x 번째 성분에 의하여 얻어진다 . 이 때 , |U|는 U내의 모든 성분의 개수를 의미한다 . 다음으로 , 이 성분은 집합 U로부터 집합 S로 이동한다 . 이러한 방식으로 이전에 선택된 모든 메시지 노드 인덱스 값이 집합 S에 포함되며 , 선택되지 않은 값들은 집합 U에 남겨진다 .
단계 7630에서는 집합 U가 공집합인지를 판단한다 . 집합 U가 비게되면 , 단계 s7640을 수행하여 집합 S 및 U를 {1, ... .,k} 및 {}로 각각 초기화한다 .
상술한 흐름도에서는 {0, ... ,|U|}내의 메시지 노드 인덱스 번호 x를 획득하는 과정이 생략되어 있다 . 이 과정은 Makoko Matsumoto 및 Takuji Nishmura에 의하여 1996/1997에 개발되고 2002에 개선된 허위 랜덤 넘버를 생성하는 알고리즘인 MT(Mersenne Twister)에 의하여 수행된다 . 상업적 목적을 포함하여 어떠한 목적으로도 자유롭게 사용가능한 개발자에 의한 표준 C 코드가 존재한다 .
어떤 절차를 수행하기 전에 , MT 과정은 서명되지 않은 34비트 정수 시드(seed)에 의하여 초기화된다 . {1, ... ,|U|}내의 메시지 노드 인덱스 넘버 x를 얻기 위하여 , 서명되지 않은 32비트 정소를 생성하고 , |U| <= 2 e 를 만족하는 최소 정수를 획득하고 , 최상위 e비트들을 획득한 후 , 획득한 정수가 |U|보다 크거나 같은 경우에는 버리거나 상기 절차를 반복한다 . 획득한 정수가 |U|보다 작은 경우에는 , 메시지 노드 인덱스 넘버 x는 {1, ... ,|U|}내의 x+1 이다 .
다음으로 생성된 행렬을 설계하는 방법을 설명한다 .
각각의 행은 그래프내의 코드워드 노드 (vi,i=1 ... .n)에 대응하며 , 각각의 열은 메시지 노드 (ui,i=1 ... .k)를 나타낸다 . ux 가 그래프내의 vy 와 연결되면 , 생성 행렬내의 x번째 열과 y번째 행의 성분이 1이 될 것이다 . 연결되지 않는다면 , 성분은 0이 될 것이다 .
이하에서는 사전 제작된 AL-FEC 코드들을 설명한다 .
MCAST AL-FEc 코드를 정의하기 위하여 , 두개의 행렬이 정의된다 . 하나는 내부 코드를 위한 것이며 , 다른 하나는 외부 코드를 위한 것이다 .
MCAST AL-FEC 코드가 (n,k)인 경우 , 내부 코드는 (n, k+δ k )이고 , 외부 코드는(k+δ k ,k)일 것이다. k+δ k 외부 코드내의 코드워드 노드들 및 내부 코드들내의 메시지노드들의 개수이다 .
내부 코드내의 deg(v j )를 정의하기 위하여 , 설계 파라미터 Δ 가 제공되어야 한다.
내부 및 외부 코드들내의 ui 및 vj 간의 연결을 정의하기 위하여, MT 과정을 위한 임의 시드가 제공되어야 한다. 이 시드는 내부 및 외부 코드에 모두 사용될 것이다.
따라서, 3개의 파라미터들 (δ k , Δ ,seed)이면 , MCAST AL-FEC 모드를 정의하는데 충분하다 . 3개의 상이한 (n,k) MCAST AL-FEC 코드들에 관한 파라미터들의 일 예는 다음의 표 21에 따른다 .
[표 21]
Figure 112009047453220-pct00026
도 77은 본 발명에 따른 MCAST 방송 수신 장치에 관한 일 실시예를 나타낸다.
본 발명에 따른 방송 수신 장치에 관한 일 실시예는 시그널링 정보 추출부(7701), 데이터 획득부(7702) 및 데이터 처리부(7703)을 포함한다.
시그널링 정보 추출부(7701)는 전송 채널을 처리하기 위하여 필요한 시그널링 정보를 획득한다. 시그널링 정보는 SIC와 같은 특정 전송 채널을 통하여 전송될 수 있다. 시그널링 정보에는 ATSC M/H 스트림에 대한 구성 정보, 전송 채널에 대한 에러 정정 정보, 전송 채널의 구성 정보등과 같이 전송 채널을 처리하기 위한 정보가 하나 이상 포함될 수 있다.
시그널링 정보는 ATSC 일반 스트림(normal streal)상에 연속적으로, 혹은 불연속적으로 탑재되어 전송될 수 있다. 시그널링 정보는 프레임내의 지정된 위치에 존재하거나, 프레임내의 지정된 위치에 시그널링 정보의 위치 정보를 포함시킴으로써, 시그널링 정보 추출부(7701)는 시그널링 정보가 탑재된 위치를 알 수 있다. 이 밖에도, 시그널링 정보가 전송되는 채널 내부 혹은 외부에 특정 비트열을 포함시킴으로써 시그널링 정보의 위치를 나타낼 수 있다.
시그널링 정보는 다른 전송 채널을 처리하는데 필요한 정보를 포함하는 중요한 정보이므로, 에러를 복원할 수 있는 추가적인 코드를 포함할 수 있다. 시그널링 정보는 대역내(in-band) 또는 대역외(out of band) 를 통하여 전송되거나, 전송 스트림상의 특정 위치를 통하여 전송될 수 있다.
데이터 획득부(7702)는 전송 채널을 통하여 전송되는 패킷들을 획득한다. 본 발명에서 명명하는 전송 채널은 일반적인 방송 시스템이 사용하는 전송 채널보다 넓은 개념이다. 즉, 본 발명에서는 다른 전송 스트림에 포함되어 전송되는 스트림을 포함한다. 예를 들어, ATSC 노멀 스트림(즉, MPEG-2 TS)내에 추가적인 표시를 하여MPEG-2 TS 스트림 혹은 다른 종류의 전송 스트림을 포함하여 전송할 수 있다. 본 발명에 따른 방송 수신 장치는 이와 같이 노멀 스트림에 포함된 전송 스트림을 처리하여 데이터를 획득한다. 데이터를 획득하는 방법은 사전에 정한 방법을 사용하거나, 상술한 SIC와 같은 특정 채널을 통하여 전송되는 시그널링 정보를 이용하여 정의할 수 있다. 일 예로, MPEG-2 TS 널 패킷 영역에 전송 스트림을 포함하거나, MPEG-2 TS의 사적 데이터 영역(private data field)에 전송 스트림을 삽입하는 경우와 같이, 일반적인 전송 스트림내의 특정 위치에 이동 단말이 수신하기 위한 전송 스트림을 삽입하거나 이와 같이 삽입되었음을 나타내는 정보를 SIC를 통하여 전송한다.
일반적인 전송 스트림에 이동 단말이 수신하기 위한 전송 스트림을 삽입(혹은 추가)하는 경우 이를 처리하기 위한 추가적인 해더나 표시 정보가 또한 포함될 수 있다. 예를 들어, 추가된 스트림의 시작과 끝 위치, 길이 정보, 추가 스트림의 존재 여부, 추가된 스트림을 처리하기 위해 필요한 기타 정보들이 조합되어 포함될 수 있다.
데이터 획득부(7702)는 메타 정보 출력부 및 전송 채널 접근부를 포함할 수 있다.
메타 정보 출력부(미도시)는 제공되는 방송 서비스에 관한 메타 데이터를 출력한다. 메타 데이터는 ESG,EPG 또는 OMA BCAST의 서비스 가이드와 같이 제공되는 서비스에 관한 메터 데이터이다. 여기에는 전송 패킷을 처리하기 위해 필요한 정보를 포함할 수 있다. 예를 들어, IP 스트림을 처리하기 위한 SDP데이터 역시 메타데이터에 포함될 수 있다. 혹은 IP 스트림이 존재하는 전송 채널의 위치를 나타내는 정보 역시 메타 데이터에 포함될 수 있다. 즉, 서비스에 관한 어떠한 정보도 메타데이터로 취급될 수 있다. 이하에서는 메타데이터의 일 예로, OMA BCAST의 서비스 가이드에 기초하여 설명한다. OMA BCAST에 따른 서비스를 제공하기 위해서는 서비스 가이드 공표 채널 및 서비스 가이드 전송 채널에 순차적으로 접근하여 서비스 가이드를 획득하여야 한다. 서비스 가이드 공표 채널이 어떤 전송 채널을 통하여 전송되는지는 SIC내의 i-IMT에 포함될 수 있음은 상술한바이다. 따라서, 메타 정보 출력부(미도시)는 i-IMT를 이용하여 전송 채널을 통하여 제공되는 서비스의 메타 데이터를 획득하여 출력한다.
만일, MCAST 전송 시스템이 상술한 프라이머리 서비스와 같은 고속 접근을 지원하는 경우에는, 메타 데이터를 획득함과 동시에 프라이머리 서비스를 제공하도록 할 수 있다.
전송 채널 접근부(미도시)는 사용자가 선택한 방송 서비스를 제공하는 전송 채널에 접근한다. 실시예에 따라서는 방송 수신 장치 또는 방송 서비스 제공자에의 하여 전송 채널이 자동적으로 선택될 수도 있다.
전송 채널이 선택되면, 전송 채널을 통하여 전송되는 데이터를 획득한다. 전송 채널을 통하여 전송되는 데이터는 패킷 단위, 바이트 열 단위, 비트열 단위 등으로 구성될 수 있다. 데이터에는 에러를 보정하기 위하여 에러 보호 코드(protection code)가 부가될 수 있다. 이 경우 에러 보호 코드를 이용하여 에러를 보정한다. 전송 채널을 통해 전송되는 데이터는 상술한바와 같이 특정한 위치 혹은 SIC에 의해 알려진 위치등에 존재할 수 있고, 전송 채널 접근부(미도시)는 이러한 정보까지 모두 처리할 수 있다. 그러나 실시예에 따라서는 이와 같은 정보의 처리를 데이터 획득부(7703)에서 담당할 수 있다.
데이터 처리부(7703)는 획득한 데이터를 처리한다. 데이터는 패킷 단위로 처리되거나, 바이트 열 단위로 처리되거나, 비트열 단위로 처리될 수 있다. 데이터를 패킷 단위로 처리하는 경우, 각 패킷에는 해더가 존재한다. 해더에는 패킷의 구성 정보가 포함되어 있으며, 이 정보를 이용하여 최초의 데이터를 복원한다.
특히, 본 발명에 따른 MCAST 전송 시스템에서는 어플리케이션 데이터를 캡슐화 패킷으로 단편화하고, 캡슐화 패킷을 전송 패킷으로 세그먼트화한다. 이 경워, 데이터 처리부(7703)는 전송 패킷의 해더 정보를 이용하여 캡슐화 패킷을 복원한 후, 캡슐화 패킷의 해더 정보를 이용하여 최초의 어플리케이션 데이터를 복원한다.
실시 예에 따라서는, 패킷 열단위로 데이터를 처리할 수 있다. 패킷 열 단위로 데이터를 처리하는 경우, 상술한 LMT와 같은 패킷 열에 대한 구성 정보를 획득한 후, 각 패킷열에 포함된 패킷들을 처리하여 데이터를 획득한다.
획득된 데이터는 디코딩 하거나, 별도의 디코딩 없이 출력장치(미도시)를 통하여 출력된다. 출력 장치는 AU(Access Unit) 단위의 데이터를 처리하여 출력함으로써 사용자에게 방송 서비스를 제공한다. AU는 출력 장치 혹은 디코딩 장치에서 분할 처리가 가능한 최소한의 단위를 지칭한다. 일 예로, 비디오의 경우 I,P,B 프레임 패킷들이 AU단위이며, MPEG-2 전송 패킷에서는 PES 또는 섹션 데이터가 AU 단위일 수 있다.
방송 수신 장치는 채널 설정 모듈(미도시), RF 수신 장치(미도시), 기저대역(baseband) 처리 장치 및 임배디드 스트림 정보 수신 장치(미도시)를 더 포함할 수 있다. 채널 설정 모듈은 채널의 주파수를 설정하며, RF 수신 장치는 설정된 주파수로 들어오는 신호를 수신한다. 기저대역 처리 장치는 수신된 신호를 처리하고 이를 후단에서 처리할 수 있도록 비트 스트림열로 전환한다. 임베디드 스트림 정보 수신 장치는 임베디드 스트림에 대한 정보를 수신한다. 임베디드 스트림에 대한 정보는, 임베디드 스트림이 존재하는지를 나타내는 정보, 임배디드 스트림의 종류, 임배디드 스트림의 처리 방법에 대한 정보(예를 들면, 아우터 인터리빙, RS 패러티 정보, 시간 인터리빙 정보등) 등의 임배디드 스트림을 처리하기 위하여 필요한 어떠한 정보도 가능하다.
도 77에서 설명하는 임베디드 스트림은 특정 전송 스트림내에 동일한 형식의 혹은 다른 형식의 전송 스트림이 포함되는 경우, 포함되는 스트림을 지칭하는 의미로써 사용된다. 따라서, 이를 처리하기 위한 정보가 인밴드(in-band), 아웃오브밴드(out-of-band)를 통하여 전송되거나 정해진 조건 혹은 값을 사용함으로써 방송 수신 장치가 알 수 있도록 한다
도 78은 본 발명에 따른 방송 수신 방법의 일 실시예에 관한 흐름도를 나타낸다.
단계 s7810에서는 채널의 주파수를 설정한다.
단계 s7820에서는 설정된 주파수로 들어오는 신호를 수신한다.
단계 s7830 에서는 임배디드 스트림에 대한 정보를 수신한다.
단계 s7840에서는 하나 이상의 전송 채널을 처리하기 위한 정보를 포함하는 시그널링 정보를 획득한다. 본 명세서에서 시그널링 정보는 SIC를 통하여 전송될 수 있다.
단계 s7850에서는, 전송 채널의 정보를 사용자에게 출력하여 사용자의 선택을 유도한다.
단계 s7860 에서는, 사용자의 입력에 기초하여 서비스를 제공할 전송 채널을 선택한다. 실시예에 따라사는사전에 정의된 전송 채널이 디폴트로 선택될 수 있다.
단계 s7870 에서는, 하나 이상의 전송 채널을 통하여 전송되는 데이터를 수신한다.
단계 s7880에서는, 수신된 데이터를 처리한다.
단계 s7890에서는, 처리된 데이터를 출력한다.
본 발명에 따른 전송 프레임은 ATSC 전송 시스템이 사용하는 전송 프레임에 삽입되어 전송되거나 독자적으로 전송될 수 있다. 다른 전송 시스템이 사용하는 전송 프레임이 삽입되어 전송되는 경우에, 상술한 단계 중 일부는 실시예에 따라서 생략될 수 있다.
도 79은 본 발명에 따른 A-VSB MCAST수신 시스템의 개략적인 구조를 나타낸다.
튜너를 통하여 수신된 방송 신호는, 물리 계층, 데이터 연결 계층, 전송 계층 및 어플리케이션 계층을 통하여 사용자에게 출력된다. 도 79에 도시된 각 계층은 MCAST 전송 시스템에서의 계층이 수행하는 동작에 대응하는 역 동작을 수행한다.
물리 계층에서는 수신된 방송 신호를 통하여MCAST 전송 프레임을 획득한다. MCAST 전송 프레임은 다른 전송 시스템내의 전송 프레임에 삽입되어 전송될 수 있다. 따라서, 물리 계층은 MCAST 전송 프레임을 획득하여야 한다. ATSC전송 프레임에 MCAST 전송 프레임이 삽입되어 전송되는 경우에는DFS(Deterministic Frame Sync) 필드를 검출하여 N개의 패킷으로 스트림을 구분한다. MCATS 전송 프레임은 결정형(determinisitc) 구조이므로, 에러의 존재 유무와 관계 없이 N개의 패킷을 MCAST 전송 프레임에 포함할 수 있다
데이터 연결 계층에서는, 터보 채널을 통하여 전송되는 데이터 및 SIC를 통하여 전송되는 시그널링 정보들의 에러를 보정한다. 전송단에서는, 각각의 터보 채널에 특정한 FEC(code rate 등등)을 적용할 수 있다. 특히, SIC내의 시그널링 정보에는 강력한 FEC를 적용할 수 있다. 방송 수신 장치내의 데이터 연결 계층은 FEC 와 같은 추가적인 부가 코드를 이용하여 에러를 보정할 수 있다.
방송 수신 장치내의 전송 계층은 패킷화 계층 및 캡슐화 계층으로 구성된다. 패킷화 계층에서는 다중화된 전송 패킷을 처리하여 캡슐화 패킷을 생성하고, 캡슐화 계층은 캡슐화 패킷을 처리하여 원래의 어플리케이션 데이터 및 어플리케이션 상세 정보를 복원한다. 어플리케이션 데이터는 실시간 미디어 데이터, IP 데이터, 오브젝트 데이터 및 시그널링 데이터를 포함할 수 있다.
MCAST 전송 시스템에서 사용하는 전송 프레임은 결정론적인 구조를 갖는다. 즉, 하나의 전송 프레임에 정수개의 패킷이 존재한다. 이와 같이 전송 프레임이 결정론적인 구조를 갖는 경우에는 패킷내부의 싱크 필드나 CC 필드를 제거할 수 있으므로 효과적이다. 그러나, 본 발명과 같이 파슬 단위로 데이터를 다중화하여 전송하는 시스템에서는 파슬을 이용한 다중화는 파슬을 구성하는 모든 패킷을 수신해야 한다. 만약 일부 패킷에 에러가 발생하였다면 그 패킷도 수신하여 파슬로 구성을 해야 한다. 그렇지 않으면 서브 데이터 채널의 종료 오프셋 값과 실제 파슬 내의 데이터의 위치가 일치하지 않아 패킷 획득이 제대로 수행되지 않게 된다. 일 예로, LMT와 같이 전송 채널의 위치를 알려주는 정보는, 프레임내의 오프셋 값을 통하여 데이터의 위치를 알려주기 때문에 물리 계층에서는 에러가 존재하는 패킷이라 하더라도 상위 계층으로 전송하여야 한다.
이에 따라 특정한 패킷에 에러가 발생하게 되면 이 패킷에 에러를 반드시 표시를 해주거나 패킷 역다중화에 알려주어야 한다. 에러를 알려주기 위한 일반적인 방식은 다음과 같다.
첫째로, 패킷의 해더내에error_indicator 필드를 추가하여 에러를 표현한다. TS에서 사용하고 있는 방법이다. 그러나, 패킷의 해더 내에 새로운 필드를 추가하여야 하므로 패킷 효율성이 저하된다.
둘째로, 하드웨어signal flag를 이용하여 현재 패킷의 에러를 표현한다. error_indicator 필드를 사용하지 않는 경우, 별도의 시그널링을 통해 에러를 표시한다. 그러나, 시그널링 정보와 패킷간의 동기를 맞추어야 하므로 오버해드가 발생한다.
셋째로, 각 패킷마다 규격에 명시되어 있지 않는 추가적인 구조를 생성하고 이 필드내에 error_indicator 필드를 추가하여 표시한다. 그러나, 단말이 개별적으로 에러를 표현하는 정보를 삽입햐여야 하는 불편함이 존재한다.
이러한 문제를 해결하기 위하여 패킷 해더의 구조상 모순이 되는 필드를 조합하여 암묵적으로 에러를 표시한다. 에러 패킷의 해더를 실제 패킷에서는 절대로 존재할 수 없는 해더로 구성하여 에러를 표시하는 방법을 사용할 수 있다. 즉, 패킷의 구성상 절대 있을 수 없는 조합을 패킷 헤더로 구성한다. 이러한 헤더 구성은 존재할 수 없으므로 이러한 구성을 포함한 패킷에 대해, 패킷 역다중화부는 에러 패킷으로 판정한다.
다음은 MCAST에서 정의하는 에러 패킷의 헤더 구성에 관한 일 실시예이다.
First_last 0x00
DC_flag 0x01
Decoder Configuration 은 항상 캡슐화 패킷의 첫번째 패킷이 존재하는 곳에만 입력되므로 이러한 구성은 MCAST 패킷에서 존재할 수 없다따라서 단말은 이와 같은 패킷 헤더 구성을 확인하면 이를 에러 패킷으로 판단한다.
도 80은 본 발명에 따른 에러 패킷을 표시하는 방송 수신 장치에 관한 일 실시예를 나타낸다.
도 80에 도시된 본 발명에 따른 에러 패킷을 표시하는 방송 수신 장치는 RF 모듈 (8001), 기저대역 처리부 (8002), DFS 감지부 (8003), 전해더 (preheader) 삽입부 (8004), 역다중화부 (8005) 및 렌더러 (8006)을 포함한다 .
RF 모듈 (8001)은 아날로그 방송 신호를 수신하고 , 기저대역 처리부 (8002)는 ATSC 및 A-VSB 규격에 따라 비트 스트림을 생성한다 . DFS 감지부 (8003) DFS를 감지하여 N 개의 패킷으로 스트림을 구분한다 .
전해더 삽입부 (8004)는 각 패킷에 전 해더를 삽입한다 . 전 해더에는 패킷의 종류를 나타내는 식별자 , 에러가 존재하는지를 나타내는 에러 정보 , 패킷 종류별 연속성이 존재하는지를 확인하기 위한 CC 필드가 포함될 수 있다 . CC 필드를 이용하여 소실된 패킷이 존재하는지를 파악할 수 있다 .
전해더의 구조에 관한 일 실시예는 도 82에서 후술한다 .
역다중화부 (8005)는 전송 패킷을 역 다중화한다 . 이 때 , 전해더에 포함된 패킷의 종류를 나타내는 식별자를 이용할 수도 있다 .
렌더러 (8006)는 데이터를 처리하여 출력한다 .
도 81은 본 발명에 따른 에러 패킷을 표시하는 방송 수신 방법의 일 실시예에 관한 흐름도를 나타낸다.
단계 8110에서는, 기저대역 처리부로부터 비트 스트림을 수신한다.
단계 8120에서는, DFS를 이용하여 비트 스트림을 N개의 패킷 단위로 구분한다. N 값은 전송 모드에 따라 달라질 수 있다.
단계 s8130서는 에러 보정이 수행된다. 전송단에서 사용한 에러 보호에 대응하는 방법으로 에러를 보정한다. 일 예로, RS 디코딩 또는 아우터 디코딩이 수행될 수 있다.
단계 s8140에서는, 패킷의 종류를 식별한다. 일 예로, 전송 패킷이 시그널링 데이터를 포함하는 시그널링 패킷인지 일반적인 데이터 패킷인지를 식별한다.
단계 s8150에서는, 패킷의 종류에 따라 패킷의 식별자를 부가한다. 일 예로, 시그널링 정보를 포함하는 시그널링 패킷의 경우 0x30을 식별자로써 사용하고, 일반적인 MCAST 전송 패킷인 경우에는 0x47을 식별자로써 사용할 수 있다.
단계 s8160에서는, 패킷에 에러가 존재하는지를 판단하고, 에러가 존재하면 에러가 존재하는 패킷을 나타내는 정보를 부가한다.
단계 s8170에서는, 모든 패킷에 대해서 상기의 과정이 수행되었는지를 판단하고, 남은 패킷이 존재하는 경우에는 위의 과정을 반복한다.
단계 s8180에서는 전송 계층의 역 다중화부에 의하여 패킷을 처리한다.
상술한 단계 8110 내자 단계 8170에서의 동작은 기저대역 처리부 또는 전송 계층 이하에서의 동작을 나타낸다.
도 82a, 및 도 82b는 본 발명에 따른 전 해더 구조의 일 실시예를 나타낸다.
전해더는 동기 바이트 및 CC 필드로 구성될 수 있다.
동기 바이트는 1바이트로 구성되며, 패킷의 종류를 식별하기 위한 식별 정보를 포함한다. 일 예로, 0x38은 시그널링 패킷이며, 0x47은 일반적인 데이터 패킷임을 나타낼 수 있다.
CC 필드는 1바이트로 구성되며, 패킷에 에러가 존재하는지를 나타내는 에러 플래그가 포함될 수 있다. 에러를 표시하는 경우 CC 필드의 한 비트를 에러를 표시하기 위하여 사용할 수 있다. 이 경우 CC는 그 값을 무시하고 하나씩 증가한다.
일 예로, 0,1,2,3,4,....,254,255,0,1,2,3,...은 에러가 없는 경우를 나타내며, 0,1,2,3,4,....,126,127,0,1,2,3,은 에러가 존재하는 경우를 나타낸다.
도 83은 본 발명의 일 실시예에 따른 방송 수신 장치에서 DCI를 처리하는 방법에 관한 흐름도를 나타낸다.
단계 s8310에서는 , MCAST 전송 패킷을 수신한다 .
단계 s8320에서는 RAP 플래그를 체크한다 .
RAP 플래그가 활성화 된 경우 , 단계 s8330을 수행하여 캡슐화 패킷을 구성한다 .
단계 s8340에서는 DCI 플레그를 체크한다 .
단계 s8350에서는 DCI 필드를 파싱한다 .
단계 s8360에서는 DCI 필드에 대응하도록 디코더를 설정한다 .
도 84a는 본 발명에 따른 적응적 타입 슬라이싱에서 TCC를 업데이트하는 방법에 관한 일 실시예를 나타낸다.
도 84a을 참고하면, GOF는 다섯 개의 프레임으로 구성된다. 각각의 GOF내에 포함된 프레임들의 번호는 0 부터 5까지이다.
'TCC_next_update_offset' 필드는 SIC내의 SCI 필드를 통하여 전송될 수 있으며, TCC가 업데이트 될 프레임을 나타낸다. 즉, 'TCC_next_update_offset' 필드 값이 '4'이면, 4개의 프레임 이후에 TCC가 업데이트 됨을 나타낸다.
'Next_update_offset' 필드 값은 각 채널마다 상이하며, 각 채널에서의 TCC 업데이트 시점은 'TCC_next_update_offset' 필드와 'Next_update_offset' 필드를 이용하여 계산되도록 할 수 있다. 본 실시예에서는, 터보 채널의 TCC 업데이트 시점을TCC_next_update_offset+ Next_update_offset로 계산한다.
우선, 채널 A의 TCC 업데이트 시점을 살펴본다.
번호가 첫번째 GOF내의 번호가 '1'인 프레임이 수신되면 방송 수신 장치는 'TCC_next_update_offset' 필드 값과 'Next_update_offset' 필드 값을 획득한다. 본 실시예에서 'TCC_next_update_offset' 필드 값은 '4'이고, 'Next_update_offset' 필드 값은 '0'임이다. 따라서, 'TCC_next_update_offset' 필드 값과 'Next_update_offset' 필드 값을 더한 시점, 즉 4개의 프레임 이후에 채널 A의 터보 채널 구성 정보(Turbo channel configuration information, TCC)가 업데이트 된다. 따라서, 첫번째 GOF내의 번호 5'인 프레임부터 변경된 TCC가 적용된다.
유사한 방법으로 채널 B에서는 두번째 GOF내의 번호 '2'인 프레임부터 변경된 TCC가 적용되며, 채널 C에서는 두번째 GOF내의 번호 '5'인 프레임부터 변경된 TCC가 적용된ㄷ.
도 84b는 본 발명에 따른 적응적 타입 슬라이싱에서 BD를 이용한 업데이트 방법에 관한 일 실시예를 나타낸다.
도 84b에서는, BD에 포함된 정보를 이용하여 IMT 및 채널 정보를 업데이트하는 방법을 설명한다. 도 84a와 유사하게 GOF는 다섯 개의 프레임으로 구성되며, 각각의 GOF내에 포함된 프레임들의 번호는 0 부터 5까지이다.
첫번째 GOF내의 번호가 '1'인 프레임이 수신되었다고 가정하면, 방송 수신 장치는 'BD_next_update_offset' 필드 값을 획득한다. 본 실시예에서, 'BD_next_update_offset' 필드 값은 '4'이다.
또한, 채널 정보 기술자(channel_info_descriptor)에 포함된 'update_frame_counter'(또는 channel_info_update)필드 값 및 IMT 필드에 포함된 'extended version' 필드 값을 획득한다. 본 실시예에서, 'BD_next_update_offset' 필드 값은 '4'이며, 'extended version' 필드 값은 '0'임을 알 수 있다. 따라서, 'BD_next_update_offset' 필드 값과 'extended version' 필드 값을 더한 시점, 즉 4개의 프레임 이후에 IMT가 업데이트 된다. 따라서, 첫번째 GOF내의 '5'번 프레임부터 업데이트된 IMT가 적용된다.
또한, 'BD_next_update_offset' 필드 값과 'update_frame_counter'필드 값을 더한 시점, 즉 7개의 프레임 이후에 터보 채널 정보가 업데이트 된다. 따라서, 두번째 GOF내의 '2'번 프레임부터 업데이트된 채널 정보가 적용된다. 터보 채널 정보가 업데이트 되는 경우는, 터보 채널 구성 정보가 변경되는 경우는 물론 일부 터보 채널이 추가되거나 없어지는 경우를 포함한다.
BD 가 다수의 프레임으로 구성되는 경우에는 'update_frame_counter'은 '0'보다 클 것이다.
도 85는 본 발명에 따른 방송 서비스 전송 장치의 일 실시예에 관한 블록도를 나타낸다.
본 발명에 따른 방송 서비스 전송 장치(8500)는 캡슐화 패킷 생성부 (8510), 전송 패킷 생성부 (8520) 및 서비스 설정 정보 생성부 (8530)를 포함한다 .
캡슐화 패킷 생성부 (8510)는 애플리케이션 데이터를 입력받아 , 전송될 애플리케이션 데이터의 종류에 적응적인 설정 정보 및 애플리케이션 데이터를 포함하는 캡슐화 패킷을 생성하고 , 전송 패킷 생성부 (8520)로 출력한다 .
본 발명의 일 실시예에서 , 애플리케이션 데이터는 시그널링 데이터 , 실시간 미디어 데이터 , IP 데이터 및 객체 데이터 중 어느 하나이며 , 각각의 애플리케이션 데이터에 따라 캡슐화 패킷에 대한 정보가 다르게 설정된다 .
특히 실시간 미디어 데이터를 포함하는 캡슐화 패킷의 일 실시예는 , 목표 디코더의 세부 정보를 결정하는 디코더 설정 정보를 헤더 영역에 포함한다.
전송 패킷 생성부 (8520)는 캡슐화 패킷 생성부 (8510)로부터 캡슐화 패킷을 입력받아 , 캡슐화 패킷을 소정 사이즈로 분할하여 , 캡슐화 패킷 데이터 및 적어도 하나 이상의 전송 패킷에 대한 정보를 포함하는 전송 패킷을 생성하여 , 서비스 채널 정보 설정부 (8530)로 출력한다 .
전송 패킷 생성부 (8520)의 일 실시예는 , 기본 헤더 영역 , 포인터 영역 , 패딩 영역 , 위치 맵 테이블 영역 , 연결 관계 정보 테이블 및 페이로드 영역을 포함하는 전송 패킷을 생성한다 .
서비스 설정 정보 생성부 (8530)는 , 전송 패킷 생성부 (8520)로부터 전송 패킷을 입력받아 , 전송 스트림 상의 적어도 하나 이상의 전송 채널들 중 소정 위치의 서비스 정보 채널에 , 전송 패킷을 포함하는 채널에 대해 설정된 정보를 포함하는 서비스 설정 정보를 생성하여 출력한다 .
일 실시예의 서비스 채널 정보는 , 터보 채널에 대한 정보 및 프레임 그룹 정보를 포함하는 서비스 설정 정보를 결정하는 서비스 설정 정보 결정부를 포함한다 .
도 86은 본 발명에 따른 방송 서비스 수신 장치의 일 실시예에 관한 블록도를 나타낸다 .
본 발명에 따른 방송 서비스 수신 장치 (8600)의 일 실시예는 , 전송 채널 결정부 (8610), 전송 패킷 추출부 (8620), 전송 패킷 정보 추출부 (8630), 캡슐화 패킷 조합부 (8640) 및 애플리케이션 데이터 조합부 (8650)를 포함한다 .
전송 채널 결정부 (8610)는 , 입력받은 프레임의 소정 위치의 서비스 정보 채널로부터 추출된 서비스 설정 정보를 이용하여 소정의 전송 채널을 결정하여 , 결정된 전송 채널에 대한 정보를 전송 패킷 추출부 (8620)로 출력한다 .
서비스 설정 정보의 일 실시예는, 터보 채널에 대한 정보 및 프레임 그룹 정보를 추출한다 .
전송 패킷 추출부 (8620)는 , 전송 채널 결정부 (8610)에서 결정된 전송 채널로부터 전송 패킷을 추출하여 , 전송 패킷 정보 추출부 (8630)로 출력한다 .
전송 패킷 정보 추출부 (8630)는 , 전송 패킷 추출부 (8620)에서 추출된 전송 패킷에서 전송 패킷에 대한 설정 정보를 추출하여 , 캡슐화 패킷 조합부 (8640)로 출력한다 .
캡슐화 패킷 조합부 (8640)는 , 전송 패킷 추출부 (8620)로부터 전송 패킷을 입력받아 , 추출된 전송 패킷으로부터 추출된 전송 패킷에 대한 정보를 이용하여 , 적어도 하나 이상의 전송 패킷을 포함하는 캡슐화 패킷을 조합하여 , 애플리케이션 데이터 조합부 (8650)로 출력한다 .
본 발명의 일 실시예에서 , 전송 패킷으로부터 기본 설정 정보 , 위치 맵 테이블 , 연결 관계 정보 테이블 및 프로그램 클럭 참조 정보 (Program Clock Reference, PCR)가 추출된다.
애플리케이션 데이터 조합부 (8650)는 , 캡슐화 패킷 조합부 (8640)로부터 캡슐화 패킷을 입력받아, 캡슐화 패킷으로부터 추출된 캡슐화 패킷에 대한 정보를 이용하여 , 적어도 하나 이상의 캡슐화 패킷을 포함하는 애플리케이션 데이터를 조합하여 출력한다 .
도 87 는 본 발명에 따른 방송 서비스 전송 방법의 일 실시예에 관한 흐름도를 나타낸다 .
단계 s8710에서 , 전송될 애플리케이션 데이터의 종류에 적응적인 설정 정보 및 애플리케이션 데이터를 포함하는 캡슐화 패킷이 생성된다 .
단계 s8720에서 , 소정 사이즈로 분할된 캡슐화 패킷의 데이터를 포함하는 전송 패킷가 생성된다 . 전송 패킷은 전송 패킷의 구조에 대한 정보를 포함한다 .
단계 s8730에서 , 전송 스트림 상의 적어도 하나 이상의 전송 채널들 중 소정 위치의 서비스 정보 채널에 , 전송 패킷을 포함하는 채널에 대해 설정된 정보를 포함하는 서비스 설정 정보가 생성된다 .
도 88은 본 발명에 따른 이동 통신용 방송 서비스 수신 방법의 일 실시예에 관한 흐름도를 도시한다 .
단계 s8810에서 , 서비스 정보 채널로부터 추출된 서비스 설정 정보를 이용하여 소정의 전송 채널가 결정된다 .
단계 s8820에서 , 결정된 전송 채널로부터 전송 패킷이 추출된다 .
단계 s8830에서 , 추출된 전송 패킷으로부터 전송 패킷에 대한 정보가 추출된다 .
단계 s8840에서 , 추출된 전송 패킷에 대한 정보를 이용하여 , 적어도 하나 이상의 전송 패킷을 포함하는 캡슐화 패킷이 조합된다 .
단계 s8850에서 , 조합된 캡슐화 패킷으로부터 추출된 캡슐화 패킷에 대한 정보를 이용하여 , 적어도 하나 이상의 캡슐화 패킷을 포함하는 애플리케이션 데이터가 조합된다
본 명세서에서는 본 발명이 MCAST에 적용되는 경우를 예로 들고 있으나 이는 일 예에 불과하며, 본 발명은 어떠한 Mobile Handheld에도 적용될 수 있다.
이제까지 본 발명의 바람직한 실시예들을 중심으로 살펴보았다 . 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다 . 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다 . 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며 , 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다 .
한편 , 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고 , 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다 . 상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체 (예를 들면 , 롬 , 플로피 디스크 , 하드디스크 등 ), 광학적 판독 매체 (예를 들면 , 시디롬 , 디브이디 등 ) 및 캐리어 웨이브 (예를 들면 , 인터넷을 통한 전송 )와 같은 저장매체를 포함한다 .
또한 상술한 방송 전송 방법 및 장치와 방송 수신 방법 및 장치를 설명하기 위한 데이터 필드 , 패킷 구조 , API 및 각종 블록들은 컴퓨터 프로그램 스트럭션들에 의해 수행될 수 있음을 이해할 수 있을 것이다 . 이들 컴퓨터 프로그램 스트럭션들은 범용 컴퓨터 , 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로 , 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들의 기능들을 수행하는 수단을 생성하게 된다 . 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로 , 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들의 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다 . 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로 , 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들의 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다 .
또한 , 각각의 블록은 특정된 논리적 기능 (들 )을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈 , 세그먼트 또는 코드의 일부를 나타낼 수 있다 . 또 , 몇 가지 대체 실행예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다 . 예컨대 , 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다 .
또한, 본 명세서이 개시된 데이터 필드 및 패킷들은 동일한 기능을 수행하는 다른 데이터 필드 및 패킷들로 변경될 수 있다.

Claims (10)

  1. 전송될 애플리케이션 데이터에 적응적인 설정 정보 및 상기 애플리케이션 데이터를 포함하는 캡슐화 패킷을 생성하는 단계 ;
    소정 사이즈로 분할된 상기 캡슐화 패킷의 데이터를 포함하는 전송 패킷을 생성하고, 상기 전송 패킷은 상기 애플리케이션 데이터에 대한 정보를 포함하는 단계 ; 및
    적어도 하나 이상의 전송 채널들 중 하나의 전송 채널인 서비스 정보 채널에, 상기 전송 패킷에 포함되는 채널에 대해 설정된 정보를 포함하는 서비스 설정 정보를 생성하는 단계를 포함하는 것을 특징으로 하는 이동 통신용 방송 서비스 전송 방법 .
  2. 삭제
  3. 전송될 애플리케이션 데이터에 적응적인 설정 정보 및 상기 애플리케이션 데이터를 포함하는 캡슐화 패킷을 생성하는 캡슐화 패킷 생성부 ;
    소정 사이즈로 분할된 상기 캡슐화 패킷의 데이터를 포함하는 전송 패킷을 생성하고, 상기 전송 패킷은 상기 애플리케이션 데이터에 대한 정보를 포함하는 전송 패킷 생성부; 및
    적어도 하나 이상의 전송 채널들 중 하나의 전송 채널인 서비스 정보 채널에, 상기 전송 패킷에 포함되는 채널에 대해 설정된 정보를 포함하는 서비스 설정 정보를 생성하는 서비스 설정 정보 생성부를 포함하는 것을 특징으로 하는 이동 통신용 전송 서비스 전송 장치.
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 삭제
  10. 삭제
KR1020097016241A 2007-05-14 2008-05-14 방송 송신 방법 및 장치와 방송 수신 방법 및 장치 KR101122200B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020097016241A KR101122200B1 (ko) 2007-05-14 2008-05-14 방송 송신 방법 및 장치와 방송 수신 방법 및 장치

Applications Claiming Priority (12)

Application Number Priority Date Filing Date Title
US91777607P 2007-05-14 2007-05-14
US60/917,776 2007-05-14
US60/938,477 2007-05-17
US60/944,619 2007-06-18
US60/974,321 2007-09-21
US60/978,488 2007-10-09
US61/047,556 2008-04-24
US61/071,369 2008-04-24
US61/071,364 2008-04-24
US61/071,393 2008-04-25
PCT/KR2008/002699 WO2008140263A1 (en) 2007-05-14 2008-05-14 Method and apparatus for transmitting broadcast, method and apparatus for receiving broadcast
KR1020097016241A KR101122200B1 (ko) 2007-05-14 2008-05-14 방송 송신 방법 및 장치와 방송 수신 방법 및 장치

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020117016426A Division KR101227029B1 (ko) 2007-05-14 2008-05-14 방송 송신 방법 및 장치와 방송 수신 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20090112684A KR20090112684A (ko) 2009-10-28
KR101122200B1 true KR101122200B1 (ko) 2012-06-12

Family

ID=41175661

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097016241A KR101122200B1 (ko) 2007-05-14 2008-05-14 방송 송신 방법 및 장치와 방송 수신 방법 및 장치

Country Status (2)

Country Link
KR (1) KR101122200B1 (ko)
CN (2) CN101558643B (ko)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8869216B2 (en) 2009-12-14 2014-10-21 Lg Electronics Inc. Method of processing non-real time service and broadcast receiver
CN102209260A (zh) * 2010-03-30 2011-10-05 联芯科技有限公司 音/视频解码配置信息的配置方法、系统及其移动终端
WO2011139109A2 (ko) * 2010-05-04 2011-11-10 삼성전자 주식회사 디지털 방송 송신기, 디지털 방송 수신기 및 그들의 스트림 구성 및 처리 방법
KR101711937B1 (ko) * 2010-12-03 2017-03-03 삼성전자주식회사 비디오 및 오디오 통신 시스템에서 가변 길이 전송 패킷을 지원하기 위한 장치 및 방법
KR101744355B1 (ko) 2011-01-19 2017-06-08 삼성전자주식회사 상호 계층 최적화를 이용한 멀티미디어 데이터 패킷을 송신하는 방법 및 장치
US8713240B2 (en) 2011-09-29 2014-04-29 Intel Corporation Providing multiple decode options for a system-on-chip (SoC) fabric
US8713234B2 (en) 2011-09-29 2014-04-29 Intel Corporation Supporting multiple channels of a single interface
US8874976B2 (en) 2011-09-29 2014-10-28 Intel Corporation Providing error handling support to legacy devices
US8929373B2 (en) * 2011-09-29 2015-01-06 Intel Corporation Sending packets with expanded headers
US8711875B2 (en) 2011-09-29 2014-04-29 Intel Corporation Aggregating completion messages in a sideband interface
US20140281028A1 (en) * 2011-10-21 2014-09-18 Sharp Kabushiki Kaisha Delivery device, delivery method, association information generation device, association information generation method, control program, and recording medium
GB2509529B (en) 2013-01-07 2020-04-01 Sony Europe Bv A receiving device, method and computer program
JP6382029B2 (ja) * 2013-09-20 2018-08-29 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 送信方法、受信方法、送信装置、及び受信装置
JP6505413B2 (ja) * 2013-11-08 2019-04-24 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 送信方法、受信方法、送信装置、及び受信装置
CN106331747B (zh) * 2015-06-30 2019-10-18 华为技术有限公司 一种视频优化的方法和设备
KR102575517B1 (ko) 2015-08-17 2023-09-07 소니그룹주식회사 수신 장치, 송신 장치 및 데이터 처리 방법
WO2018052253A1 (ko) 2016-09-13 2018-03-22 삼성전자 주식회사 송신 장치 및 그 송신 방법
US10911261B2 (en) 2016-12-19 2021-02-02 Intel Corporation Method, apparatus and system for hierarchical network on chip routing
US10846126B2 (en) 2016-12-28 2020-11-24 Intel Corporation Method, apparatus and system for handling non-posted memory write transactions in a fabric

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000069454A (ja) 1998-08-24 2000-03-03 Victor Co Of Japan Ltd デジタル放送受信機
US20020146038A1 (en) 2001-04-05 2002-10-10 Scott Casavant Method and apparatus for inserting local data into a broadcast stream
KR20040036447A (ko) * 2002-10-26 2004-04-30 한국전자통신연구원 디지털 데이터 방송을 위한 동기화 스트림 데이터 삽입장치 및 그 방법
JP2007006349A (ja) * 2005-06-27 2007-01-11 Funai Electric Co Ltd データ伝送システム、送信装置、受信装置、およびデータ伝送方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1155575B (it) * 1982-07-27 1987-01-28 Cselt Centro Studi Lab Telecom Interfaccia multipla di comunicazione tra elaboratore di processo e mezzo trasmissivo numerico
JP2000312342A (ja) * 1999-02-23 2000-11-07 Canon Inc 記録再生装置、方法、記録装置、方法及びコンピュータ読み取り可能な記憶媒体
US7792121B2 (en) * 2003-01-03 2010-09-07 Microsoft Corporation Frame protocol and scheduling system
KR100595208B1 (ko) * 2004-03-19 2006-07-03 엘지전자 주식회사 Dmb 수신기 및 소비 전력 절감 방법
KR100846781B1 (ko) * 2004-06-01 2008-10-27 삼성전자주식회사 고속정보채널(fic)을 이용한 dab 수신장치의 서비스디스플레이 제어방법 및 그 장치
CN100446574C (zh) * 2005-09-08 2008-12-24 电子科技大学 一种用于移动和手持无线电视广播的传输帧方法
KR20060059877A (ko) * 2005-11-11 2006-06-02 텔레폰악티에볼라겟엘엠에릭슨(펍) 이더넷 접근 시스템에 관한 장치 및 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000069454A (ja) 1998-08-24 2000-03-03 Victor Co Of Japan Ltd デジタル放送受信機
US20020146038A1 (en) 2001-04-05 2002-10-10 Scott Casavant Method and apparatus for inserting local data into a broadcast stream
KR20040036447A (ko) * 2002-10-26 2004-04-30 한국전자통신연구원 디지털 데이터 방송을 위한 동기화 스트림 데이터 삽입장치 및 그 방법
JP2007006349A (ja) * 2005-06-27 2007-01-11 Funai Electric Co Ltd データ伝送システム、送信装置、受信装置、およびデータ伝送方法

Also Published As

Publication number Publication date
KR20090112684A (ko) 2009-10-28
CN101558643A (zh) 2009-10-14
CN101558589B (zh) 2015-11-25
CN101558643B (zh) 2013-04-24
CN101558589A (zh) 2009-10-14

Similar Documents

Publication Publication Date Title
KR101227029B1 (ko) 방송 송신 방법 및 장치와 방송 수신 방법 및 장치
KR101122200B1 (ko) 방송 송신 방법 및 장치와 방송 수신 방법 및 장치
US11696000B2 (en) Method for transmitting broadcast signals and method for receiving broadcast signals
KR101710403B1 (ko) 방송 신호 수신 방법 및 수신 시스템
KR101829844B1 (ko) 하이브리드 방송 서비스를 프로세싱하는 장치, 하이브리드 방송 서비스를 프로세싱하는 방법
US10084842B2 (en) Apparatus for transmitting broadcast signal, apparatus for receiving broadcast signal, method for transmitting broadcast signal and method for receiving broadcast signal
US20190319725A1 (en) Broadcasting signal transmission apparatus, broadcasting signal receiving apparatus, broadcasting signal transmission method and broadcasting signal receiving method
EP3206391A1 (en) Broadcast signal transmission device, broadcast signal reception device, broadcast signal transmission method, and broadcast signal reception method
US10516771B2 (en) Apparatus for transmitting broadcast signal, apparatus for receiving broadcast signal, method for transmitting broadcast signal and method for receiving broadcast signal
KR101788067B1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
US20200322650A1 (en) Broadcast signal transmission apparatus, broadcast signal reception apparatus, broadcast signal transmission method, and broadcast signal reception method
KR20180040571A (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법

Legal Events

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

Payment date: 20160128

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170125

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180130

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190130

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20200130

Year of fee payment: 9