KR100601934B1 - Adaptive streamimg apparatus and method - Google Patents

Adaptive streamimg apparatus and method Download PDF

Info

Publication number
KR100601934B1
KR100601934B1 KR1020030081723A KR20030081723A KR100601934B1 KR 100601934 B1 KR100601934 B1 KR 100601934B1 KR 1020030081723 A KR1020030081723 A KR 1020030081723A KR 20030081723 A KR20030081723 A KR 20030081723A KR 100601934 B1 KR100601934 B1 KR 100601934B1
Authority
KR
South Korea
Prior art keywords
bit rate
data
streaming
client
control signal
Prior art date
Application number
KR1020030081723A
Other languages
Korean (ko)
Other versions
KR20050047920A (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 KR1020030081723A priority Critical patent/KR100601934B1/en
Publication of KR20050047920A publication Critical patent/KR20050047920A/en
Application granted granted Critical
Publication of KR100601934B1 publication Critical patent/KR100601934B1/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/637Control signals issued by the client directed to the server or network components
    • H04N21/6373Control signals issued by the client directed to the server or network components for rate control, e.g. request to the server to modify its transmission rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/613Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for the control of the source by the destination
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/23805Controlling the feeding rate to the network, e.g. by controlling the video pump

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Communication Control (AREA)

Abstract

적응적 스트리밍 장치 및 방법이 개시된다. 이 장치는, 패킷화된 데이타를 스트리밍하는 스트리밍 경로와, 제어 신호에 응답하여 결정되는 제1 비트율로 데이타를 생성하고, 생성된 데이타를 패킷화하여 제2 비트율로 스트리밍 경로를 통해 전송하는 서버 및 패킷화된 데이타를 스트리밍 경로의 상태에 따라 가변되는 제3 비트율로 수신하고, 제3 비트율에 응답하여 제어 신호를 생성하는 클라이언트를 구비하는 것을 특징으로 한다. 그러므로, 스트리밍하면서 네트워크의 대역폭을 자동으로 인식하여 스트리밍하고자 하는 멀티 미디어 데이타의 비트율을 변경시킴으로서 멀티 미디어 데이타를 끊김없이 재생할 수 있도록 하고 즉, 버퍼링 현상이 없이 지속적인 재생을 가능하게 하고 망 혼잡으로 인한 패킷의 지연과 손실을 최소화할 수 있도록 하고, 클라이언트의 버퍼 상태에 따라 제어 신호를 달리 발생하여 이를 서버의 데이타 생성에 반영시키므로써 오디오/비디오 재생의 품질을 최적화시킬 수 있고, 제1 비트율 이상의 제2 비트율로 패킷 간격을 정하여 데이타를 전송하므로 대역폭 증가에 따른 예측 성능을 개선해서 대역폭 증가시에 네트워크 대역폭 활용율을 높일 수 있는 효과를 갖는다.An adaptive streaming apparatus and method are disclosed. The apparatus includes a streaming path for streaming packetized data, a server for generating data at a first bit rate determined in response to a control signal, packetizing the generated data, and transmitting the packetized data at a second bit rate over the streaming path; And a client configured to receive the packetized data at a third bit rate that varies according to the state of the streaming path, and generate a control signal in response to the third bit rate. Therefore, by automatically recognizing the bandwidth of the network while streaming and changing the bit rate of the multimedia data to be streamed, the multimedia data can be played back seamlessly, that is, continuous playback can be performed without buffering and packets due to network congestion. Delay and loss can be minimized, and the control signal is generated differently according to the buffer state of the client and reflected in the data generation of the server, thereby optimizing the quality of audio / video playback. Since data is transmitted by setting the packet interval at the bit rate, the prediction performance according to the increase of the bandwidth is improved, thereby increasing the network bandwidth utilization rate when the bandwidth is increased.

Description

적응적 스트리밍 장치 및 방법{Adaptive streamimg apparatus and method}Adaptive streamimg apparatus and method

도 1은 본 발명에 의한 적응적 스트리밍 장치의 개략적인 블럭도이다.1 is a schematic block diagram of an adaptive streaming apparatus according to the present invention.

도 2는 종래의 패킷 페어 방식을 설명하기 위한 도면이다.2 is a diagram for explaining a conventional packet pair method.

도 3은 본 발명에 의한 개선된 패킷 페어 방식을 설명하기 위한 도면이다.3 is a diagram illustrating an improved packet pair scheme according to the present invention.

도 4는 패킷 간격 설정을 설명하기 위한 도면이다.4 is a diagram for explaining packet interval setting.

도 5는 네트워크 수신 버퍼링의 점유 상태를 설명하기 위한 도면이다.5 is a diagram for describing an occupation state of network reception buffering.

도 6은 도 1에 도시된 서버의 본 발명에 의한 바람직한 일 실시예의 블럭도이다.6 is a block diagram of a preferred embodiment of the present invention of the server shown in FIG.

도 7은 도 1에 도시된 클라이언트의 본 발명에 의한 일 실시예의 블럭도이다.7 is a block diagram of an embodiment of the present invention of the client shown in FIG.

도 8은 도 7에 도시된 클라이언트측 스트리밍 엔진부의 본 발명에 의한 실시예의 블럭도이다.8 is a block diagram of an embodiment according to the present invention of the client-side streaming engine shown in FIG.

도 9는 본 발명에 의한 적응적 스트리밍 방법을 설명하기 위한 플로우차트이다.9 is a flowchart for explaining an adaptive streaming method according to the present invention.

본 발명은 주문형 비디오(VOD:Video On Demand), 주문형 음악(MOD:Music On Demand), 주문형 오디오(AOD:Audio On Demand) 또는 화상 통신 등과 같이 멀티 미디어(multimedia) 스트리밍(streaming) 기술을 사용하는 분야에 관한 것으로서, 특히, 스트리밍을 실시하는 스트리밍 장치 및 방법에 관한 것이다.The present invention utilizes multimedia streaming techniques such as Video On Demand (VOD), Music On Demand (MOD), Audio On Demand (AOD) or video communications. FIELD OF THE INVENTION Field of the Invention The present invention relates, in particular, to streaming devices and methods for performing streaming.

VOD나 MOD를 이용하여 멀티 미디어 컨텐츠를 스트리밍하여 재생할 때 버퍼링이 되는 동안 재생이 멈추는 현상을 자주 접할 수 있다. 이와 같이, 멀티 미디어 스트리밍 장치가 데이타를 재생하는 도중에 끊기는 이유는 다음과 같이 두 가지가 있다.When streaming multimedia content using VOD or MOD, it is often seen that playback stops while buffering. As such, there are two reasons why the multimedia streaming device is interrupted while playing data.

첫 번째 이유는 스트리밍하고자 하는 데이타의 비트율보다 네트워크의 대역폭이 작기 때문이다. 인터넷의 대역폭은 하나의 네트워크를 여러 명이 공유하여 사용하므로, 네트워크 트래픽(traffic) 발생량에 따라 사용할수 있는 대역폭(이하, 가용 대역폭이라 한다.)이 변하게 된다. 특히, 무선 네트워크(CDMA 또는 무선 랜)에서는 이동 속도에 따라서 가용 대역폭의 변화가 심하게 발생한다. 두 번째 이유는 처리할 데이타의 용량이 스트리밍 장치가 처리할 수 있는 한계를 넘기 때문이다.The first reason is that the network bandwidth is smaller than the bit rate of the data to be streamed. Since the bandwidth of the Internet is shared among several people, the available bandwidth (hereinafter, referred to as an available bandwidth) is changed according to the amount of network traffic. In particular, in a wireless network (CDMA or WLAN), a change in the available bandwidth occurs severely according to the moving speed. The second reason is that the amount of data to be processed exceeds the limit that the streaming device can handle.

전술한 첫 번째 이유를 해소하기 위해, 네트워크의 대역폭을 정확하게 예측하고, 예측된 대역폭을 이용하여 스트리밍하고자 하는 데이트의 비트율을 조정해야 한다. 이와 같이, 대역폭을 예측하는 종래의 방법들중 하나가 국내 특허 공개 번호 특2003-0016144에 "비디오 데이타 스트리밍 서비스 방법"이란 제목으로 개시되어 있다. 개시된 종래의 대역폭 예측 방법은 버퍼의 상태에 따라 주기적으로 대역폭을 예측한다. 그러나, 버퍼를 이용하여 대역폭을 예측하기 때문에, 종래의 대역폭 예측 방법은 대역폭을 정확히 측정하기 어려운 문제점을 갖는다. 게다가 개시된 종래의 대역폭 예측 방법은 특수한 네트워크에 국한되기 때문에 일반적인 네트워크에 적용하기 어려운 문제점을 갖는다.In order to solve the first reason described above, it is necessary to accurately predict the bandwidth of the network and adjust the bit rate of the data to be streamed using the predicted bandwidth. As such, one of the conventional methods for predicting bandwidth is disclosed in Korean Patent Publication No. 2003-0016144 entitled "Video Data Streaming Service Method". The disclosed conventional bandwidth prediction method predicts the bandwidth periodically according to the state of the buffer. However, since the bandwidth is predicted using the buffer, the conventional bandwidth prediction method has a problem that it is difficult to accurately measure the bandwidth. In addition, the disclosed conventional bandwidth prediction method is difficult to apply to a general network because it is limited to a special network.

본 발명이 이루고자 하는 기술적 과제는, 끊김없이(seamless) 멀티 미디어 데이타를 재생하도록 스트리밍을 실시하는 적응적 스트리밍 장치를 제공하는 데 있다.SUMMARY OF THE INVENTION An object of the present invention is to provide an adaptive streaming device that performs streaming to reproduce seamless multimedia data.

본 발명이 이루고자 하는 다른 기술적 과제는, 끊김없이(seamless) 멀티 미디어 데이타를 재생하도록 스트리밍을 실시하는 적응적 스트리밍 방법을 제공하는 데 있다.Another technical problem to be solved by the present invention is to provide an adaptive streaming method for performing streaming to play seamless multimedia data.

상기 과제를 이루기 위한 본 발명에 의한 적응적 스트리밍 장치는, 패킷화된 데이타를 스트리밍하는 스트리밍 경로와, 제어 신호에 응답하여 결정되는 제1 비트율로 데이타를 생성하고, 생성된 데이타를 패킷화하여 제2 비트율로 상기 스트리밍 경로를 통해 전송하는 서버 및 상기 패킷화된 데이타를 상기 스트리밍 경로의 상태에 따라 가변되는 제3 비트율로 수신하고, 상기 제3 비트율에 응답하여 상기 제어 신호를 생성하는 클라이언트로 구성되는 것이 바람직하다.According to an aspect of the present invention, there is provided an adaptive streaming apparatus, which generates data at a streaming path for streaming packetized data and a first bit rate determined in response to a control signal, and packetizes the generated data. A server that transmits the packetized data at a second bit rate at a second bit rate, and a client that receives the packetized data at a third bit rate that varies according to a state of the streaming path, and generates the control signal in response to the third bit rate. It is desirable to be.

상기 다른 과제를 이루기 위해, 전술한 적응적 스트리밍 장치에서 수행되는 본 발명에 의한 적응적 스트리밍 방법은, 상기 데이타의 전송이 요구될 때, 상기 클라이언트에서 결정된 상기 제1 비트율로 상기 데이타를 생성하는 단계와, 상기 생성된 데이타를 패킷화하여 상기 제2 비트율로 상기 클라이언트로 전송하는 단계와, 상기 서버로부터 전송된 상기 패킷화된 데이타를 상기 제3 비트율로 수신하는 단계와, 상기 수신된 데이타의 크기와 간격을 이용하여 결정한 상기 제3 비트율을 이용하여 상기 제1 비트율을 결정하는 단계 및 상기 데이타의 전송을 요구할 것인가를 판단하고, 상기 데이타의 전송을 상기 서버에게 요구할 것으로 판단되면, 상기 데이타를 생성하는 단계로 진행하는 단계로 이루어지는 것이 바람직하다.In order to achieve the above object, the adaptive streaming method according to the present invention performed in the above-described adaptive streaming device, when the transmission of the data is required, generating the data at the first bit rate determined by the client And packetizing the generated data to the client at the second bit rate, receiving the packetized data transmitted from the server at the third bit rate, and the size of the received data. Determining the first bit rate using the third bit rate determined by using and intervals, and determining whether to request the transmission of the data, and generating the data when it is determined that the server is requested to transmit the data. It is preferable that the step to proceed to the step.

이하, 본 발명에 의한 적응적 스트리밍 장치의 구성 및 동작을 첨부된 도면을 참조하여 다음과 같이 설명한다.Hereinafter, the configuration and operation of the adaptive streaming apparatus according to the present invention will be described with reference to the accompanying drawings.

도 1은 본 발명에 의한 적응적 스트리밍 장치의 개략적인 블럭도로서, 서버(10), 클라이언트(12) 및 스트리밍 경로(14)로 구성된다.1 is a schematic block diagram of an adaptive streaming apparatus according to the present invention, which comprises a server 10, a client 12, and a streaming path 14.

도 1에 도시된 스트리밍 경로(14)는 패킷화된 데이타를 스트리밍하는 역할을 한다. 서버(10)는 클라이언트(12)로부터 입력한 제어 신호에 응답하여 제1 비트율을 결정하고, 결정한 제1 비트율로 데이타를 생성하며, 생성된 데이타를 패킷화하여 제2 비트율로 스트리밍 경로(14)를 통해 클라이언트(12)로 전송한다.The streaming path 14 shown in FIG. 1 serves to stream packetized data. The server 10 determines a first bit rate in response to a control signal input from the client 12, generates data at the determined first bit rate, packetizes the generated data, and streams the streaming path 14 at a second bit rate. Send to the client 12 through.

이 때, 클라이언트(12)는 패킷화된 데이타를 스트리밍 경로(14)의 상태에 따라 가변되는 제3 비트율로 스트리밍 경로(14)를 통해 수신하고, 수신된 패킷화된 데이타를 재생하고, 제3 비트율에 응답하여 제어 신호를 생성하며, 생성된 제어 신호를 서버(10)로 스트리밍 경로(14)를 통해 전송한다.At this time, the client 12 receives the packetized data through the streaming path 14 at a third bit rate that varies according to the state of the streaming path 14, reproduces the received packetized data, and A control signal is generated in response to the bit rate, and the generated control signal is transmitted to the server 10 through the streaming path 14.

여기서, 네트워크의 대역폭을 정확하게 예측하기 위해서, 도 1에 도시된 서버(10)는 생성된 데이타를 적어도 세 개의 패킷들의 형태로 만들어서 제2 비트율에 의해 정한 패킷 간격으로 스트리밍 경로(14)를 통해 클라이언트(12)로 전송한다. 여기서, 생성된 데이타를 두 개의 패킷들의 형태로 만들어서 전송하는 종래의 패킷 페어(packet-pair) 방식과 달리, 본 발명에 의한 적응적 스트리밍 장치는 생성된 데이타를 세 개 이상의 패킷들의 형태로 만들어서 전송한다. 그 이유는 다음과 같다.Here, in order to accurately predict the bandwidth of the network, the server 10 shown in FIG. 1 makes the generated data in the form of at least three packets, and the client via the streaming path 14 at packet intervals determined by the second bit rate. Transfer to (12). Here, unlike the conventional packet-pair method of transmitting the generated data in the form of two packets, the adaptive streaming apparatus according to the present invention transmits the generated data in the form of three or more packets. do. The reason for this is as follows.

도 2는 종래의 패킷 페어 방식을 설명하기 위한 도면으로서, 서버(20), 클라이언트(22) 및 네트워크(24)로 구성된다.FIG. 2 is a diagram for explaining a conventional packet pair method, and is composed of a server 20, a client 22, and a network 24.

도 2에 도시된 종래의 패킷 페어 방식은 1999년 3월에 'Kevin Lai' 및 'Mary Baker'에 의해 발표되고 IEEE INFOCOM'99의 볼륨(Volume) 1의 페이지 239에 "Measuring Bandwidth"라는 제목으로 실린 논문에 개시되어 있다. 개시된 종래의 패킷 페어 방식은 도 2에 도시된 바와 같이, 일정한 크기를 갖는 2 개의 제1 및 제2 패킷들(30 및 32)을 시간 t1의 간격으로 서버(20)로부터 네트워크(24)를 통해 클라이언트(22)로 전송한다. 이 때, 네트워크(24)의 대역폭에 따라 패킷 간격이 변한다. 만일, 네트워크(24)의 대역폭이 서버(20)에서 전송하고자 하는 패킷들(30 및 32)의 비트율보다 적다면, 패킷들(34 및 36)의 간격(T1)은 더 벌어지게 된다. 그러나, 네트워크(24)의 대역폭이 패킷들(30 및 32)의 비트율 이상이라면, 패킷 간격(T1)은 변화가 없다. 도 2에 도시된 네트워크(24)의 대역폭(Bandwidth)은 다음 수학식 1과 같다.The conventional packet pair scheme shown in FIG. 2 is published by Kevin Lai and Mary Baker in March 1999 and entitled "Measuring Bandwidth" on page 239 of Volume 1 of IEEE INFOCOM'99. Published in a paper. The conventional packet pair scheme disclosed in FIG. 2 allows two networks of the first and second packets 30 and 32 having a constant size to be separated from the server 20 at a time t 1 . To the client 22 via a. At this time, the packet interval changes according to the bandwidth of the network 24. If the bandwidth of the network 24 is less than the bit rate of the packets 30 and 32 to be transmitted by the server 20, the interval T 1 of the packets 34 and 36 becomes wider. However, if the bandwidth of the network 24 is greater than or equal to the bit rates of the packets 30 and 32, then the packet interval T 1 remains unchanged. Bandwidth of the network 24 shown in FIG. 2 is expressed by Equation 1 below.

Figure 112003043481265-pat00001
Figure 112003043481265-pat00001

여기서, Size2는 제2 패킷(32)의 크기를 나타낸다.Here, Size2 represents the size of the second packet 32.

전술한 도 2에 도시된 종래의 패킷 페어는 2개의 패킷들(34 및 36)을 사용하여 대역폭을 예측하기 때문에, 하나의 패킷이 손실되더라도 대역폭을 측정할 수 없다. 또한, 전술한 종래의 패킷 페어 방식에 의해 예측된 대역폭(Bandwidth)은 현재 네트워크의 가용 대역폭과 네트워크가 가지고 있는 최대 대역폭 사이의 값이 된다. 네트워크(24)을 다른 패킷들과 공유하더라도 패킷 페어 사이에 다른 패킷들이 들어가지 않게 되면, 네트워크(24)가 갖는 최대 대역폭이 대역폭으로서 예측된다.Since the aforementioned packet pair shown in FIG. 2 uses two packets 34 and 36 to estimate the bandwidth, the bandwidth cannot be measured even if one packet is lost. In addition, the bandwidth predicted by the above-described conventional packet pair scheme is a value between the available bandwidth of the current network and the maximum bandwidth of the network. If the network 24 is shared with other packets but other packets do not enter between the packet pairs, the maximum bandwidth that the network 24 has is estimated as the bandwidth.

도 3은 본 발명에 의한 개선된 패킷 페어 방식을 설명하기 위한 도면으로서, 서버(40), 클라리언트(42) 및 네트워크(44)로 구성된다. 여기서, 서버(40)와 클라이언트(42)는 도 1에 도시된 서버(10)와 클라이언트(12)에 각각 해당한다.3 is a diagram illustrating an improved packet pair scheme according to the present invention, and is comprised of a server 40, a client 42, and a network 44. Here, the server 40 and the client 42 correspond to the server 10 and the client 12 shown in FIG. 1, respectively.

전술한 종래의 패킷 페어 방식의 문제점을 극복하기 위해, 본 발명에 의한 패킷 제어 방식에 의하면, 클라이언트(42)는 적어도 세 개의 패킷들(60, 62, ... 및 64)을 사용하여 네트워크(44)의 대역폭을 측정한다. 이를 위해, 서버(40)는 적어도 세 개의 패킷들(50, 52, ... 및 54)들을 네트워크(44)를 통해 클라이언트(42)로 전송한다. 이와 같이, 본 발명에 의한 패킷 제어 방식은 적어도 세 개의 패킷들(60, 62, ... 및 64)을 사용하여 네트워크(44)의 대역폭을 측정하기 때문에 어느 패킷의 손실이 발생해도 네트워크(44)의 대역폭을 측정할 수 있으며, 가용 대역폭이 측정될 확률이 높다. 도 3에 도시된 패킷 페어 방식에 의해 측정된 대역폭(Bandwidth)은 다음 수학식 2와 같다.In order to overcome the problems of the conventional packet pair scheme described above, according to the packet control scheme according to the present invention, the client 42 uses at least three packets 60, 62,. Measure the bandwidth of 44). To this end, the server 40 sends at least three packets 50, 52,..., And 54 to the client 42 via the network 44. As such, the packet control scheme according to the present invention measures the bandwidth of the network 44 using at least three packets 60, 62, ..., and 64, so that no loss of any packets occurs. ) Can be measured, and the available bandwidth is likely to be measured. The bandwidth measured by the packet pair method shown in FIG. 3 is represented by Equation 2 below.

