KR20130009670A - 엠엠티 시스템에서의 패킷 전송 장치 및 방법, 및 패킷 수신 장치 및 방법 - Google Patents

엠엠티 시스템에서의 패킷 전송 장치 및 방법, 및 패킷 수신 장치 및 방법 Download PDF

Info

Publication number
KR20130009670A
KR20130009670A KR1020120076394A KR20120076394A KR20130009670A KR 20130009670 A KR20130009670 A KR 20130009670A KR 1020120076394 A KR1020120076394 A KR 1020120076394A KR 20120076394 A KR20120076394 A KR 20120076394A KR 20130009670 A KR20130009670 A KR 20130009670A
Authority
KR
South Korea
Prior art keywords
information
mmt
packet
mcr
pts
Prior art date
Application number
KR1020120076394A
Other languages
English (en)
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
Priority claimed from KR1020110069537A external-priority patent/KR20120084246A/ko
Application filed by 연세대학교 원주산학협력단, 한국전자통신연구원 filed Critical 연세대학교 원주산학협력단
Priority to PCT/KR2012/005585 priority Critical patent/WO2013009132A2/ko
Publication of KR20130009670A publication Critical patent/KR20130009670A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2362Generation or processing of Service Information [SI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/242Synchronization processes, e.g. processing of PCR [Program Clock References]

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명은 MMT 시스템에서의 패킷 전송 장치 및 방법, 및 패킷 수신 장치 및 방법을 개시하고 있다. 패킷 전송 장치는 MMT(MPEG Media Transport) 시스템에서 패킷을 전송하는 장치에 있어서, 입력되는 프레젠테이션 유닛(presentation unit)을 기반으로 MMT 패킷을 생성하는 MMT 패킷화부를 포함하되, 상기 MMT 패킷화부는 E 레이어의 헤더에 상기 프레젠테이션 유닛의 표현(presentation) 시간을 가리키는 타이밍 정보인 PTS(Presentation Time Stamp) 정보 및 D 레이어의 헤더에 네트워크 지터 측정 및 미디어 동기화를 위한 정보를 포함하는 타임스탬프 정보인 MCR(MMT Clock Reference) 정보 중 적어도 어느 하나를 포함하여 상기 MMT 패킷을 생성한다.

Description

엠엠티 시스템에서의 패킷 전송 장치 및 방법, 및 패킷 수신 장치 및 방법{PACKET TRANSMISSION APPARATUS AND METHOD, AND PACKET RECEPTION APPARATUS AND METHOD IN MMT SYSTEM}
본 발명은 패킷 전송 장치 및 방법, 및 패킷 수신 장치 및 방법에 관한 것으로, 보다 상세하게는 MMT 시스템에서 타임 스탬프 관련 정보를 효율적으로 패킷화하여 전송하는 장치 및 방법, 및 상기 패킷을 수신하는 장치 및 방법에 관한 것이다.
MPEG-2 시스템에 있어서, 인코더(encoder)에 들어 있는 모든 픽처 및 오디오 샘플이, 디코더(decoder)의 출력에서, 지속적으로 발생하는 종단간 지연(end to end delay) 이후에, 각각 한번씩 정확히 나타나는 타이밍 모델(timing model)을 구현하기 위한 연구가 진행 중에 있다. 디코딩 시스템이 타이밍 모델이 포함된 컴플리언트(compliant) 비트 스트림(bit stream)을 정확하게 전달하고 받는 것을 고려했을 때, 디코더에서 고품질의 비디오와 오디오 출력의 동기화를 맞추는 것은 그리 어렵지 않다. 반대로, RTP(Real Time Transport Protocol) 타이밍 모델은 실제 표현 시간(actual presentation time)과 관련된 어떠한 타이밍 정보도 가지고 있지 않다. 데이터 패킷 내에 포함된 타임 스탬프(timestamp)는 연관 타이밍(relative timing)을 가지고 있고, RTCP(Real Time Control Protocol) 송신기 리포트(report)는 스트림간(inter-stream) 동기화에 대한 추가 정보를 제공한다. 하지만, RTP는 수신기에서 필요한 버퍼의 용량 또는 패킷의 디코딩 시간에 대한 어떠한 정보도 제공하지 않는다. 따라서, RTP는 송신기 지향적인 플렉서블한 타이밍 모델을 갖는다(수신기에 대한 설명은 플렉서빌리티(flexibility)를 허용하기 위해 의도적으로 특별히 제한하지 않았음). 이에 반해, MPEG-2 시스템은 수신기에 대한 명확한 타이밍 모델을 제공한다. 따라서, MPEG-2 시스템의 타이밍 모델과 RTP 시스템의 타이밍 모델의 요구하는 수신기에 대한 타이밍 모델의 구성의 차이점 때문에 MMT 시스템에서 패킷의 동기화를 맞추기가 어렵고, 이를 위해서는 반드시 복잡한 구성을 갖추어야 하는 문제점이 있다.
더욱이, MMT의 D 레이어에서는 MMT의 E 레이어에서 생성되는 데이터를 효과적으로 전송할 수 있는 어플레케이션 레이어 전송 프로토콜 기능을 지원한다. E 레이어에서 생성되는 전송 가능한 패킷들을 IP 네트워크를 통해 효과적으로 전송할 수 있는 형태로 패킷화하기 위해서는 D 레이어에서 기본적으로 기존의 RTP가 지원하던 기능을 바탕으로 보다 더 효과적인 방법으로 패킷화를 수행할 수 있어야 한다. 하지만, 종래의 패킷화 방법으로는 전술한 바와 같이, D 레이어에서의 RTP가 지원하던 기능을 지원할 수 없다는 문제점이 있었다.
또한, MMT의 E 레이어에서는 미디어 코덱(A) 계층으로부터 제공된 미디어 프래그먼트 유닛(Media Fragment Unit: MFU)을 캡슐화하여 M-유닛(M-Unit)을 생성한다. 이때, M-유닛이 비 시간 특정의 데이터 유닛을 포함하는 경우, 표현 시간과 관련된 정보를 E 헤더에 포함될 필요가 없게 된다. 그러나, 종래의 MMT 패킷화 방법에서는 상기와 비 시간 특정의 데이터 유닛도 필수적으로 요구되는 정보를 E 레이어의 헤더에 포함하여 전송하므로 비효율적이라는 문제점이 있었다.
대한민국 공개 특허 KR 10-2008-0027043 ("전송 스트림 패킷을 전송하는 방법 및 장치", 삼성전자주식회사, 2008.03.26 공개)
상술한 문제점을 해결하기 위한 본 발명의 목적은 MMT의 D 레이어 패킷화 과정에서 생성되는 패킷의 헤더에 포함되어야 할 MCR(MMT Clock Reference) 타임 스탬프 관련 정보의 적합한 규격을 규정하여 패킷을 송수신하는 MMT 시스템에서의 패킷 전송 장치 및 방법, 및 패킷 수신 장치 및 방법을 제공하는 것이다.
또한, 본 발명의 다른 목적은 MMT 시스템의 E 레이어에 인트라-미디어(intra-media) 동기화를 지원하는 타이밍 정보인 PTS(Presentation Time Stamp) 정보를 포함하여 MMT 패킷을 패킷화하여 송수신하는 MMT 시스템에서의 패킷 전송 장치 및 방법, 및 패킷 수신 장치 및 방법을 제공하는 것이다.
상기한 목적을 달성하기 위한 본 발명의 MMT 패킷 전송 장치는 MMT(MPEG Media Transport) 시스템에서 패킷을 전송하는 장치에 있어서, 입력되는 프레젠테이션 유닛(presentation unit)을 기반으로 MMT 패킷을 생성하는 MMT 패킷화부를 포함하되, 상기 MMT 패킷화부는 E 레이어의 헤더에 상기 프레젠테이션 유닛의 표현(presentation) 시간을 가리키는 타이밍 정보인 PTS(Presentation Time Stamp) 정보 및 D 레이어의 헤더에 네트워크 지터 측정 및 미디어 동기화를 위한 정보를 포함하는 타임스탬프 정보인 MCR(MMT Clock Reference) 정보 중 적어도 어느 하나를 포함하여 상기 MMT 패킷을 생성할 수 있다.
상기 PTS 정보는 상기 MMT 패킷의 E.3 레이어의 헤더에 삽입되고, 상기 MCR 정보는 상기 MMT 패킷의 D.1 레이어의 헤더에 삽입될 수 있다.
상기 MCR 정보는 상기 프레젠테이션 유닛이 상기 패킷 전송 장치에 입력되는 순간의 타임 스탬프 값과 상기 패킷 전송 장치에서의 처리에 소요되는 지연 시간을 더함으로써 생성될 수 있다.
상기 MCR 정보는 상기 타임 스탬프의 클락 세밀도와 관련된 정보 및 상기 MCR 정보의 용도와 관련된 정보를 포함하는 Timestamp_Control_Flag 정보를 포함하고, 상기 Timestamp_Control_Flag 정보는, 상기 타임 스탬프의 클락 세밀도를 나타내는 정보; 상기 타임 스탬프의 용도가 네트워크 지터 및 RTT 계산 목적인지 미디어 동기화의 지원 목적인지를 나타내는 정보; 및 상기 MCR 정보에 포함된 복수의 정보 중 어느 정보가 상기 D 레이어의 패킷 헤더에 존재하는지를 나타내는 정보를 포함할 수 있다.
상기 MCR 정보는 상기 타임 스탬프의 33번째 위치에서의 값을 나타내는 MCR_Base_Ext_Bit 정보; 클락 세밀도가 90kHz의 클락으로부터 생성된 타임스탬프의 하위 32 비트 값을 나타내는 MCR_Base 정보; 클락 세밀도가 90kHz의 클락을 클락 세밀도가 27MHz의 클락으로 재정의하기 위해 필요한 클락 카운트(clock count) 값을 나타내는 MCR_Ext 정보; 및 상기 PTS 정보를 수신단에서 계산함에 있어서, 상기 수신단에서의 처리에 의해 지연되는 버퍼링 시간을 나타내는 MMT_Receiver_Buffering_Time 정보를 포함할 수 있다.
상기 MCR 정보에 포함된, 상기 타임 스탬프의 클락 세밀도 및 상기 MCR 정보의 용도 관련 정보인 Timestamp_Control_Flag 정보는 2비트, 상기 MCR_Base_Ext_Bit 정보는 1비트, 상기 MCR_Base 정보는 32비트, 상기 MCR_Ext 정보는 9 비트, 상기 MMT_Receiver_Buffering_Time 정보는 20비트의 크기를 가질 수 있다.
상기 MCR 정보의 타임 스탬프 값은 상기 D 레이어의 패킷의 페이로드의 첫 번째 바이트의 샘플링 순간(sampling instant)에 해당되는 클락 값을 나타내고, 상기 D 레이어의 패킷에 실려있는 MPEG TS 패킷의 헤더에 기록된 MCR 정보를 활용하여 인터폴레이션(interpolation)을 통해 유도하여 생성될 수 있다.
상기 PTS 정보는 상기 프레젠테이션 유닛이 상기 패킷 전송 장치에 입력되는 순간의 타임 스탬프 값과 상기 패킷 전송 장치에서의 처리에 소요되는 지연 시간, 채널을 통한 전송에 소용되는 지연 시간 및 수신단에서의 처리에 소요되는 지연 시간을 더하여 생성될 수 있다.
상기 MMT 패킷화부는 상기 PTS 정보가 상기 프레젠테이션 유닛마다 항상 일정한 간격의 값으로 유지하도록, 상기 패킷 전송 장치에서의 지연과의 관계를 고려하여 상기 PTS 정보를 생성할 수 있다.
상기 PTS 정보는 상기 프레젠테이션 유닛을 기반으로 생성된 M-유닛이 시간 특정 데이터 유닛(timed data unit) 또는 비-시간 특정 데이터 유닛(non-timed data unit)을 포함하는지와 관련된 정보를 포함하는 Timed_Data_Flag 정보를 포함할 수 있다.
상기 PTS 정보는 상기 MMT 패킷의 E 레이어 헤더에 상기 PTS 정보가 존재하는지를 나타내는 PTS_Control_Flag 정보를 포함하고, 상기 Timed_Data_Flag 정보는 상기 PTS_Control_Flag 정보의 존재 여부 관련 정보를 포함할 수 있다.
상기 PTS 정보는 클락 세밀도(clock resolution)가 90kHz일 때, 클락의 33번째 비트에서의 값과 관련된 정보인 PTS_Base_Ext_Bit 정보; 및 상기 클락 세밀도가 90kHz일 때, 상기 PTS 정보의 하위 32 비트 값과 관련된 정보인 PTS_Base 정보를 포함할 수 있다.
상기 PTS 정보에 포함된, 상기 프레젠테이션 유닛을 기반으로 생성된 M-유닛이 시간 특정 데이터(timed data) 또는 비-시간 특정 데이터(non-timed data)를 포함하는지와 관련된 정보를 포함하는 Timed_Data_Flag 정보는 1비트, 상기 MMT 패킷의 E 레이어 헤더에 상기 PTS 정보가 존재하는지를 나타내는 PTS_Control_Flag 정보는 1비트, 클락 세밀도(clock resolution)가 90kHz일 때, 클락의 33번째 비트에서의 값과 관련된 정보인 PTS_Base_Ext_Bit 정보는 1비트, 상기 클락 세밀도가 90kHz일 때, 상기 PTS 정보의 하위 32 비트 값과 관련된 정보인 PTS_Base 정보는 32비트의 크기를 가질 수 있다.
상기한 목적을 달성하기 위한 본 발명의 MMT 패킷 전송 방법은 MMT(MPEG Media Transport) 시스템에서 패킷을 전송하는 방법에 있어서, 프레젠테이션 유닛(presentation unit)을 기반으로 MMT 패킷을 생성하는 MMT 패킷화 단계를 포함하되, 상기 MMT 패킷화 단계는 미디어 동기화를 위한 타임 스탬프 정보를 제공하기 위해 E 레이어의 헤더에 상기 프레젠테이션 유닛의 표현(presentation) 시간을 가리키는 타이밍 정보인 PTS(Presentation Time Stamp) 정보 및 D 레이어의 헤더에 네트워크 지터 측정 및 미디어 동기화를 위한 타임스탬프 정보인 MCR(MMT Clock Reference) 정보 중 적어도 어느 하나를 포함하여 상기 MMT 패킷을 생성하는 단계를 포함할 수 있다.
상기한 목적을 달성하기 위한 본 발명의 MMT 패킷 수신 장치는 MMT(MPEG Media Transport) 시스템에서 패킷을 수신하는 장치에 있어서, 수신된 MMT 패킷을 디패킷화하여 프레젠테이션 유닛(presentation unit)을 생성하는 프레젠테이션 유닛 생성부를 포함하되, 상기 MMT 디패킷화부는 상기 MMT 패킷의 E 레이어의 헤더에 포함된 상기 프레젠테이션 유닛의 표현(presentation) 시간을 가리키는 타이밍 정보인인 PTS(Presentation Time Stamp) 정보 및 D 레이어의 헤더에 포함된 네트워크 지터 측정 및 미디어 동기화를 위한 타임스탬프 정보인 MCR(MMT Clock Reference) 정보 중 적어도 어느 하나를 기반으로 동기화 정보를 생성할 수 있다.
상기 MMT 디패킷화부는 상기 PTS 정보와 상기 수신된 MMT 패킷의 수신되는 순간의 상기 MCR 정보의 타임 스탬프가 가리키는 시점과의 차이를 계산하여 상기 차이와 상기 패킷 수신 장치에서 처리에 소요되는 지연 시간이 동일하도록 제어하는 지연 시간 제어 정보를 생성할 수 있다.
상기 MMT 패킷이 상기 프레젠테이션 유닛으로 표현(presentation)되기까지의 데이터를 저장하고 있는 버퍼를 더 포함하되, 상기 버퍼는 상기 PTS 정보를 파싱하여 파악된 상기 프레젠테이션 유닛의 표현(presentation)을 위한 시간을 고려하여 적절한 크기를 가질 수 있다.
상기 MMT 디패킷화부는 상기 MCR 정보에 포함된, 클락 세밀도가 90kHz의 클락으로부터 생성된 타임스탬프의 하위 32 비트 값을 나타내는 MCR_Base 정보와 상기 타임 스탬프의 33번째 위치에서의 값을 나타내는 MCR_Base_Ext_Bit 정보의 타임 스탬프 값을 활용하여 송신단과 상기 패킷 수신 장치 간의 시스템 클락 록킹(locking)을 수행하고, 네트워크에서 발생 가능한 지터(jitter) 추정 및 RTT(Round trip time) 계산을 수행할 수 있다.
상기한 목적을 달성하기 위한 본 발명의 MMT 패킷 수신 방법은 MMT(MPEG Media Transport) 시스템에서 패킷을 수신하는 방법에 있어서, 수신된 MMT 패킷을 디패킷화하여 프레젠테이션 유닛(presentation unit)을 생성하는 MMT 디패킷화 단계를 포함하되, 상기 MMT 디패킷화 단계는 상기 MMT 패킷의 E 레이어의 헤더에 포함된 상기 프레젠테이션 유닛의 표현(presentation) 시간을 가리키는 타이밍 정보인인 PTS(Presentation Time Stamp) 정보 및 D 레이어의 헤더에 포함된 네트워크 지터 측정을 위한 타임스탬프 정보인 MCR(MMT Clock Reference) 정보 중 적어도 어느 하나를 기반으로 동기화 정보를 생성하는 단계를 포함할 수 있다.
상기 MMT 디패킷화 단계는 상기 PTS 정보와 상기 수신된 MMT 패킷의 수신되는 순간의 상기 MCR 정보의 타임 스탬프가 가리키는 시점과의 차이를 계산하여 상기 차이와 상기 패킷 수신 장치에서 처리에 소요되는 지연 시간이 동일하도록 제어하는 지연 시간 제어 정보를 생성하는 단계를 포함할 수 있다.
본 발명의 MMT 시스템에서의 패킷 전송 장치 및 방법, 및 패킷 수신 장치 및 방법에 따르면, MPEG TS 패킷과 유사한 형태로 E 레이어에서 캡슐화되어 생성된 데이터를 IP 네트워크를 HD해 전송할 때 채널에서 경험하게 되는 네트워크 지터와 RTT(Round Trip Time) 등의 계산에 유용하게 활용 가능한 효과가 있다.
또한, MMT 시스템에서의 패킷 전송 장치 및 방법, 및 패킷 수신 장치 및 방법에 따르면, D 레이어에서의 MCR 타임스탬프 정보 및 E 레이어에서의 PTS 정보를 활용함으로써 MMT 기반의 미디어 전송에 필요한 타임 스탬프 관련 정보를 효과적으로 표현하는 효과가 있다.
도 1은 MMT 계층 구조를 나타낸 개념도,
도 2는 MMT 시스템에서의 패킷 전송 장치 및 패킷 수신 장치의 전송 지연을 설명하기 위한 개념도,
도 3은 본 발명의 일 실시예에 따른 MMT 시스템에서의 종단 간 전송 구조를 나타낸 블록도,
도 4는 본 발명의 일 실시예에 따른 MMT 시스템에서의 패킷 전송 장치의 MMT 패킷화부를 개략적으로 나타낸 블록도,
도 5는 MMT 패킷 구조를 나타낸 도면,
도 6은 본 발명의 일 실시예에 따른 E.3 레이어 헤더에서의 PTS 타임스탬프 구조를 나타낸 도면,
도 7은 MMT의 D 레이어(layer) 페이로드(payload)로의 MPEG TS 패킷의 캡슐화(encapsulation)를 설명하기 위한 개념도,
도 8은 본 발명의 D 레이어 헤더 내에 존재하는 MCR 타임 스탬프 정보를 나타낸 도면,
도 9는 본 발명의 일 실시예에 따른 D.1 레이어 헤더에서의 MCR 타임스탬프 구조를 나타낸 도면,
도 10은 본 발명의 일 실시예에 따른 MMT 시스템에서의 패킷 수신 장치를 개략적으로 나타낸 블록도,
도 11은 본 발명의 다른 실시예에 따른 MMT 시스템에서의 패킷 수신 장치의 MMT 디패킷화부와 MPEG-2 TS 패킷들을 위한 수신기 버퍼 모델과의 연동 관계를 설명하기 위한 도면이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다.
그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
MMT 계층 구조
도 1은 MMT 계층 구조를 나타낸 개념도이다.
도 1을 참조하면, MMT 계층은 캡슐화 계층(Encapsulation layer), 전달 계층(Delivery layer) 및 S 계층(S layer)의 기능 영역(functional area)을 포함한다. MMT 계층은 전송 계층(Transport layer) 위에서 동작한다.
캡슐화 계층(Encapsulation layer; E-layer)은 예를 들어 전송되는 미디어의 패킷화(packetization), 프래그먼테이션(Fragmentation), 동기화(Synchronization), 멀티플렉싱(Multiplexing)등의 기능을 담당할 수 있다.
캡슐화 계층(E-layer)은, 도 1에 도시된 바와 같이, MMT E.1 계층(MMT E.1 Layer), MMT E.2 계층(MMT E.2 Layer) 및 MMT E.3 계층(MMT E.3 Layer)으로 구성될 수 있다.
E.3 계층은 미디어 코덱(A) 계층으로부터 제공된 미디어 프래그먼트 유닛(Media Fragment Unit; MFU)를 캡슐화하여 M-유닛(M-Unit)을 생성한다.
MFU는 미디어 디코더에서 독립적으로 소비될 수 있는 데이터 유닛을 싣을 수 있는, 임의의 특정 코덱(codec)에 독립적인, 포맷을 가질 수 있다. MFU는 예를 들어 비디오의 픽춰(picture) 또는 슬라이스(slice)가 될 수 있다.
M-유닛은 하나 또는 복수의 MFU 로 구성될 수 있으며, 하나 또는 복수의 액세스 유닛(Access Unit)을 싣을 수 있는, 특정 코덱(codec)에 독립적인, 포맷을 가질 수 있다.
E.2 계층은 E.3 계층에서 생성된 M-유닛을 캡슐화하여 MMT 애셋(MMT Asset)을 생성한다.
MMT 애셋은 단일의 데이터 소스로부터의 하나 또는 복수의 M-유닛으로 이루어진 데이터 엔티티(data entity)로서, 컴포지션 정보(composition information) 및 전송 특성(transport characteristics)이 정의된 데이터 유닛이다. MMT 애셋은 PES(packetized elementary streams)에 대응될 수 있으며, 예를 들어 비디오, 오디오, 프로그램 정보(program information), MPEG-U 위젯(widget), JPEG 이미지, MPEG 4 파일 포맷(File Format), M2TS(MPEG transport stream)등에 대응될 수 있다.
E.1 계층(E.1 Layer)은 E.2 계층에서 생성된 MMT 애셋을 캡슐화하여 MMT 패키지(MMT Package)를 생성한다.
MMT 패키지는 콤포지션 정보(composition information) 및 전송 특성(transport characteristics)과 같은 부가 정보와 함께 하나 또는 복수의 MMT 애셋으로 구성될 수 있다. 콤포지션 정보(composition information)는 MMT 애셋들 사이의 관계(relationship)에 대한 정보를 포함하며, 하나의 컨텐츠(content)가 복수개의 MMT 패키지로 이루어질 경우 복수의 MMT 패키지간의 관계(relationship)를 나타내기 위한 정보를 더 포함할 수 있다. 전송 특성(transport characteristics)은 MMT 애셋 또는 MMT 패킷의 전송 조건(delivery condition)을 결정하기 위해 필요한 전송 특성 정보를 포함할 수 있으며, 예를 들어 트래픽 기술 파라미터(traffic description parameter) 및 QoS 기술자(QoS descriptor)를 포함할 수 있다. MMT 패키지는 MPEG-2 TS의 프로그램(Program)에 대응될 수 있다.
전달 계층(Delivery layer)은 예를 들어 네트워크를 통해 전송되는 미디어의 네트워크 플로우 멀티플렉싱(Network flow multiplexing), 네트워크 패킷화(Network packetization), QoS 제어 등을 수행할 수 있다.
전달 계층 (D-layer)은, 도 1에 도시된 바와 같이, MMT D.1 계층(MMT D.1 Layer), MMT D.2 계층(MMT D.2 Layer) 및 MMT D.3 계층(MMT D.3 Layer)으로 구성될 수 있다.
D.1 계층(D.1-layer)은 E.1 계층에서 생성된 MMT 패키지를 받아서 MMT 페이로드 포맷(MMT Payload format)을 생성한다. MMT 페이로드 포맷은 MMT 애셋을 전송하고, 그리고 MMT 애플리케이션 프로토콜 또는 RTP와 같은 다른 기존의 애플리케이션 전송 프로토콜에 의한 소비를 위한 정보를 전송하기 위한 페이로드 포맷이다. MMT 페이로드는 AL-FEC와 같은 정보와 함께 MFU의 프래그먼트를 포함할 수 있다.
D.2 계층(D.2-layer)은 D.1 계층에서 생성된 MMT 페이로드 포맷을 받아서 MMT 전송 패킷(MMT Transport Packet) 또는 MMT 패킷(MMT Packet)를 생성한다. MMT 전송 패킷 또는 MMT 패킷은 MMT를 위한 애플리케이션 전송 프로토콜에 사용되는 데이터 포맷이다.
D.3 계층(D.3-layer)은 교차 계층 설계(cross-layer Design)에 의해 계층간에 정보를 교환할 수 있는 기능을 제공하여 QoS를 지원한다. 예를 들어, D.3 계층은 MAC/PHY 계층의 QoS 파라미터를 이용하여 QoS 제어를 수행할 수 있다.
S 계층(S layer)은 시그널링 기능(signaling function)을 수행한다. 예를 들어 전송되는 미디어의 세션 초기화/제어/관리(session initialization/control/management), 서버 기반 및/또는 클라이언트 기반의 트릭 모드, 서비스 디스커버리(Service discovery), 동기화(Synchronization) 등을 위한 시그널링 기능을 수행할 수 있다.
S 계층(S layer)은, 도 1에 도시된 바와 같이, MMT S.1 계층(MMT S.1 Layer) 및 MMT S.2 계층(MMT S.2 Layer)으로 구성될 수 있다.
S.1 계층은 서비스 디스커버리(Service discovery), 미디어의 세션 초기화/종료(media session initialization/termination), 미디어의 세션 표현/제어(media session presentation/control), 전달(D) 계층 및 캡슐화(E) 계층과의 인터페이스 기능 등을 수행할 수 있다. S.1 계층은 미디어 표현 세션 관리(presentation session management)를 위한 애플리케이션들간의 제어 메시지들의 포맷을 정의할 수 있다.
S.2 계층은 흐름 제어(flow control), 전달 세션 관리(delivery session management), 전달 세션 모니터링(delivery session monitoring), 에러 제어(error control), 하이브리드망 동기화 제어(Hybrid network synchronization control)에 관한 전달 계층(D-layer)의 전달 엔드-포인트들(delivery end-points)간에 교환되는 제어 메시지의 포맷을 정의할 수 있다.
S.2 계층은 전달 계층의 동작을 지원하기 위하여 전달 세션 설정 및 해제(delivery session establishment and release), 전달 세션 모니터링, 흐름 제어, 에러 제어, 설정된 전달 세션에 대한 리소스 예약, 복합 전달 환경하에서의 동기화를 위한 시그널링, 적응적 전달(adaptive delivery)를 위한 시그널링을 포함할 수 있다. 송신측(sender)와 수신측(receiver)간에 필요한 시그널링을 제공할 수 있다. 즉, S.2 계층은 전술한 바와 같은 전달 계층의 동작을 지원하기 위하여 송신측(sender)와 수신측(receiver)간에 필요한 시그널링을 제공할 수 있다. 또한, S.2 계층은 전달 계층 및 캡슐화 계층과의 인터페이스 기능을 담당할 수 있다.
단일 미디어 스트림 또는 서로 다른 미디어 스트림의 패킷 간의 타이밍 관계를 유지하는 것은 MMT(MPEG Media Transport) 시스템에서는 필수적인 요소이다. MMT 시스템은 MMT 패킷 간의 동기화 시간을 보장하기 위한 타이밍 관계를 다시 조절하기 위한 것으로 동기화 기능 및 디지터링 알고리즘(de-jittering algorithms)을 갖고 있다. MMT 시스템을 위한 타이밍 모델은 MPEG 시스템 표준 중 어느 하나로부터 확장된 개념이고, 이는 RTP(Real Time Transport Protocol) 기반 스트리밍 시스템과 유사한 네트워크 디지터(de-jitter) 추정 함수를 활용한다.
MMT 시스템에서의 지연
도 2는 MMT 시스템에서의 패킷 전송 장치 및 패킷 수신 장치의 전송 지연을 설명하기 위한 개념도이다. 도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 패킷 전송 장치 및 패킷 수신 장치는 일정한 데이터 지연을 가지고 패킷을 송수신한다.
도 2를 참조하면, MMT 시스템은 전송 장치(10), IP 네트워크(20) 및 수신장치(30)를 포함할 수 있다. 전송 장치(10)는 입력되는 픽처를 패킷화하여 MMT 패킷을 생성하여 수신 장치(30)로 전송한다. IP 네트워크(20)는 무선 네트워크일 수 있다.
이때, 송신 장치(10)는 비디오 인코더에서 인코딩된 비디오 스트림을 패킷화 할 때, 오디오 스트림과의 동기화를 맞추기 위해, 버퍼링한다. 따라서, 송신 장치(10)에서는 버퍼링에 의해 지연(DS ,i)이 발생한다. 또한, IP 네트워크(20)에서도 전송 경로 상에서 지연(DN ,i)이 발생할 수 있다. 수신 장치(30) 역시 MMT 패킷을 수신하고 나서 수신된 패킷을 디코딩할 때까지 버퍼링을 해야하고, 디코딩된 데이터 중 B 픽처가 포함되어 있으면, 순서를 재정렬해야 하기 때문에 버퍼링이 필요하므로 이에 따른 지연(DR ,i)이 발생한다. 이러한 지연들로 인해, 실시간으로 방송되는 서비스에 있어서, 오디오 데이터와 비디오 데이터 간의 동기화가 문제될 수 있다.
따라서, 본 발명의 일 실시예에 따르면, 상기한 바와 같은 송신 장치(10)에서의 지연(DS ,i), 네트워크(20)에서의 지연(DN ,i) 및 수신 장치(30)에서의 지연(DR ,i)을 통합하여 전체 지연(DT ,i)을 구하고, 구해진 지연(DT ,i)을 고려하여 수신된 영상이 디스플레이되는 표현 정보 시간을 결정하므로써 동기화 문제를 해결할 수 있다. 따라서, 본 발명의 송신 장치(10)는 상기와 같은 동기화 파라미터를 포함하는 형태로 패킷을 전송하고, 수신 장치(30)는 상기 패킷을 수신하면, 동기화 파라미터를 추출하여 동기화를 맞추어 디코딩을 수행할 수 있다.
MMT 패킷 송수신 시스템 구조
도 3은 본 발명의 일 실시예에 따른 MMT 시스템에서의 종단 간 전송 구조를 나타낸 블록도이다. 도 3에 도시된 바와 같이, 본 발명의 일 실시예에 따른 MMT 시스템은 MMT 패킷 전송 장치(310), IP 네트워크(320) 및 MMT 패킷 수신 장치(330)를 포함한다. 그리고, MMT 패킷 전송 장치(310)는 시스템 타임 클락(STC: System Time Clock)(312)을 포함하고, MMT 패킷 수신 장치(320)는 시스템 타임 클락(STC: 332)을 포함할 수 있다.
도 3을 참조하면, MMT의 D.1 레이어에서는 MMT 패킷 수신 장치(330)가 서로 다른 미디어 간의 동기화 정보를 얻어낼 수 있도록 D.1 레이어 헤더를 통해 동기화와 관련된 타임 스탬프 정보를 제공할 필요가 있다. 이때, 반드시 D.1 레이어에 국한되는 것은 아니고, D 레이어에 동기화 관련 타임 스탬프 정보를 제공하여도 된다.
여기서, STC(312, 332)는 특정 프로그램에 속해 그 프로그램에 대한 비디오 인코더와 오디오 인코더의 마스터 클락이다. 즉, 인코더의 입력에서, 입력 프레젠테이션 유닛의 발생 시간은 상기 STC(312, 332)를 샘플링하여 기록한다. 따라서, 각각의 프레젠테이션 유닛은 타이밍 정보(ti)를 획득하게 된다. STC(312, 332)는 프로그램에 따라 서로 다를 수 있다.
MMT 패킷 전송 장치(310)에 있어서, i 번째 프레젠테이션 유닛이 MMT 패킷 전송 장치(310)에 입력되는 순간의 시간이 STC(312)에 의해 측정되어, ti로 표시된다. 그리고, i 번째 프레젠테이션 유닛에 대한 PTS인 PTSS ,i는 MMT 패킷 전송 장치(310)에서 처리에 소요되는 지연 시간인 DS ,i, 채널(일정한 전송 지연을 갖는 것으로 가정함)을 통한 전송에 소요되는 지연 시간인 DN ,i 및 MMT 패킷 수신 장치(330)에서의 처리에 소요되는 지연 시간인 DR ,i를 고려하여 나타낼 수 있다. 즉, MMT 패킷 전송 장치(310)가 계산하는 MMT 패킷 수신 장치(330)에서의 표현(presentation) 시간을 나타내는 PTSS ,i는 다음과 같이 표현할 수 있다.
Figure pat00001
i 번째 프레젠테이션 유닛이 MMT 패킷 수신 장치(330)에서 표현되는 시간에 대해, MMT 패킷 전송 장치(310)는 i 번째 프레젠테이션 유닛의 입력 시간에 전송에서의 버퍼링 지연, 수신에서의 버퍼링 지연 및 네트워크 지연을 더한 값으로 계산한다.
또한, MMT 패킷 전송 장치(310)가 MMT 패킷 수신 장치(330)에서 네트워크 지터의 크기를 산출하는데 필요한 정보를 제공하기 위한 MCR 값인 MCRi는 다음과 같이 표현될 수 있다.
Figure pat00002
수학식 2에 나타난 바와 같이, MCRi는 i 번째 프레젠테이션 유닛의 입력 시간에 전송에서의 버퍼링 지연 값을 더한 타임 스탬프 값으로 표현될 수 있다. 본 발명의 실시예에 따르면, 상기 MCRi는 MMT의 D.1 레이어에서 패킷 헤더에 기록된다. 다만, 반드시 D.1 레이어에 국한되는 것은 아니다.
수학식 1과 수학식 2를 통해 PTSS ,i는 다음과 같이 표현될 수 있다.
Figure pat00003
그런데, 모든 프레젠테이션 유닛은 채널을 통한 전송에서 겪게 되는 동일한 일정 지연(constant delay)인 DN ,i 시간 이후에, MMT 패킷 수신 장치(330)에 도착하게 되고, 도착 순간부터 MMT 패킷 수신 장치(330)의 STC(332)가 MMT 패킷 송신 장치(310)의 STC(312)에 클락 록킹(clock locking)이 이루어져서 작동하기 때문에, MMT 패킷 수신 장치(330)에서의 MCRi는 DN ,i 시간만큼 지연되어서 MMT 패킷 송신 장치(310)의 MCRi에 맞춰지게 된다. 따라서, MMT 패킷 수신 장치(330)에서의 실질적인 PTS인 PTSR,i는 다음과 같이 계산될 수 있다.
Figure pat00004
즉, MMT 패킷 수신 장치(330)에서는 i 번째 프레젠테이션 유닛을 수신한 순간의 시간인 MCRi로부터 DR ,i가 지난 시점에서 i 번째 프레젠테이션 유닛을 표현하면 된다. 어떤 프레젠테이션 유닛이 MMT 패킷 전송 장치(310)를 거치는 과정이 오래 걸리는 경우에는 상기 프레젠테이션 유닛이 겪게 되는 MMT 패킷 전송 장치(310)에서의 지연이 커지게 되므로, MCR 값이 증가하게 된다. 이때, 증가된 송신단에서의 지연 시간을 MMT 패킷 수신 장치(330)에서 흡수하기 위해, 송신단에서 DR ,i 값을 줄여서 D.1 패킷 헤더에 표시할 수 있다. 반대의 경우로, MMT 패킷 전송 장치(310)를 거치는 과정이 짧아진 경우에는 감소된 지연 시간을 MMT 패킷 수신 장치(330)에서 흡수하기 위해, 송신단에서 DR ,i 값을 늘려서 D 레이어, 바람직하게는 D.1 레이어 패킷 헤더에 표시할 수 있다.
상기와 같은 방식으로 DR ,i 값을 제어함으로써 PTS를 프레젠테이션 유닛마다 항상 일정한 간격의 값(비디오의 경우, 인터-프레임(inter-frame) 간격)으로 유지할 수 있다. 한편, MMT 패킷 수신 장치(330)에서 DR ,i 값을 바탕으로 표현 시간을 맞추는 작업은 적절한 크기의 버퍼들을 적당한 위치에 배치함으로써 구현이 가능하다.
전술한 바와 같이, MMT 기반의 종단간 시스템에서 미디어 동기화를 지원하기 위해서는 기본적으로 MMT 패킷 전송 장치(310)에서 MCR 정보와 DR ,i 정보를 D.1 레이어 헤더에 포함시켜야 한다. 먼저, MCR 정보의 경우, 90kHz 뿐만 아니라 27 MHz 세밀도의 시스템 클락을 이용하여 타임 스탬프 값을 표현할 수 있어야 한다. 그리고, 90kHz 세밀도로 PTS를 표현하기 위해 수학식 4에 나타나 있는 DR ,i 값을 D.1 레이어 헤더에 추가한다. DR ,i 값의 현실적인 범위는 수 초 내지 10 초 사이에 이를 것이므로, DR ,i의 비트 길이는 20 비트로 할당할 수 있다
Figure pat00005
.
도 4는 본 발명의 일 실시예에 따른 MMT 시스템에서의 패킷 전송 장치의 MMT 패킷화부(400)를 개략적으로 나타낸 블록도이다. 도 4에 도시된 바와 같이, 본 발명의 일 실시예에 따른 MMT 패킷화부(400)는 M-유닛 생성부(410), MMT 패킷화부(420)를 포함하고, 송신기 버퍼(430)에 데이터를 저장할 수 있다.
도 4를 참조하면, M-유닛 생성부(410)는 입력되는 프레젠테이션 유닛을 기반으로 M-유닛을 생성한다. 입력되는 프레젠테이션 유닛은 비디오 픽처가 될 수도 있다. 또한, 오디오 블록이 될 수도 있다. 이러한 프레젠테이션 유닛을 기반으로 인코딩을 수행하여 미디어 프래그먼트 유닛(MFU: Media Fragment Unit)을 생성할 수 있다. 그리고, 상기 미디어 프래그먼트 유닛을 기반으로 캡슐화를 수행하여 M-유닛을 생성할 수 있다. 이때, M-유닛 생성부(410)는 E 레이어의 헤더에 PTS 정보를 포함시켜 M-유닛을 생성할 수 있다. 바람직하게는 상기 PTS 정보를 E.3 레이어의 헤더에 포함시키는 것이 바람직하다.
MMT 패킷화부(420)는 M-유닛 생성부(410)에서 생성된 M-유닛을 기반으로 MMT 패킷을 생성한다. 본 발명의 일 실시예에 따르면, MMT 패킷화부(420)는 MMT 패킷으로 패킷화할 때, 미디어 동기화를 위한 타임 스탬프 정보를 제공한다. 이를 위해, E.3 레이어의 헤더에 인트라 미디어 동기화를 지원하는 타이밍 정보인 PTS 정보를 포함시켜 패킷화한다. 또한, D 레이어의 헤더에 네트워크 지터 측정을 위한 타임 스탬프 정보인 MCR 정보를 포함시켜 패킷화할 수 있다. 바람직하게는 상기 MCR 정보를 D.1 레이어의 헤더에 포함시키는 것이 바람직하다.
송신기 버퍼(430)는 프레젠테이션 유닛, 미디어 프래그먼트 유닛 및 M-유닛을 저장한다. 송신기 버퍼(430)는 비디오 버퍼, 오디오 버퍼 등 다양한 버퍼를 포함하는 개념일 수 있다. 오디오 버퍼는 오디오 인코더로부터 일정하지 않은 레이트(rate)로 출력되어 나오는 오디오 데이터를 입력으로 수신하여, 일정한 레이트로 출력할 수 있다. 비디오 버퍼는 인코딩된 비디오 스트림을 저장하고 있다가 MMT 패킷 생성부(420)로 전송한다.
도 5는 MMT 패킷 구조를 나타낸 도면이다. 도 5에 도시된 바와 같이, MMT 프로토콜에서 정의하고 있는 MMT 패킷은 IP 헤더, D.2 레이어 헤더, D.1 레이어 헤더, E.1 레이어 헤더, E.2 레이어 헤더, E.3 레이어 헤더 및 미디어 코딩 데이터를 순서대로 포함하고 있고, M-유닛 생성부(410)를 통해 만들어지는 E.3 레이어 헤더와 미디어 코딩 데이터는 복수 개가 존재할 수 있다.
도 5를 참조하면, MMT 시스템의 레이어들에 대한 기능적 정의를 참조하면, M-유닛을 생성하는 E.3 레이어는 동기화를 위한 타임 스탬프 정보를 제공한다. M-유닛이 하나의 기초 스트림(elementary stream)에서 나오는 하나 이상의 미디어 프래그먼트 유닛(MFU: Media Fragment Unit 혹은 AU(access unit))으로 이루어진다는 것을 고려할 때, M-유닛 레벨에서 지원되어야 하는 동기화 특성은 수신단에서 표현(presentation)할 때, 플레이백(playback)의 지속성을 지원하는 인트라-미디어(intra-media) 동기화와 일치한다. 인트라 미디어 동기화를 위한 시간 정보는 일반적으로 비디오 통신과 관련된 터미널의 일반 시스템 클락(system clock)인 STC(system time clock)로부터 얻어진다. 일반적으로 인트라-미디어 동기화를 지원하는 타이밍 정보는 PTS(presentation time stamp)이다. M-유닛은 시간 특정 데이터 유닛(timed data unit) 또는 비-시간 특정 유닛(non-timed data unit) 중 하나를 포함할 수 있다. M-유닛이 비-시간 특정 유닛(non-timed data unit)을 포함하는 경우 PTS 정보는 E.3 레이어의 헤더에 포함될 필요가 없다. 그러나 시간 특정 데이터 유닛(timed data unit)을 위해서는 PTS가 미디어 동기화를 위한 타임 스탬프 정보를 제공하기 위해 E.3 레이어의 헤더에 포함될 필요가 있다.
그리고, 네트워크 지터와 관련하여, E.1 레이어에서 생성되는 MPEG TS 패킷들을 IP 네트워크를 통해 전송하기 위해서는 D.1 레이어에서 네트워크의 지터(jitter)를 측정하는데 활용될 수 있는 타임 스탬프(timestamp) 정보가 제공될 필요가 있다. MPEG TS는 통상적으로 디지털 방송 서비스를 목적으로 개발된 규격이기 때문에 전송되는 TS 패킷들은 채널 품질이 비교적 안정적인 회선 교환 네트워크(Circuit switched network)인 방송망을 통해 수신기에 전달된다. 따라서, MPEG TS 패킷들은 전송 채널에서 경험하게 되는 패킷 지연 시간이 비교적 짧고 일정하며, 수신기에 도착된 TS 패킷들을 순차적으로 처리하기 위한 타이밍 버퍼 모델(timing buffer model)인 T-STD (Transport Stream System Target Decoder) 버퍼 모델도 효과적으로 적용이 될 수 있다. 그러나, IP 네트워크과 같은 패킷 교환 네트워크(packet switched network)를 통해 MPEG TS를 전송하기 위해서는 인터넷의 고질적인 문제점인 IP 패킷들 간의 도착 지연 시간 변이(delay variation in arrival time)인 지터(jitter)를 정확하게 추정할 필요가 있고, 방송망을 통한 MPEG TS 전송에 적합하게 설계된 표준 T-STD 버퍼 모델도 이러한 IP 네트워크에서의 지터(jitter)를 고려하여 설계되어야 필요가 있다. 이러한 목적으로 인해 MMT의 D.1 레이어에는 E.1 레이어에서 생성된 데이터들을 담고 있는 IP 패킷이 IP 네트워크를 통해 전송될 때 겪게 되는 네트워크 지터를 수신측에서 쉽고 간단하게 추정할 수 있는 MCR 타임 스탬프 정보를 D.1 레이어 헤더에 포함시켜서 제공할 필요가 있다.
도 6은 본 발명의 일 실시예에 따른 E.3 레이어 헤더에서의 PTS 타임스탬프 구조를 나타낸 도면이다. 도 6에 도시된 바와 같이, Timed_Data_Flag(610), PTS_Control_Flag(620), PTS_Base_Ext_Bit(630) 및 PTS_Base(640)를 포함할 수 있다. 하기의 설명에서 E.3 레이어로 기재되어 있는 것은 E.3 레이어에 포함되는 것이 가장 바람직하기 때문이고, E 레이어로 보다 포괄적으로 기재하여도 유사한 효과를 낼 수 있으므로, 반드시 E.3 레이어로만 국한되는 것은 아니다.
도 6을 참조하면, Timed_Data_Flag(610)는 M-유닛이 시간 특정 데이터 유닛(timed data unit) 또는 비-시간 특정 데이터 유닛(non-timed data unit)을 포함하지와 관련된 정보 및 PTS_Control_Flag(620)가 존재하는지 여부와 관련된 정보를 나타낸다. 즉, Timed_Data_Flag(610)가 '0'인 경우, 이는 M-유닛이 비-시간 특정 데이터 유닛(non-timed data unit)을 포함하고 있다는 것을 나타낸다. 그러므로, E.3 레이어 헤더 내에는 PTS_Control_Flag(620)가 존재하지 않는다. 반면, Timed_Data_Flag(610)가 '1'인 경우, 이는 M-유닛이 시간 특정 데이터 유닛(timed data unit)을 포함하고 있다는 것을 나타내고, 따라서, E.3 레이어 헤더 내에는 PTS_Control_Flag(620)가 존재한다. 본 발명의 실시예에 따르면, Timed_Data_Flag(610)는 1 비트의 길이 값을 가질 수 있다.
다음으로, PTS_Control_Flag(620)는 E.3 레이어 헤더 내에 PTS 정보의 존재 여부 관련 정보를 나타낸다. 즉, PTS_Control_Flag(620)가 '0'인 경우, E.3 레이어 헤더 내에 PTS 정보가 존재하지 않는다. 반면, PTS_Control_Flag(620)가 '1'인 경우, E.3 레이어 헤더 내에 PTS 정보가 존재한다. 따라서, PTS_Base_Ext_Bit(630) 및 PTS_Base(640)가 E.3 레이어 헤더 내에 존재하고, 의미있는 값을 갖는다. 본 발명의 실시예에 따르면, PTS_Control_Flag(620)는 1 비트의 길이 값을 가질 수 있다.
PTS_Base_Ext_Bit(630)는 그 값이 '1'인 경우, 클락 세밀도가 90kHz일 때, 클락의 33번째 비트 값이고, 그것의 값은 실질적으로 십진법으로 계산했을 때, 1x232이다. 또한, PTS_Base_Ext_Bit(630)는 그 값이 '0'인 경우도 마찬가지로, 클락 세밀도가 90kHz일 때, 클락의 33번째 비트 값이고, 그것의 값은 실질적으로 십진법으로 계산했을 때, 0x232이다. 본 발명의 실시예에 따르면, PTS_Control_Flag(620)는 1 비트의 길이 값을 가질 수 있다.
마지막으로, E.3 레이어 헤더에 포함되는 PTS 정보인 PTS_Base(640)는 클락 세밀도가 90kHz를 갖는 PTS 정보의 하위 32 비트 값을 나타낸다. 이는 32비트의 길이 값을 가질 수 있다.
상기와 같은 PTS 타임 스탬프 정보의 C-코드 형식의 수도 코드는 다음과 같이 표현될 수 있다.
PTS_timestamp() {
if(Timed_Data_Flag=='1'){
PTS_Control_Flag ; (1 bit)
}
if(PTS_Control_Flag=='1'){
PTS_Base_Ext_Bit ; (1 bit)
PTS_Base ; (32 bits)
}
}
PTS_Control_Flag와 관련하여, PTS는 각각의 액세스 유닛(AU)마다 전달될 필요는 없다. 예컨대, MPEG 시스템은 PTS를 포함하는 MPEG-2 TS 패킷들의 간격이 700ms를 초과하면 안 된다고 명시한다. 그러므로 현재의 M-유닛이 PTS 정보를 포함하는지를 나타내는 플래그(flag)가 요구된다. MPEG-2 시스템에 사용되는 상용적인 PTS 표현을 따르기 위해 제안된 PTS 정보는 총 33비트의 길이 값을 갖는다. 그러나 본 발명의 다른 실시예에 따르면, 32비트의 RTP 타임 스탬프와의 호환성을 유지하기 위해 PTS 가 1 비트 PTS_Base_Ext_Bit 필드와 32비트 PTS_Base 필드 등 두 개의 다른 부분으로 표현될 수 있다.
도 7은 MMT의 D 레이어(layer) 페이로드(payload)로의 MPEG TS 패킷의 캡슐화(encapsulation)를 설명하기 위한 개념도이다. 도 7에 도시된 바와 같이, MPEG TS 패킷(700)이 16개가 도시되어 있고, 상기 MPEG TS 패킷(700)은 7개가 하나의 MMT 패킷(710, 720)으로 패킷화될 수 있으며, 하나의 MMT 패킷의 페이로드(714, 724)에 헤더(712, 722) 데이터를 붙여 전송될 수 있다.
도 7을 참조하면, D 레이어(layer) 페이로드(714, 724)에 매핑된 TS 패킷(700)은 전술한 바와 같이, D 레이어 페이로드(714, 724) 내에 포함된 TS 패킷 헤더 필드에 MCR 정보를 포함할 수 있다. MMT 패킷화부는 전술한 바와 같이, MMT 버퍼링 지연, 네트워크 지연 및 STC 값을 기반으로 MCR 정보를 생성하고, 이를 D 레이어의 패킷 페이로드(714, 724)에 포함된 TS 패킷 헤더 필드에 포함시켜 패킷화함으로써 디코더에서 동기화 정보를 용이하게 추출할 수 있도록 한다. D 레이어의 패킷 헤더(712, 722)에는 MCR 타임 스탬프 정보가 포함될 수 있다.
더욱이, D.1 레이어 패킷은 UDP over IP를 거친 후 IP 네트워크로 전송되거나 UDP를 거치지 않고 직접적으로 IP 패킷화된 후에 IP 네트워크로 전송될 수 있다. 따라서, MMT 패킷이 IP 네트워크를 통한 전송에서 경험하게 되는 네트워크 지터를 쉽고 간단하게 계산하기 위해서는 D.1 레이어 헤더(712, 722)에서 MCR 타임 스탬프 정보를 지원해야 할 필요가 있다.
도 8은 본 발명의 D.1 레이어 헤더 내에 존재하는 MCR 타임 스탬프 정보를 나타낸 도면이다. 도 8에 도시된 바와 같이, MMT 패킷의 D.1 레이어의 헤더(800)에 MCR 타임 스탬프 정보(802)가 포함되어 있다.
도 8을 참조하면, MCR 타임 스탬프 정보는 D.1 레이어 페이로드에서 첫 번째 바이트의 샘플링 인스턴스 클락(sampling instance clock) 값에 포함되어 있다. 본 발명의 일 실시예에 따르면, 이 값은 지터 추정과 RTT(Round Trip Time) 계산뿐만 아니라 전송 장치(10)와 수신 장치(30) 사이에 시스템 클락 록킹(locking) 목적을 위해서 사용될 수도 있다.
D.1 패킷의 페이로드에 매핑되는 여러 개의 MPEG TS 패킷들의 헤더에는 MCR (MMT Clock Reference)이라는 클락 정보가 기록될 수 있지만, 모든 TS 패킷에 MCR값이 존재하는 것은 아니다. 비록 MCR 값이 TS 패킷 헤더에 기록되어 있다고 하더라도, 그 위치가 D.1 패킷 패이로드의 시작위치와 일치하지 않으므로 오직 TS 패킷 헤더에 기록된 MCR값 만을 활용해서는 정확한 지터 계산이 불가능하다. 따라서, D.1 레이어 패킷 헤더(800)에 직접적으로 지터 계산에 활용할 수 있는 MCR 타임 스탬프 정보(802)를 삽입할 필요가 있다. 이 MCR 타임 스탬프 값(802)은 D.1 패킷 페이로드의 첫 번째 바이트의 샘플링 순간에 해당되는 클락 값에 해당하는데, D.1 패킷에 실려 있는 TS 패킷의 헤더에 기록된 MCR값을 활용하여 인터폴레이션(interpolation)을 통해 그 값을 유도해 낼 수도 있고, NTP, UTC 등의 별도의 월 클락(wall clock)을 적용하여 그 값을 할당할 수도 있다.
도 9는 본 발명의 일 실시예에 따른 D.1 레이어 헤더에서의 MCR 타임스탬프 구조를 나타낸 도면이다. 도 9에 도시된 바와 같이, 본 발명의 일 실시예에 따른 MCR 타임 스탬프는 Timestamp_Control_Flag(910), MCR_Base_Ext_Bit(920), MCR_Base(930), MCR_Ext(940) 및 MMT_Receiver_Buffering_Time (DR)(950)를 포함할 수 있다. 하기의 설명에서 D.1 레이어로 기재되어 있는 것은 D.1 레이어에 포함되는 것이 가장 바람직하기 때문이고, D 레이어로 보다 포괄적으로 기재하여도 유사한 효과를 낼 수 있으므로, 반드시 D.1 레이어로만 국한되는 것은 아니다.
도 9를 참조하면, Timestamp_Control_Flag(910)는 MCR 타임 스탬프 정보에서 지원하는 클락의 세밀도와 타임 스탬프의 용도를 구분하여 나타낸다. 즉, Timestamp_Control_Flag(910) 값이 '00'일 경우, 네트워크 지터 및 RTT 등을 계산하기 위하여 타임 스탬프 필드(timestamp field)가 90 kHz 세밀도의 클락 값을 갖는다는 것을 나타낸다. 이 경우에 도 9의 필드들 가운데 MCR_Base_Ext_Bit(920) 및 MCR_Base(930)가 D.1 레이어 패킷 헤더에 존재한다. Timestamp_Control_Flag(910) 값이 '01'일 경우, 네트워크 지터 및 RTT 등을 계산하기 위하여 타임 스탬프 필드(timestamp field) 27 MHz 세밀도의 클락 값을 갖는다는 것을 의미한다. 이 경우에, 도 9의 필드들 가운데 MCR_Base_Ext_Bit(920), MCR_Base(930) 및 MCR_Ext(940) 가 D.1 레이어 패킷 헤더에 존재한다. Timestamp_Control_Flag(910) 값이 '10'일 경우, 미디어 동기화를 지원하기 위해 타임 스탬프 필드(timestamp field)가 90 kHz 세밀도의 클락 값을 갖는다는 것을 나타낸다. 이 경우, 도 9의 필드들 가운데 MCR_Base_Ext_Bit(920), MCR_Base(930) 및 MMT_Receiver_Buffering_Time(DR)(950)가 D.1 레이어 패킷 헤더에 존재한다. 그리고 Timestamp_Control_Flag(910) 값이 '11'일 경우, 미디어 동기화를 지원하기 위해 타임 스탬프 필드(timestamp field)가 27 kHz 세밀도의 클락 값을 갖는다는 것을 나타낸다. 이 경우, 도 9의 필드들 가운데 MCR_Base_Ext_Bit(920), MCR_Base(930), MCR_Ext(940) 및 MMT_Receiver_Buffering_Time (DR)(950)가 D.1 레이어 패킷 헤더에 존재한다. 본 발명의 실시예에 따르면, 상기 Timestamp_Control_Flag(910)는 2비트의 길이 값을 가질 수 있다.
다음으로, MCR_Base_Ext_Bit(920) 값이 '1'일 경우, 90 kHz 세밀도의 클락으로부터 생성된 타임 스탬프의 33 비트 위치에서의 값이 1임을 의미하며, 이 때의 타임 스탬프 값은 십진수로 1x232에 해당한다. MCR_Base_Ext_Bit(920) 값이 '0'일 경우, 타임 스탬프의 33 비트 위치에서의 값이 0임을 의미하며, 이 때의 타임 스탬프 값은 십진수로 0x232에 해당한다. 본 발명의 실시예에 따르면, 상기 MCR_Base_Ext_Bit(920)는 1비트의 길이 값을 가질 수 있다.
그리고, MCR_Base(930)는 90 kHz 세밀도의 클락으로부터 생성된 타임 스탬프의 하위 32 비트의 값을 나타낸다. 이 값은 32 비트의 길이 값으로 표현될 수 있다.
MCR_Ext(940)는 Timestamp_Control_Flag(910) 값이 '01' 또는 '11'일 경우에 존재하며, 90 kHz 세밀도의 클락을 27 MHz 세밀도의 클락으로 재정의(refine)하기 위한 정보를 포함한다. 0~300(27 MHz/90 KHz=300) 사이의 범위에 해당하는 클락 ㅋ칸운트(clock count) 값을 표시하기 위해서 9 비트가 필요하다.
마지막으로, MMT_Receiver_Buffering_Time(DR)(950)는 미디어 동기화를 위해 필요한 PTS(presentation timestamp) 정보를 MMT 패킷 수신 장치 측에서 계산해 낼 수 있게 하기 위해 필요한 수신단에서의 처리에 지연되는 프로세싱 시간(processing time)을 나타낸다. MMT 패킷 수신 장치에서는 MCR_Base_Ext_Bit(920), MCR_Base(930), 및 MCR_Ext(940)로 표현되는 90 kHz 또는 27 MHz의 MCR 정보를 활용하여 PTS를 관계식 PTS = MCR + DR을 통해 계산해 낼 수 있다. 이 관계식은 MCR 이후에 DR만큼 시간이 지난 시점을 PTS로 설정하여 프레젠테이션 유닛을 표현하는 것을 의미한다.
상기 MCR 타임스탬프 정보에 포함되는 각각의 필드 사이의 관계를 구체적으로 살펴보면, Timestamp_Control_Flag(910)는 기존의 IP 도메인에서 사용되었던 RTP 타임 스탬프와의 호환성을 고려하여 32 비트의 길이를 갖도록 설계하며, 기존의 MPEG TS의 33 비트 길이를 갖는 PCR_base 클락과의 호환성을 고려하여 1 비트 크기를 갖는 MCR_Base_Ext_Bit(920)를 추가적으로 적용할 수 있다. MCR_Base_Ext_Bit(920)는 그 값이 '1'인 경우, 90 kHz 세밀도의 클락으로부터 생성된 타임 스탬프의 33 비트 위치에서의 값이 1임을 의미하며 MCR_Base(930)에 232 만큼의 클락 값을 더해 주어 최종적인 타임 스탬프 값을 표시할 수 있다. 즉, Timestamp = MCR_Base + 232 x MCR_Base_Ext_Bit로 그 값을 계산할 수 있다.
수신측에서는 MCR_Base(930)와 MCR_Base_Ext_Bit(920)로 구성된 타임 스탬프 값을 활용하여 송신단과 수신단간의 시스템 클락 록킹(system clock locking)이 가능해지며, IP 네트워크에서 발생 가능한 지터(jitter) 추정 및 RTT(round trip time)를 계산하는 데에도 활용할 수 있다. 한편, 타임 스탬프(timestamp) 값의 획득을 위해 사용되는 시스템 클락은 RTP 타임 스탬프와 MPEG TS의 베이스 PCR 클락(base PCR clock)이 90 kHz 세밀도의 시스템 클락을 채택하고 있음을 고려하여 MMT에서도 기본적으로 90 kHz 시스템 클락을 사용한다. 그리고, MPEG 시스템의 PCR_Ext의 경우처럼 27 MHz 의 시스템 클락으로 세밀도를 재정의시킬 필요가 있는 경우에는 Timestamp_Control_Flag(910)를 통하여 9 비트 길이의 MCR_Ext(940)를 추가적으로 사용할 수 있다. 이상의 타임 스탬프 관련 헤더 필드 구조를 MMT에 적용함으로써 기존의 32 비트 체계의 RTP 타임 스탬프와 42 비트 체계의 PCR 타임 스탬프들을 위한 시간 표현 매카니즘과 역호환성(backward compatibility)을 유지할 수 있다.
상기와 같은 MCR 타임 스탬프 정보의 C-코드 형식의 수도 코드는 다음과 같이 표현될 수 있다.
MCR_timestamp( ) {
if(Timestamp_Control_Flag=='00') {
MCR_Base_Ext_Bit ; (1 bit)
MCR_Base ; (32 bits)
}
else if(Timestamp_Control_Flag=='01') {
MCR_Base_Ext_Bit ; (1 bit)
MCR_Base ; (32 bits)
MCR_Ext ; (9 bits)
}
else if(Timestamp_Control_Flag=='10') {
MCR_Base_Ext_Bit ; (1 bit)
MCR_Base ; (32 bits)
MMT_Receiver_Buffering_Time; (20 bits)
}
else {
MCR_Base_Ext_Bit ; (1 bit)
MCR_Base ; (32 bits)
MCR_Ext ; (9 bits)
MMT_Receiver_Buffering_Time; (20 bits)
}
}
도 10은 본 발명의 일 실시예에 따른 MMT 시스템에서의 패킷 수신 장치의 MMT 디패킷화부를 개략적으로 나타낸 블록도이다. 도 10에 도시된 바와 같이, 본 발명의 일 실시예에 따른 패킷 수신 장치의 MMT 디패킷화부는 M-유닛 생성부(1010), 프레젠테이션 유닛 생성부(1020)를 포함하고, 수신기 버퍼(1030)에 데이터를 저장할 수 있다.
도 10을 참조하면, M-유닛 생성부(1010)는 수신된 MMT 패킷을 기반으로 M-유닛을 생성한다. 수신된 MMT 패킷의 D.1 레이어에는 네트워크 지터 측정 및 미디어 동기화를 위한 타임 스탬프 정보인 MCR 정보가 포함되어 있기 때문에, 이를 분석하여 동기화 정보를 추출할 수 있다. 특히, 상기 MCR 정보에 포함된 MCR_Base_Ext_Bit와 MCR_Base를 기반으로 송신단과 수신단 간의 시스템 클록 록킹을 수행할 수 있다. 그리고, IP 네트워크에서 발생 가능한 지터를 추정할 수 있고, RTT를 계산할 수 있다. 또한, MMT와 RTP 프로토콜간의 클록 세밀도 차이에 의한 구조적 문제를 해결하기 위해, MCR_Ext 값을 이용하여 시스템 클락의 세밀도를 재정희할 수 있다.
프레젠테이션 유닛 생성부(1020)는 M-유닛 생성부(1010)에서 생성된 M-유닛을 기반으로 디캡슐화를 수행하여 미디어 프래그먼트 유닛을 생성하고, 이를 디코딩하여 프레젠테이션 유닛을 생성할 수 있다. 프레젠테이션 유닛은 원하는 표현 시간에 표현되야 한다. 이를 위해, E.3 레이어의 헤더에 포함된 PTS 정보를 참조할 수 있다. 또한, 프레젠테이션 유닛 생성부(1020)는 상기 PTS 정보와 MMT 패킷의 수신되는 순간의 상기 MCR 정보의 타임 스탬프가 가리키는 시점과의 차이를 계산하여 차이와 수신단에서의 처리에 소요되는 지연 시간이 동일하도록 제어하는 지연 시간 제어 정보를 생성할 수 있다. 지연 시간 제어 정보를 기반으로 수신기 버퍼(1030)에서의 버퍼링 시간을 조절할 수 있다.
수신기 버퍼(1030)는 프레젠테이션 유닛, 미디어 프래그먼트 유닛, M-유닛 및 MMT 패킷 중 적어도 어느 하나를 저장한다. 수신기 버퍼(1030)는 비디오 버퍼, 오디오 버퍼 및 재정렬 버퍼 등 다양한 버퍼를 포함하는 개념일 수 있다. 여기서 재정렬 버퍼는 프레젠테이션 유닛 중 B-픽처를 포함하고 있는 경우, 픽처 간의 순서가 변경되어야 하므로, 관련된 픽처를 저장하고 있고, 그 순서를 재정렬한다. 또한, 각각의 버퍼(1030)는 상기 PTS 정보를 파싱하여 파악된 상기 프레젠테이션 유닛의 표현을 위한 시간을 고려하여 적절한 크기를 가질 수 있다.
도 11은 본 발명의 다른 실시예에 따른 MMT 시스템에서의 패킷 수신 장치의 MMT 디패킷화부와 MPEG-2 TS 패킷들을 위한 수신기 버퍼 모델과의 연동 관계를 설명하기 위한 도면이다. 도 11에 도시된 바와 같이, 수신되는 MMT 패킷은 디지터링부(1110)를 통해 디지터링되고, 디패킷화부(1120)를 통해 MPEG-2 TS 패킷으로 디패킷화되며, MPEG-2 T-STD 모델(1130)에 의해 지연 처리를 완료할 수 있다.
도 11을 참조하면, MMT 패킷은 페이로드에 다수의 MPEG-2 TS 패킷을 포함할 수 있고, MPEG-2 TS 패킷은 상기한 바와 같이, 디지털 방송 서비스를 위해 사용되도록 개발되어 일반적으로 IP 기반의 패킷 교환 네트워크에 비해 전송 지연이 비교적 짧고 일정한 회선 교환 네트워크를 기반으로 하여 전송될 수 있다.
따라서, MMT 패킷을 MPEG-2 TS 패킷으로 변환함으로써 기존에 MPEG-2 TS 패킷의 지연 처리를 담당하는 MPEG-2 T-STD 모델(1130)를 활용할 수 있다. 이를 통해 역호환성을 제고시킬 수 있다.
디지터링부(1110)는 MCR 타임 스탬프 정보를 기반으로 네트워크 지터를 계산함으로써 적절한 디지터 버퍼의 크기를 산출하고 이를 통해 디지터링된 MMT 패킷을 생성한다.
디패킷화부(1120)는 단순하게 MMT 패킷을 MPEG-2 TS 패킷으로 변환하는 기능을 수행한다. 디패킷화부(1120)를 통과한 패킷은 디지터링된 MPEG-2 TS 패킷이 된다.
MPEG-2 T-STD 모델(1130)은 기본적으로 TS 타이밍 버퍼 모델을 이용하여 전송 지연을 처리하는 구조를 가지고 TS 패킷에 대한 지연 처리를 수행할 수 있다.
이상 도면 및 실시예를 참조하여 설명하였지만, 본 발명의 보호범위가 상기 도면 또는 실시예에 의해 한정되는 것을 의미하지는 않으며 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (20)

  1. MMT(MPEG Media Transport) 시스템에서 패킷을 전송하는 장치에 있어서,
    입력되는 프레젠테이션 유닛(presentation unit)을 기반으로 MMT 패킷을 생성하는 MMT 패킷화부를 포함하되,
    상기 MMT 패킷화부는 E 레이어의 헤더에 상기 프레젠테이션 유닛의 표현(presentation) 시간을 가리키는 타이밍 정보인 PTS(Presentation Time Stamp) 정보 및 D 레이어의 헤더에 네트워크 지터 측정 및 미디어 동기화를 위한 정보를 포함하는 타임스탬프 정보인 MCR(MMT Clock Reference) 정보 중 적어도 어느 하나를 포함하여 상기 MMT 패킷을 생성하는 것을 특징으로 하는 MMT 시스템에서의 패킷 전송 장치.
  2. 제 1 항에 있어서,
    상기 PTS 정보는 상기 MMT 패킷의 E.3 레이어의 헤더에 삽입되고, 상기 MCR 정보는 상기 MMT 패킷의 D.1 레이어의 헤더에 삽입되는 것을 특징으로 하는 MMT 시스템에서의 패킷 전송 장치.
  3. 제 1 항에 있어서,
    상기 MCR 정보는 상기 프레젠테이션 유닛이 상기 패킷 전송 장치에 입력되는 순간의 타임 스탬프 값과 상기 패킷 전송 장치에서의 처리에 소요되는 지연 시간을 더함으로써 생성되는 것을 특징으로 하는 MMT 시스템에서의 패킷 전송 장치.
  4. 제 1 항에 있어서, 상기 MCR 정보는
    상기 타임 스탬프의 클락 세밀도와 관련된 정보 및 상기 MCR 정보의 용도와 관련된 정보를 포함하는 Timestamp_Control_Flag 정보를 포함하고, 상기 Timestamp_Control_Flag 정보는,
    상기 타임 스탬프의 클락 세밀도를 나타내는 정보;
    상기 타임 스탬프의 용도가 네트워크 지터 및 RTT 계산 목적인지 미디어 동기화의 지원 목적인지를 나타내는 정보; 및
    상기 MCR 정보에 포함된 복수의 정보 중 어느 정보가 상기 D 레이어의 패킷 헤더에 존재하는지를 나타내는 정보를 포함하는 것을 특징으로 하는 MMT 시스템에서의 패킷 전송 장치.
  5. 제 1 항에 있어서, 상기 MCR 정보는
    상기 타임 스탬프의 33번째 위치에서의 값을 나타내는 MCR_Base_Ext_Bit 정보;
    클락 세밀도가 90kHz의 클락으로부터 생성된 타임스탬프의 하위 32 비트 값을 나타내는 MCR_Base 정보;
    클락 세밀도가 90kHz의 클락을 클락 세밀도가 27MHz의 클락으로 재정의하기 위해 필요한 클락 카운트(clock count) 값을 나타내는 MCR_Ext 정보; 및
    상기 PTS 정보를 수신단에서 계산함에 있어서, 상기 수신단에서의 처리에 의해 지연되는 버퍼링 시간을 나타내는 MMT_Receiver_Buffering_Time 정보를 포함하는 것을 특징으로 하는 MMT 시스템에서의 패킷 전송 장치.
  6. 제 5 항에 있어서,
    상기 MCR 정보에 포함된, 상기 타임 스탬프의 클락 세밀도 및 상기 MCR 정보의 용도 관련 정보인 Timestamp_Control_Flag 정보는 2비트, 상기 MCR_Base_Ext_Bit 정보는 1비트, 상기 MCR_Base 정보는 32비트, 상기 MCR_Ext 정보는 9 비트, 상기 MMT_Receiver_Buffering_Time 정보는 20비트의 크기를 갖는 것을 특징으로 하는 MMT 시스템에서의 패킷 전송 장치.
  7. 제 1 항에 있어서,
    상기 MCR 정보의 타임 스탬프 값은 상기 D 레이어의 패킷의 페이로드의 첫 번째 바이트의 샘플링 순간(sampling instant)에 해당되는 클락 값을 나타내고, 상기 D 레이어의 패킷에 실려있는 MPEG TS 패킷의 헤더에 기록된 MCR 정보를 활용하여 인터폴레이션(interpolation)을 통해 유도하여 생성되는 것을 특징으로 하는 MMT 시스템에서의 패킷 전송 장치.
  8. 제 1 항에 있어서,
    상기 PTS 정보는 상기 프레젠테이션 유닛이 상기 패킷 전송 장치에 입력되는 순간의 타임 스탬프 값과 상기 패킷 전송 장치에서의 처리에 소요되는 지연 시간, 채널을 통한 전송에 소용되는 지연 시간 및 수신단에서의 처리에 소요되는 지연 시간을 더하여 생성되는 것을 특징으로 하는 MMT 시스템에서의 패킷 전송 장치.
  9. 제 1 항에 있어서, 상기 MMT 패킷화부는
    상기 PTS 정보가 상기 프레젠테이션 유닛마다 항상 일정한 간격의 값으로 유지하도록, 상기 패킷 전송 장치에서의 지연과의 관계를 고려하여 상기 PTS 정보를 생성하는 것을 특징으로 하는 MMT 시스템에서의 패킷 전송 장치.
  10. 제 1 항에 있어서, 상기 PTS 정보는
    상기 프레젠테이션 유닛을 기반으로 생성된 M-유닛이 시간 특정 데이터 유닛(timed data unit) 또는 비-시간 특정 데이터 유닛(non-timed data unit)을 포함하는지와 관련된 정보를 포함하는 Timed_Data_Flag 정보를 포함하는 것을 특징으로 하는 MMT 시스템에서의 패킷 전송 장치.
  11. 제 10 항에 있어서, 상기 PTS 정보는
    상기 MMT 패킷의 E 레이어 헤더에 상기 PTS 정보가 존재하는지를 나타내는 PTS_Control_Flag 정보를 포함하고,
    상기 Timed_Data_Flag 정보는 상기 PTS_Control_Flag 정보의 존재 여부 관련 정보를 포함하는 것을 특징으로 하는 MMT 시스템에서의 패킷 전송 장치.
  12. 제 1 항에 있어서, 상기 PTS 정보는
    클락 세밀도(clock resolution)가 90kHz일 때, 클락의 33번째 비트에서의 값과 관련된 정보인 PTS_Base_Ext_Bit 정보; 및
    상기 클락 세밀도가 90kHz일 때, 상기 PTS 정보의 하위 32 비트 값과 관련된 정보인 PTS_Base 정보를 포함하는 것을 특징으로 하는 MMT 시스템에서의 패킷 전송 장치.
  13. 제 1 항에 있어서,
    상기 PTS 정보에 포함된, 상기 프레젠테이션 유닛을 기반으로 생성된 M-유닛이 시간 특정 데이터(timed data) 또는 비-시간 특정 데이터(non-timed data)를 포함하는지와 관련된 정보를 포함하는 Timed_Data_Flag 정보는 1비트, 상기 MMT 패킷의 E 레이어 헤더에 상기 PTS 정보가 존재하는지를 나타내는 PTS_Control_Flag 정보는 1비트, 클락 세밀도(clock resolution)가 90kHz일 때, 클락의 33번째 비트에서의 값과 관련된 정보인 PTS_Base_Ext_Bit 정보는 1비트, 상기 클락 세밀도가 90kHz일 때, 상기 PTS 정보의 하위 32 비트 값과 관련된 정보인 PTS_Base 정보는 32비트의 크기를 갖는 것을 특징으로 하는 MMT 시스템에서의 패킷 전송 장치.
  14. MMT(MPEG Media Transport) 시스템에서 패킷을 전송하는 방법에 있어서,
    프레젠테이션 유닛(presentation unit)을 기반으로 MMT 패킷을 생성하는 MMT 패킷화 단계를 포함하되,
    상기 MMT 패킷화 단계는 미디어 동기화를 위한 타임 스탬프 정보를 제공하기 위해 E 레이어의 헤더에 상기 프레젠테이션 유닛의 표현(presentation) 시간을 가리키는 타이밍 정보인 PTS(Presentation Time Stamp) 정보 및 D 레이어의 헤더에 네트워크 지터 측정 및 미디어 동기화를 위한 타임스탬프 정보인 MCR(MMT Clock Reference) 정보 중 적어도 어느 하나를 포함하여 상기 MMT 패킷을 생성하는 단계를 포함하는 것을 특징으로 하는 MMT 시스템에서의 패킷 전송 방법.
  15. MMT(MPEG Media Transport) 시스템에서 패킷을 수신하는 장치에 있어서,
    수신된 MMT 패킷을 디패킷화하여 프레젠테이션 유닛(presentation unit)을 생성하는 프레젠테이션 유닛 생성부를 포함하되,
    상기 MMT 디패킷화부는 상기 MMT 패킷의 E 레이어의 헤더에 포함된 상기 프레젠테이션 유닛의 표현(presentation) 시간을 가리키는 타이밍 정보인인 PTS(Presentation Time Stamp) 정보 및 D 레이어의 헤더에 포함된 네트워크 지터 측정 및 미디어 동기화를 위한 타임스탬프 정보인 MCR(MMT Clock Reference) 정보 중 적어도 어느 하나를 기반으로 동기화 정보를 생성하는 것을 특징으로 하는 MMT 시스템에서의 패킷 수신 장치.
  16. 제 15 항에 있어서, 상기 MMT 디패킷화부는
    상기 PTS 정보와 상기 수신된 MMT 패킷의 수신되는 순간의 상기 MCR 정보의 타임 스탬프가 가리키는 시점과의 차이를 계산하여 상기 차이와 상기 패킷 수신 장치에서 처리에 소요되는 지연 시간이 동일하도록 제어하는 지연 시간 제어 정보를 생성하는 것을 특징으로 하는 MMT 시스템에서의 패킷 수신 장치.
  17. 제 15 항에 있어서,
    상기 MMT 패킷이 상기 프레젠테이션 유닛으로 표현(presentation)되기까지의 데이터를 저장하고 있는 버퍼를 더 포함하되,
    상기 버퍼는 상기 PTS 정보를 파싱하여 파악된 상기 프레젠테이션 유닛의 표현(presentation)을 위한 시간을 고려하여 적절한 크기를 갖는 것을 특징으로 하는 MMT 시스템에서의 패킷 수신 장치.
  18. 제 15 항에 있어서, 상기 MMT 디패킷화부는
    상기 MCR 정보에 포함된, 클락 세밀도가 90kHz의 클락으로부터 생성된 타임스탬프의 하위 32 비트 값을 나타내는 MCR_Base 정보와 상기 타임 스탬프의 33번째 위치에서의 값을 나타내는 MCR_Base_Ext_Bit 정보의 타임 스탬프 값을 활용하여 송신단과 상기 패킷 수신 장치 간의 시스템 클락 록킹(locking)을 수행하고, 네트워크에서 발생 가능한 지터(jitter) 추정 및 RTT(Round trip time) 계산을 수행하는 것을 특징으로 하는 MMT 시스템에서의 패킷 수신 장치.
  19. MMT(MPEG Media Transport) 시스템에서 패킷을 수신하는 방법에 있어서,
    수신된 MMT 패킷을 디패킷화하여 프레젠테이션 유닛(presentation unit)을 생성하는 MMT 디패킷화 단계를 포함하되,
    상기 MMT 디패킷화 단계는 상기 MMT 패킷의 E 레이어의 헤더에 포함된 상기 프레젠테이션 유닛의 표현(presentation) 시간을 가리키는 타이밍 정보인인 PTS(Presentation Time Stamp) 정보 및 D 레이어의 헤더에 포함된 네트워크 지터 측정을 위한 타임스탬프 정보인 MCR(MMT Clock Reference) 정보 중 적어도 어느 하나를 기반으로 동기화 정보를 생성하는 단계를 포함하는 것을 특징으로 하는 MMT 시스템에서의 패킷 수신 방법.
  20. 제 19 항에 있어서, 상기 MMT 디패킷화 단계는
    상기 PTS 정보와 상기 수신된 MMT 패킷의 수신되는 순간의 상기 MCR 정보의 타임 스탬프가 가리키는 시점과의 차이를 계산하여 상기 차이와 상기 패킷 수신 장치에서 처리에 소요되는 지연 시간이 동일하도록 제어하는 지연 시간 제어 정보를 생성하는 단계를 포함하는 것을 특징으로 하는 MMT 시스템에서의 패킷 수신 방법.


KR1020120076394A 2011-07-13 2012-07-13 엠엠티 시스템에서의 패킷 전송 장치 및 방법, 및 패킷 수신 장치 및 방법 KR20130009670A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/KR2012/005585 WO2013009132A2 (ko) 2011-07-13 2012-07-13 엠엠티 시스템에서의 패킷 전송 장치 및 방법, 및 패킷 수신 장치 및 방법

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020110069537A KR20120084246A (ko) 2011-01-19 2011-07-13 Mpeg 미디어 전송방법
KR1020110069537 2011-07-13

Publications (1)

Publication Number Publication Date
KR20130009670A true KR20130009670A (ko) 2013-01-23

Family

ID=47845649

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120076394A KR20130009670A (ko) 2011-07-13 2012-07-13 엠엠티 시스템에서의 패킷 전송 장치 및 방법, 및 패킷 수신 장치 및 방법

Country Status (1)

Country Link
KR (1) KR20130009670A (ko)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014116060A1 (ko) * 2013-01-24 2014-07-31 한국전자통신연구원 유연한 mmt 애셋 송수신 방법 및 그 장치
WO2015060560A1 (ko) * 2013-10-23 2015-04-30 한국전자통신연구원 Mmt 오버헤드 감축형 페이로딩 장치 및 방법
KR20150047083A (ko) * 2013-10-23 2015-05-04 한국전자통신연구원 수신품질피드백 메시지를 이용한 mmt 버퍼 모델 관리 장치 및 방법
CN105009595A (zh) * 2013-03-14 2015-10-28 索尼公司 发送设备、发送方法、接收设备以及接收方法
WO2016129953A1 (en) * 2015-02-13 2016-08-18 Samsung Electronics Co., Ltd. Method and apparatus for converting mmtp stream to mpeg-2ts
WO2017061792A1 (ko) * 2015-10-07 2017-04-13 엘지전자(주) 방송 신호 송수신 장치 및 방법
US9635394B2 (en) 2013-01-24 2017-04-25 Electronics And Telecommunications Research Institute Method and device for flexible MMT asset transmission and reception
KR20170133805A (ko) * 2016-05-26 2017-12-06 삼성전자주식회사 Mmt 네트워크 시스템에서 미디어 시간 정보를 전송 하는 방법 및 장치
KR20190046155A (ko) 2017-10-25 2019-05-07 (주) 엠플로 Mpeg 미디어 전송 프로토콜의 데이터 분석기
KR20190046154A (ko) 2017-10-25 2019-05-07 (주) 엠플로 Mpeg 미디어 전송 프로토콜의 데이터 수신기

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9635394B2 (en) 2013-01-24 2017-04-25 Electronics And Telecommunications Research Institute Method and device for flexible MMT asset transmission and reception
WO2014116060A1 (ko) * 2013-01-24 2014-07-31 한국전자통신연구원 유연한 mmt 애셋 송수신 방법 및 그 장치
KR20190136131A (ko) * 2013-03-14 2019-12-09 소니 주식회사 송신 장치, 송신 방법, 수신 장치 및 수신 방법
CN105009595B (zh) * 2013-03-14 2019-09-27 索尼公司 发送设备、发送方法、接收设备以及接收方法
RU2642834C2 (ru) * 2013-03-14 2018-01-29 Сони Корпорейшн Передающее устройство, способ передачи, приемное устройство и способ приема
EP2975851A4 (en) * 2013-03-14 2016-10-19 Sony Corp TRANSMISSION APPARATUS, TRANSMISSION METHOD, RECEIVING APPARATUS, AND RECEIVING METHOD
US10862638B2 (en) 2013-03-14 2020-12-08 Sony Corporation Transmission apparatus, transmission method, reception apparatus, and reception method
EP3745728A1 (en) * 2013-03-14 2020-12-02 Sony Corporation Transmission apparatus, transmission method, reception apparatus and reception method
KR20170077285A (ko) * 2013-03-14 2017-07-05 소니 주식회사 송신 장치, 송신 방법, 수신 장치 및 수신 방법
KR20200040941A (ko) * 2013-03-14 2020-04-20 소니 주식회사 송신 장치, 송신 방법, 수신 장치 및 수신 방법
CN105009595A (zh) * 2013-03-14 2015-10-28 索尼公司 发送设备、发送方法、接收设备以及接收方法
US9876616B2 (en) 2013-03-14 2018-01-23 Sony Corporation Transmission apparatus, transmission method, reception apparatus, and reception method
US11075728B2 (en) 2013-03-14 2021-07-27 Sony Corporation Transmission apparatus, transmission method, reception apparatus, and reception method
WO2015060560A1 (ko) * 2013-10-23 2015-04-30 한국전자통신연구원 Mmt 오버헤드 감축형 페이로딩 장치 및 방법
KR20150047083A (ko) * 2013-10-23 2015-05-04 한국전자통신연구원 수신품질피드백 메시지를 이용한 mmt 버퍼 모델 관리 장치 및 방법
WO2016129953A1 (en) * 2015-02-13 2016-08-18 Samsung Electronics Co., Ltd. Method and apparatus for converting mmtp stream to mpeg-2ts
KR20170116008A (ko) * 2015-02-13 2017-10-18 삼성전자주식회사 Mmtp 스트림을 mpeg-2ts로 변환하는 방법 및 장치
US10085051B2 (en) 2015-02-13 2018-09-25 Samsung Electronics Co., Ltd. Method and apparatus for converting MMTP stream to MPEG-2TS
US10440447B2 (en) 2015-10-07 2019-10-08 Lg Electronics Inc. Broadcast signal transmission/reception device and method
WO2017061792A1 (ko) * 2015-10-07 2017-04-13 엘지전자(주) 방송 신호 송수신 장치 및 방법
US10945050B2 (en) 2015-10-07 2021-03-09 Lg Electronics Inc. Broadcast signal transmission/reception device and method
KR20170133805A (ko) * 2016-05-26 2017-12-06 삼성전자주식회사 Mmt 네트워크 시스템에서 미디어 시간 정보를 전송 하는 방법 및 장치
KR20190046154A (ko) 2017-10-25 2019-05-07 (주) 엠플로 Mpeg 미디어 전송 프로토콜의 데이터 수신기
KR20190046155A (ko) 2017-10-25 2019-05-07 (주) 엠플로 Mpeg 미디어 전송 프로토콜의 데이터 분석기

Similar Documents

Publication Publication Date Title
KR20130009670A (ko) 엠엠티 시스템에서의 패킷 전송 장치 및 방법, 및 패킷 수신 장치 및 방법
KR102049907B1 (ko) Mmt 시스템을 위한 미디어 데이터 전송 장치 및 방법, 그리고 미디어 데이터 수신 장치 및 방법
US20150181003A1 (en) Method and apparatus for transmitting and receiving packets in hybrid transmission service of mmt
JP6302274B2 (ja) 送信装置及び受信装置
US7869420B2 (en) Method and system for in-band signaling of multiple media streams
US11070327B2 (en) Method and apparatus for re-transmitting MMT packet and method and apparatus for requesting MMT packet re-transmission
KR102026266B1 (ko) 부호화된 미디어 데이터를 전송하는 장치에서의 네트워크 지터 추정 방법
KR20130078643A (ko) Mmt 복합 전달 서비스에서 mmt 패킷 스트림 동기화를 위한 mmt 제어 계층 시그널링을 이용한 타이밍 정보 제공 방법 및 mmt 패킷 스트림 동기화 방법
KR101151390B1 (ko) 송신 시스템에서 패킷을 송신하기 위한 방법
JP5300278B2 (ja) ネットワークジッターを測定するメディアレートを検出する方法
KR101180540B1 (ko) 스트리밍 서비스 송/수신 장치 및 방법
JP4647669B2 (ja) Ipを介してmpegストリームを伝送する方法、並びに、対応する装置、受信方法及び受信器
JP2012513139A (ja) 外部のコプロセッサを有するマルチプレクサにおいてトランスポートストリームを同期させる方法
JP2010531087A (ja) 一定のビットレートのストリームの伝送のためのシステム及び方法
KR20130009671A (ko) 엠엠티 시스템에서의 패킷 전송 장치 및 방법, 및 패킷 수신 장치 및 방법
Seo et al. A new timing model design for MPEG Media Transport (MMT)
KR101920051B1 (ko) Mmt 복합 전달 서비스에서 mmt 패킷 스트림 동기화를 위한 타이밍 정보 제공 방법 및 mmt 패킷 스트림 동기화 방법
WO2013009131A2 (ko) 엠엠티 시스템에서의 패킷 전송 장치 및 방법, 및 패킷 수신 장치 및 방법
WO2013009132A2 (ko) 엠엠티 시스템에서의 패킷 전송 장치 및 방법, 및 패킷 수신 장치 및 방법
KR20130032843A (ko) Mmt 시스템을 위한 미디어 데이터 전송 장치 및 방법, 그리고 미디어 데이터 수신 장치 및 방법
KR20120084246A (ko) Mpeg 미디어 전송방법
KR20130138694A (ko) 하나 또는 그 이상의 액세스 유닛을 포함하는 mpu에서의 타이밍 정보 기술 방법
KR20130007993A (ko) 프레임별 전송 시간 정보 할당을 이용한 상호 의존성 프레임을 가지는 미디어 스트림의 전송 방법
JP2019524011A (ja) Mmtpパケットを送受信する方法及びその装置

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination