KR20150015542A - 멀티미디어 시스템에서 미디어 컨텐츠 전송 장치 - Google Patents

멀티미디어 시스템에서 미디어 컨텐츠 전송 장치 Download PDF

Info

Publication number
KR20150015542A
KR20150015542A KR1020150000130A KR20150000130A KR20150015542A KR 20150015542 A KR20150015542 A KR 20150015542A KR 1020150000130 A KR1020150000130 A KR 1020150000130A KR 20150000130 A KR20150000130 A KR 20150000130A KR 20150015542 A KR20150015542 A KR 20150015542A
Authority
KR
South Korea
Prior art keywords
payload
data
packet
mpu
header
Prior art date
Application number
KR1020150000130A
Other languages
English (en)
Other versions
KR102015963B1 (ko
Inventor
임영권
아이메드 부아지지
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Publication of KR20150015542A publication Critical patent/KR20150015542A/ko
Application granted granted Critical
Publication of KR102015963B1 publication Critical patent/KR102015963B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • 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/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/23424Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • 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/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/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/633Control signals issued by server directed to the network components or client
    • H04N21/6332Control signals issued by server directed to the network components or client directed to client
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Abstract

멀티미디어 시스템에서 미디어 컨텐츠 전송 방법 및 장치를 개시한다. 상기 방법은, 미디어 컨텐츠의 미디어 데이터를 적어도 하나의 서브 데이터 유닛을 포함하는 적어도 하나 이상의 데이터 유닛으로 구성하는 과정과, 패킷 헤더와 상기 데이터 유닛을 기반으로 생성된 데이터를 포함하는 페이로드로 구성된 트랜스포트 패킷을 송신하는 과정을 포함한다. 상기 패킷 헤더는 상기 페이로드 내에 포함되는 상기 데이터의 데이터 타입을 지시하는 정보를 포함한다. 상기 데이터 타입은, 일반 오브젝트를 전송하기 위한 데이터가 상기 페이로드에 포함됨을 알려주는 제1 페이로드 타입과, 미디어-인식 방식으로 상기 데이터 유닛을 분할함으로써 생성된 데이터가 상기 페이로드에 포함됨을 알려주는 제2 페이로드 타입과, 하나 이상의 제어 메시지가 상기 페이로드에 포함됨을 알려주는 제3 페이로드 타입과, 에러 정정 복구 심볼이 상기 페이로드에 포함됨을 알려주는 제4 페이로드 타입 중 어느 하나이다.

Description

멀티미디어 시스템에서 미디어 컨텐츠 전송 장치{APPARATUS FOR TRANSMITTING MEDIA CONTENT IN MULTIMEDIA SYSTEM}
본 출원은 멀티미디어 시스템에서 미디어 데이터 송신을 위한 장치에 관한 것이다.
엠펙(Moving Picture Experts Group: MPEG) 미디어 트랜스포트(MPEG media transport: MMT)는 이종 IP(Internet Protocol) 네트워크 환경들을 통한 멀티미디어 서비스(multimedia service)에 대한 코딩된 미디어 데이터(media data)의 전달을 위한 기술들을 명시하는 디지털 컨테이너 스탠다드(digital container standard) 혹은 포맷(format)이다. 전달된 코딩된 미디어 데이터는 지정된 시간에서 동기화된 디코딩과 데이터의 특정 유닛의 프리젠테이션(presentation)을 요구하는 시청각 미디어 데이터, 즉 타임드 데이터(timed data)와 상기 사용자에 의한 서비스의 컨텍스트(context) 혹은 인터액션(interaction)을 기반으로 임의의 시간에서 디코딩 및 제공되는 다른 타입(type)들의 데이터 모두를 포함한다.
새로운 패킷화 모드인 일반 파일 전달(Generic File Delivery: GFD) 모드가 상기 MMT 전달 기능에 도입된 바 있다. 그러나, MMTP로 상기 모드를 통합하는 것과 기존 페이로드 모드들과의 통합은 최적화되어 있지 않았다.
따라서, 미디어 데이터 송신에 대한 개선된 장치들 및 방법들에 대한 필요성이 대두되고 있다.
본 발명은 다운로딩 및 스트리밍을 지원할 수 있는 패킷 송신 프로토콜을 사용하여 트랜스포트 패킷들을 생성 및 프로세싱하는 방법 및 장치를 제공한다.
본 발명은 멀티미디어 시스템에서 미디어 컨텐츠를 전송하는 방법 및 장치를 제공한다.
본 발명의 일 실시예에 따른 장치는; 멀티미디어 시스템에서 미디어 컨텐츠 전송 장치에 있어서, 상기 미디어 컨텐츠의 미디어 데이터를 적어도 하나의 서브 데이터 유닛을 포함하는 적어도 하나 이상의 데이터 유닛으로 구성하는 제어부와, 패킷 헤더와 상기 데이터 유닛의 적어도 일부 데이터를 포함하는 페이로드로 구성된 트랜스포트 패킷을 수신 엔터티로 송신하는 송신부를 포함하며, 상기 패킷 헤더는 상기 페이로드 내에 포함되는 상기 데이터의 데이터 타입을 지시하는 정보를 포함하고, 상기 데이터 타입은, 일반 오브젝트(generic object)를 전송하기 위한 데이터가 상기 페이로드에 포함됨을 알려주는 제1 페이로드 타입과, 미디어-인식 방식(media-aware manner)으로 상기 데이터 유닛을 분할함으로써 생성된 데이터가 상기 페이로드에 포함됨을 알려주는 제2 페이로드 타입과, 하나 이상의 제어 메시지가 상기 페이로드에 포함됨을 알려주는 제3 페이로드 타입과, 에러 정정 복구 심볼이 상기 페이로드에 포함됨을 알려주는 제4 페이로드 타입 중 어느 하나임을 특징으로 한다.
하기의 본 게시의 구체적인 설명 부분을 처리하기 전에, 이 특허 문서를 통해 사용되는 특정 단어들 및 구문들에 대한 정의들을 설정하는 것이 효과적일 수 있다: 상기 용어들 “포함하다(include)” 및 “포함하다(comprise)”과 그 파생어들은 한정없는 포함을 의미하며; 상기 용어 “혹은(or)”은 포괄적이고 ‘및/또는’을 의미하고; 상기 구문들 “~와 연관되는(associated with)” 및 ““~와 연관되는(associated therewith)”과 그 파생어들은 포함하고(include), ~내에 포함되고(be included within), ~와 서로 연결되고(interconnect with), 포함하고(contain), ~내에 포함되고(be contained within), ~에 연결하거나 혹은 ~와 연결하고(connect to or with), ~에 연결하거나 혹은 ~와 연결하고(couple to or with), ~와 통신 가능하고(be communicable with), ~와 협조하고(cooperate with), 인터리빙하고(interleave), 병치하고(juxtapose), ~로 가장 근접하고(be proximate to), ~로 ~할 가능성이 크거나 혹은 ~와 ~할 가능성이 크고(be bound to or with), 가지고(have), 소유하고(have a property of) 등과 같은 것을 의미하고; 상기 용어 “제어기”는 적어도 하나의 동작을 제어하는 임의의 디바이스, 시스템, 혹은 그 부분을 의미하고, 상기와 같은 디바이스는 하드웨어, 펌웨어 혹은 소프트웨어, 혹은 상기 하드웨어, 펌웨어 혹은 소프트웨어 중 적어도 2개의 몇몇 조합에서 구현될 수 있다. 어떤 특정 제어기와 연관되는 기능성이라도 집중화되거나 혹은 분산될 수 있으며, 국부적이거나 원격적일 수도 있다는 것에 주의해야만 할 것이다. 특정 단어들 및 구문들에 대한 정의들은 이 특허 문서에 걸쳐 제공되고, 해당 기술 분야의 당업자는 많은 경우, 대부분의 경우가 아니라고 해도, 상기와 같은 정의들이 종래 뿐만 아니라 상기와 같이 정의된 단어들 및 구문들의 미래의 사용들에도 적용된다는 것을 이해해야만 할 것이다.
도 1은 본 게시의 다양한 실시예들이 구현될 수 있는 송신 시스템의 일 예를 도시하고 있는 도면이다;
도 2는 본 게시의 다양한 실시예들에 따른 MMT 패키지와 상기 MMT 패키지의 논리 구조를 도시하고 있는 도면이다;
도 3은 본 게시의 실시예에 따른 다른 애셋(asset)들로부터 미디어 프로세싱 유닛(MPU)들의 프리젠테이션(presentation)을 위한 프리젠테이션 정보 도큐먼트(presentation information document)에 의해 제공되는 타이밍의 일 예를 도시하고 있는 도면이다;
도 4는 본 게시의 다양한 실시예들에 따른 스트리밍 모드 페이로드 헤더(streaming mode payload header)에 대한 예시적인 구조를 도시하고 있는 도면이다;
도 5는 본 게시의 다양한 실시예들에 따른 타임드(timed) 미디어 프래그먼트 유닛(media fragment unit: MFU) 헤더에 대한 예시적인 구조를 도시하고 있는 도면이다;
도 6은 본 게시의 다양한 실시에들에 따른 논-타임드(non-timed) MFU 헤더에 대한 예시적인 구조를 도시하고 있는 도면이다;
도 7은 본 게시의 다양한 실시예들에 따른 시그널링 메시지 헤더(signaling message header)에 대한 예시적인 구조를 도시하고 있는 도면이다;
도 8은 본 게시의 다양한 실시예들에 따른 GFD 모드 패킷 구조에 대한 예시적인 구조를 도시하고 있는 도면이다;
도 9는 본 게시의 다양한 실시예들에 따른 MMT 패킷에 대한 예시적인 구조를 도시하고 있는 도면이다;
도 10은 본 게시의 다양한 실시예들에 따른 헤더 확장에 대한 예시적인 구조를 도시하고 있는 도면이다;
도 11은 본 게시의 다양한 실시예들에 따른 타임드 미디어 데이터의 패킷화의 예시적인 다이아그램을 도시하고 있는 도면이다;
도 12는 본 게시의 다양한 실시예들에 따른 논-타임드 미디어 데이터의 패킷화의 예시적인 다이아그램을 도시하고 있는 도면이다;
도 13은 본 게시의 다양한 실시예들에 따른 수신 엔터티에서 트랜스포트 패킷을 프로세싱하는 프로세스를 도시하고 있는 도면이다;
도 14는 본 게시의 다양한 실시예들에 따른 송신 엔터티에서 트랜스포트 패킷을 생성하는 프로세스를 도시하고 있는 도면이다;
도 15는 본 발명의 다양한 실시예들이 구현될 수 있는 전자 디바이스의 예를 도시하고 있는 도면이다.
하기에서 설명되는 도 1 내지 도 15와 이 특허 문서에서 본 게시의 기본 원칙들을 설명하기 위해 사용되는 다양한 실시예들은 오직 도시만을 위한 것이며, 본 게시의 범위를 제한하는 방식으로 이해되어서는 안 된다. 해당 기술 분야의 당업자들은 본 게시의 기본 원칙들이 적합하게 배열된 시스템 혹은 디바이스에서 구현될 수 있다는 것을 이해할 것이다.
MMT 코딩 및 미디어 전달은 여기에서 완전히 설명된 바와 같이 본 게시에 포함되는, “MPEG-H Systems, Text of ISO/IEC 2nd CD 23008-1 MPEG Media Transport”에서 논의된다. MMT는 인캡슐레이션(encapsulation)과, 전달(delivery) 및 시그널링(signaling)을 포함하는 3개의 기능 영역들을 정의한다.
인캡슐레이션 기능 영역은 MMT 컴플라이언트 엔터티(MMT compliant entity)에 의해 처리되는, 미디어 컨텐트(media content)와, MMT 패키지(MMT package) 및 포맷 데이터 유닛(format data unit)들의 논리 구조를 정의한다. MMT 패키지는 미디어 컨텐트와 적응적인 전달이 필요로 되는 정보를 제공하는 미디어 컨텐트 간의 관계를 포함하는 컴포넌트(component)들을 명시한다. 데이터 유닛들의 포맷은 상기 코딩된 미디어를 전달 프로토콜(delivery protocol)의 페이로드(payload)로서 저장되거나 혹은 운반되도록 인캡슐레이트하고, 저장과 운반간에 쉽게 변환되도록 정의된다.
전달 기능 영역은 어플리케이션 계층 프로토콜(application layer protocol)과 페이로드의 포맷을 정의한다. 어플리케이션 계층 프로토콜은 멀티미디어의 전달을 위한 일반적인 어플리케이션 계층 프로토콜들과 비교하여 MMT 패키지의 전달을 위해서, 멀티플렉싱(multiplexing)을 포함하는 향상된 특징들을 제공한다. 페이로드 포맷은 특정 미디어 타입 혹은 인코딩 방법에 상관없는(agnostic) 코딩된 미디어 데이터를 운반하기 위해 정의된다.
시그널링 기능 영역은 메시지들의 포맷을 정의하여 MMT 패키지들의 전달 및 소비를 관리한다. 소비 관리를 위한 메시지들은 MMT 패키지의 구조를 시그널하기 위해 사용되고, 전달 관리를 위한 메시지들은 페이로드 포맷의 구조 및 프로토콜의 구조를 시그널하기 위해 사용된다.
MMT는 오디오(audio)와, 비디오(video)와 같은 시간 연속적인 멀티미디어 및 위젯(widget)들과, 파일(file)들 등과 같은 다른 고정 컨텐트(static content)의 전달을 위한 새로운 프레임워크(framework)를 정의한다. MMT는 MMT 패키지의 수신 엔터티(receiving entity)로의 전달을 위한 프로토콜(즉, MMTP)를 명시한다. MMTP는 상기 프로토콜 헤더의 일부로서 MMTP 패키지의 송신 시간을 시그널한다. 이런 시간은 수신 엔터티가 각 입력 MMT 패킷의 송신 시간 및 수신 시간을 검사함으로써 디-지터링(de-jittering)을 수행하는 것을 가능하게 한다.
본 게시의 실시예들은 새로운 패킷화 모드인 GFD 모드가 MMT 전달 기능에 도입되었다는 것을 인식한다. GFD는 임의의 일반 파일의 송신을 가능하게 한다. 본 게시의 실시예들은 현재 MMT가 4개의 다른 패킷화 모드들: 미디어 프로세싱 유닛(media processing unit: MPU) 모드와, MPU 프래그먼트 모드와, 시그널링 메시지 모드와, 전달 에러 정정(forward error correction: FEC) 모드를 정의한다는 것을 인식한다. MPU 모드는 완전한 MPU를 전달하고, 트랜스포트 계층으로의 프래그멘테이션(fragmentation)을 포함(leave)한다. MPU 프래그먼트 모드는 MPU 전달을 위해 최적화되고, 패킷화는 MPU 프래그먼트 타입 및 특성들에 관한 수신 클라이언트(client)를 알려주는 미디어-인식 방식(media-aware manner)으로 수행된다. FEC 모드 및 시그널링 모드는 각각 FEC 복구 패킷(FEC repair packet)들을 전달하고 메시지들을 시그널링하기 위한 것이다. 여기서 FEC 복구 패킷은 하나 혹은 그 이상의 유실된 소스 패킷을 복구하기 위해 사용될 수 있는 데이터 조각을 포함한다.
본 게시의 실시예들은 전체 MPU가 오브젝트(object)로서 어떤 미디어-인식 패킷화도 없이 전달되기 때문에 MPU 모드가 GFD 모드의 서브-케이스(sub-case)로서 고려될 수 있다는 것을 인식한다. MPU에 대한 정보는 GFD 모드에서 오브젝트의 메타데이터(metadata)의 일부로서 전체적으로 전달될 수 있다. 따라서, 본 게시의 실시예들은 명확성을 위해 MPU 모드의 제거 및 MPU 프래그먼트 모드를 MPU 모드로 재명명하는 것을 제공한다. 결과적으로, MPU는 GFD 모드를 사용하여 일반 오브젝트로서 전달되거나 혹은 MPU 모드를 사용하여 독립적인 프래그먼트들의 집합으로서 전달될 수 있다.
본 게시의 실시예들은 패킷의 현재 페이로드 포맷이 다수개의 계층들을 통해 분할된다는 것을 인식한다. 메인(main) 페이로드 헤더는 각 페이로드 포맷을 위해 필요로 되고, MMTP 프로토콜 헤더에 대한 일대일 매핑(mapping)을 가진다. 본 게시의 실시예들은 일반 페이로드 헤더를 MMTP 프로토콜 헤더와 병합하고, 페이로드 타입을 기반으로 나머지 페이로드 헤더들을 생성하는 것을 인식한다. 일 예로, 프래그멘테이션 및 어그리게이션(aggregation)은 또한 일부 페이로드 타입들, 일 예로, FEC 및 GFD가 어그리게이션 및 프래그멘테이션을 필요로 하지 않기 때문에 페이로드 타입을 기반으로 한다. 본 게시의 실시예들은 또한 시그널링 메시지들 및 업데이트(update)들의 쉬운 식별을 가능하게 하는 메시지들의 시그널링을 위한 페이로드 타입을 제공한다. 또한, 페이로드 포맷은 시그널링 메시지들의 어그리게이션 및 프래그멘테이션을 가능하게 할 것이다.
도 1은 본 게시의 다양한 실시예들이 구현될 수 있는 송신 시스템(100)의 일 예를 도시하고 있는 도면이다.
도 1을 참조하면, 무선 시스템(100)은 송신 엔터티(101)와, 네트워크(105)와, 수신 엔터티들(110-116)과, 기지국(base station: BS)(102)과, 기지국(base station: BS)(103), 및 다른 유사한 기지국들 혹은 릴레이 스테이션(relay station)들(도시되어 있지 않음)과 같은 무선 송신 포인트들(일 예로, 진화된 노드 B(Evolved Node B: eNB)와, 노드 B)를 포함한다.
송신 엔터티(101)는 일 예로, 인터넷(Internet)과, 미디어 방송 네트워크, 혹은 IP-기반 통신 시스템이 될 수 있는 네트워크(105)를 통해 기지국(102) 및 기지국(103)과 통신하고 있다. 수신 엔터티들(110-116)은 네트워크(105) 및/혹은 기지국들(102, 103)을 통해 송신 엔터티(101)와 통신하고 있다. 일 예로, 수신 엔터티들(110-116)은 송신 엔터티(101)로부터의 다운로딩 및 스트리밍을 위해 미디어 데이터를 수신할 수 있다. 다양한 실시예들에서, 본 게시의 교시들에 따라, 송신 엔터티(101)는 MMTP 패킷들을 생성 및 송신할 수 있고, 수신 엔터티들(110-116) 중 하나 혹은 그 이상은 상기 MMTP 패킷들을 수신 및 프로세싱할 수 있다.
기지국(102)은 기지국(102)의 커버리지 영역(coverage area)(120) 내의 첫 번째, 다수의 수신 엔터티들(일 예로, 사용자 단말기(user equipment)와, 이동 전화기(mobile phone)와, 이동국(mobile station)과, 가입자 스테이션(subscriber station)로 네트워크(105)에 대한 무선 억세스(access)(기지국(101)을 통해)를 제공한다. 다수의 제1 수신 엔터티들은 소형 상점(small business: SB)에 위치할 수 있는 사용자 단말기(111)와, 기업(enterprise: E)에 위치할 수 있는 사용자 단말기(112)와, 와이파이(WiFi) 핫 스팟(hotspot: HS)에 위치할 수 있는 사용자 단말기(113)와, 제1 거주지(residence: R)에 위치할 수 있는 사용자 단말기(114)와, 제2 거주지(R)에 위치할 수 있는 사용자 단말기(115)와, 셀룰러 전화기와, 무선 통신 가능 랩탑(laptop)과, 무선 통신 가능 PDA와, 태블릿 컴퓨터(tablet computer) 등과 같은 이동 디바이스(mobile device: M)일 수 있는 사용자 단말기(116)를 포함한다.
기지국(103)은 기지국(103)의 커버리지 영역(125) 내에서 다수의 제2 사용자 단말기들에게 네트워크(105)에 대한 무선 억세스를 제공한다. 다수의 제2 사용자 단말기들은 사용자 단말기(115)와 사용자 단말기(116)를 포함한다. 일 실시예에서, 기지국들(101-103)은 OFDM(Orthogonal Frequency Division Multiplexing) 기술 혹은 OFDMA(OFDM Access) 기술을 사용하여 서로 통신할 수 있고, 사용자 단말기들(111-116)과 통신할 수 있다.
도 1에는 6개의 사용자 단말기들만이 도시되어 있으나, 시스템(100)은 추가적인 사용자 단말기에 대한 무선 광대역 및 네트워크 억세스를 제공할 수 있다. 사용자 단말기(115) 및 사용자 단말기(116)는 커버리지 영역(120) 및 커버리지 영역(125) 둘 다의 경계(edge)들에 위치한다. 사용자 단말기(115) 및 사용자 단말기(116) 각각은 기지국(102) 및 기지국(103) 둘 다와 통신하고, 해당 기술 분야의 당업자들에게 알려져 있는 바와 같이, 핸드오프 모드(handoff mode)에서 동작될 수 있다.
사용자 단말기들(111-116)은 네트워크(105)를 통해 멀티미디어 데이터 음성, 데이터, 비디오(video), 비디오 회의, 및/혹은 다른 서비스들에 억세스할 수 있다. 일 실시예에서, 사용자 단말기들(111-116) 중 하나 혹은 그 이상은 WiFi WLAN의 억세스 포인트(access point: AP)와 연관될 수 있다. 사용자 단말기(116)는 무선-가능한 랩탑 컴퓨터(laptop computer), 개인용 데이터 단말기(personal data assistant), 노트북(notebook), 휴대용 디바이스, 혹은 다른 무선-가능한 디바이스를 포함하는 다수의 이동 디바이스들 중 하나가 될 수 있다. 사용자 단말기(114) 및 사용자 단말기(115)는 일 예로, 무선-가능한 개인용 컴퓨터(personal computer: PC), 랩탑 컴퓨터, 게이트웨이(gateway), 혹은 다른 디바이스가 될 수 있다.
도 2는 본 게시의 다양한 실시예들에 따른 MMT 패키지(200) 및 상기 MMT 패키지(200)의 논리 구조를 도시하고 있는 도면이다.
도 2를 참조하면, MMT 패키지(200)는 하나 혹은 그 이상의 프리젠테이션 정보 도큐먼트(presentation information document)들(205)과, 연관된 트랜스포트 특성들(215)을 가질 수 있는 하나 혹은 그 이상의 애셋(asset)들(210)을 포함한다. 애셋(210)은 동일한 애셋 식별자(identification: ID)를 공유하는 하나 혹은 그 이상의 미디어 프로세싱 유닛(media processing unit: MPU)들(220)의 집합(collection)이다. 애셋(210)은 오디오, 혹은 비디오, 혹은 웹 페이지(web page)와 같은 인코딩된 미디어 데이터를 포함한다. 미디어 데이터는 타임드(timed) 혹은 논-타임드(non-timed)일 수 있다.
프리젠테이션 정보(Presentation information: PI) 도큐먼트(205)는 소비를 위한 애셋들(210) 중 공간 및 시간 관계를 특정하는 정보를 포함한다. 하이퍼텍스트 마크업 언어(hypertext markup language: HTML)와 구성 정보(composition information: CI) 도큐먼트들의 조합이 PI 도큐먼트(205)의 예들이다. 또한, PI 도큐먼트(205)는 패키지(200)에 포함되어 있는 애셋들(210)의 전달 순서를 결정하기 위해 사용될 수 있다. PI 도큐먼트(205)는 하나 혹은 그 이상의 메시지들로서 혹은 완전 도큐먼트로서 전달된다. 방송 전달의 경우에서, 서비스 제공자들은 프리젠테이션 정보 도큐먼트들(205)을 연속적으로 순환시키고, 순환이 수행될 주파수를 결정한다.
애셋(210)은 멀티미디어 프리젠테이션을 생성하기 위해 사용될 멀티미디어 데이터이다. 상기에서 설명된 바와 같이, 애셋(210)은 인코딩된 미디어 데이터를 전달하기 위해 동일한 애셋 ID를 공유하는 MPU들을 논리적으로 그룹화한 것이다. 애셋(210)의 인코딩된 미디어 데이터는 타임드 데이터 혹은 논-타임드 데이터가 될 수 있다. 타임드 데이터는 내재하는 타임 라인(timeline)을 가지고, 지정된 시간에서 데이터 유닛들의 동기화된 디코딩 및 프리젠테이션을 요구할 수 있는 인코딩된 미디어 데이터이다. 논-타임드 데이터는 서비스의 컨텍스트 혹은 사용자의 지시들을 기반으로 임의의 시간에서 디코딩될 수 있는 다른 타입들의 데이터이다.
단일 애셋(210)의 MPU들(220)은 타임드 혹은 논-타임드 미디어를 가진다. 타임드 미디어 데이터를 운반하는 동일한 애셋(210)의 2개의 MPU들(220)은 동일한 애셋(210)의 2개의 MPU들(220)의 프리젠테이션 시간에서 오버랩될 수 없다. 프리젠테이션의 지시가 없을 경우, 동일한 애셋(210)의 MPU들(220)은 동일한 애셋(210)의 MPU들(220)의 시퀀스 번호(sequence number)들에 따라 연속적으로 플레이 백(play back)될 수 있다. MMT 수신 엔터티의 프리젠테이션 엔진(engine)에 의해 개별적으로 소비될 수 있는 미디어 데이터의 타입은 개별 애셋(210)으로 고려될 수 있다. 개별 애셋(210)으로 고려될 수 있는 미디어 데이터 타입들의 예들은 오디오와, 비디오, 혹은 웹 페이지 미디어 데이터 타입들이다.
MPU(220)는 MMT 엔터티에 의해 프로세싱될 수 있고 다른 MPU들(220)로부터 독립적으로 프리젠테이션 엔진에 의해 소비될 수 있는 미디어 데이터 아이템(media data item)이다. MMT 엔터티에 의한 MPU(220)의 프로세싱은 인캡슐레이션(encapsulation)/디캡슐레이션(decapsulation) 및 패킷화(packetization)/역패킷화(depacketization)를 포함한다. MPU(220)의 소비는 미디어 프로세싱(일 예로, 인코딩(encoding)/디코딩(decoding)) 및 프리젠테이션을 포함한다. 패킷화 목적들을 위해서, MPU(220)는 억세스 유닛(access unit: AU) 보다 작을 수 있는 데이터 유닛들로 프래그먼트될 수 있다. MPU의 신택스(syntax) 및 시맨틱스(semantics)는 상기 MPU에서 운반되는 미디어 데이터의 타입을 기반으로 하지 않는다.
MPU(220)는 다른 스탠다드들, 일 예로, MPEG-4 어드밴스드 비디오 코딩(advanced video coding: AVC) 혹은 MPEG-2 트랜스포트 스트림(transport stream: TS)에 따라 포맷화된 데이터의 일부를 포함할 수 있다. 애셋 식별자(asset identification: asset_id) ‘Y’를 가지는 애셋을 기반으로 하는 asset_id ‘X’를 가지는 애셋에 대해서, asset_id ‘X’를 가지는 애셋의 m번째 MPU와 asset_id ‘Y’를 가지는 n번째 MPU는 ‘m’이 ‘n’과 동일하지 않을 경우마다, 즉 asset_id ‘X’를 가지는 애셋의 m번째 MPU에 포함되어 있는 어떤 샘플(sample)도 asset_id ‘Y’를 가지는 애셋의 n번째 MPU의 샘플 경계들에 의해 정의되는 시구간 내에 존재하지 않을 경우마다 오버랩되지 않는다.
추가적으로, 세그먼트 인덱스(segment index: 'sidx') 박스(box)가 존재할 경우, 'sidx' 박스에 의해 정의되는 미디어 구간들은 오버랩되지 않는다. 즉, MPU에 포함되어 있는 k번째 미디어 구간('sidx' box에 의해 정의되는)에 포함되어 있는 어떤 미디어 샘플도 ‘k’와 다른 ‘j’에 대해서 j번째 미디어 시구간(상기 'sidx' 박스에 의해 정의되는)의 샘플 경계들에 의해 정의되는 시구간 내에 존재하지 않는다. 'sidx' 박스가 존재하지 않을 경우, MPU 메타데이터 없이 asset_id ‘Y’를 가지는 애셋의 MPU의 j번째 MPU와 asset_id ‘X’를 가지는 애셋의 MPU의 j번째 MPU간의 연접(concatenation)은 유효한 MPU를 초래한다. 'sidx' 박스가 존재할 경우, asset_id ‘Y’를 가지는 j번째 MPU의 k번째 미디어 구간('sidx' 박스에 의해 정의되는)과 asset_id ‘Y’를 가지는 MPU의 메타데이터를 따르는 asset_id ‘X’를 가지는 애셋의 j번째 MPU의 k번째 미디어 구간('sidx' 박스에 의해 정의되는)의 연접은 유효한 MPU를 초래한다.
단일 MPU는 정수의 AU들 혹은 논-타임드 데이터를 포함한다. 즉, 타임드 데이터에 대해서, 단일 AU는 다수의 MPU들로 프래그먼트되지 않는다. 논-타임드 데이터에 대해서, 단일 MPU는 프리젠테이션 엔진에 의해 소비되는, 하나 혹은 그 이상의 논-타임드 아이템들을 포함한다. MPU는 연관되는 asset_id 및 시퀀스 번호에 의해 식별된다.
도 3은 본 게시의 실시예에 따라 다른 애셋들로부터 MPU들의 프리젠테이션에 대한 PI 도큐먼트에 의해 제공되는 타이밍(timing)의 일 예를 도시하고 있는 도면이다.
도 3을 참조하면, PI 도큐먼트는 MMT 수신 엔터티가 애셋 #1 및 애셋 #2의 MPU #1을 동시에 프리젠트(present)할 것이라는 것을 명시한다. 이후의 포인트에서, 애셋 #3으로부터의 MPU #1이 프리젠트될 것으로 스케쥴링된다. 마지막으로, 애셋 #1 및 애셋 #2의 MPU #2가 동기화되어 제공된다. MPU에 대해 명시된 프리젠테이션 시간은 MPU의 첫 번째 AU의 프리젠테이션 시간을 정의한다. 논-타임드 미디어 데이터를 포함하는 MPU는 1개의 데이터 아이템을 엔트리 포인트(entry point)로서 지정할 수 있다.
MFU들은 트랜스포트 목적들을 위해서 MPU의 미디어-인식 프래그멘테이션을 가능하게 한다. 이는 MMT 송신 엔터티가 수신측에서의 소비를 고려하여 MPU들의 프래그멘테이션을 수행하는 것을 허여한다. MFU는 타임드 미디어 데이터에 대해 AU보다 작을 수 있는 미디어 데이터 유닛을 포함하고, 상기 포함된 미디어 데이터는 미디어 디코더에 의해 프로세싱될 수 있다. MFU는 상기 운반되는 미디어 데이터의 경계들에서 정보를 포함하는 MFU 헤더를 포함한다. MFU의 신택스 및 시맨틱스는 MFU에서 운반되는 미디어 데이터의 타입과 독립적이다. MFU의 사이즈가 링크 계층 프레임(link layer frame)의 사이즈보다 클 경우, MFU는 다수의 링크 계층 프레임들로 프래그멘트될 수 있다.
MFU는 인코딩딘 미디어 포맷에 상관없는(agnostic) 방식으로 단일 AU 내의 MFU들간의 관계 정보 뿐만 아니라 동일한 MPU에 포함되어 있는 다른 MFU와 한 MFU를 식별하는 식별자를 포함한다. 단일 AU에 포함되어 있는 MFU들간의 종속 관계는 MFU들의 상대적 우선 순위들로서 설명된다. 상기 정보는 향상된 전달을 위해 하위 전달 계층(underlying delivery layer)들에 의해 사용될 수 있다. 일 예로, 전달 계층은 폐기 가능한 MFU들의 전달을 스킵(skip)하여 특정 환경들, 일 예로 네트워크의 특정 링크들 상의 불충분한 대역폭 하에서 QoS(Quality of Service)를 지원할 수 있다.
본 게시의 다양한 실시예들에 따르면, MMT 페이로드는 MMT 프로토콜(MMT protocol: MMTP)을 사용하여 애셋들과, 일반 오브젝트(object)들과, MMT 패키지의 소비를 위한 다른 정보를 패킷화 및 운반하기 위해 사용되는 일반 페이로드이다. MMT 페이로드는 MPU들과, 하나 혹은 그 이상의 일반 오브젝트들과, 시그널링 메시지(signaling message)들을 패킷화하기 위해 사용될 수 있다. MMT 페이로드는 MPU들의 하나 혹은 그 이상의 프래그먼트들과, 하나 혹은 그 이상의 시그널링 메시지들과, 일반 오브젝트들(완전 MPU들을 포함하는)과, 하나 혹은 그 이상의 복구 심볼들 등의 프래그먼트들을 운반할 수 있다. 페이로드의 타입은 하기 도 9에서 보다 구체적으로 설명될, 상기 MMTP 패킷 헤더에 포함되어 있는 타입(혹은 오브젝트 타입) 필드에 의해 지시된다.
각 페이로드 타입에 대해서, 타입 특정 페이로드 헤더(type specific payload header) 뿐만 아니라, 전달을 위한 단일 데이터 유닛이 정의된다. 일 예로, MPU(일 예로, MFU)의 프래그먼트는 MMT 페이로드가 MPU 프래그먼트들을 운반할 경우 단일 데이터 유닛으로 고려된다. MMT 프로토콜은 동일한 데이터 타입을 가지는 다수의 데이터 유닛들이 단일 페이로드로 어그리게이트(aggregate)할 수 있다. 또한, MMT 프로토콜은 단일 데이터 유닛을 다수의 패킷들로 프래그먼트할 수 있다.
MMT 페이로드는 페이로드 헤더 및 페이로드 데이터로 구성된다. 일부 데이터 타입들은 단일 데이터 유닛이 다수의 프래그먼트들로 분할되거나 혹은 데이터 유닛들의 집합이 단일 패킷에서 전달되는 경우에서의 프래그멘테이션 및 어그리게이션(aggregation)을 허여할 수 있다. 각 데이터 유닛은 페이로드의 타입을 기반으로 각 데이터 유닛 고유의 페이로드 헤더를 가질 수 있다. 페이로드 타입-특정 헤더를 요구하지 않는 타입들에 대해서, 어떤 페이로드 타입도 존재하지 않고, 페이로드 데이터는 MMTP 헤더를 따른다. MMTP 패킷의 일부 필드들은 페이로드 타입을 기반으로 다르게 해석된다. 이런 필드들의 시맨틱스는 사용시 페이로드 타입에 의해 정의된다.
도 4는 본 게시의 다양한 실시예들에 따른 스트리밍 모드 페이로드 헤더에 대한 예시적인 구조를 도시하고 있는 도면이다.
MMY 프로토콜을 사용하는 MPU들의 MMT 수신기들에 대한 전달은 많은 MPU들의 전달을 가능하게 하기 위해서 송신기 및 수신기 각각에서 발생하는 패킷화 및 역패킷화 절차를 요구한다. MPU 전달 모드는 MPU들의 다양한 사이즈 변화를 가능하게 하는 패킷화 및 역패킷화를 위해 완전 MPU 혹은 독립적인 전달 데이터 유닛들인 단일 MPU의 특정 서브 파트(subpart)들을 고려한다. MMTP 페이로드 포맷의 스트리밍 포맷(일 예로, MPU 모드)은 단일 전달 데이터 유닛들의 다수의 MMYP 페이로드들로의 프래그멘테이션을 허여하여 큰 사이즈를 가지는 MPU의 전달을 지원한다. 또한, 스트리밍 모드는 동일한 타입을 가지는 다수의 전달 데이터 유닛들의 단일 MMTP 페이로드로의 어그리게이션을 허여하여 더 작은 데이터 유닛들을 공급한다. 패킷화 절차는 MPU가 프래그먼트될 경우 MPU를 각 MMTP 패킷들에서 전달되는 MMTP 페이로드들의 집합으로 변환할 수 있다. 수신 엔터티 역패킷화가 수행되어 원래의 MPU 데이터를 복원한다.
페이로드 타입 0x00에서, MPU는 트랜스포트 계층이 전달되는 프래그먼트의 속성 및 우선 순위를 식별하는 것을 허여하는 미디어-인식 방식(media-aware manner)으로 프래그먼트된다. MPU의 프래그먼트는 일 예로 MPU 메타데이터, 혹은 무비 프래그먼트 메타데이터, MFU, 혹은 논-타임드 데이터 아이템(non-timed data item)이 될 수 있다. 스트리밍 모드는 또한 시그널링 메시지들의 전달 및 복원 심볼들을 위해 사용된다.
도 4를 참조하면, 스트리밍 모드 페이로드 헤더(400) 시맨틱스와 스트리밍 모드 페이로드 헤더(400)의 각 필드의 길이는 다음과 같이 제공된다: 길이 필드(402)는 16비트들의 길이를 가지고, 길이 필드(402)를 포함하는 전체 페이로드의 사이즈를 지시한다; 전달 데이터 유닛 타입(Data Unit Type: DU_type) 필드(404)가 5비트 길이이고, 일 예로 하기 <표 1>에 의해 제공되는 바와 같은, 페이로드의 전달 데이터 유닛 타입을 지시한다.
디스크립션 컨텐트
0 완전 MPU (Complete MPU) 단일 전달 데이터 유닛인 단일 완전 MPU(a single complete MPU as a single delivery data unit)
1 MPU 메타데이터 (MPU metadata) 단일 전달 데이터 유닛간에 나타나는 다른 박스들 뿐만 아니라 ftyp, mmpu, 및 moov 박스들 - 어떤 전달 데이터 유닛 헤더도 사용되지 않음(the ftyp, mmpu, and moov boxes as well as any other boxes that appear in between as a single delivery data unit - no delivery data unit header is used)
2 무비 프래그먼트 메타데이터 (Movie fragment metadata) moof 박스 및 단일 전달 데이터 유닛인 mdat 박스 내의 모든 미디어 데이터를 제외한 mdat 박스. 전달 데이터 유닛 헤더는 사용되지 않음(the moof box and the mdat box, excluding all media data inside the mdat box as a single delivery data unit. No delivery data unit header is used)
3 타임드 MFU (Timed_MFU) 단일 전달 데이터 유닛인 타임드 미디어 데이터의 샘플 혹은 서브-샘플 - 도 5에 관해 설명된 전달 데이터 유닛 헤더가 사용될 수 있음(a sample or sub-sample of timed media data as a single delivery data unit - delivery data unit header discussed with regard to FIG. 5 may be used)
4 논-타임드 MFU (Non-timed_MFU) 단일 전달 데이터 유닛인 논-타임드 미디어 데이터의 아이템 - 도 6에 관해 설명된 전달 데이터 유닛이 사용될 수 있음(an item of non-timed media data as a single delivery data unit - delivery data unit header discussed with regard to FIG. 6 may be used)
5 시그널링 메시지 (Signaling message) 전달 데이터 유닛인 단일 완전 시그널링 메시지. 어떤 전달 데이터 유닛 헤더도 사용되지 않음 - 도 7에 관해 설명된 전달 데이터 유닛 헤더가 사용될 수 있음 (a single complete signaling message as a delivery data unit. No delivery data unit header is used - delivery data unit header discussed with regard to FIG. 7 may be used)
6 복원 심볼들 (Recovery symbols) 단일 데이터 유닛인 단일 완전 복원 심볼. 전달 데이터 유닛 헤더는 사용되지 않음(a single complete recovery symbol as a delivery data unit - no delivery data unit header is used).
7 ~ 11 예약됨(Reserved)
스트리밍 모드 페이로드 헤더(400)의 필드들과 연속하여, 어그리게이션_플래그(aggregation_flag: A) 필드(406)는 1비트 길이이고, ‘1’로 설정될 경우 1개 이상의 전달 데이터 유닛이 프래그멘테이션 지시자(fragmentation indicator) f_i 필드(408)가 무시되는 페이로드에 존재한다는 것을 지시하고; f_i 필드(408)는 2비트 길이이고, 일 예로, 하기 <표 2>에 도시되어 있는 바와 같은 페이로드에 포함되어 있는 데이터 유닛의 프래그멘테이션에 대한 정보를 포함한다는 것을 지시한다.
디스크립션
00 페이로드는 하나 혹은 그 이상의 전달 데이터 유닛 헤더들 및 완전 전달 데이터 유닛들을 포함한다(Payload contains one or more delivery data unit headers and complete delivery data units).
01 페이로드는 전달 데이터 유닛 헤더 및 전달 데이터 유닛의 첫 번째 프래그먼트를 포함한다(Payload contains the delivery data unit header and the first fragment of delivery data unit)
10 페이로드는 첫 번째 부분도 아니고, 마지막 부분도 아닌 전달 데이터 유닛의 프래그먼트를 포함한다(Payload contains a fragment of delivery data unit that is neither the first nor the last part).
11 페이로드는 전달 데이터 유닛의 마지막 프래그먼트를 포함한다(Payload contains the last fragment of delivery data unit).
f_i 필드(408)의 값은 상기 필드 ‘A’의 값이 ‘1’일 경우 ‘00’으로 설정될 수 있다.
스트리밍 모드 페이로드 헤더(400)의 필드들과 연속하여, 카운터(counter) 필드(410)는 16비트이며, aggregation_flag가 ‘0’으로 설정될 경우 MMT 페이로드에 연속하는 동일한 전달 데이터 유닛의 프래그먼트들을 포함하는 페이로드의 개수를 지시하고, aggregation_flag가 ‘1’로 설정될 경우 페이로드에 어그리게이트되어 있는 전달 데이터 유닛들의 개수를 지시한다. DU_length 필드(412)는 16비트 길이를 가지며, DU_length 필드(412) 다음의 데이터의 길이를 지시한다. aggregation_flag가 ‘0’으로 설정될 경우, DU_length 필드(412)는 존재할 수 없다. aggregation_flag가 ‘1’로 설정될 경우, DU_length 필드(412)는 ‘counter’ 필드(410)의 값과 각 이전 어그리게이트된 데이터 유닛만큼 나타날 수 있다. DU_Header 필드(414)는 데이터 유닛의 헤더이고, 데이터 유닛의 헤더는 하기에서 보다 구체적으로 설명될, 전달 데이터 유닛의 타입을 기반으로 한다. aggregation_flag가 ‘1’로 설정될 경우, DU_Header 필드(414)는 ‘counter’ 필드(410)의 값과 각 이전 어그리게이트된 전달 데이터 유닛만큼 나타날 수 있다. aggregation_flag가 ‘0’으로 설정될 경우, DU_Header 필드(414)는 ‘f_i’ 필드(408)의 값이 ‘01’일 경우 나타날 수 있다.
도 5는 본 게시의 다양한 실시예들에 따른 타임드-미디어 MFU 헤더(500)에 대한 예시적인 구조를 도시하고 있는 도면이다. 타임드-미디어 MFU 헤더(500)는 타임드 미디어 데이터에 대한, 도 4의 DU_header(414)에 포함되어 있는 바와 같은 전달 데이터 유닛 헤더의 일 예이다.
도 5를 참조하면, 타임드-미디어 MFU 헤더(500)의 각 필드의 시맨틱스 및 길이는 다음과 같이 제공된다: movie_fragment_sequence_number 필드(502)는 32비트 길이이며, MFU의 미디어 데이터가 속하는 movie fragment의 시퀀스 번호를 포함한다; sample_number 필드(504)는 32비트 길이이고, MFU의 미디어 데이터에 대한 샘플의 샘플 번호를 포함한다; offset 필드(506)는 16비트 길이이고, 기준 샘플(referenced sample) 내에 해당 MFU의 메타데이터의 오프셋(offset)을 포함한다; subsample_priority 필드(508)는 8비트 길이이고, 동일한 MPU의 다른 메타데이터와 비교하여 해당 MFU에 의해 운반되는 미디어 데이터의 우선 순위를 제공한다. 일 예로, subsample_priority의 값은 0과 455간에 있을 수 있으며, 더 높은 우선 순위를 지시하는 더 높은 값을 가질 수 있다. 추가적으로, dependency_counter 필드(510)은 8비트 길이이고, 해당 MFU에 포함되어 있는 메타데이터에서 그 미디어 프로세싱을 기반으로 하는 데이터 유닛들의 개수를 지시한다.
도 6은 본 게시의 다양한 실시예들에 따른 논-타임드 MFU 헤더(600)에 대한 예시적인 구조를 도시하고 있는 도면이다. 논-타임드 MFU 헤더(600)는 논-타임드 미디어 데이터에 대한, 도 4의 DU_header(414)에 포함되어 있는 바와 같은 전달 데이터 유닛 헤더의 일 예이다.
도 6을 참조하면, 논-타임드 MFU 헤더(600)의 각 필드의 상기 시맨틱스 및 길이는 다음과 같이 제공된다: Item_ID 필드(602)는 32비트 길이이고, 해당 MFU의 일부로서 운반되는 아이템의 식별자를 포함한다. 파일 타입(file type: FT)들 0 및 1에 대해서, 추가적인 DU 헤더가 사용될 수 없다. MMTP 헤더의 오브젝트 식별자 필드는 데이터 유닛이 추출되는 MPU의 MPU_sequence_number로 설정될 수 있다. 랜덤 억세스 포인트(random access point: RAP) 플래그는 FT 값 0 및 1의 데이터 유닛들을 마크(mark)하기 위해 설정될 수 있고, 타임드 미디어의 경우에서, 동기 샘플 혹은 해당 프래그먼트를 포함하는 MFU들 및 논-타임드 MPU들의 기본 아이템에 대해서 설정될 수 있다.
도 7은 본 게시의 다양한 실시예들에 따른 시그널링 메시지 헤더(700)에 대한 예시적인 구조를 도시하고 있는 도면이다. 시그널링 메시지 헤더(700)는 시그널링 메시지에 대한, 도 4의 DU_header(414)에 포함되어 있는 바와 같은 전달 데이터 유닛 헤더의 일 예이다.
도 7을 참조하면, 시그널링 메시지 헤더(700)의 각 필드의 시맨틱스 및 길이는 다음과 같이 제공된다: message_id 필드(702)는 16비트 길이이고, 시그널링 메시지의 타입을 지시한다; 버전 필드는 8비트 길이이고, 시그널링 메시지의 버전 번호를 지시하고; 예약(reserved: RES) 필드는 8비트 길이이고, 미래의 사용을 위해서 예약되고, 0으로 설정될 수 있다.
MMTP는 또한 일반 파일(generic file)들 및 애셋들의 트랜스포트를 지원하고, 페이로드 타입 1을 사용한다. 일반 애셋(generic asset)은 논리적으로 그룹화되고, 어플리케이션(application), 일 예로, DASH (Segments of a Dynamic Adaptive Streaming over HTTP), Representation과, MPU들의 시퀀스 등에 대해 일부 공통성을 공유하는 하나 혹은 그 이상의 파일들로 구성된다.
GFD 페이로드 타입 모드에서, 일반 애셋은 GFD 페이로드 타입을 사용하여 MMTP를 통해 전달된다. GFD는 하기에서 설명되는, 일반 애셋 컨텐트들 및 전달 특성들을 설명하는 GFD 세션 디스크립션(session description)을 요구한다. 본 게시의 실시예들은 MMTP 프로토콜을 통한 GFD 세션의 성립을 제공한다. MMTP 내에서 전달될 경우, GFD 세션은 정확하게 1개의 packet_id 플로우(flow)에 매핑될 수 있다.
GFD 세션 내에서 전달되는 각 파일은 트랜스포트 전달 정보의 연관을 요구한다. 이는 전송 길이(transfer length)와 같은 정보를 포함하나, 이에 한정되지는 않는다. GFD 세션 내에서 전달되는 각 파일은 또한 명칭과, 식별자 및/혹은 상기 파일의 위치와, 미디어 타입과, 파일의 사이즈와, 파일의 인코딩과, 파일의 메시지 다이제스트(digest)와 같은 연관된 컨텐트 특정 파라미터(content specific parameter)들을 가질 수 있다. 여기에서 참조로 포함되는, IETF RFC2616에 정의되어 있는 바와 같은 HTTP/1.1 프로토콜에 맞춰, 한 개의 일반 애셋 내의 각 파일은 엔터티-바디(entity-body), 즉 전달되는 파일에 관해 할당된 메타-정보를 가질 수 있다. GFD 동작의 추가적인 구체 사항들은 하기에서 설명된다. GFD 세션에서 전달되는 파일들은 일 예로, 프록시 캐시(proxy cache)를 통해 혹은 다른 수단들에 의해 어플리케이션에 유용하도록 되어야만 할 수 있다. 그리고 나서, 각 오브젝트는 상기 GFD 세션을 통해 전달된다.
수신기가 GFD 세션을 성립할 수 있기 전에, 수신기는 일 예로, 세션 억세스 정보와 GFD 세션 정보와 같은 충분한 정보를 획득할 필요가 있을 수 있다. GFD 세션에 대한 세션 억세스 정보는, MT에서 동작할 경우, 여기에서 참조로 포함되어 있는 23008-1에 정의되어 있다. GFD 세션 정보는 하기에서 보다 구체적으로 설명된다. GFD Session Description은 RFC4566에 정의되어 있는 바와 같은 세션 디스크립션 프로토콜(Session Description Protocol: SDP)과, RFC3023에 정의되어 있는 바와 같은 XML 메타데이터, 혹은 RFC2616에 정의되어 있는 바와 같은 HTTP/MIME 헤더들 등과 같은 형태로 존재할 수 있으며, 이런 RFC 스탠다드 도큐먼트들은 여기에서 참조로 명확하게 조합된다.
GFD 세션 정보(GFD Session Information): GFD 프로토콜은 파일들을 전달한다. GFD 모드에서, 각 파일에는 송신 오브젝트 식별자(Transmission Object Identifier: TOI) 파라미터와 코드 포인트(code point: CP) 파라미터가 할당된다. TOI 파라미터는 오브젝트가 GFD 세션의 범위 내에서 고유한 식별자와 연관된다는 것을 제공한다. 각 오브젝트는 코드 포인트와 연관된다. 코드 포인트는 특정 오브젝트 및 오브젝트 전달 특징을 요약한다. 동일한 TOI를 가지는 패킷들은 상기 코드 포인트에서 동일한 값을 가질 수 있다.
GFD 테이블은 코드 포인트들의 리스트(list)를 제공한다. 각 코드 포인트에는 코드 포인트 값이 동적으로 할당된다. 상기 GFD 테이블의 시맨틱스는 하기 <표 3>에 제공되어 있는 바와 같다.
엘리먼트 혹은 어트리뷰트 명 사용 디스크립션
GFDTable 엘리먼트는 GFDTable을 운반한다(The element carries a GFDTable).
CodePoint 1...N GFD 세션에 포함되는 모든 코드 포인트들을 정의한다(defines all Code Points in the GFD session).
Legend:
For attributes: M=Mandatory, O=Optional, OD=Optional with Default Value, CM=Conditionally Mandatory.
For elements: <minOccurs>...<maxOccurs> (N=unbounded)
Elements are bold; attributes are non-bold and preceded with an @
코드 포인트는 해당 코드 포인트 시그널링과 함께 전달되는 오브젝트의 최대 전송 길이를 포함할 수 있다. 또한, 코드 포인트는 다음과 같은 정보 중 어느 것이라도 포함할 수 있다: 오브젝트들의 실제 전송 길이와, 여기에서 참조로 포함되는, RFC2616, section 7.1에 정의되어 있는 바와 같은 엔터티-헤더에 존재할 수 있는 정보와, 존재할 경우, TOI를 사용하여 하기에서 설명되는 바와 같은 컨텐트-위치-탬플릿(content-location-template)과; 컨텐트에 대한 특정 정보, 일 예로, 컨텐트가 어떻게 패키지화되는지 등과 같은 특정 정보.
TOI 및 packet_id는 각 TOI 및 packet_id에 대한 컨텐트-위치(content-location)를 생성하기 위해 사용될 수 있다. 상기와 같은 탬플릿이 존재할 경우, 하기에서 설명되는 바와 같은 content-location에 대한 프로세싱은 content-location를 생성하기 위해 사용될 수 있고, URI의 값은 엔터티-헤더에 포함되어 있는 content-location과 같이 취급될 수 있다. 한 세션 내에서, 많아야 256개의 코드 포인트들이 정의될 수 있다. 코드 포인트들의 정의는 GFD Session Description에서 동적으로 설정될 수 있다. 코드 포인트에 대한 시맨틱스의 일 예가 하기 <표 4>에 제공되어 있다.
엘리먼트 혹은 어트리뷰트 명 사용 디스크립션
CodePoint GFD 세션에 포함되는 코드 포인트들을 정의한다(defines the Code Points in a GFD session)
@value M GFD 패킷 헤더의 CP 값에서 제공되는 GFD 세션에 포함되어 있는 코드 포인트의 값을 정의한다. 그 값은 1과 455간에 존재할 수 있다. 값 0은 예약된다.(defines the value of the code point in the GFD session as provided in the CP value of the GFD packet header. The value may be between 1 and 455. The value 0 is reserved.)
@maximumTransferLength M GFD 세션에 포함되어 있는 코드 포인트와 함께 전달되는 오브젝트의 최대 전송 길이를 바이트들로 명시한다(specifies the maximum transfer length in bytes of any object delivered with this code point in this GFD session).
@constantTransferLength OD
디폴트:
'거짓(false)'
코드 포인트에 의해 전달되는 모든 오브젝트들이 상수 전송 길이를 가질 경우를 명시한다. 이 어트리뷰트가 진실(TRUE)로 설정될 경우, 모든 오브젝트들은 상기 @maximumTransferLength 어트리뷰트에서 명시된 바와 같은 전송 길이를 가질 수 있다(specifies if all objects delivered by this code point have constant transfer length. If this attribute is set to TRUE, all objects may have transfer length as specified in the @maximumTransferLength attribute).
@contentLocationTemplate O 엔터티 헤더의 Content-Location를 생성하는 탬플릿을 명시한다(specifies a template to generate the Content-Location of the entity header).
EntityHeader 0 ... 1 RFC2616, section 9.1에 정의되어 있는 바와 같은 포맷으로 전체 엔터티 헤더를 명시한다. 엔터티 헤더는 이 코드 포인트의 값과 함께 전달되는 모든 오브젝트들에 대해 적용된다(specifies a full entity header in the format as defined in RFC2616, section 9.1. The entity header applies for all objects that are delivered with the value of this code point).
Legend:
For attributes: M=Mandatory, O=Optional, OD=Optional with Default Value, CM=Conditionally Mandatory.
For elements: <minOccurs>...<maxOccurs> (N=unbounded)
Elements are bold; attributes are non-bold and preceded with an @
코드 포인트는 @contentLocationTemplate 어트리뷰트(attribute)를 포함할 수 있다. @contentLocationTemplate 어트리뷰트의 값은 하기 <표 5>에 리스트되어 있는 바와 같은 식별자들 중 하나 혹은 그 이상을 포함할 수 있다. 각 URL에서, <표 5>로부터의 식별자들은 <표 5>에 정의되어 있는 바와 같은 교체(substitution) 파라미터에 의해 대체될 수 있다. 식별차 매칭(matching)은 대소문자를 구별한다(case-sensitive). URL이 유효한 식별자를 포함하지 않는 unescaped $ 심볼(symbol)들을 포함할 경우, URL 형성의 결과는 정의되지 않는다. 식별자의 포맷은 하기 <표 5>에 명시되어 있다.
$<식별자>$ 교체 파라미터 포맷
$$ escape 시퀀스이다, 즉, "$$"는 단일 "$"와 대체된다(Is an escape sequence, i.e. "$$" is replaced with a single "$") 적용 불가능
$ PacketID $ 이 식별자는 연관되는 MMT 플로우의 packet_id의 값과 교체된다(This identifier is substituted with the value of the packet_id of the associated MMT flow). 포맷 태그(tag)이 존재할 수 있다. 포맷 태그가 존재하지 않을 경우, width=1을 가지는 디폴트 포맷 태그가 사용될 수 있다. (The format tag may be present. If no format tag is present, a default format tag with width=1 may be used.)
$ OI $ 이 식별자는 해당하는 GFD 패킷의 오브젝트 식별자와 교체된다(This identifier is substituted with the Object Identifier of the corresponding GFD packet). 포맷 태그(tag)이 존재할 수 있다. 포맷 태그가 존재하지 않을 경우, width=1을 가지는 디폴트 포맷 태그가 사용될 수 있다.(The format tag may be present. If no format tag is present, a default format tag with width=1 may be used.)
각 식별자는 프로토타입(prototype): “%0[width]d”를 다음의, 동봉되는(enclosing) ‘$’ 글자들 내에서, 접미사화 될 수 있다(suffixed). “width” 파라미터는 프린터될 글자들의 최소 개수를 제공하는 무부호 정수(unsigned integer)이다. 프린트될 값이 이 번호보다 작을 경우, 상기 결과는 0들로 패딩(padding)될 것이다. 상기 결과가 더 크더라도, 해당 값은 트렁케이트(truncate)될 수 없다. @contentLocationTemplate는 교체 프로세스의 어플리케이션이 유효한 URI들을 초래할 수 있도록 서술될 수 있다. 식별자들 외부의 스트링(string)들은 여기에서 참조로 포함되는, RFC 3986에 따른 URL들 내에서 허용되는 글자들만을 포함할 수 있다.
GFD 동작(GFD operation): MMTP의 GFD 모드는 표준 파일(regular file)들을 전달한다. 표준 파일들을 전달할 경우, 오브젝트는 파일을 나타낸다. GFD Session description에 정의되어 있는 코드 포인트가 엔터티-헤더 필드들 혹은 생성될 수 있는 엔터티-헤더 필드들을 포함할 경우, 이런 엔터티-헤더 필드들 모드는 상기 전달된 파일에 적용될 수 있다.
도 8은 본 게시의 다양한 실시예들에 따른 GFD 모드 패킷 구조(800)에 대한 예시적인 구조를 도시하고 있는 도면이다.
MMTP를 사용하여 송신된 페이로드 패킷들(800)은 도 8에 도시되어 있는 바와 같이 GFD 페이로드 헤더(802 내지 818) 및 GFD 페이로드(820)를 포함할 수 있다. 일부 특별한 경우들에서, GFD 헤더는 어떤 페이로드도 포함하지 않는 패킷들을 생성할 필요가 있을 수 있다. 이는 일 예로, 세션의 마지막(end)을 시그널하기 위해 요구될 수 있다. GFD 페이로드 헤더(802 내지 818)는 가변적인 사이즈를 가진다. GFD 페이로드 헤더(802 내지 818)에서, 모든 정수 필드들은 “big-endian” 혹은 “network order” 포맷, 즉 최상위 바이트(most significant byte)(옥텟(octet)) 먼저의 “big-endian” 혹은 “network order” 포맷으로 운반된다. “padding” 혹은 “reserved” (r)로 지정된 비트들은 송신기들에 의해서 0으로 설정되고, 수신기들에 의해서 무시된다. 별도로 설명되지 않는한, 이런 예제들에서 수치 상수들은 십진 형태이다(base 10).
도 8을 참조하면, GFD 모드 패킷 구조(800)의 각 필드의 시맨틱스 및 길이는 다음과 같이 제공된다: 길이 필드(802)는 16 비트들을 포함하고, 이 필드를 포함하는 전체 페이로드의 사이즈를 지시한다; S 필드(804)는 1비트 길이이고, TOI 필드에 포함되어 있는 전체 32-비트 워드(word)들의 개수를 지시한다(TOI 필드는 길이 필드(802)에서 32*S + 16*H 비트들이고, 일 예로, 그 길이는 0 비트들이거나, 16 비트들이거나, 32 비트들이거나, 혹은 48비트들이다); H 필드(806)는 1비트 길이이고, start_offset와 TOI 필드들의 어그리게이트 길이가 32비트들의 정수인 것을 보장하는 동안, TOI 필드 길이가 하프-워드(half-word)(16비트들)의 배수가 되도록 허여하고; L 필드(808)는 1비트 길이이고, 이것이 이 오브젝트에 대해 마지막 전달 패킷인지 여부를 지시하고; B 필드(810)는 1 비트 길이이고, 이 패킷이 상기 오브젝트의 마지막 바이트를 포함하는지 여부를 지시하고; 코드 포인트(code point: CP) 필드(812)는 8비트 길이이고, 패킷 페이로드에 대한 정보를 전달하는 상기 패킷 페이로드 디코더로 전달되는 불투명 식별자(opaque identifier)를 포함한다. 코드 포인트와 상기 실제 코덱(codec)간의 매핑은 세션 기반 별로 정의되고, 상기 세션 디스크립션 정보의 일부로서 대역외(out-of-band) 통신된다.
오브젝트 메타데이터(Object Metadata: M) 필드(814)는 1비트 길이이고, 이 플래그는 상기 오브젝트 메타데이터가 페이로드의 일부를 제공하였는지 여부를 지시한다. 1로 설정될 경우, 페이로드는 MIME 엔터티이고, 여기서 헤더는 적어도 상기 컨텐트-타입 및 상기 컨텐트-위치 헤더들을 포함할 수 있다. 예약된 필드(reserved field: RES)는 3비트 길이이고, 0으로 설정되고; start_offset 필드(818)( 16+32*O+16*H)는 오브젝트에 포함되어 있는 현재의 페이로드 데이터의 위치를 지시하고; GFD 페이로드 필드(820)는 GFD 페이로드를 포함한다.
오브젝트 식별자는 전달중인 일반 오브젝트의 고유한 식별자로 설정될 수 있다. 오브젝트 식별자와 오브젝트 정보(URL 및 MIME 타입과 같은)의 매핑은 명시적으로(explicitly) 혹은 묵시적으로(implicitly) 이루어질 수 있다. 일 예로, DASH 세그먼트(segment)들의 시퀀스는 오브젝트 식별자로서 상기 세그먼트 식별자를 사용할 수 있고, packet_id로 수 표현 식별자(numerical representation identifier)를 사용할 수 있다. 또한, 이런 매핑은 시그널링 메시지(signaling message)를 사용하여 수행될 수 있다.
GFD 페이로드(820)에 대해서, 오브젝트의 바이트들은 오브젝트의 전송 길이인 T를 사용하여 바이트 0이 상기 오브젝트의 시작이고 바이트 T-1이 오브젝트의 마지막 바이트가 되도록 참조된다. MMTP 패킷의 페이로드에서 운반되는 데이터는 바이트 X의 시작으로부터 시작되고, 바이트 X + Y의 시작에서 종료되는 상기 오브젝트의 연속적인 부분으로 구성되고, 여기서 X는 GFD 헤더에 포함되어 있는 start_offset 필드의 값이고, Y는 바이트들로 표현되는 페이로드의 길이이다. Y는 패킷에서 운반될 수 없지만, 프레이밍(framing)은 하위 트랜스포트 프로토콜(underlying transport protocol)에 의해 제공될 수 있다.
MMT 프로토콜(MMT protocol: MMTP)은 MMT 패키지들을 효율적으로 그리고 신뢰성있게 전달하기 위해 설계되는 어플리케이션 계층 트랜스포트 프로토콜(application layer transport protocol)이다. MMTP는 타임드 및 논-타임드 미디어 데이터 모두의 전달을 위해 사용될 수 있다. MMTP는 다양한 타입들의 코딩된 미디어 데이터로 구성되는 컨텐트를 전달하기 위해 필수적인, 미디어 멀티플렉싱(multiplexing)과, 네트워크 지터(network jitter) 계산과 같은 몇몇 특징들을 지원한다. MMTP는 기존 프로토콜들, 일 예로, UDP(User Datagram Protocol) 및 IP의 상위(top)에서 실행될 수 있다. 본 게시에서, MMT 페이로드 포맷 이외로 포맷화된 데이터의 특정한 운반이 요구된다. 단일 MMTP 패킷은 정확하게 하나의 MMT 페이로드를 운반할 수 있다. MMTP는 송신 엔터티가 혼잡 제어(congestion control)를 수행하는 것을 가정하고, 따라서 혼잡 제어 기능은 이 상세한 설명에서 명시되지 않는다. 이는 MMTP가 UDP/IP의 상위에서 실행되고, 다양한 어플리케이션들에 의해 사용될 것이기 때문에, 이 기능은 송신 엔터티들의 구현에 맡겨진다.
MMTP는 단일 MMT 패킷 플로우를 통해 다른 애셋들의 멀티플렉싱을 지원한다. MMTP는 큰 지연을 초래하거나 혹은 큰 버퍼(buffer)를 필요로 하지 않으면서 다른 타입들의 미디어 데이터간의 동기화를 도울 수 있도록 수신 엔터티에서의 소비 순서대로 다수의 타입들의 데이터를 전달한다. 또한, MMTP는 단일 패킷 플로우 내의 미디어 데이터와 시그널링 메시지들의 멀티플렉싱을 지원한다. 단일 MMT 페이로드는 오직 1개의 MMT 패킷에서만 운반될 수 있다.
MMT 프로토콜은 2개의 패킷화 모드들, GFD 모드 및 MPU 모드를 정의한다. GFD 모드(일 예로, 다운로드 모드)는 전달되는 페이로드의 사이즈를 기반으로 미디어 데이터를 패킷화하는 모드를 정의하고, MPU 모드(일 예로, 스트리밍 모드)는 페이로드에서 운반되는 데이터의 타입을 기반으로 미디어 데이터를 패킷화하는 모드를 정의한다. MMT 프로토콜은 단일 전달 세션 내에서 2개의 다른 모드들을 가지는 패킷들의 혼합된 사용을 지원한다. MMT 패킷들의 단일 패킷 플로우는 2개의 타입들을 가지는 페이로드들로 임의로 구성될 수 있다. MMTP는 데이터 스트림에 대한 상수 지연이 성취될 수 있도록, 하위 전달 네트워크에 의해 삽입되는 지터를 계산 및 제거하는 구조 및 정의들을 제공한다. 패킷 헤더에 포함되어 있는 타임 스탬프(timestamp) 필드를 사용함으로써, 지터는 어떤 추가적인 시그널링 정보 및 프로토콜을 요구하지 않으면서도 정확하게 계산될 수 있다.
도 9는 본 게시의 다양한 실시예들에 따른 MMTP 패킷(900)에 대한 예시적인 구조를 도시하고 있는 도면이다.
도 9를 참조하면, MMTP 패킷(900)의 각 필드의 시맨틱스 및 길이는 다음과 같이 제공된다: 버전(version: V) 필드(902)는 2비트 길이이고, 상기 프로토콜의 버전을 지시한다. 이 필드(902)는 이 상세한 설명을 따르도록 ‘00’으로 설정될 수 있다. 타입 필드(오브젝트 타입)(904)는 6비트이다. 이 필드(904)는 페이로드 타입, 즉 모드를 지시한다. 일 예로서 페이로드 타입 값들 중 적어도 하나는 하기 <표 6>에 제공될 수 있다. 각 페이로드 타입의 프래그멘테이션(fragmentation) 및 어그리게이션 지시 데이터 유닛은 하기 <표 6>에 제공되어 있다.
페이로드 타입 페이로드 데이터의 정의 'object_identifier'의 시맨틱스
0x00 MPU MPU 의 포맷-인식 프래그먼트들(format-aware fragments of MPU) MPU 시퀀스 번호 (MPU sequence number)
0x01 일반 오브젝트(Generic Object) 완전 MPU와 같은 일반 오브젝트 혹은 다른 타입의 오브젝트(a generic object such as a complete MPU or an object of another type) TOI
0x02 시그널링메시지 (signaling message) 단일 완전 시그널링 메시지(a single complete signaling message)
0x03 복구 심볼 (repair symbol) 단일 완전 복구 심볼(a single complete repair symbol)
0x04~ 0x1F 미래의 사용을 위해 ISO 예약됨 (ISO reserved for future use)
0x20~ 0x3F 사적 용도로 예약됨 (Reserved for private use)
MMTP 패킷(900)의 각 필드의 시맨틱스 및 길이와 연속하여, FEC_type (FEC) 필드(906)는 2비트 길이이고 MMT 패킷들을 보호하기 위해 사용되는 FEC 방식의 타입을 지시한다. 이 필드(906)에 대한 값들 및 연관되는 디스크립션들의 일 예는 하기 <표 7>에 리스트되어 있다.
디스크립션
0 AL-FEC 보호가 없는 MMT 패킷(MMT packet without AL-FEC protection)
1 AL-FEC 보호를 가지는 MMT 패킷(FEC 소스 패킷)(MMT packet with AL-FEC protection (FEC source packet))
2 복구 심볼(들)에 대한 MMT 패킷(MMT packet for repair symbol(s) (FEC repair packet))
3 미래의 사용을 위해 예약됨(Reserved for future use)
MMTP 패킷(900)의 각 필드의 시맨틱스 및 길이와 연속하여, 예약(reserved: RES) 필드(908)는 3비트 길이이고, 미래의 사용을 위해 예약되고; packet_counter_flag (C) 필드(910)는 1비트 길이이고, ‘1’은 packet_counter 필드가 존재함을 지시하고; RAP_flag (R) 필드(912)는 1비트 길이이고, ‘1’라고 설정될 경우, 페이로드는 해당 데이터 타입의 데이터 스트림에 대한 랜덤 억세스 포인트(random access point)를 포함한다는 것을 지시하고, extension_flag (X) 필드(914)는 1비트 길이이고, ‘1’은 header_extension가 존재한다는 것을 지시하고, last (L) 필드(916) 는 1비트 길이이고, ‘1’은 object_identifier 필드의 값과 동일한 값을 가지는 패킷들 중 마지막 패킷을 지시하고; packet_id 필드(918)는 16비트 길이이고, 다른 애셋으로부터 한 애셋의 패킷들을 구분하기 위해 각 애셋에 할당되는 정수 값을 포함한다. 별도의 값들이 시그널링 메시지들 및 FEC 복구 플로우들에 할당된다. packet_id는 전달 세션의 유효 시간 동안, 동일한 MMT 송신 엔터티에 의해 전달되는 모든 MMT 플로우들에 대해서 고유하다. packet_id와 asset_id간의 매핑은 시그널링 메시지의 일부로서 MMT 패키지 표에 의해 시그널된다. AL-FEC(Application Layer - Forward Error Correction)에 대해서, packet_id와 FEC 복구 플로우간의 매핑이 AL-FEC 메시지에서 제공된다. packet_id는 동일한 MMT 송신 엔터티에 의해 전달되는 모든 MMT 패킷 플로우들에 대해서 고유하다.
MMTP 패킷(900)의 각 필드의 시맨틱스 및 길이와 연속하여, object_identifier 필드(920)는 32비트 길이이고, 현재의 페이로드로부터 추출되는 어플리케이션 계층의 식별자를 포함한다. 이 필드(920)의 정확한 시맨틱스 및 사용은 페이로드의 타입을 기반으로 할 수 있다. packet_sequence_number 필드(922)는 32비트 길이이고, packet_id에 의한 범위를 가지고, 각 MMT 패킷에 대해서 1씩 증가되는 임의의 값으로부터 시작되는 정수 값을 포함한다. 이 값은 최대 값에 도달된 후 ‘0’으로 돌아간다. 타임 스탬프 필드(924)는 32 비트 길이이고, MMT 패킷 전달의 타임 인스턴스(time instance)를 명시한다. NTP 시간은, 여기서 참조로 포함되는 IETF RFC5905, NTP 버전 4의 6절의 “short-format”와 같이 명시된 타임 스탬프에서 사용된다. 이 타임 스탬프는 MMT 패킷의 첫 번째 비트에서 상기 시간을 명시한다. packet_counter 필드(926)는 32 비트 길이이고, MMT 패킷을 카운팅하는 정수 값을 포함한다. 이 값은 MMT 패킷의 송신에 의해 증가되고, packet_id와 다르다. packet_counter 필드(926)는 송신되는 각 MMT 패킷에 대해 1씩 증가되는 임의의 값으로부터 시작된다. packet_counter 필드(926)의 값은 최대 값 이후 ‘0’으로 돌아간다.
extension_header 필드(928)는 사용자-정의 정보(user-defined information)를 포함한다. 헤더 확장 메카니즘(header extension mechanism)은 페이로드 포맷에 대한 proprietary 확장들을 위해, 페이로드 포맷 헤더에서 운반되는 추가 정보를 요구하는 어플리케이션들 및 미디어 타입들을 가능하게 한다. 헤더 확장 메카니즘은 MMT 패키지의 정확한 프로세싱에 영향을 미치지 않으면서 폐기될 수 있는 방식으로 디자인된다. extension_header 필드(928)에 포함되어 있는 확장 헤더는 도 10에 도시되어 있는 바와 같은 포맷을 포함할 수 있고, 도 10은 본 게시의 다양한 실시예들에 따른 헤더 확장(1000)에 대한 예시적인 구조를 도시하고 있다.
MMTP 패킷(900)의 각 필드의 시맨틱스 및 길이와 연속하여, 페이로드 데이터 필드(930)는 페이로드 데이터를 포함하고; 소스 FEC 페이로드 ID(source FEC payload ID) 필드(932)는 2비트 길이이고, FEC 타입의 값이 ‘1’로 설정될 경우에만 사용될 수 있다. FEC type = 1을 가지는 MMT 패킷은 AL-FEC 보호(protection)를 위해 사용될 수 있고, AL-FEC 보호 후에, 이 필드는 상기 MMT 패킷에 추가될 수 있다.
이런 실시예들에서, 본 게시는 프래그먼트된 전달에 대한 MPU의 특정 부분들의 지시를 가능하게 하는 2개의 계층들과 MMTP에 대한 통일된 구조를 제공한다. 첫 번째 계층에서, 페이로드 타입(일 예로, 다운로드 모드, 스트리밍 모드, GPU 모드, MPU 모드 들)은 상기 MMTP 헤더에 포함되어 있는 타입(혹은 오브젝트 타입) 필드에 의해 시그널된다. 두 번째 계층에서, 전달 데이터 유닛 타입은 상기 MPU 모드 페이로드 헤더에 포함되어 있는 DU_type 필드에 의해 시그널된다. 따라서, 본 게시의 실시예들은 MMTP 내에서 상기 GPU 모드와 MPU 모드를 통합함으로써 동일한 프로토콜로 다운로딩과 스트리밍 둘 다를 지원하는 송신 프로토콜을 제공한다.
도 11은 본 게시의 다양한 실시예들에 따른 타임드 미디어 데이터의 패킷화의 예시적인 다이아그램(1100)을 도시하고 있는 도면이다. 타임드 미디어를 포함하는 MPU의 패킷화는 MPU 포맷-인식 및/혹은 MPU 포맷 agnostic 모드에서 수행될 수 있다. MPU 포맷 agnostic 모드에서, MPU는 GFD를 사용하여 상기 하위 전달 네트워크의 MTU의 사이즈에 따라, 동일한 사이즈 혹은 미리 정의되어 있는 사이즈의 데이터 유닛들로 패킷화된다. 즉, MPU 포맷 agnostic 모드의 패킷화는 해당 패킷에서 운반되는 데이터의 사이즈만을 고려할 수 있다. MMTP 패킷에 대한 타입 필드는 패킷화가 포맷 agnostic 모드라는 것을 지시하기 위해 0x00로 설정된다.
MPU 포맷-인식 모드에서, 패킷화 절차는 MPU에서 다른 타입들의 데이터의 경계들을 고려하여 MPU 모드를 사용하여 패킷들을 생성한다. 그 결과 패킷들은 MPU 메타데이터와, 무비 프래그먼트 메타데이터, 혹은 MPU의 전달 데이터 유닛들을 운반한다. 상기 결과 패킷들은 2개 이상의 다른 타입들의 전달 데이터 유닛들을 운반할 수 없다. MPU 메타데이터의 전달 데이터 유닛에는 DU_type 0x01가 할당된다. MPU 메타데이터는 ‘ftyp’ 박스와, ‘mmpu’ 박스와, ‘moov’ 박스 및 전체 MPU에 적용되는 다른 박스들을 포함한다. 'ftyp' 박스는 파일의 타입을 나타내며, 'mmpu' 박스는 MPU의 구성을 나타내며, 'moov' 박스는 코덱 설정 정보를 나타낸다. 무비 프래그먼트 메타데이터의 전달 데이터 유닛은 ‘moof’ 박스 및 ‘mdat’ 박스 헤더(어떤 미디어 데이터도 배제되는)로 구성되고, 무비 프래그먼트 메타데이터의 전달 데이터 유닛에는 DU_type 0x02가 할당된다. 'mdat' 박스는 미디어 데이터를 포함하며, 'moof' 박스는 해당 미디어 데이터의 헤더 정보를 포함한다. 메타데이터와, MPU의 mdat 박스의 MFU들은 그리고 나서 포맷 인식 방식으로 MFU의 다수의 전달 데이터 유닛들로 분할된다. 일 예로, 이는 MMT 힌트 트랙(hint track)의 도움으로 수행될 수 있다. MFU는 1) 메타데이터만, 2) 시퀀스 번호를 가지는 메타데이터와, 3) 일부 제어 정보를 가지는 미디어 데이터를 포함한다. 각 MFU는 MFU 헤더의 앞에 추가되고, MFU 헤더는 상기 신택스 및 시맨틱스를 가진다. MFU 헤더 다음에 상기 MFU의 미디어 데이터가 위치한다.
도 12는 본 게시의 다양한 실시예들에 따른 논-타임드 미디어 데이터의 패킷화의 예시적인 다이아그램(1200)을 도시하고 있는 도면이다.
논-타임드 미디어 데이터의 패킷화는 또한 2개의 다른 모드들로 수행될 수 있다. MPU 포맷 agnostic 모드에서, MPU는 GFD를 사용하여 상기 하위 전달 네트워크의 MTU의 사이즈에 따라, 동일한 사이즈(사이즈가 다를 수 있는 마지막 데이터 유닛은 제외됨) 혹은 미리 정의되어 있는 사이즈의 전달 데이터 유닛들로 패킷화된다. MMTP 패킷의 타입 필드는 0x00으로 설정되어 상기 패킷화가 일반적(generic)이라는 것을 지시한다. 포맷 agnostic 모드에서, MPU는 MPU 모드를 사용하여 MPU 메타데이터 혹은 MFU의 전달 데이터 유닛들을 포함하는 패킷으로 패킷화된다. MPU 메타데이터는 ‘ftyp’ 박스와, ‘moov’ 박스와, ‘meta’ 박스 및 전체 MPU에 적용되는 다른 박스들을 포함한다. MFU의 각 전달 데이터 유닛은 논-타임드 미디어의 단일 아이템(item)을 포함한다. 그리고 나서, 논-타임드 미디어의 각 아이템은 MFU를 생성하기 위해 사용된다. MFU는 MFU 헤더 및 논-타임드 MFU 데이터로 구성된다.
역패킷화 절차는 MMT 수신기에서 수행되어 상기 송신된 MPU를 획득한다. 역패킷화 절차는 필요로 되는 어플리케이션을 기반으로, 다음과 같은 모드들: MPU 모드와, 프래그먼트 모드와, 미디어 유닛 모드 중 하나에서 동작할 수 있다. MPU 모드에서, 역페이로드화기(depayloadizer)는 MPU를 어플리케이션으로 포워딩하기 전에 전체 MPU를 재생성한다. 이 모드는 시간이 중요하지 않은 전달(non-time critical delivery)에 대해 적합하고, 즉 CI에 의해 지시되는 바와 같은 MPU의 프리젠테이션 시간은 MPU의 전달 시간 보다 충분히 뒤이다. 프래그먼트 모드에서, 역페이로드화기는 프래그먼트 메타데이터 및 미디어 샘플들을 가지는 ‘mdat’ 박스를 포함하는 완전 프래그먼트를 어플리케이션으로 포워딩하기 전에 재생성한다. 이 모드는 논-타임드 미디어에 적용되지 않는다. 이 모드는 지연 시간 비용(delivery time budget)이 제한되어 있지만, 완전 프래그먼트를 복원하기에는 충분한 지연-민감 어플리케이션(delay-sensitive application)들에 적합하다. 미디어 유닛 모드에서, 역페이로드화기는 가능한 한 빨리 미디어 유닛들을 추출하여 상기 어플리케이션으로 포워드한다. 이 모드는 매우 낮은 지연 미디어 어플리케이션들에 적합하다. 이 모드에서, 상기 MPU는 복원은 요구되지 않는다. 프래그먼트 미디어 데이터의 프로세싱은 요구되지는 않지만, 재동기화를 위해 수행될 수는 있다. 이 모드는 미디어 유닛들이 생성된 후 생성될 수 있는 상기 프래그먼트 메타데이터의 순서를 벗어난 전달을 용인한다. 이 모드는 타임드 및 논-타임드 미디어 둘 다에 대해 적용된다.
MFU 시퀀스 번호들을 사용하여, 수신기는 미싱 패킷(missing packet)들을 검출하고, FEC 혹은 ARQ와 같은 에러 정정 절차들을 적용하여 미싱 패킷들을 복원할 수 있다. 페이로드 타입은 송신기가 어플리케이션에 대한 페이로드의 중요성을 결정하고, 적합한 에러 내성 측정값(error resilience measure)들을 적용하기 위해 사용될 수 있다.
각 GFD 전달 세션은 주어진 세션에 대해 국부적인(local) GFDT를 가질 수 있다. GFD 세션 내에서 전달되지만, GFDT에서 설명되지 않는 파일은 GFD 전달 세션에 속하는 'file'로 고려되지 않는다. 매핑되지 않은 코드 포인트와 수신되는 오브젝트는 GFD 수신기에 의해서 무시되어야만 한다.
GFD 세션에서 파일들은 일 예로, 여기에서 참조로 포함되는, ISO/IEC 23009-1에 정의되어 있는 바와 같이, 구성 정보 도큐먼트 혹은 미디어 프리젠테이션 디스크립션에서, 어플리케이션에 제공될 수 있어야만 할 수도 있고, GFD 오브젝트들로서 MMTP를 사용하여 전달되는 파일들을 나타낼 수 있다. 상기 파일은 컨텐트-위치로부터 제공되는 혹은 도출되는, GFD 세션 디스크립션의 인-밴드(in-band)로 혹은 일부로서 제공되는 URI를 통해 참조될 수 있다. 특정한 경우, 파일들은 상기 어플리케이션에서 유용성 시작 시간(availability start time)을 가진다. 이 경우, GFD 세션은 상기 파일들을 전달하여, 오브젝트의 마지막 패킷이 전달되어, 어플리케이션에서 알려진 바와 같은 유용성 시작 시간에서 수신기에서 가장 최근에 유용할 수 있도록 한다. GFD 모드를 통해 전달되는 어플리케이션들은 GFD 세션 내에서 파일들을 송신시 추가적이고, 더 엄격한 요구 사항들을 도입할 수 있다.
세션 내에서, 송신기(일 예로, 송신 엔터티(101))는 세션 내에서 일련의 패킷들을 송신한다. 몇몇 오브젝트들은 동일한 GFD 세션 내에서 전달될 수 있다. 하나 이상의 오브젝트가 세션 내에서 전달될 경우, 송신기는 TOI 필드를 사용할 수 있다. 이런 시나리오에서, 각 오브젝트는 세션 내의 고유한 TOI를 사용하여 식별될 수 있고, 송신기는 동일한 오브젝트에 대해 존재하는 모든 패킷들에 대해 해당 TOI를 사용할 수 있다. 세션에서 운반되는 TOI들과 파일들간의 매핑은 엔터티 모드 전달이 적용될 경우 엔터티-헤더 필드들에서 뿐만 아니라 GFD 세션 디스크립션에서 설명된다.
상기에서 설명한 바와 같은 GFD 헤더가 사용될 수 있다. GFD 패킷 헤더는 상기 세션에 대해서 성립되는 정보에 대한 설정들을 수신기로 통신하기 위해 사용될 수 있고, 세션동안 달라질 수도 있는 코드 포인트 필드를 포함한다. 설정들과 코드 포인트 값들간의 매핑은 GFD 세션 디스크립션에서 통신된다.
일 예로, T > 0가 바이트들 단위의 오브젝트의 전송-길이라고 할 경우, 패킷의 페이로드에서 운반되는 데이터는 상기 오브젝트의 연속된 부분으로 구성된다. 그리고 나서, X + Y가 최대 T일 동안은, 임의의 X 및 임의의 Y > 0에 대해서, 패킷이 생성될 수 있다. 이런 조건하에서, 다음이 유지될 수 있다: (A) 패킷의 페이로드에서 운반되는 데이터는 바이트 X + Y의 시작을 통해 바이트 X로부터 시작되는 상기 오브젝트의 연속적인 부분으로 구성되고; (B) GFD 패킷 헤더에 포함되어 있는 start_offset 필드는 X로 설정될 수 있고, 페이로드 데이터는 송신하는 패킷에 추가될 수 있고; (C) X + Y가 T와 동일할 경우, 패킷 헤더 플래그 B는 1로 설정될 수 있고, X + Y가 T와 동일하지 않을 경우, 패킷 헤더 플래그 B는 0으로 설정될 수 있다.
다음과 같은 예시적인 절차가 송신기가 오브젝트를 전달하여 start_offset 및 해당하는 페이로드 데이터를 포함하는 패킷들을 생성하도록 사용될 수 있다. 먼저, 송신기는 바이트 오프셋 카운터 X를 0으로 설정한다. 그리고 나서, 전달되는 다음 패킷들은 페이로드의 바이트들 길이를 고정된 값 Y로 설정한다. 여기서, Y는 a) 패킷 페이로드에 대해서 적합하고(일 예로, 전체 패킷 사이즈가 상기 MTU를 초과하지 않는다는 것을 보장하고, b) X와 Y의 합이 최대 T이고, c) 상기 패킷에 포함되어 있는 페이로드 데이터에 대해 적합하다. 그리고 나서, 송신기는 상기에서 설명한 바와 같은 규칙들 a-c 형태를 따라 패킷을 생성한다. 그리고 나서, X + Y가 T와 동일할 경우, 송신기는 패킷 헤더 플래그 B를 1로 설정하고, X + Y가 T와 동일하지 않을 경우, 송신기는 패킷 헤더 플래그 B를 0으로 설정하고, X = X + Y로 증가시키고, 규칙들 a-c에 따라 패킷을 생성하도록 되돌아간다.
패킷 전달의 순서는 임의적일 수 있지만, 송신기는 증가하는 start_offset 번호를 가지는 다른 제약 전달(constraints delivery)이 존재하지 않을 경우 전달을 수행할 수 있다. 전송 길이는 데이터의 이전 피스(piece)들을 송신하기 전에 알려질 수 없다. 이 상황에서, T는 이후에 결정될 수 있다. 그러나, 이는 상기에서 설명한 바와 같은 송신기 프로세스에 영향을 미치지 않는다. 추가적인 패킷들이 상기에서 설명한 바와 같은 (A)-(C) 형태의 규칙들을 따라 송신될 수 있다. 이 경우, 상기 B 플래그는 오브젝트의 마지막 부분을 포함하는 패킷에 대해서만 설정될 수 있다.
GFD Session Description은 다른 코드 포인트 값들에 의해 식별되는 하나 혹은 다수의 코드 포인트들을 포함한다. 각 패킷을 수신할 경우, 수신기(일 예로, 수신 엔터티들(110-116) 중 하나 혹은 그 이상)는 다음과 같은 단계들을 진행할 수 있다. 첫 번째로, 수신기는 패킷 헤더를 분석하고, 패킷 헤더가 유효한 헤더인지 확인한다. 패킷 헤더가 유효하지 않을 경우, 패킷은 추가적인 프로세싱없이 폐기될 수 있다. 두 번째로, 수신기는 코드 포인트 값을 분석하고, GFD 세션 디스크립션이 매칭되는 코드 포인트를 포함하는지 확인한다. 그것이 유효하지 않을 경우, 패킷은 추가적인 프로세싱없이 폐기될 수 있다.
세 번째로, 수신기는 패킷의 나머지 부분을 프로세싱하고, 패킷의 나머지 부분의 프로세싱은 다른 헤더 필드들을 적합하게 해석하고, source_offset 및 페이로드 데이터를 사용하여 다음과 같이 해당 오브젝트를 재구성하는 것을 포함한다: a) 수신기는 세션 정보와, 존재할 경우, 페이로드 헤더에서 운반되는 toi에 의해서 수신된 패킷이 어떤 오브젝트로부터 생성되었는지 결정할 수 있고; b) 오브젝트에 대한 첫 번째 패킷이 수신될 경우, 수신기는 Object Transmission Information의 일부로서 수신되는 Maximum Transfer Length를 사용하여 오브젝트의 최대 길이 T'를 결정하고; c) 수신기는 오브젝트가 요구할 수 있는 T' 바이트들에 대한 공간을 할당하고; d) 수신기는 수신된 패킷의 전체 길이로부터 패킷 헤더의 길이를 감산하여 페이로드의 길이 Y를 연산하고; e) 수신기는 수신된 오브젝트 심볼들을 추적(track)하기 위해 거짓(false)으로 초기화되는 모든 T 엔트리(entry)들을 가지는 Boolean array RECEIVED[0..T'-1]를 할당한다. 수신기는 여전히 false로 설정되어 있는 RECEIVED에 적어도 하나의 엔트리가 존재하는 한, 혹은 상기 어플리케이션이 이 오브젝트를 포기하기로 결정할 때까지 상기 오브젝트 블록(object block)에 대해 패킷들을 지속적으로 수신한다.
f) 오브젝트(첫 번째 패킷을 포함하는)에 대해 수신된 각 패킷에 대해서, 오브젝트를 복원하는 것을 도와주도록 처리되는 단계들은 다음과 같다: i) X가 패킷의 GFD 패킷 헤더에 포함되어 있는 source_offset 필드의 값이고, 수신된 패킷의 전체 길이로부터 패킷 헤더 길이를 감산시킴으로써 계산된, Y가 페이로드의 길이라고 하기로 한다; ii) 수신기는 오브젝트에 대해서 예약된 공간 내에서 적합한 장소로 데이터를 복사하고, RECEIVED[X ... X+Y-1] = true로 설정한다; iii) 모든 T entries of RECEIVED가 진실(true)일 경우, 수신기는 전체 오브젝트를 복원하였다; g) 수신기가 1로 설정된 상기 B 플래그를 수신하면, 수신기는 오브젝트의 전송 길이 T를 해당하는 패킷의 X+Y라고 결정하고, Boolean array RECEIVED[0..T'-1]를 RECEIVED[0..T-1]로 조정할 수 있다.
GFD CodePoint: GFD 모드를 사용하여 전달되는 파일들에 대한 정보는 asset_scheme_code가 “GeneralFile”로 설정될 경우 MP 테이블에서 지시된다. GFD 모드를 사용하여 전달되는 일반 오브젝트들은 packet_id에 의해 식별되는 packet_id 플로우로 함께 그룹핑될 수 있다. GFD 모드를 사용하여 일반 오브젝트들을 운반하는 패킷들은 MMTP 패킷 헤더 타입 필드에서 타입 1로 마킹될 수 있다. GFD 표는 하나 혹은 다수의 코드 포인트들을 정의한다. 코드 포인트 표는 하기 <표 8>에 제공되어 있다.
신택스 비트들의 개수 연상기호
CodePoint () {
table_id
version
length
value
maximumTransferLength
constantTransferLength
contentLocationTemplateSize
contentLocationTemplate[N5]
EntityHeaderSize
EntityHeader[N7]
}




N1
N2
N3
N4
N5
N6
N7

8
8
16
8
48
8
8
8*N5
16
8*N7

uimsbf
uimsbf
uimsbf
uimsbf
uimsbf
uimsbf
uimsbf
char
uimsbf
char
여기에서 설명되는 다양한 실시예들은 MMT 데이터 통신에 대해서 논의하지만, 본 게시의 다양한 실시예들은 MMT 통신들에만 제한되는 것이 아님에 유의하여야 한다. 일 예로, 고정된 지연 결정 및 버퍼 사이즈 결정은 본 게시의 원칙들에 따라, 적합한 타입의 데이터, 혹은 미디어 컨텐트 전달 및/혹은 적합한 타입의 송신 시스템에 적용될 수 있다.
도 13은 본 게시의 일 실시예에 따른 수신 엔터티에서 트랜스포트 패킷을 프로세싱하는 프로세스를 도시하고 있는 도면이다. 일 예로, 도 13에 도시되어 있는 바와 같은 프로세스는 도 1의 상기 수신 엔터티들(110-116)의 일부 혹은 모두에 의해 수행될 수 있다. 또한, 상기 프로세스는 도 15의 전자 디바이스(1500)에 의해 구현될 수 있다.
도 13을 참조하면, 상기 프로세스는 수신 엔터티가 트랜스포트 패킷을 수신하는 것으로 시작된다(단계 1305). 그리고 나서, 수신 엔터티는 패킷 헤더에 포함되어 있는 페이로드 타입을 지시하는 필드로부터 페이로드 타입을 식별한다(단계 1310). 일 예로, 단계 1310에서, 수신 엔터티는 패킷 헤더를 분석하여 도 9의 필드(904)와 같은, 오브젝트 타입 필드에 포함되어 있는 값을 식별하여 <표 6>에 따라 해당하는 페이로드 타입을 식별할 수 있다. 페이로드 타입이 일반 모드일 경우, 수신 엔터티는 일반 모드 페이로드 데이터를 프로세싱한다(단계 1315).
페이로드 타입이 스트리밍 모드일 경우, 수신 엔터티는 스트리밍 모드 페이로드 헤더에 포함되어 있는 전달 데이터 유닛 타입을 지시하는 필드로부터 전달 데이터 유닛 타입을 식별한다(단계 1320). 일 예로, 단계 1320에서, 수신 엔터티는 MMT 페이로드에 포함되어 있는 데이터의 타입과 같은 트랜스포트 패킷에 포함되어 있는 DU 데이터의 전달 데이터 유닛 타입을 식별할 수 있다.
일 예로, 수신 엔터티는 도 4에 도시되어 있는 바와 같은, 스트리밍 모드 페이로드 헤더를 분석하여 DU_type 필드(404)에 포함되어 있는 값을 식별하여 <표 1>에 따라 상기 전달 데이터 유닛 타입을 식별할 수 있다. 일 예로, DU 데이터는 DU 타입 필드에 포함되어 있는 값을 기반으로 완전 MPU와, MPU 메타데이터와, 무비 프래그먼트 메타데이터와, 타임드 MFU와, 논-타임드 MFU와, 시그널링 메시지, 혹은 복원 심볼들 중 하나를 포함할 수 있다.
따라서, 수신 엔터티는 스트리밍 모드 페이로드 헤더에 포함되어 있는 프래그먼테이션 지시자로부터 트랜스포트 패킷에 MFU(들)가 존재하는지 여부에 대한 정보를 식별한다(단계 1325). 일 예로, 단계 1325에서, 트랜스포트 패킷은 MFU들로서 배열된 MPU의 하나 혹은 그 이상의 프래그먼트들을 포함한다. 트랜스포트 패킷은 다수의 전달 데이터 유닛들을 포함할 수 있으며, 각 전달 데이터 유닛은 DU 헤더와 DU 데이터를 포함한다. 수신 엔터티는 <표 2>에 따른 프래그멘테이션 지시자 필드에 포함되어 있는 값을 기반으로 DU 데이터가: 하나 혹은 그 이상의 전달 데이터 유닛 헤더들 및 완전 전달 데이터 유닛들과, 전달 데이터 유닛 헤더 및 전달 데이터 유닛의 첫 번째 헤더와, 첫 번째 부분도 아니고 마지막 부분도 아닌 상기 전달 데이터 유닛의 프레그먼트, 혹은 상기 전달 데이터 유닛의 마지막 프래그먼트를 포함하는지 여부를 결정할 수 있다.
그리고 나서, 수신 엔터티는 DU 데이터를 프로세싱한다(단계 1330). 일 예로, 단계 1330에서, 수신 엔터티는 상기 식별된 전달 데이터 유닛 타입에 따라 DU 데이터를 프로세싱할 수 있다. 수신 엔터티는 DU 데이터를 프로세싱 및 디코딩하여 수신 엔터티와 연관되는 사용자에 대한 사용자 인터페이스(user interface)를 통해 미디어를 디스플레이한다.
도 14는 본 게시의 일 실시예에 따른 송신 엔터티에서 트랜스포트 패킷을 생성하는 프로세스를 도시하고 있는 도면이다. 일 예로, 도 14에 도시되어 있는 바와 같은 프로세스는 도 1의 송신 엔터티(101)에 의해 수행될 수 있다. 또한, 상기 프로세스는 도 15의 전자 디바이스(1500)에 의해 구현될 수 있다.
도 14를 참조하면, 상기 프로세스는 송신 엔터티가 트랜스포트 패킷을 생성하는 것으로 시작된다(단계 1405). 일 예로, 단계 1405에서, 송신 엔터티는 다운로딩 혹은 스트리밍 데이터를 포함하는 패킷을 생성할 수 있다. 송신 엔터티는 다수의 전달 데이터 유닛들을 포함할 수 있으며, 각 전달 데이터 유닛은 DU 헤더와 DU 데이터를 포함한다.
그리고 나서, 송신 엔터티는 트랜스포트 패킷에 대한 패킷 헤더에 포함되어 있는 페이로드 타입을 지시하는 필드에 페이로드 타입의 식별자를 포함시킨다(단계 1410). 일 예로, 단계 1410에서, 송신 엔터티는 <표 6>에서와 같이 오브젝트 타입에 해당하는 값을 도 9의 필드(904)에서와 같이 패킷 헤더의 타입 필드에 포함시킬 수 있다.
그리고 나서, 송신 엔터티는 페이로드 타입이 스트리밍 모드 페이로드 타입인지 여부를 결정할 수 있다(단계 1415). 페이로드 타입이 스트리밍 모드 이외의 타입을 경우, 일 예로, 일반(GFD) 모드일 경우, 송신 엔터티는 페이로드 시간에 따라 트랜스포트 패킷을 생성하고 1430단계로 진행하여 상기 생성된 트랜스포트 패킷을 송신한다.
그러나, 페이로드 타입이 스트리밍 모드 페이로드 타입일 경우, 송신 엔터티는 스트리밍 모드 페이로드 헤더에 포함되어 있는 전달 데이터 유닛 타입을 지시하는 필드에 전달 데이터 유닛 타입의 식별자를 포함시킨다. 일 예로, 단계 1420에서, 송신 엔터티는 패킷에 대한 전달 데이터 유닛 타입에 따른 값을 <표 1>의 전달 데이터 유닛 타입들에 따른 도 4의 스트리밍 모드 페이로드 헤더의 DU_type 필드(404)에 의해 도시되는 바와 같은, 스트리밍 모드 페이로드 헤더에 포함되어 있는 필드에 포함시킬 수 있다. 일 예로, DU 타입 필드는 상기 포함되어 있는 값을 기반으로 완전 MPU와, MPU 메타데이터와, 무비 프래그먼트 메타데이터와, 타임드 MFU와, 논-타임드 MFU와, 시그널링 메시지, 혹은 복원 심볼들 중 하나를 지시할 수 있다.
따라서, 송신 엔터티는 MFU(들)가 패킷에 존재하는지 여부에 대한 정보의 식별자를 상기 스트리밍 모드 페이로드 헤더에 포함되어 있는 프래그멘테이션 지시자 필드에 포함시킨다(단계 1425). 일 예로, 단계 1425에서, 트랜스포트 패킷은 MFU들로 배열된 MPU의 하나 혹은 그 이상의 프래그먼트들을 포함한다. 송신 엔터티는 <표 2>에 따른 프래그멘테이션 지시자 필드에 포함되어 있는 값을 기반으로 DU 데이터가: 하나 혹은 그 이상의 전달 데이터 유닛 헤더들 및 완전 전달 데이터 유닛들과, 전달 데이터 유닛 헤더 및 전달 데이터 유닛의 첫 번째 헤더와, 첫 번째 부분도 아니고 마지막 부분도 아닌 전달 데이터 유닛의 프레그먼트, 혹은 전달 데이터 유닛의 마지막 프래그먼트를 포함하는지 지시할 수 있다.
그리고 나서, 송신 엔터티는 상기 생성된 트랜스포트 패킷을 송신한다(단계 1430). 일 예로, 단계 1430에서, 송신 엔터티는 일 예로 도 13에 도시되어 있는 프로세스에 따라, 트랜스포트 패킷을 수신 및 프로세싱하는 수신 엔터티로 상기 트랜스포트 패킷을 송신할 수 있다.
도 13 및 도 14가 각각 송신 엔터티 및 수신 엔터티에 의한 트랜스포트 패킷들의 프로세싱 및 생성에 대한 프로세스들의 일 예를 도시하고 있다고 하더라도, 다양한 변형들이 도 13 및 도 14에 대해 이루어질 수 있음은 물론이다. 일 예로, 연속적인 단계들이 도시되어 있지만, 각 도면의 다양한 단계들은 오버랩(overlap)될 수 있고, 병렬로 발생할 수 있고, 다른 순서로 발생할 수 있거나, 혹은 다수 번 발생할 수 있음은 물론이다.
도 15는 본 게시의 다양한 실시예들이 구현될 수 있는 예제 전자 디바이스(1500)를 도시하고 있는 도면이다.
도 15를 참조하면, 전자 디바이스(1500)는 제어기(1504)와, 메모리(1506)와, 영구 저장 유닛(1508)과, 통신 유닛(1510)과, 입력/출력(input/output: I/O) 유닛(1512)과, 디스플레이(display)(1514)를 포함한다. 이 실시 예제들에서, 전자 디바이스(1500)는 또한, 도 1의 송신 엔터티(101) 및/혹은 수신 엔터티(110)의 일 예이다.
제어기(1504)는 적어도 하나의 동작을 제어하는 디바이스, 시스템 혹은 그 일부이며, 상기 디바이스는 하드웨어(hardware), 펌웨어(firmware) 혹은 소프트웨어(software), 혹은 상기 하드웨어, 펌웨어, 혹은 소프트웨어 중 적어도 두 개의 조합으로 구현될 수 있다. 일 예로, 제어기(1504)는 전자 디바이스(1500)의 동작들을 제어하는, 하드웨어 프로세싱 유닛과, 프로세싱 회로와, 미디어 코딩 및/혹은 디코딩 하드웨어 및/혹은 소프트웨어, 및/혹은 소프트웨어 프로그램을 포함할 수 있다. 일 예로, 제어기(1504)는 메모리(1506)에 로딩될 수 있는 소프트웨어에 대한 명령어(instruction)들을 프로세싱한다. 제어기(1504)는 특정 구현을 기반으로, 다수의 프로세서(processor)들과, 멀티-프로세서 코어(multi-processor core), 혹은 일부 다른 타입의 프로세서를 포함할 수 있다. 또한, 제어기(1504)는 메인 프로세서(main processor)가 단일 칩(chip)에서 보조 프로세서들과 함께 존재하는, 다수의 이종 프로세서 시스템을 사용하여 구현될 수 있다. 다른 실시 예제에서, 제어기(1504)는 동일한 타입의 다수의 프로세서들을 포함하는 대칭형 다중 프로세서(symmetric multi-processor) 시스템을 포함할 수 있다.
메모리(1506) 및 영구 저장 유닛(1508)은 저장 디바이스들(1516)의 예제들이다. 저장 디바이스는 임시 기반 및/혹은 영구 기반으로 정보, 일 예로, 데이터와, 기능적 형태의 프로그램 코드(program code), 및/혹은 다른 적합한 정보와 같은, 그렇다고 이에 한정되지는 않는, 정보를 저장할 수 있는 하드웨어의 일부이다. 이런 예제들에서, 메모리(1506)는 일 예로 랜덤 억세스 메모리(random access memory) 혹은 다른 적합한 휘발성 혹은 비휘발성 저장 디바이스가 될 수 있다. 일 예로, 영구 저장 유닛(1508)은 하나 혹은 그 이상의 컴포넌트(component)들 혹은 디바이스들을 포함할 수 있다. 영구 저장 유닛(1508)은 하드 드라이브(hard drive), 플래시 메모리(flash memory), 광 디스크, 혹은 상기 하드 드라이브, 플래시 메모리, 광 디스크의 일부 조합이 될 수 있다. 영구 저장 유닛(1508)에 의해 사용되는 미디어는 제거 가능할 수 있다. 일 예로, 제거 가능 하드 드라이브는 영구 저장 유닛(1508)을 위해 사용될 수 있다.
통신 유닛(1510)은 다른 데이터 프로세싱 시스템들 혹은 디바이스들과의 통신을 제공한다. 이런 예제들에서, 통신 유닛(1510)은 무선(셀룰라, 와이파이(WiFi) 등) 송신기, 수신기, 및/혹은 송/수신기, 네트워크 인터페이스 카드(network interface card), 및/혹은 물리 혹은 무선 통신 매체를 통해 통신들을 송신 및/수신하는 다른 적합한 하드웨어를 포함할 수 있다. 통신 유닛(1510)은 물리 통신 링크(link) 혹은 무선 통신 링크 중 하나 혹은 모두의 사용을 통해 통신들을 제공할 수 있다.
입력/출력 유닛(1512)은 상기 전자 디바이스(1500) 혹은 상기 전자 디바이스(1500)의 일부에 연결될 수 있는 다른 디바이스들과의 데이터 입력 및 출력을 허여한다. 일 예로, 입력/출력 유닛(1512)은 터치 사용자 입력(touch user input)들을 수신하는 터치 패널(touch panel), 오디오 입력(audio input)들을 수신하는 마이크로폰(microphone), 오디오 출력들을 제공하는 스피커(speaker), 및/혹은 햅틱 출력(haptic output)들을 제공하는 모터(motor)를 포함할 수 있다. 입력/출력 유닛(1512)은 상기 전자 디바이스(1500)의 사용자에게 미디어 데이터(일 예로, 오디오 데이터)를 제공 및 전달하는 사용자 인터페이스의 일 예이다. 다른 예에서, 입력/출력 유닛(1512)은 키보드(keyboard), 마우스(mouse), 외부 스피커, 외부 마이크로폰, 및/혹은 다른 적합한 입력/출력 디바이스를 통해 사용자 입력에 대한 연결을 제공할 수 있다. 또한, 입력/출력 유닛(1512)은 프린터로 출력을 송신할 수 있다. 디스플레이(1514)는 사용자에게 정보를 디스플레이하는 메카니즘(mechanism)을 제공하고, 전자 디바이스(1500)의 사용자에게 미디어 데이터(일 예로, 이미지(image) 및/혹은 비디오 데이터)를 제공 및 전달하는 사용자 인터페이스의 일 예이다.
동작 시스템, 어플리케이션들, 혹은 다른 프로그램들에 대한 프로그램 코드는 저장 디바이스들(1516)에 위치될 수 있고, 저장 디바이스들(1516)은 버스 시스템(1502)을 통해 제어기(1504)와 통신하고 있다. 일부 실시예들에서, 프로그램 코드는 영구 저장 유닛(1508)에서 기능적 형태로 존재한다. 이런 명령어들은 제어기(1504)에 의한 프로세싱을 위해 메모리(1506)로 로딩될 수 있다. 다른 실시예들의 프로세스들은 컴퓨터-구현 명령어(computer-implemented instruction)들을 사용하여 제어기(1504)에 의해 수행될 수 있고, 상기 컴퓨터-구현 명령어들은 메모리(1506)에 위치될 수 있다. 일 예로, 제어기(1504)는 상기에서 설명한 바와 같은 모듈(module)들 및/혹은 디바이스들 중 하나 혹은 그 이상에 대한 프로세스들을 수행할 수 있다.
일부 실시예들에서, 상기에서 설명한 바와 같은 다양한 기능들은 컴퓨터-리드 가능 프로그램 코드(computer-readable program code)로부터 형성되고, 컴퓨터-리드 가능 매체에서 실시되는 컴퓨터 프로그램 제품에 의해 구현 혹은 지원된다. 상기 컴퓨터 프로그램 제품에 대한 프로그램 코드는 선택적으로 삭제 가능한 컴퓨터-리드 가능 저장 디바이스에서 기능적 형태로 위치될 수 있고, 제어기(1504)에 의한 프로세싱을 위해 전자 디바이스(1500)로 로딩 혹은 전송될 수 있다. 일부 실시예들에서, 상기 프로그램 코드는 전자 디바이스(1500) 내에서의 사용을 위해 다른 디바이스 혹은 데이터 프로세싱 시스템으로부터 네트워크를 통해 영구 저장 디바이스(1508)로 다운로드될 수 있다. 일 예로, 서버 데이터 프로세싱 시스템에 포함되어 있는 컴퓨터-리드 가능 저장 매체에 저장되어 있는 프로그램 코드는 네트워크를 통해 상기 서버로부터 전자 디바이스(1500)로 다운로드될 수 있다. 프로그램 코드를 제공하는 상기 데이터 프로세싱 시스템은 서버 컴퓨터(server computer), 클라이언트 컴퓨터(client computer), 혹은 프로그램 코드를 저장 및 송신할 수 있는 일부 다른 디바이스가 될 수 있다.
한편 본 게시는 실시예들에 관해 설명하였으나, 다양한 변형들 및 수정들이 해당 기술 분야의 당업자에게 제시될 수 있다. 본 게시는 첨부되는 청구항들의 범위 내에서 상기와 같은 변형들 및 수정들을 포함할 수 있다.

Claims (2)

  1. 멀티미디어 시스템에서 미디어 컨텐츠 전송 장치에 있어서,
    상기 미디어 컨텐츠의 미디어 데이터를 적어도 하나의 서브 데이터 유닛을 포함하는 적어도 하나 이상의 데이터 유닛으로 구성하는 제어부,
    패킷 헤더와, 상기 데이터 유닛의 적어도 일부 데이터를 포함하는 페이로드로 구성된 트랜스포트 패킷을 수신 엔터티로 송신하는 송신부를 포함하며,
    상기 패킷 헤더는, 복수의 페이로드 타입들 중 상기 페이로드 내에 포함되는 상기 데이터의 타입을 지시하는 정보를 포함하고,
    상기 복수의 페이로드 타입들은,
    일반 오브젝트(generic object)를 전송하기 위한 데이터가 상기 페이로드에 포함됨을 알려주는 제1 페이로드 타입과,
    미디어-인식 방식(media-aware manner)으로 상기 데이터 유닛을 분할함으로써 생성된 데이터가 상기 페이로드에 포함됨을 알려주는 제2 페이로드 타입과,
    하나 이상의 제어 메시지가 상기 페이로드에 포함됨을 알려주는 제3 페이로드 타입과,
    에러 정정 복구 심볼이 상기 페이로드에 포함됨을 알려주는 제4 페이로드 타입을 포함함을 특징으로 하는 미디어 컨텐츠 전송 장치.
  2. 제 1 항에 있어서,
    상기 트랜스포트 패킷은 적어도 하나의 서브 데이터 유닛을 포함함을 특징으로 하는 미디어 컨텐츠 전송 장치.
KR1020150000130A 2013-07-26 2015-01-02 멀티미디어 시스템에서 미디어 컨텐츠 수신 방법 KR102015963B1 (ko)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201361859015P 2013-07-26 2013-07-26
US61/859,015 2013-07-26
US201361896570P 2013-10-28 2013-10-28
US61/896,570 2013-10-28
US14/178,212 US20150032845A1 (en) 2013-07-26 2014-02-11 Packet transmission protocol supporting downloading and streaming
US14/178,212 2014-02-11

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020140094980A Division KR101530825B1 (ko) 2013-07-26 2014-07-25 멀티미디어 시스템에서 미디어 컨텐츠 전송 방법

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020190103570A Division KR102127733B1 (ko) 2013-07-26 2019-08-23 멀티미디어 시스템에서 미디어 컨텐츠 전송 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20150015542A true KR20150015542A (ko) 2015-02-10
KR102015963B1 KR102015963B1 (ko) 2019-08-30

Family

ID=52391425

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020140094980A KR101530825B1 (ko) 2013-07-26 2014-07-25 멀티미디어 시스템에서 미디어 컨텐츠 전송 방법
KR1020150000130A KR102015963B1 (ko) 2013-07-26 2015-01-02 멀티미디어 시스템에서 미디어 컨텐츠 수신 방법
KR1020190103570A KR102127733B1 (ko) 2013-07-26 2019-08-23 멀티미디어 시스템에서 미디어 컨텐츠 전송 방법 및 장치

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020140094980A KR101530825B1 (ko) 2013-07-26 2014-07-25 멀티미디어 시스템에서 미디어 컨텐츠 전송 방법

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020190103570A KR102127733B1 (ko) 2013-07-26 2019-08-23 멀티미디어 시스템에서 미디어 컨텐츠 전송 방법 및 장치

Country Status (11)

Country Link
US (2) US20150032845A1 (ko)
EP (2) EP3025464B1 (ko)
JP (4) JP5883199B2 (ko)
KR (3) KR101530825B1 (ko)
CN (3) CN111049820B (ko)
AU (1) AU2014293819B2 (ko)
BR (1) BR112016001661B1 (ko)
ES (1) ES2878022T3 (ko)
MX (2) MX356847B (ko)
MY (1) MY174260A (ko)
WO (1) WO2015012645A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180137477A (ko) * 2016-02-02 2018-12-27 상하이 지아오통 유니버시티 멀티미디어 시스템 정보 교환 메카니즘 및 네트워크 전송 방법

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150032845A1 (en) * 2013-07-26 2015-01-29 Samsung Electronics Co., Ltd. Packet transmission protocol supporting downloading and streaming
US9807452B2 (en) * 2013-10-07 2017-10-31 Samsung Electronics Co., Ltd. Practical delivery of high quality video using dynamic adaptive hypertext transport protocol (HTTP) streaming (DASH) without using HTTP in a broadcast network
US9641831B2 (en) * 2013-10-28 2017-05-02 Electronics And Telecommunications Research Institute Apparatus and method for transmitting/receiving moving picture experts group (MPEG) media transport (MMT) signaling message for measurement configuration (MC) processing
KR20160142327A (ko) * 2014-04-30 2016-12-12 엘지전자 주식회사 방송 전송 장치, 방송 수신 장치, 방송 전송 장치의 동작 방법 및 방송 수신 장치의 동작 방법
WO2015178690A1 (ko) * 2014-05-21 2015-11-26 엘지전자 주식회사 방송 신호 송/수신 처리 방법 및 장치
JP6558366B2 (ja) * 2014-06-10 2019-08-14 ソニー株式会社 送信装置、送信方法および受信装置
KR102191878B1 (ko) * 2014-07-04 2020-12-16 삼성전자주식회사 멀티미디어 시스템에서 미디어 패킷을 수신하는 방법 및 장치
KR102174325B1 (ko) * 2015-02-13 2020-11-04 에스케이텔레콤 주식회사 네트워크 적응형 컨텐츠 제공을 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 및 네트워크 적응형 컨텐츠 제공 장치
KR102137349B1 (ko) * 2015-03-02 2020-07-23 닛본 덴끼 가부시끼가이샤 디코딩 장치, 수신기기, 송신기기, 송수신 시스템, 디코딩 방법, 및 디코딩 프로그램이 저장된 저장매체
WO2016144072A1 (ko) 2015-03-08 2016-09-15 엘지전자(주) 방송 신호 송수신 장치 및 방법
JP6543819B2 (ja) * 2015-04-28 2019-07-17 日本放送協会 処理装置およびプログラム
KR102209785B1 (ko) * 2015-06-09 2021-01-28 에스케이텔레콤 주식회사 Mmt 패킷 캐싱 처리 방법 및 이를 위한 장치, 캐싱 처리를 위한 mmt 패킷 생성 방법 및 이를 위한 장치
KR102209784B1 (ko) * 2015-06-09 2021-01-28 에스케이텔레콤 주식회사 Mmt 패킷 캐싱 처리 방법 및 이를 위한 장치, 캐싱 처리를 위한 mmt 패킷 생성 방법 및 이를 위한 장치
US10750215B2 (en) 2015-07-27 2020-08-18 Lg Electronics Inc. Method and device for transmitting metadata in WFD
US10116576B2 (en) 2015-10-19 2018-10-30 Samsung Electronics Co., Ltd. Methods and apparatus for random access of HEVC bitstream for MMT
WO2017200319A1 (ko) * 2016-05-18 2017-11-23 에스케이텔레콤 주식회사 적응형 스트리밍 서비스 제공 방법 및 이를 위한 장치
KR20170130253A (ko) * 2016-05-18 2017-11-28 에스케이텔레콤 주식회사 적응형 스트리밍 서비스 제공 방법 및 이를 위한 장치
KR102421791B1 (ko) * 2016-05-26 2022-07-15 삼성전자주식회사 Mmt 네트워크 시스템에서 미디어 시간 정보를 전송 하는 방법 및 장치
FR3052943B1 (fr) * 2016-06-15 2018-12-14 Hl2 Procede de reconstruction de donnees dans une transmission a bas debit
FR3052944B1 (fr) * 2016-06-15 2019-07-19 Hl2 Procede de segmentation de donnees a haut rendement
CN106411872B (zh) * 2016-09-21 2019-09-17 杭州迪普科技股份有限公司 一种基于数据报文分类的报文压缩的方法和装置
KR101915469B1 (ko) * 2016-11-29 2018-11-06 에스케이텔레콤 주식회사 스트리밍 서비스 제공 방법 및 이를 위한 장치
US10958988B2 (en) * 2017-03-24 2021-03-23 Mediatek Inc. Methods and apparatus for media content asset changes
US10594618B1 (en) * 2017-06-06 2020-03-17 Juniper Networks, Inc Apparatus, system, and method for fragmenting packets into segments that comply with the maximum transmission unit of egress interfaces
KR20210021861A (ko) 2019-08-19 2021-03-02 (주)제노팜 사람 표피성장인자수용체 2 양성 암을 치료하기 위한 인터페론-베타 변이체 면역사이토카인의 용도 및 환자 선별 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002532009A (ja) * 1998-12-01 2002-09-24 サン・マイクロシステムズ・インコーポレーテッド トランスポート・ストリームに埋め込まれたバイトコードの配信のための方法およびその装置
KR20050066954A (ko) * 2003-12-26 2005-06-30 한국전자통신연구원 디지털 텔레비젼 방송신호를 디지털 라디오 방송신호로변환하는 방송신호 변환 장치 및 그 방법
KR20110019404A (ko) * 2005-08-02 2011-02-25 엘지전자 주식회사 디지털 방송 송수신기 및 디지털 방송 수신기에서 디지털 방송 신호를 처리하는 방법
KR101530825B1 (ko) * 2013-07-26 2015-06-29 삼성전자주식회사 멀티미디어 시스템에서 미디어 컨텐츠 전송 방법

Family Cites Families (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6633903B1 (en) * 2000-03-23 2003-10-14 Monkeymedia, Inc. Method and article of manufacture for seamless integrated searching
US7743397B2 (en) 2001-01-17 2010-06-22 Lg Electronics Inc. Digital television signal, digital television receiver, and method of processing digital television signal
JP4399998B2 (ja) * 2001-03-22 2010-01-20 株式会社日立製作所 デジタル放送用ストリームの蓄積方法
US20030018793A1 (en) * 2001-07-19 2003-01-23 Oscar Mora Reliable transport layer protocol in low performance 8-bit microcontrollers
WO2005064936A1 (en) 2003-12-26 2005-07-14 Electronics And Telecommunications Research Institute Apparatus and method for transforming a digital tv broadcasting signal to a digital radio broadcasting signal
US20050190756A1 (en) * 2004-02-26 2005-09-01 Mundra Satish Kumar M. RTP payload for voice band data transmission
JP2008521265A (ja) * 2004-11-04 2008-06-19 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 符号化されたビデオデータを処理する方法及び装置
US20070153830A1 (en) * 2006-01-05 2007-07-05 Xhafa Ariton E Methods and apparatus to provide fairness for wireless local area networks that use extended physical layer protection mechanisms
KR20080006441A (ko) 2006-07-12 2008-01-16 삼성전자주식회사 미디어 데이터 전송 장치 및 방법 및 미디어 데이터 수신장치 및 방법
US20080040498A1 (en) * 2006-08-10 2008-02-14 Nokia Corporation System and method of XML based content fragmentation for rich media streaming
US20080115063A1 (en) * 2006-11-13 2008-05-15 Flagpath Venture Vii, Llc Media assembly
US20080134266A1 (en) * 2006-11-24 2008-06-05 Young-Seok Kang Digital broadcasting system and error correction method thereof
US7995590B2 (en) * 2007-03-27 2011-08-09 Cisco Technology, Inc. Method and system for communicating H.263 macroblock boundaries using H.221 BAS for RFC2190-compliant fragmentation
US8995422B2 (en) * 2007-06-21 2015-03-31 Interdigital Technology Corporation Signaling in a wireless communication system
US8180029B2 (en) 2007-06-28 2012-05-15 Voxer Ip Llc Telecommunication and multimedia management method and apparatus
EP2191402A4 (en) * 2007-08-20 2014-05-21 Nokia Corp SEGMENTED METADATA AND INDEXES FOR MULTIMEDIA FLOW DATA
KR101034758B1 (ko) * 2007-10-04 2011-05-17 에스케이 텔레콤주식회사 통합 멀티미디어 파일의 초기 실행 방법과 이를 위한시스템
KR101653310B1 (ko) * 2009-09-02 2016-09-01 엘지전자 주식회사 Mac 헤더 타입 정보를 이용한 mac pdu 송수신 방법 및 장치
KR101216100B1 (ko) * 2009-11-18 2012-12-26 엘지전자 주식회사 단편화 패킹 확장헤더를 수반하는 mac pdu를 전송하는 방법 및 장치
EP2362654A1 (en) * 2010-02-26 2011-08-31 Panasonic Corporation Short baseband frame headers
EP2418792A1 (de) 2010-05-19 2012-02-15 Fraunhofer-Gesellschaft zur Förderung der Angewandten Forschung e.V. Digital Multimedia Broadcast (DMB) mit effizienter Übertragung der Daten zur Zugangsbeschränkung im Transportstrom-Packet mit der Programmzuordnungstabelle (Program Association Table = PAT)
KR101857416B1 (ko) * 2011-06-13 2018-05-16 한국전자통신연구원 오버헤드를 최소화한 헤더를 가지는 패킷 기반의 미디어 데이터 전송 방법
WO2013009048A1 (en) * 2011-07-08 2013-01-17 Samsung Electronics Co., Ltd. Method for generating forward error correction packet in multimedia system and method and apparatus for transmitting and receiving forward error correction packet
US9319721B2 (en) * 2011-10-13 2016-04-19 Electronics And Telecommunications Research Institute Method of configuring and transmitting an MMT transport packet
KR20130040090A (ko) * 2011-10-13 2013-04-23 삼성전자주식회사 복합 네트워크에서 멀티미디어 데이터를 전송하기 위한 장치 및 그 방법
KR101933465B1 (ko) * 2011-10-13 2019-01-11 삼성전자주식회사 이동 통신 시스템에서 패킷 송수신 장치 및 방법
KR20130040132A (ko) * 2011-10-13 2013-04-23 한국전자통신연구원 이종 ip 네트워크를 통한 미디어 코덱에 독립적인 미디어 데이터 전송 방법
US8930064B2 (en) * 2011-10-27 2015-01-06 Snap-On Incorporated Method and system for automated and manual data capture configuration
KR101995221B1 (ko) * 2011-11-24 2019-07-16 삼성전자주식회사 통신 시스템에서 패킷 송수신 장치 및 방법
KR102048730B1 (ko) * 2011-11-30 2020-01-08 삼성전자주식회사 방송 데이터 송/수신장치 및 방법
US9274937B2 (en) * 2011-12-22 2016-03-01 Longitude Enterprise Flash S.A.R.L. Systems, methods, and interfaces for vector input/output operations
KR20130085987A (ko) * 2012-01-20 2013-07-30 한국전자통신연구원 이종망 네트워크에서 미디어 프래그먼트 유닛으로 나누어진 액세스 유닛을 가지는 미디어 데이터를 전송하는 방법
US20140369222A1 (en) * 2012-01-26 2014-12-18 Electronics And Telecommunications Research Institute Method for estimating network jitter in apparatus for transmitting coded media data
CN104255036A (zh) * 2012-03-23 2014-12-31 数码士控股有限公司 Mmt打包svc视频内容的混合传送方法及接收方法
KR101501347B1 (ko) 2012-04-25 2015-03-10 삼성전자주식회사 멀티미디어 시스템에서 미디어 컨텐츠 전송 방법
US9544641B2 (en) * 2012-05-10 2017-01-10 Humax Co., Ltd. Hybrid transmission method through MMT packet format extension
KR20140002447A (ko) * 2012-06-29 2014-01-08 삼성전자주식회사 멀티미디어 시스템에서 적응적 미디어 구조 송수신 방법 및 장치
KR20140008237A (ko) * 2012-07-10 2014-01-21 한국전자통신연구원 엠엠티의 하이브리드 전송 서비스에서 패킷 전송 및 수신 장치 및 방법
KR102185384B1 (ko) * 2012-07-11 2020-12-02 한국전자통신연구원 Mpeg 데이터의 랜덤 억세스를 지원하는 방법 및 시스템
US9462043B2 (en) * 2013-03-13 2016-10-04 Cisco Technology, Inc. Framework for dynamically programmed network packet processing
JP5641090B2 (ja) * 2013-03-14 2014-12-17 ソニー株式会社 送信装置、送信方法、受信装置および受信方法
BR112015026497A2 (pt) * 2013-04-17 2017-07-25 Thomson Licensing método e aparelho para compactação de cabeçalho de pacote
US9872227B2 (en) * 2013-04-23 2018-01-16 Qualcomm Incorporated Systems and methods for identification in a neighborhood aware network
EP3926963A3 (en) * 2013-04-30 2022-01-26 Saturn Licensing LLC Transmitting device, transmitting method, receiving device, and receiving method
CN105264899A (zh) * 2013-06-07 2016-01-20 索尼公司 发送装置、发送方法、接收装置及接收方法
RU2677572C2 (ru) * 2013-06-07 2019-01-17 Сони Корпорейшн Устройство и способ передачи потока передачи и устройство обработки
JP6605789B2 (ja) * 2013-06-18 2019-11-13 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 送信方法、受信方法、送信装置、および、受信装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002532009A (ja) * 1998-12-01 2002-09-24 サン・マイクロシステムズ・インコーポレーテッド トランスポート・ストリームに埋め込まれたバイトコードの配信のための方法およびその装置
KR20050066954A (ko) * 2003-12-26 2005-06-30 한국전자통신연구원 디지털 텔레비젼 방송신호를 디지털 라디오 방송신호로변환하는 방송신호 변환 장치 및 그 방법
KR20110019404A (ko) * 2005-08-02 2011-02-25 엘지전자 주식회사 디지털 방송 송수신기 및 디지털 방송 수신기에서 디지털 방송 신호를 처리하는 방법
KR20110022017A (ko) * 2005-08-02 2011-03-04 엘지전자 주식회사 디지털 방송 송수신기에서 방송 신호를 처리하는 방법
KR101530825B1 (ko) * 2013-07-26 2015-06-29 삼성전자주식회사 멀티미디어 시스템에서 미디어 컨텐츠 전송 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180137477A (ko) * 2016-02-02 2018-12-27 상하이 지아오통 유니버시티 멀티미디어 시스템 정보 교환 메카니즘 및 네트워크 전송 방법

Also Published As

Publication number Publication date
CN105409174A (zh) 2016-03-16
KR102127733B1 (ko) 2020-06-30
AU2014293819A1 (en) 2016-02-04
JP6526289B2 (ja) 2019-06-05
JP6106775B2 (ja) 2017-04-05
ES2878022T3 (es) 2021-11-18
EP3025464A1 (en) 2016-06-01
WO2015012645A1 (en) 2015-01-29
EP3025464B1 (en) 2021-04-21
JP2017108458A (ja) 2017-06-15
MX356847B (es) 2018-06-18
CN110830511A (zh) 2020-02-21
JP2015530854A (ja) 2015-10-15
CN111049820B (zh) 2022-06-03
KR20150013081A (ko) 2015-02-04
MX2018007146A (es) 2020-11-06
EP3025464A4 (en) 2017-01-11
CN105409174B (zh) 2020-01-03
JP6346329B2 (ja) 2018-06-20
KR20190101351A (ko) 2019-08-30
BR112016001661A2 (pt) 2020-08-25
MX2016001137A (es) 2016-04-29
JP2018148577A (ja) 2018-09-20
CN111049820A (zh) 2020-04-21
US11637887B2 (en) 2023-04-25
MY174260A (en) 2020-04-01
EP3840313A1 (en) 2021-06-23
US20150032845A1 (en) 2015-01-29
BR112016001661B1 (pt) 2023-04-18
JP2016129358A (ja) 2016-07-14
JP5883199B2 (ja) 2016-03-09
US20200204609A1 (en) 2020-06-25
KR102015963B1 (ko) 2019-08-30
AU2014293819B2 (en) 2018-05-17
CN110830511B (zh) 2021-10-26
KR101530825B1 (ko) 2015-06-29

Similar Documents

Publication Publication Date Title
KR102127733B1 (ko) 멀티미디어 시스템에서 미디어 컨텐츠 전송 방법 및 장치
US20180123810A1 (en) Methods for delivery of flows of objects over broadcast/multicast enabled networks
KR20160139020A (ko) Mmt 및 dash를 이용한 브로드캐스트 및 브로드밴드 하이브리드 서비스
MX2015004596A (es) Metodo y aparato para el control de envio de datos de medios.
KR20170117116A (ko) Dash 표준 및 flute 프로토콜에 기초한 전송 시 패킷 손실을 처리하는 방법
KR102310031B1 (ko) Mmt에서 미디어 데이터의 저 지연 소비 시그날링 및 동작 방법 및 장치
KR20160004858A (ko) 멀티미디어 통신 시스템에서 패킷 송/수신 장치 및 방법
KR102207453B1 (ko) Mmt 패킷 구성 장치 및 mmt 패킷 구성 방법

Legal Events

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