Figure 112003043481265-pat00002
Figure 112003043481265-pat00002

여기서, Size2, Size3, ... 및 SizeN은 패킷들{(50, 52, ... 및 54) 또는 (60, 62, ... 및 64)} 각각의 크기를 나타내고, N은 3 이상의 양의 정수를 나타내고, T1, T2, ... 및 TN은 패킷들간의 간격을 나타낸다. 즉, T1은 패킷들(60 및 62) 간의 간격을 나타낸다.Where Size2, Size3, ... and SizeN represent the size of each of the packets {(50, 52, ... and 54) or (60, 62, ... and 64)}, where N is an amount greater than or equal to 3 And T 1 , T 2 ,... And T N represent the intervals between the packets. That is, T 1 represents the spacing between packets 60 and 62.

도 4는 패킷 간격 설정을 설명하기 위한 도면으로서, 제1, 제2, 제3 엑세스 유닛(AU:Access Unit)들(80, 82, 84, ...)과 제1, 제2, 제3 패킷(Packet)들(Packet1, Packet2, Packet3, ...)(90, 92, 94, ...)로 구성된다.FIG. 4 is a diagram for describing packet interval setting, and includes first, second, and third access units 80, 82, 84, ..., and first, second, and third access units. It consists of packets (Packet1, Packet2, Packet3, ...) (90, 92, 94, ...).

