KR100931344B1 - Method for providing video streaming service and system, server and user terminal for same - Google Patents

Method for providing video streaming service and system, server and user terminal for same Download PDF

Info

Publication number
KR100931344B1
KR100931344B1 KR1020070088135A KR20070088135A KR100931344B1 KR 100931344 B1 KR100931344 B1 KR 100931344B1 KR 1020070088135 A KR1020070088135 A KR 1020070088135A KR 20070088135 A KR20070088135 A KR 20070088135A KR 100931344 B1 KR100931344 B1 KR 100931344B1
Authority
KR
South Korea
Prior art keywords
vod
user terminal
server
size
streaming data
Prior art date
Application number
KR1020070088135A
Other languages
Korean (ko)
Other versions
KR20090022615A (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 KR1020070088135A priority Critical patent/KR100931344B1/en
Publication of KR20090022615A publication Critical patent/KR20090022615A/en
Application granted granted Critical
Publication of KR100931344B1 publication Critical patent/KR100931344B1/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/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
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • 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
    • 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/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests

Landscapes

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

Abstract

본 발명은 VOD 스트리밍 서비스를 제공하는 방법과 그를 위한 시스템, 서버 및 사용자 단말기에 관한 것이다.The present invention relates to a method for providing a video streaming service and a system, a server and a user terminal for the same.

본 발명은 유무선 통신망을 이용하여 VOD 스트리밍 서비스를 제공하는 시스템에 있어서, 상기 VOD 스트리밍 서비스에 해당하는 VOD 스트리밍 데이터(Video On Demand Streaming Data)를 수신하여 재생하는 사용자 단말기; 및 상기 사용자 단말기로 상기 VOD 스트리밍 데이터를 전송하며, X-RTCP 듀레이션 파라미터 메시지(X-Real-Time transport Control Protocol Duration Parameter Message)를 생성하여 상기 사용자 단말기로 전송하며, 상기 사용자 단말기로부터 DSI 메시지(Decoding Status Information Message)를 수신하여 분석한 후 상기 사용자 단말기의 큐 버퍼(Queue Buffer) 내에 재생 가능한 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간이 양호한 상태인지의 여부를 확인하고, 확인 결과, 상기 큐 버퍼 내에 재생 가능한 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간이 양호한 상태가 아닌 경우, 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간에 따라 비트-레이트(Bit-Rate)를 점차 하향으로 제어하는 VOD 서버를 포함하되, 상기 사용자 단말기는 상기 VOD 서버로부터 수신한 상기 X-RTCP 듀레이션 파라미터 메시지에 따라 일정한 주기로 상기 DSI 메시지를 생성하여 상기 VOD 서버로 전송하는 것을 특징으로 하는 VOD 스트리밍 서비스를 제공하는 시스템을 제공한다.The present invention provides a system for providing a VOD streaming service using a wired / wireless communication network, the system comprising: a user terminal for receiving and playing VOD streaming data corresponding to the VOD streaming service; And transmitting the VOD streaming data to the user terminal, generating and transmitting an X-RTCP duration parameter message to the user terminal, and decoding a DSI message from the user terminal. After receiving and analyzing a Status Information Message, it is checked whether or not the size or playback time of the VOD streaming data that can be played back in the queue buffer of the user terminal is in a good state. If the size or playback time of the VOD streaming data possible is not in a good state, a VOD server for controlling the bit-rate (Bit-Rate) gradually down according to the size or playback time of the VOD streaming data, the user The terminal receives the X-RTCP duration parameter received from the VOD server. At regular intervals in accordance with the message and provides a system for providing VOD streaming service, characterized in that transmitted to the VOD server to generate the DSI message.

본 발명에 의하면, VOD 스트리밍 서비스를 제공하는 과정에서, QoS를 향상하 여 오디오 및 비디오 데이터를 최대한 끊기지 않게 출력할 수 있는 효과가 있다.According to the present invention, in the process of providing a VOD streaming service, it is possible to improve the QoS to output audio and video data as seamlessly as possible.

Description

VOD 스트리밍 서비스를 제공하는 방법과 그를 위한 시스템, 서버 및 사용자 단말기{Method for Providing Video On Demand Streaming Service, System, Server And User Terminal Therefor}Method for Providing Video On Demand Streaming Service, System, Server And User Terminal Therefor}

본 발명은 VOD 스트리밍 서비스를 제공하는 방법과 그를 위한 시스템, 서버 및 사용자 단말기에 관한 것이다. 더욱 상세하게는 유무선 통신망을 이용하여 사용자 단말기로 VOD(Video On Demand) 서비스를 제공하는 과정에서, VOD 서버에서 X-RTCP 듀레이션 파라미터 메시지(X-RTCP Duration Parameter Message)를 생성하여 사용자 단말기로 전송하면, 사용자 단말기는 X-RTCP 듀레이션 파라미터 메시지에 따른 일정한 주기로 DSI 메시지지(Decoding Status Information Message)를 생성한 후 X-RTCP 듀레이션 파라미터 메시지에 따른 일정한 주기로 DSI 메시지를 VOD 서버로 전송하며, VOD 서버에서 DSI 메시지를 분석하여 사용자 단말기의 큐 버퍼(Queue Buffer) 내의 재생 가능한 VOD 스트리밍 데이터의 크기(양) 또는 재생 시간에 따라 비트-레이트(Bit-Rate)를 하향 또는 상향으로 조절함으로써, 최적의 QoS를 제공할 수 있는 VOD 스트리밍 서비스를 제공하는 방법과 그를 위한 시스템, 서버 및 사용자 단말기에 관한 것이다.The present invention relates to a method for providing a video streaming service and a system, a server and a user terminal for the same. More specifically, in the process of providing a video on demand (VOD) service to a user terminal using a wired / wireless communication network, the VOD server generates an X-RTCP duration parameter message and transmits it to the user terminal. The user terminal generates a DSI message (Decoding Status Information Message) at regular intervals according to the X-RTCP duration parameter message and transmits the DSI message to the VOD server at regular intervals according to the X-RTCP duration parameter message, and the DSI is transmitted from the VOD server. Analyzes the message and adjusts bit-rate up or down according to the size (amount) or playback time of the playable VOD streaming data in the queue buffer of the user terminal, thereby providing optimal QoS. To provide a video streaming service that can be used and a system, a server and a user terminal for the same. It is about.

컴퓨터, 전자 및 통신 기술이 비약적으로 발전함에 따라 무선통신망(Wireless Network)을 이용한 다양한 무선통신 서비스가 제공되고 있다. 이러한, 유무선 통신망을 이용하여 제공하는 서비스는 음성 서비스뿐만 아니라, 써킷(Circuit) 데이터, 패킷(Packet) 데이터 등과 같은 데이터를 송신하는 멀티미디어 서비스로 발전해 가고 있다.As computers, electronics, and communication technologies have made rapid progress, various wireless communication services using wireless networks have been provided. Such services provided by wired and wireless communication networks are developing into multimedia services for transmitting data such as circuit data, packet data, and the like, as well as voice services.

종래의 멀티미디어 서비스에 대해 설명하자면, 엠펙(MPEG; Moving Picture Experts Group, 이하 'MPEG'으로 표기함)은 1992년부터 지각 오디오 부호화 방법이 국제 표준화되기 시작하였고, 돌비(Dolby), 소니(Sony), 에이티앤티(AT&T) 등의 오디오 메이커에서 여러 가지 지각 오디오 부호화 기술들로 개발되었으며, 현재 흔히 이용되고 있는 엠피3(MP3; 이하 'MP3'로 표기함)는 MPEG-1 오디오 계층 III를 지칭하는 것이다.To describe a conventional multimedia service, MPEG (MPEG; Moving Picture Experts Group, hereinafter referred to as 'MPEG') has been internationally standardized perceptual audio encoding method since 1992, Dolby, Sony , MP >(MP3; hereinafter referred to as 'MP3') has been developed by audio makers such as AT & T. will be.

최근 들어, 인터넷 환경의 급속한 팽창과 고속화에 따라, MP3와 같은 음악 파일을 특정 웹 사이트 또는 P2P 등을 이용하여 다운로드(download) 받아서 이용하는 일은 이제 일상적인 일이 되었으며, 1999년도부터 국내에서 처음 개발되기 시작한 휴대용 MP3 플레이어의 보급으로 언제 어디서든지 손쉽게 디지털 오디오를 들을 수 있게 되었다.Recently, with the rapid expansion and speed of the Internet environment, it is now common to download and use music files such as MP3 using a specific website or P2P. With the spread of portable MP3 players started, it is easy to listen to digital audio anytime and anywhere.

또한, 실시간 전송이 필요한 음성, 오디오, 비디오 데이터를 전송하기 위한 'RTP(Real-Time transport Protocol)/RTSP(Real-Time Streaming Protocol)'와 같은 프로토콜의 등장으로 멀티미디어 데이터 전체를 다운로드 한 후 재생하지 않고, 일부만 받아도 재생이 가능한 서비스(VOD 서비스)가 등장하였다.Also, due to the emergence of protocols such as Real-Time Transport Protocol (RTP) and Real-Time Streaming Protocol (RTSP) for transmitting voice, audio, and video data that requires real-time transmission, the multimedia data cannot be downloaded and played back. In addition, a service (VOD service) that can be reproduced even if only part of it has appeared.

스트림(Stream) 데이터란 일반적으로 CD나 HDD 같은 스토리지 미디어가 아닌 유/무선 네트워크를 이용한 방송 환경에서 멀티미디어 컨텐츠를 전송하고 전송과 동시에 재생가능한 데이터 형태를 의미하며, 스트림 데이터는 방송이나 유/무선 인터넷 등에서 전파의 수신 상태나 네트워크 상태에 따라서 수신되는 데이터의 질이 달라진다.Stream data generally refers to a data format that can transmit and play multimedia contents simultaneously in a broadcasting environment using a wired / wireless network rather than a storage media such as a CD or HDD. The stream data is a broadcast or wired / wireless internet. The quality of data received varies depending on the reception status of the radio wave and the network conditions.

일반적으로 VOD 스트리밍을 재생하는 방식으로 비디오 및 오디오가 끊김 없이 지속적으로 재생되기 위해서는 사용자 단말기의 VOD 서비스를 재생하는 플레이어에서 VOD 스트리밍을 재생하기 전에 수 초간 버퍼링하는 큐 버퍼(Queue Buffer)의 관리가 중요하다.In general, in order to continuously play video and audio continuously by playing VOD streaming, it is important to manage a queue buffer that buffers for several seconds before playing VOD streaming in a player playing a VOD service of a user terminal. Do.

여기서, 큐 버퍼(Queue Buffer 또는 Initial Buffer)란 VOD 스트리밍을 재생하는 과정에서, VOD 서버로부터 사용자 단말기로 전송되는 데이터를 순서대로 보관해 두는 버퍼로서, 데이터들을 차례대로 보관해 두었다가 순서대로 하나씩 읽어내어 재생 처리할 수 있도록 하는 기능을 수행하는 버퍼를 의미한다. Here, the Queue Buffer (Queue Buffer or Initial Buffer) is a buffer that stores the data transmitted from the VOD server to the user terminal in order in the process of playing VOD streaming, and stores the data in order and reads them one by one. A buffer that performs a function that enables playback processing.

종래의 VOD 스트리밍을 재생하는 방식은, VOD 서버에서 유무선 통신망을 경유하여 사용자 단말기로 VOD 스트리밍 데이터를 전송하면, 사용자 단말기는 VOD 스트리밍 데이터를 수신하는 것이며, 이 과정에서 VOD(비디오 및 오디오) 스트리밍 데이터가 일정하게 수신되어야 큐 버퍼 내의 VOD 스트리밍 데이터가 차례대로 보관되는 것이며, 그에 따라 VOD 스트리밍 데이터가 끊김 없이 재생되는 것이다.In the conventional method of playing VOD streaming, when the VOD server transmits VOD streaming data to a user terminal via a wired / wireless communication network, the user terminal receives VOD streaming data, and in this process, VOD (video and audio) streaming data. The VOD streaming data in the queue buffer is stored in order until the reception is constant, so that the VOD streaming data is played back seamlessly.

하지만, 유무선 통신망의 통신 속도가 떨어지는 경우, 주어진 시간 내에 VOD 스트리밍 데이터가 큐 버퍼로 일정하게 수신되지 않는 것이며, 큐 버퍼내의 보관된 VOD 스트리밍 데이터가 점점 줄어들게 되는 것이며, 종단에는 VOD 스트리밍 서비스가 중단된다는 단점이 발생하는 것이다.However, when the communication speed of the wired / wireless communication network decreases, the VOD streaming data is not constantly received in the queue buffer within a given time, and the VOD streaming data stored in the queue buffer is gradually reduced, and the VOD streaming service is stopped at the end. There is a disadvantage.

따라서, VOD 스트리밍 데이터를 재생하는 과정에서 큐 버퍼 내에 보관된 VOD 스트리밍 데이터의 양이 얼마나 있는지의 여부를 확인하여 VOD 서버로 전송함으로써, 최적의 QoS를 제공할 수 있는 기술 개발이 요구되는 실정이다.Accordingly, in the process of reproducing VOD streaming data, it is necessary to develop a technology capable of providing optimal QoS by checking how much VOD streaming data is stored in the queue buffer and transmitting the same to the VOD server.

전술한 문제점을 해결하기 위해 본 발명은, 유무선 통신망을 이용하여 사용자 단말기로 VOD(Video On Demand) 서비스를 제공하는 과정에서, VOD 서버에서 X-RTCP 듀레이션 파라미터 메시지(X-RTCP Duration Parameter Message)를 생성하여 사용자 단말기로 전송하면, 사용자 단말기는 X-RTCP 듀레이션 파라미터 메시지에 따른 일정한 주기로 DSI 메시지지(Decoding Status Information Message)를 생성한 후 X-RTCP 듀레이션 파라미터 메시지에 따른 일정한 주기로 DSI 메시지를 VOD 서버로 전송하며, VOD 서버에서 DSI 메시지를 분석하여 사용자 단말기의 큐 버퍼(Queue Buffer) 내의 재생 가능한 VOD 스트리밍 데이터의 크기(양) 또는 재생 시간에 따라 비트-레이트(Bit-Rate)를 하향 또는 상향으로 조절함으로써, 최적의 QoS를 제공할 수 있는 VOD 스트리밍 서비스를 제공하는 방법과 그를 위한 시스템, 서버 및 사용자 단말기를 제공하는 데 그 목적이 있다.In order to solve the above problem, the present invention, in the process of providing a video on demand (VOD) service to the user terminal using a wired or wireless communication network, the X-RTCP Duration Parameter Message (X-RTCP Duration Parameter Message) in the VOD server After generating and transmitting to the user terminal, the user terminal generates a Decoding Status Information Message at regular intervals according to the X-RTCP duration parameter message and sends the DSI message to the VOD server at regular intervals according to the X-RTCP duration parameter message. The VOD server analyzes the DSI message and adjusts the bit rate up or down depending on the size (amount) or playback time of the playable VOD streaming data in the queue buffer of the user terminal. Thereby, a method and system for providing a video streaming service that can provide optimal QoS To provide a server, and a user terminal.

전술한 목적을 달성하기 위해 본 발명은, 유무선 통신망을 이용하여 VOD 스트리밍 서비스를 제공하는 시스템에 있어서, 상기 VOD 스트리밍 서비스에 해당하는 VOD 스트리밍 데이터(Video On Demand Streaming Data)를 수신하여 재생하는 사용자 단말기; 및 상기 사용자 단말기로 상기 VOD 스트리밍 데이터를 전송하며, X-RTCP 듀레이션 파라미터 메시지(X-Real-Time transport Control Protocol Duration Parameter Message)를 생성하여 상기 사용자 단말기로 전송하며, 상기 사용자 단말기로부터 DSI 메시지(Decoding Status Information Message)를 수신하여 분석한 후 상기 사용자 단말기의 큐 버퍼(Queue Buffer) 내에 재생 가능한 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간이 양호한 상태인지의 여부를 확인하고, 확인 결과, 상기 큐 버퍼 내에 재생 가능한 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간이 양호한 상태가 아닌 경우, 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간에 따라 비트-레이트(Bit-Rate)를 점차 하향으로 제어하는 VOD 서버를 포함하되, 상기 사용자 단말기는 상기 VOD 서버로부터 수신한 상기 X-RTCP 듀레이션 파라미터 메시지에 따라 일정한 주기로 상기 DSI 메시지를 생성하여 상기 VOD 서버로 전송하는 것을 특징으로 하는 VOD 스트리밍 서비스를 제공하는 시스템을 제공한다.In order to achieve the above object, the present invention is a system for providing a VOD streaming service using a wired or wireless communication network, a user terminal for receiving and playing VOD streaming data (Video On Demand Streaming Data) corresponding to the VOD streaming service ; And transmitting the VOD streaming data to the user terminal, generating and transmitting an X-RTCP duration parameter message to the user terminal, and decoding a DSI message from the user terminal. After receiving and analyzing a Status Information Message, it is checked whether or not the size or playback time of the VOD streaming data that can be played back in the queue buffer of the user terminal is in a good state. If the size or playback time of the VOD streaming data possible is not in a good state, a VOD server for controlling the bit-rate (Bit-Rate) gradually down according to the size or playback time of the VOD streaming data, the user The terminal receives the X-RTCP duration parameter received from the VOD server. At regular intervals in accordance with the message and provides a system for providing VOD streaming service, characterized in that transmitted to the VOD server to generate the DSI message.

또한, 본 발명의 다른 목적에 의하면, VOD 서버가 사용자 단말기로 VOD 스트리밍 서비스를 제공하는 방법에 있어서, (a) 상기 사용자 단말기로 상기 VOD 스트리밍 데이터를 전송하는 단계; (b) 상기 사용자 단말기로 X-RTCP 듀레이션 파라미터 메시지를 전송하는 단계; (c) 상기 사용자 단말기로부터 DSI 메시지를 수신하여 분석한 후 상기 사용자 단말기의 큐 버퍼(Queue Buffer) 내에 재생 가능한 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간이 양호한 상태인지의 여부를 확인하는 단계; 및 (d) 상기 단계 (c)의 확인 결과, 상기 큐 버퍼 내에 재생 가능한 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간이 양호한 상태가 아닌 경우, 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간에 따라 비트-레이트를 점차 하향으로 제어하는 단계를 포함하는 것을 특징으로 하는 VOD 스트리밍 서비스를 제공하는 방법을 제공한다.According to another object of the present invention, a method of providing a VOD streaming service to a user terminal by a VOD server, the method comprising the steps of: (a) transmitting the VOD streaming data to the user terminal; (b) transmitting an X-RTCP duration parameter message to the user terminal; (c) checking whether the size or reproduction time of the VOD streaming data that can be reproduced in a queue buffer of the user terminal is good after receiving and analyzing a DSI message from the user terminal; And (d) if the size or playback time of the VOD streaming data reproducible in the queue buffer is not in a good state, as a result of the checking in step (c), the bit-rate may be adjusted according to the size or playback time of the VOD streaming data. It provides a method for providing a video streaming service, characterized in that it comprises the step of gradually downward control.

또한, 본 발명의 다른 목적에 의하면, 서버 통신부 및 서버 저장부를 구비하며, 유무선 통신망을 경유하여 사용자 단말기와 연동하여 VOD 스트리밍 서비스를 제공하는 서버에 있어서, 상기 사용자 단말기로 상기 VOD 스트리밍 데이터를 전송하도록 제어하며, X-RTCP 듀레이션 파라미터 메시지를 생성하여 상기 사용자 단말기로 전송하며, 상기 사용자 단말기로부터 DSI 메시지를 수신하여 분석한 후 상기 사용자 단말기의 큐 버퍼 내에 재생 가능한 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간이 양호한 상태인지의 여부를 확인하고, 확인 결과, 상기 큐 버퍼 내에 재생 가능한 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간이 양호한 상태가 아닌 경우, 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간에 따라 비트-레이트를 점차 하향으로 제어하는 서버 제어부를 포함하는 것을 특징으로 하는 VOD 스트리밍 서비스를 제공하는 서버를 제공한다.According to another object of the present invention, a server having a server communication unit and a server storage unit, and providing a VOD streaming service in conjunction with a user terminal via a wired or wireless communication network, to transmit the VOD streaming data to the user terminal. Control and generate and transmit an X-RTCP duration parameter message to the user terminal, receive and analyze a DSI message from the user terminal, and then reproduce the VOD streaming data in the queue buffer of the user terminal. If it is confirmed whether it is in a good state, and if it is confirmed that the size or playback time of the VOD streaming data that can be played back in the queue buffer is not in a good state, the bit-rate is gradually increased according to the size or playback time of the VOD streaming data. Server controlling downward It provides a server for providing a video streaming service, comprising a control unit.

또한, 본 발명의 다른 목적에 의하면, VOD 서버에 접속하기 위한 웹 브라우저, 상기 웹 브라우저를 포함하는 소프트웨어를 저장하는 메모리와 상기 소프트웨어를 실행하여 연산 및 제어하기 위한 마이크로프로세서를 구비한 사용자 단말기에 있어서, 상기 VOD 서버로부터 VOD 스트리밍 데이터를 수신하여 재생하도록 제어하며, 상기 VOD 서버로부터 X-RTCP 듀레이션 파라미터 메시지를 수신하는 경우 상기 X-RTCP 듀레이션 파라미터 메시지에 따른 일정한 주기로 DSI 메시지를 생성하여 상기 VOD 서버로 전송하도록 제어하는 VOD 플레이어를 포함하는 것을 특징으로 하는 VOD 스트리밍 서비스를 제공하는 사용자 단말기를 제공한다.According to another object of the present invention, there is provided a user terminal having a web browser for accessing a VOD server, a memory for storing software including the web browser, and a microprocessor for executing and operating the software. And control to receive and play VOD streaming data from the VOD server, and when receiving an X-RTCP duration parameter message from the VOD server, generate a DSI message at regular intervals according to the X-RTCP duration parameter message to the VOD server. It provides a user terminal for providing a video streaming service, characterized in that it comprises a VOD player to control to transmit.

이상에서 설명한 바와 같이 본 발명에 의하면, 유무선 통신망을 이용하여 사용자 단말기로 VOD(Video On Demand) 서비스를 제공하는 과정에서, VOD 서버에서 X-RTCP 듀레이션 파라미터 메시지(X-RTCP Duration Parameter Message)를 생성하여 사용자 단말기로 전송하면, 사용자 단말기는 X-RTCP 듀레이션 파라미터 메시지에 따른 일정한 주기로 DSI 메시지지(Decoding Status Information Message)를 생성한 후 X-RTCP 듀레이션 파라미터 메시지에 따른 일정한 주기로 DSI 메시지를 VOD 서버로 전송하며, VOD 서버에서 DSI 메시지를 분석하여 사용자 단말기의 큐 버퍼(Queue Buffer) 내의 재생 가능한 VOD 스트리밍 데이터의 크기(양) 또는 재생 시간에 따라 비트-레이트(Bit-Rate)를 하향 또는 상향으로 조절함으로써, 최적의 QoS를 제공할 수 있는 효과가 있다.As described above, according to the present invention, in the process of providing a video on demand (VOD) service to a user terminal using a wired / wireless communication network, an X-RTCP duration parameter message is generated by a VOD server. After transmitting to the user terminal, the user terminal generates a DSI message (Decoding Status Information Message) at regular intervals according to the X-RTCP duration parameter message and transmits the DSI message to the VOD server at regular intervals according to the X-RTCP duration parameter message. By analyzing the DSI message in the VOD server, the bit rate is adjusted downward or upward depending on the size (amount) or playback time of the playable VOD streaming data in the queue buffer of the user terminal. Therefore, there is an effect that can provide the optimum QoS.

즉, 본 발명에서는 VOD 스트리밍 서비스를 제공하는 과정에서, QoS를 향상하여 오디오 및 비디오 데이터를 최대한 끊기지 않게 출력할 수 있는 효과가 있다.That is, in the present invention, in the process of providing the VOD streaming service, the QoS and the audio and video data can be output without interruption as much as possible.

또한, 사용자 단말기에서 큐 버퍼 내의 VOD 스트리밍의 데이터 양을 포함한 DSI 메시지를 VOD 서버로 전송하는 주기를 X-RTCP 듀레이션 파라미터 메시지에 따라 다이나믹하게 조정하여 불필요한 트래픽을 최소화할 수 있는 효과가 있을 뿐만 아니라, 네트워크상의 효율성이 증대되어 더욱 선명한 비디오 및 오디오 데이터를 출력할 수 있는 효과가 있다.In addition, it is effective to minimize unnecessary traffic by dynamically adjusting the period in which the user terminal transmits the DSI message including the data amount of VOD streaming in the queue buffer to the VOD server according to the X-RTCP duration parameter message. The increased efficiency on the network has the effect of outputting clearer video and audio data.

이하, 본 발명의 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. 우선 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상 세한 설명은 생략한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. First of all, in adding reference numerals to the components of each drawing, it should be noted that the same reference numerals are used as much as possible even if displayed on different drawings. In addition, in describing the present invention, when it is determined that a detailed description of a related known configuration or function may obscure the gist of the present invention, the detailed description thereof will be omitted.

도 1은 본 발명의 제 1 실시예 및 제 2 실시예에 따른 VOD 스트리밍 서비스를 제공하는 시스템을 개략적으로 나타낸 블럭 구성도이다.1 is a block diagram schematically illustrating a system for providing a voice streaming service according to a first embodiment and a second embodiment of the present invention.

본 발명의 제 1 실시예 및 제 2 실시예에 따른 VOD 스트리밍 서비스를 제공하는 시스템은, 사용자 단말기(110), 유무선 통신망(120) 및 VOD 서버(130)를 포함한다.The system for providing a VOD streaming service according to the first and second embodiments of the present invention includes a user terminal 110, a wired / wireless communication network 120, and a VOD server 130.

사용자 단말기(110)는 사용자의 키 조작에 따라 유무선 통신망(120)을 경유하여 각종 웹 페이지 데이터를 수신할 수 있는 단말기를 말하는 것이며, 개인용 컴퓨터(PC: Personal Computer), 노트북, 개인휴대용 정보단말기(PDA: Personal Digital Assistant) 및 이동통신 단말기(Mobile Communication Terminal) 등 중 어느 하나일 수 있으며, 유무선 통신망(120)을 경유하여 VOD 서버(130)에 접속하기 위한 웹 브라우저와 프로그램을 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하고 있는 단말기를 의미한다.The user terminal 110 refers to a terminal capable of receiving various web page data via the wired / wireless communication network 120 according to a user's key operation, and includes a personal computer (PC), a notebook computer, and a personal portable information terminal (PC). PDA (Personal Digital Assistant) and a mobile communication terminal (Mobile Communication Terminal) may be any one, such as a memory for storing a web browser and a program for connecting to the VOD server 130 via a wired or wireless communication network 120, Means a terminal equipped with a microprocessor for executing and controlling the program.

사용자 단말기(110)는 사용자의 조작에 의해 유무선 통신망(120)을 경유하여 VOD 서버(130)로 VOD 서비스 요청 신호를 전송하며, 유무선 통신망(120)을 경유하여 VOD 서버(130)로부터 VOD 스트리밍 데이터를 수신한 후 사용자 단말기(110)에 탑재된 VOD 플레이어(112)를 이용하여 VOD 스트리밍 데이터를 재생하는 기능을 수행한다.The user terminal 110 transmits a VOD service request signal to the VOD server 130 via the wired / wireless communication network 120 by a user's manipulation, and VOD streaming data from the VOD server 130 via the wired / wireless communication network 120. After receiving the data, the VOD player 112 mounted on the user terminal 110 is used to play the VOD streaming data.

본 발명의 제 2 실시예에 따른 VOD 플레이어(112)는 VOD 서버(130)로부터 VOD 스트리밍 데이터를 수신하여 재생하도록 제어하는 기능을 수행하며, VOD 서 버(130)로부터 X-RTCP 듀레이션 파라미터 메시지를 수신하는 경우 X-RTCP 듀레이션 파라미터 메시지에 따라 일정한 주기로 Qu(410), QuSize(420), Buf.Remain(430) 및 Seq.No(440) 파라미터를 포함한 DSI(Decoding Status Information) 메시지를 생성하도록 제어하는 기능을 수행한다.The VOD player 112 according to the second embodiment of the present invention performs a function of controlling to receive and play VOD streaming data from the VOD server 130 and to receive an X-RTCP duration parameter message from the VOD server 130. When received, control to generate Decoding Status Information (DSI) message including Qu (410), QuSize (420), Buf.Remain (430) and Seq.No (440) parameters at regular intervals according to the X-RTCP duration parameter message. It performs the function.

또한, 본 발명의 제 2 실시예에 따른 VOD 플레이어(112)는 X-RTCP 듀레이션 파라미터 메시지에 따라 일정한 주기로 DSI 메시지를 VOD 서버(130)로 전송하도록 제어하는 기능을 수행한다.In addition, the VOD player 112 according to the second embodiment of the present invention performs a function of controlling to transmit the DSI message to the VOD server 130 at regular intervals according to the X-RTCP duration parameter message.

또한, 본 발명의 제 2 실시예에 따른 VOD 플레이어(112)는 DSI 메시지를 RTCP(Real-Time transport Control Protocol)/RR(Receiver Report) 패킷의 익스텐션 필드(Extension Field)에 포함하여 VOD 서버(130)로 전송할 수 있다. 여기서, DSI 메시지를 RTCP/RR 패킷의 익스텐션 필드에 포함하여 VOD 서버(130)로 전송하는 이유로는 종래의 VOD 서버와 DSI 메시지 간에 호환성을 유지하기 위함이다. 하지만, 이는 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 VOD 플레이어(112)가 DSI 메시지를 VOD 서버(130)로 전송하는 방식을 다양하게 수정 및 변형하여 적용 가능할 것이다. 여기서, DSI 메시지에 대한 구체적인 설명은 아래 도 4를 통해서 하도록 한다.In addition, the VOD player 112 according to the second embodiment of the present invention includes the DSI message in the extension field of the Real-Time Transport Control Protocol (RTCP) / Receiver Report (RR) packet and the VOD server 130. ) Can be sent. The reason why the DSI message is included in the extension field of the RTCP / RR packet and transmitted to the VOD server 130 is to maintain compatibility between the conventional VOD server and the DSI message. However, this is merely illustrative of the technical idea of the present invention, and those skilled in the art to which the present invention belongs does not depart from the essential characteristics of the present invention, the VOD player 112 is a DSI message. Modifications and variations in the manner of transmitting to the VOD server 130 will be applicable. A detailed description of the DSI message will be made with reference to FIG. 4 below.

유무선 통신망(120)은 인터넷망, 인트라넷망, 이동통신망, 위성 통신망 등 다양한 유무선 통신 기술을 이용하여 인터넷 프로토콜로 데이터를 송수신할 수 있는 망을 말한다. 여기서, 유무선 통신망(120)에 대한 기술은 이미 공지된 기술이므 로 더 자세한 설명은 생략하도록 한다.The wired / wireless communication network 120 refers to a network capable of transmitting and receiving data using an internet protocol using various wired and wireless communication technologies such as an internet network, an intranet network, a mobile communication network, and a satellite communication network. Here, since the technology for the wired and wireless communication network 120 is already known technology, a detailed description thereof will be omitted.

VOD 서버(130)는 유무선 통신망(120)을 경유하여 사용자 단말기(110)로부터 VOD 서비스 요청 신호를 수신하며, 사용자 단말기(110)로 VOD 스트리밍 데이터를 전송하는 기능을 수행한다.The VOD server 130 receives a VOD service request signal from the user terminal 110 through the wired / wireless communication network 120 and transmits VOD streaming data to the user terminal 110.

본 발명의 제 1 실시예에 따른 VOD 서버(130)는 VOD 스트리밍 데이터를 사용자 단말기(110)로 전송하는 과정에서 사용자 단말기(110)와 처음 연결될 때 RTSP(Real-Time Streaming Protocol) 및 SDP(Session Description Protocol) 프로토콜을 이용하여 X-RTCP 듀레이션 파라미터 메시지를 사용자 단말기(110)로 전송하는 기능을 수행한다.When the VOD server 130 according to the first embodiment of the present invention is first connected with the user terminal 110 in the process of transmitting VOD streaming data to the user terminal 110, a Real-Time Streaming Protocol (RTSP) and a Session (SDP) Description Protocol) transmits an X-RTCP duration parameter message to the user terminal 110 using a protocol.

본 발명의 제 1 실시예에 따른 VOD 서버(130)는 사용자 단말기(110)로부터 DSI 메시지를 수신하여 분석하며, 사용자 단말기(110) 내의 큐 버퍼에 재생 가능한 VOD 스트리밍 데이터의 크기(양) 또는 재생 시간이 양호한 상태인지의 여부를 확인한다.The VOD server 130 according to the first embodiment of the present invention receives and analyzes a DSI message from the user terminal 110, and reproduces the size (amount) or reproduction of the VOD streaming data that can be reproduced in a queue buffer in the user terminal 110. Check whether the time is in good condition.

확인 결과, 큐 버퍼 내에 재생 가능한 VOD 스트리밍 데이터의 크기(양) 또는 재생 시간이 양호한 상태인 경우, VOD 서버(130)는 VOD 스트리밍 데이터의 크기(양) 또는 재생 시간에 따라 비트-레이트(Bit-Rate)를 하향 또는 상향으로 제어하는 기능을 수행한다. As a result of the check, when the size (amount) or playback time of the playable VOD streaming data in the queue buffer is in a good state, the VOD server 130 may bit-rate (Bit-) according to the size (amount) or playback time of the VOD streaming data. Rate) is controlled downward or upward.

한편, 확인 결과, 큐 버퍼 내에 재생 가능한 VOD 스트리밍 데이터의 크기(양) 또는 재생 시간이 양호한 상태가 아닌 경우, VOD 서버(130)는 VOD 스트리밍 데이터의 크기(양) 또는 재생 시간에 따라 비트-레이트(Bit-Rate)를 점차 하향으로 제어하여 VOD 스트리밍 데이터의 재생이 끊기지 않도록 하는 기능을 수행한다. 즉, VOD 서버(130)는 비트-레이트를 하향으로 제어함으로써 사용자 단말기(110)에서 VOD 스트리밍 데이터의 재생이 끊기지 않도록 하는 것이다.On the other hand, if the size (amount) or playback time of the playable VOD streaming data in the queue buffer is not in a good state, the VOD server 130 bit-rates according to the size (amount) or playback time of the VOD streaming data. (Bit-Rate) is controlled downward to prevent playback of VOD streaming data. That is, the VOD server 130 controls the bit-rate downward so that playback of the VOD streaming data is not interrupted at the user terminal 110.

본 발명의 제 1 실시예에 따른 VOD 서버(130)는 비트-레이트를 하향으로 제어한 후에 사용자 단말기(110)로부터 DSI 메시지를 수신하여 분석하며, 사용자 단말기(110) 내의 큐 버퍼에 재생 가능한 VOD 스트리밍 데이터의 크기(양) 또는 재생 시간이 양호한 상태인지의 여부를 확인한다.The VOD server 130 according to the first embodiment of the present invention receives the DSI message from the user terminal 110 after analyzing the bit-rate downward and analyzes it, and reproduces the VOD in the queue buffer in the user terminal 110. It is checked whether the size (amount) or the playback time of the streaming data is in a good state.

확인 결과, 큐 버퍼에 재생 가능한 VOD 스트리밍 데이터의 크기(양) 또는 재생 시간이 양호한 상태로 회복되는 경우, VOD 서버(130)는 VOD 스트리밍 데이터의 크기(양) 또는 재생 시간에 따라 비트-레이트(Bit-Rate)를 점차 상향으로 제어하여 VOD 스트리밍 데이터의 재생 화질이 높아지도록 하는 기능을 수행한다. 즉, VOD 서버(130)는 비트-레이트를 상향으로 제어함으로써 사용자 단말기(110)에서 VOD 스트리밍 데이터의 재생 화질이 높아지도록(즉, 초기 수준으로 회복) 하는 것이다.As a result of the check, when the size (amount) or playback time of the playable VOD streaming data in the queue buffer is restored to a good state, the VOD server 130 determines the bit-rate according to the size (amount) or playback time of the VOD streaming data. Bit-Rate) is gradually controlled upward to improve the playback quality of VOD streaming data. That is, the VOD server 130 controls the bit-rate upward so that the reproduction quality of the VOD streaming data is increased (ie, restored to an initial level) in the user terminal 110.

도 2는 본 발명의 제 1 실시예에 따른 VOD 서버를 개략적으로 나타낸 블럭 구성도이다.2 is a block diagram schematically illustrating a VOD server according to a first embodiment of the present invention.

본 발명의 제 1 실시예에 따른 VOD 서버(130)는 서버 통신부(210), 서버 제어부(220) 및 서버 저장부(230)를 포함하여 구성된다.The VOD server 130 according to the first embodiment of the present invention includes a server communication unit 210, a server control unit 220, and a server storage unit 230.

본 발명에서는 VOD 서버(130)가 서버 통신부(210), 서버 제어부(220) 및 서버 저장부(230)만을 포함하여 구성되는 것으로 기재하고 있으나, 이는 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분 야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 VOD 서버(130)에 포함되는 구성 요소에 대하여 다양하게 수정 및 변형하여 적용 가능할 것이다.In the present invention, the VOD server 130 is described as including only the server communication unit 210, the server control unit 220 and the server storage unit 230, but this is merely illustrative of the technical idea of the present invention As those skilled in the art to which the present invention pertains, various modifications and variations to the components included in the VOD server 130 may be applied without departing from the essential characteristics of the present invention.

서버 통신부(210)는 유무선 통신망(120)을 경유하여 사용자 단말기(110)와 연동하는 기능을 수행하는 통신 수단으로서, 각종 데이터를 송수신하는 기능을 수행한다.The server communication unit 210 is a communication means for performing a function of interworking with the user terminal 110 via the wired or wireless communication network 120, and performs a function of transmitting and receiving various data.

서버 제어부(220)는 서버의 전반적인 기능을 제어하는 제어 수단으로서, 서버 통신부(210)를 제어하여 사용자 단말기(110)로 VOD 스트리밍 데이터를 전송하는 과정에서 사용자 단말기(110)와 처음 연결될 때 RTSP(Real-Time Streaming Protocol) 및 SDP(Session Description Protocol) 프로토콜을 이용하여 X-RTCP 듀레이션 파라미터 메시지를 사용자 단말기(110)로 전송하도록 제어하는 기능을 수행한다.The server controller 220 is a control means for controlling the overall function of the server. When the first connection with the user terminal 110 in the process of transmitting the VOD streaming data to the user terminal 110 by controlling the server communication unit 210 RTSP ( It performs a function of controlling to transmit the X-RTCP duration parameter message to the user terminal 110 using Real-Time Streaming Protocol (SDP) and Session Description Protocol (SDP) protocol.

서버 제어부(220)는 사용자 단말기(110)로부터 DSI 메시지를 수신하여 분석하며, 사용자 단말기(110) 내의 큐 버퍼에 재생 가능한 VOD 스트리밍 데이터의 크기(양) 또는 재생 시간이 양호한 상태인지의 여부를 확인한다.The server controller 220 receives and analyzes a DSI message from the user terminal 110 and checks whether the size (amount) or playback time of the VOD streaming data that is playable in the queue buffer in the user terminal 110 is good. do.

확인 결과, 큐 버퍼 내에 재생 가능한 VOD 스트리밍 데이터의 크기(양) 또는 재생 시간이 양호한 상태인 경우, 서버 제어부(220)는 VOD 스트리밍 데이터의 크기(양) 또는 재생 시간에 따라 비트-레이트(Bit-Rate)를 점차 상향으로 제어하여 VOD 스트리밍 데이터의 재생 화질이 높아지도록(즉, 초기 수준으로 회복되도록) 하는 기능을 수행한다. As a result of the check, when the size (amount) or playback time of the playable VOD streaming data in the queue buffer is in a good state, the server controller 220 performs bit-rate (Bit-) according to the size (amount) or playback time of the VOD streaming data. Rate) is gradually controlled upward to improve the playback quality of the VOD streaming data (ie, recover to the initial level).

한편, 확인 결과, 큐 버퍼 내에 재생 가능한 VOD 스트리밍 데이터의 크기(양) 또는 재생 시간이 양호한 상태가 아닌 경우, 서버 제어부(220)는 VOD 스트리밍 데이터의 크기(양) 또는 재생 시간에 따라 비트-레이트(Bit-Rate)를 점차 하향으로 제어하여 VOD 스트리밍 데이터의 재생이 끊기지 않도록 하는 기능을 수행한다.On the other hand, if the size (amount) or playback time of the playable VOD streaming data in the queue buffer is not in a good state, the server controller 220 bit-rates according to the size (amount) or playback time of the VOD streaming data. (Bit-Rate) is controlled downward to prevent playback of VOD streaming data.

서버 저장부(230)는 서버의 구동에 필요한 각종 데이터를 저장하는 저장수단으로서, VOD 스트리밍 데이터를 저장하는 기능을 수행한다.The server storage 230 is a storage means for storing various data necessary for driving the server, and performs a function of storing VOD streaming data.

도 3은 본 발명의 제 2 실시예에 따른 VOD 플레이어를 개략적으로 나타낸 블럭 구성도이다.3 is a block diagram schematically illustrating a VOD player according to a second embodiment of the present invention.

본 발명의 제 2 실시예에 따른 VOD 플레이어(112)는 통신 모듈(310) 및 저장 모듈(320) VOD 재생 모듈(330) 및 제어 모듈(340)을 포함한다.The VOD player 112 according to the second embodiment of the present invention includes a communication module 310, a storage module 320, a VOD playback module 330, and a control module 340.

본 발명에서는 VOD 플레이어(112)가 통신 모듈(310) 및 저장 모듈(320) VOD 재생 모듈(330) 및 제어 모듈(340)만을 포함하여 구성되는 것으로 기재하고 있으나, 이는 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 VOD 플레이어(112)에 포함되는 구성 요소에 대하여 다양하게 수정 및 변형하여 적용 가능할 것이다.In the present invention, the VOD player 112 is described as including only the communication module 310 and storage module 320 VOD playback module 330 and the control module 340, which illustrates the technical idea of the present invention. As just described, those skilled in the art to which the present invention pertains have various modifications and modifications to the components included in the VOD player 112 without departing from the essential characteristics of the present invention. It will be possible.

통신 모듈(310)은 유무선 통신망(120)을 경유하여 VOD 서버(130)와 연동하는 기능을 수행하며, 저장 모듈(320)은 VOD 플레이어(112)를 구동하는 데 필요한 각종 데이터를 저장하는 기능을 수행하며, VOD 재생 모듈(330)은 VOD 스트리밍 데이터를 재생하도록 제어하는 기능을 수행한다.The communication module 310 performs a function of interworking with the VOD server 130 via the wired / wireless communication network 120, and the storage module 320 stores a variety of data necessary for driving the VOD player 112. In addition, the VOD reproducing module 330 performs a function of controlling to reproduce the VOD streaming data.

제어 모듈(340)은 VOD 서버(130)로부터 수신되는 VOD 스트리밍 데이터를 재생하여 출력하도록 제어하는 기능을 수행하며, VOD 서버(130)로부터 X-RTCP 듀레이션 파라미터 메시지를 수신하는 경우 X-RTCP 듀레이션 파라미터 메시지에 따라 일정한 주기로 Qu(410), QuSize(420), Buf.Remain(430) 및 Seq.No(440) 파라미터를 포함한 DSI(Decoding Status Information) 메시지를 생성하도록 제어하는 기능을 수행한다.The control module 340 controls to reproduce and output the VOD streaming data received from the VOD server 130, and when receiving the X-RTCP duration parameter message from the VOD server 130, the X-RTCP duration parameter. It performs a function of generating a Decoding Status Information (DSI) message including the Qu (410), QuSize (420), Buf.Remain (430), and Seq.No (440) parameters at regular intervals according to the message.

또한, 제어 모듈(340)는 X-RTCP 듀레이션 파라미터 메시지에 따라 일정한 주기로 DSI 메시지를 VOD 서버(130)로 전송하도록 제어하는 기능을 수행한다.In addition, the control module 340 controls to transmit the DSI message to the VOD server 130 at regular intervals according to the X-RTCP duration parameter message.

여기서, 제어 모듈(340)는 DSI 메시지를 RTCP(Real-Time transport Control Protocol)/RR(Receiver Report) 패킷에 포함하여 VOD 서버(130)로 전송할 수 있다. 하지만, 이는 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 제어 모듈(340)에서 DSI 메시지를 VOD 서버(130)로 전송하는 방식을 다양하게 수정 및 변형하여 적용 가능할 것이다. Here, the control module 340 may include the DSI message in a Real-Time Transport Control Protocol (RTCP) / Receiver Report (RR) packet and transmit the DSI message to the VOD server 130. However, this is merely illustrative of the technical idea of the present invention, and those skilled in the art to which the present invention pertains to the DSI message in the control module 340 without departing from the essential characteristics of the present invention. Modifications and variations in the manner of transmitting to the VOD server 130 will be applicable.

도 4는 본 발명의 제 1 실시예 및 제 2 실시예에 따른 DSI 메시지의 구조를 개략적으로 나타낸 블럭 구성도이다.4 is a block diagram schematically illustrating the structure of a DSI message according to the first and second embodiments of the present invention.

본 발명에서는 DSI 메시지는 Qu(410), QuSize(420), Buf.Remain(430) 및 Seq.No(440) 파라미터를 포함한다.In the present invention, the DSI message includes Qu (410), QuSize (420), Buf.Remain (430), and Seq.No (440) parameters.

Qu(410), QuSize(420), Buf.Remain(430) 및 Seq.No(440는 도 4와 같이 DSI 메시지 내의 필드에 맵핑되어 기록되는 것이다. Qu 410, QuSize 420, Buf.Remain 430 and Seq.No 440 are mapped to the fields in the DSI message and recorded as shown in FIG.

본 발명에서는 도 4에 기재된 바와 같이 Qu(410)가 6 비트이며, QuSize(420)가 6 비트이며, Buf.Remain(430)가 12 비트이며, Seq.No(440)가 8 비트인 것으로 기재하고 있으나, 이는 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양하게 수정 및 변형하여 적용 가능할 것이다. In the present invention, as described in FIG. 4, the Qu 410 is 6 bits, the QuSize 420 is 6 bits, the Buf.Remain 430 is 12 bits, and the Seq.No 440 is 8 bits. However, this is merely illustrative of the technical idea of the present invention, and those skilled in the art to which the present invention pertains may be modified and modified in various ways without departing from the essential characteristics of the present invention. will be.

Qu(410)는 사용자 단말기(110)의 큐 버퍼 내에 재생 가능한 VOD 스트리밍 데이터의 크기를 나타내는 값으로서, 사용자 단말기(110)가 큐 버퍼 내의 VOD 스트리밍 데이터를 재생할 때 걸리는 시간을 의미한다.Qu 410 is a value representing the size of the VOD streaming data that can be reproduced in the queue buffer of the user terminal 110, and means a time taken when the user terminal 110 plays the VOD streaming data in the queue buffer.

Qu(410)의 단위는 500 ms(millisecond)가 사용될 수 있으며, 네트워크 상태에서 로스(Loss)된 패킷을 제외하고, 현재 큐잉(Queueing) 된 버퍼만을 대상으로 한다.The unit of the Qu 410 may be used for 500 ms (millisecond), and only the currently queued buffer is excluded, except for packets lost in the network state.

Qu(410)에 대한 계산식은 아래 [수학식 1]과 같다.The equation for Qu (410) is shown in Equation 1 below.

Qu = {Last`s TimeStamp - Current Rendering Time - (Loss Packet의 수 × First 부터 Last 사이 RTP(Real-Time transport Protocol) 패킷의 평균 듀레이션)} / 500Qu = {Last`s TimeStamp-Current Rendering Time-(Number of Loss Packets × Average Duration of Real-Time Transport Protocol (RTP) Packets from First to Last)} / 500

여기서, First는 아래 [표 1]과 같이 RTCP/RR을 전송한 후 최초로 받은 RTP패킷을 의미하며, Last는 아래 [표 1]과 같이 RTCP/RR을 전송하기 바로 직전에 받 은 RTP 패킷을 의미한다. 또한, Last`s TimeStamp, Current Rendering Time, 평균 듀레이션 값의 단위는 모두 ms이다.Here, First means the first RTP packet received after transmitting RTCP / RR as shown in [Table 1], and Last means the RTP packet received just before transmitting RTCP / RR as shown in [Table 1] below. do. In addition, the unit of Last`s TimeStamp, Current Rendering Time, and average duration value are all ms.

Figure 112007063557591-pat00001
Figure 112007063557591-pat00001

여기서, [표 1]의 각각의 눈금은 RTP 데이터를 받는 시점을 의미한다.Here, each scale of [Table 1] means the time of receiving the RTP data.

[수학식 1]에서 First부터 Last 사이 프레임의 평균 듀레이션(Duration)은 아래 [수학식 2], [수학식 3] 및 [수학식 4]와 같은 방법으로 구할 수 있다.In [Equation 1], the average duration of a frame between First and Last can be obtained by the same method as in [Equation 2], [Equation 3] and [Equation 4].

Last의 Sequence Number - Fist의 Sequence Number = DSI 파라미터 계산에 참고해야 할 를 통해 보고해야 할 패킷의 수(이하, '참고 패킷 수'로 칭함.)Sequence Number of Last-Sequence Number of Fist = The number of packets to report via which you should refer to DSI parameter calculation (hereinafter referred to as 'Number of Reference Packets')

Last의 TimeStamp - First의 TimeStamp = DSI 파라미터 계산에 참고해야 할 재생시간(이하, '참고할 듀레이션'으로 칭함.)TimeStamp of Last-TimeStamp of First = Playback time to refer to DSI parameter calculation (hereinafter referred to as 'duration for reference')

참고할 듀레이션 / 참고할 패킷 수 = 참고할 구간의 평균 듀레이션(이하, '평균 듀레이션'으로 칭함.)Duration to Reference / Number of Packets to Reference = Average Duration of Reference Period (hereinafter referred to as 'Average Duration')

즉, [수학식 4]에서 산출한 평균 듀레이션이 First 부터 Last 사이 RTP(Real-time Transport Protocol) 패킷의 평균 듀레이션이 되며, 금번 DSI 파라미터 계산에 참고할 구간에서 로스 된 총 길이는 [수학식 5]와 같이 된다.That is, the average duration calculated in [Equation 4] becomes the average duration of the Real-time Transport Protocol (RTP) packet between First and Last, and the total length lost in the section to be referred to for the DSI parameter calculation is [Equation 5] Becomes

평균 듀레이션 × 로스 패킷 수 = DSI를 통해 보고할 구간에서 로스 된 총 길이(단위는 ms)Average Duration × Number of Loss Packets = Total Length Lost in Intervals to be Reported via DSI (in ms)

즉, [수학식 5]에서 구해지는 '로스 듀레이션'(Loss Duration)은 누적된 값이 아닌 보고되는 구간 내에서의 '로스 듀레이션'이 된다.That is, 'Loss Duration' obtained from Equation 5 is not a cumulative value but a 'loss duration' within a reported interval.

[수학식 1] 내지 [수학식 5]와 같이, 평균 RTP 패킷의 듀레이션을 구해서 로스 패킷으로 인한 재생 가능 시간 손실분을 제하면 실제 단말이 큐 버퍼 내에 데이터를 재생할 수 있는 시간값을 알 수 있게 된다. 하지만, 전술한 시간값은 대략적인 시간 값으로서, 더욱 정확한 시간값을 산출하기 위해서는 RTP 로스 패킷으로 인한 시간 대신에 로스 프레임으로 인한 시간 손실 값을 구해야 한다. 즉, 사용자 단말기(110)가 VOD 스트리밍 데이터를 재생할 시 실제 프레임 단위로 재생하며, I 프레임의 경우에는 하나의 I 프레임 데이터가 몇 개의 RTP 패킷으로 저장되고, P 프레임의 경우 여러 장의 P 프레임이 하나의 RTP로 묶이는 경우도 있기 때문이다. 예를 들어서, 10fps의 컨텐츠 재생하는 경우 I 프레임 데이터를 가진 RTP 패킷은 몇 개가 동시에 100 ms 내에 재생되어 소모되며, P 프레임 데이터를 가진 RTP 패킷은 200 ms 이상이 지나야 재생되어 소모되는 경우가 생길 수 있기 때문이다.As shown in [Equation 1] to [Equation 5], if the duration of the average RTP packet is obtained and the playable time loss due to the loss packet is subtracted, it is possible to know the time value at which the actual UE can reproduce data in the queue buffer. . However, the time value described above is an approximate time value, and in order to calculate a more accurate time value, the time loss value due to the loss frame should be obtained instead of the time due to the RTP loss packet. That is, when the user terminal 110 plays the VOD streaming data, the user terminal 110 plays the data in units of actual frames. In the case of an I frame, one I frame data is stored as several RTP packets, and in the case of a P frame, several P frames are provided. This is because it is sometimes tied to RTP. For example, when playing 10 fps content, several RTP packets with I frame data are played back within 100 ms at the same time. RTP packets with P frame data may be played back after 200 ms or more. Because there is.

따라서, [수학식 1]은 개략적인 Qu 값을 얻는 방법이며, 이 산식 대신에 더욱 정확한 Qu(410) 값을 얻는 방법은, 수신된 RTP 패킷의 Payload를 분석해서 각가의 RTP 패킷이 I 프레임 데이터 또는 P 프레임 데이터를 가졌는지의 여부를 확인하고, 확인 결과 P 프레임 데이터를 가진 경우 몇 개의 프레임이 있는지를 '참고할 듀레이션'구간에서 조사하여 실제 재생 가능한 프레임 수를 산출하고, 여기에 현재 재생중인 컨텐츠의 fps를 나누어주면 그 결과가 정확한 Qu 값이 될 수 있다. 하지만, 이러한 방법은 Payload를 분석하는 작업이 포함되고 분석 작업은 비디오 또는 오디오 코덱(Codec)의 종류마다 다를 수 있기 때문에 Qu(410) 값을 얻어내는 방법이 비디오 또는 오디오 코덱 종류에 따라 달라져서 복잡하게 될 수 있으므로, 실제 발명의 구현에 있어서, 전술한 두 가지 방법 중 목적에 따른 방법을 선택하여 사용할 수 있을 것이다.Therefore, Equation 1 is a method of obtaining a rough Qu value, and a method of obtaining a more accurate Qu (410) value instead of this equation analyzes the payload of the received RTP packet to determine that each RTP packet is I frame data. Or check whether there is P frame data, and if it has P frame data, check how many frames are present in the 'duration' section to calculate the actual number of playable frames, and By dividing fps, the result can be an accurate Qu value. However, since this method involves analyzing payloads and the analysis may be different for each kind of video or audio codec, the method of obtaining Qu (410) value is complicated depending on the type of video or audio codec. In the actual implementation of the invention, one of the two methods described above may be selected and used according to the purpose.

QuSize(420)는 사용자 단말기(110)의 VOD 스트리밍 데이터를 재생하는 VOD 플레이어(112)가 확보한 큐 버퍼의 크기를 나타내는 값으로서 단위는 500 ms을 사용할 수 있다.QuSize 420 is a value representing the size of the queue buffer secured by the VOD player 112 that plays the VOD streaming data of the user terminal 110, and the unit may use 500 ms.

QuSize(420) 값은 VOD 서버(130)에서 전송할 컨텐츠의 피크 비트-레이트(Peack Bit-Rate) 정보만을 사용자 단말기(110)로 전송하는 경우, 사용자 단말기(110)에 탑재된 VOD 플레이어(112)가 임의 크기를 잡아서 QuSize(420)을 설정할 수 있다. 여기서, RTSP(Real-Time Streaming Protocol) 프로토콜에 의하면 AS라는 파라미터가 QuSize(420) 값은 [수학식 6a]가 될 수 있다.The value of QuSize 420 is VOD player 112 mounted in the user terminal 110 when only the peak bit rate information of the content to be transmitted from the VOD server 130 is transmitted to the user terminal 110. Can set the QuSize 420 by grabbing any size. Here, according to the Real-Time Streaming Protocol (RTSP) protocol, the AS parameter may have a QuSize 420 value of Equation 6a.

QuSize = 임의의 Queue Buffer Size [단위: bit] / Peak Bit-Rate × 2 [단위: 500 ms]QuSize = any queue buffer size [unit: bit] / Peak Bit-Rate × 2 [unit: 500 ms]

또한, QuSize(420) 값은 VOD 서버(130)에서 에버리지 비트-레이트(Average Bit-Rate)와 사용자 단말기(100)가 확보해야 할 큐 버퍼 사이즈(Queue Buffer Size) 정보를 전송하는 경우에, 사용자 단말기(110)가 VOD 서버(130)가 요구한 큐 버퍼 사이즈만큼을 잡을 수 있는지의 여부를 확인하고, 확인 결과, 사용자 단말기(110)에서 VOD 서버(130)로부터 요청받은 큐 버퍼 사이즈만큼을 잡을 수 있는 경우, [수학식 6b]를 적용한다. 여기서, 에버리지 비트-레이트는 RTP(Real-Time transport Protocol) 에서 SDP(Session Description Protocol)를 통해 X-AB라는 파라미터로 알릴 수 있으며, X-AB 파라미터는 본 발명에서 임의로 정의한 파라미터이다. 또한, 큐 버퍼 사이즈 정보는 X-IBUFsize라는 파라미터를 통해 사용자 단말기(110)로 전송할 수 있으며, X-IBUFsize 파라미터는 본 발명에서 임으로 정의한 파라미터이다.In addition, when the QuSize 420 value transmits an average bit rate in the VOD server 130 and queue buffer size information to be secured by the user terminal 100, It is checked whether the terminal 110 can catch the queue buffer size requested by the VOD server 130, and as a result of the check, the user terminal 110 catches the queue buffer size requested from the VOD server 130. If possible, Equation 6b applies. Here, the average bit-rate may be notified by a parameter called X-AB through a session description protocol (SDP) in a real-time transport protocol (RTP), and the X-AB parameter is a parameter arbitrarily defined in the present invention. In addition, the queue buffer size information may be transmitted to the user terminal 110 through a parameter called X-IBUFsize, and the X-IBUFsize parameter is a parameter defined in the present invention.

QuSize = Queue Buffer Size [단위: bit] / Average Bit-Rate × 2 [단위: 500 ms]QuSize = Queue Buffer Size [unit: bit] / Average Bit-Rate × 2 [unit: 500 ms]

한편, 확인 결과, 사용자 단말기(110)가 메모리가 부족하여 VOD 서버(130)가 요구한 큐 버퍼 사이즈만큼을 잡을 수 없는 경우, 아래 [수학식 7]을 적용한다.On the other hand, if the user terminal 110 is not enough memory to catch the queue buffer size requested by the VOD server 130, Equation 7 is applied.

QuSize = 실제로 할당된 Buffer Size [단위: bit] / Average Bit-Rate × 2 [단위: 500 ms]QuSize = Buffer Size actually allocated [unit: bit] / Average Bit-Rate × 2 [unit: 500 ms]

[수학식 6a], [수학식 6b] 또는 [수학식 7]을 통해 정해진 QuSize(420)의 값은 VOD 스트리밍 데이터의 재생 시작 시점에 한번 결정되며, 한번 결정된 값이 지속적으로 적용되는 것이다. 여기서, 종래 RTP 프로토콜 상의 AS 파라미터 또는 본 발명에 따른 X-IBUFsize, X-AB가 VOD 서버(130)로부터 사용자 단말기(110)로 전송되면 사용자 단말기(110)는 다시 QuSize(420)의 값을 계산하여 갱신한다.The value of QuSize 420 determined through [Equation 6a], [Equation 6b] or [Equation 7] is determined once at the start of playback of the VOD streaming data, and the determined value is continuously applied. Here, when the AS parameter on the conventional RTP protocol or the X-IBUFsize, X-AB according to the present invention is transmitted from the VOD server 130 to the user terminal 110, the user terminal 110 calculates the value of QuSize 420 again. To update.

Buf.Remain(430)은 사용자 단말기(110)의 현재 남아 있는 큐 버퍼의 저장공간의 값을 나타내며, 사용자 단말기(110)의 VOD 플레이어(112)가 큐 버퍼를 조사하여 그 값을 리턴한 값이다. 즉, Buf.Remain(430)는 Qu(410)의 값이 근사치를 제공하므로 생기는 오차로 인한 오동작을 방지하기 위하여 사용자 단말기(110)가 VOD 서버(130)로 전달하는 파라미터이다.Buf.Remain 430 represents a value of a storage space of the currently remaining cue buffer of the user terminal 110, and is a value returned by the VOD player 112 of the user terminal 110 after examining the cue buffer. . That is, Buf.Remain 430 is a parameter transmitted from the user terminal 110 to the VOD server 130 in order to prevent a malfunction due to an error caused by the value of Qu 410.

Seq.No(440)는 VOD 서버(130)에서 사용자 단말기(110)로 DSI 메시지를 전송할 때마다(즉, RTCP를 전송할 때마다) 1씩 증가되는 값이며, 255 다음에는 0이 되도록 한다. 즉, Seq.No(440)는 DSI 메시지가 손상되는 경우, 이를 서버에서 판단하여 대응하기 위한 값이다.Seq.No 440 is a value that is incremented by 1 every time the DOD message is transmitted from the VOD server 130 to the user terminal 110 (that is, each time the RTCP is transmitted), and becomes 0 after 255. That is, Seq.No 440 is a value for judging and responding to a DSI message when it is damaged.

도 5는 본 발명의 제 1 실시예 및 제 2 실시예에 따른 VOD 스트리밍 서비스를 제공하는 방법을 설명하기 위한 순서도이다.5 is a flowchart illustrating a method of providing a voice streaming service according to the first and second embodiments of the present invention.

사용자 단말기(110)는 사용자의 조작에 의한 키 또는 명령을 입력받아 유무선 통신망(120)을 경유하여 VOD 서버(130)에 접속하며, VOD 서버(130)로 VOD서비스 요청 신호를 전송한다(S510).The user terminal 110 receives a key or command by a user's operation, accesses the VOD server 130 via the wired / wireless communication network 120, and transmits a VOD service request signal to the VOD server 130 (S510). .

VOD 서버(130)에서 사용자 단말기(110)로부터 VOD 서비스 요청 신호를 수신한 후 VOD 스트리밍 데이터를 사용자 단말기(110)로 전송한다(S520).After receiving the VOD service request signal from the user terminal 110 in the VOD server 130 and transmits the VOD streaming data to the user terminal 110 (S520).

VOD 서버(130)는 X-RTCP 듀레이션 파라미터 메시지를 생성하여 사용자 단말기(110)로 전송한다(S530).The VOD server 130 generates an X-RTCP duration parameter message and transmits it to the user terminal 110 (S530).

여기서, X-RTCP 듀레이션 파라미터 메시지의 단위는 100 msec을 사용될 수 있으며, VOD 서버(130)는 VOD 스트리밍 도중에 X-RTCP 듀레이션 파라미터 메시지를 수시로 변경할 수 있다.Here, the unit of the X-RTCP duration parameter message may be used 100 msec, the VOD server 130 may change the X-RTCP duration parameter message from time to time during the VOD streaming.

사용자 단말기(110)는 유무선 통신망(120)을 경유하여 VOD 서버(130)로부터 VOD 스트리밍 데이터를 수신한 후 사용자 단말기(110)에 탑재된 VOD 플레이어(112)를 이용하여 VOD 스트리밍 데이터를 재생한다(S540).The user terminal 110 receives the VOD streaming data from the VOD server 130 via the wired / wireless communication network 120 and reproduces the VOD streaming data using the VOD player 112 mounted on the user terminal 110 ( S540).

사용자 단말기(110)는 VOD 서버(130)로부터 수신한 X-RTCP 듀레이션 파라미터 메시지에 따라 일정한 주기로 Qu(410), QuSize(420), Buf.Remain(430) 및 Seq.No(440) 파라미터를 포함한 DSI 메시지를 생성한다(S550).The user terminal 110 includes Qu (410), QuSize (420), Buf.Remain (430) and Seq.No (440) parameters at regular intervals according to the X-RTCP duration parameter message received from the VOD server 130. A DSI message is generated (S550).

사용자 단말기(110)는 X-RTCP 듀레이션 파라미터 메시지에 따라 일정한 주기로 DSI 메시지를 VOD 서버(130)로 전송한다(S560).The user terminal 110 transmits the DSI message to the VOD server 130 at regular intervals according to the X-RTCP duration parameter message (S560).

여기서, 사용자 단말기(110)는 DSI 메시지를 VOD 서버(130)로 전송하는 RTCP/RR 패킷 내의 익스텐션 필드(Extention Field)에 포함하여 전송할 수 있다. 물론, 이는 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 DSI 메시지를 VOD 서버(130)로 전송하는 방법을 다양 하게 수정 및 변형하여 적용 가능할 것이다.Here, the user terminal 110 may include a DSI message in an extension field in an RTCP / RR packet that transmits the DSI message to the VOD server 130. Of course, this is only illustrative of the technical idea of the present invention, those skilled in the art to which the present invention belongs to the DOD message to the VOD server 130 without departing from the essential characteristics of the present invention. The transmission method may be modified and modified in various ways.

VOD 서버(130)는 DSI 메시지를 분석하여 사용자 단말기(110)의 큐 버퍼 내의 재생 가능한 VOD 스트리밍 데이터의 크기(양) 또는 재생 시간이 양호한 상태인지의 여부를 확인한다(S570).The VOD server 130 analyzes the DSI message and checks whether the size (amount) or play time of the playable VOD streaming data in the queue buffer of the user terminal 110 is good (S570).

단계 S570의 확인 결과, 사용자 단말기(110)의 큐 버퍼 내의 재생 가능한 VOD 스트리밍 데이터의 크기(양) 또는 재생 시간이 양호한 상태가 아닌 경우, VOD 서버(130)는 VOD 스트리밍 데이터의 크기(양) 또는 재생 시간에 따라 비트-레이트를 점차 하향으로 제어한다(S580).As a result of checking in step S570, when the size (amount) or playback time of the playable VOD streaming data in the queue buffer of the user terminal 110 is not in a good state, the VOD server 130 may determine the size (amount) or the amount of VOD streaming data. The bit-rate is gradually controlled downward in accordance with the reproduction time (S580).

여기서, VOD 스트리밍 데이터의 크기 또는 재생 시간이 양호하지 않은 상태가 되는 대부분은 음영 지역 또는 주변에 사용자가 많은 경우 이용 가능한 네트워크의 대역폭이 충분하지 않은 경우이다.Here, in most cases where the size or reproduction time of the VOD streaming data is not good, the bandwidth of the available network is insufficient when there are many users in or around the shadowed area.

따라서, VOD 서버(130)는 비트-레이트를 점차 하향으로 제어함으로써, 사용자 단말기(110)로 전송하는 VOD 스트리밍 데이터가 네트워크상의 낮은 대역폭에서도 VOD 스트리밍 데이터의 크기 및 대생 시간을 충분히 확보될 수 있도록 하는 것이다. 하지만 비트-레이트가 하향으로 제어되는 경우 VOD 스트리밍 데이터가 중단되지는 않으나 화질이 초기보다 떨어지게 된다.Accordingly, the VOD server 130 gradually controls the bit-rate downward so that the VOD streaming data transmitted to the user terminal 110 can sufficiently secure the size and life time of the VOD streaming data even at a low bandwidth on the network. will be. However, if the bit-rate is controlled downward, the VOD streaming data will not be interrupted but the picture quality will be lower than the initial one.

한편, 단계 S570의 확인 결과, 사용자 단말기(110)의 큐 버퍼 내의 재생 가능한 VOD 스트리밍 데이터의 크기(양) 또는 재생 시간이 양호한 상태인 경우, VOD 서버(130)는 VOD 스트리밍 데이터의 크기(양) 또는 재생 시간에 따라 비트-레이트를 점차 상향으로 제어한다(S590).On the other hand, if the size (amount) or the playback time of the playable VOD streaming data in the queue buffer of the user terminal 110 is in a good state as a result of checking in step S570, the VOD server 130 determines the size (amount) of the VOD streaming data. Alternatively, the bit rate is gradually controlled upward according to the reproduction time (S590).

즉, VOD 서버(130)는 비트-레이트를 점차 상향으로 제어함으로써, 사용자 단말기(110)로 전송하는 VOD 스트리밍 데이터의 화질을 높아지도록(즉, 원래의 수준으로 회복되도록) 하는 것이다.That is, the VOD server 130 gradually controls the bit-rate upward to increase the quality of the VOD streaming data transmitted to the user terminal 110 (that is, to restore the original level).

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely illustrative of the technical idea of the present invention, and those skilled in the art to which the present invention pertains may make various modifications and changes without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are not intended to limit the technical idea of the present invention but to describe the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be interpreted by the following claims, and all technical ideas within the scope equivalent thereto should be construed as being included in the scope of the present invention.

이상 설명한 바와 같이, 본 발명은 유무선 통신망을 이용하여 사용자 단말기로 VOD(Video On Demand) 서비스를 제공하는 과정에서, VOD 서버에서 X-RTCP 듀레이션 파라미터 메시지(X-RTCP Duration Parameter Message)를 생성하여 사용자 단말기로 전송하면, 사용자 단말기는 X-RTCP 듀레이션 파라미터 메시지에 따른 일정한 주기로 DSI 메시지지(Decoding Status Information Message)를 생성한 후 X-RTCP 듀레이션 파라미터 메시지에 따른 일정한 주기로 DSI 메시지를 VOD 서버로 전송하며, VOD 서버에서 DSI 메시지를 분석하여 사용자 단말기의 큐 버퍼(Queue Buffer) 내의 재생 가능한 VOD 스트리밍 데이터의 크기(양) 또는 재생 시간에 따라 비트-레이트(Bit-Rate)를 하향 또는 상향으로 조절함으로써, 최적의 QoS를 제공할 수 있는 VOD 스트리밍 분야에 적용되어, VOD 스트리밍 서비스를 제공하는 과정에서 QoS를 향상하여 오디오 및 비디오 데이터를 최대한 끊기지 않게 출력할 수 있는 효과를 발생하는 매우 유용한 발명이다.As described above, the present invention generates an X-RTCP Duration Parameter Message in the VOD server in the process of providing a Video On Demand (VOD) service to the user terminal using a wired or wireless communication network. When transmitting to the terminal, the user terminal generates a DSI message (Decoding Status Information Message) at regular intervals according to the X-RTCP duration parameter message and transmits the DSI message to the VOD server at regular intervals according to the X-RTCP duration parameter message. By analyzing the DSI message in the VOD server, the bit-rate is adjusted downward or upward depending on the size (amount) or playback time of the playable VOD streaming data in the queue buffer of the user terminal. Applied to the field of VOD streaming that can provide QoS, and in the process of providing VOD streaming service. This is a very useful invention that improves QoS and produces the effect of outputting audio and video data as seamlessly as possible.

도 1은 본 발명의 제 1 실시예 및 제 2 실시예에 따른 VOD 스트리밍 서비스를 제공하는 시스템을 개략적으로 나타낸 블럭 구성도,1 is a block diagram schematically illustrating a system for providing a voice streaming service according to a first embodiment and a second embodiment of the present invention;

도 2는 본 발명의 제 1 실시예에 따른 VOD 서버를 개략적으로 나타낸 블럭 구성도,2 is a block diagram schematically illustrating a VOD server according to a first embodiment of the present invention;

도 3은 본 발명의 제 2 실시예에 따른 VOD 플레이어를 개략적으로 나타낸 블럭 구성도,3 is a block diagram schematically showing a VOD player according to a second embodiment of the present invention;

도 4는 본 발명의 제 1 실시예 및 제 2 실시예에 따른 DSI 메시지의 구조를 개략적으로 나타낸 블럭 구성도,4 is a block diagram schematically showing the structure of a DSI message according to the first and second embodiments of the present invention;

도 5는 본 발명의 제 1 실시예 및 제 2 실시예에 따른 VOD 스트리밍 서비스를 제공하는 방법을 설명하기 위한 순서도이다.5 is a flowchart illustrating a method of providing a voice streaming service according to the first and second embodiments of the present invention.

< 도면의 주요 부분에 대한 부호의 설명 ><Description of Symbols for Main Parts of Drawings>

110: 사용자 단말기 112: VOD 플레이어110: user terminal 112: VOD player

120: 유무선 통신망 130: VOD 서버120: wired and wireless network 130: VOD server

Claims (14)

유무선 통신망을 이용하여 VOD 스트리밍 서비스를 제공하는 시스템에 있어서,In a system for providing a VOD streaming service using a wired or wireless communication network, 상기 VOD 스트리밍 서비스에 해당하는 VOD 스트리밍 데이터(Video On Demand Streaming Data)를 수신하여 재생하는 사용자 단말기; 및 A user terminal that receives and plays VOD streaming data corresponding to the VOD streaming service; And 상기 사용자 단말기로 상기 VOD 스트리밍 데이터를 전송하며, X-RTCP 듀레이션 파라미터 메시지(X-Real-Time transport Control Protocol Duration Parameter Message)를 생성하여 상기 사용자 단말기로 전송하며, 상기 사용자 단말기로부터 DSI 메시지(Decoding Status Information Message)를 수신하여 분석한 후 상기 사용자 단말기의 큐 버퍼(Queue Buffer) 내에 재생 가능한 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간이 양호한 상태인지의 여부를 확인하고, 확인 결과, 상기 큐 버퍼 내에 재생 가능한 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간이 양호한 상태가 아닌 경우, 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간에 따라 비트-레이트(Bit-Rate)를 점차 하향으로 제어하는 VOD 서버The VOD streaming data is transmitted to the user terminal, an X-RTCP duration parameter message is generated and transmitted to the user terminal, and a DSI message is decoded from the user terminal. After receiving and analyzing an information message, it is checked whether or not the size or playback time of the VOD streaming data that can be played in the queue buffer of the user terminal is in a good state. If the size or playback time of the VOD streaming data is not in a good state, the VOD server gradually controls bit-rate according to the size or playback time of the VOD streaming data. 를 포함하되, 상기 사용자 단말기는 상기 VOD 서버로부터 수신한 상기 X-RTCP 듀레이션 파라미터 메시지에 따라 일정한 주기로 상기 DSI 메시지를 생성하여 상기 VOD 서버로 전송하며, 상기 VOD 서버는 상기 DSI 메시지에 포함된 상기 사용자 단말기의 큐 버퍼 내의 재생 가능한 상기 VOD 스트리밍 데이터의 총 소요 시간을 나타내는 값인 총 소요 시간(Qu) 정보, 상기 사용자 단말기의 큐 버퍼의 크기를 나타내는 값인 큐 버퍼 크기(QuSize) 정보, 상기 사용자 단말기의 큐 버퍼 내에 남아 있는 저장 공간의 크기를 나타내는 값인 저장 공간 크기(Buf.Remain) 정보 및 상기 DSI 메시지를 상기 VOD 서버로 전송할 때마다 1씩 증가되는 값으로서, 255까지 증가한 후 0으로 설정되는 값인 일련번호(Seq.No) 정보 중 적어도 하나 이상의 정보를 근거로 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간이 양호한 상태를 확인하는 것을 특징으로 하는 VOD 스트리밍 서비스를 제공하는 시스템.Includes, The user terminal generates the DSI message at regular intervals according to the X-RTCP duration parameter message received from the VOD server, and transmits the DSI message to the VOD server, the VOD server is the user included in the DSI message Total time required (Qu) information, which indicates the total time required for the playable VOD streaming data in the queue buffer of the terminal, queue buffer size (QuSize) information, which indicates the size of the queue buffer of the user terminal, and queue of the user terminal. Storage space size (Buf.Remain) information, which indicates the amount of storage space remaining in the buffer, and a serial number that is increased by 1 each time the DSI message is transmitted to the VOD server. Size of the VOD streaming data based on at least one piece of (Seq.No) information The system provides VOD streaming service, wherein to determine a good time to play state. VOD 서버가 사용자 단말기로 VOD 스트리밍 서비스를 제공하는 방법에 있어서,In the VOD server to provide a VOD streaming service to the user terminal, (a) 상기 사용자 단말기로 상기 VOD 스트리밍 서비스에 해당하는 VOD 스트리밍 데이터를 전송하는 단계;(a) transmitting VOD streaming data corresponding to the VOD streaming service to the user terminal; (b) 상기 사용자 단말기로 X-RTCP 듀레이션 파라미터 메시지를 전송하는 단계;(b) transmitting an X-RTCP duration parameter message to the user terminal; (c) 상기 사용자 단말기로부터 DSI 메시지를 수신하여 분석한 후 상기 사용자 단말기의 큐 버퍼(Queue Buffer) 내에 재생 가능한 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간이 양호한 상태인지의 여부를 확인하는 단계; 및(c) checking whether the size or reproduction time of the VOD streaming data that can be reproduced in a queue buffer of the user terminal is good after receiving and analyzing a DSI message from the user terminal; And (d) 상기 단계 (c)의 확인 결과, 상기 큐 버퍼 내에 재생 가능한 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간이 양호한 상태가 아닌 경우, 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간에 따라 비트-레이트를 점차 하향으로 제어하는 단계(d) If the size or playback time of the VOD streaming data that can be played back in the queue buffer is not in a good state, as a result of checking of step (c), the bit-rate is gradually increased according to the size or playback time of the VOD streaming data. Downward control 를 포함하되, 상기 VOD 서버는 상기 DSI 메시지에 포함된 상기 사용자 단말기의 큐 버퍼 내의 재생 가능한 상기 VOD 스트리밍 데이터의 총 소요 시간을 나타내는 값인 총 소요 시간(Qu) 정보, 상기 사용자 단말기의 큐 버퍼의 크기를 나타내는 값인 큐 버퍼 크기(QuSize) 정보, 상기 사용자 단말기의 큐 버퍼 내에 남아 있는 저장 공간의 크기를 나타내는 값인 저장 공간 크기(Buf.Remain) 정보 및 상기 DSI 메시지를 상기 VOD 서버로 전송할 때마다 1씩 증가되는 값으로서, 255까지 증가한 후 0으로 설정되는 값인 일련번호(Seq.No) 정보를 중 적어도 하나 이상의 정보를 근거로 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간이 양호한 상태를 확인하는 것을 특징으로 하는 VOD 스트리밍 서비스를 제공하는 방법.Included, the VOD server is a total time (Qu) information that is a value representing the total required time of the playable VOD streaming data in the queue buffer of the user terminal included in the DSI message, the size of the queue buffer of the user terminal Queue buffer size (QuSize) information indicating a value, storage space size (Buf.Remain) information indicating a size of the storage space remaining in the queue buffer of the user terminal, and 1 for each transmission of the DSI message to the VOD server. The value of the VOD streaming data may be confirmed to be in a good state based on at least one or more of serial number (Seq.No) information which is increased to 255 and then set to 0. How to provide video streaming service. 서버 통신부 및 서버 저장부를 구비하며, 유무선 통신망을 경유하여 사용자 단말기와 연동하여 VOD 스트리밍 서비스를 제공하는 서버에 있어서,In the server having a server communication unit and a server storage unit, and provides a VOD streaming service in conjunction with the user terminal via a wired or wireless communication network, 상기 사용자 단말기로 상기 VOD 스트리밍 서비스에 해당하는 VOD 스트리밍 데이터를 전송하도록 제어하며, X-RTCP 듀레이션 파라미터 메시지를 생성하여 상기 사용자 단말기로 전송하며, 상기 사용자 단말기로부터 DSI 메시지를 수신하여 분석한 후 상기 사용자 단말기의 큐 버퍼 내에 재생 가능한 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간이 양호한 상태인지의 여부를 확인하고, 확인 결과, 상기 큐 버퍼 내에 재생 가능한 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간이 양호한 상태가 아닌 경우, 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간에 따라 비트-레이트를 점차 하향으로 제어하는 서버 제어부Control to transmit the VOD streaming data corresponding to the VOD streaming service to the user terminal, generate and transmit an X-RTCP duration parameter message to the user terminal, receive and analyze a DSI message from the user terminal, and then When it is checked whether the size or playback time of the VOD streaming data that can be played back in the queue buffer of the terminal is in a good state, and as a result of the checking, the size or playback time of the VOD streaming data that can be played back in the queue buffer is not in a good state. And a server controller for gradually controlling a bit-rate downward according to the size or reproduction time of the VOD streaming data. 를 포함하되, 상기 서버 제어부는 상기 DSI 메시지에 포함된 상기 사용자 단말기의 큐 버퍼 내의 재생 가능한 상기 VOD 스트리밍 데이터의 총 소요 시간을 나타내는 값인 총 소요 시간(Qu) 정보, 상기 사용자 단말기의 큐 버퍼의 크기를 나타내는 값인 큐 버퍼 크기(QuSize) 정보, 상기 사용자 단말기의 큐 버퍼 내에 남아 있는 저장 공간의 크기를 나타내는 값인 저장 공간 크기(Buf.Remain) 정보 및 상기 DSI 메시지를 상기 VOD 서버로 전송할 때마다 1씩 증가되는 값으로서, 255까지 증가한 후 0으로 설정되는 값인 일련번호(Seq.No) 정보 중 적어도 하나 이상의 정보를 근거로 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간이 양호한 상태를 확인하는 것을 특징으로 하는 VOD 스트리밍 서비스를 제공하는 서버.The server control unit includes a total time required (Qu) information indicating a total time required for the playable VOD streaming data in the queue buffer of the user terminal included in the DSI message, the size of the queue buffer of the user terminal. Queue buffer size (QuSize) information indicating a value, storage space size (Buf.Remain) information indicating a size of the storage space remaining in the queue buffer of the user terminal, and 1 for each transmission of the DSI message to the VOD server. A VOD, characterized in that the size or playback time of the VOD streaming data is confirmed to be good based on at least one or more pieces of information of the serial number (Seq.No), which is increased to 255 and then set to 0. Servers that provide streaming services. 제 3 항에 있어서,The method of claim 3, wherein 상기 DSI 메시지는,The DSI message is, 상기 사용자 단말기에서 전송하는 RTCP(Real-Time transport Control Protocol)/RR(Receiver Report) 패킷 내의 익스텐션 필드(Extention Field)에 포함되는 것을 특징으로 하는 VOD 스트리밍 서비스를 제공하는 서버.And an extension field in an RTCP / Receiver Report (RR) packet transmitted from the user terminal. 제 4 항에 있어서,The method of claim 4, wherein 상기 서버 통신부는The server communication unit 상기 사용자 단말기로부터 상기 X-RTCP 듀레이션 파라미터 메시지에 따른 일정한 주기 마다 상기 DSI 메시지를 수신하는 것을 특징으로 하는 VOD 스트리밍 서비스를 제공하는 서버.And receiving the DSI message at regular intervals according to the X-RTCP duration parameter message from the user terminal. 제 5 항에 있어서,The method of claim 5, wherein 상기 서버 제어부는,The server control unit, 상기 VOD 스트리밍 데이터를 상기 사용자 단말기로 전송하는 중에 상기 X-RTCP 듀레이션 파라미터 메시지를 변경하는 것을 특징으로 하는 VOD 스트리밍 서비스를 제공하는 서버.And a server configured to change the X-RTCP duration parameter message while transmitting the VOD streaming data to the user terminal. 삭제delete 제 3 항에 있어서,The method of claim 3, wherein 상기 서버 제어부는,The server control unit, 상기 큐 버퍼 내에 재생 가능한 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간이 양호한 상태인 경우, 상기 VOD 스트리밍 데이터의 크기 또는 재생 시간에 따라 비트-레이트를 점차 상향으로 제어하는 것을 특징으로 하는 VOD 스트리밍 서비스를 제공하는 서버.When the size or playback time of the VOD streaming data that can be played back in the queue buffer is in a good state, the bit-rate is gradually controlled upward according to the size or playback time of the VOD streaming data. Server. 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete
KR1020070088135A 2007-08-31 2007-08-31 Method for providing video streaming service and system, server and user terminal for same KR100931344B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070088135A KR100931344B1 (en) 2007-08-31 2007-08-31 Method for providing video streaming service and system, server and user terminal for same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070088135A KR100931344B1 (en) 2007-08-31 2007-08-31 Method for providing video streaming service and system, server and user terminal for same

Publications (2)

Publication Number Publication Date
KR20090022615A KR20090022615A (en) 2009-03-04
KR100931344B1 true KR100931344B1 (en) 2009-12-11

Family

ID=40692466

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070088135A KR100931344B1 (en) 2007-08-31 2007-08-31 Method for providing video streaming service and system, server and user terminal for same

Country Status (1)

Country Link
KR (1) KR100931344B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104581229B (en) * 2015-01-16 2018-08-03 京东方科技集团股份有限公司 A kind of transmission of flow media data device, method and system
KR101937247B1 (en) 2016-12-28 2019-01-14 네이버 주식회사 Bandwidth estimation based on buffer and adaptive bitrate publish in real-time live environment

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050041597A (en) * 2003-10-31 2005-05-04 주식회사 케이티프리텔 Vod service system and method thereof
KR20060010352A (en) * 2004-07-28 2006-02-02 에스케이 텔레콤주식회사 Method for controlling of data transporting level by fraction lost

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050041597A (en) * 2003-10-31 2005-05-04 주식회사 케이티프리텔 Vod service system and method thereof
KR20060010352A (en) * 2004-07-28 2006-02-02 에스케이 텔레콤주식회사 Method for controlling of data transporting level by fraction lost

Also Published As

Publication number Publication date
KR20090022615A (en) 2009-03-04

Similar Documents

Publication Publication Date Title
KR101868280B1 (en) Information processing apparatus, information processing method, and computer-readable recording medium
US6792449B2 (en) Startup methods and apparatuses for use in streaming content
KR101702562B1 (en) Storage file format for multimedia streaming file, storage method and client apparatus using the same
CN106686438B (en) method, device and system for synchronously playing audio images across equipment
KR100800716B1 (en) Apparatus and method for tranmitting and receiving moving picture data using a close range communication
US7627685B2 (en) System and method for controlling transport rate of real time streaming service
WO2013008867A1 (en) Transmission device, method for controlling transmission device, control program, and recording medium
US9232243B2 (en) Audio and video streaming for media effects
US20080133744A1 (en) Multimedia data streaming server and method for dynamically changing amount of transmitting data in response to network bandwidth
TW200820777A (en) System and method of audio/video streaming
KR20060114080A (en) System and method of providing multimedia streaming service
WO2008108379A1 (en) Medium distribution system, distribution server device, medium distribution method used for them, and program thereof
KR20110065100A (en) Method and apparatus for supporting multimedia streaming service
JP2008022070A (en) Content distribution system, content distribution server, content reproduction terminal, program, content distribution method
EP1274248A1 (en) Data reproduction apparatus and data reproduction method
KR20090026068A (en) Content reproduction apparatus, content reproduction method, and content reproduction system
JP2005086362A (en) Data multiplexing method, data transmitting method and data receiving method
KR101164746B1 (en) System and method for compensating consecutive palyback delay of video playback service based on real-time streaming protocol
JP2009188735A (en) Device, system, method for distributing animation data and program
KR100931344B1 (en) Method for providing video streaming service and system, server and user terminal for same
JP2005121693A (en) Streaming delivery system and streaming delivery method
JP3860957B2 (en) Multimedia data transmission device
KR100453505B1 (en) Method and device for controlling multi-bit-rate of streaming by clietns in wireless network
KR20060035934A (en) Method for providing streaming service and apparatus of enabling the method
KR101328339B1 (en) Apparatus and method for managing buffer for playing streaming video

Legal Events

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

Payment date: 20121203

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20131202

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20141126

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20161130

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20181203

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20191130

Year of fee payment: 11