KR20130008436A - Mmt 복합 전달 서비스에서 mmt 패킷 스트림 동기화를 위한 타이밍 정보 제공 방법 및 mmt 패킷 스트림 동기화 방법 - Google Patents

Mmt 복합 전달 서비스에서 mmt 패킷 스트림 동기화를 위한 타이밍 정보 제공 방법 및 mmt 패킷 스트림 동기화 방법 Download PDF

Info

Publication number
KR20130008436A
KR20130008436A KR1020110117177A KR20110117177A KR20130008436A KR 20130008436 A KR20130008436 A KR 20130008436A KR 1020110117177 A KR1020110117177 A KR 1020110117177A KR 20110117177 A KR20110117177 A KR 20110117177A KR 20130008436 A KR20130008436 A KR 20130008436A
Authority
KR
South Korea
Prior art keywords
packet
server
timing information
mmt
media entity
Prior art date
Application number
KR1020110117177A
Other languages
English (en)
Other versions
KR101920051B1 (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 US13/546,994 priority Critical patent/US8923342B2/en
Publication of KR20130008436A publication Critical patent/KR20130008436A/ko
Application granted granted Critical
Publication of KR101920051B1 publication Critical patent/KR101920051B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23605Creation or processing of packetized elementary streams [PES]

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

복합 전달 서비스(Hybrid delivery service) 환경하에서 서로 다른 제1 서버 및 제2 서버에서 각각 전달되는 패킷 스트림간의 동기화를 위한 타이밍 정보 제공 방법이 개시된다. 제1 서버는 제1 미디어 개체를 전송하고 제2 서버는 제2 미디어 개체를 전송한다. 상기 제2 서버에서 상기 제2 미디어 개체를 포함한 제2 패킷과 상기 제1 미디어 개체를 포함한 제1 패킷간의 동기화를 위한 타이밍 정보를 생성한다. 상기 제2 서버에서 상기 타이밍 정보 및 상기 제2 미디어 개체를 포함한 제2 패킷을 클라이언트로 제공한다.

Description

MMT 복합 전달 서비스에서 MMT 패킷 스트림 동기화를 위한 타이밍 정보 제공 방법 및 MMT 패킷 스트림 동기화 방법{Methods of Providing Timing Information for Synchronizing MMT Packet Streams in MMT Hybrid Delivery Service and Methods of Synchronizing MMT Packet Streams in MMT Hybrid Delivery Service}
본 발명은 멀티미디어 응용 서비스를 제공하기 위한 타이밍 정보 제공 방법 및 동기화 방법에 관한 것으로서, 보다 구체적으로 하나의 서비스를 구성하는 복수의 미디어 개체들이 각기 다른 서버에서 전송되는 복합 전달 서비스(Hybrid delivery service)에서 멀티미디어 응용 서비스를 제공하기 위한 타이밍 정보 제공 방법 및 동기화 방법에 관한 것이다.
MMT (MPEG Media Transport)는 MPEG(Moving Picture Experts Group) 시스템 분과 (System sub-working group) 에서 야심차게 개발을 시작한 새로운 미디어 전송 표준 기술이다.
MPEG-2시스템은 방송망에서 AV(Audio Video) 콘텐츠를 전송하기 위해 필요한 패킷화, 동기화, 멀티플렉싱 등 기능에 대한 표준으로 MPEG-2 TS(Transport Stream) 기술을 표준화했고 현재 널리 쓰여지고 있다. 그러나, 네트워크가 All IP (Internet Protocol) 화된 새로운 환경에서 MPEG-2 TS는 비효율적이다.
이에 ISO/IEC/JTC1/SC29/WG 11 MPEG에서는 새로운 미디어 전송환경과 앞으로 예상되는 미디어 전송환경을 고려하여 새로운 미디어 전송 표준의 필요성을 인식하게 되었고, MMT 표준화를 시작하게 되었다. 2011년 6월 현재 MPEG에서 진행중인 MMT에 대한 표준화는 TuC (Technology under Consideration) 문서와 WD (Working Draft) version 2.0 ISO/IEC/JTC1/SC29/WG 11 N11953: "Working Draft of MPEG Media Transport", 2011.3, 제네바, 스위스)까지 발표되었다.
MMT(MPEG Media Transport) 서비스에서는 이종망 환경을 통해서 각기 다른 복수개의 서버에서 서로 다른 미디어 개체를 하나의 클라이언트 장치로 전달할 수 있으며, 이러한 경우에 클라이언트 장치는 수신한 복수개의 미디어 개체들을 통합된 형태로 서비스할 수 있어야 한다.
그러나 각기 다른 이종망 환경에서 전송된 복수개의 미디어 개체들을 하나의 통합된 형태로 서비스하기 위한 적절한 대역내 시그널링(in-band signaling) 또는 대역외 시그널링(out-of-band signaling) 방식의 동기화 방법이 제공되지 않고 있다.
본 발명의 제1 목적은 복합 전달 서비스(Hybrid delivery service) 환경하에서 원활한 멀티미디어 응용 서비스를 제공하기 위하여 서로 다른 제1 서버 및 제2 서버에서 각각 전달되는 패킷 스트림간의 동기화를 위한 타이밍 정보 제공 방법을 제공하는 것이다.
또한, 본 발명의 제2 목적은 복합 전달 서비스(Hybrid delivery service) 환경하에서 원활한 멀티미디어 응용 서비스를 제공하기 위하여 서로 다른 제1 서버 및 제2 서버에서 각각 전달되는 패킷 스트림간의 동기화 방법을 제공하는 것이다.
또한, 본 발명의 제3 목적은 복합 전달 서비스(Hybrid delivery service) 환경하에서 원활한 멀티미디어 응용 서비스를 제공하기 위하여 서로 다른 제1 서버 및 제2 서버에서 각각 전달되는 패킷 스트림간의 동기화를 위한 타이밍 정보를 제공하는 서버에 관한 것이다.
상술한 본 발명의 목적을 달성하기 위한 본 발명의 일 측면에 따른 복합 전달 서비스(Hybrid delivery service) 환경하에서 서로 다른 제1 서버 및 제2 서버에서 각각 전달되는 패킷 스트림간의 동기화를 위한 타이밍 정보 제공 방법은 상기 제1 서버는 상기 제1 미디어 개체를 전송하고 상기 제2 서버는 상기 제2 미디어 개체를 전송하되, 상기 제2 서버에서 상기 제2 미디어 개체를 포함한 제2 패킷과 상기 제1 미디어 개체를 포함한 제1 패킷간의 동기화를 위한 타이밍 정보를 생성하는 단계와, 상기 제2 서버에서 상기 타이밍 정보 및 상기 제2 미디어 개체를 포함한 제2 패킷을 클라이언트로 제공하는 단계를 포함한다. 상기 제1 패킷과 상기 제2 패킷간의 동기화를 위한 상기 타이밍 정보는 상기 제2 서버에서 첫 MMT 패킷을 통해서 한번만 상기 클라이언트로 전송될 수 있다. 상기 타이밍 정보는 상기 동기화를 위해 필요한 타이밍 정보의 포함 여부를 표시하는 Hybrid_Network_Synch_Flag 필드와, MMT 클럭 기준(MMT Clock Reference; MCR)의 주파수 해상도(frequency resolution)을 나타내는 MCR_Resolution_Flag 필드와, 상기 제2 미디어 개체의 최초 서비스 시작 시점에 상당하는 MCR 클럭값을 90kHz 클럭 해상도(clock resolution)으로 나타내는 Initial_Clock_Ticks_Base 필드와, 상기 제2 미디어 개체의 최초 서비스 시작 시점에 상당하는 MCR 클럭을 27MHz 클럭 해상도(clock resolution)으로 나타내는 Initial_Clock_Ticks_Ext 필드를 포함할 수 있다. 상기 Hybrid_Network_Synch_Flag 필드의 값이 1인 경우에는 상기 제2 서버에서 현재 전송하고자 하는 패킷이 상기 복합 전달 서비스의 동기화를 위한 타이밍 정보를 가지는 MMT 패킷이거나 또는 제어 메시지를 포함하고 상기 MCR_Resolution_Flag 필드가 존재하며 유효한 값을 가짐을 나타낼 수 있고, 상기 Hybrid_Network_Synch_Flag 필드의 값이 0인 경우에는 상기 제2 서버에서 상기 현재 전송하고자 하는 패킷이 상기 복합 전달 서비스의 동기화를 위한 타이밍 정보를 포함하는 MMT 패킷이거나 또는 제어 메시지가 아님을 나타낼 수 있다.
또한, 본 발명의 제2 목적을 달성하기 위한 본 발명의 일 측면에 따른 복합 전달 서비스(Hybrid delivery service) 환경하에서 서로 다른 제1 서버 및 제2 서버에서 각각 전달되는 패킷 스트림간의 동기화 방법은 상기 제1 서버에서 상기 제1 미디어 개체를 클라이언트로 전송하고 상기 제2 서버는 상기 제2 미디어 개체를 상기 클라이언트로 전송하되, 상기 클라이언트에서 상기 제2 미디어 개체를 포함한 제2 패킷과 상기 제1 미디어 개체를 포함한 제1 패킷간의 동기화를 위한 타이밍 정보를 상기 제2 서버로부터 수신하는 단계와, 상기 클라이언트에서 상기 타이밍 정보를 이용하여 상기 제1 미디어 개체를 포함하는 제1 패킷과 상기 제2 미디어 개체를 포함하는 제2 패킷간의 동기화 여부를 판단하는 단계를 포함한다. 상기 제1 패킷과 상기 제2 패킷간의 동기화를 위한 상기 타이밍 정보는 상기 제2 서버에서 첫 MMT 패킷을 통해서 한번만 상기 클라이언트로 전송될 수 있다.
또한, 본 발명의 제3 목적을 달성하기 위한 본 발명의 일 측면에 따른 복합 전달 서비스(Hybrid delivery service) 환경하에서 제1 서버는 제1 미디어 개체를 전송하고 제2 서버는 상기 제2 미디어 개체를 전송하되, 서로 다른 제1 서버 및 제2 서버에서 각각 전달되는 패킷 스트림간의 동기화를 위한 타이밍 정보를 제공하는 서버는, 제2 미디어 개체를 포함한 패킷과 제1 미디어 개체를 포함한 패킷간의 동기화를 위하여 타이밍 정보를 생성하는 타이밍 정보 생성부와, 상기 제2 미디어 개체를 포함한 패킷을 패킷화하여 생성하는 MMT 패킷 생성부와, 상기 생성된 제2 미디어 개체를 포함한 패킷을 클라이언트로 전송하는 MMT 패킷 전송부를 포함한다. 상기 제1 패킷과 상기 제2 패킷간의 동기화를 위한 상기 타이밍 정보는 상기 제2 서버에서 첫 MMT 패킷을 통해서 한번만 상기 클라이언트로 전송될 수 있다.
상술한 복합 전달 서비스(Hybrid delivery service) 환경하에서 서로 다른 제1 서버 및 제2 서버에서 각각 전달되는 패킷 스트림간의 동기화를 위한 타이밍 정보 제공 방법 및 패킷 스트림간의 동기화 방법에 따르면, 하나의 서비스를 구성하는 복수의 미디어 개체들이 각기 다른 서버에서 전송되는 복합 전달 서비스(Hybrid delivery service)의 경우, 소정 크기의 타이밍 정보를 MMT C 계층(Control layer)의 제어 메시지-예를 들어 C.2 계층의 제어 메시지-에 상기 소정 크기의 타이밍 정보를 포함하여 전송하거나, 또는 MMT D 계층(Delivery layer)의 헤더 - 예를 들어 MMT D.2 계층의 헤더-에 상기 소정 크기의 타이밍 정보를 포함하여 전송한다. 따라서, MMT 패킷 스트림을 수신하는 MMT 클라이언트가 상기 타이밍 정보를 활용하여 각각의 서버에서 전송된 각 미디어 개체의 동기화 제공을 위한 절대 시간 정보를 간단한 계산을 통해 얻을 수 있다.
그 결과, 여러 개의 MMT 패킷 스트림(packet stream)들이 각기 다른 서버로부터 서로 다른 채널 또는 네트워크를 통해 전송되더라도 MMT 패킷 스트림을 수신하는 MMT 클라이언트가 복수개의 MMT 패킷 스트림들을 시간적으로 서로 동기화하여 화면에 동시에 출력할 수 있다.
또한, 상기 소정 크기의 타이밍 정보는 서버에서 MMT 클라이언트로 1회만 전달되기 때문에 네트워크에 대한 트래픽 가중을 피할 수 있고 수신측에서의 처리 과정을 매우 간소화할 수 있다.
도 1은 MMT(MPEG Media Transport) 복합 전달 서비스(Hybrid delivery service) 환경에서 본 발명의 일실시예에 따른 패킷 스트림 동기화를 위해서 사용하는 타이밍 정보의 일 예를 나타낸다.
도 2는 본 발명의 일실시예에 따른 MMT(MPEG Media Transport)의 각 계층 구성의 일 예이다.
도 3은 MMT 복합 전달 서비스 환경에서 본 발명의 일실시예에 따른 복수의 서버와 MMT 클라이언트간의 데이터 교환 절차를 나타낸 순서도이다.
도 4는 도 3에서 요청된 SDH 자막을 MMT 패킷에 실어서 전송할 때 고려되는 MMT 패킷들 간의 타이밍 관계를 나타낸다.
도 5는 본 발명의 일실시예에 따른 클라이언트에서의 타이밍 정보를 이용하여 제1 미디어 개체과 제2 미디어 개체간의 동기화 여부를 판단하여 재생하는 과정을 설명하기 위한 방법을 나타낸 순서도이다.
도 6은 본 발명의 일실시예에 따른 타이밍정보를 제공하는 서버의 블록도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다.
그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
이종망 환경에 있는 각기 다른 서버들로부터 복수개의 미디어 개체들이 전달될 경우에, 1) 각 서버가 채용하는 STC(System Time Clock)의 해상도가 다를 수 있고 또한 각 미디어 개체들이 전달되는 시기가 달라서 동기화되기 어렵고, 2) 서버들이 채용하는 STC의 해상도가 동일해상도라고 하더라도 이종망을 통한 전달로 인해서 각 미디어 개체들이 서로 다른 지터(jitter)를 경험할 수 있어 전달된 미디어 개체들을 통합하여 하나의 동기화된 미디어 서비스로 제공하기가 어렵다.
이러한 문제는 네트워크를 통해서 MMT 서비스의 구성요소간 캡슐화된 미디어 데이터를 전달하기 위해서 필요한 형식과 기능을 정의하는 MMT D계층(Delivery layer) 또는 C계층 (Control layer)에서 동기화 처리를 함으로써 해결될 수 있다. C계층에서 동기화 처리를 할 경우 D계층을 제어하는 기능을 수행하는 C.2 계층에서 처리하는 것이 바람직하며, D 계층에서 동기화 처리를 할 경우 이종의 네트워크를 활용한 미디어 전송을 위한 동기화 (hybrid network synchronization)를 위한 시간 정보를 추가하는 기능을 맡고 있는 D.2 계층에서 처리하는 것이 바람직하다.
하지만 현재 MMT D 계층에서 하이브리드 네트워크 동기화 문제를 대역내(in-band) 시그널링 방식으로 해결하기 위해 제시된 방법이 없는 상황이다. 여기서, 대역내 시그널링이란 데이터 및 제어 정보를 동일한 밴드 또는 동일한 채널로 함께 전송하는 것을 의미한다.
본 발명의 실시예에 따르면, 하이브리드 네트워크 동기화를 제공하기 위해서, 최초의 MMT 데이터 패킷이 전달되기 전에 동기화를 위한 타이밍 정보를 C.2 계층의 제어 메시지에 포함시켜서 클라이언트 장치로 전송하는 대역외(Out-of-band) 시그널링 방식을 사용하거나 대역내 시그널링 방식으로 첫 MMT 패킷내의 D.2 계층 헤더에 동기화를 위한 타이밍 정보를 직접적으로 추가할 수 있다. 상기 타이밍 정보를 MMT 서버에서 첫 MMT 패킷을 통해서 한번만 알려주고 MMT 패킷을 수신하는 클라이언트 장치에서 상기 타이밍 정보를 활용함으로써 네트워크에 대한 트래픽 가중을 피할 수 있고 수신측에서의 처리 과정을 매우 간소화할 수 있다.
상술한 하이브리드 네트워크 동기화 방법을 이루기 위해서, 본 발명의 일 실시예에서는 서버에서 클라이언트 장치로 사용자가 요청한 최초의 MMT 패킷을 전달할 때, MMT D.2 계층의 헤더에 적절한 크기의 타이밍 정보를 설정하여 전달한다. 또한, 이를 위해서 MMT D.2 계층 헤더에 설정될 네 가지 타이밍 정보관련 필드를 정의한다. 또한, 네 가지 타이밍 정보를 서버가 적절하게 설정할 수 있는 방법을 정의한다. 또한, 클라이언트 장치가 서버로부터 첫 번째 MMT 패킷을 수신한 이후에 복수개의 미디어 개체간 동기화가 필요할 경우에 서버로부터 수신했던 타이밍 정보를 이용하여 이종망을 통해서 전달된 복수개의 미디어 개체간 동기화를 확인하고 처리하는 방법을 정의한다.
도 1은 MMT(MPEG Media Transport) 복합 전달 서비스(Hybrid delivery service) 환경에서 본 발명의 일실시예에 따른 패킷 스트림 동기화를 위해서 사용하는 타이밍 정보의 일 예를 나타내며, 도 2는 본 발명의 일실시예에 따른 MMT(MPEG Media Transport)의 각 계층 구성의 일 예이다.
도 1을 참조하면, 상기 복합 전달 서비스(Hybrid delivery service) 환경에서 패킷 스트림 동기화를 위해서 사용하는 타이밍 정보는 Hybrid_Network_Synch_Flag 필드, MCR_Resolution_Flag 필드, Initial_Clock_Ticks_Base 필드 및 Initial_Clock_Ticks_Ext 필드를 포함한다.
상기 복합 전달 서비스(Hybrid delivery service) 환경에서 패킷 스트림 동기화를 위해서 사용하는 타이밍 정보는 서버에서 MMT 클라이언트 장치 또는 MMT 클라이언트 단말로 첫 MMT 패킷을 통해서 1회만 통보된다.
상기 타이밍 정보는 예를 들어 도 2에 도시된 MMT C 계층(Control layer)의 제어 메시지에 포함시켜 전송될 수 있다. 구체적으로, 상기 타이밍 정보는 도 2에 도시된 MMT C.2 계층의 제어 메시지에 포함시켜 전송될 수 있다.또는, 상기 타이밍 정보는 MMT C.1 계층의 제어 메시지에 포함시켜 전송될 수도 있다.
또는 상기 타이밍 정보는 도 2에 도시된 MMT D 계층(Delivery layer)의 헤더에 포함시켜 전송될 수도 있다. 구체적으로, 상기 타이밍 정보는 도 2에 도시된 MMT D.2 계층의 헤더에 포함시켜 전송될 수도 있다. 여기서, MMT D.2 계층 헤더는 도 2의 MMT 전송 패킷(MMT Transport Packet)의 헤더에 해당된다. 한편, 상기 타이밍 정보는 MMT D.1 계층의 헤더인 MMT 페이로드 포맷(MMT Payload format)의 헤더에 포함되어 전송될 수도 있다.
상기 복합 전달 서비스(Hybrid delivery service) 환경에서 패킷 스트림 동기화를 위해서 사용하는 타이밍 정보는 소정 크기를 가진다. 예를 들어, Hybrid_Network_Synch_Flag 필드는 1 비트, MCR_Resolution_Flag 필드는 1비트, Initial_Clock_Ticks_Base 필드는 32비트, Initial_Clock_Ticks_Ext 필드는 9비트로 구성되어 총 43비트로 구성될 수 있으나, 상기 각 필드마다의 비트수는 이에 한정되는 것은 아니며, 동기화를 위해서 적절한 다른 비트수로 구성될 수도 있음은 물론이다.
Hybrid_Network_Synch_Flag 필드는 예를 들어 1비트로 구성될 수 있으며, 동기화를 위해 필요한 타이밍 정보의 포함 여부를 표시한다.
만약 Hybrid_Network_Synch_Flag 필드의 값이 1인 경우에는 현재 전송하고자 하는 MMT 패킷이 프로그램에 대한 전송 서비스를 시작한 이후에 최초로 전송되는 패킷임을 나타내며, 동시에 타이밍 정보가 포함됨을 의미한다. 이때, 두 번째 필드인 MCR_Resolution_Flag 필드가 존재하며 해당 필드의 값이 유효함을 의미한다.
만약 Hybrid_Network_Synch_Flag 필드의 값이 0인 경우에는 현재 전송하고자 하는 MMT 패킷이 프로그램에 대한 전송 서비스를 시작한 이후에 최초로 전송되는 패킷이 아님을 의미하며, 동시에 나머지 3개의 필드가 존재하지 않음을 의미한다.
MCR_Resolution_Flag 필드는 예를 들어 1비트로 구성될 수 있으며, MMT 클럭 기준(MMT Clock Reference; MCR)의 주파수 해상도(frequency resolution)을 나타낸다. 상기 MCR은 도 2에 도시된 MMT C.2 계층의 제어 메시지 또는 MMT D.2 계층 헤더에 기록될 수 있으나, 이에 한정되는 것은 아니며 MMT D.1 계층 헤더, MMT C.1 계층의 제어 메시지등 MMT 다른 계층의 제어 메시지 또는 헤더에도 기록될 수도 있다.
MCR_Resolution_Flag 필드의 값은 MCR의 클럭 해상도(clock resolution)와 동일한 정밀도(precision)로 Initial_Clock_Ticks 값을 표현하기 위해서 사용된다. 만약 MCR_Resolution_Flag 필드의 값이 1인 경우에는 MCR의 주파수 해상도가 90kHz임을 의미하며, Initial_Clock_Ticks_Ext 필드는 존재하지 않고 Initial_Clock_Ticks_Base 필드만이 존재하며, 해당 Initial_Clock_Ticks_Base 필드의 값이 유효함을 의미한다. 만약 MCR_Resolution_Flag 필드의 값이 0인 경우에는 MCR의 주파수 해상도가 27MHz임을 의미하며, Initial_Clock_Ticks_Base와 Initial_Clock_Ticks_Ext 필드가 모두 존재하며, 해당 Initial_Clock_Ticks_Base 필드와 Initial_Clock_Ticks_Ext 필드의 값이 유효함을 의미한다.
Initial_Clock_Ticks_Base 필드는 예를 들어 33비트로 구성될 수 있으며, 해당 프로그램의 최초 서비스 시작 지점에 해당하는 MCR clock ticks 값을 90kHz 클럭 해상도(clock resolution)으로 나타낸다.
Initial_Clock_Ticks_Ext 필드는 예를 들어 9비트로 구성될 수 있으며, 해당 프로그램의 최초 서비스 시작 시점에 해당하는 MCR clock ticks 값을 27MHz 클럭 해상도(clock resolution)으로 나타낸다.
MMT 패킷을 수신하는 클라이언트에서는 상기 도 1의 4개의 타이밍 정보를 활용하여 서로 다른 복수의 서버로부터 전송되는 각 미디어 개체의 동기화를 위한 각 미디어 개체의 절대 시간 정보를 산출함으로써 이종망 환경에서 서로 다른 복수의 서버로부터 전달된 각 미디어 개체에 대한 동기화를 이룰 수 있다.
도 2를 참조하면, MMT 계층은 캡슐화 계층(Encapsulation layer), 전달 계층(Delivery layer) 및 제어 계층(Control layer)의 기능 영역을 포함하며, MMT 계층은 전송 계층(Transport layer) 위에서 동작한다.
캡슐화 계층(Encapsulation layer)은 예를 들어 전송되는 미디어의 패킷화(packetization), 프래그먼테이션(Fragmentation), 멀티플렉싱(Multiplexing)등의 기능을 담당할 수 있다.
전달 계층(Delivery layer)은 예를 들어 네트워크를 통해 전송되는 미디어의 네트워크 플로우 멀티플렉싱(Network flow multiplexing), 네트워크 패킷화(Network packetization), QoS 제어, 동기화(Synchronization) 기능등을 수행할 수 있다.
D.2 계층(220)은 제1 서버로부터 전달된 패킷 스트림과 제2 서버로부터 전달된 패킷 스트림을 합쳐서 D.1 계층으로 전달하는 역할을 수행한다. 본 발명의 일실시예에서는 제1 서버로부터 전달된 패킷 스트림과 제2 서버로부터 전달된 패킷 스트림간의 동기화를 위한 타이밍 정보를 D.2 계층(220)의 헤더에 포함되도록 구성하여 제1 서버로부터 전달된 패킷 스트림과 제2 서버로부터 전달된 패킷 스트림을 동기화되도록 할 수 있다.
D.1 계층은 D.2 계층으로부터 전달된 MMT 페이로드 포맷(MMT Payload format)의 패킷을 처리하여 E.1 계층으로 전달하는 역할을 수행한다.
D.3 계층의 MMT 교차 계층 디자인(MMT cross-layer Design)은 계층간에 정보를 교환할 수 있는 기능을 제공하여 QoS를 지원하도록 동작한다.
E.1 계층(E.1 Layer)은 D.1 계층으로부터 MMT 패키지(MMT Package)를 전달받아 E.2 계층(E.2 Layer)으로 전달한다. MMT 패키지(MMT Package)는 MMT 애셋(MMT Asset)들을 포함하는 MMT 애셋의 집합이다.
E.2 계층(E.2 Layer)은 E.1 계층(E.1 Layer)으로부터 MMT 애셋을 전달받아 E.3계층(E.3 Layer)으로 전달한다. MMT 애셋은 복수의 M-유닛(M-Unit)들로 이루어진 M-유닛의 집합이다.
E.3계층은 E.2 계층(E.2 Layer)으로부터 M-유닛(M-Unit)을 전달받는다.
M-유닛은 복수의 미디어 프래그먼트 유닛(Media Fragment Unit)들을 포함하는 미디어 프래그먼트 유닛의 집합이다.
제어 계층(Control layer)은 예를 들어 전송되는 미디어의 세션 초기화/제어/관리(session initialization/control/management), 서버 기반 및 또는 클라이언트 기반의 트릭 모드, 서비스 디스커버리(Service discovery), 동기화(Synchronization) 기능 등을 수행할 수 있다.
C.2 계층(210)은 전달(Delivery) 계층을 제어하는 역할을 수행한다. 본 발명의 다른 실시예에서는 제1 서버로부터 전달된 패킷 스트림과 제2 서버로부터 전달된 패킷 스트림간의 동기화를 위한 타이밍 정보를 C.2 계층의 제어 메시지에 포함되도록 구성하여 제1 서버로부터 전달된 패킷 스트림과 제2 서버로부터 전달된 패킷 스트림을 동기화되도록 제어할 수 있다.
C.1 계층은 캡슐화(Encapsulation) 계층을 제어하는 역할을 수행한다.
아래는 도 1의 MMT 타이밍 정보의 각 필드를 설정하기 위한 슈도 코드(pseudo code)의 일례를 나타낸다.
Network_synch_timestamp(){
If(Hybrid_Network_Synch_Flag=='1'{
MCR_Resolution_Flag; (1 bit)
}
If(MCR_Resolution_Flag =='1'{
Initial_Clock_Ticks_Base; (33 bit)
}
Else (MCR_Resolution_Flag =='0'{
Initial_Clock_Ticks_Base; (33 bit)
Initial_Clock_Ticks_Ext; (9 bit)
}
}
전송하고자 하는 MMT 패킷이 복합 전달 서비스의 동기화를 위한 타이밍 정보를 포함하는 MMT 패킷이거나 제어 메세지인 경우에 Hybrid_Network_Synch_Flag필드의 값이 1로 설정되며, 그러한 경우에 MCR_Resolution_Flag 필드의 값이 0 또는 1로 설정된다.
만약, 동기화를 위한 타이밍 정보가 포함되지 않으면 Hybrid_Network_Synch_Flag필드의 값이 0으로 설정되며, MCR_Resolution_Flag 필드 이후의 값들은 MMT 패킷 헤더 또는 상기 제어 메시지에 존재하지 않는다.
MCR_Resolution_Flag 필드의 값이 0으로 설정된 경우에 Initial_Clock_Ticks_Base 필드와 Initial_Clock_Ticks_Ext 필드의 값이 설정되고, MCR_Resolution_Flag 필드의 값이 1로 설정된 경우에는 Initial_Clock_Ticks_Base 필드의 값만이 설정된다.
도 3은 MMT 복합 전달 서비스 환경에서 본 발명의 일실시예에 따른 복수의 서버와 MMT 클라이언트간의 데이터 교환 절차를 나타낸 순서도이다.
구체적으로, 도 3은 하나의 서비스를 구성하는 복수의 미디어 개체들이 각기 다른 복수의 서버에서 전달되는 복합 전달 서비스(Hybrid delivery service) 환경하에서 복수의 서버와 클라이언트간 데이터 교환 절차를 예시적으로 나타낸 것으로서, 도 3에서는 상기 복수의 서버가 제1 서버(310) 및 제2 서버(320)의 2개의 서버인 경우를 예를 들어 나타낸 것이지만, 본 발명은 3개의 서로 다른 서버와 클라이언트간 데이터 교환이 이루어지는 경우도 적용이 가능함은 물론이다.
예를 들어, 제1 서버(310)는 프로그램 스트림 서버(Program stream server, 310)이고, 제2 서버(320)는 부가 정보 서버(Supplemental information server, 353)가 될 수 있다. 또는, 제1 서버(310)는 3D 좌측 영상을 제공하는 서버이고, 제2 서버(320)는 3D 우측 영상을 제공하는 서버가 될 수도 있다.
이하, 도 3을 참조하여 MMT 패킷을 수신하는 클라이언트(330)와 프로그램 스트림 서버(310) 및 부가 정보 서버(350)간에 데이터 교환 절차를 예를 들어 본 발명의 일실시예에 따른 MMT 복합 전달 서비스에서 MMT 패킷 스트림 동기화를 위한 타이밍 정보 제공 방법을 설명한다.
여기서, 제1 서버(310)는 프로그램 스트림 서버로서 방송(broadcast)망을 통해서 외국 영화와 같은 방송 컨텐츠등의 데이터를 클라이언트(330)에게 전달하고, 제2 서버(350)는 부가 정보 서버로서 IP 망과 같은 광대역(broadband) 망을 통해서 상기 외국 영화의 SDH(Subtitles for the deaf and hard-of-hearing)자막(수화 자막)과 같은 부가 정보를 클라이언트(330)에게 전달하는 경우를 예로 들어 설명한다.
먼저, MMT 클라이언트(330)가 외국 영화(foreign language movie)와 기본 자막(basic subtitle)을 요청하는 메시지(331)를 제1 서버(310)로 전송한다.
제1 서버(310)는 상기 요청한 외국 영화와 기본 자막을 각각의 MMT 패킷으로 패킷화하여 상기 요청한 외국 영화와 기본 자막을 포함하는 MMT 패킷을 생성(단계 311)하여 MMT 클라이언트(330)로 전송한다. 이때, 각 MMT 패킷은 도 3에 도시된 바와 같이 영화에 대한 MMT 패킷(313-1)과 자막에 대한 MMT 패킷(315)으로 따로 생성되어 스트리밍 형태로 전송될 수 있다.
상기 MMT 패킷들(313-1, 315)을 수신한 MMT 클라이언트(330)는 상기 수신한 MMT 패킷들(313-1, 315)을 디팩킹(depacking 또는 depacketize)하여 영상과 자막을 동기화하여 재생한다(단계 333).
사용자가 SDH 자막의 시청을 원하게 되면(단계 335), MMT 클라이언트 장치(330)는 SDH 자막 요청 메시지(337)를 제2 서버(350)로 전송한다.
상기 SDH 자막 요청 메시지를 수신한 제2 서버(350)는 타이밍 정보를 생성한다(단계 351). 구체적으로, MMT 클라이언트 장치(330)로부터의 SDH 자막과 같은 미디어 개체 전송 요청에 따라 제2 서버(350)가 MMT C 계층의 제어 메시지-예를 들어 MMT C.2 계층의 제어 메시지- 또는 MMT D 계층의 헤더-예를 들어 MMT D.2 계층의 헤더-에 도 1의 Hybrid_Network_Synch_Flag 필드, MCR_Resolution_Flag 필드를 기록한다. 제2 서버(350)는 요청된 미디어 개체(SDH 자막)의 최초 시작 시간(Original start time)과 실제 시작 시간(Actual start time)간의 시간적 차이값인 Start_Time_Offset을 계산하고, 후술할 수학식 1에 따라서 Start_Clock_Offset 값을 계산하고, 후술할 수학식 2에 따라서 MMT 클라이언트(330)에게 전송되는 첫 번째 MMT 패킷의 MCR 값인 MCR0을 계산한다.
제2 서버(350)는 상기 계산된 Start_clock_offset, 첫 번째 MMT 패킷의 MCR0 값을 MMT 패킷을 전송하는 제2 서버(350)의 SCF(system clock frequency)에 따라서 도 1의 Initial_Clock_Ticks_Base 필드에 또는 Initial_Clock_Ticks_Base 와 Initial_Clock_Ticks_Ext 필드에 설정함으로써 타이밍 정보를 생성한다(단계 351).
제2 서버(350)는 SDH 자막을 전송하기 전에 C 계층의 제어 메시지(353)상에 타이밍 정보를 포함시켜 MMT 클라이언트 장치(330)로 전달할 수 있다. 또는 제2 서버(350)는 SDH 자막을 포함하는 MMT 패킷을 생성하고, SDH 자막을 포함하는 첫번째 MMT 패킷(359)의 D 계층의 헤더에 타이밍 정보를 포함해서 전달할 수도 있다.
제2 서버(350)는 SDH 자막을 MMT 패킷화하여 SDH 자막을 포함한 MMT 패킷(353)을 MMT 클라이언트 장치(330)로 전송한다(단계 357, 359).
MMT 클라이언트 장치(330)에서는 두 미디어 개체의 동기화 여부를 판단한다(단계 339). 구체적으로 MMT 클라이언트 장치(330)는 제1 서버(310)로부터 스트리밍된 미디어 개체 1(외국 영화)에 대한 i 번째 MMT 패킷과 제2 서버(350)으로부터 전송된 미디어 개체 2(SDH 자막)에 대한 j 번째 MMT 패킷의 각각의 APT(Absolute_Presentation_Time)값을 통해서 두 미디어 개체간의 동기화 여부를 판단할 수 있다.
즉, MMT 클라이언트 장치(330)에서는 제1 서버(310) 및 제2 서버(350)과 같이 서로 다른 서버들로부터 서로 다른 망 또는 채널을 통하여 전달된 복수 개의 MMT 패킷을 동기화시키기 위해서 각각의 채널에 대해서 수신한 MMT 패킷의 APT를 후술할 수학식 3을 이용하여 계산하고, MMT 클라이언트 장치(330)에서는 상기 구한 각각의 APT들의 차이 값을 후술할 수학식 4와 같이 동기화의 시간적 정밀도를 고려하여 적절하게 설정된 기준 값(
Figure pat00001
값)과 비교하여 동기화 되었는지 여부를 판단한다.
MMT 클라이언트 장치(330)에서는 상기 동기화 여부 판단 결과, 동기화가 되었다고 판단된 경우 제1 서버(310)로부터 수신한 외국 영화를 포함한 MMT 패킷(313-2)과 제2 서버(350)로부터 수신한 SDH 자막을 포함한 MMT 패킷(359)를 각각 디팩킹(depacking 또는 depacketizing)하여 제1 서버(310)로부터 수신한 스트림과 제2 서버(350)로부터 수신한 자막 데이터를 동기화하여 외국 영화 및 SDH 자막을 동기가 맞도록 재생한다(단계 341).
도 4는 도 3에서 요청된 SDH 자막을 MMT 패킷에 실어서 전송할 때 고려되는 MMT 패킷들 간의 타이밍 관계를 나타낸다.
도 4를 참조하면, 실제 제2 서버(350)에서 생성한 SDH 자막에 대한 MMT 패킷의 번호가 0부터 시작하고, MMT 클라이언트(330)로부터 SDH 자막을 요청 받아서 처음으로 전송한 최초로 전송된 MMT 패킷의 번호가 n이라고 할 때, SDH 자막 서비스의 최초 시작 시간(Original start time)은 0번째 MMT 패킷의 시작이 된다.
하지만 SDH 자막 전송의 실제 시작 시간(Actual start time)은 n 번째 MMT 패킷의 시작이 되므로, 시작 시간의 차이가 발생하게 된다. 이때, 실제 시작 시간(Actual start time)과 최초 시작 시간(Original start time)간의 차이를 Start_Time_Offset(401)이라고 한다.
수학식 1은 요청된 미디어 개체의 최초 시작 시간(Original start time)과 실제 시작 시간(Actual start time)간의 시간적 차이값(Start_Time_Offset)(401)을 STC(System Time Clock)의 SCF(System Clock Frequency) 정밀도로 환산한 값인 Start_Clock_Offset 값을 계산하기 위한 것이다.
[수학식 1]
Figure pat00002
계산된 Start_Time_Offset으로는 각 서버의 STC 클럭(clock)에 의해 결정되는 MCR을 계산하기 위해서 사용하지 못하므로 Start_Time_Offset을 각 서버의 STC의 SCF 정밀도로 환산한 Start_Clock_Offset을 계산한다.
수학식 2는 제2 서버(350)가 MMT 클라이언트(330)에게 첫 번째 MMT 패킷의 MCR 값인 MCR0를 전달하기 위해서 MCR0을 계산하기 위한 수학식이다.
[수학식 2]
Figure pat00003
첫 번째 MMT 패킷의 MCR값인 MCR0는 미디어 개체를 전송하는 제2 서버(350)가 MMT 클라이언트(330)로부터의 요청에 따라서 처음으로 전송하는 MMT 패킷인 n 번째 MMT 패킷의 MCR값 MCRn과 Start_Clock_Offset(0번째 MMT 패킷과 n번째 MMT 패킷간의 차이값)을 통해서 계산할 수 있다.
계산된 MCR0값은 도 1의 MMT 패킷을 전송하는 서버의 SCF에 따라서 Initial_Clock_Ticks_Base 필드에 또는 Initial_Clock_Ticks_Base 와 Initial_Clock_Ticks_Ext 두 필드 모두에 설정되어 MMT 클라이언트(330)에게 전달된다. 수학식 2의 계산은 MMT 클라이언트(330)에게 복합 전달 서비스의 동기화 제공을 위한 타이밍 정보를 C 계층의 제어 메시지에 포함하거나 첫 번째 MMT 패킷(도 4의 n번째 MMT 패킷)의 D 계층의 헤더에 포함하여 전달할 때 계산될 수 있다.
수학식 3은 MMT 클라이언트(330)가 서버로부터 동기화 제공을 위한 상기 제어 메시지를 수신했거나 또는 첫 MMT 패킷(도 4의 n번째 MMT 패킷)을 수신한 이후에, 임의의 i 번째 MMT 패킷에 대한 Absolute_Presentation_Time(APT)인 APTi를 계산하기 위한 수학식이다.
[수학식 3]
Figure pat00004
MMT 클라이언트(302)는 서버로부터 수신한 Initial_Clock_Ticks필드의 값을 MCR0의 값으로서 저장한다. 상기 Initial_Clock_Ticks필드의 값은 서버로부터 첫 번째로 수신한 MMT 패킷(도 4의 n번째 MMT 패킷)의 MMT C.2 계층의 제어 메시지 또는 MMT D.2 계층 헤더 내에 포함될 수 있다.
이후 MMT 클라이언트(302)는 서버로부터 i 번째 MMT 패킷이 도착했을 때, 해당 패킷의 APT를 계산할 필요가 있는 경우에 기존에 저장한 MCR0값을 이용하여 APTi를 계산할 수 있다.
수학식 4는 MMT 클라이언트(330)에서 미디어 개체 1에 대한 i 번째 MMT 패킷과 미디어 개체 2에 대한 j 번째 MMT 패킷의 각각의 APT값을 통해서 두 미디어 개체간의 동기화 여부를 판단하기 위한 수학식이다.
[수학식 4]
Figure pat00005
MMT 클라이언트(330)는 제1 서버(310)로부터 수신한 i 번째 MMT 패킷과 제2 서버(350)로부터 수신한 j 번째 MMT 패킷의 각각의 APT 값을 구하여 두 값의 차이 값이 동기화의 시간적 정밀도를 나타내는
Figure pat00006
값보다 작은 경우에 동기화가 가능하다고 판단하여 두 MMT 패킷을 함께 재생한다.
두 값의 차이 값이
Figure pat00007
값보다 크다면 차이 값이
Figure pat00008
값보다 작은 값을 만족하는 MMT 패킷 조합을 찾아서 재생한다. 이때,
Figure pat00009
값은 동기화 경계(synchronization bound)를 나타내며, 동기화 정밀도를 고려하여 적절한 값으로 결정할 수 있다.
만약,
Figure pat00010
값이 0인 경우는 두 MMT 스트림간의 완벽한 동기화가 요구되는 경우에 사용될 수 있으며, 이를 위해서는 서로 다른 서버에서 전송되는 두개의 MMT 스트림이 동일한 해상도의 STC를 기반으로 작동할 경우에 가능하다.
Figure pat00011
값이 0인 경우는 예를 들어 완벽한 동기화가 요구되는 3D 영상의 좌측 영상에 대한 MMT 스트림과 우측 영상에 대한 MMT 스트림간의 동기화의 경우에 사용될 수 있다.
도 6은 본 발명의 일실시예에 따른 타이밍정보를 제공하는 서버의 블록도이다.
도 6을 참조하면, 서버(600)는 타이밍 정보를 생성하여 클라이언트로 제공하기 위하여 타이밍 정보 생성부(610), MMT 패킷 생성부(620), MMT 패킷 전송부(630)을 포함한다. 상기 서버(600)는 타이밍 정보를 생성하는 서버로서 예를 들어 도 3의 제2 서버(350)이 될 수 있다.
타이밍 정보 생성부(610)는 제2 미디어 개체를 포함한 패킷과 제1 미디어 개체를 포함한 패킷간의 동기화를 위하여 전술한 타이밍 정보를 생성한다. 타이밍 정보 생성부(610)는 상기 타이밍 정보를 MMT C.2 계층의 제어 메시지에 포함시켜 상기 클라이언트로 전송하거나 또는 상기 타이밍 정보를 MMT D.2 계층의 헤더에 포함시켜 상기 클라이언트로 전송한다.
MMT 패킷 생성부(620)는 제2 미디어 개체를 포함한 패킷을 패킷화하여 생성한다. MMT 패킷 생성부(620)는 제2 미디어 개체를 포함한 패킷의 MMT D.2 계층의 헤더에 상기 타이밍 정보를 포함시켜 상기 클라이언트로 전송할 수 있다.
MMT 패킷 전송부(630)는 상기 생성된 제2 미디어 개체를 포함한 패킷을 클라이언트로 전송한다.
이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (20)

  1. 복합 전달 서비스(Hybrid delivery service) 환경하에서 서로 다른 제1 서버 및 제2 서버에서 각각 전달되는 패킷 스트림간의 동기화를 위한 타이밍 정보 제공 방법에 있어서,
    상기 제1 서버는 상기 제1 미디어 개체를 전송하고 상기 제2 서버는 상기 제2 미디어 개체를 전송하되,
    상기 제2 서버에서 상기 제2 미디어 개체를 포함한 제2 패킷과 상기 제1 미디어 개체를 포함한 제1 패킷간의 동기화를 위한 타이밍 정보를 생성하는 단계; 및
    상기 제2 서버에서 상기 타이밍 정보 및 상기 제2 미디어 개체를 포함한 제2 패킷을 클라이언트로 제공하는 단계
    를 포함하는 복합 전달 서비스에서 패킷 스트림 동기화를 위한 타이밍 정보 제공 방법.
  2. 제1항에 있어서, 상기 타이밍 정보는 MMT C.2 계층의 제어 메시지에 포함시켜 상기 클라이언트로 제공되는 것을 특징으로 하는 복합 전달 서비스에서 패킷 스트림 동기화를 위한 타이밍 정보 제공 방법.
  3. 제1항에 있어서, 상기 타이밍 정보는 MMT D.2 계층의 헤더에 포함시켜 상기 클라이언트로 제공되는 것을 특징으로 하는 복합 전달 서비스에서 패킷 스트림 동기화를 위한 타이밍 정보 제공 방법.
  4. 제1항에 있어서, 상기 제1 패킷과 상기 제2 패킷간의 동기화를 위한 상기 타이밍 정보를 상기 제2 서버에서 첫 MMT 패킷을 통해서 한번만 상기 클라이언트로 전송하는 것을 특징으로 하는 복합 전달 서비스에서 패킷 스트림 동기화를 위한 타이밍 정보 제공 방법.
  5. 제1항에 있어서, 상기 타이밍 정보는
    상기 동기화를 위해 필요한 타이밍 정보의 포함 여부를 표시하는 Hybrid_Network_Synch_Flag 필드;
    MMT 클럭 기준(MMT Clock Reference; MCR)의 주파수 해상도(frequency resolution)을 나타내는 MCR_Resolution_Flag 필드;
    상기 제2 미디어 개체의 최초 서비스 시작 시점에 상당하는 MCR 클럭값을 90kHz 클럭 해상도(clock resolution)으로 나타내는 Initial_Clock_Ticks_Base 필드; 및
    상기 제2 미디어 개체의 최초 서비스 시작 시점에 상당하는 MCR 클럭을 27MHz 클럭 해상도(clock resolution)으로 나타내는 Initial_Clock_Ticks_Ext 필드를 포함하는 것을 특징으로 하는 복합 전달 서비스에서 패킷 스트림 동기화를 위한 타이밍 정보 제공 방법.
  6. 제5항에 있어서, 상기 Hybrid_Network_Synch_Flag 필드의 값이 1인 경우에는 상기 제2 서버에서 현재 전송하고자 하는 패킷이 상기 복합 전달 서비스의 동기화를 위한 타이밍 정보를 가지는 MMT 패킷이거나 또는 제어 메시지를 포함하고 상기 MCR_Resolution_Flag 필드가 존재하며 유효한 값을 가짐을 나타내고,
    상기 Hybrid_Network_Synch_Flag 필드의 값이 0인 경우에는 상기 제2 서버에서 상기 현재 전송하고자 하는 패킷이 상기 복합 전달 서비스의 동기화를 위한 타이밍 정보를 포함하는 MMT 패킷이거나 또는 제어 메시지가 아님을 나타내는 것을 특징으로 하는 복합 전달 서비스에서 패킷 스트림 동기화를 위한 타이밍 정보 제공 방법.
  7. 제5항에 있어서, 상기 MCR_Resolution_Flag 필드의 값이 1인 경우에는 상기 MCR의 주파수 해상도가 90kHz이고 상기 Initial_Clock_Ticks_Ext 필드는 존재하지 않고 상기 Initial_Clock_Ticks_Base 필드만이 존재하며 상기 Initial_Clock_Ticks_Base 필드의 값이 유효함을 나타내며,
    상기 MCR_Resolution_Flag 필드의 값이 0인 경우에는 상기 MCR의 주파수 해상도가 27MHz이고 상기 Initial_Clock_Ticks_Base 필드 및 Initial_Clock_Ticks_Ext 필드가 모두 존재하며 상기 Initial_Clock_Ticks_Base 필드와 Initial_Clock_Ticks_Ext 필드의 값이 유효함을 나타내는 것을 특징으로 하는 복합 전달 서비스에서 패킷 스트림 동기화를 위한 타이밍 정보 제공 방법.
  8. 제5항에 있어서, 상기 제2 서버는 상기 제2 미디어 개체의 프로그램의 최초 시작 시간(Original start time)과 실제 시작 시간(Actual start time)간의 시간적 차이값인 Start_Time_Offset을 상기 제2 서버의 STC(System Time Clock)의 SCF(System Clock Frequency) 정밀도로 환산한 값인 Start_Clock_Offset 값을 계산하고,
    상기 제2 서버는 상기 클라이언트에게 처음으로 전송되는 상기 제2 미디어 개체의 패킷의 MCR값(MCRn)에서 상기 Start_Clock_Offset 값을 빼줌으로써 상기 클라이언트에게 전송되는 첫 번째 패킷의 MCR 값(MCR0)을 계산하고,
    상기 제2 서버는 상기 계산된 MCR0값을 상기 제2 서버의 SCF (System Clock Frequency)에 따라서 상기 Initial_Clock_Ticks_Base 필드에 또는 상기 Initial_Clock_Ticks_Base 필드와 상기 Initial_Clock_Ticks_Ext 필드 모두에 설정하는 것을 특징으로 하는 복합 전달 서비스에서 패킷 스트림 동기화를 위한 타이밍 정보 제공 방법.
  9. 제1항에 있어서, 상기 제2 서버는 광대역(broadband) 채널을 통해서 부가 정보등의 데이터를 전달하는 부가 정보 서버이고, 상기 제1 서버는 방송 채널(broadcast) 채널을 통해서 외국 영화와 같은 방송 컨텐츠등의 데이터를 전달하는 프로그램 스트림 서버인 것을 특징으로 하는 복합 전달 서비스에서 패킷 스트림 동기화를 위한 타이밍 정보 제공 방법.
  10. 제1항에 있어서, 상기 상기 제2 서버에서 상기 제2 미디어 개체를 포함한 제2 패킷과 상기 제1 미디어 개체를 포함한 제1 패킷간의 동기화를 위한 타이밍 정보를 생성하는 단계는 상기 제2 서버에서 클라이언트로부터 상기 제2 미디어 개체에 대해 전송 요청을 수신한 경우에 수행되는 것을 특징으로 하는 복합 전달 서비스에서 패킷 스트림 동기화를 위한 타이밍 정보 제공 방법.
  11. 복합 전달 서비스(Hybrid delivery service) 환경하에서 서로 다른 제1 서버 및 제2 서버에서 각각 전달되는 패킷 스트림간의 동기화 방법에 있어서,
    상기 제1 서버는 상기 제1 미디어 개체를 클라이언트로 전송하고 상기 제2 서버는 상기 제2 미디어 개체를 상기 클라이언트로 전송하되,
    상기 클라이언트에서 상기 제2 미디어 개체를 포함한 제2 패킷과 상기 제1 미디어 개체를 포함한 제1 패킷간의 동기화를 위한 타이밍 정보를 상기 제2 서버로부터 수신하는 단계; 및
    상기 클라이언트에서 상기 타이밍 정보를 이용하여 상기 제1 미디어 개체를 포함하는 제1 패킷과 상기 제2 미디어 개체를 포함하는 제2 패킷간의 동기화 여부를 판단하는 단계
    를 포함하는 복합 전달 서비스에서 패킷 스트림 동기화 방법.
  12. 제11항에 있어서, 상기 타이밍 정보는 MMT C.2 계층의 제어 메시지에 포함시켜 상기 클라이언트로 제공되는 것을 특징으로 하는 복합 전달 서비스에서 패킷 스트림 동기화 방법.
  13. 제11항에 있어서, 상기 타이밍 정보는 MMT D.2 계층의 헤더에 포함시켜 상기 클라이언트로 제공되는 것을 특징으로 하는 복합 전달 서비스에서 패킷 스트림 동기화 방법.
  14. 제12항에 있어서, 상기 클라이언트에서 상기 타이밍 정보를 이용하여 상기 제1 미디어 개체를 포함하는 제1 패킷과 상기 제2 미디어 개체를 포함하는 제2 패킷간의 동기화 여부를 판단하는 단계는
    상기 클라이언트에서 상기 타이밍 정보를 이용하여 상기 제1 서버로부터 수신된 상기 제1 미디어 개체를 포함한 제1 패킷과 상기 제2 서버로부터 수신된 상기 제2 미디어 개체를 포함한 제2 패킷간의 동기화를 위하여 상기 제1 패킷의 제1 절대 시간 정보(Absolute_Presentation_Time) 및 상기 제2 패킷의 제2 절대 시간 정보(Absolute_Presentation_Time)를 산출하여 상기 동기화 여부를 판단하는 단계를 포함하는 것을 특징으로 하는 복합 전달 서비스에서 패킷 스트림 동기화 방법.
  15. 제12항에 있어서, 상기 클라이언트가 상기 제2 서버로부터 동기화 제공을 위한 제어 메시지를 수신했거나 또는 처음으로 제2 패킷을 수신한 이후에 임의의 i 번째 제2 패킷에 대한 절대 시간 정보(Absolute_Presentation_Time; APT)인 APTi를 하기의 수학식
    Figure pat00012

    -여기서, MCR0는 상기 클라이언트에게 전송되는 첫 번째 제2 패킷의 MCR 값이고, 상기 SCF는 시스템 클락 주파수(System Clock Frequency)이고, MCRi는 임의의 i 번째 제2 패킷의 MCR값임-
    으로 계산하는 것을 특징으로 하는 복합 전달 서비스에서 패킷 스트림 동기화 방법.
  16. 제13항에 있어서, 상기 클라이언트에서 상기 타이밍 정보를 이용하여 상기 제1 미디어 개체를 포함하는 제1 패킷과 상기 제2 미디어 개체를 포함하는 제2 패킷간의 동기화 여부를 판단하는 단계는
    상기 제1 패킷의 제1 절대 시간 정보 및 상기 제2 패킷의 제2 절대 시간 정보의 차이값을 기준 값과 비교하여 동기화 여부를 판단하는 것을 특징으로 하는 복합 전달 서비스에서 패킷 스트림 동기화 방법.
  17. 제11항에 있어서, 상기 제1 패킷의 제1 절대 시간 정보 및 상기 제2 패킷의 제2 절대 시간 정보의 차이값이 상기 기준 값보다 작은 경우에 동기화가 가능하다고 판단하여 상기 제1 및 제2 패킷을 함께 재생하는 것을 특징으로 하는 복합 전달 서비스에서 패킷 스트림 동기화 방법.
  18. 복합 전달 서비스(Hybrid delivery service) 환경하에서 서로 다른 제1 서버 및 제2 서버에서 각각 전달되는 패킷 스트림간의 동기화를 위한 타이밍 정보를 제공하는 서버에 있어서,
    제1 서버는 상기 제1 미디어 개체를 전송하고 상기 제2 서버는 상기 제2 미디어 개체를 전송하되, 상기 제2 서버는
    제2 미디어 개체를 포함한 패킷과 제1 미디어 개체를 포함한 패킷간의 동기화를 위하여 타이밍 정보를 생성하는 타이밍 정보 생성부;
    상기 제2 미디어 개체를 포함한 패킷을 패킷화하여 생성하는 MMT 패킷 생성부; 및
    상기 생성된 제2 미디어 개체를 포함한 패킷을 클라이언트로 전송하는 MMT 패킷 전송부
    를 포함하는 것을 특징으로 하는 복합 전달 서비스에서 패킷 스트림 동기화를 위한 타이밍 정보를 제공하는 서버.
  19. 제18항에 있어서, 상기 타이밍 정보 생성부는 상기 타이밍 정보를 MMT C.2 계층의 제어 메시지에 포함시켜 상기 클라이언트로 전송하는 것을 특징으로 하는 복합 전달 서비스에서 패킷 스트림 동기화를 위한 타이밍 정보를 제공하는 서버.
  20. 제18항에 있어서, 상기 타이밍 정보 생성부는 상기 타이밍 정보를 MMT D.2 계층의 헤더에 포함시켜 상기 제2 미디어 개체를 포함한 패킷을 통하여 상기 클라이언트로 전송하는 것을 특징으로 하는 복합 전달 서비스에서 패킷 스트림 동기화를 위한 타이밍 정보를 제공하는 서버.
KR1020110117177A 2011-07-12 2011-11-10 Mmt 복합 전달 서비스에서 mmt 패킷 스트림 동기화를 위한 타이밍 정보 제공 방법 및 mmt 패킷 스트림 동기화 방법 KR101920051B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US13/546,994 US8923342B2 (en) 2011-07-12 2012-07-11 Method of providing timing information for synchronizing MMT packet stream in MMT hybrid delivery service and method of synchronizing MMT packet stream in MMT hybrid delivery service

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20110069091 2011-07-12
KR1020110069091 2011-07-12
KR20110071200 2011-07-18
KR1020110071200 2011-07-18

Publications (2)

Publication Number Publication Date
KR20130008436A true KR20130008436A (ko) 2013-01-22
KR101920051B1 KR101920051B1 (ko) 2018-11-29

Family

ID=47838542

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110117177A KR101920051B1 (ko) 2011-07-12 2011-11-10 Mmt 복합 전달 서비스에서 mmt 패킷 스트림 동기화를 위한 타이밍 정보 제공 방법 및 mmt 패킷 스트림 동기화 방법

Country Status (1)

Country Link
KR (1) KR101920051B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015160137A1 (ko) * 2014-04-18 2015-10-22 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016129963A1 (ko) * 2015-02-13 2016-08-18 에스케이텔레콤 주식회사 멀티뷰 스트리밍 서비스 지원 방법 및 이를 지원하는 장치

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100651486B1 (ko) * 2004-12-07 2006-11-29 삼성전자주식회사 네트워크를 통해 멀티미디어 컨텐츠를 전송하는 장치 및방법

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015160137A1 (ko) * 2014-04-18 2015-10-22 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
US10897636B2 (en) 2014-04-18 2021-01-19 Lg Electronics Inc. Broadcast signal transmitting apparatus and broadcast signal transmitting method
US11272231B2 (en) 2014-04-18 2022-03-08 Lg Electronics Inc. Broadcast signal transmitting apparatus and broadcast signal transmitting method
US11706467B2 (en) 2014-04-18 2023-07-18 Lg Electronics Inc. Broadcast signal transmitting apparatus and broadcast signal transmitting method
WO2016129963A1 (ko) * 2015-02-13 2016-08-18 에스케이텔레콤 주식회사 멀티뷰 스트리밍 서비스 지원 방법 및 이를 지원하는 장치
US11228801B2 (en) 2015-02-13 2022-01-18 Sk Telecom Co., Ltd. Method and apparatus for providing multi-view streaming service

Also Published As

Publication number Publication date
KR101920051B1 (ko) 2018-11-29

Similar Documents

Publication Publication Date Title
US11711580B2 (en) Transmission method, reception method, transmission device, and reception device
JP6982021B2 (ja) 受信方法、及び、受信装置
US8923342B2 (en) Method of providing timing information for synchronizing MMT packet stream in MMT hybrid delivery service and method of synchronizing MMT packet stream in MMT hybrid delivery service
US20130173826A1 (en) Method of providing timing information using mmt signaling layer signaling for synchronizing mmt packet streams in mmt hybrid delivery service and method of synchronizing mmt packet streams in mmt hybrid delivery service
US10454985B2 (en) File format based streaming with dash formats based on LCT
JP6317872B2 (ja) 異なるネットワークを介して受信したコンテンツのレンダリングを同期するデコーダ及びそれにおける方法
US20150181003A1 (en) Method and apparatus for transmitting and receiving packets in hybrid transmission service of mmt
JP6302274B2 (ja) 送信装置及び受信装置
EP2690876A2 (en) Heterogeneous network-based linked broadcast content transmitting/receiving device and method
KR20190029551A (ko) Mmt 시스템을 위한 미디어 데이터 전송 장치 및 방법, 그리고 미디어 데이터 수신 장치 및 방법
KR20130126538A (ko) Mmt 패킷 포맷 확장을 통한 하이브리드 전송 방법
JP5841715B2 (ja) 映像音声出力装置、および映像音声出力システム、およびマスタ装置
KR102098723B1 (ko) Mmt 전송 패킷의 설정 방법 및 전송 방법
KR20180090719A (ko) 미디어 동기화 방법 및 시스템
US9635082B2 (en) Method of saving content to a file on a server and corresponding device
KR101920051B1 (ko) Mmt 복합 전달 서비스에서 mmt 패킷 스트림 동기화를 위한 타이밍 정보 제공 방법 및 mmt 패킷 스트림 동기화 방법
KR101810883B1 (ko) 라이브 스트리밍 시스템 및 그의 스트리밍 클라이언트
Yun et al. A synchronization and T-STD model for 3D video distribution and consumption over hybrid network
KR20130032843A (ko) Mmt 시스템을 위한 미디어 데이터 전송 장치 및 방법, 그리고 미디어 데이터 수신 장치 및 방법
KR20130058541A (ko) 그룹 통신을 지원할 수 있는 mpeg 미디어 전송 시스템에서의 패킷 생성 장치 및 방법

Legal Events

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