본 발명에 의하면, 네트워크의 대역폭 증가에 대한 대역폭 예측 성능을 개선하기 위해서, 패킷을 전송할 때 클라이언트(12)에서 요청한 제1 비트율보다 높은 제2 비트율로 패킷 간격을 정하여 데이타를 전송할 수 있다. 즉, 제2 비트율은 제1 비트율 이상이 될 수 있다. 도 4에 도시된 바와 같이, 클라이언트(12)에서 요청한 제1 비트율로 생성된 데이타들(80, 82, ... 및 84)은 타임 스탬프(TS:Time Stamp)들(TS1, TS2, TS3, ...)을 각각 갖는다.According to the present invention, in order to improve the bandwidth prediction performance for increasing the bandwidth of the network, when transmitting a packet, the data can be transmitted by setting a packet interval at a second bit rate higher than the first bit rate requested by the client 12. That is, the second bit rate may be equal to or greater than the first bit rate. As shown in FIG. 4, the data 80, 82,..., And 84 generated at the first bit rate requested by the client 12 are time stamps TS 1 , TS 2 ,. TS 3 , ...) respectively.

서버(10)로부터 클라이언트(12)로 전송되는 패킷들간의 간격은 엑세스 유닛의 타임 스탬프를 이용하여 결정된다. 이 때, 도 4에 도시된 바와 같이, 서버(10)에서 데이타를 패킷화하여 전송할 때 타임 스탬프를 이용하여 전송할 때의 간격보다 적은 간격으로 패킷화된 데이타들을 전송하면, 즉, 클라이언트(12)에서 요청한 제1 비트율 이상의 제2 비트율로 패킷화된 데이타들이 전송하면, 전송율은 실제 엑세스 유닛의 비트율보다 커지게 되므로, 현재 전송되고 있는 엑세스 유닛의 비트율보다 높은 대역폭까지 측정이 가능하게 된다. 그러므로, 대역폭 증가에 대한 대역폭 예측 성능이 개선된다.The interval between packets transmitted from the server 10 to the client 12 is determined using the time stamp of the access unit. In this case, as shown in FIG. 4, when the server 10 packetizes and transmits data, the packetized data is transmitted at intervals smaller than an interval when the packet is transmitted using a time stamp, that is, the client 12. When data packetized at a second bit rate equal to or greater than the first bit rate requested by, the transmission rate is greater than the actual bit rate of the access unit, and thus measurement is possible up to a bandwidth higher than that of the currently transmitted access unit. Therefore, bandwidth prediction performance for bandwidth increase is improved.

예를 들어, 제1 AU(80)의 타임 스탬프(TS1)가 100㎳이고, 제2 AU(82)의 타임 스탬프(TS2)가 200㎳이고, 제3 AU(84)의 타임 스탬프(TS3)가 300㎳이고, t1, t2 및 t3가 각각 100㎳, 150㎳, 200㎳라고 가정하자. 즉, 엑세스 유닛들의 타임 스탬프들간의 간격이 100㎳이고 50㎳의 간격으로 데이타를 패킷화하여 전송한다고 가정할 경우, AU의 제1 비트율보다 2배 높은 제2 비트율로 전송된다. 그러므로, 클라이언트(12)측에서는 제1 비트율보다 2배 높은 제2 비트율까지 대역폭 측정이 가능해진다.For example, the time stamp TS 1 of the first AU 80 is 100 ms, the time stamp TS 2 of the second AU 82 is 200 ms, and the time stamp TS of the third AU 84 is determined. Assume that TS 3 ) is 300 ms and t1, t2 and t3 are 100 ms, 150 ms and 200 ms, respectively. That is, assuming that the interval between the time stamps of the access units is 100 ms and packetizes data at intervals of 50 ms, it is transmitted at a second bit rate higher than twice the first bit rate of the AU. Therefore, on the client 12 side, bandwidth measurement is possible up to a second bit rate which is twice as high as the first bit rate.

도 5는 네트워크 수신 버퍼링의 점유 상태를 설명하기 위한 도면으로서, 버퍼(100)로 구성된다.FIG. 5 is a diagram for explaining the occupancy state of network reception buffering, and is composed of a buffer 100.

본 발명에 의하면, 도 1에 도시된 클라이언트(12)는 제어 신호를 생성할 때 제3 비트율 뿐만 아니라 네트워크 수신 버퍼링의 공간을 고려할 수도 있다. 여기서, 네트워크 수신 버퍼링의 공간이란, 클라이언트(12)의 내부에 마련되는 버퍼(100)가 버퍼링할 수 있는 공간을 의미한다. 여기서, 버퍼(100)는 스트리밍 경로(14)를 통해 수신된 패킷화된 데이타를 역 패킷화(depacketization)하여 생성한 엑세스 유닛을 버퍼링하고, 버퍼링된 결과를 복호화부(미도시)로 전송하는 역할을 한다. 여기서, 복호화부는 버퍼링된 결과를 복호화하는 역할을 한다.According to the present invention, the client 12 shown in FIG. 1 may take into account the space of the network reception buffering as well as the third bit rate when generating the control signal. Here, the space for network reception buffering means a space that the buffer 100 provided in the client 12 can buffer. Here, the buffer 100 buffers an access unit generated by depacketizing packetized data received through the streaming path 14 and transmits the buffered result to a decoder (not shown). Do it. Here, the decoder plays a role of decoding the buffered result.

먼저, 도 5에 도시된 버퍼(100)에서 네트워크 수신 버퍼링의 하한선(LBL:Low Buffer Limit)과 상한선(UBL:Upper Buffer Limit)을 설정한다. 만일, 버퍼(100)의 점유 상태 즉, 점유율이 LBL이하일 경우 현재 측정된 대역폭보다 적은 비트율로 제어 신호를 발생하고, 점유율이 UBL이상일 경우 현재 측정된 대역폭보다 높은 비트율로 제어 신호를 발생한다. 따라서, 버퍼 점유율이 LBL과 UBL 사이의 값으로 유지될 수 있다.First, the lower limit (LBL: Low Buffer Limit) and the upper limit (UBL: Upper Buffer Limit) of the network reception buffering are set in the buffer 100 shown in FIG. 5. If the occupied state of the buffer 100, that is, the occupancy is less than or equal to LBL, the control signal is generated at a bit rate smaller than the currently measured bandwidth. If the occupancy is greater than or equal to UBL, the control signal is generated at a bit rate higher than the currently measured bandwidth. Thus, the buffer occupancy can be maintained at a value between LBL and UBL.

한편, 도 1에 도시된 서버(10)는 계층 부호화, 변환 부호(trans-coding)화 또는 실시간 부호화를 통해 데이타를 제1 비트율로 생성할 수 있다.Meanwhile, the server 10 illustrated in FIG. 1 may generate data at a first bit rate through hierarchical encoding, trans-coding, or real-time encoding.

이하, 도 1에 도시된 적응적 스트리밍 장치의 본 발명에 의한 일 실시예의 구성 및 동작을 첨부한 도면들을 참조하여 다음과 같이 설명한다.Hereinafter, with reference to the accompanying drawings the configuration and operation of an embodiment of the present invention of the adaptive streaming device shown in Figure 1 will be described as follows.

