KR101999105B1 - Method of reliable data transmission with least video latency for real-time video streaming - Google Patents

Method of reliable data transmission with least video latency for real-time video streaming Download PDF

Info

Publication number
KR101999105B1
KR101999105B1 KR1020170171425A KR20170171425A KR101999105B1 KR 101999105 B1 KR101999105 B1 KR 101999105B1 KR 1020170171425 A KR1020170171425 A KR 1020170171425A KR 20170171425 A KR20170171425 A KR 20170171425A KR 101999105 B1 KR101999105 B1 KR 101999105B1
Authority
KR
South Korea
Prior art keywords
source
symbols
transmitter
symbol
recovery
Prior art date
Application number
KR1020170171425A
Other languages
Korean (ko)
Other versions
KR20190070671A (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 KR1020170171425A priority Critical patent/KR101999105B1/en
Publication of KR20190070671A publication Critical patent/KR20190070671A/en
Application granted granted Critical
Publication of KR101999105B1 publication Critical patent/KR101999105B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/631Multimode Transmission, e.g. transmitting basic layers and enhancement layers of the content over different transmission paths or transmitting with different error corrections, different keys or with different transmission protocols
    • 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 or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234336Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by media transcoding, e.g. video is transformed into a slideshow of still pictures or audio is converted into text
    • 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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440227Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by decomposing into layers, e.g. base layer and one or more enhancement layers

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

본 발명은 실시간 비디오 스트리밍에서 비디오 지연시간을 최소로 하면서 안정적으로 데이터를 송수신하는 방법으로서, 송신기에서 통신망의 전송환경 인자를 셋팅하여 입력하는 단계; 송신기에서 안정적인 전송을 위한 목표 복원실패율 p를 설정하고 그에 따른 오버헤드 코드(overhead code) 를 계산하여 구하는 단계; 송신기에서 영상의 한 프레임 또는 프레임의 일부인 슬라이스(slice)를 인코딩한 데이터를 하나의 소스 블록으로 삼아 각 소스 블록마다 RaptorQ 인코더로 소스 심벌과 복구 심벌을 생성하는 단계; 송신기에서 상기 소스 블록마다 생성된 소스 심벌과 복구 심벌을 통신망으로 송신하는 단계 및 수신기에서 소스 또는 복구 심벌을 수신하여 손실된 소스 심벌을 복구하여 소스 블록으로 복원하는 단계를 포함하는 것을 특징으로 한다.A method for transmitting and receiving data stably with minimum video delay time in real-time video streaming, the method comprising the steps of: setting a transmission environment factor of a communication network in a transmitter and inputting the transmission environment parameter; Setting a target restoration failure rate p for stable transmission in a transmitter and calculating and obtaining an overhead code according to the target restoration failure rate p; Generating a source symbol and a recovery symbol by a RaptorQ encoder for each source block by using data obtained by encoding a slice that is a part of one frame or frame of an image in a transmitter as one source block; Transmitting a source symbol and a recovery symbol generated for each source block in a transmitter to a communication network, and receiving a source or a recovery symbol in a receiver to recover the lost source symbol and recovering the source symbol.

Description

실시간 비디오 스트리밍에서 비디오 지연시간을 최소로 하면서 안정적으로 비디오 데이터를 송수신하는 방법 {Method of reliable data transmission with least video latency for real-time video streaming}BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to a method for transmitting and receiving video data with a minimum delay time in a real-time video streaming,

본 발명은 실시간 비디오 스트리밍에서 비디오 지연시간을 최소로 하면서 안정적으로 데이터를 송수신하는 방법으로서, 상세하게는 동영상 인코더인 송신기와 디코더인 수신기 사이의 동영상 데이터의 전송에 있어 네트워크 상의 전송실패에 대비해 송신기가 복구용 데이터를 추가 생성하여 송신하고 이를 수신한 수신기가 복구용 데이터를 이용하여 동영상 데이터를 복구하는 기존의 알고리즘을 개선하여 실시간 비디오 스트리밍의 품질에 중요한 영향을 미치는 비디오 지연시간을 최소로 하는 안정적 데이터 송수신 알고리즘을 제공하는 것이다.The present invention relates to a method of transmitting and receiving data stably while minimizing a video delay time in real time video streaming. More particularly, the present invention relates to a method and apparatus for transmitting and receiving moving picture data between a transmitter which is a moving picture encoder and a receiver which is a decoder, In order to improve the existing algorithm that restores moving picture data by using the restoration data, the receiver that receives the restoration data additionally generates and transmits the stable data that minimizes the video delay time which has a significant influence on the quality of the real time video streaming And a transmission / reception algorithm.

동영상 데이터를 송신자가 실시간으로 전송하여 수신자가 이를 즉시 재생하는 실시간 비디오 스트리밍 방송 서비스는 유무선을 가리지 않고 광범위하게 제공되고 있다.A real-time video streaming broadcasting service in which a sender transmits real-time video data and a receiver instantly reproduces the real-time video streaming broadcast service is widely available regardless of wired or wireless.

그러나 네트워크 상의 데이터 패킷의 손실과 지연이라는 본질적인 속성은 실시간 비디오 스트리밍 서비스에 큰 장애요인으로 지연이 없으면서도 안정적인 데이터 전송 방법이 필요하다.However, the essential nature of loss and delay of data packets on the network is a major impediment to real-time video streaming services and requires a reliable data transmission method without delay.

특히 유선망보다 전송 품질이 떨어질 수밖에 없는 무선망에서 그 의미가 더 크다.Especially, it is more meaningful in a wireless network where transmission quality is lower than that of a wired network.

특히 UDP(User Datagram Protocol) 전송 방식은 TCP(Transmission Control Protocol) 전송 방식과는 달리 데이터 패킷의 안정적인 전달이 보장되지 않고, 손실된 데이터 패킷에 대해서도 재전송 요청을 하지 않기 때문에, 데이터 패킷을 보낼 때 AL-FEC (Application Layer Forward Error Correction)을 적용하여 보내는 방식으로 데이터의 안정성을 보장할 수 있다.In particular, unlike the TCP (Transmission Control Protocol) transmission method, the UDP (User Datagram Protocol) transmission method does not guarantee stable transmission of data packets and does not request retransmission for lost data packets. Therefore, -FEC (Application Layer Forward Error Correction) is applied to transmit the data to guarantee the stability of the data.

RaptorQ AL-FEC code 는 분수 코드(fountain code), 즉 무한히 많은 원하는 만큼의 encoding symbol 을 순식간에 만들어 낼 수 있는 code의 특성을 지닌다.The RaptorQ AL-FEC code is a fountain code, a code that can instantly create as many as you want an infinite number of encoding symbols.

그리고 RaptorQ AL-FEC code 는 systematic code, 즉 소스 심벌이 그대로 변경없이 encoding symbol의 일부분인 특성을 지닌다.The RaptorQ AL-FEC code is a systematic code, ie, the source symbol is part of an encoding symbol without modification.

이러한 RaptorQ AL-FEC code 로 실시간 비디오 스트리밍 전송에 사용을 할 수가 있다.This RaptorQ AL-FEC code can be used for real-time video streaming transmission.

실시간 비디오 스트리밍에서는 통신망으로 보낸 패킷의 1% 만 손실이 되어도 받는 쪽에서 보았을 때는 비디오의 화질이 아주 나빠지기 때문에 실시간 비디오 스트리밍에서 패킷 손실을 복구할 수 있는 RaptorQ 같은 AL-FEC 는 아주 중요한 역할을 한다.In real-time video streaming, AL-FEC such as RaptorQ, which can recover packet loss in real-time video streaming, plays a very important role because only 1% of the packets sent to the network are lost,

그러나 RaptorQ 같은 AL-FEC code는 일정한 크기가 될 때까지 데이터를 하나의 블록으로 모으고 이렇게 모은 블록을 k개의 심벌로 나누어서 처리를 하기 때문에 비디오 스트리밍 시 시간지연이 필수적으로 발생할 수 밖에 없다.However, since AL-FEC code such as RaptorQ collects data into one block until it reaches a certain size, and processes the divided blocks by dividing them into k symbols, time delay inevitably occurs in video streaming.

본 발명에서는 이 지연시간을 줄이는 방법을 제시하고자 한다.In the present invention, a method for reducing the delay time is proposed.

관련 기술로는 특허문헌 1에 디지털 방송수신기의 파일 처리장치가 제시되어 있고, 특허문헌 2에 이종 LTE 통신망에서 안정적인 데이터 송수신 방법이 제시되어 있다.As a related art, Patent Document 1 discloses a file processing apparatus of a digital broadcast receiver, and Patent Document 2 proposes a stable data transmission / reception method in a heterogeneous LTE communication network.

1. 한국등록특허 제0848273호1. Korea Patent No. 0848273 2. 한국등록특허 제10-1754809호2. Korean Patent No. 10-1754809

Qualcomm document, TSG-SA4#64 meeting, 11-25 pr. 2011, San Diego, CA, USAQualcomm document, TSG-SA4 # 64 meeting, 11-25 pr. 2011, San Diego, CA, USA RFC 6330 “4.2. Content Delivery Protocol Requirements”RFC 6330 "4.2. Content Delivery Protocol Requirements "

본 발명은 실시간 비디오 스트리밍에서 비디오 지연시간을 최소로 하면서 안정적으로 데이터를 송수신하기 위하여 RaptorQ를 사용하는 AL-FEC 에 기반한 개선된 알고리즘을 제공하고자 한다.The present invention seeks to provide an improved algorithm based on AL-FEC using RaptorQ to transmit and receive data reliably while minimizing video latency in real-time video streaming.

상기 해결하고자 하는 과제를 위한 동영상 실시간 스트리밍에 있어 비디오 지연시간을 최소로하는 안정적인 데이터 송수신 방법은, 송신기에서 통신망의 전송환경 인자를 셋팅하여 입력하는 단계; 송신기에서 안정적인 전송을 위한 목표 복원실패율 p를 설정하고 그에 따른 오버헤드 코드(overhead code) 를 계산하여 구하는 단계; 송신기에서 영상의 한 프레임 또는 프레임의 일부인 슬라이스를 인코딩한 데이터를 하나의 소스 블록으로 삼아 각 소스 블록의 크기와 상기 오버헤드 코드 및 전송환경 인자로부터 소스 심벌 수 k와 복구 심벌 수 r를 구하는 단계; 상기 소스 심벌 수 k와 복구 심벌 수 r을 사용해서 소스 블록을 분할하고 RaptorQ 인코더로 k 개의 소스 심벌과 r 개의 복구 심벌을 생성하는 단계; 송신기에서 상기 소스 블록마다 생성된 소스 심벌과 복구 심벌을 통신망으로 송신하는 단계 및 수신기에서 소스 또는 복구 심벌을 수신하여 손실된 소스 심벌을 복구하여 소스 블록으로 복원하는 단계를 포함하는 것을 특징으로 한다.In order to solve the above problem, a stable data transmission / reception method for minimizing a video delay time in moving picture real time streaming includes: setting a transmission environment factor of a communication network in a transmitter and inputting the parameter; Setting a target restoration failure rate p for stable transmission in a transmitter and calculating and obtaining an overhead code according to the target restoration failure rate p; Obtaining a number of source symbols k and a number of recovered symbols r from the size of each source block, the overhead code, and the transmission environment factor, using data obtained by encoding a slice that is a part of one frame or frame of an image in a transmitter as one source block; Dividing the source block using the number of source symbols k and the number of recovered symbols r, and generating k source symbols and r recovery symbols with a RaptorQ encoder; Transmitting a source symbol and a recovery symbol generated for each source block in a transmitter to a communication network, and receiving a source or a recovery symbol in a receiver to recover the lost source symbol and recovering the source symbol.

상기 통신망의 전송환경 인자라 함은 통신망을 통해 데이터가 전송되는 도중 평균적으로 손실이 될 것으로 예상하고 대비하는 손실비율(L)이다.The transmission environment factor of the communication network is a loss ratio (L) which is expected to be an average loss during transmission of data through a communication network.

상기 목표 복원실패율을 백만 프레임당 한 프레임으로 정했다면 p=0.000001로 둔다,If the target restoration failure rate is set to one frame per one million frames, p = 0.000001 is set.

이에 따른 상기 오버헤드 코드는 다음의 수학식으로 구하는 것을 특징으로 한다.The above overhead code is characterized by the following equation.

수학식1Equation 1

Figure 112017124290718-pat00001
Figure 112017124290718-pat00001

상기 소스 심벌 개수 k는 하나의 소스 블록을 k개로 나누어 보낸다는 뜻으로, 예를 들어 인터넷 통신망은 1500byte를 한 패킷으로 전송하니 소스 블록을 k개로 나눈 하나의 크기가 그 이하인 것이 손실방지에 유리하므로, 이를 1000byte으로 맞추고자 한다면 한 소스 블록의 크기를 1000byte로 나누어 올림을 한 값을 k로 두면 된다.The number k of source symbols means that one source block is divided into k pieces. For example, since the Internet communication network transmits 1500 bytes in one packet, it is advantageous to prevent loss by one size smaller than k pieces of source blocks If you want to set this to 1000 bytes, divide the size of one source block by 1000 bytes and set the value to k.

상기 복구 심벌 개수 r은 상기 오버헤드 코드, 상기 전송환경 인자(L), k로부터 다음의 수학식으로 구하는 것을 특징으로 한다.The number of recovered symbols r is obtained from the overhead code, the transmission environment factor (L), k by the following equation.

수학식2Equation 2

Figure 112017124290718-pat00002
Figure 112017124290718-pat00002

본 발명에 따른 실시간 비디오 스트리밍에서 비디오 지연시간을 최소로 하면서 안정적으로 비디오 데이터를 송수신이 가능한 알고리즘은 모바일 라우터, 모바일 인코더, 모바일 본더(bonder) 등 지연시간과 안정성이 떨어지는 무선망을 통한 실시간 송수신기 제품에 적용할 수 있다.In the real-time video streaming according to the present invention, the algorithm capable of transmitting and receiving video data stably while minimizing the video delay time is a real-time transceiver product through a wireless network having a delay time and a low stability such as a mobile router, a mobile encoder, .

본 발명과 같이 개선된 RaptorQ 인코더를 사용할 경우 오버헤드가 0인 경우에는 복원실패율이 1/100, 1인 경우에는 1/10,000, 2인 경우에는 1/1,000,000로 적은 오버헤드 코드로 안정적인 데이터를 송신하면서도 지연시간을 줄일 수 있다.In the case of using the improved RaptorQ encoder according to the present invention, when the overhead is 0, stable data is transmitted with an overhead code as low as 1 / 10,000 when the recovery failure rate is 1/100, 1 / 10,000 when 2, While reducing latency.

또한, 컴퓨터 연산량에서 linear time, 즉 O(n)의 특성을 가져 대규모 파일과 스트리밍에 효과적이며, 메모리 사용에서도 효과적이다.In addition, it has a linear time (O (n)) in the computational complexity, which is effective for large-scale file and streaming, and is also effective in memory use.

도 1은 AL-FEC에 의한 데이터 송수신 방법이다.
도 2는 본 발명에 따른 유무선 통신망에서 데이터 송수신 개념도이다.
도 3은 본 발명에 따른 종래 기술의 개선점이다.
도 4은 본 발명에 따른 데이터 송수신 시스템의 블록도이다.
도 5는 본 발명에 따른 데이터 송수신의 흐름도이다.
1 is a method of transmitting and receiving data by AL-FEC.
2 is a conceptual diagram of data transmission / reception in a wired / wireless communication network according to the present invention.
Figure 3 is an improvement over the prior art according to the present invention.
4 is a block diagram of a data transmission / reception system according to the present invention.
5 is a flowchart of data transmission and reception according to the present invention.

이하, 본 발명의 실시를 위한 구체적인 실시예를 도면을 참고하여 설명한다. 본 발명의 실시예는 하나의 발명을 설명하기 위한 것으로서 권리범위는 예시된 실시예에 한정되지 아니하고, 예시된 도면은 발명의 명확성을 위하여 핵심적인 내용만 확대 도시하고 부수적인 것을 생략하였으므로 도면에 한정하여 해석하여서는 아니 된다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described with reference to the drawings. It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not intended to limit the invention to the particular forms disclosed. And shall not interpret it.

단방향 멀티 캐스트(multi-cast)에서 네트워크의 과부하를 유발하는 재전송요청을 없애고 수신단에게 비동기 수신을 제공하는 방법은, 송신단에서 전송할 파일을 이용하여 끊임없이 부호화된 패킷을 만들어서 전송하고, 각각 의 수신단은 피드백이 필요 없이 복호화가 가능할 정도의 패킷만을 수신하여 복호화한다.A method of eliminating a retransmission request causing an overload of a network in a unidirectional multicast and providing asynchronous reception to a receiver includes generating and transmitting a constantly encoded packet using a file to be transmitted by the transmitter, And decodes the received packet only to the extent that decoding is possible.

도 1에서와 같이 AL-FEC는 데이터 손실이 발생하는 네트워크상에서 데이터를 안정적으로 보내기 위해 소스 블록과 소스 블록으로부터 생성되는 복구 심벌을 네트워크를 통해 보낸다. 네트워크에서는 패킷 손실로 인해 소스 심벌과 복구 심벌의 손실이 발생할 수 있다. 최종적으로는 소스 심벌과 복구 심벌이 도착을 하면 이를 사용해서 손실된 소스 블록을 복구하여 원래 블록을 복원하는 것이다.As shown in FIG. 1, the AL-FEC sends a recovery symbol generated from the source block and the source block over the network in order to reliably transmit data on the network where data loss occurs. In a network, loss of source symbols and recovery symbols may occur due to packet loss. Finally, when the source symbol and the recovery symbol arrive, they are used to recover the lost source block and restore the original block.

RaptorQ는 AL-FEC의 한 방식으로 송신기에서 보내야할 일정한 크기의 데이터를 블록 단위로 나누고 각각의 블록 안에 있는 k 개의 소스 심벌을 사용해서 r 개의 복구 심벌을 만들어 원래의 소스 심벌 k 개와 생성된 복구 심벌 r 개를 보내고, 수신기에서 소스 심벌 수 k보다 같거나 더 많이 수신된 소스 심벌 혹은 복구 심벌로부터 손실된 소스 심벌을 복구하는 알고리즘이다.RaptorQ is a method of AL-FEC that divides the fixed size data to be sent by the transmitter into block units, generates r recovery symbols using k source symbols in each block, generates k original source symbols, r, and recover the lost source symbol from the received source symbol or recovery symbol equal to or greater than the source symbol number k at the receiver.

종래의 패킷 손실 방지를 위한 FEC 기술은 에러 코딩으로 통상 하드웨어에서 데이터의 변질을 방지하는 것이나, RaptorQ는 종래의 에러 코딩을 보완하는 것으로 소프트웨어만으로 구현이 가능하고 복호화 과정의 연산량 측면 에서 종래의 LT (Luby Transform) 코드보다 더 좋은 성능을 가지고 있다.Conventionally, FEC technology for preventing packet loss prevents error in data coding in normal hardware. However, RaptorQ compensates conventional error coding. It can be implemented by software only. In the case of decoding, Luby Transform) code.

분수 코드(fountain code)란 주어진 소스 심벌로부터 무한히 많은 복구 심벌을 발생할 수 있어 부호화한 데이터의 양이 미리 정해지지 않는(rateless) 특성을 말한다. 분수 코드는 LT 코드로 구현될 수 있고 후에 Raptor 코드로 발전되었다. Raptor 코드는 사전에 소스 심벌을 코딩하는 것(pre-coding)으로 인코딩 및 디코딩을 위해 소스 심벌로부터 중간 심벌 (intermediate symbol)를 생성하고, (잃어버린) 소스 혹은 복구 심벌을 중간 코드의 적은 수의 배타적 합(XOR)으로 생성할 수 있는 효율적인 분수 코드이다.A fountain code is a property that can generate infinite number of recovery symbols from a given source symbol, so that the amount of encoded data is rateless. The fractional code can be implemented in LT code and later developed into Raptor code. The Raptor code is pre-coding the source symbols in advance, generating intermediate symbols from the source symbols for encoding and decoding, and replacing the (lost) source or recovery symbols with a small number of exclusive It is an efficient fractional code that can be generated as a sum (XOR).

RaptorQ는 하나의 블록에 들어있는 소스 심벌 k 개에 대해서 (k+Δ)개의 소스 혹은 복구 심벌이 수신이 되면, 손실된 소스 심벌(lost source symbol)을 모두 복원하는데 실패할 확률이

Figure 112017124290718-pat00003
가 되는 아주 뛰어난 특성을 갖고 있다. (참고문헌: Qualcomm document, TSG-SA4#64 meeting, 11-25 pr. 2011, San Diego, CA, USA)RaptorQ has the probability of failing to recover all lost source symbols when (k + Δ) source or recovery symbols are received for k source symbols in a block
Figure 112017124290718-pat00003
And has excellent characteristics. (Reference: Qualcomm document, TSG-SA4 # 64 meeting, 11-25 pr. 2011, San Diego, CA, USA)

예를 들어, 한 블록에 들어가는 소스 심벌의 수가 k 이고, 이 한 블록에 대한 소스 심벌과 복구 심벌을 네트워크로 보냈을 때 수신되는 소스 혹은 복구 심벌의 수가 다음과 같이 k, k+1, k+2 개라고 하면 손실된 소스 심벌 을 복원하는데 실패할 확률이 표 1과 같게 된다.For example, when the number of source symbols in one block is k and the number of source or recovery symbols received when the source symbol and the recovery symbol for this block are sent to the network is k, k + 1, k + 2, the probability of failure to recover the lost source symbol is as shown in Table 1.

소스 심벌 수와 복원실패 확률Number of source symbols and probability of restoration failure
수신된 소스 혹은 복구 심벌 수Number of received source or recovery symbols

복원실패 확률Restoration failure probability

kk

1/1001/100

k + 1k + 1

1/10,0001 / 10,000

k + 2k + 2

1/1000,0001 / 1000,000

수학식 1Equation 1

RaptorQ AL-FEC 알고리즘에서 복원실패확률 p는In the RaptorQ AL-FEC algorithm, the recovery failure probability p is

Figure 112017124290718-pat00004
Figure 112017124290718-pat00004

로 주어지므로, 오버헤드 코드 Δ는, The overhead code [Delta] is given by

Figure 112017124290718-pat00005
Figure 112017124290718-pat00005

로 쓸 수 있다.Can be written as.

수학식2Equation 2

위의 복원실패율을 맞추기 위해서는 소스 심벌 k개와 복구 심벌 r개가 송신기를 출발해서 손실률이 L인 통신망을 통하여 수신기에 최소 k + Δ 이상 도달해야 하므로,In order to meet the above restoration failure rate, k source symbols and r recovery symbols must start from the transmitter and reach a minimum k + Δ over the communication network with a loss rate of L. Therefore,

Figure 112017124290718-pat00006
Figure 112017124290718-pat00006

이므로 이를 이용해서 최소의 r을 구하면,Therefore, if the minimum r is obtained by using this,

Figure 112017124290718-pat00007
Figure 112017124290718-pat00007

로 구할 수 있다..

본 발명에서는 통신망에서 지연시간을 줄이면서도 안정적이고 효율적으로 전송 가능하도록 RaptorQ AL-FEC를 사용하여 데이터를 보내는 기존의 방법을 다음과 같이 개선하였다. (도 3 참조)In the present invention, an existing method of transmitting data using RaptorQ AL-FEC is improved as follows so that transmission can be performed stably and efficiently while reducing delay time in a communication network. (See Fig. 3)

1) 종래의 RaptorQ AL-FEC 알고리즘은 송신하려는 데이터가 정해진 크기까지 모이기를 기다려서 RaptorQ AL-FEC 알고리즘을 진행하여 전송을 했으나, 영상의 프레임 또는 슬라이스(한 프레임을 이루는 화면의 일부) 별로 데이터를 생성하는 인코더 입장에서는 일정한 크기의 데이터가 모일 때까지 걸리는 시간이 지연시간으로 작용했다. 1) The conventional RaptorQ AL-FEC algorithm transmits the RaptorQ AL-FEC algorithm by transmitting the data to be transmitted until it reaches a predetermined size. However, the RaptorQ AL-FEC algorithm generates data by a frame or a slice of the image For the encoder, the time taken for the data of a certain size to converge was a delay time.

2) 우리가 개선한 RaptorQ AL-FEC 알고리즘은 인코더에서 하나의 프레임을 인코딩한 데이터가 생성되는 즉시 이를 하나의 소스 블록으로 삼아 RaptorQ AL-FEC 알고리즘을 적용하여 전송함으로써 기존 RaptorQ AL-FEC 알고리즘에 따라 정해진 크기까지 데이터가 모이는 데에 걸리는 시간이 지연시간으로 되지 않도록 개선했다.2) Our improved RaptorQ AL-FEC algorithm is based on the existing RaptorQ AL-FEC algorithm by applying the RaptorQ AL-FEC algorithm as a source block as soon as the encoded data of one frame is generated by the encoder. The time required for data gathering up to a predetermined size is prevented from becoming a delay time.

3) 종래의 RaptorQ AL-FEC 알고리즘은 데이터를 항상 같은 크기가 될 때까지 모았다가 보낸다는 전제하에 복구 심볼 생성과 복구 심볼을 이용해 소스 블록을 복원할 때 필요한 파라미터를 송수신 전 과정에서 송신기가 수신기에 한번만 전송을 했으나, 개선된 RaptorQ AL-FEC 알고리즘에 따르면 소스 블록마다 데이터의 크기가 일정하지 않으므로 이에 필요한 파라미터가 소스 블록마다 다르고 이 파라미터들을 매 소스 블록과 함께 전송하여 문제점을 해결한다.3) The conventional RaptorQ AL-FEC algorithm requires that the transmitter collects the necessary parameters for recovering the source block using the recovery symbol generation and recovery symbols, assuming that the data is always collected until it reaches the same size. However, according to the improved RaptorQ AL-FEC algorithm, since the size of data is not constant for each source block, the parameters required for each source block are different for each source block, and these parameters are transmitted together with every source block to solve the problem.

이때 송신기와 수신기 사이에 교환이 필요한 파라미터들은 다음과 같다. (RFC 6330 “4.2. Content Delivery Protocol Requirements” 참고)The parameters required to be exchanged between the transmitter and the receiver are as follows. (See RFC 6330 "4.2 Content Delivery Protocol Requirements")

① F: the transfer length of the object, in octets① F: the transfer length of the object, in octets

② Al: the symbol alignment parameter(2) Al: the symbol alignment parameter

③ T: the symbol size in octets, which MUST be a multiple of Al③ T: the symbol size in octets, which MUST be a multiple of Al

④ Z: the number of source blocks④ Z: the number of source blocks

⑤ N: the number of sub-blocks in each source block⑤ N: the number of sub-blocks in each source block

⑥ Source Block Number (SBN)⑥ Source Block Number (SBN)

⑦ Encoding Symbol ID (ESI)⑦ Encoding Symbol ID (ESI)

⑧ Encoding symbol(s)⑧ Encoding symbol (s)

Claims (1)

실시간 비디오 스트리밍에서 송신기와 수신기 사이에 비디오 지연시간을 최소로 하면서 데이터를 안정적으로 송수신하는 방법에 있어서,
송신기에서 통신망의 전송환경 인자를 셋팅하여 입력하는 단계;
송신기에서 안정적인 전송을 위한 목표 복원실패율 p를 설정하고 그에 따른 오버헤드 코드(overhead code) 를 계산하여 구하는 단계;
송신기에서 영상의 한 프레임 또는 프레임의 일부인 슬라이스(slice)를 인코딩한 데이터를 하나의 소스 블록으로 삼아 각 소스 블록의 크기와 상기 오버헤드 코드 및 전송환경 인자로부터 소스 심벌 수 k와 복구 심벌 수 r를 구하는 단계;
상기 소스 심벌 수 k와 복구 심벌 수 r을 사용해서 소스 블록을 분할하고 RaptorQ 인코더로 k 개의 소스 심벌과 r 개의 복구 심벌을 생성하는 단계;
상기 소스 블록 크기 및 소스 심벌 수 k로부터 RaptorQ 파라미터를 매 소스 블록마다 계산하고 전송하는 단계;
송신기에서 생성된 소스 및 심벌을 통신망으로 나누어 송신하는 단계 및
수신기에서 적어도 k 개의 소스 혹은 복구 심벌을 수신하여 손실된 소스 심벌을 복구하는 단계를 포함하는 것을 특징으로 하는 데이터 송수신 방법.
A method for stably transmitting and receiving data between a transmitter and a receiver in real time video streaming while minimizing a video delay time,
Setting a transmission environment factor of a communication network in a transmitter and inputting the parameter;
Setting a target restoration failure rate p for stable transmission in a transmitter and calculating and obtaining an overhead code according to the target restoration failure rate p;
The transmitter encodes the slice, which is a part of an image frame or a frame, as one source block. The number of source symbols k and the number of recovered symbols r from the size of each source block, the overhead code, Obtaining;
Dividing the source block using the number of source symbols k and the number of recovered symbols r, and generating k source symbols and r recovery symbols with a RaptorQ encoder;
Calculating and transmitting a RaptorQ parameter for each source block from the source block size and the number of source symbols k;
Transmitting a source and a symbol generated in the transmitter by a communication network; and
And recovering the lost source symbol by receiving at least k source or recovery symbols at the receiver.
KR1020170171425A 2017-12-13 2017-12-13 Method of reliable data transmission with least video latency for real-time video streaming KR101999105B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170171425A KR101999105B1 (en) 2017-12-13 2017-12-13 Method of reliable data transmission with least video latency for real-time video streaming

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170171425A KR101999105B1 (en) 2017-12-13 2017-12-13 Method of reliable data transmission with least video latency for real-time video streaming

Publications (2)

Publication Number Publication Date
KR20190070671A KR20190070671A (en) 2019-06-21
KR101999105B1 true KR101999105B1 (en) 2019-07-11

Family

ID=67056761

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170171425A KR101999105B1 (en) 2017-12-13 2017-12-13 Method of reliable data transmission with least video latency for real-time video streaming

Country Status (1)

Country Link
KR (1) KR101999105B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101754809B1 (en) * 2015-09-09 2017-07-07 오픈스택 주식회사 Method of reliable data transmission for LTE hetero-networks

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100848273B1 (en) 2007-07-03 2008-07-25 삼성전자주식회사 Device and method for processing file in digital broadcasting receiver
KR101953580B1 (en) * 2014-11-25 2019-03-04 한국전자통신연구원 Data Transceiving Apparatus and Method in Telepresence System

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101754809B1 (en) * 2015-09-09 2017-07-07 오픈스택 주식회사 Method of reliable data transmission for LTE hetero-networks

Also Published As

Publication number Publication date
KR20190070671A (en) 2019-06-21

Similar Documents

Publication Publication Date Title
KR101449710B1 (en) Data communication system, data transmitting apparatus, data transmitting method, and method for determining packet size and redundancy
KR100680671B1 (en) Method and apparatus for generating error correction data, and computer-readable recording medium storing error correction data generating program
JP5778672B2 (en) Backward looking robust header compression receiver
US9246630B2 (en) Method, device, and system for forward error correction
EP2518910B1 (en) Seamless handover of multicast sessions in internet protocol based wireless networks using staggercasting
TWI501579B (en) Receiver and receiving method for receiving data in a broadcast system using incremental redundancy received through a unicast system
US10320520B2 (en) Communication device, system and method
US10015486B2 (en) Enhanced video decoding with application layer forward error correction
KR101922559B1 (en) Method and apparatus for transmitting/receiving forward error correction packet in a communication system
CN101193312A (en) Self-adapted error recovery device, video communication system and method based on feedback
CN106416154B (en) Method and apparatus for transmitting and receiving packet in broadcast and communication system
KR102002939B1 (en) On-demand file recovery methods and systems
KR101754809B1 (en) Method of reliable data transmission for LTE hetero-networks
Nazir et al. Expanding window random linear codes for data partitioned H. 264 video transmission over DVB-H network
JP2005515697A (en) Uneven error protection using forward error correction based on Reed-Solomon code
JP5344541B2 (en) Data transmission apparatus, transmission method and program
US10833710B2 (en) Bandwidth efficient FEC scheme supporting uneven levels of protection
KR101953580B1 (en) Data Transceiving Apparatus and Method in Telepresence System
KR101999105B1 (en) Method of reliable data transmission with least video latency for real-time video streaming
CN113301387B (en) Data encoding and decoding method, related equipment and system
US11616986B2 (en) System and method for correcting network loss of data
Rao et al. Portal of Research Methods and Methodologies for Research Projects and Degree Projects
CN117749322A (en) Data transmission method and device
KR101695838B1 (en) Apparatus and method for transmitting/receiving data in communication system
Dawood et al. Error resilient packet-switched video telephony with adaptive rateless coding and reference picture selection.

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