KR100782343B1 - Method of streaming image - Google Patents

Method of streaming image Download PDF

Info

Publication number
KR100782343B1
KR100782343B1 KR1020040052746A KR20040052746A KR100782343B1 KR 100782343 B1 KR100782343 B1 KR 100782343B1 KR 1020040052746 A KR1020040052746 A KR 1020040052746A KR 20040052746 A KR20040052746 A KR 20040052746A KR 100782343 B1 KR100782343 B1 KR 100782343B1
Authority
KR
South Korea
Prior art keywords
decoder buffer
video
image
decoder
streaming
Prior art date
Application number
KR1020040052746A
Other languages
Korean (ko)
Other versions
KR20060003743A (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 KR1020040052746A priority Critical patent/KR100782343B1/en
Publication of KR20060003743A publication Critical patent/KR20060003743A/en
Application granted granted Critical
Publication of KR100782343B1 publication Critical patent/KR100782343B1/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/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/164Feedback from the receiver or from the transmission channel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • 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/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • 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
    • H04N21/2401Monitoring of the client 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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available

Abstract

본 발명은 네트워크를 통한 영상 스트리밍(Streaming) 방법에 관한 것으로, 특히 디코더 버퍼 제어기(Decoder Buffer Controller)를 이용한 TCP(Transmission Control Protocol) 친화적(Friendly) 스트리밍 방법에 관한 것이다.The present invention relates to a video streaming method over a network, and more particularly, to a Transmission Control Protocol (TCP) friendly streaming method using a decoder buffer controller.

본 발명에 따른 디코더 버퍼 제어기를 이용한 TCP 친화적 스트리밍 방법은, (a) 영상 서버에서 영상 프레임(Frame)을 생성하는 단계; (b) 생성된 영상 프레임을 전송하는 단계; (c) 상기 전송을 모니터링하는 단계; (d) 수신된 상기 영상 프레임을 디코딩하는 단계; (e) 디코더 버퍼 제어기에서 영상의 재생이 단절되는 현상을 방지하고, 연속적인 재생을 보장하도록 (a)단계, (b)단계 및 (c)단계를 조합하는 단계;를 포함하고, 디코더 버퍼에 항상 일정한 시간 동안 재생할 수 있는 영상이 존재하도록 영상의 화질을 적절히 조절함으로써 연속적인 재생을 보장하는 것을 특징으로 하여 이루어진다.A TCP friendly streaming method using a decoder buffer controller according to the present invention includes: (a) generating an image frame in a video server; (b) transmitting the generated image frame; (c) monitoring the transmission; (d) decoding the received image frame; (e) combining steps (a), (b) and (c) to prevent the playback of the video from being interrupted in the decoder buffer controller and to ensure continuous playback. It is characterized in that the continuous reproduction is ensured by appropriately adjusting the image quality of the image so that there is always an image that can be reproduced for a certain time.

스트리밍, 디코더, TRFC(TCP Friendly Rate Control), FGS(Fine Granular Scalability)Streaming, Decoder, TCP Friendly Rate Control (TRFC), Fine Granular Scalability (GFS)

Description

영상 스트리밍 방법{METHOD OF STREAMING IMAGE}Video streaming method {METHOD OF STREAMING IMAGE}

도 1은 본 발명에 따른 스트리밍 시스템의 개요도이다.1 is a schematic diagram of a streaming system according to the present invention.

도 2는 본 발명에 따른 디코더 버퍼의 구조도이다.2 is a structural diagram of a decoder buffer according to the present invention.

본 발명은 네트워크를 통한 영상 스트리밍 방법에 관한 것으로, 특히 디코더 버퍼 제어기(Decoder Buffer Controller)를 이용한 TCP 친화적(Friendly) 스트리밍(Streaming) 방법에 관한 것이다.The present invention relates to a video streaming method over a network, and more particularly, to a TCP friendly streaming method using a decoder buffer controller.

기존의 스트리밍 방법은 네트워크의 상태와 관계없이 항상 일정한 화질을 가지는 영상을 전송한다. 현재의 인터넷이 스트리밍에 요구되는 전송용량을 적절하게 보장할 수 있다면, 기존의 스트리밍 방법은 문제될 것이 없지만 현 인터넷은 전송용량을 보장을 해줄 수 없는 최선적(Best-Effort) 네트워크이다.The existing streaming method always transmits images having a constant image quality regardless of network conditions. If the current Internet can adequately guarantee the transmission capacity required for streaming, the existing streaming method is not a problem, but the current Internet is the best-effort network that cannot guarantee the transmission capacity.

즉, 특정 화질로 영상이 스트리밍 되는 동안 스트리밍에 필요한 최소한의 전송용량을 네트워크가 지원해 주지 못하는 경우가 발생하면, 재생 클라이언트에서는 재생할 영상이 도착하지 못하여 일정 시간 동안 재생을 멈추고 필요한 영상이 도착 할 때까지 기다려야만 한다.In other words, if the network does not support the minimum transmission capacity required for streaming while video is being streamed at a certain quality, the playback client does not arrive and the playback stops for a certain time until the required video arrives. I have to wait.

또한, 네트워크가 현재 스트리밍 되는 영상을 전송하고도 남을 충분한 용량을 가지고 있더라도 여분의 용량을 전부 사용할 수 없다.Also, even if the network has enough capacity to transmit the current streamed video, it cannot use all the extra capacity.

상기 문제점을 극복하기 위해서, 국내등록특허공보 2003-0035525, 국내등록특허공보 2003-0079337와 같은 방법들이 개시되어 있다.In order to overcome the above problems, methods such as Korean Patent Publication No. 2003-0035525 and Korean Patent Publication No. 2003-0079337 are disclosed.

국내등록특허공보 2003-0035525의 경우 네트워크의 상황을 패킷간의 간격을 통해 예측하고, 예측된 결과에 따라 영상 패킷의 전송률을 조절할 뿐 주어진 네트워크의 전송용량에 따라 최고의 화질을 가지는 영상을 전송하려는 화질 적응(Quality Adaptation)의 개념이 없다.In the case of Korea Patent Publication 2003-0035525, it predicts the network situation through the interval between packets and adjusts the transmission rate of the image packet according to the predicted result, and adapts the image quality to transmit the image having the best image quality according to the transmission capacity of the given network There is no concept of quality adaptation.

국내등록특허공보 2003-0079337의 경우 화질 적응의 개념이 도입되었지만 디코더 버퍼의 저장량을 통해 재생할 수 있는 시간이 아닌 단순히 저장량을 기반으로 화질을 조절할 뿐만 아니라 스트리밍을 위해 개발된 최신 영상 인코딩 기술 및 전송 방법을 채택하지 않고 있다.In the case of Korea Patent Publication No. 2003-0079337, the concept of image quality adaptation was introduced, but the latest image encoding technology and transmission method developed for streaming as well as adjusting the image quality based on the storage amount rather than the playback time through the storage capacity of the decoder buffer. It is not adopting.

상기의 문제점을 해결하기 위한 본 발명의 목적은 추가적인 인코딩/디코딩 과정 없이 특정 범위 내에서 다양한 비트율을 가질 수 있는 MPEG(Moving Picture Experts Group)-4 FGS(Fine Granular Scalability) 영상 인코딩 기술 도입에 그 목적이 있다.An object of the present invention to solve the above problems is to introduce a Moving Picture Experts Group (MPEG) -4 Fine Granular Scalability (FGS) image encoding technology that can have various bit rates within a specific range without additional encoding / decoding process There is this.

본 발명의 다른 목적은, 실시간 네트워크의 전송용량을 TCP와 친화적인 관점에서 예측하고 스트리밍에 적합한 전송을 가능하게 하는 TFRC(TCP Friendly Rate Control) 알고리즘 채택에 그 목적이 있다.Another object of the present invention is to adopt a TCP Friendly Rate Control (TFRC) algorithm that predicts the transmission capacity of a real-time network from a TCP-friendly point of view and enables transmission suitable for streaming.

본 발명의 다른 목적은, 수학적으로 그 성능이 검증된 제어식을 통해 디코더 버퍼의 저장량으로 재생할 수 있는 시간이 일정하게 유지되도록 제어함으로써 연속적인 재생을 보장하는데 그 목적이 있다.Another object of the present invention is to ensure continuous playback by controlling that the time that can be reproduced with the storage amount of the decoder buffer is maintained constant through a mathematically proven control formula.

본 발명에 따른 디코더 버퍼 제어기를 이용한 TCP 친화적 스트리밍 방법은, 네트워크를 통한 영상 스트리밍 방법에 있어서, (a) 영상 서버에서 영상 프레임을 생성하는 단계; (b) 생성된 영상 프레임을 전송하는 단계; (c) 상기 전송을 모니터링하는 단계; (d) 수신된 상기 영상 프레임을 디코딩하는 단계; (e) 디코더 버퍼 제어기에서 영상의 재생이 단절되는 현상을 방지하고, 연속적인 재생을 보장하도록 상기 (a)단계, (b)단계 및 (c)단계를 조합하는 단계;를 포함하고, 상기 디코더 버퍼에 항상 일정한 시간 동안 재생할 수 있는 영상이 존재하도록 영상의 화질을 적절히 조절함으로써 연속적인 재생을 보장하는 것을 특징으로 하는 디코더 버퍼 제어기를 이용한 TCP 친화적 스트리밍 방법이다.A TCP-friendly streaming method using a decoder buffer controller according to the present invention includes: (a) generating a video frame in a video server; (b) transmitting the generated image frame; (c) monitoring the transmission; (d) decoding the received image frame; (e) combining the steps (a), (b) and (c) to prevent the playback of the video from being interrupted in the decoder buffer controller and to ensure continuous playback. It is a TCP-friendly streaming method using a decoder buffer controller that ensures continuous playback by appropriately adjusting the image quality so that there is always a video that can be played for a certain time in the buffer.

본 발명에 따른 구성에 의하여, 네트워크를 통해 영상을 스트리밍할 때 끊김 없이 연속적인 재생을 보장하게 된다.By the configuration according to the present invention, it is possible to ensure continuous playback without interruption when streaming video over a network.

이하, 본 발명에 따른 디코더 버퍼 제어기를 이용한 TCP 친화적 스트리밍 방법을 첨부한 도면을 참조하여 상세히 설명한다.Hereinafter, a TCP friendly streaming method using a decoder buffer controller according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명에 따른 디코더 버퍼 제어기를 이용한 TCP 친화적 스트리밍 방법에 사용되는 스트리밍 서버(100)와 재생 클라이언트(200)의 개요도 이다.1 is a schematic diagram of a streaming server 100 and a playback client 200 used in a TCP friendly streaming method using a decoder buffer controller according to the present invention.

도 1에 도시한 바와 같이, 스트리밍 서버(100)는 인코딩된 FGS(Fine Granular Scalability) 영상으로부터 적절한 화질을 가지는 영상 프레임을 만들어 내는 FGS 서버(103), FGS 서버(103)로부터 생성된 영상 프레임이 저장되었다가 패킷화 된 후 예측된 전송용량에 따라 네트워크로 전송되는 스트리밍 버퍼(104), 현재 네트워크(300)의 전송용량을 예측하는 전송용량 측정기(Bandwidth Estimator)(102), 디코더 버퍼(202)와 네트워크(300)의 상태정보를 참조하여 디코더 버퍼(202)를 제어하기 위한 영상의 화질을 계산하는 디코더 버퍼 제어기(101)로 구성되며, 재생 클라이언트(200)는 네트워크(300)를 통해 수신된 영상 패킷이 저장되었다가 디코딩을 위해 영상 프레임으로 복원되는 디코더 버퍼(202)와 복원된 영상 프레임을 원래의 영상으로 디코딩하는 FGS 디코더(203)로 구성된다. As shown in FIG. 1, the streaming server 100 includes an FGS server 103 and an image frame generated from the FGS server 103 for generating an image frame having an appropriate image quality from encoded FGS (Fine Granular Scalability) images. Streaming buffer 104 is stored and packetized and then transmitted to the network according to the estimated transmission capacity, bandwidth estimator 102 for predicting the transmission capacity of the current network 300, decoder buffer 202 And a decoder buffer controller 101 which calculates an image quality of an image for controlling the decoder buffer 202 with reference to the state information of the network 300, and the playback client 200 is received through the network 300. The video packet is composed of a decoder buffer 202, which is stored and then restored to an image frame for decoding, and an FGS decoder 203 that decodes the restored video frame into an original image.

여기서, 스트리밍이 시작되면 FGS 서버(103)는 매 1/프레임률의 시간마다 디코더 버퍼 제어기(101)를 통해 계산된 비트율 f[k]값을 참조하여 f[k]/프레임률의 크기를 가지는 영상 프레임을 생성한다.Here, when streaming starts, the FGS server 103 has a size of f [k] / frame rate with reference to the bitrate f [k] value calculated by the decoder buffer controller 101 at every 1 / frame rate time. Create an image frame.

FGS 서버(103)를 통해 생성된 영상 프레임은 스트리밍 버퍼(104)에 저장되고 TFRC(TCP Friendly Rate Control) 알고리즘을 이용한 전송용량 측정기(102)에 의해 예측되는 네트워크(300)의 전송용량 CS[k]에 따라 패킷화 된 후 네트워크(300)로 전송된다.The video frame generated through the FGS server 103 is stored in the streaming buffer 104 and the transmission capacity C S [of the network 300 predicted by the transmission capacity measurer 102 using the TCP Friendly Rate Control (TFRC) algorithm. k] is packetized and then transmitted to the network 300.

또한, 디코더 버퍼 제어기(101)는 재생 클라이언트(200)로부터 상태정보(301)가 도착할 때마다 상태정보(301)가 제공하는 디코더 버퍼(202)의 상태정보 e[k]와 전송용량 측정기(102)에 의해 예측되는 네트워크(300)의 전송용량 CS[k]를 제어식에 대입하여 디코더 버퍼(202)를 제어하기 위한 영상에 대한 비트율 f[k]를 계산한다.In addition, the decoder buffer controller 101 transmits the state information e [k] and the capacity measuring instrument 102 of the decoder buffer 202 provided by the state information 301 whenever the state information 301 arrives from the playback client 200. Bit rate f [k] for the image for controlling the decoder buffer 202 is calculated by substituting the transmission capacity C S [k] of the network 300 predicted by the control equation.

여기서, 재생 클라이언트(200)측 알고리즘은 스트리밍을 위한 첫 번째 영상 패킷이 도착하면 재생 클라이언트(200)는 곧바로 재생을 시작하지 않고 τd의 초기재생지연을 가진 후에 재생을 시작한다.In this case, when the first video packet for streaming arrives, the playback client 200 does not start playback immediately, but starts playback after having an initial playback delay of τ d .

이어서, 재생이 시작되면 FGS 디코더(203)는 매 1/프레임률초마다 디코더 버퍼(202)를 관찰하여 수신된 영상 패킷들을 재생할 영상 프레임으로 복원하고 디코딩한다.Then, when playback starts, the FGS decoder 203 observes the decoder buffer 202 every 1 / frame rate second to restore and decode the received video packets into a video frame to be played back.

또한, 스트리밍 서버(100)의 디코더 버퍼 제어기(101)에게 제공될 상태정보(301)를 형성하기 위해 T의 주기적인 시간마다 디코더 버퍼(202)에 저장된 영상의 총 저장량 qd[k]와 수신되는 영상 패킷의 전송률 s[k]를 바탕으로 식 4를 통해 상태정보 e[k](301)를 생성하고 이를 패킷화 하여 스트리밍 서버(100)로 전송한다.In addition, the total storage amount q d [k] of the image stored in the decoder buffer 202 and reception at the periodic time of T to form the state information 301 to be provided to the decoder buffer controller 101 of the streaming server 100 is received. Based on the transmission rate s [k] of the video packet, the state information e [k] 301 is generated through Equation 4 and packetized and transmitted to the streaming server 100.

T의 값은 스트리밍 시스템을 최적화할 수 있는 어떤 값도 허용되지만 일반적으로 1/프레임률로 하는 것이 바람직하다.The value of T is any value that can optimize the streaming system, but is generally preferred to be 1 / frame rate.

또한, s[k]는 실제 네트워크(300)를 통해 전송되는 영상 패킷의 전송률을 의미하는 값으로써 예측된 전송용량 CS[k]와는 구별된다.In addition, s [k] is a value representing a transmission rate of an image packet transmitted through the actual network 300, and is different from the predicted transmission capacity C S [k].

도 2는 본 발명에 따른 디코더 버퍼 제어기(101)를 이용한 TCP 친화적 스트리밍 방법에 사용되는 상태정보(301)의 개요도이다.2 is a schematic diagram of the state information 301 used in the TCP friendly streaming method using the decoder buffer controller 101 according to the present invention.

도 2에 도시한 바와 같이, 본 발명은 디코더 버퍼(202)의 저장량 자체를 제어하는 것이 아니라 디코더 버퍼(202)의 저장량을 통해 재생할 수 있는 시간을 제어하고자 한다.As shown in FIG. 2, the present invention is not intended to control the storage amount of the decoder buffer 202 itself, but to control the time that can be reproduced through the storage amount of the decoder buffer 202.

이를 위해 디코더 버퍼(202)의 저장량을 통해 재생할 수 있는 시간을 예측할 수 있어야 하며, 이는 다음과 같은 식으로 계산될 수 있다.

Figure 112006044601522-pat00015
To this end, it should be possible to predict the time that can be reproduced through the storage amount of the decoder buffer 202, which can be calculated as follows.
Figure 112006044601522-pat00015

삭제delete

여기서, 도 2와 같이 디코더 버퍼(202)에 존재하는 영상은 서로 다른 비트율(f1, f2, ... fN)을 가지는 여러 개의 영상의 저장량(qd1, qd2, ... qdN)으로 나누어질 수 있다.Here, as illustrated in FIG. 2, an image present in the decoder buffer 202 may store a plurality of images q d1 , q d2 , ... q having different bit rates f 1 , f 2 , ... f N. dN ).