도 6은 도 1에 도시된 서버(10)의 본 발명에 의한 바람직한 일 실시예(10A)의 블럭도로서, 저장부(130), 부호화부(132), 전처리부(134), 변환부(136) 및 서버측 스트리밍 엔진부(138)로 구성된다.6 is a block diagram of a preferred embodiment 10A of the server 10 shown in FIG. 1 according to the present invention, which includes a storage unit 130, an encoding unit 132, a preprocessor 134, and a conversion unit ( 136 and a server side streaming engine 138.

도 6에 도시된 저장부(130)는 부호화된 데이타를 저장한다. 이 때, 전 처리부(134)는 부호화부(132)에서 부호화하기 전의 모든 과정 즉, 마이크(미도시) 또는 카메라(미도시)로부터 데이타 입력이나 부호화 이전의 색상 변환 과정등 모든 처리 과정을 처리할 수 있다.The storage unit 130 shown in FIG. 6 stores encoded data. At this time, the preprocessing unit 134 may process all processes before encoding by the encoder 132, that is, all processes such as data input from a microphone or a camera (not shown) or color conversion before encoding. Can be.

부호화부(132)는 전 처리부(134)에서 전처리된 데이타를 입력하고, 변환부(136)로부터 제1 비트율에 대한 정보를 입력하며, 전 처리된 데이타를 제1 비트율로 부호화하며, 부호화된 결과를 변환부(136)로 출력한다. 여기서, 부호화된 데이타란 전술한 엑세스 유닛에 해당한다.The encoder 132 inputs data preprocessed by the preprocessor 134, inputs information about the first bit rate from the converter 136, encodes the preprocessed data at the first bit rate, and encodes the result. Is output to the conversion unit 136. Here, the encoded data corresponds to the aforementioned access unit.

이 때, 변환부(136)는 저장부(130) 또는 부호화부(132)로부터 입력한 부호화된 데이타를 서버측 스트리밍 엔진부(138)로부터 입력한 비트율 정보에 포함된 제1 비트율로 변환하고, 변환된 결과를 서버측 스트리밍 엔진부(138)로 출력한다.At this time, the conversion unit 136 converts the encoded data input from the storage unit 130 or the encoding unit 132 into the first bit rate included in the bit rate information input from the server-side streaming engine unit 138, The converted result is output to the server-side streaming engine unit 138.

이 때, 서버측 스트리밍 엔진부(138)는 클라이언트(12)로부터 입력단자 IN1을 통해 입력한 제어 신호로부터 비트율 정보를 추출하여 변환부(136)로 출력하고, 변환부(136)에서 변환된 결과를 패킷화하여 제2 비트율로 출력단자 OUT1을 거쳐 스트리밍 경로(14)를 통해 클라이언트(12)로 전송한다. 이를 위해, 서버측 스트리밍 엔진부(138)는 제어 신호 수신부(140) 및 데이타 송신부(142)로 구현될 수 있다. 여기서, 제어 신호 수신부(140)는 클라이언트(12)로부터 입력단자 IN1을 통해 입력한 제어 신호로부터 비트율 정보를 추출하고, 추출된 비트율 정보를 변환부(136)로 출력한다. 데이타 송신부(142)는 변환부(136)에서 변환된 결과를 입력하여 패킷화하고, 패킷화된 결과를 제2 비트율로 출력단자 OUT1을 거쳐 스트리밍 경로(14)를 통해 클라이언트(12)로 전송한다.At this time, the server-side streaming engine unit 138 extracts the bit rate information from the control signal input from the client 12 through the input terminal IN1, outputs it to the converter 136, and converts the result from the converter 136. Is packetized and transmitted to the client 12 via the streaming path 14 via the output terminal OUT1 at the second bit rate. To this end, the server-side streaming engine unit 138 may be implemented as a control signal receiver 140 and a data transmitter 142. Here, the control signal receiver 140 extracts bit rate information from the control signal input from the client 12 through the input terminal IN1, and outputs the extracted bit rate information to the converter 136. The data transmitter 142 inputs the packetized result from the converter 136 and packetizes it, and transmits the packetized result to the client 12 through the streaming path 14 through the output terminal OUT1 at the second bit rate. .

도 7은 도 1에 도시된 클라이언트(12)의 본 발명에 의한 일 실시예(12A)의 블럭도로서, 클라이언트측 스트리밍 엔진부(150), 복호화부(152) 및 렌더링(rendering)부(154)로 구성된다.FIG. 7 is a block diagram of an embodiment 12A according to the present invention of the client 12 shown in FIG. 1, which includes a client-side streaming engine 150, a decoder 152, and a rendering unit 154. It is composed of

도 7에 도시된 클라이언트측 스트리밍 엔진부(150)는 입력단자 IN2를 통해 제3 비트율로 수신된 패킷화된 데이타를 역 패킷화하고, 역 패킷화된 결과를 복호화부(152)로 출력한다. 또한, 클라이언트측 스트리밍 엔진부(150)는 제3 비트율에 응답하여 제어 신호를 생성하고, 생성된 제어 신호를 출력단자 OUT2를 통해 서버(10)로 전달한다.The client-side streaming engine 150 shown in FIG. 7 inversely packetizes the packetized data received at the third bit rate through the input terminal IN2 and outputs the inverse packetized result to the decoding unit 152. In addition, the client-side streaming engine unit 150 generates a control signal in response to the third bit rate, and transmits the generated control signal to the server 10 through the output terminal OUT2.

도 8은 도 7에 도시된 클라이언트측 스트리밍 엔진부(150)의 본 발명에 의한 실시예(154A)의 블럭도로서, 데이타 수신부(170), 네트워크 상태 결정부(172), 제어 신호 생성부(174), 제어 신호 송신부(176) 및 버퍼(178)로 구성된다. 여기서, 버퍼(178)는 도 5에 도시된 버퍼(100)에 해당한다.FIG. 8 is a block diagram of an embodiment 154A of the client-side streaming engine unit 150 shown in FIG. 7 according to the present invention, which includes a data receiver 170, a network state determiner 172, and a control signal generator ( 174, a control signal transmitter 176, and a buffer 178. Here, the buffer 178 corresponds to the buffer 100 illustrated in FIG. 5.

도 8에 도시된 데이타 수신부(170)는 패킷화된 데이타를 제3 비트율로 입력단자 IN3을 통해 수신하여 역 패킷화하고, 역 패킷화된 결과를 버퍼(178)로 출력한다. 또한, 데이타 수신부(170)는 입력단자 IN3을 통해 수신된 패킷화된 데이타의 크기와 간격을 네트워크 상태 결정부(172)로 출력한다.The data receiving unit 170 shown in FIG. 8 receives the packetized data through the input terminal IN3 at a third bit rate, depackets the packet, and outputs the depacketized result to the buffer 178. In addition, the data receiver 170 outputs the size and interval of the packetized data received through the input terminal IN3 to the network state determiner 172.

네트워크 상태 결정부(172)는 패킷화된 데이타의 크기와 간격을 데이타 수신부(170)로부터 수신하고, 수신한 크기와 간격에 따라 제3 비트율을 결정하며, 결정된 제3 비트율을 제어 신호 생성부(714)로 출력한다. 즉, 네트워크 상태 결정부(172)는 수신한 크기와 간격에 따라 대역폭을 측정한다. 이 때, 제어 신호 생성부(174)는 네트워크 상태 결정부(172)에서 결정한 제3 비트율을 이용하여 제어 신호를 생성하고, 생성된 제어 신호를 제어 신호 송신부(176)로 출력한다. 이 때, 클라이언트측 스트리밍 엔진부(154A)는 데이타 수신부(170)로부터 입력한 역 패킷화된 결과를 버퍼링하여 복호화부(178)로 출력단자 OUT5를 통해 출력하는 버퍼(178)를 더 마련할 수 있다. 이 경우, 제어 신호 생성부(174)는 네트워크 상태 결정부(172)로부터 입력한 제3 비트율 및 버퍼(178)의 버퍼링 상태를 이용하여 제어 신호를 생성하고, 생성된 제어 신호를 제어 신호 송신부(176)로 출력한다. 이 때, 제어 신호 송신부(176)는 생성된 제어 신호를 출력단자 OUT4를 통해 서버(10)로 전달하는 역할을 한다.The network state determiner 172 receives the size and interval of the packetized data from the data receiver 170, determines a third bit rate according to the received size and interval, and determines the determined third bit rate as a control signal generator ( 714). That is, the network state determiner 172 measures the bandwidth according to the received size and interval. At this time, the control signal generator 174 generates a control signal using the third bit rate determined by the network state determiner 172, and outputs the generated control signal to the control signal transmitter 176. At this time, the client-side streaming engine unit 154A may further provide a buffer 178 for buffering the inverse packetized result input from the data receiving unit 170 and outputting the output through the output terminal OUT5 to the decoding unit 178. have. In this case, the control signal generator 174 generates a control signal using the third bit rate input from the network state determiner 172 and the buffering state of the buffer 178, and generates the control signal using the control signal transmitter ( 176). At this time, the control signal transmitter 176 transmits the generated control signal to the server 10 through the output terminal OUT4.

한편, 도 7에 도시된 복호화부(152)는 클라이언트측 스트리밍 엔진부(150)에서 역 패킷화된 결과를 입력하여 복호화하고, 복호화된 결과를 렌더링부(154)로 출력한다. 이 때, 렌더링부(154)는 복호화부(152)에서 복호화된 결과를 렌더링하여 재생하고, 렌더링된 결과를 출력단자 OUT3을 통해 출력한다.Meanwhile, the decoder 152 illustrated in FIG. 7 inputs and decodes the depacketized result from the client-side streaming engine 150 and outputs the decoded result to the renderer 154. At this time, the rendering unit 154 renders and reproduces the result decoded by the decoding unit 152 and outputs the rendered result through the output terminal OUT3.

이하, 본 발명에 의한 적응적 스트리밍 방법을 첨부한 도면을 참조하여 다음과 같이 설명한다.Hereinafter, an adaptive streaming method according to the present invention will be described with reference to the accompanying drawings.

도 9는 본 발명에 의한 적응적 스트리밍 방법을 설명하기 위한 플로우차트로서, 데이타의 전송이 요구될 때, 서버(10)에서 데이타를 생성하여 클라이언트(12)로 전송하는 단계(제190 ~ 제194 단계들) 및 전송된 데이타를 수신하는 단계(제196 ~ 제200 단계들)로 이루어진다.9 is a flowchart illustrating an adaptive streaming method according to the present invention. When data transmission is required, the server 10 generates data and transmits the data to the client 12 (190 to 194). Steps) and receiving the transmitted data (steps 196 to 200).

본 발명에 의한 적응적 스트리밍 방법은, 데이타의 전송이 요구되는가를 판단한다(제190 단계). 즉, 데이타를 전송해 줄 것을 클라이언트(12)가 서버(10)에게 비트율 정보를 보내면서 요구하는가를 판단한다. 만일, 데이타의 전송을 요구하는 것으로 판단되면, 클라이언트(12)에서 결정된 제1 비트율로 데이타를 생성한다(제192 단계). 즉, 서버(10)는 비트율 정보로부터 제1 비트율을 추출하고, 추출된 제1 비트율로 데이타를 생성한다.In the adaptive streaming method according to the present invention, it is determined whether data transmission is required (step 190). That is, it is determined whether the client 12 requests to transmit the data while sending the bit rate information to the server 10. If it is determined that the data transmission is required, the client 12 generates data at the first bit rate determined in operation 192. That is, the server 10 extracts the first bit rate from the bit rate information, and generates data at the extracted first bit rate.

제192 단계후에, 서버(10)는 생성된 데이타를 패킷화하여 제2 비트율로 클라이언트(12)로 스트리밍 경로(14)를 통해 전송한다(제194 단계).After operation 192, the server 10 packetizes the generated data and transmits the generated data to the client 12 through the streaming path 14 at the second bit rate (operation 194).

제194 단계후에, 클라이언트(12)는 서버(10)로부터 전송된 패킷화된 데이타를 제3 비트율로 수신한다(제196 단계). 제196 단계후에, 클라이언트(12)는 수신된 데이타의 크기와 간격을 이용하여 제3 비트율을 결정하고, 결정한 제3 비트율을 이용하여 제1 비트율을 결정한다(제198 단계).After operation 194, the client 12 receives packetized data transmitted from the server 10 at a third bit rate (operation 196). After operation 196, the client 12 determines a third bit rate using the size and interval of the received data, and determines the first bit rate using the determined third bit rate (step 198).

제198 단계후에, 클라이언트(12)는 데이타의 전송을 서버(10)에게 요구할 것인가를 판단한다(제200 단계). 만일 클라이언트(12)가 데이타의 전송을 서버(10)에게 요구하는 것으로 판단되면, 서버(10)는 제198 단계에서 결정된 제1 비트율로 데이타를 생성한다(제192 단계).After step 198, the client 12 determines whether to request the server 10 to transmit data (step 200). If it is determined that the client 12 requests the server 10 to transmit the data, the server 10 generates data at the first bit rate determined in step 198 (step 192).

이상에서 설명한 바와 같이, 본 발명에 의한 적응적 스트리밍 장치 및 방법은 스트리밍하면서 네트워크의 대역폭을 자동으로 인식하여 스트리밍하고자 하는 멀티 미디어 데이타의 비트율을 변경시킴으로서 멀티 미디어 데이타를 끊김없이 재생할 수 있도록 하고 즉, 버퍼링 현상이 없이 지속적인 재생을 가능하게 하고 망 혼잡으로 인한 패킷의 지연과 손실을 최소화할 수 있도록 하고, 클라이언트의 버퍼 상태에 따라 제어 신호를 달리 발생하여 이를 서버의 데이타 생성에 반영시키므로써 오디오/비디오 재생의 품질을 최적화시킬 수 있고, 제1 비트율 이상의 제2 비트율로 패킷 간격을 정하여 데이타를 전송하므로 대역폭 증가에 따른 예측 성능을 개선해서 대역폭 증가시에 네트워크 대역폭 활용율을 높일 수 있는 효과를 갖는다.As described above, the adaptive streaming apparatus and method according to the present invention allow the multimedia data to be played back seamlessly by changing the bit rate of the multimedia data to be streamed by automatically recognizing the bandwidth of the network while streaming. It enables continuous playback without buffering, minimizes delay and loss of packets due to network congestion, and generates control signals according to the buffer status of the client and reflects them in the data generation of the server. Since the quality of reproduction can be optimized and data is transmitted by setting the packet interval at the second bit rate more than the first bit rate, the prediction performance according to the bandwidth increase can be improved to increase the network bandwidth utilization rate when the bandwidth is increased.

Claims (10)

패킷화된 데이타를 스트리밍하는 스트리밍 경로;A streaming path for streaming packetized data; 제어 신호에 응답하여 결정되는 제1 비트율로 데이타를 생성하고, 생성된 데이타를 패킷화하여 상기 제1 비트율 이상인 제2 비트율로 상기 스트리밍 경로를 통해 전송하는 서버; 및A server for generating data at a first bit rate determined in response to a control signal, packetizing the generated data, and transmitting the packetized data through the streaming path at a second bit rate equal to or greater than the first bit rate; And 상기 패킷화된 데이타를 상기 스트리밍 경로의 상태에 따라 가변되는 제3 비트율로 수신하고, 상기 제3 비트율에 응답하여 상기 제어 신호를 생성하는 클라이언트를 구비하는 것을 특징으로 하는 적응적 스트리밍 장치.And a client configured to receive the packetized data at a third bit rate that varies according to the state of the streaming path, and generate the control signal in response to the third bit rate. 제1 항에 있어서, 상기 클라이언트는 상기 제3 비트율과 네트워크 수신 버퍼링의 공간에 상응하여 상기 제어 신호를 생성하는 것을 특징으로 하는 적응적 스트리밍 장치.The adaptive streaming apparatus of claim 1, wherein the client generates the control signal corresponding to the third bit rate and a space of network reception buffering. 삭제delete 제1 항에 있어서, 상기 서버는The method of claim 1, wherein the server 계층 부호화, 변환 부호화 또는 실시간 부호화를 통해 상기 데이타를 상기 제1 비트율로 생성하는 것을 특징으로 하는 적응적 스트리밍 장치.Adaptive streaming apparatus, characterized in that for generating the data at the first bit rate through hierarchical encoding, transform encoding or real-time encoding. 제1 항에 있어서, 상기 서버는The method of claim 1, wherein the server 상기 생성된 데이타를 적어도 세 개의 패킷들의 형태로 만들어서 상기 제2 비트율로 정한 패킷 간격으로 상기 스트리밍 경로를 통해 상기 클라이언트로 전송하는 것을 특징으로 하는 적응적 스트리밍 장치.And generating the generated data in the form of at least three packets and transmitting the generated data to the client through the streaming path at a packet interval determined by the second bit rate. 제1 항에 있어서, 상기 서버는The method of claim 1, wherein the server 부호화된 데이타를 저장하는 저장부;A storage unit for storing encoded data; 전처리된 데이타를 상기 제1 비트율로 부호화하는 부호화부;An encoding unit encoding preprocessed data at the first bit rate; 상기 저장부 또는 상기 부호화부로부터 입력한 부호화된 데이타를 비트율 정보에 포함된 상기 제1 비트율로 변환하는 변환부; 및A converter for converting the encoded data input from the storage unit or the encoder to the first bit rate included in bit rate information; And 상기 클라이언트로부터 입력한 상기 제어 신호로부터 상기 비트율 정보를 추출하여 상기 변환부로 출력하고, 상기 변환부에서 변환된 결과를 패킷화하여 상기 제2 비트율로 상기 스트리밍 경로를 통해 전송하는 서버측 스트리밍 엔진부를 구비하는 것을 특징으로 하는 적응적 스트리밍 장치.The server-side streaming engine unit extracts the bit rate information from the control signal input from the client, outputs the bit rate information to the converter, and packetizes the result converted by the converter to transmit the packet at the second bit rate through the streaming path. Adaptive streaming device, characterized in that. 제1 항에 있어서, 상기 클라이언트는The method of claim 1, wherein the client is 상기 제3 비트율로 수신된 상기 패킷화된 데이타를 역 패킷화하고, 상기 제3 비트율에 응답하여 상기 제어 신호를 생성하여 상기 서버로 전달하는 클라이언트측 스트리밍 엔진부;A client-side streaming engine unit for inversely packetizing the packetized data received at the third bit rate, and generating and transmitting the control signal to the server in response to the third bit rate; 상기 역 패킷화된 결과를 복호화하는 복호화부; 및A decoder which decodes the inverse packetized result; And 상기 복호화된 결과를 렌더링하는 렌더링부를 구비하는 것을 특징으로 하는 적응적 스트리밍 장치.And an rendering unit for rendering the decoded result. 제7 항에 있어서, 상기 클라이언트측 스트리밍 엔진부는The method of claim 7, wherein the client-side streaming engine unit 상기 패킷화된 데이타를 상기 제3 비트율로 수신하여 역 패킷화하고, 상기 수신된 패킷화된 데이타의 크기와 간격을 출력하는 데이타 수신부;A data receiver configured to receive the packetized data at the third bit rate, depacketize the packetized data, and output a size and an interval of the received packetized data; 상기 수신된 패킷화된 데이타의 크기와 간격에 따라 제3 비트율을 결정하는 네트워크 상태 결정부;A network state determination unit to determine a third bit rate according to the size and interval of the received packetized data; 결정한 상기 제3 비트율을 이용하여 상기 제어 신호를 생성하는 제어 신호 생성부; 및A control signal generator configured to generate the control signal using the determined third bit rate; And 상기 생성된 제어 신호를 상기 서버로 전달하는 제어 신호 송신부를 구비하는 것을 특징으로 하는 적응적 스트리밍 장치.And a control signal transmitter for transmitting the generated control signal to the server. 제8 항에 있어서, 상기 클라이언트측 스트리밍 엔진부는The method of claim 8, wherein the client-side streaming engine unit 상기 데이타 수신부로부터 입력한 상기 역 패킷화된 결과를 버퍼링하여 상기 복호화부로 출력하는 버퍼를 더 구비하고,And a buffer for buffering the de-packetized result inputted from the data receiver and outputting the buffered result to the decoder. 상기 제어 신호 생성부는 상기 제3 비트율 및 상기 버퍼의 버퍼링 상태를 이용하여 상기 제어 신호를 생성하는 것을 특징으로 하는 적응적 스트리밍 장치.And the control signal generator generates the control signal using the third bit rate and the buffering state of the buffer. 제1 항의 스트리밍 장치에서 수행되는 적응적 스트리밍 방법에 있어서,In the adaptive streaming method performed in the streaming device of claim 1, 상기 데이타의 전송이 요구될 때, 상기 클라이언트에서 결정된 상기 제1 비트율로 상기 데이타를 생성하는 단계;When the transmission of the data is required, generating the data at the first bit rate determined at the client; 상기 생성된 데이타를 패킷화하여 상기 제1 비트율 이상인 제2 비트율로 상기 클라이언트로 전송하는 단계;Packetizing the generated data and transmitting the packetized data to the client at a second bit rate equal to or greater than the first bit rate; 상기 서버로부터 전송된 상기 패킷화된 데이타를 상기 제3 비트율로 수신하는 단계;Receiving the packetized data transmitted from the server at the third bit rate; 상기 수신된 데이타의 크기와 간격을 이용하여 결정한 상기 제3 비트율을 이용하여 상기 제1 비트율을 결정하는 단계; 및Determining the first bit rate using the third bit rate determined using the size and interval of the received data; And 상기 데이타의 전송을 요구할 것인가를 판단하고, 상기 데이타의 전송을 상기 서버에게 요구할 것으로 판단되면, 상기 데이타를 생성하는 단계로 진행하는 단계를 구비하는 것을 특징으로 하는 적응적 스트리밍 방법.And determining whether to request the transmission of the data, and if it is determined that the server should request the transmission of the data, proceeding to generating the data.
KR1020030081723A 2003-11-18 2003-11-18 Adaptive streamimg apparatus and method KR100601934B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030081723A KR100601934B1 (en) 2003-11-18 2003-11-18 Adaptive streamimg apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030081723A KR100601934B1 (en) 2003-11-18 2003-11-18 Adaptive streamimg apparatus and method

Publications (2)

Publication Number Publication Date
KR20050047920A KR20050047920A (en) 2005-05-23
KR100601934B1 true KR100601934B1 (en) 2006-07-14

Family

ID=37246801

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030081723A KR100601934B1 (en) 2003-11-18 2003-11-18 Adaptive streamimg apparatus and method

Country Status (1)

Country Link
KR (1) KR100601934B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013022316A1 (en) * 2011-08-11 2013-02-14 Samsung Electronics Co., Ltd. Apparatus and method for providing streaming service
KR101638509B1 (en) 2015-04-14 2016-07-12 고려대학교 산학협력단 Apparatus and method for mobile multimedia streaming services
KR102019654B1 (en) 2018-10-02 2019-09-09 전남대학교산학협력단 Method for switching adaptive streaming server

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050005025A1 (en) * 2003-07-04 2005-01-06 Michael Harville Method for managing a streaming media service
KR101937449B1 (en) * 2012-10-08 2019-01-11 에스케이텔레콤 주식회사 Method and apparatus for providing adaptively video service
US9462032B2 (en) 2013-07-24 2016-10-04 Google Inc. Streaming media content
KR102270034B1 (en) * 2014-09-30 2021-06-28 삼성전자주식회사 Apparatus and method for receiving streaming service data in mobile communication system supporting a plurality of radio access interfaces
US20160373509A1 (en) 2015-06-16 2016-12-22 Sk Telecom Co., Ltd. APPARATUS AND METHOD FOR REPORTING QoS/QoE IN MOBILE ENVIRONMENT
KR20170130253A (en) 2016-05-18 2017-11-28 에스케이텔레콤 주식회사 Method for providing of adaptive streaming service and apparatus therefor
KR101915469B1 (en) 2016-11-29 2018-11-06 에스케이텔레콤 주식회사 Method for providing of streamming service and apparatus for the same

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013022316A1 (en) * 2011-08-11 2013-02-14 Samsung Electronics Co., Ltd. Apparatus and method for providing streaming service
KR101638509B1 (en) 2015-04-14 2016-07-12 고려대학교 산학협력단 Apparatus and method for mobile multimedia streaming services
KR102019654B1 (en) 2018-10-02 2019-09-09 전남대학교산학협력단 Method for switching adaptive streaming server

Also Published As

Publication number Publication date
KR20050047920A (en) 2005-05-23

Similar Documents

Publication Publication Date Title
JP3740113B2 (en) Real-time multimedia streaming system and method adapted to network
US7652994B2 (en) Accelerated media coding for robust low-delay video streaming over time-varying and bandwidth limited channels
CN1981492B (en) Buffer level signaling for rate adaptation in multimedia streaming
US8489758B2 (en) Method of transmitting data in a communication system
KR101727450B1 (en) Reducing delay in video telephony
US20050094628A1 (en) Optimizing packetization for minimal end-to-end delay in VoIP networks
US7111058B1 (en) Server and method for transmitting streaming media to client through a congested network
JP4748729B2 (en) Apparatus and method for preparing to transmit data and corresponding products
CN102395027A (en) System and method for transferring multiple data channels
KR20060011964A (en) Method and device for proactive rate adaptation signaling
WO2008023303A2 (en) Jitter buffer adjustment
RU2598805C2 (en) Method for dynamic adaptation of repetition frequency of bits when receiving and appropriate receiver
CN100521646C (en) Data communications method and system for transmitting multiple data streams calculating available bandwidth per stream and bit stream trade-off
KR100601934B1 (en) Adaptive streamimg apparatus and method
WO2005039180A1 (en) Medium signal transmission method, reception method, transmission/reception method, and device
KR20230002784A (en) Methods and servers for transmitting audio and/or video content
KR20100007368A (en) System for controlling bit rate of streaming service and method thereof
US7986634B2 (en) Apparatus and method for measuring quality of sound encoded with a variable band multi-codec
CN112911650A (en) Mobile high-definition video intelligent bidirectional detection bandwidth control system
JP2006511162A (en) Multi-track hinting in receiver-driven streaming systems
JP2008244894A (en) Packet receiving apparatus, method and program for determining necessary and sufficient reception buffer size
CA2528331A1 (en) Medium signal reception device, transmission device, and transmission/reception system
JP4406382B2 (en) Speech coding selection control method
KR20070010200A (en) Buffer level signaling for rate adaptation in multimedia streaming
JP4392378B2 (en) Speech coding selection control method

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130627

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140627

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee