KR20150079399A - Apparatus and Method for Transmitting Data - Google Patents

Apparatus and Method for Transmitting Data Download PDF

Info

Publication number
KR20150079399A
KR20150079399A KR1020140156241A KR20140156241A KR20150079399A KR 20150079399 A KR20150079399 A KR 20150079399A KR 1020140156241 A KR1020140156241 A KR 1020140156241A KR 20140156241 A KR20140156241 A KR 20140156241A KR 20150079399 A KR20150079399 A KR 20150079399A
Authority
KR
South Korea
Prior art keywords
packet
content
processor
generating
fec
Prior art date
Application number
KR1020140156241A
Other languages
Korean (ko)
Other versions
KR102191970B1 (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

Disclosed is a first device transmitting a packet of MPEG media transport (MMT) type to a second device, which comprises a first processor generating a first packet based on a first content; a second processor generating a second packet based on a second content; a signaling processor generating a signaling packet based on the first content and the second content; and a communication part transmitting the first packet, the second packet, and the signaling packet to the second device, wherein the first processor, the second processor, and the signaling processor are characterized by parallely generating the first packet, the second packet, and the signaling packet.

Description

데이터 전송 디바이스 및 그 전송 방법 {Apparatus and Method for Transmitting Data}[0001] Apparatus and Method for Transmitting Data [0002]

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

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

멀티미디어 컨텐트는 MPEG 표준을 따르는 경우가 많으므로, MPEG 관련 기술들도 발달하여, 최근에는 차세대 멀티미디어 부호화 표현 및 다중화 전달 표준인 MPEG-H를 준비하기에 이르렀다. Since the multimedia contents often follow the MPEG standard, the MPEG related technologies are developed, and recently, the MPEG-H, the next generation multimedia coding expression and multiplex transmission standard, has been prepared.

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

현재까지 MPEG-H 관련 기술은 계속적으로 발전하고 있지만, 동시에 여러 개의 컨텐트를 처리하는 기술은 MPEG-H의 TS(Transport Stream) 표준인 MMT(MPEG Media Trasport) 프로토콜 수행에 있어서 미흡한 실정이다.Although the technology related to MPEG-H has been continuously developed, the technology for processing a plurality of contents at the same time is insufficient for the implementation of the MMT (MPEG Media Transport) protocol, which is a TS (Transport Stream) standard of MPEG-H.

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

상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 개시의 일 실시예의 일 측면에 따르면, 제2 디바이스로 MMT(MPEG Media Transport) 형식의 패킷을 전송하는 제1 디바이스에 있어서, 제1 컨텐트에 기초하여 제1 패킷을 생성하는 제1 프로세서, 제2 컨텐트에 기초하여 제2 패킷을 생성하는 제2 프로세서, 상기 제1 컨텐트 및 상기 제2 컨텐트에 기초하여 시그널링 패킷을 생성하는 시그널링 프로세서 및 상기 제1 패킷, 상기 제2 패킷 및 상기 시그널링 패킷을 상기 제2 디바이스로 송신하는 통신부를 포함하고, 상기 제1 프로세서, 상기 제2 프로세서 및 상기 시그널링 프로세서는 병렬적으로 상기 제1 패킷, 상기 제2 패킷 및 상기 시그널링 패킷을 생성하는 것을 특징으로 하는 제1 디바이스가 제공될 수 있다.According to an aspect of an embodiment of the present disclosure, there is provided a first device for transmitting an MMT (MPEG Media Transport) formatted packet to a second device, the first device comprising: A second processor for generating a second packet based on the second content, a signaling processor for generating a signaling packet based on the first content and the second content, and a second processor for generating a first packet based on the first content and the second content, Wherein the first processor, the second processor, and the signaling processor are configured to transmit the first packet, the second packet, and the signaling packet in parallel to the second device, The first device generating the signaling packet.

상기 제1 프로세서, 상기 제2 프로세서 및 상기 시그널링 프로세서는, 상기 제1 프로세서가 상기 제1 패킷을 생성하는 동안, 상기 제2 프로세서 및 상기 시그널링 프로세서가 각각 상기 제2 패킷 및 상기 시그널링 패킷을 생성하는 것을 특징으로 할 수 있다. Wherein the first processor, the second processor, and the signaling processor are configured to cause the second processor and the signaling processor to generate the second packet and the signaling packet, respectively, while the first processor is generating the first packet . ≪ / RTI >

상기 제1 디바이스는, 미디어 데이터 추출기(media data extractor) 및 파일 데이터 추출기(file data extractor)를 더 포함하고, 상기 제 1 컨텐트가 미디어 데이터인 경우, 상기 미디어 데이터 추출기가 소스 데이터를 추출하고, 상기 제 1 컨텐트가 미디어 데이터가 아닌 경우, 상기 파일 데이터 추출기가 소스 데이터를 추출하며, 상기 제 1 프로세서는 상기 추출된 소스 데이터를 기초로 상기 제1 패킷을 생성할 수 있다. Wherein the first device further comprises a media data extractor and a file data extractor, wherein if the first content is media data, the media data extractor extracts the source data, If the first content is not media data, the file data extractor extracts the source data, and the first processor can 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 디바이스로 송신할 수 있다. Wherein the first device comprises: a first FEC module for generating a first FEC repair packet and a first FEC source packet based on the first packet, a second FEC repair packet and a second FEC repair packet based on the second packet, Further comprising 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 be transmitted.

송신할 컨텐트가 복수개인 경우, 상기 데이터 제1 디바이스는 상기 송신할 컨텐트의 숫자에 기초하여, 병렬적으로 생성하는 패킷의 개수를 결정할 수 있다. When there are a plurality of contents to be transmitted, the data first device can 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, there is provided a second device for receiving a packet of an MMT (MPEG Media Transport) format from a first device, the first device including a first packet, a second packet and a signaling packet A first processor for generating a first content based on the first packet, a second processor for generating a second content based on the second packet, and a second processor for generating a second packet based on the first packet and the second packet based on the signaling packet. And a signaling processor for generating signaling content for a second packet, wherein the first processor, the second processor and the signaling processor are operable to generate the first content, the second content and the signaling content in parallel A characteristic device can be provided.

상기 제1 프로세서, 상기 제2 프로세서 및 상기 시그널링 프로세서는, 상기 제1 프로세서가 상기 제1 컨텐트를 생성하는 동안, 상기 제2 프로세서 및 상기 시그널링 프로세서가 각각 상기 제2 컨텐트 및 상기 시그널링 컨텐트를 생성하는 것을 특징으로 할 수 있다. Wherein the first processor, the second processor, and the signaling processor are configured to cause the second processor and the signaling processor to generate the second content and the signaling content, respectively, while the first processor is generating the first content . ≪ / RTI >

상기 제2 디바이스는, 미디어 데이터 복원기 및 파일 데이터 복원기를 더 포함하고, 상기 제1 패킷이 미디어 패킷인 경우, 상기 미디어 데이터 복원기가 소스 데이터를 생성하고, 상기 제1 패킷이 미디어 패킷이 아닌 경우, 상기 파일 데이터 복원기가 소스 데이터를 생성하여, 상기 소스 데이터를 기초로 컨텐트를 생성할 수 있다. Wherein the second device further comprises a media data decompressor and a file data decompressor, wherein if the first packet is a media packet, the media data decompressor generates source data, and if the first packet is not a media packet , The file data decompressor may generate the source data and generate the 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 모듈을 더 포함할 수 있다. Wherein 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, Source packet and a source packet in the second FEC source packet are missing, a first FEC module for restoring the first FEC source packet based on the first FEC repair packet and a second FEC source packet based on the second FEC repair packet, And a second FEC module for restoring the second FEC source packet.

수신한 패킷이 복수개인 경우, 상기 수신한 패킷의 숫자에 기초하여, 병렬적으로 생성하는 컨텐트의 개수를 결정하는 제어부를 더 포함할 수 있다. And a controller for determining the number of contents to be generated in parallel based on the number of the received packets when there are a plurality 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, there is provided a method for a first device to transmit data in an MMT (MPEG Media Transport) format to a second device, the method comprising generating a first packet based on a first content, Generating a second packet based on the second content, generating a signaling packet based on the first content and the second content, generating the first packet, the second packet, and the signaling packet to the second And transmitting the first packet, the second packet, and the signaling packet to the device, wherein the step of generating the first packet, the second packet, and the signaling packet is performed in parallel.

상기 제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 first packet is being generated, And a step of generating a signaling packet is performed.

상기 제1 패킷을 생성하는 단계는, 상기 제1 컨텐트가 미디어 데이터를 포함하는 경우, 미디어 데이터 추출기(media data extractor)가 소스 데이터를 추출하고, 상기 제1 컨텐트가 미디어 데이터를 포함하지 않는 경우, 파일 데이터 추출기(file data extractor)가 소스 데이터를 추출하는 단계를 더 포함하고, 상기 추출한 소스 데이터를 기초로 상기 제1 패킷을 생성할 수 있다. The method of claim 1, wherein generating the first packet comprises: if the first content includes media data, the media data extractor extracts the source data, and if the first content does not include media data, The method may further include extracting source data by a file data extractor, and generating 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 디바이스로 송신하는 단계를 더 포함할 수 있다. Wherein generating the first packet comprises: generating a first FEC repair packet and a first FEC source packet based on the first packet and generating the first FEC repair packet, the first FEC repair packet, With 2 devices The method may further include the step of transmitting.

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

본 개시의 일 실시예의 또 다른 측면에 따르면, 제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, there is provided a method for receiving data in the form of an MMT (MPEG Media Transport) from a first device to a second device, the method comprising: Receiving a packet, generating a first content based on the first packet, generating a second content based on the second packet, and generating signaling content based on the signaling packet And generating the first content, the second content, and the signaling content in parallel.

상기 제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 during the generation of the first content.

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

상기 제1 컨텐트 및 상기 제2 컨텐트를 생성하는 단계는, 제1 버퍼에 상기 제1 패킷을 저장하는 단계 및 제2 버퍼에 상기 제2 패킷을 저장하는 단계를 더 포함할 수 있다. The generating of the first content and the second content may further comprise 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 소스 패킷을 복원하는 단계를 더 포함할 수 있다. Wherein the first packet includes a first FEC repair packet, a first FEC source packet, and the second packet includes a second FEC repair message, wherein the first packet includes a first FEC repair packet, Packet and a second FEC source packet, wherein generating the first content content comprises: if the source packet in the first FEC source packet is missing, transmitting the first FEC source packet to the first FEC source packet based on the first FEC repair packet, And recovering the packet.

수신한 패킷이 복수개인 경우, 상기 수신한 패킷의 숫자에 기초하여, 병렬적으로 생성하는 컨텐트의 개수를 결정하는 것을 특징으로 할 수 있다. And when the number of received packets is plural, determines the number of contents to be generated in parallel 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 flow diagram illustrating a method for transmitting content in a first device in accordance with one embodiment of the present disclosure;
4 is a flow chart detailing a method for 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 according to one embodiment of the present disclosure and transmits a FEC protected packet.
6 is a flow chart illustrating a method by which a first device transmits data while performing FEC protection according to an embodiment of the present disclosure;
7 illustrates a hierarchical structure of a first device and a second device for transmitting and receiving MMT-formatted data according to an embodiment of the present disclosure.
8 illustrates a series of processes performed by each MMT hierarchy in a first device transmitting one content according to one embodiment of the present disclosure.
9 illustrates a process by which a first device transmits two content in parallel in accordance with another embodiment of the present invention.
10 illustrates a series of processes performed by each MMT hierarchy in a first device transmitting N content according to one embodiment of the present disclosure.
11 is a block diagram illustrating a second device according to one embodiment of the present disclosure;
12 is a flow diagram illustrating a method by which a second device receives a packet in accordance with one embodiment of the present disclosure;
13 is a flowchart illustrating a method of generating content based on a received packet when a second device receives a packet according to an embodiment of the present disclosure.
14 is a block diagram illustrating a second device that receives FEC-protected packets according to one embodiment of the present disclosure and generates content based on the received FEC packets.
15 is a flow diagram illustrating a method for a second device to receive and recover FEC protected packets in accordance with one embodiment of the present disclosure;
16 illustrates a series of processes performed by each MMT hierarchy in a second device receiving a packet and generating content based on the received packet according to one embodiment of the present disclosure.
Figure 17 illustrates a series of processes performed by each MMT hierarchy in a second device receiving a plurality of packets and generating content based on received packets, in accordance with one embodiment of the present disclosure.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.Brief Description of the Drawings The advantages and features of the present invention, and how to accomplish them, will become apparent with reference to the embodiments described hereinafter with reference to the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. To fully disclose the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims.

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

본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다. While the present invention has been described in connection with what is presently considered to be the most practical and preferred embodiment, it is to be understood that the invention is not limited to the disclosed embodiments. Also, in certain cases, there may be a term selected arbitrarily by the applicant, in which case the meaning thereof will be described in detail in the description of the corresponding invention. Therefore, the term used in the present invention should be defined based on the meaning of the term, not on the name of a simple term, but on the entire contents of the present invention.

명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에서 사용되는 "부"라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, "부"는 어떤 역할들을 수행한다. 그렇지만 "부"는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부"는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부"는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부"들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부"들로 결합되거나 추가적인 구성요소들과 "부"들로 더 분리될 수 있다.When an element is referred to as "including" an element throughout the specification, it is to be understood that the element may include other elements as well, without departing from the spirit or scope of the present invention. Also, as used herein, the term "part " refers to a hardware component such as software, FPGA or ASIC, and" part " However, "part" is not meant to be limited to software or hardware. "Part" may be configured to reside on an addressable storage medium and may be configured to play back one or more processors. Thus, by way of example, and not limitation, "part (s) " refers to components such as software components, object oriented software components, class components and task components, and processes, Subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays and variables. The functions provided in the components and "parts " may be combined into a smaller number of components and" parts " or further separated into additional components and "parts ".

본 명세서에서 ?좝茅?는 문자, 음성, 영상 등의 다양한 정보형태가 통합되어 생성, 전달, 처리되도록 하는 시스템 및 서비스에서 활용되는 정보서비스 내용물, 나아가 디지털화된 모든 정보를 뜻한다. 또한 컨텐트는 데이터를 포함하는 정보의 집합이라고도 할 수 있다. 예를 들어 비디오 데이터, 오디오 데이터, 이미지, 텍스트 등이 컨텐트에 해당할 수 있다. In this specification,? 좝 茅? Refers to all the contents of information services used in systems and services that integrate various information types such as text, voice, and video, and also digitalized information. Content can also be referred to as a collection of information that includes data. For example, video data, audio data, images, text, and the like may correspond to the 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 coding expression and multiplexing transmission standard to be used in UHDTV (Ultra-High-Definition TV) MPEG-H is similar to existing MPEG-1, MPEG-2, MPEG-3 and MPEG-4 systems and consists of a system of part 1 system, part 2 video, Is expected. "MMT (MPEG Media Transport)" refers to the part 1 system of MPEG-H, which is the next generation multimedia multiplexing transmission standard standardized in MPEG, following the MPEG-2 TS (Transport Stream) standard.

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

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

"MMT 애셋"은 동일한 MMT 애셋 ID와 함께 적어도 하나의 MPU로 구성되거나 또는 다른 표준에서 정의된 형식과 함께 특정 데이터 덩어리로 구성되는 논리적 데이터 객체를 의미할 수 있다. MMT 애셋은 동일한 MMT 컴포지션 정보 및 전송 특성이 적용되는 가장 큰 데이터 유닛을 포함할 수 있다. An "MMT asset" may mean a logical data object consisting of at least one MPU with the same MMT asset ID, or consisting of a specific chunk of data 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 apply.

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

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

"MMTP 패킷"은 MMT 프로토콜에 의해 생성 또는 소비되는 데이터의 형식화된 단위를 의미할 수 있다.An "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 skilled in the art can easily carry out the present invention. In order to clearly explain the present invention in the drawings, parts not related to the description will be omitted.

도 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)를 포함할 수 있다. According to one embodiment of the present disclosure, a device that transmits MMT formatted data may include a first device 100 that transmits MMT formatted data and a second device 200 that receives MMT formatted data .

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

본 개시의 일 실시예에서 제1 디바이스(100)는 컨텐트로부터 소스 데이터를 추출하고, 추출된 소스 데이터에 부가 정보를 추가하여 MMTP 패킷을 생성한 후, 생성된 MMTP 패킷을 제2 디바이스(200)로 전송할 수 있다. In one 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 transmits the generated MMTP packet to the second device 200. [ Lt; / RTI >

제2 디바이스(200)는 제1 디바이스(100)로부터 MMTP 패킷을 수신하고, 수신된 MMTP 패킷에 기초하여 소스 데이터를 생성하며, 생성된 소스 데이터를 기초로 컨텐트를 생성할 수 있다. The second device 200 may receive the MMTP packet from the first device 100, generate the source data based on the received MMTP packet, and may generate the 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 set to an MMT hierarchical structure including 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 / 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 one 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 one 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, a processor has processed all contents. Therefore, when a plurality of contents are transmitted at the same time, the transmission quality may be degraded due to interaction between contents. According to some embodiments, the interaction between the contents may mean that the transmission quality is degraded due to two or more contents affecting each other in the transmission process.

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

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

본 개시의 일 실시예에서, 제1 프로세서(110)는 제1 컨텐트에 기초하여 제1 패킷을 생성하고, 제2 프로세서(130)는 제2 컨텐트에 기초하여 제2 패킷을 생성하며, 시그널링 프로세서(150)는 제1 컨텐트 및 제2 컨텐트에 기초하여 시그널링 패킷을 생성할 수 있다.In one 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, (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 the content.

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

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

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

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

일부 실시예에 따르면, 제 1 디바이스는 컨텐트를 분할하고, 적어도 하나의 헤더를 추가함으로써, 패킷을 생성할 수 있다. 패킷 내의 데이터는 소정 크기의 데이터를 포함할 수 있다. According to some embodiments, the first device may generate the 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 a packet in MMT format. Of course, the present invention is not limited to the above example, and the first packet may include various types of packets by 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 use the second processor to generate a second packet based on the second content.

일부 실시예에 따르면, 제 2 패킷은 MMT 형식의 패킷일 수 있다. 물론 상기 예시에 제한되지 않으며, 제 2 패킷은 다양한 프로토콜에 의한 다양한 형식의 패킷을 포함할 수 있다.According to some embodiments, the second packet may be an MMT-formatted packet. Of course, it is not limited to the above example, and the second packet may include various types of packets by 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 use the signaling processor to generate a signaling packet based on the first content and the second content.

시그널링 패킷은 제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 MMT Asset Delivery Characteristics (MMT) ADC extracted from the first content and the second content, MMT Composition Information (CI), and the like. According to some embodiments, steps S310 through 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 performed simultaneously 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 generates (S310) a first packet based on the first content, and the second processor 130 generates a second packet based on the second content (S330), the signaling processor 150 generates a signaling packet based on the first content and the second content (S350) in parallel, and the communication unit 170 transmits the packet generated in S310, S330, and S350 To the second device 200 (S370).

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

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

도2를 참조하면, 제1 디바이스(100)는 컨텐트를 기초로 MMT 프로토콜에 따라 MMTP 패킷을 생성할 수 있다. Referring to FIG. 2, the first device 100 may generate an MMTP packet according to the MMT protocol based on the 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 step S410 of determining whether the content is media data. The first device 100 can check whether the content is a file having an MPU of a certain structure, and the MPU can include the MMT processing unit defined above. The first device 100 may determine the content as media data when the content is a file having an MPU having a specific structure.

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

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

일부 실시예에 따르면, 미디어 데이터 추출기 및 파일 데이터 추출기는 제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 can 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 can be generated based on each step in Fig.

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

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

제 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 a loss of a packet. Various error correction methods for recovering an errored packet can be used in case of a packet error.

본 개시의 일부 실시예에 따르면, 제 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) scheme for error correction. However, the present invention is not limited to the above example, and various protection schemes such as an ARQ (Automatic Repeat reQuest) scheme may be used.

일부 실시예에 따르면, 제 1 디바이스는 FEC 모듈을 더 포함할 수 있다. According to some embodiments, the first device may further comprise 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 a first MMTP packet, And a second FEC module 570 that generates a second FEC source packet and a second FEC repair packet using the second FEC code based on the second MMTP packet.

여기서 FEC 코드란 자기 스스로 에러의 검출과 정정을 수행하는 착오정정부호를 의미할 수 있다. Here, the FEC code may mean an error correcting code for performing error detection and correction on its own.

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

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

일부 실시예에 따르면, 통신부(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 flow chart illustrating a method by which a first device transmits data while performing FEC protection 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 the content.

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

단계 S650에서, 제 1 디바이스(100)는 리페어 페이로드 식별자를 가진 리페어 심볼 및 소스 FEC 페이로드 식별자를 이용하여 FEC 리페어 패킷도 생성할 수 있다. In step S650, the first device 100 may also generate the FEC repair packet using the repair symbol with 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. It will be apparent to those skilled in the art that a detailed description will be omitted.

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

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

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

일부 실시예에 따르면, 제1 디바이스(100)의 MMT 계층 구조(MMT architecture)는 MMT 어플리케이션 계층(710), MMT 프로토콜 계층(730) 및 전송 계층(750)을 포함할 수 있다.   According to some embodiments, the 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, the 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 by a data channel.

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

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

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

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

일부 실시예에 따르면, 컨텐트가 미디어 데이터인 경우, 미디어 데이터 추출기(Media data extractor)(830)로 소스 데이터를 추출하고, 컨텐트가 미디어 데이터가 아닌 모든 경우에는, 파일 데이터 추출기(File data extractor)(810)로 소스 데이터를 추출할 수 있다.According to some embodiments, if the content is media data, the media data extractor 830 extracts the source data and, if the content is not media data, a file data extractor 810). ≪ / RTI >

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

추출된 소스 데이터를 기초로 패킷을 생성하는 작업은 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 add information to the source data extracted in the MMT application layer 710 and packetize it. At this time, an MMTP packet can be generated.

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

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

또한 일부 실시예에 따르면, 제2 디바이스(200)가 시그널링 메시지를 제1 디바이스(100)로 송신하는 경우, 제2 디바이스(200)로부터 송신된 시그널링 패킷을 제1 디바이스(100)가 수신하여 제1 디바이스(100)의 시그널링 프로세서(150)가 시그널링 패킷의 언패킷화를 수행할 수도 있다.  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 signaling processor 150 of device 100 may perform unpacketisation of the signaling packet.

MMT 프로토콜 계층(730)에서 생성된 패킷은 전송 계층(750)에서 제2 디바이스(200)로 송신될 수 있다.The packet generated in 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 MMTP packet transmission may differ from the setting of the transport layer 750 for signaling packet transmission. For example, in the case of transmitting data on a noisy channel, the signaling message is transmitted at the top of the TCP protocol, while the MMT packet may be transmitted at the top of the UDP protocol after performing the FEC encoding.

도9는 본 발명의 다른 일 실시예에 따라 제1 디바이스(100)가 두 개의 컨텐트를 병렬적으로 송신하는 프로세스를 도시한다. 9 illustrates a process by which a first device 100 transmits two pieces of content in parallel 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 in the first buffer 950 based on the first content. The second processor 130 may temporarily store the second MMTP packet generated in the second buffer 970 based on the second content.

일부 실시예에 따르면, 제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 the first MMTP packet and the second MMTP packet, and transmit the generated first MMTP packet and the second MMTP packet to the first buffer 950 And 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 And the second process including the second process may independently exist.

일부 실시예에 따르면, 제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. In some embodiments,

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

도10은 본 개시의 일 실시예에 따라 제1 디바이스(100)가 N개의 컨텐트를 송신함에 있어서, 각 MMT 계층 구조에서 수행하는 일련의 프로세스를 도시한다. 10 illustrates a series of processes performed by each MMT hierarchy in the first device 100 transmitting N content according to one 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 transmit.

일부 실시예에 따르면, 제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, store the generated packet in a first buffer 950, and store the generated first MMTP packet in the first FEC module 530 The FEC code can be used to generate FEC source packets and FEC repair packets. In some embodiments, the process of generating the FEC source packet and the FEC repair packet may correspond to the process of FIG. Also, 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.

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

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

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

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

본 개시의 일 실시예에서 제2 디바이스(200)는 제1 프로세서(1110), 제2 프로세서(1130), 시그널링 프로세서(1150) 및 통신부(1170)를 포함할 수 있다. In one 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)는 시그널링 패킷에 기초하여 시그널링 컨텐트를 생성할 수 있다.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, a signaling processor 1150 May generate the 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 the interaction between the contents.

또한, 제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. Means that the first processor 1110, the second processor 1130 and the signaling processor 1150 operate in parallel, while the first processor 1110 generates the first content based on the first packet, 2 processor 1130 and signaling processor 1150 may each comprise generating a second content and signaling content.

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

도12는 본 개시의 일 실시예에 따라 제2 디바이스가 패킷을 수신하는 방법을 나타낸 흐름도이다.12 is a flow diagram illustrating a method by which a second device receives a packet in accordance with one embodiment of the present disclosure;

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

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

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

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

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

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

일부 실시예에 따르면, 통신부(1170)는 제1 디바이스(100)로부터 패킷을 수신할 수 있다(S1210).According to some embodiments, the communication unit 1170 may receive the 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 the first content based on the first packet (S1230), generates the second content based on the second packet (S1250) And generating the signaling content based on the packet (S1270) in parallel.

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

도13은 본 개시의 일 실시예에 따라 제2 디바이스가 하나의 패킷을 수신한 경우, 수신한 패킷을 기초로 컨텐트를 생성하는 방법을 자세히 나타낸 흐름도이다.13 is a flowchart illustrating a method of generating content based on a received packet when a second device receives a 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 with an MPU of a certain structure.

단계 S1350에서, 제2 디바이스(200)는 수신한 패킷이 어떤 특정 구조의 MPU를 가진 미디어 데이터인 경우, 제2 디바이스(200)가 포함하는 미디어 데이터 복원기(1650)로 소스 데이터 즉, MPU를 복원할 수 있다.In step S1350, if the received packet is media data having an MPU having a specific structure, the second device 200 transmits 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, the second device 200 can restore the source data to the file data restorer 1640 in all cases where the received packet is not media data with an MPU of any particular structure.

일부 실시예에 따르면, 미디어 데이터 복원기(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 step 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 the content based on the source data may mean restoring or reassembling the content transmitted by the first device 100 based on the received source data. That is, the content created 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 that the second device 200 includes.

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

또한, 일부 실시예에 따르면, 미디어 데이터와 미디어 데이터가 아닌 그 밖의 데이터를 구분하지 않고, 하나의 복원기로 소스 데이터를 복원할 수 있다. 즉, 미디어 데이터 복원기(1650)와 파일 데이터 복원기(1640)가 하나의 복원기 내에 포함될 수 있다.In addition, according to some embodiments, it is possible to restore the source data with one reconstructor without distinguishing the media data from other data other than the 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 in accordance with one embodiment of the present disclosure.

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

패킷에 오류가 발생한 경우, 오류를 복구하기 위해 다양한 오류 정정 방식을 이용하여 패킷을 생성할 수 있다. 일부 실시예에 따르면, 제 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) scheme, and may transmit the generated packets to the second device 200. The second device 200 may receive the first packet and the second packet from the first device 100, wherein the first packet may comprise a first FEC source packet and a first FEC repair packet, 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 and processes packets for two contents from the first device 100 in parallel, the second device 200 transmits the lost first FEC source packet A first FEC module 1410 for generating a first MMTP packet by restoring the lost second FEC source packet and a second FEC module 1430 for recovering the lost second FEC source packet to generate a second MMTP packet .

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

일부 실시예에 따르면, FEC 소스 패킷은 소스 데이터를 기초로 생성되는 패킷이며, FEC 리페어 패킷은 소스 데이터를 기초로 향후 패킷에 오류가 발생한 경우 오류를 정정하기 위한 데이터를 포함하고 있는 패킷을 포함할 수 있다.According to some embodiments, the FEC source packet is a packet that is 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 .

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

도15는 본 개시의 일 실시예에 따라 제2 디바이스가 FEC 보호된 패킷을 수신하고, 복원하는 방법을 설명하기 위한 흐름도이다. 15 is a flow diagram illustrating a method for a second device to receive and recover FEC protected packets in accordance with one embodiment of the present disclosure;

단계 S1510에서, 제2 디바이스(200)는 FEC 소스 패킷 및 FEC 리페어 패킷을 수신할 수 있다. 일부 실시예에 따르면, 제2 디바이스(200)가 포함하는 통신부가 FEC 소스 패킷 및 FEC 리페어 패킷을 수신할 수 있다.In step S1510, the second device 200 may receive the FEC source packet and the 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 step S1550, if an error occurs in the FEC source packet, the second device 200 can 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, the second device 200 can determine if an error in the FEC source packet can correct an error in the FEC source packet. Based on the determination result, the second device 200 may recover the FEC source packet based on the FEC repair packet, or may request the first device 100 to retransmit the source packet in which the error occurred.

상기 S1530, S1550 단계는 제1 FEC 모듈(1410) 및 제2 FEC 모듈(1430)에서 각각 수행될 수 있는데, 제1 FEC 모듈(1410) 및 제2 FEC 모듈(1430)은 서로 영향을 주지 않으므로, S1530, S1550 단계는 컨텐트 간의 상호 작용을 발생시키지 않으면서 병렬적으로 수행될 수 있다. The steps S1530 and S1550 may be performed by the first FEC module 1410 and the second FEC module 1430. 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 causing interactions between the contents.

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

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

계층 구조는 정의된 프로토콜에 의해 분화된 네트워크의 모델, 구조를 의미할 수 있으며, 각각의 계층에서의 수행되어야 하는 동작을 본원발명의 디바이스 내의 구성요소가 대응되는 동작을 수행할 수 있다. The hierarchical structure may mean a model or a 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, the 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 to a data channel. According to some embodiments, the data channel may include various communication media through which data is transmitted and received. The communication medium may comprise a wired communication medium and a wireless communication medium.

일부 실시예에 따르면, 제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 MMTP packets, FEC source packets, FEC repair packets, and signaling packets, etc., transmitted from the first device 100. However, the setting of the transport layer 790 for receiving the signaling packet and the setting of the transport layer 790 for receiving the MMTP packet other than the signaling packet may be different. For example, when receiving data on a noisy channel, the signaling message may be received at the top of the TCP protocol while the 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. If the unpacketized data is media data, ), And restores the source data using the file data restorer 1640 if the data is other than the media data.

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

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

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

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

구현 예에 따라, 제2 디바이스(200)는 파일 프로세서(1610), 미디어 프로세서(1620) 및 제2 시그널링 프로세서(1630)를 포함하지 않을 수 있다. According to an implementation, 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, the FEC source packet may be recovered based on the FEC repair packet if there is a loss of the FEC source packet in the MMT protocol layer 780. The restored source packet can be generated as an MMTP packet.

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

본 발명의 다른 일 실시예에서는 시그널링 패킷의 처리를 위한 시그널링 프로세서(1150), 시그널링 컨텐트 복원기(1660) 및 제2 시그널링 프로세서(1630)가 별도로 존재하지 않을 수 있다. In another embodiment of the present invention, a signaling processor 1150, a signaling content restorer 1660 and a second signaling processor 1630 for processing a signaling packet 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 on behalf 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 the second device 200 also generates a signaling packet and transmits it to the first device 100 can do.

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

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

이 때, FEC 보호 된 패킷을 수신한 경우, FEC 소스 패킷과 FEC 리페어 패킷은 하나의 패킷으로 간주하여 프로세서, 버퍼 및 FEC 모듈을 동적으로 할당할 수 있다. At this time, when the FEC protected packet is received, the FEC source packet and the FEC repair packet can be regarded as one packet, and the processor, the buffer, and the 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, the received first FEC repair packet and the first FEC source packet may be transmitted from the transport layer 790 to the first processor 1110 and stored in the first buffer 1740. The first FEC module 1410 can restore the first FEC source packet using the first FEC repair packet and generate the first MMTP packet based on the restored source data. In some embodiments, the process of restoring the FEC source packet using the FEC repair packet and generating the MMTP packet may correspond to each step of FIG.

일부 실시예에 다르면, 수신된 제2 FEC 리페어 패킷 및 제2 FEC 소스 패킷도 전송 계층(790)으로부터 제2 프로세서(1130)로 전송되었다가 제2 버퍼(1750)에 저장될 수 있고, 제2 FEC 모듈(1430)은 제2 FEC 리페어 패킷을 이용하여 제2 FEC 소스 패킷을 복원하고, 복원된 소스 데이터에 기초하여 제2 MMTP 패킷을 생성할 수 있다.In 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 stored in the second buffer 1750, The FEC module 1430 can restore the second FEC source packet using the second FEC repair packet and generate the 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 are the same A process can 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 Nth FEC repair packet, and the second MMTP packet may be generated based on the restored source data.

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

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

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

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

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

Size of transmitted data (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 conditions.

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

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

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

또한, 하나의 웹 카메라 데이터와 하나의 비디오 파일(2.86 Mbps bitrate) 그리고 다른 하나의 비디오 파일(2.97 Mbps bitrate)을 동시에 송신한 경우 즉, 3개의 컨텐트를 동시에 송신한 경우에는, 순차적으로 송수신하였을 때, 8초 동안 웹 카메라 데이터 총 920 KB 중 657 KB 만을 수신하였고, 정보 누락 비율이 28%인 반면, 본 개시의 일 실시예는 웹 카메라 데이터 총 920 KB 전부를 수신하여 정보 누락 비율이 0% 인 것을 확인 할 수 있다.In the case where 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, , Only 657 KB of the total 920 KB of web camera data was received for 8 seconds, and the information missing ratio was 28%. In one embodiment of the present disclosure, a total of 920 KB of web camera data is received, Can be confirmed.

즉, 하나의 컨텐트를 송신하는 경우, 8초 동안 본 발명과 순차 송수신한 경우 는 비슷한 성과를 보였으나, 두 개의 컨텐트를 동시에 송신하는 경우, 본 발명 일 실시예에 의한 데이터 수신율이, 순차 송수신한 경우에 의한 데이터 수신율에 비해 더 높았고, 세 개의 컨텐트를 동시에 송신하는 경우에는, 두 개의 컨텐트를 동시에 송신하는 경우보다 더 큰 차이로 본 개시의 일 실시예에 의한 데이터 수신율이, 순차 송수신한 경우에 의한 데이터 수신율에 비하여 높다는 것을 알 수 있다. That is, in case of transmitting one content, the case of successive transmission and reception with the present invention for 8 seconds is similar to that of the present invention. However, when two contents are simultaneously transmitted, the data reception rate according to the embodiment of the present invention is sequentially transmitted and received In the case of transmitting three contents simultaneously, the data reception rate according to one embodiment of the present disclosure is larger than that when two contents are simultaneously transmitted, and when the three contents are simultaneously transmitted, Which is higher than the data reception rate due to the data transmission rate.

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

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

전술한 본 개시의 설명은 예시를 위한 것이며, 본 개시가 속하는 기술분야의 통상의 지식을 가진 자는 본 개시의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일 형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.It is to be understood that the foregoing description of the disclosure is for the purpose of illustration and that those skilled in the art will readily appreciate that other embodiments may be readily devised without departing from the spirit or essential characteristics of the disclosure will be. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive. For example, each component described as a single type may be distributed and implemented, and components described as being distributed may also be implemented in a combined form.

본 개시의 범위는 위 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 개시의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present disclosure is defined by the appended claims rather than the foregoing detailed description and all changes or modifications derived from the meaning and scope of the claims and their equivalents are to be construed as being included within 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 패킷 및 상기 시그널링 패킷을 생성하는 것을 특징으로 하는 디바이스.
A first device for transmitting a packet of an MMT (MPEG Media Transport) format to a second device,
A first processor for generating a first packet based on the first content;
A second processor for generating a second packet based on the second content;
A signaling processor for generating a signaling packet based on the first content and the second content; And
And a communication unit for transmitting the first packet, the second packet and the signaling packet to the second device,
Wherein the first processor, the second processor and the signaling processor generate the first packet, the second packet and the signaling packet in parallel.
제1항에 있어서,
상기 제1 프로세서, 상기 제2 프로세서 및 상기 시그널링 프로세서는,
상기 제1 프로세서가 상기 제1 패킷을 생성하는 동안, 상기 제2 프로세서 및 상기 시그널링 프로세서가 각각 상기 제2 패킷 및 상기 시그널링 패킷을 생성하는 것을 특징으로 하는 디바이스.
The method according to claim 1,
The first processor, the second processor, and the signaling processor,
Wherein the second processor and the signaling processor generate the second packet and the signaling packet, respectively, while the first processor is generating the first packet.
제1항에 있어서,
상기 제1 디바이스는,
미디어 데이터 추출기(media data extractor) 및 파일 데이터 추출기(file data extractor)를 더 포함하고,
상기 제 1 컨텐트가 미디어 데이터인 경우, 상기 미디어 데이터 추출기가 소스 데이터를 추출하고,
상기 제 1 컨텐트가 미디어 데이터가 아닌 경우, 상기 파일 데이터 추출기가 소스 데이터를 추출하며,
상기 제 1 프로세서는 상기 추출된 소스 데이터를 기초로 상기 제1 패킷을 생성하는 것을 특징으로 하는 디바이스.
The method according to claim 1,
The first device comprising:
Further comprising a media data extractor and a file data extractor,
If the first content is media data, the media data extractor extracts the source data,
If the first content is not media data, the file data extractor extracts the source data,
And the first processor generates the first packet based on the extracted source data.
제1항에 있어서,
상기 제1 프로세서는 상기 제1 패킷을 저장하는 제1 버퍼를 더 포함하고,
상기 제2 프로세서는 상기 제2 패킷을 저장하는 제2 버퍼를 더 포함하는 것을 특징으로 하는 디바이스.
The method according to claim 1,
Wherein the first processor further comprises a first buffer for storing the first packet,
And 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 according to claim 1,
The first device comprising:
A first FEC module for generating a first FEC repair packet and a first FEC source packet based on the first packet;
Further comprising a second FEC module for generating a second FEC repair packet and a second FEC source packet based on the second packet,
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 The device to transmit.
제1항에 있어서,
송신할 컨텐트가 복수개인 경우,
상기 데이터 제1 디바이스는 상기 송신할 컨텐트의 숫자에 기초하여, 병렬적으로 생성하는 패킷의 개수를 결정하는 것을 특징으로 하는 디바이스.
The method according to claim 1,
When there are a plurality of contents to be transmitted,
Wherein the data 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 컨텐트 및 상기 시그널링 컨텐트를 생성하는 것을 특징으로 하는 디바이스.
A second device for receiving a packet of an MMT (MPEG Media Transport) format from a first device,
A communication unit for receiving a first packet, a second packet and a signaling packet from the first device;
A first processor for generating a first content based on the first packet;
A second processor for generating a second content based on the second packet; And
And a signaling processor for generating signaling content for the first packet and the second packet based on the signaling 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.
제7항에 있어서,
상기 제1 프로세서, 상기 제2 프로세서 및 상기 시그널링 프로세서는,
상기 제1 프로세서가 상기 제1 컨텐트를 생성하는 동안, 상기 제2 프로세서 및 상기 시그널링 프로세서가 각각 상기 제2 컨텐트 및 상기 시그널링 컨텐트를 생성하는 것을 특징으로 하는 디바이스.
8. The method of claim 7,
The first processor, the second processor, and the signaling processor,
Wherein the second processor and the signaling processor generate the second content and the signaling content, respectively, while the first processor is generating the first content.
제7항에 있어서,
상기 제2 디바이스는,
미디어 데이터 복원기 및 파일 데이터 복원기를 더 포함하고,
상기 제1 패킷이 미디어 패킷인 경우, 상기 미디어 데이터 복원기가 소스 데이터를 생성하고,
상기 제1 패킷이 미디어 패킷이 아닌 경우, 상기 파일 데이터 복원기가 소스 데이터를 생성하여, 상기 소스 데이터를 기초로 컨텐트를 생성하는 것을 특징으로 하는 디바이스.
8. The method of claim 7,
Wherein the second device comprises:
A media data restorer and a file data restorer,
If the first packet is a media packet, the media data decompressor generates source data,
Wherein if the first packet is not a media packet, the file data decompressor generates source data and generates content based on the source data.
제7항에 있어서,
상기 제1 프로세서는 상기 제1 패킷을 저장하는 제1 버퍼를 더 포함하고,
상기 제2 프로세서는 상기 제2 패킷을 저장하는 제2 버퍼를 더 포함하는 것을 특징으로 하는 디바이스.
8. The method of claim 7,
Wherein the first processor further comprises a first buffer for storing the first packet,
And 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 모듈을 더 포함하는 디바이스.
8. The method of claim 7,
Wherein 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,
If the source packet in the first FEC source packet and the second FEC source packet are missing,
A first FEC module for restoring the first FEC source packet based on the first FEC repair packet; And
And a second FEC module for restoring the second FEC source packet based on the second FEC repair packet.
제7항에 있어서,
수신한 패킷이 복수개인 경우,
상기 수신한 패킷의 숫자에 기초하여, 병렬적으로 생성하는 컨텐트의 개수를 결정하는 제어부를 더 포함하는 것을 특징으로 하는 디바이스.
8. The method of claim 7,
When there are a plurality of received packets,
Further comprising a control unit for determining the number of contents to be generated in parallel based on the number of the received packets.
제1 디바이스가 MMT(MPEG Media Transport) 형식의 데이터를 제2 디바이스로 송신하는 방법에 있어서,
제1 컨텐트에 기초하여 제1 패킷을 생성하는 단계;
제2 컨텐트에 기초하여 제2 패킷을 생성하는 단계;
상기 제1 컨텐트 및 상기 제2 컨텐트에 기초하여 시그널링 패킷을 생성하는 단계;
상기 제1 패킷, 상기 제2 패킷 및 상기 시그널링 패킷을 상기 제2 디바이스로 송신하는 단계를 포함하고,
상기 제1 패킷, 상기 제2 패킷 및 상기 시그널링 패킷을 생성하는 단계를 병렬적으로 수행하는 것을 특징으로 하는 데이터 송신 방법.
A method for a first device to transmit data in an MMT (MPEG Media Transport) format to a 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 the second content;
And transmitting the first packet, the second packet and the signaling packet to the second device,
And generating the first packet, the second packet, and the signaling packet in parallel.
제13항에 있어서,
상기 제1 패킷, 상기 제2 패킷 및 상기 시그널링 패킷을 생성하는 단계는,
상기 제1 패킷을 생성하는 단계가 진행되는 동안, 상기 제2 패킷을 생성하는 단계 및 상기 시그널링 패킷을 생성하는 단계가 진행되는 것을 특징으로 하는 데이터 송신 방법.
14. The method of claim 13,
Wherein the generating the first packet, the second packet, and the signaling packet comprises:
Generating the second packet while the step of generating the first packet proceeds, Wherein the step of generating a signaling packet is performed.
제13항에 있어서,
상기 제1 패킷을 생성하는 단계는,
상기 제1 컨텐트가 미디어 데이터를 포함하는 경우, 미디어 데이터 추출기(media data extractor)가 소스 데이터를 추출하고, 상기 제1 컨텐트가 미디어 데이터를 포함하지 않는 경우, 파일 데이터 추출기(file data extractor)가 소스 데이터를 추출하는 단계를 더 포함하고,
상기 추출한 소스 데이터를 기초로 상기 제1 패킷을 생성하는 것을 특징으로 하는 데이터 송신 방법.
14. The method of claim 13,
Wherein the generating of the first packet comprises:
If the first content includes media data, the media data extractor extracts the source data, and if the first content does not include the media data, the file data extractor extracts the source Further comprising the step of extracting data,
And generates the first packet based on the extracted source data.
제13항에 있어서,
상기 제1 패킷 및 상기 제2 패킷을 생성하는 단계는,
제1 버퍼에 상기 제1 패킷을 저장하는 단계; 및
제2 버퍼에 상기 제2 패킷을 저장하는 단계를 더 포함하는 데이터 송신 방법.
14. The method of claim 13,
Wherein the generating of the first packet and the second packet comprises:
Storing the first packet in a first buffer; And
And storing the second packet in a second buffer.
제13항에 있어서,
상기 제1 패킷을 생성하는 단계는,
상기 제1 패킷을 기초로 하여 제1 FEC 리페어 패킷 및 제1 FEC 소스 패킷을 생성하는 단계; 및
상기 제1 FEC 리페어 패킷, 상기 제1 FEC 소스 패킷을 상기 제2 디바이스로 송신하는 단계를 더 포함하는 데이터 송신 방법.
14. The method of claim 13,
Wherein 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, the first FEC source packet to the second device And transmitting the data.
제13항에 있어서,
송신할 컨텐트가 복수개인 경우,
상기 송신할 컨텐트의 숫자에 기초하여, 병렬적으로 생성하는 패킷의 개수를 결정하는 단계를 더 포함하는 데이터 송신 방법.
14. The method of claim 13,
When there are a plurality of contents to be transmitted,
Further comprising the step of 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 컨텐트 및 상기 시그널링 컨텐트를 생성하는 단계를 병렬적으로 수행하는 것을 특징으로 하는 데이터 수신 방법.
A method for receiving data in an MMT (MPEG Media Transport) format from a first device to a second device,
Receiving a first packet, a second packet and a signaling packet from the first device;
Generating a first content based on the first packet;
Generating a second content based on the second packet;
And generating signaling content based on the signaling packet,
And generating the first content, the second content, and the signaling content in parallel.
제19항에 있어서,
상기 제1 컨텐트, 상기 제2 컨텐트 및 상기 시그널링 컨텐트를 생성하는 단계는,
상기 제1 컨텐트를 생성하는 동안, 상기 제2 컨텐트 및 상기 시그널링 컨텐트를 생성하는 것을 특징으로 하는 데이터 수신 방법.
20. The method of claim 19,
Wherein the generating the first content, the second content, and the signaling content comprises:
And generating the second content and the signaling content while generating the first content.
제19항에 있어서,
상기 제1 컨텐트를 생성하는 단계는,
상기 수신한 제1 패킷이 미디어 패킷인 경우, 미디어 데이터 복원기가 소스 데이터를 생성하고, 상기 수신한 제1 패킷이 미디어 패킷이 아닌 경우, 파일 데이터 복원기가 소스 데이터를 생성하는 단계를 더 포함하고,
상기 소스 데이터를 기초로 상기 제1 컨텐트를 생성하는 것을 특징으로 하는 데이터 수신 방법.
20. The method of claim 19,
Wherein the generating the first content comprises:
Further comprising the step of the media data reconstructor generating the source data if the received first packet is a media packet and the file data reconstructor generating the source data if the received first packet is not a media packet,
And generates the first content based on the source data.
제19항에 있어서,
상기 제1 컨텐트 및 상기 제2 컨텐트를 생성하는 단계는,
제1 버퍼에 상기 제1 패킷을 저장하는 단계; 및
제2 버퍼에 상기 제2 패킷을 저장하는 단계를 더 포함하는 데이터 수신 방법.
20. The method of claim 19,
Wherein the generating the first content and the second content comprises:
Storing the first packet in a first buffer; And
And 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 소스 패킷을 복원하는 단계를 더 포함하는 데이터 수신 방법.
20. The method of claim 19,
Receiving a first packet, a second packet and a signaling packet from the first device,
Wherein the first packet includes a first FEC repair packet, a first FEC source packet, and the second packet includes a second FEC repair packet and a second FEC source packet,
Wherein the generating the first content content comprises:
If the source packet in the first FEC source packet is missing,
And restoring the first FEC source packet based on the first FEC repair packet.
제19항에 있어서,
수신한 패킷이 복수개인 경우,
상기 수신한 패킷의 숫자에 기초하여, 병렬적으로 생성하는 컨텐트의 개수를 결정하는 것을 특징으로 하는 데이터 수신 방법.
20. The method of claim 19,
When there are a plurality of received packets,
And determines the number of contents to be generated in parallel based on the number of the 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 true KR20150079399A (en) 2015-07-08
KR102191970B1 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 (5)

* 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
KR20120084234A (en) * 2011-01-19 2012-07-27 삼성전자주식회사 Method for delivering mmt access unit for mpeg media transport
KR20130057404A (en) * 2011-11-23 2013-05-31 한국전자통신연구원 Method and apparatus for streaming service providing scalability and view information
KR20130101967A (en) * 2012-02-27 2013-09-16 삼성전자주식회사 Apparatus and method for transmitting and receiving packets with forward error correction schemes

Patent Citations (5)

* 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
KR20120084234A (en) * 2011-01-19 2012-07-27 삼성전자주식회사 Method for delivering mmt access unit for mpeg media transport
KR20130057404A (en) * 2011-11-23 2013-05-31 한국전자통신연구원 Method and apparatus for streaming service providing scalability and view information
KR20130101967A (en) * 2012-02-27 2013-09-16 삼성전자주식회사 Apparatus and method for transmitting and receiving packets with forward error correction schemes

Also Published As

Publication number Publication date
KR102191970B1 (en) 2020-12-17

Similar Documents

Publication Publication Date Title
JP5442816B2 (en) Streaming and buffering using variable FEC overhead and protection period
US9246630B2 (en) Method, device, and system for forward error correction
CN110224793B (en) Self-adaptive FEC method based on media content
KR102305410B1 (en) Method and apparatus for transmitting/receiving packet in a communication system
WO2011079763A1 (en) Method for processing forward error correction (fec) data, device and system thereof
TW201001967A (en) Communication transmitter, communication receiver, packet redundancy method and packet recovery method
US11876723B2 (en) Method and apparatus for transmitting and receiving packet in communication system
US9729903B2 (en) Data transmitting device and method
JP5344541B2 (en) Data transmission apparatus, transmission method and program
JP2007028241A (en) Video image coding/transmitting device, video image coding/transmitting method, video image coding/transmitting program, and its record medium
US9667384B2 (en) Apparatus and method for transmitting and receiving forward error correction packet
EP2375614B1 (en) Method for broadcasting multimedia content
KR102163338B1 (en) Apparatus and method for transmitting and receiving packet in a broadcasting and communication system
EP3125455B1 (en) Method and apparatus for generating and recovering packet in broadcasting and/or communication system
KR20150050133A (en) Method and apparatus for transmitting and receiving packet in a communication system
EP2842253B1 (en) Apparatus and method for transmitting a packet in a communication system
KR20130008438A (en) Methods of controlling of forward error correction in multimedia packet transport network
KR102191970B1 (en) Apparatus and Method for Transmitting Data
CN112769523A (en) Self-adaptive FEC method and system based on media content
CN113783661B (en) Method and apparatus for transmitting and receiving packet in communication system
JP2016134673A (en) Transmission device, transmission method and program
KR20140011514A (en) Apparatus and method for transmitting/receiving data in communication system

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