또한, 디코더 버퍼(202)에 N개의 그러한 영상의 종류가 존재하고 각각의 비트율 fn과 저장량 qdn을 알 수 있다면, 디코더 버퍼(202)에 존재하는 영상의 저장량qd[k]를 통해 재생할 수 있는 시간 pd[k]는 식 1과 같이 계산될 수 있다.Further, if there are N kinds of such images in the decoder buffer 202 and the respective bit rate f n and the storage amount q dn can be known, the reproduction amount through the storage amount q d [k] of the image existing in the decoder buffer 202 is reproduced. The time p d [k] can be calculated as in Equation 1.

그러나, 실제로 각각의 비트율과 저장량을 알기란 쉽지 않으며 따라서 적절한 어림(approximation)이 필요하다.In practice, however, it is not easy to know each bit rate and amount of storage, so appropriate approximation is required.

수학적인 분석에 의하면 제어식은 예상되는 평형점(equilibrium point)의 근처에서 영상에 대한 비트율 f[k]와 전송률 s[k]을 네트워크의 전송용량 CS[k]으로 수렴하게 한다.The mathematical analysis shows that the control equation converges the bit rate f [k] and the rate s [k] of the image to the network's transmission capacity C S [k] near the expected equilibrium point.

따라서 전송률 s[k]을 영상에 대한 비트율 f[k]의 어림값으로 사용할 수 있으며 더욱이 정상상태에서의 전송률은 크게 변화하지 않을 것이라고 예상할 수 있기 때문에 식 1은 다음과 같은 식2로 표현된다.

Figure 112007053161669-pat00074
Therefore, the rate s [k] can be used as an approximation of the bit rate f [k] for the image, and furthermore, since it can be expected that the transmission rate in the steady state will not change significantly, Equation 1 is expressed as Equation 2 below. .
Figure 112007053161669-pat00074

삭제delete

또한, 예측되는 재생시간 pd[k]가 초기재생지연 τd으로 유지되도록 하면서, 더불어 디코더 버퍼(202) 저장량의 목표값을 버퍼크기 B보다 작게 만들기 위해, 목표값 qT[k]는 다음과 같은 식 3으로 표현할 수 있다.

Figure 112006044601522-pat00031
Further, in order to keep the predicted reproduction time p d [k] at the initial reproduction delay τ d , and to make the target value of the decoder buffer 202 storage smaller than the buffer size B, the target value q T [k] is It can be expressed as Equation 3.
Figure 112006044601522-pat00031

삭제delete

또한, 상태정보(301)는 다음과 같은 식 4로 표현된다.

Figure 112006044601522-pat00032
In addition, the state information 301 is expressed by the following equation (4).
Figure 112006044601522-pat00032

삭제delete

식 4에서 보는 바와 같이 상태정보 e[k](301)은 디코더 버퍼(202)에 저장된 영상의 총 저장량과 디코더 버퍼(202)의 총 저장량의 목표값의 차이다.As shown in Equation 4, the state information e [k] 301 is a difference between a total storage amount of an image stored in the decoder buffer 202 and a target value of the total storage amount of the decoder buffer 202.

여기서, 제어식은 다음과 같다.
f[k]=f[k-1]+CS[k]-CS[k-1]+A(e[k]-e[k-1])+B·T·e[k]
Here, the control equation is as follows.
f [k] = f [k-1] + C S [k] -C S [k-1] + A (e [k] -e [k-1]) + B · T · e [k]

삭제delete

식 5에서 A와 B는 수렴구간 분석을 통해 구해야 하는 제어기 이득이며, 다음과 같은 값을 가졌을 때 최대의 성능을 보인다.

Figure 112006044601522-pat00037
In Equation 5, A and B are the controller gains to be obtained through the analysis of convergence intervals, and show the maximum performance when the following values are obtained.
Figure 112006044601522-pat00037

삭제delete

여기서, τmax는 네트워크(300)의 RTT(Round Trip Time)와 스트리밍 버퍼(104)와 디코더 버퍼(202)에서 지연되는 시간을 더한 값이 가질 수 있는 최댓값을 의미한다.Here, τ max means the maximum value that a value obtained by adding a round trip time (RTT) of the network 300 and a delay time in the streaming buffer 104 and the decoder buffer 202 may have.

여기서, T는 앞서 기술된 바와 같이 상태정보(301)가 주기적으로 갱신되는 간격을 의미한다.Here, T means an interval in which the state information 301 is periodically updated as described above.

식 5의 우측은 두 부분으로 나뉠 수 있다.The right side of equation 5 can be divided into two parts.

CS[k]-CS[k-1]는 영상에 대한 비트율 f[k]가 전송용량 측정기(102)에 의해 예측되는 네트워크 전송량 CS[k]를 따라가도록 하는 부분이다.C S [k] -C S [k-1] is a portion that causes the bit rate f [k] for the image to follow the network throughput C S [k] predicted by the capacity measuring unit 102.

A(e[k]-e[k-1])+B·T·e[k]는 e[k]의 값이 0으로 수렴하게 하는 부분으로서 결과적으로 디코더 버퍼(202)의 저장량 qd[k]이 목표값 qT[k]로 수렴하게 하는 역할을 한다.A (e [k] -e [k-1]) + B · T · e [k] is a portion that causes the value of e [k] to converge to 0, resulting in the storage amount q d [of the decoder buffer 202. k] converges to the target value q T [k].

본 발명은 MPEG(Moving Picture Experts Group)-4 FGS(Fine Granular Scalability) 영상 인코딩 기술을 도입하여 추가적인 인코딩/디코딩 과정 없이 특 정 범위 내에서 다양한 비트율을 가질 수 있는데 그 효과가 있다.The present invention introduces a Moving Picture Experts Group (MPEG) -4 Fine Granular Scalability (GFS) image encoding technology to have various bit rates within a specific range without additional encoding / decoding process.

또한, 상기 본 발명은 TFRC(TCP Friendly Rate Control) 알고리즘을 채택하여 실시간 네트워크의 전송용량을 TCP와 친화적인 관점에서 예측하고 스트리밍에 적합한 전송을 가능하게 하는데 그 효과가 있다.In addition, the present invention employs a TCP Friendly Rate Control (TFRC) algorithm to predict the transmission capacity of a real-time network in a friendly manner with TCP and to enable transmission suitable for streaming.

또한, 상기 본 발명은 연속적인 재생을 보장하기 위하여 수학적으로 그 성능이 검증된 제어식을 통해 디코더 버퍼의 저장량으로 재생할 수 있는 시간이 일정하게 유지되도록 제어하도록 하는데 그 효과가 있다.In addition, the present invention has the effect of controlling to maintain a constant time that can be reproduced with the storage amount of the decoder buffer through a control formula whose performance has been mathematically verified to ensure continuous playback.

Claims (15)

삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 네트워크를 통한 영상 스트리밍 방법에 있어서,In the video streaming method over a network, (a) 영상 프레임을 생성하는 단계;(a) generating an image frame; (b) 상기 영상 프레임을 전송하는 단계; 및(b) transmitting the image frame; And (c) 상기 전송을 모니터링하는 단계;(c) monitoring the transmission; 를 포함하고, 상기 모니터링에 대응하여, 상기 영상 프레임의 비트율을 변환하고,Includes, and in response to the monitoring, convert the bit rate of the video frame, 상기 (c)단계의 모니터링하는 단계는, The monitoring step of (c), (c-1) TFRC(TCP Friendly Rate Control) 알고리즘을 이용하여 상기 영상 프레임의 전송용량이 측정되는 단계;(c-1) measuring a transmission capacity of the video frame by using a TCP Friendly Rate Control (TFRC) algorithm; (c-2) 상기 영상 프레임이 디코더 버퍼로 전송되는 단계; 및(c-2) transmitting the image frame to a decoder buffer; And (c-3) 상기 디코더 버퍼에 상기 영상 프레임이 축적되는 단계;(c-3) accumulating the video frame in the decoder buffer; 를 포함하는, 영상 스트리밍 방법.Including, video streaming method. 삭제delete 제6항에 있어서,The method of claim 6, 상기 영상 스트리밍 방법은,The video streaming method, (e-1) 상기 디코더 버퍼의 저장량을 통해 재생 가능한 시간을 예측하여 상태정보를 형성하는 단계;(e-1) forming state information by predicting a playable time based on a storage amount of the decoder buffer; (e-2) 상기 상태정보가 디코더 버퍼 제어기로 피드백되는 단계; 및 (e-2) feeding back the status information to a decoder buffer controller; And (e-3) 상기 상태정보를 이용하여 상기 디코더 버퍼 제어기에서 영상 프레임의 비트율을 계산하는 단계;(e-3) calculating a bit rate of an image frame in the decoder buffer controller using the state information; 를 포함하는, 영상 스트리밍 방법.Including, video streaming method. 제8항에 있어서,The method of claim 8, 상기 (e-1)단계에서 재생 가능한 시간을 예측하기 위하여 다음 식을 만족하는,In order to predict the playable time in the step (e-1), the following equation is satisfied,
Figure 112007053161669-pat00075
Figure 112007053161669-pat00075
여기서, pd[k]는 k번째에서 예측되는 총 재생시간이고,Where p d [k] is the total playback time predicted at the k th, qd[k]는 k번째에서 디코더 버퍼에 저장된 영상의 총 저장량이고,q d [k] is the total amount of video stored in the decoder buffer at kth, s[k]는 k번째에서 디코더 버퍼로 수신되는 영상 패킷의 전송률이고, s [k] is the transmission rate of the video packet received in the decoder buffer at the kth, qdn은 디코더 버퍼에 저장된 n번째 영상의 저장량이고,q dn is the storage amount of the n th image stored in the decoder buffer, fn는 디코더 버퍼에 저장된 n번째 영상에 대한 비트율이고,f n is the bit rate for the nth image stored in the decoder buffer, N은 디코더 버퍼에 저장된 영상의 총수인, 영상 스트리밍 방법.N is the total number of images stored in the decoder buffer.
제8항에 있어서,The method of claim 8, 상기 (e-1)단계는 상태정보를 형성하기 위해 현재 디코더 버퍼의 저장량과 디코더 버퍼의 목표값의 차이를 이용하는, 영상 스트리밍 방법.The step (e-1) uses the difference between the storage amount of the current decoder buffer and the target value of the decoder buffer to form state information. 제10항에 있어서,The method of claim 10, 상기 디코더 버퍼의 목표값은 예측된 재생시간이 초기재생지연 시간으로 유지되도록 설정되는, 영상 스트리밍 방법.And a target value of the decoder buffer is set such that a predicted playback time is maintained as an initial playback delay time. 제11항에 있어서,The method of claim 11, 상기 디코더 버퍼의 목표값 설정은 설정된 목표값이 상기 디코더 버퍼의 크기를 초과할 경우 상기 디코더 버퍼의 크기로 제한되는, 영상 스트리밍 방법.The target value setting of the decoder buffer is limited to the size of the decoder buffer when the set target value exceeds the size of the decoder buffer. 제8항에 있어서,The method of claim 8, 상기 디코더 버퍼 제어기는 다음 식을 만족하는,The decoder buffer controller satisfies the following equation, f[k]=f[k-1]+CS[k]-CS[k-1]+A(e[k]-e[k-1])+B·T·e[k]f [k] = f [k-1] + C S [k] -C S [k-1] + A (e [k] -e [k-1]) + B · T · e [k] 여기서, f[k]는 k번째에서 디코더 버퍼를 제어하기 위한 영상에 대한 비트율이고,Here, f [k] is a bit rate for the image for controlling the decoder buffer at the k th, CS[k]는 k번째에서 전송용량 측정기에 의해 예측되는 네트워크 전송량이고,C S [k] is the network throughput predicted by the capacity meter in kth, e[k]는 k번째에서 디코더 버퍼의 상태정보이고,e [k] is the status information of the decoder buffer at the k th, A와 B는 디코더 버퍼 제어기 이득이고,A and B are decoder buffer controller gains, T는 상태정보의 주기인, 영상 스트리밍 방법.T is a period of status information, video streaming method. 제13항에 있어서,The method of claim 13, 상기 디코더 버퍼 제어기의 이득 A와 B는 다음 식을 만족하는,Gains A and B of the decoder buffer controller satisfy the following equation,
Figure 112006044601522-pat00066
Figure 112006044601522-pat00066
여기서, τmax는 네트워크의 RTT(Round Trip Time)와 스트리밍 버퍼와 디코더 버퍼에서 지연되는 시간을 더한 값이 가질 수 있는 최대값인, 영상 스트리밍 방법.Here, τ max is a maximum value that can be obtained by adding a round trip time (RTT) of the network and a delay time in the streaming buffer and the decoder buffer.
제8항에 있어서,The method of claim 8, 상기 (e-1)단계는 상태정보를 형성하기 위하여 다음 제어식을 만족하는,Step (e-1) satisfies the following control formula to form state information.
Figure 112007053161669-pat00069
Figure 112007053161669-pat00069
여기서, e[k]는 k번째에서 디코더 버퍼의 상태정보이고,Here, e [k] is status information of the decoder buffer at the k th, qd[k]는 k번째에서 디코더 버퍼에 저장된 영상의 총 저장량이고,q d [k] is the total amount of video stored in the decoder buffer at kth, qT[k]는 k번째에서 디코더 버퍼의 총 저장량의 목표값이고,q T [k] is the target value of the total storage amount of the decoder buffer at the k th, s[k]는 k번째에서 디코더 버퍼로 수신되는 영상 패킷의 전송률이고, s [k] is the transmission rate of the video packet received in the decoder buffer at the kth, τd는 초기 재생지연시간이고.τ d is the initial regeneration delay time. B는 디코더 버퍼의 크기인, 영상 스트리밍 방법.B is the size of the decoder buffer.
KR1020040052746A 2004-07-07 2004-07-07 Method of streaming image KR100782343B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040052746A KR100782343B1 (en) 2004-07-07 2004-07-07 Method of streaming image

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040052746A KR100782343B1 (en) 2004-07-07 2004-07-07 Method of streaming image

Publications (2)

Publication Number Publication Date
KR20060003743A KR20060003743A (en) 2006-01-11
KR100782343B1 true KR100782343B1 (en) 2007-12-06

Family

ID=37106142

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040052746A KR100782343B1 (en) 2004-07-07 2004-07-07 Method of streaming image

Country Status (1)

Country Link
KR (1) KR100782343B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10075325B2 (en) 2012-08-22 2018-09-11 Samsung Electronics Co., Ltd. User terminal device and contents streaming method using the same

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100872776B1 (en) * 2006-12-06 2008-12-09 한국전자통신연구원 Method for Controlling Downstream Traffic Flow in Cable Network Headend
KR100787314B1 (en) * 2007-02-22 2007-12-21 광주과학기술원 Method and apparatus for adaptive media playout for intra-media synchronization

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020064904A (en) * 2000-09-22 2002-08-10 코닌클리케 필립스 일렉트로닉스 엔.브이. Preferred transmission/streaming order of fine-granular scalability
KR20040046055A (en) * 2002-11-26 2004-06-05 엘지전자 주식회사 Method for electrical transmission bit rate control of moving picture

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020064904A (en) * 2000-09-22 2002-08-10 코닌클리케 필립스 일렉트로닉스 엔.브이. Preferred transmission/streaming order of fine-granular scalability
KR20040046055A (en) * 2002-11-26 2004-06-05 엘지전자 주식회사 Method for electrical transmission bit rate control of moving picture

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10075325B2 (en) 2012-08-22 2018-09-11 Samsung Electronics Co., Ltd. User terminal device and contents streaming method using the same

Also Published As

Publication number Publication date
KR20060003743A (en) 2006-01-11

Similar Documents

Publication Publication Date Title
US7652994B2 (en) Accelerated media coding for robust low-delay video streaming over time-varying and bandwidth limited channels
US7342880B2 (en) Video information transmission system, and apparatus and program used for video information transmission system
US7373413B1 (en) Devices and methods for minimizing start up delay in transmission of streaming media
US6910079B2 (en) Multi-threshold smoothing
JP4347883B2 (en) Proactive rate adaptation signaling method and apparatus
JP4299275B2 (en) Adaptive estimation method of multimedia data transfer rate
US8346959B2 (en) Client-controlled adaptive streaming
US10355998B2 (en) Adaptive video over multicast
US11159834B2 (en) Managing congestion response during content delivery
CN108292970B (en) Adaptive bit rate adjustment method and device distributed through Internet live broadcast
EP2396945B1 (en) Video streaming
KR20040041170A (en) Data communications method and system using receiving buffer size to calculate transmission rate for congestion control
US20150146778A1 (en) Controlling Player Buffer and Video Encoder for Adaptive Video Streaming
EP2383999A1 (en) Controlling an adaptive streaming of digital content
EP2589223B1 (en) Video streaming
CA2461926A1 (en) Communication system and techniques for transmission from source to destination
JP2005526455A (en) Transmission method that absorbs fluctuation of channel transmission rate using virtual reception buffer
CN111886875B (en) Method and server for transmitting media content through network
US20160050243A1 (en) Methods and devices for transmission of media content
Kalman et al. Optimized transcoding rate selection and packet scheduling for transmitting multiple video streams over a shared channel
KR100782343B1 (en) Method of streaming image
ZHANG et al. Joint rate allocation and buffer management for robust transmission of VBR video
JP5522987B2 (en) Transmission device, transmission method, and computer program
KR100698174B1 (en) Method of estimating efficient data transmission rate and data transmission system on network
JP5171413B2 (en) Content transmission device, content reception device, and content transmission method

Legal Events

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

Payment date: 20111102

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee