KR102191970B1 - Apparatus and Method for Transmitting Data - Google Patents

Apparatus and Method for Transmitting Data Download PDF

Info

Publication number
KR102191970B1
KR102191970B1 KR1020140156241A KR20140156241A KR102191970B1 KR 102191970 B1 KR102191970 B1 KR 102191970B1 KR 1020140156241 A KR1020140156241 A KR 1020140156241A KR 20140156241 A KR20140156241 A KR 20140156241A KR 102191970 B1 KR102191970 B1 KR 102191970B1
Authority
KR
South Korea
Prior art keywords
packet
content
processor
signaling
fec
Prior art date
Application number
KR1020140156241A
Other languages
Korean (ko)
Other versions
KR20150079399A (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
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to US14/587,601 priority Critical patent/US9729903B2/en
Publication of KR20150079399A publication Critical patent/KR20150079399A/en
Application granted granted Critical
Publication of KR102191970B1 publication Critical patent/KR102191970B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • 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/23406Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving management of server-side video buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23605Creation or processing of packetized elementary streams [PES]

Abstract

제2 디바이스로 MMT(MPEG Media Transport) 형식의 패킷을 전송하는 제1 디바이스에 있어서, 제1 컨텐트에 기초하여 제1 패킷을 생성하는 제1 프로세서, 제2 컨텐트에 기초하여 제2 패킷을 생성하는 제2 프로세서, 상기 제1 컨텐트 및 상기 제2 컨텐트에 기초하여 시그널링 패킷을 생성하는 시그널링 프로세서 및 상기 제1 패킷, 상기 제2 패킷 및 상기 시그널링 패킷을 상기 제2 디바이스로 송신하는 통신부를 포함하고, 상기 제1 프로세서, 상기 제2 프로세서 및 상기 시그널링 프로세서는 병렬적으로 상기 제1 패킷, 상기 제2 패킷 및 상기 시그널링 패킷을 생성하는 것을 특징으로 하는 제1 디바이스가 개시된다. A first device that transmits a packet in an MPEG Media Transport (MMT) format to a second device, wherein the first processor generates a first packet based on the first content, and generates a second packet based on the second content. A second processor, a signaling processor that generates a signaling packet based on the first content and the second content, and a communication unit that transmits the first packet, the second packet, and the signaling packet to the second device, A first device is disclosed, wherein the first processor, the second processor, and the signaling processor generate the first packet, the second packet and the signaling packet in parallel.

Description

데이터 전송 디바이스 및 그 전송 방법 {Apparatus and Method for Transmitting Data}Data transmission device and its transmission method {Apparatus and Method for Transmitting Data}

본 발명의 실시예들은 MMT(MPEG Media Trasport) 형식의 데이터 전송 디바이스 및 전송 방법에 관한 것이다.Embodiments of the present invention relate to a device and method for transmitting data in MPEG Media Trasport (MMT) format.

최근 들어, 멀티미디어 컨텐트의 이용이 급증하고 있으며, 디바이스를 통한 멀티미디어 컨텐트의 전송 또한 급증하고 있다. In recent years, the use of multimedia content is increasing rapidly, and transmission of multimedia content through devices is also increasing rapidly.

멀티미디어 컨텐트는 MPEG 표준을 따르는 경우가 많으므로, MPEG 관련 기술들도 발달하여, 최근에는 차세대 멀티미디어 부호화 표현 및 다중화 전달 표준인 MPEG-H를 준비하기에 이르렀다. Since multimedia content often follows the MPEG standard, MPEG-related technologies have also been developed, and in recent years, MPEG-H, a next-generation multimedia encoding expression and multiplexing delivery standard, has been prepared.

또한, 컨텐트의 사용 빈도가 높아지면서 복수 개의 컨텐트를 동시에 사용하는 경우도 많아졌다. In addition, as the frequency of use of content has increased, a number of cases of simultaneously using a plurality of content have increased.

현재까지 MPEG-H 관련 기술은 계속적으로 발전하고 있지만, 동시에 여러 개의 컨텐트를 처리하는 기술은 MPEG-H의 TS(Transport Stream) 표준인 MMT(MPEG Media Trasport) 프로토콜 수행에 있어서 미흡한 실정이다.Until now, MPEG-H-related technologies are continuously developing, but technologies for simultaneously processing multiple contents are insufficient in performing the MPEG Media Trasport (MMT) protocol, which is a transport stream (TS) standard of MPEG-H.

본 발명의 실시예들은 MMT 형식의 데이터를 포함하는 복수개의 컨텐트를 처리하는 방법 및 장치에 관한 것이다. Embodiments of the present invention relate to a method and apparatus for processing a plurality of content including MMT format data.

상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 개시의 일 실시예의 일 측면에 따르면, 제2 디바이스로 MMT(MPEG Media Transport) 형식의 패킷을 전송하는 제1 디바이스에 있어서, 제1 컨텐트에 기초하여 제1 패킷을 생성하는 제1 프로세서, 제2 컨텐트에 기초하여 제2 패킷을 생성하는 제2 프로세서, 상기 제1 컨텐트 및 상기 제2 컨텐트에 기초하여 시그널링 패킷을 생성하는 시그널링 프로세서 및 상기 제1 패킷, 상기 제2 패킷 및 상기 시그널링 패킷을 상기 제2 디바이스로 송신하는 통신부를 포함하고, 상기 제1 프로세서, 상기 제2 프로세서 및 상기 시그널링 프로세서는 병렬적으로 상기 제1 패킷, 상기 제2 패킷 및 상기 시그널링 패킷을 생성하는 것을 특징으로 하는 제1 디바이스가 제공될 수 있다.As a technical means for achieving the above-described technical problem, according to an aspect of an embodiment of the present disclosure, in a first device for transmitting an MMT (MPEG Media Transport) format packet to a second device, based on the first content A first processor that generates a first packet by doing so, a second processor that generates a second packet based on a second content, a signaling processor that generates a signaling packet based on the first content and the second content, and the first A communication unit for transmitting a packet, the second packet, and the signaling packet to the second device, wherein the first processor, the second processor, and the signaling processor are parallel to the first packet, the second packet, and A first device may be provided that generates the signaling packet.

상기 제1 프로세서, 상기 제2 프로세서 및 상기 시그널링 프로세서는, 상기 제1 프로세서가 상기 제1 패킷을 생성하는 동안, 상기 제2 프로세서 및 상기 시그널링 프로세서가 각각 상기 제2 패킷 및 상기 시그널링 패킷을 생성하는 것을 특징으로 할 수 있다. The first processor, the second processor, and the signaling processor are configured to generate the second packet and the signaling packet by the second processor and the signaling processor, respectively, while the first processor generates the first packet. It can be characterized.

상기 제1 디바이스는, 미디어 데이터 추출기(media data extractor) 및 파일 데이터 추출기(file data extractor)를 더 포함하고, 상기 제 1 컨텐트가 미디어 데이터인 경우, 상기 미디어 데이터 추출기가 소스 데이터를 추출하고, 상기 제 1 컨텐트가 미디어 데이터가 아닌 경우, 상기 파일 데이터 추출기가 소스 데이터를 추출하며, 상기 제 1 프로세서는 상기 추출된 소스 데이터를 기초로 상기 제1 패킷을 생성할 수 있다. The first device further includes a media data extractor and a file data extractor, and when the first content is media data, the media data extractor extracts source data, and the When the first content is not media data, the file data extractor extracts source data, and the first processor may generate the first packet based on the extracted source data.

상기 제1 프로세서는 상기 제1 패킷을 저장하는 제1 버퍼를 더 포함하고, 상기 제2 프로세서는 상기 제2 패킷을 저장하는 제2 버퍼를 더 포함할 수 있다. The first processor may further include a first buffer for storing the first packet, and the second processor may further include a second buffer for storing the second packet.

상기 제1 디바이스는, 상기 제1 패킷을 기초로 하여 제1 FEC 리페어 패킷 및 제1 FEC 소스 패킷을 생성하는 제1 FEC 모듈, 상기 제2 패킷을 기초로 하여 제2 FEC 리페어 패킷 및 제2 FEC 소스 패킷을 생성하는 제2 FEC 모듈을 더 포함하고, 상기 통신부는 상기 제1 FEC 리페어 패킷, 상기 제1 FEC 소스 패킷, 상기 제2 FEC 리페어 패킷 및 상기 제2 FEC 소스 패킷을 상기 제2 디바이스로 송신할 수 있다. The first device includes a first FEC module that generates a first FEC repair packet and a first FEC source packet based on the first packet, and a second FEC repair packet and a second FEC based on the second packet. A second FEC module for generating a source packet, wherein the communication unit transmits the first FEC repair packet, the first FEC source packet, the second FEC repair packet, and the second FEC source packet to the second device. Can send.

송신할 컨텐트가 복수개인 경우, 상기 데이터 제1 디바이스는 상기 송신할 컨텐트의 숫자에 기초하여, 병렬적으로 생성하는 패킷의 개수를 결정할 수 있다. When there are multiple contents to be transmitted, the data first device may determine the number of packets to be generated in parallel based on the number of contents to be transmitted.

본 개시의 일 실시예의 또 다른 측면에 따르면, 제1 디바이스로부터 MMT(MPEG Media Transport) 형식의 패킷을 수신하는 제2 디바이스에 있어서, 상기 제1 디바이스로부터 제1 패킷, 제2 패킷 및 시그널링 패킷을 수신하는 통신부, 상기 제1 패킷에 기초하여 제1 컨텐트를 생성하는 제1 프로세서, 상기 제2 패킷에 기초하여 제2 컨텐트를 생성하는 제2 프로세서 및 상기 시그널링 패킷에 기초하여 상기 제1 패킷 및 상기 제2 패킷을 위한 시그널링 컨텐트를 생성하는 시그널링 프로세서를 포함하고, 상기 제1 프로세서, 상기 제2 프로세서 및 상기 시그널링 프로세서는 병렬적으로 상기 제1 컨텐트, 상기 제2 컨텐트 및 상기 시그널링 컨텐트를 생성하는 것을 특징으로 하는 디바이스가 제공될 수 있다. According to another aspect of an embodiment of the present disclosure, in a second device receiving a packet in an MPEG Media Transport (MMT) format from a first device, a first packet, a second packet, and a signaling packet are transmitted from the first device. A communication unit receiving, a first processor that generates first content based on the first packet, a second processor that generates second content based on the second packet, and the first packet and the first packet based on the signaling packet A signaling processor that generates signaling content for a second packet, wherein the first processor, the second processor, and the signaling processor generate the first content, the second content, and the signaling content in parallel. A device as characterized may be provided.

상기 제1 프로세서, 상기 제2 프로세서 및 상기 시그널링 프로세서는, 상기 제1 프로세서가 상기 제1 컨텐트를 생성하는 동안, 상기 제2 프로세서 및 상기 시그널링 프로세서가 각각 상기 제2 컨텐트 및 상기 시그널링 컨텐트를 생성하는 것을 특징으로 할 수 있다. The first processor, the second processor, and the signaling processor, while the first processor generates the first content, the second processor and the signaling processor respectively generate the second content and the signaling content It can be characterized.

상기 제2 디바이스는, 미디어 데이터 복원기 및 파일 데이터 복원기를 더 포함하고, 상기 제1 패킷이 미디어 패킷인 경우, 상기 미디어 데이터 복원기가 소스 데이터를 생성하고, 상기 제1 패킷이 미디어 패킷이 아닌 경우, 상기 파일 데이터 복원기가 소스 데이터를 생성하여, 상기 소스 데이터를 기초로 컨텐트를 생성할 수 있다. The second device further includes a media data restorer and a file data restorer, wherein when the first packet is a media packet, the media data restorer generates source data, and the first packet is not a media packet , The file data restorer may generate source data to generate content based on the source data.

상기 제1 프로세서는 상기 제1 패킷을 저장하는 제1 버퍼를 더 포함하고, 상기 제2 프로세서는 상기 제2 패킷을 저장하는 제2 버퍼를 더 포함할 수 있다. The first processor may further include a first buffer for storing the first packet, and the second processor may further include a second buffer for storing the second packet.

상기 통신부가 수신하는, 상기 제1 패킷은 제 1 FEC 리페어 패킷 및 제 1 FEC 소스 패킷을 포함하고, 상기 제2 패킷은 제 2 FEC 리페어 패킷 및 제 2 FEC 소스 패킷을 포함하며, 상기 제1 FEC 소스 패킷 및 상기 제2 FEC 소스 패킷 내의 소스 패킷이 누락된 경우, 상기 제1 FEC 리페어 패킷에 기초하여 상기 제1 FEC 소스 패킷을 복원하는 제1 FEC 모듈 및 상기 제2 FEC 리페어 패킷에 기초하여 상기 제2 FEC 소스 패킷을 복원하는 제2 FEC 모듈을 더 포함할 수 있다. The first packet received by the communication unit includes a first FEC repair packet and a first FEC source packet, the second packet includes a second FEC repair packet and a second FEC source packet, and the first FEC When a source packet and a source packet in the second FEC source packet are missing, the first FEC module reconstructing the first FEC source packet based on the first FEC repair packet and the second FEC repair packet It may further include a second FEC module for restoring the second FEC source packet.

수신한 패킷이 복수개인 경우, 상기 수신한 패킷의 숫자에 기초하여, 병렬적으로 생성하는 컨텐트의 개수를 결정하는 제어부를 더 포함할 수 있다. When there are a plurality of received packets, the controller may further include a control unit that determines the number of contents to be generated in parallel based on the number of received packets.

본 개시의 일 실시예의 또 다른 측면에 따르면, 제1 디바이스가 MMT(MPEG Media Transport) 형식의 데이터를 제2 디바이스로 송신하는 방법에 있어서, 제1 컨텐트에 기초하여 제1 패킷을 생성하는 단계, 제2 컨텐트에 기초하여 제2 패킷을 생성하는 단계, 상기 제1 컨텐트 및 상기 제2 컨텐트에 기초하여 시그널링 패킷을 생성하는 단계, 상기 제1 패킷, 상기 제2 패킷 및 상기 시그널링 패킷을 상기 제2 디바이스로 송신하는 단계를 포함하고, 상기 제1 패킷, 상기 제2 패킷 및 상기 시그널링 패킷을 생성하는 단계를 병렬적으로 수행하는 데이터 송신 방법이 제공될 수 있다. According to another aspect of an embodiment of the present disclosure, in a method for transmitting data in an MPEG Media Transport (MMT) format to a second device by a first device, generating a first packet based on the first content, Generating a second packet based on a second content, generating a signaling packet based on the first content and the second content, the first packet, the second packet, and the signaling packet as the second A data transmission method comprising the step of transmitting to a device and performing the step of generating the first packet, the second packet, and the signaling packet in parallel may be provided.

상기 제1 패킷, 상기 제2 패킷 및 상기 시그널링 패킷을 생성하는 단계는, 상기 제1 패킷을 생성하는 단계가 진행되는 동안, 상기 제2 패킷을 생성하는 단계 및 상기 시그널링 패킷을 생성하는 단계가 진행되는 것을 특징으로 할 수 있다. The generating of the first packet, the second packet, and the signaling packet may include generating the second packet while the generating the first packet is in progress, and the It may be characterized in that the step of generating the signaling packet is performed.

상기 제1 패킷을 생성하는 단계는, 상기 제1 컨텐트가 미디어 데이터를 포함하는 경우, 미디어 데이터 추출기(media data extractor)가 소스 데이터를 추출하고, 상기 제1 컨텐트가 미디어 데이터를 포함하지 않는 경우, 파일 데이터 추출기(file data extractor)가 소스 데이터를 추출하는 단계를 더 포함하고, 상기 추출한 소스 데이터를 기초로 상기 제1 패킷을 생성할 수 있다. The generating of the first packet may include, when the first content includes media data, a media data extractor extracts source data, and the first content does not include media data, The file data extractor may further include extracting source data, and may generate the first packet based on the extracted source data.

상기 제1 패킷 및 상기 제2 패킷을 생성하는 단계는, 제1 버퍼에 상기 제1 패킷을 저장하는 단계 및 제2 버퍼에 상기 제2 패킷을 저장하는 단계를 더 포함할 수 있다. The generating of the first packet and the second packet may further include storing the first packet in a first buffer and storing the second packet in a second buffer.

상기 제1 패킷을 생성하는 단계는, 상기 제1 패킷을 기초로 하여 제1 FEC 리페어 패킷 및 제1 FEC 소스 패킷을 생성하는 단계 및 상기 제1 FEC 리페어 패킷, 상기 제1 FEC 소스 패킷을 상기 제2 디바이스로 송신하는 단계를 더 포함할 수 있다. The generating of the first packet comprises generating a first FEC repair packet and a first FEC source packet based on the first packet, and the first FEC repair packet and the first FEC source packet. 2 devices It may further include transmitting.

송신할 컨텐트가 복수개인 경우, 상기 송신할 컨텐트의 숫자에 기초하여, 병렬적으로 생성하는 패킷의 개수를 결정하는 단계를 더 포함할 수 있다. When there are a plurality of contents to be transmitted, the step of determining the number of packets to be generated in parallel based on the number of contents to be transmitted may be further included.

본 개시의 일 실시예의 또 다른 측면에 따르면, 제1 디바이스로부터 제2 디바이스가 MMT(MPEG Media Transport) 형식의 데이터를 수신하는 방법에 있어서, 상기 제1 디바이스로부터 제1 패킷, 제2 패킷 및 시그널링 패킷을 수신하는 단계, 상기 제1 패킷에 기초하여 제1 컨텐트를 생성하는 단계, 상기 제2 패킷에 기초하여 제2 컨텐트를 생성하는 단계, 상기 시그널링 패킷에 기초하여 시그널링 컨텐트를 생성하는 단계를 포함하고, 상기 제1 컨텐트, 상기 제2 컨텐트 및 상기 시그널링 컨텐트를 생성하는 단계를 병렬적으로 수행하는 것을 특징으로 하는 데이터 수신 방법이 제공될 수 있다.According to another aspect of an embodiment of the present disclosure, in a method for a second device to receive MMT (MPEG Media Transport) data from a first device, a first packet, a second packet, and signaling from the first device Receiving a packet, generating first content based on the first packet, generating second content based on the second packet, generating signaling content based on the signaling packet And generating the first content, the second content, and the signaling content in parallel. A data receiving method may be provided.

상기 제1 컨텐트, 상기 제2 컨텐트 및 상기 시그널링 컨텐트를 생성하는 단계는, 상기 제1 컨텐트를 생성하는 동안, 상기 제2 컨텐트 및 상기 시그널링 컨텐트를 생성하는 것을 특징으로 할 수 있다. The generating of the first content, the second content, and the signaling content may include generating the second content and the signaling content while generating the first content.

상기 제1 컨텐트를 생성하는 단계는, 상기 수신한 제1 패킷이 미디어 패킷인 경우, 미디어 데이터 복원기가 소스 데이터를 생성하고, 상기 수신한 제1 패킷이 미디어 패킷이 아닌 경우, 파일 데이터 복원기가 소스 데이터를 생성하는 단계를 더 포함하고, 상기 소스 데이터를 기초로 상기 제1 컨텐트를 생성하는 것을 특징으로 할 수 있다. In the generating of the first content, when the received first packet is a media packet, a media data restorer generates source data, and when the received first packet is not a media packet, a file data restorer is a source The method may further include generating data, and generating the first content based on the source data.

상기 제1 컨텐트 및 상기 제2 컨텐트를 생성하는 단계는, 제1 버퍼에 상기 제1 패킷을 저장하는 단계 및 제2 버퍼에 상기 제2 패킷을 저장하는 단계를 더 포함할 수 있다. The generating of the first content and the second content may further include storing the first packet in a first buffer and storing the second packet in a second buffer.

상기 제1 디바이스로부터 제1 패킷, 제2 패킷 및 시그널링 패킷을 수신하는 단계에서, 상기 제1 패킷은 제1 FEC 리페어 패킷, 제1 FEC 소스 패킷을 포함하고, 상기 제2 패킷은 제2 FEC 리페어 패킷 및 제2 FEC 소스 패킷을 포함하며, 상기 제1 컨텐트컨텐트를 생성하는 단계는, 상기 제1 FEC 소스 패킷 내의 소스 패킷이 누락된 경우, 상기 제1 FEC 리페어 패킷에 기초하여 상기 제1 FEC 소스 패킷을 복원하는 단계를 더 포함할 수 있다. In the step of receiving a first packet, a second packet, and a signaling packet from the first device, the first packet includes a first FEC repair packet and a first FEC source packet, and the second packet is a second FEC repair packet. Including a packet and a second FEC source packet, the step of generating the first content content comprises: if a source packet in the first FEC source packet is missing, the first FEC source is based on the first FEC repair packet. It may further include the step of restoring the packet.

수신한 패킷이 복수개인 경우, 상기 수신한 패킷의 숫자에 기초하여, 병렬적으로 생성하는 컨텐트의 개수를 결정하는 것을 특징으로 할 수 있다. When there are a plurality of received packets, the number of contents to be generated in parallel may be determined based on the number of the received packets.

도1은 본 개시의 일 실시예에 따른 제1 디바이스와 제2 디바이스의 예를 도시한다.
도2는 본 개시의 일 실시예에 따른 제1 디바이스를 설명하기 위한 블록도이다.
도3은 본 개시의 일 실시예에 따라 제1 디바이스에서 컨텐트를 송신하는 방법을 나타낸 흐름도이다.
도4는 본 개시의 일 실시예에 따라 제1 디바이스에서 컨텐트를 기초로 패킷을 생성하는 방법을 자세히 나타낸 흐름도이다.
도5는 본 개시의 일 실시예에 따라 FEC 보호를 수행하고, FEC 보호된 패킷을 송신하는 제1 디바이스를 설명하기 위한 블록도이다.
도6은 본 개시의 일 실시예에 따라 제1 디바이스가 FEC 보호를 수행하면서 데이터를 송신하는 방법을 설명하기 위한 흐름도이다.
도7은 본 개시의 일 실시예에 따라 MMT 형식의 데이터를 송수신하는 제1 디바이스와 제2 디바이스의 계층 구조를 도시한다.
도8은 본 개시의 일 실시예에 따라 제1 디바이스가 하나의 컨텐트를 송신함에 있어서, 각 MMT 계층 구조에서 수행하는 일련의 프로세스를 도시한다.
도9는 본 발명의 다른 일 실시예에 따라 제1 디바이스가 두 개의 컨텐트를 병렬적으로 송신하는 프로세스를 도시한다.
도10은 본 개시의 일 실시예에 따라 제1 디바이스가 N개의 컨텐트를 송신함에 있어서, 각 MMT 계층 구조에서 수행하는 일련의 프로세스를 도시한다.
도11은 본 개시의 일 실시예에 따른 제2 디바이스를 설명하기 위한 블록도이다.
도12는 본 개시의 일 실시예에 따라 제2 디바이스가 패킷을 수신하는 방법을 나타낸 흐름도이다.
도13은 본 개시의 일 실시예에 따라 제2 디바이스가 하나의 패킷을 수신한 경우, 수신한 패킷을 기초로 컨텐트를 생성하는 방법을 자세히 나타낸 흐름도이다.
도14는 본 개시의 일 실시예에 따라 FEC 보호된 패킷을 수신하고, 수신한 FEC 패킷을 기초로 컨텐트를 생성하는 제2 디바이스를 설명하기 위한 블록도이다.
도15는 본 개시의 일 실시예에 따라 제2 디바이스가 FEC 보호된 패킷을 수신하고, 복원하는 방법을 설명하기 위한 흐름도이다.
도16은 본 개시의 일 실시예에 따라 제2 디바이스가 하나의 패킷을 수신하고, 수신된 패킷을 기초로 컨텐트를 생성함에 있어서, 각 MMT 계층 구조에서 수행하는 일련의 프로세스를 도시한다.
도17은 본 개시의 일 실시예에 따라 제2 디바이스가 복수의 패킷을 수신하고, 수신된 패킷들을 기초로 각각 컨텐트를 생성함에 있어서, 각 MMT 계층 구조에서 수행하는 일련의 프로세스를 도시한다.
1 illustrates an example of a first device and a second device according to an embodiment of the present disclosure.
2 is a block diagram illustrating a first device according to an embodiment of the present disclosure.
3 is a flowchart illustrating a method of transmitting content in a first device according to an embodiment of the present disclosure.
4 is a detailed flowchart illustrating a method of generating a packet based on content in a first device according to an embodiment of the present disclosure.
5 is a block diagram illustrating a first device that performs FEC protection and transmits an FEC-protected packet according to an embodiment of the present disclosure.
6 is a flowchart illustrating a method of transmitting data while performing FEC protection by a first device according to an embodiment of the present disclosure.
7 illustrates a hierarchical structure of a first device and a second device that transmit and receive MMT format data according to an embodiment of the present disclosure.
8 illustrates a series of processes performed in each MMT hierarchical structure when a first device transmits one content according to an embodiment of the present disclosure.
9 illustrates a process for a first device to transmit two content in parallel according to another embodiment of the present invention.
10 illustrates a series of processes performed in each MMT hierarchical structure when a first device transmits N content according to an embodiment of the present disclosure.
11 is a block diagram illustrating a second device according to an embodiment of the present disclosure.
12 is a flowchart illustrating a method for a second device to receive a packet according to an embodiment of the present disclosure.
13 is a flowchart illustrating in detail a method of generating content based on the received packet when a second device receives one packet according to an embodiment of the present disclosure.
14 is a block diagram illustrating a second device receiving an FEC-protected packet and generating content based on the received FEC packet according to an embodiment of the present disclosure.
15 is a flowchart illustrating a method of receiving and restoring an FEC-protected packet by a second device according to an embodiment of the present disclosure.
16 illustrates a series of processes performed by each MMT hierarchical structure when a second device receives one packet and generates content based on the received packet according to an embodiment of the present disclosure.
FIG. 17 illustrates a series of processes performed by each MMT hierarchical structure when a second device receives a plurality of packets and generates content based on the received packets according to an embodiment of the present disclosure.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.Advantages and features of the present invention, and a method of achieving them will become apparent with reference to the embodiments described later together with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but may be implemented in a variety of different forms, and only these embodiments make the disclosure of the present invention complete, and are common knowledge in the technical field to which the present invention pertains. It is provided to completely inform the scope of the invention to those who have, and the invention is only defined by the scope of the claims.

본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 발명에 대해 구체적으로 설명하기로 한다. The terms used in the present specification will be briefly described, and the present invention will be described in detail.

본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다. The terms used in the present invention have been selected from general terms that are currently widely used while considering functions in the present invention, but this may vary depending on the intention or precedent of a technician working in the field, the emergence of new technologies, and the like. In addition, in certain cases, there are terms arbitrarily selected by the applicant, and in this case, the meaning of the terms will be described in detail in the description of the corresponding invention. Therefore, the terms used in the present invention should be defined based on the meaning of the term and the overall contents of the present invention, not a simple name of the term.

명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에서 사용되는 "부"라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, "부"는 어떤 역할들을 수행한다. 그렇지만 "부"는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부"는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부"는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부"들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부"들로 결합되거나 추가적인 구성요소들과 "부"들로 더 분리될 수 있다.When a part of the specification is said to "include" a certain component, it means that other components may be further included rather than excluding other components unless otherwise stated. In addition, the term "unit" used in the specification refers to a hardware component such as software, FPGA, or ASIC, and "unit" performs certain roles. However, "unit" is not meant to be limited to software or hardware. The “unit” may be configured to be in an addressable storage medium or may be configured to reproduce one or more processors. Thus, as an example, "unit" refers to components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, procedures, Includes subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, database, data structures, tables, arrays and variables. The functions provided within the components and "units" may be combined into a smaller number of components and "units" or may be further separated into additional components and "units".

본 명세서에서 “컨텐트”는 문자, 음성, 영상 등의 다양한 정보형태가 통합되어 생성, 전달, 처리되도록 하는 시스템 및 서비스에서 활용되는 정보서비스 내용물, 나아가 디지털화된 모든 정보를 뜻한다. 또한 컨텐트는 데이터를 포함하는 정보의 집합이라고도 할 수 있다. 예를 들어 비디오 데이터, 오디오 데이터, 이미지, 텍스트 등이 컨텐트에 해당할 수 있다. In this specification, “content” refers to the contents of information services used in systems and services that integrate various types of information, such as text, audio, and video, to be generated, transmitted, and processed, as well as all digitized information. In addition, the content may be referred to as a set of information including data. For example, video data, audio data, images, text, and the like may correspond to content.

최근 ISO/IEC JTC1/SC29/WG11에서는 향후 UHDTV(Ultra-High-Definition TV)시대에 사용될 멀티미디어 부호화 표현 및 다중화 전달 표준인 MPEG-H를 표준화 중에 있다. MPEG-H는 기존 MPEG-1, MPEG-2, MPEG-3, MPEG-4 등의 체계와 유사하게 파트 1 시스템, 파트 2 비디오, 파트 3 오디오 등의 체계로 구성되어 한 세트의 표준으로 발간될 예정이다. "MMT(MPEG Media Transport)"는 MPEG-H 의 파트 1인 시스템을 의미하는 것으로 MPEG-2 TS(Transport Stream) 표준의 후속으로 MPEG에서 표준화 중인 차세대 멀티미디어 다중화 전달 표준을 말한다.In recent years, ISO/IEC JTC1/SC29/WG11 is standardizing MPEG-H, a multimedia encoding expression and multiplexing delivery standard to be used in the future UHDTV (Ultra-High-Definition TV) era. MPEG-H, similar to the existing MPEG-1, MPEG-2, MPEG-3, and MPEG-4 systems, consists of a system such as Part 1 System, Part 2 Video, and Part 3 Audio, and will be published as a set of standards. Is expected. “MMT (MPEG Media Transport)” refers to a system that is part 1 of MPEG-H and refers to a next-generation multimedia multiplexing delivery standard being standardized in MPEG following the MPEG-2 Transport Stream (TS) standard.

본 명세서에서 "MMT ADC"는 MMT Asset Delivery Characteristics의 약자로 MMT 애셋(MMT Asset)을 전송하기 위한 QoS 요구에 관련된 서술을 포함할 수 있다. In this specification, "MMT ADC" is an abbreviation of MMT Asset Delivery Characteristics and may include a description related to a QoS request for transmitting an MMT asset.

또한 본 명세서에서 "MMT CI"는 MMT Composition Information의 약자로, MMT 애셋 간의 공간적, 시간적 관계를 설명하는 정보를 의미할 수 있다. In addition, in the present specification, “MMT CI” is an abbreviation of MMT Composition Information, and may mean information describing a spatial and temporal relationship between MMT assets.

"MMT 애셋"은 동일한 MMT 애셋 ID와 함께 적어도 하나의 MPU로 구성되거나 또는 다른 표준에서 정의된 형식과 함께 특정 데이터 덩어리로 구성되는 논리적 데이터 객체를 의미할 수 있다. MMT 애셋은 동일한 MMT 컴포지션 정보 및 전송 특성이 적용되는 가장 큰 데이터 유닛을 포함할 수 있다. "MMT asset" may mean a logical data object composed of at least one MPU with the same MMT asset ID, or composed of a specific data chunk with a format defined in another standard. The MMT asset may include the largest data unit to which the same MMT composition information and transmission characteristics are applied.

"MPU"는 MMT Processing Unit의 약자로, 어떠한 특정 미디어 코덱에도 독립된 일반적인 컨테이너로 완전하고 독립적으로 처리될 수 있는 부호화된 미디어 데이터를 의미할 수 있다. “MPU” stands for MMT Processing Unit, and may mean encoded media data that can be completely and independently processed by a general container independent of any specific media codec.

"MMT 형식의 데이터"는 MMT 프로토콜에 의해 생성 또는 소비되는 데이터로 MMT 형식의 컨텐트를 포함할 수 있다. "MMT format data" is data generated or consumed by the MMT protocol and may include MMT format content.

"MMTP 패킷"은 MMT 프로토콜에 의해 생성 또는 소비되는 데이터의 형식화된 단위를 의미할 수 있다."MMTP packet" may mean a formatted unit of data generated or consumed by the MMT protocol.

아래에서는 첨부한 도면을 참고하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those of ordinary skill in the art may easily implement the present invention. In addition, in the drawings, parts not related to the description are omitted in order to clearly describe the present invention.

도 1은 본 개시의 일 실시예에 따른 제1 디바이스와 제2 디바이스의 예를 도시한다.1 illustrates an example of a first device and a second device according to an embodiment of the present disclosure.

본 개시의 일 실시예에 따라 MMT 형식의 데이터를 전송하는 디바이스는, MMT 형식의 데이터를 송신하는 제1 디바이스(100) 및 MMT 형식의 데이터를 수신하는 제2 디바이스(200)를 포함할 수 있다. A device that transmits MMT format data according to an embodiment of the present disclosure may include a first device 100 that transmits MMT format data and a second device 200 that receives MMT format data. .

즉, 제1 디바이스(100)가 MMT 형식의 컨텐트를 제2 디바이스(200)로 송신하면, 제2 디바이스(200)는 제1 디바이스(100)가 송신한 컨텐트를 수신하고, 수신된 컨텐트를 디스플레이 할 수 있다.That is, when the first device 100 transmits MMT format content to the second device 200, the second device 200 receives the content transmitted by the first device 100 and displays the received content. can do.

본 개시의 일 실시예에서 제1 디바이스(100)는 컨텐트로부터 소스 데이터를 추출하고, 추출된 소스 데이터에 부가 정보를 추가하여 MMTP 패킷을 생성한 후, 생성된 MMTP 패킷을 제2 디바이스(200)로 전송할 수 있다. In an embodiment of the present disclosure, the first device 100 extracts source data from the content, adds additional information to the extracted source data to generate an MMTP packet, and then sends the generated MMTP packet to the second device 200. Can be transferred to.

제2 디바이스(200)는 제1 디바이스(100)로부터 MMTP 패킷을 수신하고, 수신된 MMTP 패킷에 기초하여 소스 데이터를 생성하며, 생성된 소스 데이터를 기초로 컨텐트를 생성할 수 있다. The second device 200 may receive an MMTP packet from the first device 100, generate source data based on the received MMTP packet, and generate content based on the generated source data.

본 개시의 일 실시예에서 제1 디바이스(100) 및 제2 디바이스(200)는 MMT 어플리케이션 계층, MMT 프로토콜 계층, 전송 계층으로 이루어지는 MMT 계층 구조에 적합하게 설정될 수 있다.In an embodiment of the present disclosure, the first device 100 and the second device 200 may be appropriately configured in an MMT layer structure consisting of an MMT application layer, an MMT protocol layer, and a transport layer.

또한, 제1 디바이스(100) 및 제2 디바이스(200)는 유무선 네트워크로 연결될 수 있다. Also, the first device 100 and the second device 200 may be connected to a wired or wireless network.

도2는 본 개시의 일 실시예에 따른 제1 디바이스를 설명하기 위한 블록도이다. 2 is a block diagram illustrating a first device according to an embodiment of the present disclosure.

본 개시의 일 실시예에서 제1 디바이스(100)는 송신 디바이스일 수 있고, 제2 디바이스(200)는 수신 디바이스일 수 있다. In an embodiment of the present disclosure, the first device 100 may be a transmitting device, and the second device 200 may be a receiving device.

본 개시의 일 실시예에서 제1 디바이스(100)는 제1 프로세서(110), 제2 프로세서(130), 시그널링 프로세서(150), 통신부(170)를 포함할 수 있다. In an embodiment of the present disclosure, the first device 100 may include a first processor 110, a second processor 130, a signaling processor 150, and a communication unit 170.

종래에는 프로세서 하나가 모든 컨텐트를 처리하였으므로, 여러 컨텐트를 동시에 송신하는 경우, 컨텐트 간의 상호 작용 등으로 송신 품질이 저하되는 경우가 있었다. 일부 실시예에 따르면, 컨텐트 간의 상호 작용은 두 개 이상의 컨텐트가 전송 과정에서 서로 영향을 미쳐 전송 품질이 저하되는 현상을 의미할 수 있다.Conventionally, since one processor processed all the contents, when multiple contents are simultaneously transmitted, transmission quality may be degraded due to interactions between contents. According to some embodiments, the interaction between contents may mean a phenomenon in which two or more contents affect each other in a transmission process, resulting in a decrease in transmission quality.

본 발명은 제1 디바이스(100)가 적어도 하나의 컨텐트를 동시에 처리하는 경우, 적어도 하나의 프로세서가 독립적으로 각각 적어도 하나의 컨텐트를 처리함으로써, 컨텐트 간의 상호 작용을 방지할 수 있다.In the present invention, when the first device 100 simultaneously processes at least one content, at least one processor independently processes at least one content, thereby preventing interaction between the content.

일부 실시예에 따르면, 제 1 디바이스(100)의 프로세서의 개수는 동시에 처리하는 컨텐트의 개수에 대응될 수 있다.According to some embodiments, the number of processors of the first device 100 may correspond to the number of concurrently processed content.

본 개시의 일 실시예에서, 제1 프로세서(110)는 제1 컨텐트에 기초하여 제1 패킷을 생성하고, 제2 프로세서(130)는 제2 컨텐트에 기초하여 제2 패킷을 생성하며, 시그널링 프로세서(150)는 제1 컨텐트 및 제2 컨텐트에 기초하여 시그널링 패킷을 생성할 수 있다.In an embodiment of the present disclosure, the first processor 110 generates a first packet based on the first content, the second processor 130 generates a second packet based on the second content, and the signaling processor 150 may generate a signaling packet based on the first content and the second content.

도 2의 실시예에서, 제1 프로세서(110), 제2 프로세서(130) 및 시그널링 프로세서(150)는 독립적으로 동작하여, 컨텐트 간의 상호 작용을 방지 할 수 있다. In the embodiment of FIG. 2, the first processor 110, the second processor 130, and the signaling processor 150 operate independently to prevent interaction between content.

또한, 제1 프로세서(110), 제2 프로세서(130) 및 시그널링 프로세서(150)는 병렬적으로 동작할 수 있다. 제1 디바이스(100)에서 제1 프로세서(110), 제2 프로세서(130) 및 시그널링 프로세서(150)가 병렬적으로 동작한다는 의미는, 제1 프로세서(110)가 제1 컨텐트를 기초로 제1 패킷을 생성하는 동안, 제2 프로세서(130) 및 시그널링 프로세서(150)는 각각 제2 패킷 및 시그널링 패킷을 생성하는 동작을 포함할 수 있다. In addition, the first processor 110, the second processor 130, and the signaling processor 150 may operate in parallel. The meaning that the first processor 110, the second processor 130, and the signaling processor 150 operate in parallel in the first device 100 means that the first processor 110 performs a first While generating the packet, the second processor 130 and the signaling processor 150 may include an operation of generating a second packet and a signaling packet, respectively.

즉, 제1 프로세서(110), 제2 프로세서(130) 및 시그널링 프로세서(150)가 병렬적으로 동작한다는 의미는 제1 프로세서(110), 제2 프로세서(130) 및 시그널링 프로세서(150)가 각각 수행하는 작업의 전부 혹은 일부가 동시에 수행될 수 있음을 의미할 수 있다. That is, the meaning that the first processor 110, the second processor 130, and the signaling processor 150 operate in parallel means that the first processor 110, the second processor 130, and the signaling processor 150 are each It may mean that all or part of the task being performed can be performed at the same time.

도3은 본 개시의 일 실시예에 따라 제1 디바이스에서 컨텐트를 송신하는 방법을 나타낸 흐름도이다. 3 is a flowchart illustrating a method of transmitting content in a first device according to an embodiment of the present disclosure.

단계 S310에서, 제 1 디바이스는 제 1 컨텐트에 기초하여 제 1 패킷을 생성할 수 있다. 일부 실시예에 따르면 제1 디바이스는 제 1 프로세서를 이용하여 제1 컨텐트에 기초하여 제1 패킷을 생성할 수 있다. In step S310, the first device may generate a first packet based on the first content. According to some embodiments, the first device may generate the first packet based on the first content using the first processor.

일부 실시예에 따르면, 제 1 디바이스는 컨텐트를 분할하고, 적어도 하나의 헤더를 추가함으로써, 패킷을 생성할 수 있다. 패킷 내의 데이터는 소정 크기의 데이터를 포함할 수 있다. According to some embodiments, the first device may generate a packet by dividing the content and adding at least one header. The data in the packet may include data of a predetermined size.

일부 실시예에 따르면, 제 1 패킷은 MMT 형식의 패킷일 수 있다. 물론 상기 예시에 제한되지 않으며, 제 1 패킷은 다양한 프로토콜에 의한 다양한 형식의 패킷을 포함할 수 있다.According to some embodiments, the first packet may be an MMT format packet. Of course, it is not limited to the above example, and the first packet may include various types of packets according to various protocols.

단계 S330에서, 제 1 디바이스는 제 2 컨텐트에 기초하여 제2 패킷을 생성할 수 있다. 일부 실시예에 따르면 제1 디바이스는 제 2 프로세서를 이용하여 제2 컨텐트에 기초하여 제2 패킷을 생성할 수 있다.In step S330, the first device may generate a second packet based on the second content. According to some embodiments, the first device may generate a second packet based on the second content using the second processor.

일부 실시예에 따르면, 제 2 패킷은 MMT 형식의 패킷일 수 있다. 물론 상기 예시에 제한되지 않으며, 제 2 패킷은 다양한 프로토콜에 의한 다양한 형식의 패킷을 포함할 수 있다.According to some embodiments, the second packet may be an MMT format packet. Of course, it is not limited to the above example, and the second packet may include various types of packets according to various protocols.

단계 S350에서, 제1 디바이스(100)는 제1 컨텐트 및 제2 컨텐트에 기초하여 시그널링 패킷을 생성할 수 있다. 일부 실시예에 따르면 제1 디바이스는 시그널링 프로세서를 이용하여 제1 컨텐트 및 제2 컨텐트에 기초하여 시그널링 패킷을 생성할 수 있다. In step S350, the first device 100 may generate a signaling packet based on the first content and the second content. According to some embodiments, the first device may generate a signaling packet based on the first content and the second content using a signaling processor.

시그널링 패킷은 제1 컨텐트 및 제2 컨텐트로부터 추출된 MMT ADC(MMT Asset Delivery Characteristics), MMT CI(MMT Composition Information) 등의 정보를 포함할 수 있다. 일부 실시예에 따르면, 단계 S310 내지 S350은 병렬적으로 수행될 수 있다. 일부 실시예에 따르면, 단계 S310이 수행되는 동안 단계 S330 및 단계 S350이 수행될 수 있다. 또한 일부 실시예에 따르면, 단계 S310이 수행되는 동안 단계 S330 및 단계 S350가 동시에 수행될 수 있다.The signaling packet may include information such as MMT ADC (MMT Asset Delivery Characteristics) and MMT CI (MMT Composition Information) extracted from the first content and the second content. According to some embodiments, steps S310 to S350 may be performed in parallel. According to some embodiments, steps S330 and S350 may be performed while step S310 is performed. Also, according to some embodiments, steps S330 and S350 may be simultaneously performed while step S310 is performed.

단계 S370에서, 제1 디바이스는 제1 패킷, 제2 패킷 및 시그널링 패킷을 제2 디바이스로 송신할 수 있다. In step S370, the first device may transmit the first packet, the second packet, and the signaling packet to the second device.

일부 실시예에 따르면, 제1 디바이스는 통신부를 이용하여 제1 패킷, 제2 패킷 및 시그널링 패킷을 제2 디바이스로 송신할 수 있다.According to some embodiments, the first device may transmit the first packet, the second packet, and the signaling packet to the second device using the communication unit.

일부 실시예에 따르면, 제1 프로세서(110)가 제1 컨텐트에 기초하여 제1 패킷을 생성하는 단계(S310), 제2 프로세서(130)가 제2 컨텐트에 기초하여 제2 패킷을 생성하는 단계(S330), 시그널링 프로세서(150)가 제1 컨텐트 및 제2 컨텐트에 기초하여 시그널링 패킷을 생성하는 단계(S350)가 병렬적으로 진행되고, 통신부(170)는 S310, S330, S350에서 생성한 패킷을 제2 디바이스(200)로 송신하는 단계(S370)를 수행할 수 있다. According to some embodiments, the first processor 110 generating a first packet based on the first content (S310), the second processor 130 generating a second packet based on the second content (S330), the step of generating a signaling packet by the signaling processor 150 based on the first content and the second content (S350) is performed in parallel, the communication unit 170 is a packet generated in S310, S330, S350 The step of transmitting (S370) to the second device 200 may be performed.

본 발명의 다른 일 실시예에서는 송신할 패킷의 수가 N개이고, 프로세서도 N개가 존재하여 N개의 패킷 생성과, 시그널링 패킷 생성이 병렬적으로 수행될 수 있다. In another embodiment of the present invention, the number of packets to be transmitted is N, and there are N processors, so that N packets and signaling packets may be generated in parallel.

도4는 본 개시의 일 실시예에 따라 제1 디바이스에서 컨텐트를 기초로 패킷을 생성하는 방법을 자세히 나타낸 흐름도이다. 여기서 컨텐트는 제1 컨텐트 또는 제2 컨텐트 중 하나일 수 있다.4 is a detailed flowchart illustrating a method of generating a packet based on content in a first device according to an embodiment of the present disclosure. Here, the content may be one of first content or second content.

도2를 참조하면, 제1 디바이스(100)는 컨텐트를 기초로 MMT 프로토콜에 따라 MMTP 패킷을 생성할 수 있다. Referring to FIG. 2, the first device 100 may generate an MMTP packet according to an MMT protocol based on content.

일부 실시예에 따르면, MMT 패킷은 아래의 단계를 통해 생성될 수 있다. According to some embodiments, the MMT packet may be generated through the following steps.

단계 S410에서, 제1 디바이스(100)는 컨텐트가 미디어 데이터 인지 판단하는 단계(S410)를 수행할 수 있다. 제 1 디바이스(100)는 컨텐트가 어떤 특정 구조의 MPU를 가진 파일 인지 여부를 확인할 수 있는데, MPU는 앞에서 정의한 MMT 프로세싱 유닛을 포함할 수 있다. 제1 디바이스(100)는 컨텐트가 어떤 특정 구조의 MPU를 가진 파일인 경우 해당 컨텐츠를 미디어 데이터로 판단할 수 있다. In step S410, the first device 100 may perform an step (S410) of determining whether the content is media data. The first device 100 may check whether the content is a file having an MPU having a specific structure, and the MPU may include the MMT processing unit defined above. When the content is a file having an MPU having a specific structure, the first device 100 may determine the content as media data.

단계 S450에서, 컨텐트가 미디어 데이터인지의 판단 결과에 기초하여, 미디어 데이터인 경우, 제 1 디바이스는 미디어 데이터 추출기(Media data extractor)(830)를 이용하여 소스 데이터 즉, MPU를 추출할 수 있다.In step S450, based on a result of determining whether the content is media data, if the content is media data, the first device may extract source data, that is, MPU, using a media data extractor 830.

단계 S430에서, 컨텐트가 미디어 데이터인지의 판단 결과에 기초하여, 미디어 데이터가 아닌 모든 경우에는, 제 1 디바이스는 파일 데이터 추출기(File data extractor)(810)를 이용하여 소스 데이터를 추출할 수 있다. In step S430, based on a result of determining whether the content is media data, in all cases other than media data, the first device may extract the source data using a file data extractor 810.

일부 실시예에 따르면, 미디어 데이터 추출기 및 파일 데이터 추출기는 제1 프로세서에 포함될 수도 있다. According to some embodiments, the media data extractor and the file data extractor may be included in the first processor.

단계 S470에서, 제1 디바이스(100)는 미디어 데이터 추출기(830) 또는 파일 데이터 추출기(810)로 추출한 소스 데이터를 패킷화 함으로써, 패킷을 생성할 수 있다. 일부 실시예에 따르면, 단계 S470은 제 1 디바이스가 포함하는 적어도 하나의 프로세서에 의해 수행될 수 있다.In step S470, the first device 100 may generate a packet by packetizing the source data extracted by the media data extractor 830 or the file data extractor 810. According to some embodiments, step S470 may be performed by at least one processor included in the first device.

일부 실시예에 따르면 도 4의 각 단계는 복수의 컨텐트를 동시에 전송하려는 경우에도 적용될 수 있다. 즉, 각 컨텐트에 기초하여 복수의 패킷을 생성할 때, 각각의 패킷이 도 4의 각 단계에 기초하여 생성될 수 있다. According to some embodiments, each step of FIG. 4 may be applied even when a plurality of contents are to be transmitted simultaneously. That is, when generating a plurality of packets based on each content, each packet may be generated based on each step of FIG. 4.

또한, 일부 실시예에 따르면, 미디어 데이터 추출기(830)와 파일 데이터 추출기(810)가 하나의 추출기 내에 포함될 수 있다. 즉, 하나의 데이터 추출기가 미디어 데이터와 미디어 데이터를 구분하지 않고 소스 데이터를 추출할 수도 있다. Also, according to some embodiments, the media data extractor 830 and the file data extractor 810 may be included in one extractor. That is, a single data extractor may extract source data without distinguishing between media data and media data.

도5는 본 개시의 일 실시예에 따라 FEC 보호를 수행하고, FEC 보호된 패킷을 송신하는 제1 디바이스를 설명하기 위한 블록도이다. 5 is a block diagram illustrating a first device that performs FEC protection and transmits an FEC-protected packet according to an embodiment of the present disclosure.

제 1 디바이스(100)가 송신하는 MMTP 패킷은 제 2 디바이스(200)로 송신될 수 있다. 다만, 송신되는 동안 신호의 페이딩, 간섭 등의 영향으로 MMT 패킷에 오류가 발생할 수 있다. The MMTP packet transmitted by the first device 100 may be transmitted to the second device 200. However, an error may occur in the MMT packet due to the influence of signal fading or interference during transmission.

본 개시의 일부 실시예에서, 패킷의 오류라 함은 패킷의 에러 또는 손실을 포함할 수 있다. 패킷의 오류가 발생할 경우를 대비하여, 오류가 발생한 패킷을 복구하기 위한 다양한 오류 정정 방식이 사용될 수 있다. In some embodiments of the present disclosure, an error in a packet may include an error or loss in a packet. In preparation for a case of a packet error, various error correction methods may be used to recover a packet in which an error occurs.

본 개시의 일부 실시예에 따르면, 제 1 디바이스(100) 및 제 2 디바이스(200)는 오류 정정을 위해 FEC(Forward Error Correction) 방식을 사용할 수 있다. 다만, 상기 예시에 제한되지 않으며, ARQ(Automatic Repeat reQuest) 방식 등 다양한 보호 방식이 사용될 수 있다. According to some embodiments of the present disclosure, the first device 100 and the second device 200 may use a Forward Error Correction (FEC) method for error correction. However, it is not limited to the above example, and various protection methods such as an automatic repeat request (ARQ) method may be used.

일부 실시예에 따르면, 제 1 디바이스는 FEC 모듈을 더 포함할 수 있다. According to some embodiments, the first device may further include an FEC module.

일부 실시예에 따르면, 제1 디바이스(100)는 제1 MMTP 패킷을 기초로 제1 FEC 코드를 이용하여 제1 FEC 소스 패킷 및 제1 FEC 리페어 패킷을 생성하는, 제1 FEC 모듈(530) 및 제2 MMTP 패킷을 기초로, 제2 FEC 코드를 이용하여 제2 FEC 소스 패킷 및 제2 FEC 리페어 패킷을 생성하는, 제2 FEC 모듈(570)을 더 포함할 수 있다. According to some embodiments, the first device 100 generates a first FEC source packet and a first FEC repair packet using a first FEC code based on the first MMTP packet, and A second FEC module 570 for generating a second FEC source packet and a second FEC repair packet using a second FEC code based on the second MMTP packet may be further included.

여기서 FEC 코드란 자기 스스로 에러의 검출과 정정을 수행하는 착오정정부호를 의미할 수 있다. Here, the FEC code may mean an error correction code that detects and corrects errors by itself.

상기 실시예에서, 제1 FEC 모듈(530) 및 제2 FEC 모듈(570)은 서로 독립되어 컨텐트 간의 상호작용이 발생하지 않을 수 있다. 이 때, FEC 소스 패킷은 소스 데이터를 기초로 생성되는 패킷이며, FEC 리페어 패킷은 소스 데이터를 기초로 향후 패킷에 오류가 발생한 경우 오류를 정정하기 위한 데이터를 포함하고 있는 패킷을 말한다. In the above embodiment, since the first FEC module 530 and the second FEC module 570 are independent of each other, interaction between content may not occur. In this case, the FEC source packet is a packet generated based on the source data, and the FEC repair packet refers to a packet including data for correcting an error when an error occurs in a future packet based on the source data.

일부 실시예에 따르면, 오류가 발생하였으나, 리페어 패킷으로 복구가 불가능한 오류라고 판단되는 경우 제2 디바이스는 제 1 디바이스에게 재전송을 요청할 수 있다.According to some embodiments, when an error has occurred but it is determined that the error cannot be recovered as a repair packet, the second device may request retransmission from the first device.

일부 실시예에 따르면, 통신부(170)는 MMTP 패킷을 기초로 생성된 FEC 소스 패킷 및 FEC 리페어 패킷을 제2 디바이스(200)로 송신할 수 있다. According to some embodiments, the communication unit 170 may transmit the FEC source packet and the FEC repair packet generated based on the MMTP packet to the second device 200.

도6은 본 개시의 일 실시예에 따라 제1 디바이스가 FEC 보호를 수행하면서 데이터를 송신하는 방법을 설명하기 위한 흐름도이다. 6 is a flowchart illustrating a method of transmitting data while performing FEC protection by a first device according to an embodiment of the present disclosure.

단계 S610에서, 제 1 디바이스(100)는 컨텐트를 기초로 MMTP 패킷을 생성한다. 일부 실시예에 따르면, 제 1 디바이스(100)가 포함하는 적어도 하나의 프로세서는 각각 컨텐트를 기초로 MMTP 패킷을 생성할 수 있다.In step S610, the first device 100 generates an MMTP packet based on the content. According to some embodiments, at least one processor included in the first device 100 may each generate an MMTP packet based on content.

상술한 바와 같이, 제 1 디바이스(100)는, 컨텐트로부터 소스 데이터를 추출하고, 추출한 소스 데이터를 기초로 패킷을 생성할 수 있다. 일부 실시예에 따르면, 단계 S630에서, 제 1 디바이스(100)는 생성된 MMTP 패킷에 기초하여 리페어 페이로드 식별자를 가진 리페어 심볼 및 소스 FEC 페이로드 식별자를 생성할 수 있다. As described above, the first device 100 may extract source data from content and generate a packet based on the extracted source data. According to some embodiments, in step S630, the first device 100 may generate a repair symbol having a repair payload identifier and a source FEC payload identifier based on the generated MMTP packet.

단계 S650에서, 제 1 디바이스(100)는 리페어 페이로드 식별자를 가진 리페어 심볼 및 소스 FEC 페이로드 식별자를 이용하여 FEC 리페어 패킷도 생성할 수 있다. In step S650, the first device 100 may also generate an FEC repair packet by using the repair symbol having the repair payload identifier and the source FEC payload identifier.

리페어 패킷은 패킷에 오류 발생시 오류가 발생한 패킷을 복구하는데 사용되는 패킷을 의미하는데, 당업자에게 자명하므로, 자세한 설명은 생략한다.The repair packet refers to a packet used to recover a packet in which an error occurs when an error occurs in a packet. Since it is obvious to a person skilled in the art, a detailed description will be omitted.

단계 S670에서, 통신부(170)는 FEC 모듈에서 생성된 FEC 소스 패킷 및 FEC 리페어 패킷을 제2 디바이스(200)로 송신할 수 있다. In operation S670, the communication unit 170 may transmit the FEC source packet and the FEC repair packet generated by the FEC module to the second device 200.

도7은 본 개시의 일 실시예에 따라 MMT 형식의 데이터를 송수신하는 제1 디바이스(100)와 제2 디바이스(200)의 계층 구조를 도시한다.7 illustrates a hierarchical structure of a first device 100 and a second device 200 for transmitting and receiving MMT format data according to an embodiment of the present disclosure.

본 개시에서, MMT 계층 구조는 논리적 구조를 포함할 수 있다. 계층 구조는 정의된 프로토콜에 의해 분화된 네트워크의 모델, 구조를 의미할 수 있으며, 각각의 계층에서의 수행되어야 하는 동작을 본 개시의 디바이스 내의 구성요소가 수행할 수 있다. In this disclosure, the MMT hierarchical structure may include a logical structure. The hierarchical structure may mean a model and structure of a network differentiated by a defined protocol, and an operation to be performed in each layer may be performed by a component in the device of the present disclosure.

일부 실시예에 따르면, 제1 디바이스(100)의 MMT 계층 구조(MMT architecture)는 MMT 어플리케이션 계층(710), MMT 프로토콜 계층(730) 및 전송 계층(750)을 포함할 수 있다. According to some embodiments, the MMT layer structure (MMT architecture) of the first device 100 may include an MMT application layer 710, an MMT protocol layer 730, and a transport layer 750.

일부 실시예에 따르면, 제2 디바이스(200)의 MMT 계층 구조(MMT architecture)도 MMT 어플리케이션 계층(770), MMT 프로토콜 계층(780) 및 전송 계층(790)을 포함할 수 있다. According to some embodiments, an MMT layer structure (MMT architecture) of the second device 200 may also include an MMT application layer 770, an MMT protocol layer 780, and a transport layer 790.

제1 디바이스(100)의 전송 계층(750)과 제2 디바이스(200)의 전송 계층(790)은 데이터 채널로 연결될 수 있다. The transport layer 750 of the first device 100 and the transport layer 790 of the second device 200 may be connected through a data channel.

일부 실시예에 따르면, 제1 디바이스(100)의 MMT 어플리케이션 계층(710)에서는 컨텐트에 기초하여 소스 데이터를 추출하는 작업이 수행될 수 있고, MMT 프로토콜 계층(730)에서는 추출된 소스 데이터를 기초로 패킷을 생성하는 작업이 수행될 수 있으며, 전송 계층(750)에서는 MMT 프로토콜 계층(730)에서 생성된 패킷을 제2 디바이스(200)로 송신하는 작업이 수행될 수 있다.According to some embodiments, the MMT application layer 710 of the first device 100 may extract source data based on content, and the MMT protocol layer 730 may perform an operation of extracting source data based on the extracted source data. An operation of generating a packet may be performed, and an operation of transmitting a packet generated by the MMT protocol layer 730 to the second device 200 may be performed in the transport layer 750.

일부 실시예에 따르면, 제2 디바이스(200)의 전송 계층(790)에서는 제1 디바이스(100)로부터 패킷을 수신하는 작업이 수행될 수 있고, MMT 프로토콜 계층(780)에서는 수신된 패킷을 기초로 소스 데이터를 생성하는 작업이 수행될 수 있으며, MMT 어플리케이션 계층(770)에서는 소스 데이터에 기초하여 컨텐트를 복원하는 작업이 수행될 수 있다. According to some embodiments, an operation of receiving a packet from the first device 100 may be performed in the transport layer 790 of the second device 200, and the MMT protocol layer 780 may perform an operation based on the received packet. The operation of generating source data may be performed, and the operation of restoring content based on the source data may be performed in the MMT application layer 770.

도8은 본 개시의 일 실시예에 따라 제1 디바이스(100)가 하나의 컨텐트를 송신함에 있어서, 각 MMT 계층 구조에서 수행하는 프로세스를 도시한다. 8 illustrates a process performed in each MMT hierarchical structure when the first device 100 transmits one content according to an embodiment of the present disclosure.

일부 실시예에 따르면, MMT 어플리케이션 계층(710)에서는, 컨텐트에 기초하여 소스 데이터를 추출하는 작업이 이루어 질 수 있다. According to some embodiments, in the MMT application layer 710, an operation of extracting source data based on content may be performed.

일부 실시예에 따르면, 컨텐트가 미디어 데이터인 경우, 미디어 데이터 추출기(Media data extractor)(830)로 소스 데이터를 추출하고, 컨텐트가 미디어 데이터가 아닌 모든 경우에는, 파일 데이터 추출기(File data extractor)(810)로 소스 데이터를 추출할 수 있다.According to some embodiments, when the content is media data, source data is extracted with a media data extractor 830, and in all cases where the content is not media data, a file data extractor ( 810) can be used to extract source data.

MMT 어플리케이션 계층(710)에서 컨텐트에 기초하여 소스 데이터를 추출하는 과정은 도4에서 설명한 내용과 대응될 수 있다. The process of extracting source data based on content in the MMT application layer 710 may correspond to the content described in FIG. 4.

추출된 소스 데이터를 기초로 패킷을 생성하는 작업은 MMT 프로토콜 계층(730)에서 이루어 질 수 있다. The operation of generating a packet based on the extracted source data may be performed in the MMT protocol layer 730.

일부 실시예에 따르면, 프로세서(850)는MMT 어플리케이션 계층(710)에서 추출한 소스 데이터에 정보를 부가하여 패킷화 할 수 있다. 이 때, MMTP 패킷이 생성될 수 있다. According to some embodiments, the processor 850 may packetize by adding information to the source data extracted from the MMT application layer 710. At this time, an MMTP packet may be generated.

시그널링 프로세서(150)는 컨텐트로부터 MMT ADC, MMT CI 등의 정보를 추출하여 시그널링 패킷을 생성할 수 있다. The signaling processor 150 may generate a signaling packet by extracting information such as MMT ADC and MMT CI from the content.

일부 실시예에 따르면, 시그널링 메시지는 제1 디바이스(100)가 제2 디바이스(200)로 송신할 수 있지만, 제2 디바이스(200)가 제1 디바이스(100)로 송신할 수도 있다.According to some embodiments, the first device 100 may transmit the signaling message to the second device 200, but the second device 200 may transmit the signaling message to the first device 100.

또한 일부 실시예에 따르면, 제2 디바이스(200)가 시그널링 메시지를 제1 디바이스(100)로 송신하는 경우, 제2 디바이스(200)로부터 송신된 시그널링 패킷을 제1 디바이스(100)가 수신하여 제1 디바이스(100)의 시그널링 프로세서(150)가 시그널링 패킷의 언패킷화를 수행할 수도 있다. In addition, according to some embodiments, when the second device 200 transmits a signaling message to the first device 100, the first device 100 receives the signaling packet transmitted from the second device 200 1 The signaling processor 150 of the device 100 may perform unpacketization of the signaling packet.

MMT 프로토콜 계층(730)에서 생성된 패킷은 전송 계층(750)에서 제2 디바이스(200)로 송신될 수 있다.The packet generated by the MMT protocol layer 730 may be transmitted from the transport layer 750 to the second device 200.

MMTP 패킷 전송을 위한 전송 계층(750)의 설정은 시그널링 패킷 전송을 위한 전송 계층(750)의 설정과는 상이할 수 있다. 예를 들어, 잡음이 많은 채널에서 데이터를 전송하는 경우, 시그널링 메시지는 TCP 프로토콜의 top에서 전송되는 반면, MMT 패킷은 FEC 인코딩 수행 후 UDP 프로토콜의 top에서 전송될 수 있다. The setting of the transport layer 750 for transmitting the MMTP packet may be different from the setting of the transport layer 750 for transmitting the signaling packet. For example, when data is transmitted on a noisy channel, a signaling message is transmitted at the top of the TCP protocol, while an MMT packet may be transmitted at the top of the UDP protocol after FEC encoding is performed.

도9는 본 발명의 다른 일 실시예에 따라 제1 디바이스(100)가 두 개의 컨텐트를 병렬적으로 송신하는 프로세스를 도시한다. 9 shows a process of transmitting two content in parallel by the first device 100 according to another embodiment of the present invention.

일부 실시예에 따르면, 제1 프로세서(110)는 제1 컨텐트를 기초로 생성한 제1 MMTP 패킷을 제1 버퍼(950)에 임시로 저장할 수 있다. 또한 제2 프로세서(130)는 제2 컨텐트를 기초로 생성한 제2 MMTP 패킷을 제2 버퍼(970)에 임시로 저장할 수 있다.According to some embodiments, the first processor 110 may temporarily store the first MMTP packet generated based on the first content in the first buffer 950. Also, the second processor 130 may temporarily store the second MMTP packet generated based on the second content in the second buffer 970.

일부 실시예에 따르면, 제1 프로세서(110) 및 제2 프로세서(130)가 제1 MMTP 패킷 및 제2 MMTP 패킷을 생성하고, 생성한 제1 MMTP 패킷 및 제2 MMTP 패킷을 제1 버퍼(950) 및 제2 버퍼(970)에 저장하는 작업은 MMT 프로토콜 계층(730)에서 수행될 수 있다. According to some embodiments, the first processor 110 and the second processor 130 generate a first MMTP packet and a second MMTP packet, and store the generated first and second MMTP packets into a first buffer 950 ) And the storage in the second buffer 970 may be performed in the MMT protocol layer 730.

일부 실시예에서 제1 프로세서(110)와 제1 버퍼(950)에 의해 이루어지는 일련의 동작을 포함하는 제1 프로세스와 제2 프로세서(130)와 제2 버퍼(970)에 의해 이루어지는 일련의 동작을 포함하는 제2 프로세스는 각각 독립적으로 존재할 수 있다.In some embodiments, a first process including a series of operations performed by the first processor 110 and the first buffer 950 and a series of operations performed by the second processor 130 and the second buffer 970 are described. Each of the included second processes may exist independently.

일부 실시예에 따르면, 제1 프로세서(110)는 제1 버퍼(950)를 포함하고, 제2 프로세서(130)는 제2 버퍼(970)를 포함할 수 있다. According to some embodiments, the first processor 110 may include a first buffer 950, and the second processor 130 may include a second buffer 970.

일부 실시예에서, 제1 컨텐트에 기초하여 제1 MMTP 패킷을 생성하는 단계와 병렬적으로, 제2 컨텐트에 기초하여 제2 패킷을 생성하는 단계 및 제1 컨텐트 및 제2 컨텐트에 기초하여 시그널링 패킷을 생성하는 단계는 도3의 설명과 대응될 수 있다. In some embodiments, in parallel with generating the first MMTP packet based on the first content, generating a second packet based on the second content and a signaling packet based on the first content and the second content The step of generating may correspond to the description of FIG. 3.

도10은 본 개시의 일 실시예에 따라 제1 디바이스(100)가 N개의 컨텐트를 송신함에 있어서, 각 MMT 계층 구조에서 수행하는 일련의 프로세스를 도시한다. 10 illustrates a series of processes performed in each MMT hierarchical structure when the first device 100 transmits N content according to an embodiment of the present disclosure.

일부 실시예에 따르면, 제1 디바이스(100)는 송신하려는 컨텐트의 개수와 동일한 수의 프로세서, 버퍼 및 FEC 모듈을 동적으로 할당할 수 있다. According to some embodiments, the first device 100 may dynamically allocate the same number of processors, buffers, and FEC modules as the number of content to be transmitted.

일부 실시예에 따르면, 제1 디바이스(100)는 제1 컨텐트에 기초하여 제1 MMTP 패킷을 생성하고, 생성된 패킷을 제1 버퍼(950)에 저장할 수 있으며, 제1 FEC 모듈(530)에서 FEC 코드를 이용하여 FEC 소스 패킷 및 FEC 리페어 패킷을 생성할 수 있다. 일부 실시예에서, FEC 소스 패킷 및 FEC 리페어 패킷을 생성하는 과정은 도6의 과정과 대응될 수 있다. 또한 제1 디바이스(100)는 제2 컨텐트에 기초하여 제2 MMTP 패킷을 생성하고, 생성된 패킷을 제2 버퍼(970)에 저장할 수 있으며, 제2 FEC 모듈(570)에서 FEC 코드를 이용하여 FEC 소스 패킷 및 FEC 리페어 패킷을 생성할 수 있다. According to some embodiments, the first device 100 may generate a first MMTP packet based on the first content, and store the generated packet in the first buffer 950, and the first FEC module 530 An FEC source packet and an FEC repair packet can be generated using the FEC code. In some embodiments, the process of generating the FEC source packet and the FEC repair packet may correspond to the process of FIG. 6. In addition, the first device 100 may generate a second MMTP packet based on the second content, store the generated packet in the second buffer 970, and use the FEC code in the second FEC module 570. FEC source packets and FEC repair packets can be generated.

동일한 패킷화 과정이 컨텐트의 개수만큼 진행되어, 제1 디바이스(100)는 제N 컨텐트에 기초하여 제N MMTP 패킷을 생성하고, 생성된 패킷을 제N 버퍼(1060)에 저장하였다가, 제N FEC 모듈(1090)에서 FEC 코드를 이용하여 FEC 소스 패킷 및 FEC 리페어 패킷을 생성할 수 있다.The same packetization process is performed as many times as the number of contents, and the first device 100 generates an Nth MMTP packet based on the Nth content, stores the generated packet in the Nth buffer 1060, and then stores the Nth. The FEC module 1090 may generate an FEC source packet and an FEC repair packet by using the FEC code.

각 컨텐트의 처리 과정은 병렬적으로 진행될 수 있지만, 동시에 진행되는 부분이 있더라도 상호 작용하지 않고 독립적으로 수행될 수 있다.The process of processing each content may be performed in parallel, but may be performed independently without interaction even if there are parts that are simultaneously performed.

전송 계층(750)은 제1 FEC 소스 패킷 내지 제 N FEC 소스 패킷 및 제1 FEC 리페어 패킷 내지 제 N FEC 리페어 패킷을 제2 디바이스(200)로 송신할 수 있다. The transport layer 750 may transmit the first FEC source packet to the N FEC source packet and the first FEC repair packet to the N FEC repair packet to the second device 200.

다만 제 1 디바이스(100)와 제 2 디바이스(200)가 FEC 인코딩 및 디코딩을 수행하지 않는 경우에, 전송 계층(750)은 제1 MMTP 패킷, 제2 MMTP 패킷……제N MMTP 패킷을 제2 디바이스(200)로 송신할 수 있다.However, when the first device 100 and the second device 200 do not perform FEC encoding and decoding, the transport layer 750 transmits the first MMTP packet, the second MMTP packet……the Nth MMTP packet to the second device ( 200).

도11은 본 개시의 일 실시예에 따른 제2 디바이스를 설명하기 위한 블록도이다. 11 is a block diagram illustrating a second device according to an embodiment of the present disclosure.

본 개시의 일 실시예에서 제2 디바이스(200)는 제1 프로세서(1110), 제2 프로세서(1130), 시그널링 프로세서(1150) 및 통신부(1170)를 포함할 수 있다. In an embodiment of the present disclosure, the second device 200 may include a first processor 1110, a second processor 1130, a signaling processor 1150, and a communication unit 1170.

도11을 참조하면, 제1 프로세서(1110)가 제1 패킷에 기초하여 제1 컨텐트를 생성하고, 제2 프로세서(1130)가 제2 패킷에 기초하여 제2 컨텐트를 생성하며, 시그널링 프로세서(1150)는 시그널링 패킷에 기초하여 시그널링 컨텐트를 생성할 수 있다.Referring to FIG. 11, a first processor 1110 generates a first content based on a first packet, a second processor 1130 generates a second content based on a second packet, and a signaling processor 1150 ) May generate signaling content based on the signaling packet.

도 11를 참조하면, 제1 프로세서(1110), 제2 프로세서(1130) 및 시그널링 프로세서(1150)는 서로 독립적으로 동작하여, 컨텐트 간의 상호 작용을 방지할 수 있다. Referring to FIG. 11, the first processor 1110, the second processor 1130, and the signaling processor 1150 operate independently of each other to prevent interaction between content.

또한, 제1 프로세서(1110), 제2 프로세서(1130) 및 시그널링 프로세서(1150)는 병렬적으로 동작할 수 있다. 제1 프로세서(1110), 제2 프로세서(1130) 및 시그널링 프로세서(1150)가 병렬적으로 동작한다는 의미는, 제1 프로세서(1110)가 제1 패킷을 기초로 제1 컨텐트를 생성하는 동안, 제2 프로세서(1130) 및 시그널링 프로세서(1150)는 각각 제2 컨텐트 및 시그널링 컨텐트를 생성하는 것을 포함할 수 있다. Also, the first processor 1110, the second processor 1130, and the signaling processor 1150 may operate in parallel. The meaning that the first processor 1110, the second processor 1130, and the signaling processor 1150 operate in parallel means that while the first processor 1110 generates first content based on the first packet, 2 The processor 1130 and the signaling processor 1150 may each include generating second content and signaling content.

즉, 제1 프로세서(1110), 제2 프로세서(1130) 및 시그널링 프로세서(1150)의 작업의 전부 혹은 일부가 동시에 수행될 수 있다. That is, all or part of the tasks of the first processor 1110, the second processor 1130, and the signaling processor 1150 may be simultaneously performed.

도12는 본 개시의 일 실시예에 따라 제2 디바이스가 패킷을 수신하는 방법을 나타낸 흐름도이다.12 is a flowchart illustrating a method for a second device to receive a packet according to an embodiment of the present disclosure.

단계 S1210에서, 제2 디바이스(200)는 제1 패킷, 제2 패킷 및 시그널링 패킷을 수신할 수 있다. 일부 실시예에 따르면 제2 디바이스(200)는 통신부를 이용하여 제1 패킷, 제2 패킷 및 시그널링 패킷을 수신할 수 있다.In operation S1210, the second device 200 may receive a first packet, a second packet, and a signaling packet. According to some embodiments, the second device 200 may receive a first packet, a second packet, and a signaling packet using a communication unit.

일부 실시예에서, 제1 패킷은 제1 FCE 소스 패킷 및 제1 FEC 리페어 패킷을 포함할 수 있고, 제2 패킷은 제2 FCE 소스 패킷 및 제2 FEC 리페어 패킷을 포함할 수 있다. In some embodiments, the first packet may include a first FCE source packet and a first FEC repair packet, and the second packet may include a second FCE source packet and a second FEC repair packet.

단계 S1230에서, 제2 디바이스(200)는 제1 패킷을 기초로 제1 컨텐트를 생성할 수 있다. 일부 실시예에서, 제2 디바이스(200)는 제1 프로세서(1110)를 이용하여 제1 패킷을 기초로 제1 컨텐트를 생성할 수 있다.In operation S1230, the second device 200 may generate first content based on the first packet. In some embodiments, the second device 200 may generate the first content based on the first packet using the first processor 1110.

단계 S1250에서, 제2 디바이스(200)는 제2 패킷을 기초로 제2 컨텐트를 생성할 수 있다. 일부 실시예에서, 제2 디바이스(200)는 제2 프로세서(1130)를 이용하여 제2 패킷을 기초로 제2 컨텐트를 생성할 수 있다.In operation S1250, the second device 200 may generate second content based on the second packet. In some embodiments, the second device 200 may generate second content based on the second packet using the second processor 1130.

단계 S1270에서, 제2 디바이스(200)는 시그널링 패킷을 기초로 시그널링 컨텐트를 생성할 수 있다. 일부 실시예에서, 제2 디바이스(200)는 시그널링 프로세서(1150)를 이용하여 시그널링 패킷을 기초로 시그널링 컨텐트를 생성할 수 있다.In operation S1270, the second device 200 may generate signaling content based on the signaling packet. In some embodiments, the second device 200 may generate signaling content based on the signaling packet using the signaling processor 1150.

일부 실시예에 따르면, 단계 S1230 내지 S1270은 병렬적으로 수행될 수 있다. 일부 실시예에 따르면, 단계 S1230이 수행되는 동안 단계 S1250 및 단계 S1270이 수행될 수 있다. 또한 일부 실시예에 따르면, 단계 S1230이 수행되는 동안 단계 S1250 및 단계 S1270이 동시에 수행될 수 있다.According to some embodiments, steps S1230 to S1270 may be performed in parallel. According to some embodiments, steps S1250 and S1270 may be performed while step S1230 is performed. Further, according to some embodiments, while step S1230 is performed, step S1250 and step S1270 may be performed simultaneously.

일부 실시예에 따르면, 통신부(1170)는 제1 디바이스(100)로부터 패킷을 수신할 수 있다(S1210).According to some embodiments, the communication unit 1170 may receive a packet from the first device 100 (S1210).

수신한 패킷이 두 개인 경우, 제2 디바이스(200)는 제1 패킷에 기초하여 제1 컨텐트를 생성하는 단계(S1230), 제2 패킷에 기초하여 제2 컨텐트를 생성하는 단계(S1250), 시그널링 패킷에 기초하여 시그널링 컨텐트를 생성하는 단계(S1270)를 병렬적으로 수행할 수 있다. If there are two received packets, the second device 200 generates first content based on the first packet (S1230), generating second content based on the second packet (S1250), signaling The step of generating signaling content (S1270) based on the packet may be performed in parallel.

다른 일 실시예에서 수신한 패킷이 N 개인 경우, 제2 디바이스(200)는 컨텐트 생성 단계 N개 및 시그널링 컨텐트 생성 단계를 병렬적으로 수행할 수 있다. In another embodiment, when there are N packets received, the second device 200 may perform N content generation steps and signaling content generation steps in parallel.

도13은 본 개시의 일 실시예에 따라 제2 디바이스가 하나의 패킷을 수신한 경우, 수신한 패킷을 기초로 컨텐트를 생성하는 방법을 자세히 나타낸 흐름도이다.13 is a flowchart illustrating in detail a method of generating content based on the received packet when a second device receives one packet according to an embodiment of the present disclosure.

단계 S1310에서, 제2 디바이스(200)는 패킷이 미디어 데이터 인지 판단할 수 있다. 일부 실시예에 따르면 제2 디바이스(200)는 패킷이 어떤 특정 구조의 MPU를 가진 패킷인지 여부를 확인함으로써, 패킷이 미디어 데이터인지 여부를 판단할 수 있다. In step S1310, the second device 200 may determine whether the packet is media data. According to some embodiments, the second device 200 may determine whether the packet is media data by checking whether the packet is a packet having a specific structure of the MPU.

단계 S1350에서, 제2 디바이스(200)는 수신한 패킷이 어떤 특정 구조의 MPU를 가진 미디어 데이터인 경우, 제2 디바이스(200)가 포함하는 미디어 데이터 복원기(1650)로 소스 데이터 즉, MPU를 복원할 수 있다.In step S1350, when the received packet is media data having an MPU having a specific structure, the second device 200 transfers the source data, that is, the MPU, to the media data restorer 1650 included in the second device 200. Can be restored.

단계 S1370에서, 수신한 패킷이 어떤 특정 구조의 MPU를 가진 미디어 데이터가 아닌 모든 경우에, 제2 디바이스(200)는 파일 데이터 복원기(1640)로 소스 데이터를 복원할 수 있다. In step S1370, in all cases where the received packet is not media data having an MPU of a certain specific structure, the second device 200 may restore the source data with the file data restorer 1640.

일부 실시예에 따르면, 미디어 데이터 복원기(1650) 및 파일 데이터 복원기(1640)는 제1 프로세서(1110)에 포함될 수 있다. According to some embodiments, the media data restorer 1650 and the file data restorer 1640 may be included in the first processor 1110.

단계 1390에서, 제2 디바이스(200)는 미디어 데이터 복원기(1650) 또는 파일 데이터 복원기(1640)로 추출한 소스 데이터를 기초로 컨텐트를 생성할 수 있다. In operation 1390, the second device 200 may generate content based on the source data extracted by the media data restorer 1650 or the file data restorer 1640.

제 2 디바이스(200)가 소스 데이터를 기초로 컨텐트를 생성한다는 의미는, 수신된 소스 데이터를 기초로 제 1 디바이스(100)가 송신한 컨텐트를 복원 또는 재조립하는 것을 의미할 수 있다. 즉, 제 2 디바이스(200)가 수신된 소스 데이터를 기초로 생성한 컨텐트는 제 1 디바이스(100)가 송신한 컨텐트와 동일하거나, 상이할 수 있다.The meaning that the second device 200 generates content based on the source data may mean that the content transmitted by the first device 100 is restored or reassembled based on the received source data. That is, the content generated by the second device 200 based on the received source data may be the same as or different from the content transmitted by the first device 100.

일부 실시예에 따르면, 단계 S1390은 제 2 디바이스(200)가 포함하는 적어도 하나의 프로세서에 의해 수행될 수 있다.According to some embodiments, step S1390 may be performed by at least one processor included in the second device 200.

일부 실시예에 따르면 도13의 각 단계는 복수의 패킷을 동시에 수신하는 경우에도 적용될 수 있다. 즉, 각 패킷에 기초하여 복수의 컨텐트를 생성할 때, 각각의 컨텐트가 도13의 각 단계에 기초하여 생성될 수 있다. According to some embodiments, each step of FIG. 13 may be applied even when a plurality of packets are simultaneously received. That is, when generating a plurality of content based on each packet, each content may be generated based on each step of FIG. 13.

또한, 일부 실시예에 따르면, 미디어 데이터와 미디어 데이터가 아닌 그 밖의 데이터를 구분하지 않고, 하나의 복원기로 소스 데이터를 복원할 수 있다. 즉, 미디어 데이터 복원기(1650)와 파일 데이터 복원기(1640)가 하나의 복원기 내에 포함될 수 있다.In addition, according to some embodiments, source data may be restored with a single restorer without discriminating between media data and data other than media data. That is, the media data restorer 1650 and the file data restorer 1640 may be included in one restorer.

도14는 본 개시의 일 실시예에 따라 FEC 보호된 패킷을 수신하고, 수신한 FEC 패킷을 기초로 컨텐트를 생성하는 제2 디바이스(200)를 설명하기 위한 블록도이다.14 is a block diagram illustrating a second device 200 that receives an FEC-protected packet and generates content based on the received FEC packet according to an embodiment of the present disclosure.

제1 디바이스(100)로부터 제2 디바이스(200)로 송신된 패킷은 제 2 디바이스(200)에서 수신되는 동안 오류가 발생할 수 있다. An error may occur while a packet transmitted from the first device 100 to the second device 200 is received by the second device 200.

패킷에 오류가 발생한 경우, 오류를 복구하기 위해 다양한 오류 정정 방식을 이용하여 패킷을 생성할 수 있다. 일부 실시예에 따르면, 제 1 디바이스(100)는 FEC(Forward Error correction) 방식을 이용하여 제 1 패킷 및 제 2 패킷을 생성하여, 생성된 패킷들을 제 2 디바이스(200)로 송신할 수 있다. 제 2 디바이스(200)는 제 1 디바이스(100)로부터 제 1 패킷 및 제 2 패킷을 수신할 수 있는데, 제1 패킷은 제1 FEC 소스 패킷 및 제1 FEC 리페어 패킷을 포함할 수 있고, 제2 패킷은 제2 FEC 소스 패킷 및 제2 FEC 리페어 패킷을 포함할 수 있다.When an error occurs in a packet, a packet can be generated using various error correction methods to recover the error. According to some embodiments, the first device 100 may generate a first packet and a second packet using a forward error correction (FEC) method, and transmit the generated packets to the second device 200. The second device 200 may receive a first packet and a second packet from the first device 100, and the first packet may include a first FEC source packet and a first FEC repair packet, and the second The packet may include a second FEC source packet and a second FEC repair packet.

도11를 참조하면, 제2 디바이스(200)가 제1 디바이스(100)로부터 두 개의 컨텐트에 대한 패킷을 수신하여 병렬적으로 처리할 때, 제2 디바이스(200)는 손실된 제1 FEC 소스 패킷을 복원하여 제1 MMTP 패킷을 생성하기 위한 제1 FEC 모듈(1410) 및 손실된 제2 FEC 소스 패킷을 복원하여 제2 MMTP 패킷을 생성하기 위한 제2 FEC 모듈(1430)을 더 포함할 수 있다. Referring to FIG. 11, when the second device 200 receives packets for two content from the first device 100 and processes them in parallel, the second device 200 is a lost first FEC source packet. A first FEC module 1410 for generating a first MMTP packet by restoring and a second FEC module 1430 for generating a second MMTP packet by restoring a lost second FEC source packet. .

상기 실시예에서, 제1 FEC 모듈(1410) 및 제2 FEC 모듈(1430)은 서로 독립되어 컨텐트 간의 상호 작용이 발생하지 않을 수 있다. In the above embodiment, since the first FEC module 1410 and the second FEC module 1430 are independent of each other, interaction between content may not occur.

일부 실시예에 따르면, FEC 소스 패킷은 소스 데이터를 기초로 생성되는 패킷이며, FEC 리페어 패킷은 소스 데이터를 기초로 향후 패킷에 오류가 발생한 경우 오류를 정정하기 위한 데이터를 포함하고 있는 패킷을 포함할 수 있다.According to some embodiments, the FEC source packet is a packet generated based on the source data, and the FEC repair packet includes a packet containing data for correcting an error when an error occurs in a future packet based on the source data. I can.

일부 실시예에 따르면, 오류가 발생하엿으나, 리페어 패킷으로 복구가 불가능한 오류라고 판단되는 경우 제2 디바이스(200)는 제 1 디바이스(100)에게 재전송을 요청할 수 있다.According to some embodiments, when an error has occurred but it is determined that an error that cannot be repaired by a repair packet, the second device 200 may request the first device 100 to retransmit.

도15는 본 개시의 일 실시예에 따라 제2 디바이스가 FEC 보호된 패킷을 수신하고, 복원하는 방법을 설명하기 위한 흐름도이다. 15 is a flowchart illustrating a method of receiving and restoring an FEC-protected packet by a second device according to an embodiment of the present disclosure.

단계 S1510에서, 제2 디바이스(200)는 FEC 소스 패킷 및 FEC 리페어 패킷을 수신할 수 있다. 일부 실시예에 따르면, 제2 디바이스(200)가 포함하는 통신부가 FEC 소스 패킷 및 FEC 리페어 패킷을 수신할 수 있다.In operation S1510, the second device 200 may receive an FEC source packet and an FEC repair packet. According to some embodiments, the communication unit included in the second device 200 may receive the FEC source packet and the FEC repair packet.

단계 S1350에서, 제2 디바이스(200)는 FEC 소스 패킷에 오류가 발생되었는지 판단할 수 있다. In step S1350, the second device 200 may determine whether an error has occurred in the FEC source packet.

단계 S1550에서, 제2 디바이스(200)는 FEC 소스 패킷에 오류가 발생된 경우, FEC 리페어 패킷에 기초하여 FEC 소스 패킷을 복구할 수 있다. In operation S1550, when an error occurs in the FEC source packet, the second device 200 may recover the FEC source packet based on the FEC repair packet.

일부 실시예에 따르면, 제 2 디바이스(200)는 FEC 소스 패킷에 오류가 발생한 경우, FEC 소스 패킷의 오류를 정정할 수 있는지 판단할 수 있다. 판단 결과에 기초하여, 제 2 디바이스(200)는 FEC 리페어 패킷에 기초하여 FEC 소스 패킷을 복구하거나, 제 1 디바이스(100)에게 오류가 발생한 소스 패킷을 재전송해줄 것을 요청할 수 있다.According to some embodiments, when an error occurs in the FEC source packet, the second device 200 may determine whether an error in the FEC source packet can be corrected. Based on the determination result, the second device 200 may restore the FEC source packet based on the FEC repair packet, or request the first device 100 to retransmit the source packet in which an error occurs.

상기 S1530, S1550 단계는 제1 FEC 모듈(1410) 및 제2 FEC 모듈(1430)에서 각각 수행될 수 있는데, 제1 FEC 모듈(1410) 및 제2 FEC 모듈(1430)은 서로 영향을 주지 않으므로, S1530, S1550 단계는 컨텐트 간의 상호 작용을 발생시키지 않으면서 병렬적으로 수행될 수 있다. The steps S1530 and S1550 may be performed in the first FEC module 1410 and the second FEC module 1430, respectively. Since the first FEC module 1410 and the second FEC module 1430 do not affect each other, Steps S1530 and S1550 may be performed in parallel without generating an interaction between content.

도16은 본 개시의 일 실시예에 따라 제2 디바이스가 하나의 패킷을 수신하고, 수신된 패킷을 기초로 컨텐트를 생성함에 있어서, 각 MMT 계층 구조에서 수행하는 일련의 프로세스를 도시한다.16 illustrates a series of processes performed by each MMT hierarchical structure when a second device receives one packet and generates content based on the received packet according to an embodiment of the present disclosure.

본 개시에서, MMT 계층 구조는 논리적 구조를 포함할 수 있다. In this disclosure, the MMT hierarchical structure may include a logical structure.

계층 구조는 정의된 프로토콜에 의해 분화된 네트워크의 모델, 구조를 의미할 수 있으며, 각각의 계층에서의 수행되어야 하는 동작을 본원발명의 디바이스 내의 구성요소가 대응되는 동작을 수행할 수 있다. The hierarchical structure may refer to a model and structure of a network differentiated by a defined protocol, and an operation to be performed in each layer may be performed by a component in the device of the present invention.

일부 실시예에 따르면, 제2 디바이스(200)의 MMT 계층 구조(MMT architecture)는 MMT 어플리케이션 계층(770), MMT 프로토콜 계층(780) 및 전송 계층(790)을 포함할 수 있다. According to some embodiments, an MMT layer structure (MMT architecture) of the second device 200 may include an MMT application layer 770, an MMT protocol layer 780, and a transport layer 790.

일부 실시예에 따르면, 제1 디바이스(100)의 전송 계층(750) 및 제2 디바이스(200)의 전송 계층(790)은 데이터 채널로 연결될 수 있다. 일부 실시예에 따르면, 데이터 채널이라함은 데이터가 송수신되는 다양한 통신 매체를 포함할 수 있다. 통신 매체는 유선 통신 매체 및 무선 통신 매체를 포함할 수 있다.According to some embodiments, the transport layer 750 of the first device 100 and the transport layer 790 of the second device 200 may be connected through a data channel. According to some embodiments, a data channel may include various communication media through which data is transmitted and received. Communication media may include wired communication media and wireless communication media.

일부 실시예에 따르면, 제2 디바이스(200)의 전송 계층(790)은 제1 디바이스(100)로부터 송신된 MMTP 패킷, FEC 소스 패킷, FEC 리페어 패킷 및 시그널링 패킷 등을 수신할 수 있다. 단, 시그널링 패킷 수신을 위한 전송 계층(790)의 설정과 시그널링 패킷 이외의 MMTP 패킷 등의 수신을 위한 전송 계층(790)의 설정은 상이할 수 있다. 예를 들어, 잡음이 많은 채널에서 데이터를 수신하는 경우, 시그널링 메시지는 TCP 프로토콜의 top에서 수신되는 반면, MMT 패킷은 UDP 프로토콜의 top에서 수신될 수 있다. According to some embodiments, the transport layer 790 of the second device 200 may receive an MMTP packet, an FEC source packet, an FEC repair packet, and a signaling packet transmitted from the first device 100. However, the setting of the transport layer 790 for receiving signaling packets and the setting of the transport layer 790 for receiving MMTP packets other than the signaling packets may be different. For example, when data is received on a noisy channel, a signaling message may be received at the top of the TCP protocol, while an MMT packet may be received at the top of the UDP protocol.

제2 디바이스(200)의 MMT 프로토콜 계층(780)은 프로세서(1670) 및 시그널링 프로세서(1150)를 통하여 수신한 패킷을 언패킷화하고, 언패킷화 한 데이터가 미디어 데이터이면 미디어 데이터 복원기(1650)를 이용하여 소스 데이터를 복원하고, 미디어 데이터가 아닌 그 밖의 데이터인 경우 파일 데이터 복원기(1640)를 이용하여 소스 데이터를 복원할 수 있다. The MMT protocol layer 780 of the second device 200 unpackets the packet received through the processor 1670 and the signaling processor 1150, and if the unpackaged data is media data, the media data restorer 1650 ) May be used to restore the source data, and in the case of data other than media data, the source data may be restored using the file data restorer 1640.

일부 실시예에 따르면, 제 2 디바이스(200)는 하나의 데이터 복원기를 이용하여 소스 데이터를 복원할 수 있다. According to some embodiments, the second device 200 may restore source data using a single data restorer.

일부 실시예에 따르면, 제2 디바이스(200)의 MMT 프로토콜 계층(780)에서 소스 데이터를 복원하는 과정은 도13의 각 단계와 대응할 수 있다. According to some embodiments, a process of restoring source data in the MMT protocol layer 780 of the second device 200 may correspond to each step of FIG. 13.

일부 실시예에 따르면, 제2 디바이스(200)의 MMT 프로토콜 계층(780)에서 제1 패킷을 기초로 제1 컨텐트를 생성하는 단계, 제2 패킷을 기초로 제2 컨텐트를 생성하는 단계 및 시그널링 패킷을 기초로 시그널링 컨텐트를 생성하는 단계가 병렬적으로 이루어 질 수 있다. 이는 도12에서 설명한 내용과 대응된다. According to some embodiments, the MMT protocol layer 780 of the second device 200 generates first content based on the first packet, generating second content based on the second packet, and signaling packet Generating signaling content based on may be performed in parallel. This corresponds to the content described in FIG. 12.

본 개시의 일 실시예에서 파일 프로세서(1610)는 파일 데이터 복원기(1640)를 이용하여 복원된 소스 데이터를 컨텐트로 복원할 수 있고, 미디어 프로세서(1620)는 미디어 데이터 복원기(1650)를 이용하여 복원된 소스 데이터를 컨텐트로 복원할 수 있으며, 제2 시그널링 프로세서(1630)는 시그널링 컨텐트 복원기(1660)를 이용하여 복원된 소스 데이터를 시그널링 컨텐트로 복원할 수 있다. In an embodiment of the present disclosure, the file processor 1610 may restore the restored source data to content using the file data restorer 1640, and the media processor 1620 uses the media data restorer 1650. Accordingly, the restored source data may be restored as content, and the second signaling processor 1630 may restore the restored source data as signaling content using the signaling content restorer 1660.

구현 예에 따라, 제2 디바이스(200)는 파일 프로세서(1610), 미디어 프로세서(1620) 및 제2 시그널링 프로세서(1630)를 포함하지 않을 수 있다. According to an implementation example, the second device 200 may not include the file processor 1610, the media processor 1620, and the second signaling processor 1630.

본 발명의 다른 일 실시예에서는, MMT 프로토콜 계층(780)에서 FEC 소스 패킷의 손실이 있는 경우 FEC 리페어 패킷 기초로 FEC 소스 패킷을 복원할 수 있다. 복원된 소스 패킷은 MMTP 패킷으로 생성될 수 있다.In another embodiment of the present invention, when there is a loss of the FEC source packet in the MMT protocol layer 780, the FEC source packet may be restored based on the FEC repair packet. The restored source packet may be generated as an MMTP packet.

본 개시의 일 실시예에서 시그널링 프로세서(1150)는 시그널링 패킷을 언패킷화 하고, 시그널링 컨텐트 복원기(1660)는 언패킷화된 시그널링 패킷에 기초하여 소스 데이터를 복원하며, 제2 시그널링 프로세서(1630)는 복원된 소스 데이터에 기초하여 MMT ADC, MMT CI 등을 포함하는 시그널링 컨텐트를 생성할 수 있다. In an embodiment of the present disclosure, the signaling processor 1150 unpackets the signaling packet, the signaling content restorer 1660 restores source data based on the unpackaged signaling packet, and the second signaling processor 1630 ) May generate signaling content including MMT ADC, MMT CI, etc. based on the restored source data.

본 발명의 다른 일 실시예에서는 시그널링 패킷의 처리를 위한 시그널링 프로세서(1150), 시그널링 컨텐트 복원기(1660) 및 제2 시그널링 프로세서(1630)가 별도로 존재하지 않을 수 있다. In another embodiment of the present invention, a signaling processor 1150 for processing a signaling packet, a signaling content restorer 1660, and a second signaling processor 1630 may not exist separately.

일부 실시예에 따르면, 프로세서(1670)가 미디어 데이터 복원기(1650) 및 파일 데이터 복원기(1640)를 대신하여 소스 데이터를 복원할 수도 있다. 일부 실시예에 따르면, 제1 디바이스(100)로부터 송신된 시그널링 패킷을 제2 디바이스(200)가 수신할 뿐 아니라, 제2 디바이스(200)도 시그널링 패킷을 생성하여 제1 디바이스(100)로 송신할 수 있다. According to some embodiments, the processor 1670 may restore the source data instead of the media data restorer 1650 and the file data restorer 1640. According to some embodiments, not only the second device 200 receives the signaling packet transmitted from the first device 100, but also the second device 200 generates a signaling packet and transmits it to the first device 100 can do.

도17은 본 개시의 일 실시예에 따라 제2 디바이스가 복수의 패킷을 수신하고, 수신된 패킷들을 기초로 컨텐트를 생성함에 있어서, 각 MMT 계층 구조에서 수행하는 일련의 프로세스를 도시한다.17 illustrates a series of processes performed by each MMT hierarchical structure when a second device receives a plurality of packets and generates content based on the received packets according to an embodiment of the present disclosure.

제2 디바이스(200)는 수신한 패킷의 개수와 동일한 수의 프로세서, 버퍼 및 FEC 모듈을 동적으로 할당할 수 있다. The second device 200 may dynamically allocate the same number of processors, buffers, and FEC modules as the number of received packets.

이 때, FEC 보호 된 패킷을 수신한 경우, FEC 소스 패킷과 FEC 리페어 패킷은 하나의 패킷으로 간주하여 프로세서, 버퍼 및 FEC 모듈을 동적으로 할당할 수 있다. In this case, when an FEC-protected packet is received, the FEC source packet and the FEC repair packet are regarded as one packet, and a processor, a buffer, and an FEC module can be dynamically allocated.

도17를 참조하면, 수신된 제1 FEC 리페어 패킷 및 제1 FEC 소스 패킷은 전송 계층(790)으로부터 제1 프로세서(1110)로 전송되었다가 제1 버퍼(1740)에 저장될 수 있다. 제1 FEC 모듈(1410)은 제1 FEC 리페어 패킷을 이용하여 제1 FEC 소스 패킷을 복원하고, 복원된 소스 데이터에 기초하여 제1 MMTP 패킷을 생성할 수 있다. 일부 실시예에서, FEC 리페어 패킷을 이용하여 FEC 소스 패킷을 복원하고 MMTP 패킷을 생성하는 과정은 도15의 각 단계에 대응될 수 있다. Referring to FIG. 17, received first FEC repair packets and first FEC source packets may be transmitted from a transport layer 790 to a first processor 1110 and then stored in a first buffer 1740. The first FEC module 1410 may restore the first FEC source packet by using the first FEC repair packet, and generate a first MMTP packet based on the restored source data. In some embodiments, a process of restoring an FEC source packet using an FEC repair packet and generating an MMTP packet may correspond to each step of FIG. 15.

일부 실시예에 다르면, 수신된 제2 FEC 리페어 패킷 및 제2 FEC 소스 패킷도 전송 계층(790)으로부터 제2 프로세서(1130)로 전송되었다가 제2 버퍼(1750)에 저장될 수 있고, 제2 FEC 모듈(1430)은 제2 FEC 리페어 패킷을 이용하여 제2 FEC 소스 패킷을 복원하고, 복원된 소스 데이터에 기초하여 제2 MMTP 패킷을 생성할 수 있다.According to some embodiments, the received second FEC repair packet and the second FEC source packet may also be transmitted from the transport layer 790 to the second processor 1130 and then stored in the second buffer 1750, and the second The FEC module 1430 may restore the second FEC source packet by using the second FEC repair packet, and generate a second MMTP packet based on the restored source data.

일부 실시예에 따르면수신된 제1 FEC 리페어 패킷 및 제1 FEC 소스 패킷에 수행된 제1 MMTP 패킷 생성 과정 및 제2 FEC 리페어 패킷 및 제2 FEC 소스 패킷에 수행된 제2 MMTP 패킷 생성 과정과 동일한 과정이 컨텐트의 개수만큼 병렬적으로 수행될 수 있다.According to some embodiments, the first MMTP packet generation process performed on the received first FEC repair packet and the first FEC source packet, and the second MMTP packet generation process performed on the second FEC repair packet and the second FEC source packet. The process may be performed in parallel as many as the number of contents.

수신된 제N FEC 리페어 패킷 및 제N FEC 소스 패킷도 전송 계층(790)으로부터 제N 프로세서(1730)로 전송되었다가 제N 버퍼(1760)에 저장될 수 있고, 제N FEC 모듈(1770)은 제N FEC 리페어 패킷을 이용하여 제2 FEC 소스 패킷을 복원하고, 복원된 소스 데이터에 기초하여 제2 MMTP 패킷을 생성할 수 있다.The received N-th FEC repair packet and the N-th FEC source packet may also be transmitted from the transport layer 790 to the N-th processor 1730 and stored in the N-th buffer 1760, and the N-th FEC module 1770 The second FEC source packet may be restored using the N-th FEC repair packet, and a second MMTP packet may be generated based on the restored source data.

각 MMTP 패킷 생성 과정 중 전부 또는 일부는 동시에 진행될 수 있지만, 상호 작용하지 않고 분리되어, 독립적으로 수행될 수 있다.All or part of each MMTP packet generation process may be performed at the same time, but may be separated without interaction and performed independently.

본 개시의 일 실시예에서 생성된 MMTP 패킷들은 다시 버퍼를 거쳐 프로세서(1670)로 전송되어, 언패킷화 된 후, 소스 데이터로 복원되고, MMT 어플리케이션 계층(770)에서 컨텐트로 복원될 수 있다. MMTP packets generated in an embodiment of the present disclosure may be transmitted to the processor 1670 through a buffer again, unpacketized, and then restored as source data, and may be restored as content in the MMT application layer 770.

다른 실시예에서, 에러 수정이 불필요한 경우, 전송 계층(790)은 FEC 소스 패킷 및 FEC 리페어 패킷을 대신하여 MMTP 패킷을 직접 수신할 수 있고, MMTP 패킷을 수신한 경우에는 FEC 모듈을 거칠 필요 없이, 프로세서(1670)에서 언패킷화 작업을 수행할 수 있다. In another embodiment, when error correction is not necessary, the transport layer 790 may directly receive the MMTP packet in place of the FEC source packet and the FEC repair packet, and when receiving the MMTP packet, there is no need to go through the FEC module, The unpacketization operation may be performed by the processor 1670.

본 발명은 일정 시간 동안 디바이스가 송수신할 수 있는 데이터의 볼륨(volume of data)이 증가한다는 측면에서 복수의 데이터를 순차적으로 송수신하는 경우와 비교하여 발전을 이루었다. 복수의 데이터를 병렬적으로 송수신하는 본 개시의 일 실시예와 복수의 데이터를 순차적으로 송수신하는 경우의 차이는 다음 표에서 잘 드러난다.The present invention has developed compared to the case of sequentially transmitting and receiving a plurality of data in terms of increasing the volume of data that can be transmitted and received by a device for a certain period of time. The difference between an embodiment of the present disclosure in which a plurality of data is transmitted and received in parallel and a case where a plurality of data is sequentially transmitted and received is clearly shown in the following table.

Test caseTest case 수신한 데이터의 Volume Volume of received data 순차 송수신 하는 경우When sending and receiving sequentially 본 발명The present invention
전송 데이터의 크기(KB)

Transmitted data size (KB)
수신데이터의 크기(KB)Size of received data (KB) 정보 누락 비율Information missing rate 수신데이터의 크기(KB)Size of received data (KB) 정보 누락 비율Information missing rate 1. 비디오 파일(2.86 Mbps bitrate)
2. 비디오 파일(2.97 Mbps bitrate)
1. Video file (2.86 Mbps bitrate)
2. Video file (2.97 Mbps bitrate)

2502
2576

2502
2576

0%
0%

0%
0%

2502
2576

2502
2576

0%
0%

0%
0%

2502
2576

2502
2576
웹 카메라 데이터 (1 Mbps bitrate)Web camera data (1 Mbps bitrate) 915915 0%0% 921921 0%0% 920920 웹 카메라 데이터(1 Mbps bitrate)
+
비디오 파일 (2.86 Mbps bitrate)
Web camera data (1 Mbps bitrate)
+
Video file (2.86 Mbps bitrate)
826

2119
826

2119
10%

15%
10%

15%
930

2502
930

2502
-1%

0%
-One%

0%
920

2502
920

2502
웹 카메라 데이터 (1 Mbps bitrate)
+
비디오 파일 (2.86 Mbps bitrate) flow
+
비디오 파일 (2.97 Mbps bitrate) flow
Web camera data (1 Mbps bitrate)
+
Video file (2.86 Mbps bitrate) flow
+
Video file (2.97 Mbps bitrate) flow
657

1940

2133
657

1940

2133
28%

22%

17%
28%

22%

17%
920

2502

2576
920

2502

2576
0%

0%

0%
0%

0%

0%
920

2502

2576
920

2502

2576

상기 표는 동일한 데이터 채널 조건에서 수신 디바이스가 8초 동안 송수신한 데이터의 총 크기을 기준으로 작성 되었다. The table above is based on the total size of data transmitted and received by the receiving device for 8 seconds under the same data channel condition.

표의 내용을 살펴보면, 하나의 비디오 파일을 송수신한 경우, 순차 송수신한 경우와 본 발명은 수신 데이터의 크기나 정보 누락 비율이 큰 차이가 없었다. Looking at the contents of the table, there was no significant difference between the case of transmitting and receiving one video file, the case of sequentially transmitting and receiving, and the case of the present invention in the size of received data or the ratio of missing information.

또, 하나의 웹 카메라 데이터만을 송신한 경에도 순차 송수신한 경우와 본 발명은 수신 데이터의 볼륨이나 정보 누락 비율은 큰 차이가 없었다. In addition, even when only one web camera data is transmitted, there is no significant difference between the case of sequential transmission and reception and the volume of received data or the information omission ratio in the present invention.

그러나 하나의 웹 카메라 데이터와 하나의 비디오 파일(2.86 Mbps bitrate)을 동시에 송신한 경우, 순차적으로 송수신한 경우는 8초 동안 웹 카메라 데이터 총 920 KB 중 826 KB 만을 수신하였고, 정보 누락 비율이 10%인 반면, 본 개시의 일 실시예는 웹 카메라 데이터 총 920 KB 전부를 수신하고도 10KB를 더 수신하여 정보 누락 비율이 -1% 인 것을 확인 할 수 있다. However, when one web camera data and one video file (2.86 Mbps bitrate) were transmitted at the same time, in the case of sequential transmission and reception, only 826 KB of the total 920 KB of web camera data was received for 8 seconds, and the rate of missing information was 10%. On the other hand, according to an exemplary embodiment of the present disclosure, it can be confirmed that the information omission ratio is -1% by receiving all of 920 KB of web camera data and further receiving 10 KB.

또한, 하나의 웹 카메라 데이터와 하나의 비디오 파일(2.86 Mbps bitrate) 그리고 다른 하나의 비디오 파일(2.97 Mbps bitrate)을 동시에 송신한 경우 즉, 3개의 컨텐트를 동시에 송신한 경우에는, 순차적으로 송수신하였을 때, 8초 동안 웹 카메라 데이터 총 920 KB 중 657 KB 만을 수신하였고, 정보 누락 비율이 28%인 반면, 본 개시의 일 실시예는 웹 카메라 데이터 총 920 KB 전부를 수신하여 정보 누락 비율이 0% 인 것을 확인 할 수 있다.In addition, when one web camera data, one video file (2.86 Mbps bitrate), and another video file (2.97 Mbps bitrate) are simultaneously transmitted, that is, when three contents are simultaneously transmitted, when sequentially transmitted/received , For 8 seconds, only 657 KB of the total web camera data was received, and the information omission rate was 28%, whereas an embodiment of the present disclosure received all 920 KB of web camera data and the information omission rate was 0%. You can check it.

즉, 하나의 컨텐트를 송신하는 경우, 8초 동안 본 발명과 순차 송수신한 경우 는 비슷한 성과를 보였으나, 두 개의 컨텐트를 동시에 송신하는 경우, 본 발명 일 실시예에 의한 데이터 수신율이, 순차 송수신한 경우에 의한 데이터 수신율에 비해 더 높았고, 세 개의 컨텐트를 동시에 송신하는 경우에는, 두 개의 컨텐트를 동시에 송신하는 경우보다 더 큰 차이로 본 개시의 일 실시예에 의한 데이터 수신율이, 순차 송수신한 경우에 의한 데이터 수신율에 비하여 높다는 것을 알 수 있다. That is, in the case of transmitting one content, in the case of sequentially transmitting and receiving the present invention for 8 seconds, similar results were achieved. However, when transmitting two contents at the same time, the data reception rate according to an embodiment of the present invention is The data reception rate was higher than that of the case, and when three contents were transmitted simultaneously, the data reception rate according to an embodiment of the present disclosure was sequentially transmitted and received by a greater difference than the case of simultaneously transmitting two contents. It can be seen that it is higher than the data reception rate by

이를 통해 동시에 전송 되는 컨텐트의 수가 늘어날수록, 본 발명의 실시예에 의한 데이터 수신율과, 순차 송수신한 경우에 의한 데이터 수신율의 차이가 점점 커질 것을 유추할 수 있다. Through this, as the number of simultaneously transmitted content increases, it can be inferred that the difference between the data reception rate according to an embodiment of the present invention and the data reception rate when sequentially transmitted/received increases gradually.

본 발명은 각 컨텐트 마다 분리된 별도의 프로세스를 사용함으로써 디바이스의 자원 활용도를 높이고, 데이터 송수신의 속도 및 품질을 향상시킬 수 있다. In the present invention, by using a separate process for each content, resource utilization of a device can be increased, and speed and quality of data transmission and reception can be improved.

전술한 본 개시의 설명은 예시를 위한 것이며, 본 개시가 속하는 기술분야의 통상의 지식을 가진 자는 본 개시의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일 형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The above description of the present disclosure is for illustrative purposes only, and those skilled in the art to which the present disclosure pertains will be able to understand that it is possible to easily transform it into other specific forms without changing the technical spirit or essential features of the present disclosure will be. Therefore, it should be understood that the embodiments described above are illustrative in all respects and not limiting. For example, each component described as a single form may be implemented in a distributed manner, and similarly, components described as being distributed may also be implemented in a combined form.

본 개시의 범위는 위 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 개시의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present disclosure is indicated by the claims to be described later rather than the detailed description above, and all changes or modified forms derived from the meaning and scope of the claims and the concept of equivalents thereof should be interpreted as being included in the scope of the present disclosure. do.

Claims (24)

제2 디바이스로 MMT(MPEG Media Transport) 형식의 패킷을 전송하는 제1 디바이스에 있어서,
제1 컨텐트에 기초하여 제1 패킷을 생성하는 제1 프로세서;
제2 컨텐트에 기초하여 제2 패킷을 생성하는 제2 프로세서;
상기 제1 컨텐트 및 상기 제2 컨텐트로부터 추출된 정보에 기초하여 시그널링 패킷을 생성하는 시그널링 프로세서; 및
상기 제1 패킷, 상기 제2 패킷 및 상기 시그널링 패킷을 각각 분리된 프로세스를 통하여 병렬적으로 상기 제2 디바이스로 송신하는 통신부를 포함하고,
상기 제1 프로세서, 상기 제2 프로세서 및 상기 시그널링 프로세서는 병렬적으로 상기 제1 패킷, 상기 제2 패킷 및 상기 시그널링 패킷을 생성하고,
상기 제1 프로세서는 상기 제 1 컨텐트가 미디어 데이터인 경우, 소스 데이터를 추출하는 미디어 데이터 추출기 및 상기 제 1 컨텐트가 미디어 데이터가 아닌 경우, 소스 데이터를 추출하는 파일 데이터 추출기를 포함하는 것을 특징으로 하는 디바이스.
In the first device for transmitting a packet in the MMT (MPEG Media Transport) format to a second device,
A first processor that generates a first packet based on the first content;
A second processor for generating a second packet based on the second content;
A signaling processor that generates a signaling packet based on the first content and information extracted from the second content; And
And a communication unit for transmitting the first packet, the second packet, and the signaling packet to the second device in parallel through separate processes, respectively,
The first processor, the second processor, and the signaling processor generate the first packet, the second packet, and the signaling packet in parallel,
The first processor comprises a media data extractor for extracting source data when the first content is media data, and a file data extractor for extracting source data when the first content is not media data. device.
제1항에 있어서,
상기 제1 프로세서, 상기 제2 프로세서 및 상기 시그널링 프로세서는,
상기 제1 프로세서가 상기 제1 패킷을 생성하는 동안, 상기 제2 프로세서 및 상기 시그널링 프로세서가 각각 상기 제2 패킷 및 상기 시그널링 패킷을 생성하는 것을 특징으로 하는 디바이스.
The method of claim 1,
The first processor, the second processor, and the signaling processor,
And while the first processor generates the first packet, the second processor and the signaling processor respectively generate the second packet and the signaling packet.
제1항에 있어서,
상기 제 1 프로세서는 상기 추출된 소스 데이터를 기초로 상기 제1 패킷을 생성하는 것을 특징으로 하는 디바이스.
The method of claim 1,
The device according to claim 1, wherein the first processor generates the first packet based on the extracted source data.
제1항에 있어서,
상기 제1 프로세서는 상기 제1 패킷을 저장하는 제1 버퍼를 더 포함하고,
상기 제2 프로세서는 상기 제2 패킷을 저장하는 제2 버퍼를 더 포함하는 것을 특징으로 하는 디바이스.
The method of claim 1,
The first processor further comprises a first buffer for storing the first packet,
The second processor further comprises a second buffer for storing the second packet.
제1항에 있어서,
상기 제1 디바이스는,
상기 제1 패킷을 기초로 하여 제1 FEC 리페어 패킷 및 제1 FEC 소스 패킷을 생성하는 제1 FEC 모듈;
상기 제2 패킷을 기초로 하여 제2 FEC 리페어 패킷 및 제2 FEC 소스 패킷을 생성하는 제2 FEC 모듈을 더 포함하고,
상기 통신부는 상기 제1 FEC 리페어 패킷, 상기 제1 FEC 소스 패킷, 상기 제2 FEC 리페어 패킷 및 상기 제2 FEC 소스 패킷을 상기 제2 디바이스로 송신하는 디바이스.
The method of claim 1,
The first device,
A first FEC module generating a first FEC repair packet and a first FEC source packet based on the first packet;
Further comprising a second FEC module generating a second FEC repair packet and a second FEC source packet based on the second packet,
The communication unit transfers the first FEC repair packet, the first FEC source packet, the second FEC repair packet, and the second FEC source packet to the second device. Sending device.
제1항에 있어서,
송신할 컨텐트가 복수개인 경우,
상기 제1 디바이스는 상기 송신할 컨텐트의 숫자에 기초하여, 병렬적으로 생성하는 패킷의 개수를 결정하는 것을 특징으로 하는 디바이스.
The method of claim 1,
If there are multiple content to be sent,
The device according to claim 1, wherein the first device determines the number of packets to be generated in parallel based on the number of contents to be transmitted.
제1 디바이스로부터 MMT(MPEG Media Transport) 형식의 패킷을 수신하는 제2 디바이스에 있어서,
상기 제1 디바이스로부터 제1 패킷, 제2 패킷 및 시그널링 패킷을 각각 분리된 프로세스를 통하여 병렬적으로 수신하는 통신부;
상기 제1 패킷에 기초하여 제1 컨텐트를 생성하는 제1 프로세서;
상기 제2 패킷에 기초하여 제2 컨텐트를 생성하는 제2 프로세서; 및
상기 시그널링 패킷에 기초하여 상기 제1 패킷 및 상기 제2 패킷을 위한 시그널링 컨텐트를 생성하는 시그널링 프로세서를 포함하고,
상기 제1 프로세서, 상기 제2 프로세서 및 상기 시그널링 프로세서는 병렬적으로 상기 제1 컨텐트, 상기 제2 컨텐트 및 상기 시그널링 컨텐트를 생성하고,
상기 제1 패킷이 미디어 패킷인 경우, 미디어 데이터 복원기가 소스 데이터를 생성하고,
상기 제1 패킷이 미디어 패킷이 아닌 경우, 파일 데이터 복원기가 소스 데이터를 생성하는 것을 특징으로 하는 디바이스.
In the second device for receiving a packet in the MMT (MPEG Media Transport) format from the first device,
A communication unit for receiving a first packet, a second packet, and a signaling packet from the first device in parallel through separate processes;
A first processor generating first content based on the first packet;
A second processor for generating second content based on the second packet; And
A signaling processor that generates signaling content for the first packet and the second packet based on the signaling packet,
The first processor, the second processor, and the signaling processor generate the first content, the second content, and the signaling content in parallel,
When the first packet is a media packet, a media data restorer generates source data,
And if the first packet is not a media packet, a file data restorer generates source data.
제7항에 있어서,
상기 제1 프로세서, 상기 제2 프로세서 및 상기 시그널링 프로세서는,
상기 제1 프로세서가 상기 제1 컨텐트를 생성하는 동안, 상기 제2 프로세서 및 상기 시그널링 프로세서가 각각 상기 제2 컨텐트 및 상기 시그널링 컨텐트를 생성하는 것을 특징으로 하는 디바이스.
The method of claim 7,
The first processor, the second processor, and the signaling processor,
And the second processor and the signaling processor respectively generate the second content and the signaling content while the first processor generates the first content.
제7항에 있어서,
상기 소스 데이터를 기초로 컨텐트를 생성하는 것을 특징으로 하는 디바이스.
The method of claim 7,
And generating content based on the source data.
제7항에 있어서,
상기 제1 프로세서는 상기 제1 패킷을 저장하는 제1 버퍼를 더 포함하고,
상기 제2 프로세서는 상기 제2 패킷을 저장하는 제2 버퍼를 더 포함하는 것을 특징으로 하는 디바이스.
The method of claim 7,
The first processor further comprises a first buffer for storing the first packet,
The second processor further comprises a second buffer for storing the second packet.
제7항에 있어서,
상기 통신부가 수신하는, 상기 제1 패킷은 제 1 FEC 리페어 패킷 및 제 1 FEC 소스 패킷을 포함하고, 상기 제2 패킷은 제 2 FEC 리페어 패킷 및 제 2 FEC 소스 패킷을 포함하며,
상기 제1 FEC 소스 패킷 및 상기 제2 FEC 소스 패킷 내의 소스 패킷이 누락된 경우,
상기 제1 FEC 리페어 패킷에 기초하여 상기 제1 FEC 소스 패킷을 복원하는 제1 FEC 모듈; 및
상기 제2 FEC 리페어 패킷에 기초하여 상기 제2 FEC 소스 패킷을 복원하는 제2 FEC 모듈을 더 포함하는 디바이스.
The method of claim 7,
The first packet received by the communication unit includes a first FEC repair packet and a first FEC source packet, and the second packet includes a second FEC repair packet and a second FEC source packet,
When a source packet in the first FEC source packet and the second FEC source packet is missing,
A first FEC module for restoring the first FEC source packet based on the first FEC repair packet; And
The device further comprising a second FEC module for restoring the second FEC source packet based on the second FEC repair packet.
제7항에 있어서,
수신한 패킷이 복수개인 경우,
상기 수신한 패킷의 숫자에 기초하여, 병렬적으로 생성하는 컨텐트의 개수를 결정하는 제어부를 더 포함하는 것을 특징으로 하는 디바이스.
The method of claim 7,
When there are multiple packets received,
And a controller configured to determine the number of contents generated in parallel based on the number of received packets.
제1 디바이스가 MMT(MPEG Media Transport) 형식의 데이터를 제2 디바이스로 송신하는 방법에 있어서,
제1 컨텐트에 기초하여 제1 패킷을 생성하는 단계;
제2 컨텐트에 기초하여 제2 패킷을 생성하는 단계;
상기 제1 컨텐트 및 상기 제2 컨텐트로부터 추출된 정보에 기초하여 시그널링 패킷을 생성하는 단계;
상기 제1 패킷, 상기 제2 패킷 및 상기 시그널링 패킷을 각각 분리된 프로세스를 통하여 병렬적으로 상기 제2 디바이스로 송신하는 단계를 포함하고,
상기 제1 패킷, 상기 제2 패킷 및 상기 시그널링 패킷을 생성하는 단계를 병렬적으로 수행하고,
상기 제1 컨텐트가 미디어 데이터를 포함하는 경우, 미디어 데이터 추출기(media data extractor)가 소스 데이터를 추출하고, 상기 제1 컨텐트가 미디어 데이터를 포함하지 않는 경우, 파일 데이터 추출기(file data extractor)가 소스 데이터를 추출하는 것을 특징으로 하는 데이터 송신 방법.
In the method for the first device to transmit MMT (MPEG Media Transport) format data to the second device,
Generating a first packet based on the first content;
Generating a second packet based on the second content;
Generating a signaling packet based on the first content and information extracted from the second content;
Transmitting the first packet, the second packet and the signaling packet to the second device in parallel through separate processes, respectively,
Generating the first packet, the second packet, and the signaling packet in parallel,
When the first content includes media data, a media data extractor extracts source data, and when the first content does not include media data, a file data extractor Data transmission method, characterized in that to extract data.
제13항에 있어서,
상기 제1 패킷, 상기 제2 패킷 및 상기 시그널링 패킷을 생성하는 단계는,
상기 제1 패킷을 생성하는 단계가 진행되는 동안, 상기 제2 패킷을 생성하는 단계 및 상기 시그널링 패킷을 생성하는 단계가 진행되는 것을 특징으로 하는 데이터 송신 방법.
The method of claim 13,
Generating the first packet, the second packet, and the signaling packet,
While the step of generating the first packet is in progress, the step of generating the second packet and the The data transmission method, characterized in that the step of generating the signaling packet is in progress.
제13항에 있어서,
상기 추출한 소스 데이터를 기초로 상기 제1 패킷을 생성하는 것을 특징으로 하는 데이터 송신 방법.
The method of claim 13,
And generating the first packet based on the extracted source data.
제13항에 있어서,
상기 제1 패킷 및 상기 제2 패킷을 생성하는 단계는,
제1 버퍼에 상기 제1 패킷을 저장하는 단계; 및
제2 버퍼에 상기 제2 패킷을 저장하는 단계를 더 포함하는 데이터 송신 방법.
The method of claim 13,
Generating the first packet and the second packet,
Storing the first packet in a first buffer; And
The data transmission method further comprising storing the second packet in a second buffer.
제13항에 있어서,
상기 제1 패킷을 생성하는 단계는,
상기 제1 패킷을 기초로 하여 제1 FEC 리페어 패킷 및 제1 FEC 소스 패킷을 생성하는 단계; 및
상기 제1 FEC 리페어 패킷, 상기 제1 FEC 소스 패킷을 상기 제2 디바이스로 송신하는 단계를 더 포함하는 데이터 송신 방법.
The method of claim 13,
Generating the first packet,
Generating a first FEC repair packet and a first FEC source packet based on the first packet; And
The first FEC repair packet and the first FEC source packet to the second device The data transmission method further comprising the step of transmitting.
제13항에 있어서,
송신할 컨텐트가 복수개인 경우,
상기 송신할 컨텐트의 숫자에 기초하여, 병렬적으로 생성하는 패킷의 개수를 결정하는 단계를 더 포함하는 데이터 송신 방법.
The method of claim 13,
If there are multiple content to be sent,
And determining the number of packets to be generated in parallel based on the number of contents to be transmitted.
제1 디바이스로부터 제2 디바이스가 MMT(MPEG Media Transport) 형식의 데이터를 수신하는 방법에 있어서,
상기 제1 디바이스로부터 제1 패킷, 제2 패킷 및 시그널링 패킷을 각각 분리된 프로세스를 통하여 병렬적으로 수신하는 단계;
상기 제1 패킷에 기초하여 제1 컨텐트를 생성하는 단계;
상기 제2 패킷에 기초하여 제2 컨텐트를 생성하는 단계;
상기 시그널링 패킷에 기초하여 시그널링 컨텐트를 생성하는 단계를 포함하고,
상기 제1 컨텐트, 상기 제2 컨텐트 및 상기 시그널링 컨텐트를 생성하는 단계를 병렬적으로 수행하고,
상기 제1 컨텐트를 생성하는 단계는,
상기 수신한 제1 패킷이 미디어 패킷인 경우, 미디어 데이터 복원기가 소스 데이터를 생성하고, 상기 수신한 제1 패킷이 미디어 패킷이 아닌 경우, 파일 데이터 복원기가 소스 데이터를 생성하는 단계를 더 포함하는 것을 특징으로 하는 데이터 수신 방법.
In a method for receiving data in an MPEG Media Transport (MMT) format by a second device from a first device,
Receiving a first packet, a second packet, and a signaling packet from the first device in parallel through separate processes;
Generating first content based on the first packet;
Generating second content based on the second packet;
Including the step of generating signaling content based on the signaling packet,
Performing the step of generating the first content, the second content, and the signaling content in parallel,
The step of generating the first content,
If the received first packet is a media packet, the media data restorer generates source data, and if the received first packet is not a media packet, the file data restorer generates source data. Data receiving method characterized in that.
제19항에 있어서,
상기 제1 컨텐트, 상기 제2 컨텐트 및 상기 시그널링 컨텐트를 생성하는 단계는,
상기 제1 컨텐트를 생성하는 동안, 상기 제2 컨텐트 및 상기 시그널링 컨텐트를 생성하는 것을 특징으로 하는 데이터 수신 방법.
The method of claim 19,
Generating the first content, the second content, and the signaling content,
And generating the second content and the signaling content while generating the first content.
제19항에 있어서,
상기 소스 데이터를 기초로 상기 제1 컨텐트를 생성하는 것을 특징으로 하는 데이터 수신 방법.
The method of claim 19,
And generating the first content based on the source data.
제19항에 있어서,
상기 제1 컨텐트 및 상기 제2 컨텐트를 생성하는 단계는,
제1 버퍼에 상기 제1 패킷을 저장하는 단계; 및
제2 버퍼에 상기 제2 패킷을 저장하는 단계를 더 포함하는 데이터 수신 방법.
The method of claim 19,
Generating the first content and the second content,
Storing the first packet in a first buffer; And
The method of receiving data further comprising storing the second packet in a second buffer.
제19항에 있어서,
상기 제1 디바이스로부터 제1 패킷, 제2 패킷 및 시그널링 패킷을 수신하는 단계에서,
상기 제1 패킷은 제1 FEC 리페어 패킷, 제1 FEC 소스 패킷을 포함하고, 상기 제2 패킷은 제2 FEC 리페어 패킷 및 제2 FEC 소스 패킷을 포함하며,
상기 제1 컨텐트를 생성하는 단계는,
상기 제1 FEC 소스 패킷 내의 소스 패킷이 누락된 경우,
상기 제1 FEC 리페어 패킷에 기초하여 상기 제1 FEC 소스 패킷을 복원하는 단계를 더 포함하는 데이터 수신 방법.
The method of claim 19,
In the step of receiving a first packet, a second packet, and a signaling packet from the first device,
The first packet includes a first FEC repair packet and a first FEC source packet, and the second packet includes a second FEC repair packet and a second FEC source packet,
The step of generating the first content,
When a source packet in the first FEC source packet is missing,
And reconstructing the first FEC source packet based on the first FEC repair packet.
제19항에 있어서,
수신한 패킷이 복수개인 경우,
상기 수신한 패킷의 숫자에 기초하여, 병렬적으로 생성하는 컨텐트의 개수를 결정하는 것을 특징으로 하는 데이터 수신 방법.
The method of claim 19,
When there are multiple packets received,
And determining the number of contents to be generated in parallel based on the number of received packets.
KR1020140156241A 2013-12-31 2014-11-11 Apparatus and Method for Transmitting Data KR102191970B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/587,601 US9729903B2 (en) 2013-12-31 2014-12-31 Data transmitting device and method

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201361922269P 2013-12-31 2013-12-31
US61/922,269 2013-12-31
US201461926447P 2014-01-13 2014-01-13
US61/926,447 2014-01-13

Publications (2)

Publication Number Publication Date
KR20150079399A KR20150079399A (en) 2015-07-08
KR102191970B1 true KR102191970B1 (en) 2020-12-17

Family

ID=53791756

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140156241A KR102191970B1 (en) 2013-12-31 2014-11-11 Apparatus and Method for Transmitting Data

Country Status (1)

Country Link
KR (1) KR102191970B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040064500A1 (en) * 2001-11-20 2004-04-01 Kolar Jennifer Lynn System and method for unified extraction of media objects
US20090310946A1 (en) * 2006-12-22 2009-12-17 Panasonic Corporation Broadcasting station apparatus and recording/reproducing apparatus

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120084234A (en) * 2011-01-19 2012-07-27 삼성전자주식회사 Method for delivering mmt access unit for mpeg media transport
US20140344470A1 (en) * 2011-11-23 2014-11-20 Electronics And Telecommunications Research Institute Method and apparatus for streaming service for providing scalability and view information
KR102027916B1 (en) * 2012-02-27 2019-10-02 삼성전자주식회사 Apparatus and method for transmitting and receiving packets with forward error correction schemes

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040064500A1 (en) * 2001-11-20 2004-04-01 Kolar Jennifer Lynn System and method for unified extraction of media objects
US20090310946A1 (en) * 2006-12-22 2009-12-17 Panasonic Corporation Broadcasting station apparatus and recording/reproducing apparatus

Also Published As

Publication number Publication date
KR20150079399A (en) 2015-07-08

Similar Documents

Publication Publication Date Title
US9641588B2 (en) Packets recovery system and method
US10958376B2 (en) Method and apparatus for transmitting and receiving packet in communication system
WO2011079763A1 (en) Method for processing forward error correction (fec) data, device and system thereof
US10506270B2 (en) Method and apparatus for transmitting media content
KR102305410B1 (en) Method and apparatus for transmitting/receiving packet in a communication system
US9729903B2 (en) Data transmitting device and method
CN101867453A (en) RTP anti-packet-loss method
JP6588092B2 (en) Method and apparatus for transmitting and receiving packets in broadcast and communication systems
JP5344541B2 (en) Data transmission apparatus, transmission method and program
US9667384B2 (en) Apparatus and method for transmitting and receiving forward error correction packet
US10341049B2 (en) Method and apparatus for performing a forward error correction (FEC) encoding or decoding in a multimedia system
KR20140051493A (en) Method and apparatus for transceiving data packet for transmitting and receiving multimedia data
CN103686055A (en) Processing method and device for packet loss compensation in television conference system
JP6511470B2 (en) Method and apparatus for packet transmission and reception in communication system
KR102191970B1 (en) Apparatus and Method for Transmitting Data
US10277922B2 (en) Method and device for controlling reception of broadcast service provided by means of application layer forward error correction
WO2015174893A1 (en) Methods, decoder and encoder for selection of reference pictures to be used during encoding
JP2016134673A (en) Transmission device, transmission method and program

Legal Events

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