[go: up one dir, main page]

KR20150134716A - System for servicing cloud streaming, method of servicing cloud streaming and server for the same - Google Patents

System for servicing cloud streaming, method of servicing cloud streaming and server for the same Download PDF

Info

Publication number
KR20150134716A
KR20150134716A KR1020140061841A KR20140061841A KR20150134716A KR 20150134716 A KR20150134716 A KR 20150134716A KR 1020140061841 A KR1020140061841 A KR 1020140061841A KR 20140061841 A KR20140061841 A KR 20140061841A KR 20150134716 A KR20150134716 A KR 20150134716A
Authority
KR
South Korea
Prior art keywords
line
data
real
capturing
cloud streaming
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
KR1020140061841A
Other languages
Korean (ko)
Other versions
KR102094677B1 (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 KR1020140061841A priority Critical patent/KR102094677B1/en
Priority to EP14878394.7A priority patent/EP2937789A4/en
Priority to CN201480006988.0A priority patent/CN104981797B/en
Priority to EP20162243.8A priority patent/EP3683692A1/en
Priority to PCT/KR2014/011251 priority patent/WO2015119361A1/en
Priority to US14/761,251 priority patent/US10021162B2/en
Publication of KR20150134716A publication Critical patent/KR20150134716A/en
Application granted granted Critical
Publication of KR102094677B1 publication Critical patent/KR102094677B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

클라우드 스트리밍 서비스 시스템, 클라우드 스트리밍 서비스 방법 및 이를 위한 서버가 개시된다. 클라우드 스트리밍 서비스를 위해 실행되는 어플리케이션의 현재 구간에 상응하는 실행 화면을 캡처 및 인코딩하여 실시간 데이터를 생성하고, 상기 어플리케이션의 기설정된 선캡처 구간에 상응하는 실행 화면을 캡처 및 인코딩하여 선캡처 데이터를 생성하고, 상기 실시간 데이터를 전송하고, 상기 선캡처 데이터 중 적어도 일부를 전송함으로써 지연 시간을 최소화하고 반응 속도를 향상시킬 수 있다.A cloud streaming service system, a cloud streaming service method, and a server therefor are disclosed. Captures and encodes an execution screen corresponding to a current section of an application executed for a cloud streaming service to generate real-time data, captures and encodes an execution screen corresponding to a predetermined line capturing interval of the application, Transmitting the real-time data, and transmitting at least a part of the line capture data, thereby minimizing the delay time and improving the reaction speed.

Description

클라우드 스트리밍 서비스 시스템, 클라우드 스트리밍 서비스 방법 및 이를 위한 서버 {SYSTEM FOR SERVICING CLOUD STREAMING, METHOD OF SERVICING CLOUD STREAMING AND SERVER FOR THE SAME}Technical Field [0001] The present invention relates to a cloud streaming service system, a cloud streaming service system, a cloud streaming service method, and a server for the cloud streaming service system,

본 발명은 반응 속도를 향상시킬 수 있는 클라우드 스트리밍 서비스 시스템, 클라우드 스트리밍 서비스 방법 및 이를 위한 서버에 관한 것으로, 특히 화면 변화가 큰 구간의 화면을 미리 전송하여 사용자 입력에 대한 화면 변화가 큰 경우에도 반응 속도를 향상시킬 수 있는 클라우드 스트리밍 서비스 시스템, 클라우드 스트리밍 서비스 방법 및 이를 위한 서버에 관한 것이다.The present invention relates to a cloud streaming service system, a cloud streaming service method, and a server for the same. More particularly, the present invention relates to a cloud streaming service system, A cloud streaming service system, a cloud streaming service method, and a server for the same.

클라우드 컴퓨팅이란 인터넷 기반의 컴퓨터 기술을 의미하는 것으로, 사용자가 필요한 소프트웨어를 자신의 컴퓨터에 설치하지 않고도 인터넷 접속을 통해 언제든 사용할 수 있으며, 소프트웨어 구동에 있어 요구되는 고가의 하드웨어도 손쉽게 공유할 수 있는 컴퓨팅 서비스를 의미한다. 즉, 개인이 웹에 접속해서 포토샵, 오피스 등 고사양 소프트웨어를 이용할 수 있고, 이에 대한 데이터 저장도 웹 상에서 이루어진다. 결국 하나의 클라우드 컴퓨팅 서버군에 여러 사람이 접속하여 개인 작업을 할 수 있다.Cloud computing refers to Internet-based computer technology, which allows users to use the Internet at any time without having to install the necessary software on their computers, and to easily share the expensive hardware required to run the software Service. In other words, an individual can access the Web and use high-end software such as Photoshop and Office, and the data is stored on the web. As a result, multiple users can connect to a single cloud computing server cluster to perform individual tasks.

IT 기술 및 어플리케이션 시장이 발달함에 따라, 사용자들이 개인 소유의 단말 장치를 통해 처리하는 데이터 양이 급격히 증가하고 있다. 이 경우, 클라우드 컴퓨팅 시스템은 이러한 데이터 처리량 증가에 대한 해결책이 될 수 있다. 또한, 클라우드 컴퓨팅 시스템은 단말 장치의 소형화의 밑거름이 될 수 있다.As the IT technology and application markets evolve, the amount of data that users process through their own terminal devices is increasing rapidly. In this case, the cloud computing system can be a solution to this increase in data throughput. In addition, the cloud computing system can be a basis for miniaturization of the terminal device.

예를 들어, 대용량의 영상 처리가 요구되는 소프트웨어를 실행하는 데에 있어, 클라우드 컴퓨팅 기반의 서버를 통해서 상기 소프트웨어를 실행하도록 하고, 그 실행 결과 화면만을 스트리밍 기술을 이용하여 사용자의 단말기로 전송함으로써, 사용자가 단말기를 통해 고사양의 소프트웨어를 이용할 수 있다.For example, in executing software requiring a large amount of image processing, the software is executed through a server based on cloud computing, and only the execution result screen is transmitted to the user's terminal using streaming technology, The user can use high-end software through the terminal.

이와 같이, 사용자의 단말 장치를 이용하여, 단말 장치는 클라우드 컴퓨팅 서버에 소프트웨어 실행에 대한 요청만을 전송하고, 클라우드 컴퓨팅 서버는 사용자가 요청한 소프트웨어의 실행 화면을 스트리밍을 통해 사용자에게 제공하는 기술을 클라우드 스트리밍 서비스라고 한다.As described above, the terminal device transmits a request for software execution to the cloud computing server using the terminal device of the user, and the cloud computing server transmits the execution screen of the software requested by the user to the user through streaming. Service.

이 때, 화면의 변화량에 따라서 전송량의 차이가 발생하게 되고, 화면의 변화가 큰 경우 전송 시간이 더 길어지게 되어서, 사용자의 입력 이후 클라이언트가 해당 화면을 받을 때까지 더 많은 시간이 필요하게 되어 지연이 발생하게 된다. 반대로, 화면의 변화가 작은 경우 전송 시간이 짧아지고, 사용자의 다음 입력시까지 여유 대역이 발생하게 되므로, 여유 대역을 이용하여 추가로 데이터를 전송할 수 있다면 지연 시간을 최소화할 수 있다.In this case, the amount of transmission varies depending on the amount of change of the screen. If the change of the screen is large, the transmission time becomes longer, so that it takes more time until the client receives the screen after inputting by the user. . On the contrary, when the change of the screen is small, the transmission time is shortened and the spare band is generated until the next input of the user. Therefore, if additional data can be transmitted using the spare band, the delay time can be minimized.

따라서, 클라우드 스트리밍 서비스를 제공할 때, 여유 대역이 있는 경우, 화면 변화가 큰 구간의 화면을 미리 전송하여 반응 시간을 감소시킬 수 있는 새로운 클라우드 스트리밍 서비스 기술의 필요성이 절실하게 대두된다.Therefore, when a cloud streaming service is provided, there is a need for a new cloud streaming service technology capable of reducing the response time by transmitting a screen having a large screen change in advance, when there is a spare bandwidth.

한국 공개 특허 제10-2000-0040087A호, 2000년 7월 5일 공개 (명칭: 장면 변화분포를 이용한 비디오 재생 속도제어 방법)Korean Patent Publication No. 10-2000-0040087A, published on July 5, 2000 (Name: Video playback speed control method using scene change distribution)

본 발명의 목적은, 클라우드 스트리밍 서비스를 제공할 때 지연 시간을 최소화하는 것이다.It is an object of the present invention to minimize the delay time when providing a cloud streaming service.

또한, 본 발명의 목적은 화면 변화가 큰 구간을 인식하고, 해당 화면을 미리 캡처 및 인코딩하여 여유 대역에 미리 전송함으로써 화면 변화가 큰 구간에서의 지연 시간을 최소화하는 것이다.It is also an object of the present invention to minimize the delay time in a section where a screen change is large by recognizing a section in which a screen change is large and capturing and encoding the screen in advance and transmitting the screen in advance to the reserved band.

또한, 본 발명의 목적은 미리 전송한 선캡처 데이터와, 실제로 전송해야할 데이터가 상이할 때, 상이한 부분만을 전송함으로써 사용자의 체감 반응 속도를 향상시키는 것이다.It is also an object of the present invention to improve the speed of the user's sensory response by transmitting only different parts when the line capture data transmitted in advance and the data to be actually transmitted are different.

상기한 목적을 달성하기 위한 본 발명에 따른 클라우드 스트리밍 서버는, 클라우드 스트리밍 서비스를 위해 실행되는 어플리케이션의 현재 구간에 상응하는 실행 화면을 캡처 및 인코딩하여 실시간 데이터를 생성하는 제어부; 상기 어플리케이션의 기설정된 선캡처 구간에 상응하는 실행 화면을 캡처 및 인코딩한, 선캡처 데이터가 저장되는 저장부; 및 상기 실시간 데이터를 전송하고, 상기 선캡처 데이터 중 적어도 일부를 전송하는 통신부를 포함한다.According to an aspect of the present invention, there is provided a cloud streaming server including: a controller for capturing and encoding an execution screen corresponding to a current section of an application executed for a cloud streaming service to generate real-time data; A storage unit for storing pre-capture data obtained by capturing and encoding an execution screen corresponding to a predetermined pre-capture interval of the application; And a communication unit for transmitting the real-time data and transmitting at least a part of the line-capturing data.

이 때, 통신부는 상기 현재 구간에 상응하는 실시간 데이터를 전송한 후, 다음 입력을 수신할 때까지의 여유 대역 동안 상기 선캡처 데이터 중 전송이 수행되지 않은 부분의 적어도 일부를 전송할 수 있다.In this case, the communication unit may transmit at least a part of the pre-transmission data that is not transmitted during the spare band until the next input is received after transmitting the real-time data corresponding to the current section.

이 때, 통신부는 상기 선캡처 데이터 전부의 전송이 수행되기 전에 상기 선캡처 구간에 진입하여 상기 선캡처 구간에 상응하는 실시간 데이터의 전송을 요청받은 경우, 상기 선캡처 데이터 중 전송이 수행되지 않은 부분을 전송할 수 있다.At this time, if the communication unit enters the line capturing period before transmission of all of the line capturing data is performed and the transmission of the real-time data corresponding to the line capturing period is requested, Lt; / RTI >

이 때, 통신부는 상기 선캡처 구간에 진입하였을 때, 전송할 실시간 데이터와 상기 선캡처 데이터가 상이한 경우, 상기 실시간 데이터 중 상기 선캡처 데이터와 상이한 부분만을 전송할 수 있다.In this case, when the real-time data to be transmitted and the line capture data are different, the communication unit may transmit only the portion of the real-time data that is different from the line capture data when the real-time data is entered.

이 때, 선캡처 구간은 사용자 입력 시나리오에 기반하여 탐색된, 화면의 변화가 기설정된 기준보다 큰 구간일 수 있다.In this case, the line capturing period may be a period in which a change in the screen, which is searched based on a user input scenario, is larger than a preset reference.

이 때, 선캡처 구간은 상기 어플리케이션의 실행 히스토리에 기반하여 분석된, 화면의 변화가 기설정된 기준보다 큰 구간일 수 있다.In this case, the line capturing period may be a period in which a screen change analyzed based on the execution history of the application is larger than a preset reference.

이 때, 선캡처 구간은 상기 어플리케이션의 실행 히스토리에 기반하여 분석된, 사용자의 진입이 기설정된 기준보다 많은 구간일 수 있다.At this time, the line capturing period may be an interval of the user's entry, which is analyzed based on the execution history of the application, which is longer than the preset reference.

또한, 본 발명에 따른 단말 장치는, 클라우드 스트리밍 서버에서 실행되는 어플리케이션의 현재 구간에 상응하는 실행 화면이 캡처 및 인코딩되어 생성된 실시간 데이터 및 상기 어플리케이션의 기설정된 선캡처 구간에 상응하는 실행 화면이 캡처 및 인코딩되어 생성된 선캡처 데이터 중 적어도 어느 하나를 수신하는 통신부; 및 상기 실시간 데이터 및 상기 선캡처 데이터 중 어느 하나를 화면에 표시함으로써 클라우드 스트리밍 서비스를 제공하는 제어부를 포함한다.In addition, the terminal device according to the present invention may be configured such that real-time data generated by capturing and encoding an execution screen corresponding to a current section of an application executed in a cloud streaming server and an execution screen corresponding to a predetermined line capturing interval of the application are captured And a line capturing data generated by encoding; And a controller for providing the cloud streaming service by displaying any one of the real-time data and the pre-capture data on the screen.

이 때, 통신부는 상기 현재 구간에 상응하는 실시간 데이터를 수신한 후, 다음 입력을 전송할 때까지의 여유 대역 동안 상기 선캡처 데이터 중 수신되지 않은 부분의 적어도 일부를 수신할 수 있다.At this time, the communication unit may receive at least a part of an unreceived portion of the line capture data during a spare band until receiving the real time data corresponding to the current section and transmitting the next input.

이 때, 통신부는 상기 선캡처 데이터 전부를 수신하기 전에 상기 선캡처 구간에 진입한 경우, 상기 선캡처 데이터 중 수신되지 않은 부분을 수신할 수 있다.In this case, when the communication unit enters the line capturing period before receiving all the line capturing data, the communication unit can receive the unreceived portion of the line capturing data.

이 때, 제어부는 상기 어플리케이션이 상기 선캡처 구간에 진입한 경우, 상기 선캡처 데이터를 상기 화면에 표시하고, 그렇지 아니한 경우 상기 실시간 데이터를 상기 화면에 표시할 수 있다.In this case, when the application enters the pre-capture period, the control unit may display the pre-capture data on the screen, and if not, display the real-time data on the screen.

또한, 본 발명에 따른 클라우드 스트리밍 서비스 방법은, 클라우드 스트리밍 서비스를 위해 실행되는 어플리케이션의 기설정된 선캡처 구간에 상응하는 실행 화면을 캡처 및 인코딩하여 선캡처 데이터를 생성하는 단계; 상기 어플리케이션의 현재 구간에 상응하는 실행 화면을 캡처 및 인코딩하여 실시간 데이터를 생성하는 단계; 상기 실시간 데이터를 전송하는 단계; 및 상기 선캡처 데이터 중 적어도 일부를 전송하는 단계를 포함한다.According to another aspect of the present invention, there is provided a cloud streaming service method comprising: generating a line capture data by capturing and encoding an execution screen corresponding to a predetermined line capture interval of an application executed for a cloud streaming service; Capturing and encoding an execution screen corresponding to a current section of the application to generate real-time data; Transmitting the real-time data; And transmitting at least some of the pre-capture data.

이 때, 선캡처 데이터 중 적어도 일부를 전송하는 단계는 다음 입력을 수신할 때까지의 여유 대역 동안 상기 선캡처 데이터 중 전송이 수행되지 않은 부분의 적어도 일부를 전송할 수 있다.At this time, the step of transmitting at least a part of the line capture data may transmit at least a part of the line capture data that has not been transmitted during the spare band until receiving the next input.

이 때, 선캡처 데이터 중 적어도 일부를 전송하는 단계는 상기 선캡처 데이터 전부의 전송이 수행되기 전에 상기 선캡처 구간에 진입하여 상기 선캡처 데이터의 전송을 요청받은 경우, 상기 선캡처 데이터 중 전송이 수행되지 않은 부분을 전송할 수 있다.At this time, at least a part of the line capture data may be transmitted before the transmission of all of the line capture data is performed, and when the transmission of the line capture data is requested, It is possible to transmit an unexecuted portion.

또한, 본 발명에 따른 클라우드 스트리밍 서비스 방법은, 클라우드 스트리밍 서버에서 실행되는 어플리케이션의 현재 구간에 상응하는 실행 화면이 캡처 및 인코딩되어 생성된 실시간 데이터를 수신하는 단계; 상기 어플리케이션의 기설정된 선캡처 구간에 상응하는 실행 화면이 캡처 및 인코딩되어 생성된 선캡처 데이터 중 적어도 일부를 수신하는 단계; 및 상기 실시간 데이터 및 상기 선캡처 데이터 중 어느 하나를 화면에 표시함으로써 클라우드 스트리밍 서비스를 제공하는 단계를 포함한다.According to another aspect of the present invention, there is provided a cloud streaming service method comprising: receiving real-time data generated by capturing and encoding an execution screen corresponding to a current section of an application executed in a cloud streaming server; Receiving at least a part of line capture data generated by capturing and encoding an execution screen corresponding to a predetermined line capturing interval of the application; And providing the cloud streaming service by displaying either the real-time data or the line-capturing data on the screen.

이 때, 선캡처 데이터 중 적어도 일부를 수신하는 단계는 다음 입력을 전송할 때까지의 여유 대역 동안 상기 선캡처 데이터 중 수신되지 않은 부분의 적어도 일부를 수신할 수 있다.At this time, receiving at least a portion of the line capture data may receive at least a portion of the unreceived portion of the line capture data during an extra band before transmitting the next input.

이 때, 선캡처 데이터 중 적어도 일부를 수신하는 단계는 상기 선캡처 데이터 전부를 수신하기 전에 상기 선캡처 구간에 진입한 경우, 상기 선캡처 데이터 중 수신되지 않은 부분을 수신할 수 있다.At this time, the step of receiving at least part of the line capture data may receive the unreceived part of the line capture data when entering the line capture section before receiving all of the line capture data.

이 때, 서비스를 제공하는 단계는 상기 어플리케이션이 상기 선캡처 구간에 진입한 경우, 상기 선캡처 데이터를 상기 화면에 표시하고, 그렇지 아니한 경우 상기 실시간 데이터를 상기 화면에 표시할 수 있다.In this case, the step of providing the service may display the pre-capture data on the screen when the application enters the pre-capture period, and display the real-time data on the screen if not.

또한, 본 발명에 따른 클라우드 스트리밍 서비스 시스템은, 클라우드 스트리밍 서비스를 위해 실행되는 어플리케이션의 실행 화면을 캡처 및 인코딩하여 생성된 실시간 데이터 및 상기 어플리케이션의 기설정된 선캡처 구간에 상응하는 실행 화면을 캡처 및 인코딩하여 생성된 선캡처 데이터 중 적어도 어느 하나를 전송하는 클라우드 스트리밍 서버; 및 상기 실시간 데이터 및 상기 선캡처 데이터 중 적어도 어느 하나를 수신하고, 상기 실시간 데이터 및 상기 선캡처 데이터 중 어느 하나를 화면에 표시함으로써 클라우드 스트리밍 서비스를 제공하는 단말 장치를 포함한다.In addition, the cloud streaming service system according to the present invention may capture and encode an execution screen of an application executed for a cloud streaming service, and capture and encode an execution screen corresponding to the generated real- A cloud streaming server for transmitting at least any one of line capture data generated by the server; And a terminal device receiving at least one of the real-time data and the line-capturing data, and displaying the real-time data and the line-capturing data on a screen to provide a cloud streaming service.

본 발명에 따르면, 클라우드 스트리밍 서비스를 제공할 때 지연 시간을 최소화할 수 있다.According to the present invention, delay time can be minimized when providing a cloud streaming service.

또한, 본 발명은 화면 변화가 큰 구간을 인식하고, 해당 화면을 미리 캡처 및 인코딩하여 여유 대역에 미리 전송함으로써 화면 변화가 큰 구간에서의 지연 시간을 최소화할 수 있다.In addition, the present invention recognizes a section having a large screen change, captures and encodes the screen in advance, and transmits the screen in advance to the reserved band, thereby minimizing a delay time in a section where a screen change is large.

또한, 본 발명은 미리 전송한 선캡처 데이터와, 실제로 전송해야할 데이터가 상이할 때, 상이한 부분만을 전송함으로써 사용자의 체감 반응 속도를 향상시키는 것이다.In addition, the present invention improves the user's sensory response speed by transmitting only different parts when the line capturing data transmitted in advance differs from the actually transmitted data.

도 1은 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 시스템을 나타낸 블록도이다.
도 2는 도 1에 도시된 클라우드 스트리밍 서버의 일 예를 나타낸 블록도이다.
도 3은 도 1에 도시된 단말 장치의 일 예를 나타낸 블록도이다.
도 4 내지 도 7은 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 화면의 변화의 일 예를 나타낸 도면이다.
도 8은 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 방법(서버 관점)의 일 예를 나타낸 동작 흐름도이다.
도 9는 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 방법(단말 관점)의 일 예를 나타낸 동작 흐름도이다.
1 is a block diagram illustrating a cloud streaming service system according to an embodiment of the present invention.
2 is a block diagram illustrating an example of the cloud streaming server shown in FIG.
3 is a block diagram showing an example of the terminal device shown in FIG.
4 to 7 are views illustrating an example of a change of a cloud streaming service screen according to an embodiment of the present invention.
FIG. 8 is a flowchart illustrating an example of a cloud streaming service method (server perspective) according to an embodiment of the present invention.
FIG. 9 is an operational flowchart illustrating an example of a cloud streaming service method (terminal viewpoint) according to an embodiment of the present invention.

이하 본 발명의 바람직한 실시예를 첨부한 도면을 참조하여 상세히 설명한다. 다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following description and the accompanying drawings, detailed description of well-known functions or constructions that may obscure the subject matter of the present invention will be omitted. It should be noted that the same constituent elements are denoted by the same reference numerals as possible throughout the drawings.

이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다. 또한 제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하기 위해 사용하는 것으로, 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 뿐, 상기 구성요소들을 한정하기 위해 사용되지 않는다.The terms and words used in the present specification and claims should not be construed to be limited to ordinary or dictionary meanings and the inventor is not limited to the concept of terminology for describing his or her invention in the best way. It should be interpreted as meaning and concept consistent with the technical idea of the present invention. Therefore, the embodiments described in the present specification and the configurations shown in the drawings are merely the most preferred embodiments of the present invention, and not all of the technical ideas of the present invention are described. Therefore, It is to be understood that equivalents and modifications are possible. Also, the terms first, second, etc. are used for describing various components and are used only for the purpose of distinguishing one component from another component, and are not used to define the components.

도 1은 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 시스템을 나타낸 블록도이다.1 is a block diagram illustrating a cloud streaming service system according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 시스템은 클라우드 스트리밍 서버(110), 단말 장치(120) 및 네트워크(130)를 포함한다.Referring to FIG. 1, a cloud streaming service system according to an embodiment of the present invention includes a cloud streaming server 110, a terminal device 120, and a network 130.

클라우드 스트리밍 서버(110)는 클라우드 스트리밍 서비스를 위해 실행되는 어플리케이션의 현재 구간에 상응하는 실행 화면을 캡처 및 인코딩하여 실시간 데이터를 생성하고, 상기 어플리케이션의 기설정된 선캡처 구간에 상응하는 실행 화면을 캡처 및 인코딩한, 선캡처 데이터가 저장되고, 상기 실시간 데이터를 전송하고, 상기 선캡처 데이터 중 적어도 일부를 전송한다.The cloud streaming server 110 captures and encodes an execution screen corresponding to the current section of the application executed for the cloud streaming service to generate real-time data, and captures and displays an execution screen corresponding to a predetermined line capturing interval of the application Encoded, line capture data is stored, the real time data is transmitted, and at least some of the line capture data is transmitted.

이 때, 클라우드 스트리밍 서버(110)는 상기 현재 구간에 상응하는 실시간 데이터를 전송한 후, 다음 입력을 수신할 때까지의 여유 대역 동안 상기 선캡처 데이터 중 전송이 수행되지 않은 부분의 적어도 일부를 전송할 수 있다.At this time, the cloud-streaming server 110 transmits real-time data corresponding to the current section, and transmits at least a part of the line-capturing data that has not been transmitted during a spare band until receiving the next input .

이 때, 클라우드 스트리밍 서버(110)는 상기 선캡처 데이터 전부의 전송이 수행되기 전에 상기 선캡처 구간에 진입하여 상기 선캡처 구간에 상응하는 실시간 데이터의 전송을 요청받은 경우, 상기 선캡처 데이터 중 전송이 수행되지 않은 부분을 전송할 수 있다.At this time, the cloud streaming server 110 enters the line capture interval before transmission of all of the line capture data is performed, and when the transmission of the real-time data corresponding to the line capture interval is requested, Can be transmitted.

이 때, 클라우드 스트리밍 서버(110)는 상기 선캡처 구간에 진입하였을 때, 전송할 실시간 데이터와 상기 선캡처 데이터가 상이한 경우, 상기 실시간 데이터 중 상기 선캡처 데이터와 상이한 부분만을 전송할 수 있다.At this time, when the real-time data to be transmitted and the line capture data are different, the cloud streaming server 110 can transmit only the portion of the real-time data that is different from the line capture data when entering the line capture interval.

이 때, 선캡처 구간은 사용자 입력 시나리오에 기반하여 탐색된, 화면의 변화가 기설정된 기준보다 큰 구간일 수 있다.In this case, the line capturing period may be a period in which a change in the screen, which is searched based on a user input scenario, is larger than a preset reference.

또는, 선캡처 구간은 상기 어플리케이션의 실행 히스토리에 기반하여 분석된, 화면의 변화가 기설정된 기준보다 큰 구간일 수 있다.Alternatively, the line capturing period may be a period in which a screen change analyzed based on the execution history of the application is larger than a preset reference.

또는, 선캡처 구간은 상기 어플리케이션의 실행 히스토리에 기반하여 분석된, 사용자의 진입이 기설정된 기준보다 많은 구간일 수 있다.Alternatively, the line capturing period may be an interval in which the user's entry, which is analyzed based on the execution history of the application, is larger than a predetermined reference.

단말 장치(120)는 클라우드 스트리밍 서버에서 실행되는 어플리케이션의 현재 구간에 상응하는 실행 화면이 캡처 및 인코딩되어 생성된 실시간 데이터 및 상기 어플리케이션의 기설정된 선캡처 구간에 상응하는 실행 화면이 캡처 및 인코딩되어 생성된 선캡처 데이터 중 적어도 어느 하나를 수신하고, 상기 실시간 데이터 및 상기 선캡처 데이터 중 어느 하나를 화면에 표시함으로써 클라우드 스트리밍 서비스를 제공한다.The terminal device 120 captures and encodes an execution screen corresponding to the real-time data generated by capturing and encoding an execution screen corresponding to the current section of the application executed in the cloud streaming server and a predetermined line capturing interval of the application And displaying the real-time data and the line-capturing data on a screen to provide a cloud streaming service.

이 때, 단말 장치(120)는 이하에서는 통신망에 연결되어 클라우드 컴퓨팅 시스템 기반으로 컨텐츠를 업로드 또는 다운로드 할 수 있는 이동통신단말기의 예를 들어 설명하지만, 단말 장치(120)는 이동통신단말기에 한정된 것이 아니고, 모든 정보통신기기, 멀티미디어 단말기, 유선 단말기, 고정형 단말기 및 IP(Internet Protocol) 단말기 등의 다양한 단말기에 적용될 수 있다. 또한, 단말 장치(120)는 휴대폰, PMP(Portable Multimedia Player), MID(Mobile Internet Device), 스마트폰(Smart Phone), 데스크톱(Desktop), 태블릿컴퓨터(Tablet PC), 노트북(Note book), 넷북(Net book), 개인휴대용 정보단말기(Personal Digital Assistant; PDA), 스마트 TV 및 정보통신 기기 등과 같은 다양한 이동통신 사양을 갖는 모바일(Mobile) 단말기일 때 유리하게 활용될 수 있다.Hereinafter, the terminal device 120 will be described as an example of a mobile communication terminal connected to a communication network and capable of uploading or downloading content based on a cloud computing system. However, the terminal device 120 is limited to a mobile communication terminal The present invention can be applied to various terminals such as all information communication devices, multimedia terminals, wired terminals, fixed type terminals and IP (Internet Protocol) terminals. The terminal device 120 may be a mobile phone, a portable multimedia player (PMP), a mobile Internet device (MID), a smart phone, a desktop, a tablet PC, a notebook, A mobile terminal having various mobile communication specifications such as a net book, a personal digital assistant (PDA), a smart TV, an information communication device, and the like.

이 때, 단말 장치(120)는 상기 현재 구간에 상응하는 실시간 데이터를 수신한 후, 다음 입력을 전송할 때까지의 여유 대역 동안 상기 선캡처 데이터 중 수신되지 않은 부분의 적어도 일부를 수신할 수 있다.At this time, the terminal device 120 may receive at least a part of an unreceived portion of the pre-capture data during an extra band until the next input is transmitted after receiving the real-time data corresponding to the current section.

이 때, 단말 장치(120)는 상기 선캡처 데이터 전부를 수신하기 전에 상기 선캡처 구간에 진입한 경우, 상기 선캡처 데이터 중 수신되지 않은 부분을 수신할 수 있다.At this time, when the terminal device 120 enters the line capturing period before receiving all of the line capturing data, the terminal device 120 may receive the unreceived portion of the line capturing data.

이 때, 단말 장치(120)는 상기 어플리케이션이 상기 선캡처 구간에 진입한 경우, 상기 선캡처 데이터를 상기 화면에 표시하고, 그렇지 아니한 경우 상기 실시간 데이터를 상기 화면에 표시할 수 있다.At this time, the terminal device 120 may display the pre-capture data on the screen when the application enters the pre-capture interval, and display the real-time data on the screen if not.

네트워크(130)는 클라우드 스트리밍 서버(110) 및 단말 장치(120) 사이에 데이터를 전달하는 통로를 제공하는 것으로서, 기존에 이용되는 네트워크 및 향후 개발 가능한 네트워크를 모두 포괄하는 개념이다. 예를 들면, 네트워크(130)는 한정된 지역 내에서 각종 정보장치들의 통신을 제공하는 유무선근거리통신망, 이동체 상호 간 및 이동체와 이동체 외부와의 통신을 제공하는 이동통신망, 위성을 이용해 지구국과 지구국간 통신을 제공하는 위성통신망이거나 유무선 통신망 중에서 어느 하나이거나, 둘 이상의 결합으로 이루어질 수 있다. 한편, 네트워크(130)의 전송 방식 표준은, 기존의 전송 방식 표준에 한정되는 것은 아니며, 향후 개발될 모든 전송 방식 표준을 포함할 수 있다.The network 130 provides a path for transferring data between the cloud streaming server 110 and the terminal device 120, and is a concept covering both existing networks and future developable networks. For example, the network 130 may be a wired or wireless local area network that provides communication of various information devices within a limited area, a mobile communication network that provides communication between mobile objects and mobile objects outside the mobile object, Or a wired / wireless communication network, or a combination of two or more. Meanwhile, the transmission scheme standard of the network 130 is not limited to the existing transmission scheme standard, and may include all transmission scheme standards to be developed in the future.

도 2는 도 1에 도시된 클라우드 스트리밍 서버의 일 예를 나타낸 블록도이다.2 is a block diagram illustrating an example of the cloud streaming server shown in FIG.

도 2를 참조하면, 도 1에 도시된 클라우드 스트리밍 서버는 제어부(210), 저장부(220) 및 통신부(230)를 포함한다.Referring to FIG. 2, the cloud streaming server shown in FIG. 1 includes a control unit 210, a storage unit 220, and a communication unit 230.

제어부(210)는 운영 체제(OS, Operation System) 및 각 구성을 구동시키는 프로세스 장치가 될 수 있다. 특히, 본 발명에 따른 제어부(210)는 클라우드 스트리밍 서비스를 위해 실행되는 어플리케이션의 현재 구간에 상응하는 실행 화면을 캡처 및 인코딩하여 실시간 데이터를 생성한다.The control unit 210 may be an operating system (OS) and a process unit for driving each configuration. In particular, the controller 210 according to the present invention captures and encodes an execution screen corresponding to a current section of an application executed for a cloud streaming service to generate real-time data.

이 때, 실시간 데이터는 사용자의 입력에 따라 실행된 어플리케이션이 실행되고 있는 현재 화면이 캡처 및 인코딩된 데이터일 수 있다. 즉, 어플리케이션의 실행에 따라 실시간으로 계속 생성된다.At this time, the real-time data may be the captured and encoded data of the current screen in which the executed application is executed according to the input of the user. That is, it is continuously generated in real time as the application is executed.

저장부(220)는 데이터를 저장하기 위한 장치로, 주 기억 장치 및 보조 기억 장치를 포함하고, 클라우드 스트리밍 서버의 기능 동작에 필요한 응용 프로그램을 저장한다. 이러한 저장부(220)는 크게 프로그램 영역과 데이터 영역을 포함할 수 있다. 여기서, 클라우드 스트리밍 서버는 사용자의 요청에 상응하여 각 기능을 활성화하는 경우, 제어부(210)의 제어 하에 해당 응용 프로그램들을 실행하여 각 기능을 제공하게 된다. 특히, 본 발명에 따른 저장부(220)는 상기 어플리케이션의 기설정된 선캡처 구간에 상응하는 실행 화면을 캡처 및 인코딩한, 선캡처 데이터가 저장된다.The storage unit 220 is a device for storing data, and includes a main storage device and an auxiliary storage device, and stores an application program required for a function operation of the cloud streaming server. The storage unit 220 may include a program area and a data area. In this case, when the cloud streaming server activates each function corresponding to the request of the user, the cloud streaming server executes the corresponding application programs under the control of the controller 210 to provide each function. In particular, the storage unit 220 according to the present invention stores pre-capture data, which is captured and encoded in an execution screen corresponding to a predetermined pre-capture period of the application.

이 때, 저장부(220)는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM(Compact Disk Read Only Memory), DVD(Digital Video Disk)와 같은 광 기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-optical Media) 및 롬(Read Only Memory; ROM), 램(Random Access Memory; RAM), 플래시 메모리(Flash Memory)를 포함한다.In this case, the storage unit 220 may be an optical storage medium such as a magnetic medium such as a hard disk, a floppy disk and a magnetic tape, a compact disk read only memory (CD-ROM), a digital video disk (ROM), a random access memory (RAM), a flash memory, and the like, such as a magneto-optical disk, a magneto-optical disk, and a floppy disk. .

실시예에 따라, 선캡처 구간은 사용자 입력 시나리오에 기반하여 탐색된, 화면의 변화가 기설정된 기준보다 큰 구간일 수 있다.According to an embodiment, the pre-capture interval may be a section that is searched based on a user input scenario, and the change of the screen is larger than a preset reference.

즉, 어플리케이션에 대해 예측되는 사용자 입력에 따른 시나리오를 생성하고, 시나리오에 따라 화면이 변화될 때, 화면의 변화량이 기설정된 기준보다 큰 구간을 선캡처 구간으로 설정할 수 있다. 예를 들어, 사용자 입력 시나리오에 기반했을 때, 화면의 50퍼센트 이상이 변화하는 경우 선캡처 구간으로 설정될 수 있다.That is, it is possible to generate a scenario according to user input predicted for an application, and to set a section in which the amount of change of the screen is larger than a preset reference when the screen is changed according to the scenario, as a line capturing interval. For example, based on user input scenarios, a line capture interval can be set if more than 50 percent of the screen changes.

또는, 선캡처 구간은 상기 어플리케이션의 실행 히스토리에 기반하여 분석된, 화면의 변화가 기설정된 기준보다 큰 구간일 수 있다.Alternatively, the line capturing period may be a period in which a screen change analyzed based on the execution history of the application is larger than a preset reference.

즉, 과거에 어플리케이션이 실행된 이력인 실행 히스토리를 저장하고, 실행 히스토리에서 화면이 기설정된 기준보다 많이 변화된 구간을 선캡처 구간으로 설정할 수 있다. 예를 들어, 실행 히스토리에서 화면의 50퍼센트 이상이 변화하는 구간을 선캡처 구간으로 설정할 수 있다.That is, an execution history, which is a history in which an application has been executed in the past, is stored, and an interval in which the screen is changed more than a predetermined reference in the execution history can be set as a line capture interval. For example, you can set the line capture interval to be the interval in which the execution history changes more than 50% of the screen.

또는, 선캡처 구간은 상기 어플리케이션의 실행 히스토리에 기반하여 분석된, 사용자의 진입이 기설정된 기준보다 많은 구간일 수 있다.Alternatively, the line capturing period may be an interval in which the user's entry, which is analyzed based on the execution history of the application, is larger than a predetermined reference.

즉, 실행 히스토리를 분석하여, 사용자가 많이 진입하는, 즉 요청이 많은 구간을 선캡처 구간으로 설정할 수 있다.That is, by analyzing the execution history, it is possible to set a section in which a lot of users enter, that is, a section with a lot of requests, as a line capture section.

또는, 상술한 3가지 중 어느 하나 이상의 기준을 조합하여 선캡처 구간을 설정할 수도 있다.Alternatively, a line capturing interval may be set by combining any one of the above three criteria.

통신부(230)는 클라우드 스트리밍 서버와 네트워크를 통해 데이터를 송수신하기 위한 기능을 수행한다. 여기서, 통신부(230)는 송신되는 신호의 주파수를 상승 변환 및 증폭하는 RF 송신 수단과 수신되는 신호를 저잡음 증폭하고 주파수를 하강 변환하는 RF 수신 수단 등을 포함한다. 이러한 통신부(230)는 무선통신 모듈(미도시) 및 유선통신 모듈(미도시) 중 적어도 하나를 포함할 수 있다. 그리고, 무선통신 모듈은 무선 통신 방법에 따라 데이터를 송수신하기 위한 구성이며, 클라우드 스트리밍 서버가 무선 통신을 이용하는 경우, 무선망 통신 모듈, 무선랜 통신 모듈 및 무선팬 통신 모듈 중 어느 하나를 이용하여 데이터를 단말 장치로 송수신할 수 있다. 또한, 유선통신 모듈은 유선으로 데이터를 송수신하기 위한 것이다. 유선통신 모듈은 유선을 통해 네트워크에 접속하여, 단말 장치에 데이터를 송수신할 수 있다. 즉, 클라우드 스트리밍 서버는 무선통신 모듈 또는 유선통신 모듈을 이용하여 네트워크에 접속하며, 네트워크를 통해 단말 장치와 데이터를 송수신할 수 있다. 특히, 본 발명에 따른 통신부(230)는 상기 실시간 데이터를 전송하고, 상기 선캡처 데이터 중 적어도 일부를 전송한다.The communication unit 230 performs a function of transmitting and receiving data to and from the cloud streaming server via the network. Here, the communication unit 230 includes RF transmitting means for up-converting and amplifying the frequency of the transmitted signal, RF receiving means for low-noise amplifying the received signal and down-converting the frequency. The communication unit 230 may include at least one of a wireless communication module (not shown) and a wired communication module (not shown). The wireless communication module is configured to transmit and receive data according to a wireless communication method. When the cloud streaming server uses wireless communication, the wireless communication module transmits data using either a wireless network communication module, a wireless LAN communication module, To the terminal device. The wired communication module is for transmitting / receiving data by wire. The wired communication module can connect to the network through a wired line and transmit / receive data to / from the terminal device. That is, the cloud streaming server connects to the network using a wireless communication module or a wired communication module, and can transmit and receive data to and from the terminal device through the network. In particular, the communication unit 230 according to the present invention transmits the real-time data and transmits at least a part of the line-capturing data.

이 때, 통신부(230)는 유선 방식 및 무선 방식을 포함하여 다양한 통신 방식을 통해서 데이터를 송수신할 수 있다.At this time, the communication unit 230 can transmit and receive data through various communication methods including a wired method and a wireless method.

이 때, 통신부(230)는 각각 서로 다른 통신 방식에 따라서 데이터를 송신하는 복수의 통신 모듈을 포함할 수 있다.At this time, the communication unit 230 may include a plurality of communication modules each transmitting data according to different communication methods.

실시예에 따라, 통신부(230)는 상기 현재 구간에 상응하는 실시간 데이터를 전송한 후, 다음 입력을 수신할 때까지의 여유 대역 동안 상기 선캡처 데이터 중 전송이 수행되지 않은 부분의 적어도 일부를 전송할 수 있다.According to an embodiment, the communication unit 230 transmits real-time data corresponding to the current section, and then transmits at least a part of the line-capturing data that is not transmitted during the spare band until the next input is received .

즉, 단말 장치로부터 사용자의 입력과 함께 요청받은 화면을 캡처 및 인코딩한 실시간 데이터를 먼저 전송하고, 다음 입력을 수신할 때까지 여유 대역이 남는다면 선캡처 데이터를 전송할 수 있다. 만약 여유 대역이 남지 않는다면 실시간 데이터만 전송할 수 있다. 이 때, 선캡처 데이터의 전부를 전송하지 못하더라도 여유 대역만큼만 선캡처 데이터의 일부를 전송할 수 있다. 전송되지 않은 일부는, 다음 입력을 수신하여 실시간 데이터를 전송하고, 여유 대역이 남았을 때 아직 전송되지 않은 부분을 전송할 수 있다.That is, it is possible to transmit the captured real-time data first with the user's input from the terminal device, and transmit the captured line data if the remaining bandwidth remains until receiving the next input. If there is no spare band, only real-time data can be transmitted. At this time, even if all of the line capture data can not be transmitted, a part of the line capture data can be transmitted only to the spare band. Some untransmitted parts can receive real time data by receiving the next input, and can transmit parts that have not yet been transmitted when the spare band is left.

실시예에 따라, 통신부(230)는 상기 선캡처 데이터 전부의 전송이 수행되기 전에 상기 선캡처 구간에 진입하여 상기 선캡처 구간에 상응하는 실시간 데이터의 전송을 요청받은 경우, 상기 선캡처 데이터 중 전송이 수행되지 않은 부분을 전송할 수 있다.According to the embodiment, when the communication unit 230 enters the line capturing period before transmission of all of the line capturing data is performed and is requested to transmit real-time data corresponding to the line capturing period, Can be transmitted.

즉, 선캡처 구간에 진입했을 때 선캡처 데이터의 전부가 전송됐다면, 단말 장치는 실시간 데이터 대신 수신한 선캡처 데이터를 이용하여 클라우드 스트리밍 서비스를 제공할 것이고, 클라우드 스트리밍 서버는 전송해야 할 데이터가 없으므로 여유 대역이 생길 수 있다. 반면, 선캡처 구간에 진입하였는데 선캡처 데이터가 아직 전부 전송되지 않은 경우, 아직 전송되지 않은 선캡처 데이터의 나머지를 전송하여 단말 장치가 클라우드 스트리밍 서비스를 제공할 수 있도록 한다.In other words, if all of the line capture data is transmitted when entering the line capture interval, the terminal device will provide the cloud streaming service using the received line capture data instead of the real time data, and since the cloud streaming server has no data to be transmitted There may be a spare band. On the other hand, if the line capturing data has not yet been transmitted after entering the line capturing period, the rest of the line capturing data that has not yet been transmitted is transmitted so that the terminal device can provide the cloud streaming service.

실시예에 따라, 통신부(230)는 상기 선캡처 구간에 진입하였을 때, 전송할 실시간 데이터와 상기 선캡처 데이터가 상이한 경우, 상기 실시간 데이터 중 상기 선캡처 데이터와 상이한 부분만을 전송할 수 있다.According to the embodiment, when the real-time data to be transmitted and the line capture data to be transmitted differ from each other when the line capturing section enters the communication section 230, the communication section 230 may transmit only the portion of the real-time data different from the line capture data.

이 때, 사용자 입력 시나리오에 기반하여 예측되거나, 어플리케이션의 실행 히스토리에 기반하여 분석된 선캡처 구간에 상응하는 선캡처 데이터가 실제로 요청받은 실시간 데이터와 완전히 동일하지 않을 수도 있다. 이 경우, 실시간 데이터 전체를 전송하는 것보다, 상이한 부분만을 전송하고 미리 전송된 선캡처 데이터와 조합하여 클라우드 스트리밍 서비스를 제공하는 것이 효율적일 수 있다. 따라서, 선캡처 구간에 진입하였을 때, 실시간 데이터와 선캡처 데이터의 상이한 부분을 인식하고, 상이한 부분만을 전송할 수 있다.At this time, the line capture data corresponding to the line capture interval, which is predicted based on the user input scenario or analyzed based on the execution history of the application, may not be exactly the same as the real time data actually requested. In this case, it may be more efficient to transmit only the different portions and provide the cloud streaming service in combination with the previously transmitted line capture data, rather than transmitting the entire real-time data. Therefore, when entering the line capturing section, it is possible to recognize different parts of real-time data and line capturing data, and transmit only different parts.

도 3은 도 1에 도시된 단말 장치의 일 예를 나타낸 블록도이다.3 is a block diagram showing an example of the terminal device shown in FIG.

도 3을 참조하면, 도 1에 도시된 단말 장치는 통신부(310) 및 제어부(320)를 포함한다.Referring to FIG. 3, the terminal shown in FIG. 1 includes a communication unit 310 and a control unit 320.

통신부(310)는 클라우드 스트리밍 서버와 네트워크를 통해 데이터를 송수신하기 위한 기능을 수행한다. 여기서, 통신부(310)는 송신되는 신호의 주파수를 상승 변환 및 증폭하는 RF 송신 수단과 수신되는 신호를 저잡음 증폭하고 주파수를 하강 변환하는 RF 수신 수단 등을 포함한다. 이러한 통신부(310)는 무선통신 모듈(미도시) 및 유선통신 모듈(미도시) 중 적어도 하나를 포함할 수 있다. 그리고, 무선통신 모듈은 무선 통신 방법에 따라 데이터를 송수신하기 위한 구성이며, 단말 장치가 무선 통신을 이용하는 경우, 무선망 통신 모듈, 무선랜 통신 모듈 및 무선팬 통신 모듈 중 어느 하나를 이용하여 데이터를 클라우드 스트리밍 서버로 송수신할 수 있다. 또한, 유선통신 모듈은 유선으로 데이터를 송수신하기 위한 것이다. 유선통신 모듈은 유선을 통해 네트워크에 접속하여, 클라우드 스트리밍 서버에 데이터를 송수신할 수 있다. 즉, 단말 장치는 무선통신 모듈 또는 유선통신 모듈을 이용하여 네트워크에 접속하며, 네트워크를 통해 클라우드 스트리밍 서버와 데이터를 송수신할 수 있다. 특히, 본 발명에 따른 통신부(310)는 클라우드 스트리밍 서버에서 실행되는 어플리케이션의 현재 구간에 상응하는 실행 화면이 캡처 및 인코딩되어 생성된 실시간 데이터 및 상기 어플리케이션의 기설정된 선캡처 구간에 상응하는 실행 화면이 캡처 및 인코딩되어 생성된 선캡처 데이터 중 적어도 어느 하나를 수신한다.The communication unit 310 performs a function of transmitting and receiving data to and from the cloud streaming server through a network. Here, the communication unit 310 includes RF transmitting means for up-converting and amplifying the frequency of the transmitted signal, RF receiving means for low-noise amplifying the received signal and down-converting the frequency. The communication unit 310 may include at least one of a wireless communication module (not shown) and a wired communication module (not shown). The wireless communication module is configured to transmit and receive data according to a wireless communication method. When the terminal device uses wireless communication, the wireless communication module transmits data using any one of a wireless network communication module, a wireless LAN communication module, and a wireless fan communication module. It can send and receive to the cloud streaming server. The wired communication module is for transmitting / receiving data by wire. The wired communication module can connect to the network through a wired network and transmit / receive data to / from the cloud streaming server. That is, the terminal device can access the network using a wireless communication module or a wired communication module, and can exchange data with the cloud streaming server through the network. In particular, the communication unit 310 according to the present invention may be configured such that an execution screen corresponding to a current section of an application executed in a cloud streaming server is captured and encoded, and real-time data generated and an execution screen corresponding to a pre- And at least one of line capture data generated by capturing and encoding is received.

이 때, 통신부(310)는 유선 방식 및 무선 방식을 포함하여 다양한 통신 방식을 통해서 데이터를 송수신할 수 있다.At this time, the communication unit 310 can transmit and receive data through various communication methods including a wired method and a wireless method.

이 때, 통신부(310)는 각각 서로 다른 통신 방식에 따라서 데이터를 송신하는 복수의 통신 모듈을 포함할 수 있다.At this time, the communication unit 310 may include a plurality of communication modules each transmitting data according to different communication methods.

이 때, 실시간 데이터는 사용자의 입력에 따라 실행된 어플리케이션이 실행되고 있는 현재 화면이 캡처 및 인코딩된 데이터일 수 있다. 즉, 어플리케이션의 실행에 따라 실시간으로 계속 수신한다.At this time, the real-time data may be the captured and encoded data of the current screen in which the executed application is executed according to the input of the user. That is, it continues to receive in real time according to the execution of the application.

이 때, 선캡처 구간은 사용자 입력 시나리오에 기반하여 탐색된, 화면의 변화가 기설정된 기준보다 큰 구간일 수 있다.In this case, the line capturing period may be a period in which a change in the screen, which is searched based on a user input scenario, is larger than a preset reference.

즉, 어플리케이션에 대해 예측되는 사용자 입력에 따른 시나리오를 생성하고, 시나리오에 따라 화면이 변화될 때, 화면의 변화량이 기설정된 기준보다 큰 구간을 선캡처 구간으로 설정할 수 있다. 예를 들어, 사용자 입력 시나리오에 기반했을 때, 화면의 50퍼센트 이상이 변화하는 경우 선캡처 구간으로 설정될 수 있다.That is, it is possible to generate a scenario according to user input predicted for an application, and to set a section in which the amount of change of the screen is larger than a preset reference when the screen is changed according to the scenario, as a line capturing interval. For example, based on user input scenarios, a line capture interval can be set if more than 50 percent of the screen changes.

또는, 선캡처 구간은 상기 어플리케이션의 실행 히스토리에 기반하여 분석된, 화면의 변화가 기설정된 기준보다 큰 구간일 수 있다.Alternatively, the line capturing period may be a period in which a screen change analyzed based on the execution history of the application is larger than a preset reference.

즉, 과거에 어플리케이션이 실행된 이력인 실행 히스토리를 저장하고, 실행 히스토리에서 화면이 기설정된 기준보다 많이 변화된 구간을 선캡처 구간으로 설정할 수 있다. 예를 들어, 실행 히스토리에서 화면의 50퍼센트 이상이 변화하는 구간이 선캡처 구간으로 설정될 수 있다.That is, an execution history, which is a history in which an application has been executed in the past, is stored, and an interval in which the screen is changed more than a predetermined reference in the execution history can be set as a line capture interval. For example, an interval where more than 50 percent of the screen changes in the execution history may be set as a line capture interval.

또는, 선캡처 구간은 상기 어플리케이션의 실행 히스토리에 기반하여 분석된, 사용자의 진입이 기설정된 기준보다 많은 구간일 수 있다.Alternatively, the line capturing period may be an interval in which the user's entry, which is analyzed based on the execution history of the application, is larger than a predetermined reference.

즉, 실행 히스토리를 분석하여, 사용자가 많이 진입하는, 즉 요청이 많은 구간이 선캡처 구간으로 설정될 수 있다.That is, by analyzing the execution history, the user can enter a lot of times, that is, a lot of requests can be set as a line capture interval.

또는, 상술한 3가지 중 어느 하나 이상의 기준을 조합하여 선캡처 구간이 설정될 수도 있다.Alternatively, a line capturing interval may be set by combining any one of the above three criteria.

실시예에 따라, 통신부(310)는 상기 현재 구간에 상응하는 실시간 데이터를 수신한 후, 다음 입력을 전송할 때까지의 여유 대역 동안 상기 선캡처 데이터 중 수신되지 않은 부분의 적어도 일부를 수신할 수 있다.According to an embodiment, the communication unit 310 may receive at least a part of an unrecorded portion of the pre-capture data during a spare band until the next input is transmitted after receiving real-time data corresponding to the current section .

즉, 사용자의 입력과 함께 요청한 화면을 캡처 및 인코딩한 실시간 데이터를 먼저 수신하고, 다음 입력을 전송할 때까지 여유 대역이 남는다면 선캡처 데이터를 수신할 수 있다. 만약 여유 대역이 남지 않는다면 실시간 데이터만 수신할 수 있다. 이 때, 선캡처 데이터의 전부를 수신하지 못하더라도 여유 대역만큼만 선캡처 데이터의 일부를 수신할 수 있다. 수신하지 않은 일부는, 다음 입력을 전송하여 실시간 데이터를 수신하고, 여유 대역이 남았을 때 아직 수신하지 않은 부분을 수신할 수 있다.That is, it is possible to receive the real-time data captured and encoded with the input of the user and the line capture data if the extra band remains until the next input is transmitted. If no spare band is left, only real-time data can be received. At this time, even if all of the line capture data is not received, a part of the line capture data can be received only by the spare band. The part that has not received can receive the real time data by transmitting the next input, and can receive the part that has not yet received when the spare band is left.

실시예에 따라, 통신부(310)는 상기 선캡처 데이터 전부를 수신하기 전에 상기 선캡처 구간에 진입한 경우, 상기 선캡처 데이터 중 수신되지 않은 부분을 수신할 수 있다.According to an embodiment, when the communication unit 310 enters the line capturing period before receiving all of the line capturing data, the communication unit 310 may receive an unreceived portion of the line capturing data.

즉, 선캡처 구간에 진입했을 때 선캡처 데이터의 전부를 수신했다면, 제어부(320)는 실시간 데이터 대신 수신한 선캡처 데이터를 이용하여 클라우드 스트리밍 서비스를 제공할 것이고, 클라우드 스트리밍 서버는 전송해야 할 데이터가 없으므로 여유 대역이 생길 수 있다. 반면, 선캡처 구간에 진입하였는데 선캡처 데이터를 아직 전부 수신하지 않은 경우, 아직 수신하지 않은 선캡처 데이터의 나머지를 수신하여 클라우드 스트리밍 서비스를 제공할 수 있다.That is, if all of the line capture data is received when entering the line capture interval, the control unit 320 will provide the cloud streaming service using the received line capture data instead of the real time data, and the cloud streaming server There is no spare band. On the other hand, if the line capturing data has not yet been received yet, it is possible to provide the cloud streaming service by receiving the remainder of the line capture data that has not yet been received.

이 때, 선캡처 구간에 진입하였는데, 실시간 데이터와 선캡처 데이터가 상이한 경우, 통신부(310)는 실시간 데이터 중 선캡처 데이터와 상이한 부분만을 수신할 수 있다.At this time, if the real-time data and the line capture data are different from each other, the communication unit 310 can receive only the different portion of the real-time data from the line capture data.

제어부(320)는 운영 체제(OS, Operation System) 및 각 구성을 구동시키는 프로세스 장치가 될 수 있다. 예컨대, 제어부(320)는 클라우드 스트리밍 서버에 접속하는 과정 전반을 제어할 수 있다. 예컨대, 별도의 서비스 어플리케이션을 통해 클라우드 스트리밍 서버에 접속하는 경우, 사용자의 요청에 따라 서비스 어플리케이션을 실행되는 과정 전반을 제어할 수 있으며, 실행과 동시에 클라우드 스트리밍 서버로 서비스 이용 요청이 전송되도록 제어할 수 있으며, 이때 사용자 인증에 필요한 단말 정보가 함께 전송되도록 제어할 수 있다. 특히, 본 발명에 따른 제어부(320)는 상기 실시간 데이터 및 상기 선캡처 데이터 중 어느 하나를 화면에 표시함으로써 클라우드 스트리밍 서비스를 제공한다.The control unit 320 may be an operating system (OS) and a process unit for driving each configuration. For example, the control unit 320 may control the entire process of connecting to the cloud streaming server. For example, when accessing a cloud streaming server through a separate service application, it is possible to control the entire process of executing the service application according to a request of the user, and to control the transmission of the service use request to the cloud streaming server at the same time At this time, it is possible to control so that terminal information necessary for user authentication is transmitted together. In particular, the controller 320 according to the present invention provides a cloud streaming service by displaying either the real-time data or the line capture data on the screen.

이 때, 표시부(미도시)는 단말 장치의 기능 수행 중에 발생하는 일련의 동작상태 및 동작결과 등에 대한 정보를 표시한다. 또한, 표시부는 단말 장치의 메뉴 및 사용자가 입력한 사용자 데이터 등을 표시할 수 있다. 여기서, 표시부는 액정표시장치(LCD, Liquid Crystal Display), 초박막 액정표시장치(TFT-LCD, Thin Film Transistor LCD), 발광다이오드(LED, Light Emitting Diode), 유기 발광다이오드(OLED, Organic LED), 능동형 유기발광다이오드(AMOLED, Active Matrix OLED), 레티나 디스플레이(Retina Display), 플렉시블 디스플레이(Flexible display) 및 3차원(3 Dimension) 디스플레이 등으로 구성될 수 있다. 이때, 표시부가 터치스크린 형태로 구성된 경우, 표시부는 입력부(미도시)의 기능 중 일부 또는 전부를 수행할 수 있다. 특히, 본 발명에 따른 표시부는 제어부(320)의 제어에 따라 실시간 데이터 또는 선캡처 데이터를 화면에 표시함으로써 클라우드 스트리밍 서비스를 제공한다.At this time, the display unit (not shown) displays information on a series of operation states, operation results, and the like that occur during the function of the terminal apparatus. Further, the display unit can display a menu of the terminal device and user data input by the user. Here, the display unit may be a liquid crystal display (LCD), a thin film transistor LCD (TFT-LCD), a light emitting diode (LED), an organic light emitting diode (OLED) Active matrix OLED (OLED), retina display, flexible display, and 3-dimensional (3-dimension) display. At this time, when the display unit is configured as a touch screen, the display unit can perform some or all of the functions of the input unit (not shown). In particular, the display unit according to the present invention provides a cloud streaming service by displaying real-time data or line capture data on the screen under the control of the controller 320. [

실시예에 따라, 제어부(320)는 상기 어플리케이션이 상기 선캡처 구간에 진입한 경우, 상기 선캡처 데이터를 상기 화면에 표시하고, 그렇지 아니한 경우 상기 실시간 데이터를 상기 화면에 표시할 수 있다.According to an embodiment, when the application enters the pre-capture period, the control unit 320 displays the pre-capture data on the screen, and if not, displays the real-time data on the screen.

즉, 선캡처 구간에 상응하는 선캡처 데이터를 이용할 수 있을 때에는 선캡처 데이터를 표시함으로써 지연 시간을 최소화할 수 있다.That is, when the line capture data corresponding to the line capture interval is available, the delay time can be minimized by displaying the line capture data.

이 때, 선캡처 구간에 진입하였는데, 실시간 데이터와 선캡처 데이터가 상이한 경우, 제어부(320)는 통신부(310)가 수신한 실시간 데이터 중 선캡처 데이터와 상이한 부분과, 선캡처 데이터를 조합하여 화면에 표시함으로써 클라우드 스트리밍 서비스를 제공할 수 있다.At this time, when the real-time data and the line capture data are different from each other, the control unit 320 combines the part of the real-time data received by the communication unit 310, which is different from the line capture data, So that the cloud streaming service can be provided.

이 때, 사용자 입력 시나리오에 기반하여 예측되거나, 어플리케이션의 실행 히스토리에 기반하여 분석된 선캡처 구간에 상응하는 선캡처 데이터가 실제로 요청받은 실시간 데이터와 완전히 동일하지 않을 수도 있다. 이 경우, 실시간 데이터 전체를 수신하는 것보다, 상이한 부분만을 수신하고 미리 수신한 선캡처 데이터와 조합하여 클라우드 스트리밍 서비스를 제공하는 것이 효율적일 수 있다. 따라서, 선캡처 구간에 진입하였을 때, 클라우드 스트리밍 서버는 실시간 데이터와 선캡처 데이터의 상이한 부분을 인식하여 상이한 부분만을 전송하고, 제어부(320)는 상이한 부분과 선캡처 데이터를 조합하여 클라우드 스트리밍 서비스를 제공할 수 있다.At this time, the line capture data corresponding to the line capture interval, which is predicted based on the user input scenario or analyzed based on the execution history of the application, may not be exactly the same as the real time data actually requested. In this case, it may be more efficient to receive a different portion than the entire real-time data and to provide the cloud streaming service in combination with previously received line capture data. Accordingly, when entering the line capturing section, the cloud streaming server recognizes different parts of the real-time data and line capturing data and transmits only different parts, and the controller 320 combines the different parts and the line capturing data to perform the cloud streaming service .

도 4 내지 도 7은 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 화면의 변화의 일 예를 나타낸 도면이다.4 to 7 are views illustrating an example of a change of a cloud streaming service screen according to an embodiment of the present invention.

도 4 내지 도 7을 참조하면, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 화면은 좌상부(410, 510, 610, 710), 좌하부(420, 520, 620, 720) 및 우부(430, 530, 630, 730)로 나누어져 있다.4 to 7, a cloud streaming service screen according to an embodiment of the present invention includes upper left portions 410, 510, 610 and 710, left lower portions 420, 520, 620 and 720, and right portions 430, 530, 630, 730).

이하, 도 4부터 도 7로 순차적으로 화면이 변화하는 경우를 예시로 들어 설명한다.Hereinafter, the case where the screen changes sequentially from FIG. 4 to FIG. 7 will be described as an example.

도 6에서 도 7로 변화할 때 우부가 '1'(630)에서 '2'(730)로 변화하는데, 화면의 약 절반이 변화하므로 사용자 입력 시나리오 또는 실행 히스토리에 기반하여 선캡처 구간으로 설정될 수 있다. 이하에선 도 6에서 도 7로 변화하는 구간을 선캡처 구간으로 가정하여 설명하도록 한다.7, the right part changes from '1' 630 to '2' 730. Since about half of the screen changes, it is set as a line capturing interval based on the user input scenario or execution history . Hereinafter, it is assumed that a section changing from FIG. 6 to FIG. 7 is a line capturing section.

도 4에서 도 5로 변화할 때, 좌하부가 'a'(420)에서 'b'(520)로 변화한다. 좌하부는 크기가 작아 화면의 변화량이 작으므로 여유 대역이 생긴다. 이 때, 선캡처 데이터인 '2' 중 일부를 여유 대역 동안 전송할 수 있는 만큼만 전송한다. 이를 '2-1'이라 한다.When changing from FIG. 4 to FIG. 5, the lower left portion changes from 'a' 420 to 'b' 520. Since the size of the lower left portion is small, the amount of change of the screen is small, and thus a spare band occurs. At this time, only a part of the line capture data '2' is transmitted as much as it can transmit during the spare band. This is called '2-1'.

도 5에서 도 6으로 변화할 때, 좌상부가 'A'(510)에서 'B'(610)로 변화한다. 좌상부 역시 크기가 작아 화면의 변화량이 작으므로 여유 대역이 생긴다. 이 때, 선캡처 데이터인 '2' 중 일부를 여유 대역 동안 전송할 수 있는 만큼만 전송한다. 이를 '2-2'라 한다.When changing from FIG. 5 to FIG. 6, the upper left portion changes from 'A' 510 to 'B' 610. Since the upper left portion is also small in size, the amount of change in the screen is small, so a margin is generated. At this time, only a part of the line capture data '2' is transmitted as much as it can transmit during the spare band. This is called '2-2'.

도 6에서 도 7로 변화하는 구간은 선캡처 구간이다. 그런데, 선캡처 데이터인 '2'가 전부 전송되지 않았으므로, 전송되지 않은 나머지를 전송한다. 이를 '2-3'이라 한다.The section changing from FIG. 6 to FIG. 7 is a line capturing section. However, since the line capture data '2' is not transmitted at all, the remaining untransmitted data is transmitted. This is called '2-3'.

만약 '2'를 나누어 그 중 일부인 '2-1' 및 '2-2'를 미리 전송하지 않고, '2'를 통째로 전송하는 경우, 데이터의 양이 많아 지연시간이 발생할 수 있다. 그러나, 본 발명에 의하여 선캡처 데이터 중 일부인 '2-1' 및 '2-2'를 미리 전송하고, 선캡처 구간에 진입했을 때는 나머지인 '2-3'만 전송함으로써 다음 입력을 수신하기 전까지 '2' 전체의 전송이 완료될 수 있고, 지연 시간을 최소화할 수 있다.If '2' is divided and some of '2-1' and '2-2' are not transmitted in advance, and '2' is transmitted in its entirety, a delay time may occur due to a large amount of data. However, according to the present invention, '2-1' and '2-2', which are part of the line capture data, are transmitted in advance, and when entering the line capture interval, only the remaining '2-3' The entire transmission of '2' can be completed, and the delay time can be minimized.

도 8은 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 방법(서버 관점)의 일 예를 나타낸 동작 흐름도이다.FIG. 8 is a flowchart illustrating an example of a cloud streaming service method (server perspective) according to an embodiment of the present invention.

도 8을 참조하면, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 방법은 어플리케이션의 기설정된 선캡처 구간에 상응하는 실행 화면을 캡처 및 인코딩한, 선캡처 데이터를 생성하여 저장한다(S810).Referring to FIG. 8, a cloud streaming service method according to an exemplary embodiment of the present invention generates and stores pre-capture data, which captures and encodes an execution screen corresponding to a preset pre-capture period of an application (S810).

실시예에 따라, 선캡처 구간은 사용자 입력 시나리오에 기반하여 탐색된, 화면의 변화가 기설정된 기준보다 큰 구간일 수 있다.According to an embodiment, the pre-capture interval may be a section that is searched based on a user input scenario, and the change of the screen is larger than a preset reference.

즉, 어플리케이션에 대해 예측되는 사용자 입력에 따른 시나리오를 생성하고, 시나리오에 따라 화면이 변화될 때, 화면의 변화량이 기설정된 기준보다 큰 구간을 선캡처 구간으로 설정할 수 있다. 예를 들어, 사용자 입력 시나리오에 기반했을 때, 화면의 50퍼센트 이상이 변화하는 경우 선캡처 구간으로 설정될 수 있다.That is, it is possible to generate a scenario according to user input predicted for an application, and to set a section in which the amount of change of the screen is larger than a preset reference when the screen is changed according to the scenario, as a line capturing interval. For example, based on user input scenarios, a line capture interval can be set if more than 50 percent of the screen changes.

또는, 선캡처 구간은 상기 어플리케이션의 실행 히스토리에 기반하여 분석된, 화면의 변화가 기설정된 기준보다 큰 구간일 수 있다.Alternatively, the line capturing period may be a period in which a screen change analyzed based on the execution history of the application is larger than a preset reference.

즉, 과거에 어플리케이션이 실행된 이력인 실행 히스토리를 저장하고, 실행 히스토리에서 화면이 기설정된 기준보다 많이 변화된 구간을 선캡처 구간으로 설정할 수 있다. 예를 들어, 실행 히스토리에서 화면의 50퍼센트 이상이 변화하는 구간을 선캡처 구간으로 설정할 수 있다.That is, an execution history, which is a history in which an application has been executed in the past, is stored, and an interval in which the screen is changed more than a predetermined reference in the execution history can be set as a line capture interval. For example, you can set the line capture interval to be the interval in which the execution history changes more than 50% of the screen.

또는, 선캡처 구간은 상기 어플리케이션의 실행 히스토리에 기반하여 분석된, 사용자의 진입이 기설정된 기준보다 많은 구간일 수 있다.Alternatively, the line capturing period may be an interval in which the user's entry, which is analyzed based on the execution history of the application, is larger than a predetermined reference.

즉, 실행 히스토리를 분석하여, 사용자가 많이 진입하는, 즉 요청이 많은 구간을 선캡처 구간으로 설정할 수 있다.That is, by analyzing the execution history, it is possible to set a section in which a lot of users enter, that is, a section with a lot of requests, as a line capture section.

또는, 상술한 3가지 중 어느 하나 이상의 기준을 조합하여 선캡처 구간을 설정할 수도 있다.Alternatively, a line capturing interval may be set by combining any one of the above three criteria.

또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 방법은 사용자의 입력을 받아 선캡처 구간에 진입하였는지 판단하여(S820), 선캡처 구간에 진입하지 않은 경우 클라우드 스트리밍 서비스를 위해 실행되는 어플리케이션의 현재 구간에 상응하는 실행 화면을 캡처 및 인코딩하여 실시간 데이터를 생성한다(S830).In addition, the cloud streaming service method according to an embodiment of the present invention determines whether the user enters the pre-capture interval (S820). If the user does not enter the pre-capture interval, And captures and encodes an execution screen corresponding to the section to generate real-time data (S830).

이 때, 실시간 데이터는 사용자의 입력에 따라 실행된 어플리케이션이 실행되고 있는 현재 화면이 캡처 및 인코딩된 데이터일 수 있다. 즉, 어플리케이션의 실행에 따라 실시간으로 계속 생성된다.At this time, the real-time data may be the captured and encoded data of the current screen in which the executed application is executed according to the input of the user. That is, it is continuously generated in real time as the application is executed.

또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 방법은 실시간 데이터를 전송한다(S840).In addition, the cloud streaming service method according to an embodiment of the present invention transmits real time data (S840).

이 때, 실시간 데이터의 크기가 작은 경우 다음 입력을 수신할 때까지 여유 대역이 발생할 수 있다.At this time, if the size of the real-time data is small, a spare band may occur until the next input is received.

또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 방법은 선캡처 데이터 중 적어도 일부를 전송한다(S850).In addition, the cloud streaming service method according to an embodiment of the present invention transmits at least a part of the line capture data (S850).

실시예에 따라, 선캡처 데이터 중 적어도 일부를 전송하는 단계는 상기 현재 구간에 상응하는 실시간 데이터를 전송하는 단계 이후, 다음 입력을 수신할 때까지의 여유 대역 동안 상기 선캡처 데이터 중 전송이 수행되지 않은 부분의 적어도 일부를 전송할 수 있다.According to an embodiment, the step of transmitting at least some of the pre-capture data may be performed after the step of transmitting real-time data corresponding to the current section, during transmission of the pre-capture data during an extra band until receiving the next input At least a portion of a portion that is not a part of the system.

즉, 단말 장치로부터 사용자의 입력과 함께 요청받은 화면을 캡처 및 인코딩한 실시간 데이터를 먼저 전송하고, 다음 입력을 수신할 때까지 여유 대역이 남는다면 선캡처 데이터를 전송할 수 있다. 만약 여유 대역이 남지 않는다면 실시간 데이터만 전송할 수 있다. 이 때, 선캡처 데이터의 전부를 전송하지 못하더라도 여유 대역만큼만 선캡처 데이터의 일부를 전송할 수 있다. 전송되지 않은 일부는, 다음 입력을 수신하여 실시간 데이터를 전송하고, 여유 대역이 남았을 때 아직 전송되지 않은 부분을 전송할 수 있다.That is, it is possible to transmit the captured real-time data first with the user's input from the terminal device, and transmit the captured line data if the remaining bandwidth remains until receiving the next input. If there is no spare band, only real-time data can be transmitted. At this time, even if all of the line capture data can not be transmitted, a part of the line capture data can be transmitted only to the spare band. Some untransmitted parts can receive real time data by receiving the next input, and can transmit parts that have not yet been transmitted when the spare band is left.

또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 방법은 다시 사용자의 입력을 받고, 선캡처 구간에 진입하였는지 여부를 판단한다(S820).In addition, the cloud streaming service method according to an embodiment of the present invention receives the user's input again and determines whether or not the user enters the line capture interval (S820).

만약, 선캡처 구간에 진입하였고, 선캡처 데이터 전부가 전송되지 않았다면, 선캡처 데이터 중 전송이 수행되지 않은 부분을 전송한다(S860).If all of the line capture data has not been transmitted, a portion of the line capture data that has not been transmitted is transmitted (S860).

즉, 선캡처 구간에 진입했을 때 선캡처 데이터의 전부가 전송됐다면, 단말 장치는 실시간 데이터 대신 수신한 선캡처 데이터를 이용하여 클라우드 스트리밍 서비스를 제공할 것이고, 클라우드 스트리밍 서버는 전송해야 할 데이터가 없으므로 여유 대역이 생길 수 있다. 반면, 선캡처 구간에 진입하였는데 선캡처 데이터가 아직 전부 전송되지 않은 경우, 아직 전송되지 않은 선캡처 데이터의 나머지를 전송하여 단말 장치가 클라우드 스트리밍 서비스를 제공할 수 있도록 한다.In other words, if all of the line capture data is transmitted when entering the line capture interval, the terminal device will provide the cloud streaming service using the received line capture data instead of the real time data, and since the cloud streaming server has no data to be transmitted There may be a spare band. On the other hand, if the line capturing data has not yet been transmitted after entering the line capturing period, the rest of the line capturing data that has not yet been transmitted is transmitted so that the terminal device can provide the cloud streaming service.

도 8에는 도시되지 아니하였으나, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 방법은 상기 선캡처 구간에 진입하였을 때, 전송할 실시간 데이터와 상기 선캡처 데이터가 상이한 경우, 상기 실시간 데이터 중 상기 선캡처 데이터와 상이한 부분만을 전송할 수 있다.Although not shown in FIG. 8, in the cloud streaming service method according to an embodiment of the present invention, when the real-time data to be transmitted and the line capture data are different when entering the line capture interval, Lt; RTI ID = 0.0 > a < / RTI >

이 때, 사용자 입력 시나리오에 기반하여 예측되거나, 어플리케이션의 실행 히스토리에 기반하여 분석된 선캡처 구간에 상응하는 선캡처 데이터가 실제로 요청받은 실시간 데이터와 완전히 동일하지 않을 수도 있다. 이 경우, 실시간 데이터 전체를 전송하는 것보다, 상이한 부분만을 전송하고 미리 전송된 선캡처 데이터와 조합하여 클라우드 스트리밍 서비스를 제공하는 것이 효율적일 수 있다. 따라서, 선캡처 구간에 진입하였을 때, 실시간 데이터와 선캡처 데이터의 상이한 부분을 인식하고, 상이한 부분만을 전송할 수 있다.At this time, the line capture data corresponding to the line capture interval, which is predicted based on the user input scenario or analyzed based on the execution history of the application, may not be exactly the same as the real time data actually requested. In this case, it may be more efficient to transmit only the different portions and provide the cloud streaming service in combination with the previously transmitted line capture data, rather than transmitting the entire real-time data. Therefore, when entering the line capturing section, it is possible to recognize different parts of real-time data and line capturing data, and transmit only different parts.

도 9는 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 방법(단말 관점)의 일 예를 나타낸 동작 흐름도이다.FIG. 9 is an operational flowchart illustrating an example of a cloud streaming service method (terminal viewpoint) according to an embodiment of the present invention.

도 9를 참조하면, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 방법은 사용자의 입력을 전송하고, 선캡처 구간에 진입하였는지 판단하여(S910), 선캡처 구간에 진입하지 아니한 경우 클라우드 스트리밍 서버에서 실행되는 어플리케이션의 현재 구간에 상응하는 실행 화면이 캡처 및 인코딩되어 생성된 실시간 데이터를 수신한다(S920).Referring to FIG. 9, the cloud streaming service method according to an embodiment of the present invention transmits a user's input and determines whether the user enters a pre-capture interval (S910). If the user does not enter a pre-capture interval, The execution screen corresponding to the current section of the application to be executed is captured and encoded and the generated real-time data is received (S920).

이 때, 실시간 데이터는 사용자의 입력에 따라 실행된 어플리케이션이 실행되고 있는 현재 화면이 캡처 및 인코딩된 데이터일 수 있다. 즉, 어플리케이션의 실행에 따라 실시간으로 계속 수신한다.At this time, the real-time data may be the captured and encoded data of the current screen in which the executed application is executed according to the input of the user. That is, it continues to receive in real time according to the execution of the application.

또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 방법은 어플리케이션의 기설정된 선캡처 구간에 상응하는 실행 화면이 캡처 및 인코딩되어 생성된 선캡처 데이터 중 적어도 일부를 수신한다(S930).In addition, in the cloud streaming service method according to an embodiment of the present invention, at least a part of the line capture data generated by capturing and encoding an execution screen corresponding to a predetermined line capturing period of an application is received (S930).

이 때, 선캡처 구간은 사용자 입력 시나리오에 기반하여 탐색된, 화면의 변화가 기설정된 기준보다 큰 구간일 수 있다.In this case, the line capturing period may be a period in which a change in the screen, which is searched based on a user input scenario, is larger than a preset reference.

즉, 어플리케이션에 대해 예측되는 사용자 입력에 따른 시나리오를 생성하고, 시나리오에 따라 화면이 변화될 때, 화면의 변화량이 기설정된 기준보다 큰 구간을 선캡처 구간으로 설정할 수 있다. 예를 들어, 사용자 입력 시나리오에 기반했을 때, 화면의 50퍼센트 이상이 변화하는 경우 선캡처 구간으로 설정될 수 있다.That is, it is possible to generate a scenario according to user input predicted for an application, and to set a section in which the amount of change of the screen is larger than a preset reference when the screen is changed according to the scenario, as a line capturing interval. For example, based on user input scenarios, a line capture interval can be set if more than 50 percent of the screen changes.

또는, 선캡처 구간은 상기 어플리케이션의 실행 히스토리에 기반하여 분석된, 화면의 변화가 기설정된 기준보다 큰 구간일 수 있다.Alternatively, the line capturing period may be a period in which a screen change analyzed based on the execution history of the application is larger than a preset reference.

즉, 과거에 어플리케이션이 실행된 이력인 실행 히스토리를 저장하고, 실행 히스토리에서 화면이 기설정된 기준보다 많이 변화된 구간을 선캡처 구간으로 설정할 수 있다. 예를 들어, 실행 히스토리에서 화면의 50퍼센트 이상이 변화하는 구간이 선캡처 구간으로 설정될 수 있다.That is, an execution history, which is a history in which an application has been executed in the past, is stored, and an interval in which the screen is changed more than a predetermined reference in the execution history can be set as a line capture interval. For example, an interval where more than 50 percent of the screen changes in the execution history may be set as a line capture interval.

또는, 선캡처 구간은 상기 어플리케이션의 실행 히스토리에 기반하여 분석된, 사용자의 진입이 기설정된 기준보다 많은 구간일 수 있다.Alternatively, the line capturing period may be an interval in which the user's entry, which is analyzed based on the execution history of the application, is larger than a predetermined reference.

즉, 실행 히스토리를 분석하여, 사용자가 많이 진입하는, 즉 요청이 많은 구간이 선캡처 구간으로 설정될 수 있다.That is, by analyzing the execution history, the user can enter a lot of times, that is, a lot of requests can be set as a line capture interval.

또는, 상술한 3가지 중 어느 하나 이상의 기준을 조합하여 선캡처 구간이 설정될 수도 있다.Alternatively, a line capturing interval may be set by combining any one of the above three criteria.

실시예에 따라, 선캡처 데이터 중 적어도 일부를 수신하는 단계는 현재 구간에 상응하는 실시간 데이터를 수신하는 단계 이후, 다음 입력을 전송할 때까지의 여유 대역 동안 상기 선캡처 데이터 중 수신되지 않은 부분의 적어도 일부를 수신할 수 있다.According to an embodiment, the step of receiving at least some of the pre-capture data may include, after receiving the real-time data corresponding to the current section, at least a portion of the pre- Some can be received.

즉, 사용자의 입력과 함께 요청한 화면을 캡처 및 인코딩한 실시간 데이터를 먼저 수신하고, 다음 입력을 전송할 때까지 여유 대역이 남는다면 선캡처 데이터를 수신할 수 있다. 만약 여유 대역이 남지 않는다면 실시간 데이터만 수신할 수 있다. 이 때, 선캡처 데이터의 전부를 수신하지 못하더라도 여유 대역만큼만 선캡처 데이터의 일부를 수신할 수 있다. 수신하지 않은 일부는, 다음 입력을 전송하여 실시간 데이터를 수신하고, 여유 대역이 남았을 때 아직 수신하지 않은 부분을 수신할 수 있다.That is, it is possible to receive the real-time data captured and encoded with the input of the user and the line capture data if the extra band remains until the next input is transmitted. If no spare band is left, only real-time data can be received. At this time, even if all of the line capture data is not received, a part of the line capture data can be received only by the spare band. The part that has not received can receive the real time data by transmitting the next input, and can receive the part that has not yet received when the spare band is left.

또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 방법은 실시간 데이터를 화면에 표시함으로써 클라우드 스트리밍 서비스를 제공한다(S940).In addition, the cloud streaming service method according to an embodiment of the present invention provides a cloud streaming service by displaying real-time data on a screen (S940).

또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 방법은 다시 사용자의 입력을 전송하고, 이에 따라 선캡처 구간에 진입하였는지 여부를 판단한다(S910).In addition, the cloud streaming service method according to an embodiment of the present invention transmits the input of the user again, and determines whether or not the user enters the line capture interval (S910).

또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 방법은 선캡처 구간에 진입하였고, 선캡처 데이터 전부를 수신하지 않았다면, 선캡처 데이터 중 수신되지 않은 부분을 수신한다(S950).In addition, the cloud streaming service method according to an embodiment of the present invention enters a line capture interval, and if all of the line capture data has not been received, the unreceived portion of the line capture data is received (S950).

즉, 선캡처 구간에 진입했을 때 선캡처 데이터의 전부를 수신했다면, 단말 장치는 실시간 데이터 대신 수신한 선캡처 데이터를 이용하여 클라우드 스트리밍 서비스를 제공할 것이고, 클라우드 스트리밍 서버는 전송해야 할 데이터가 없으므로 여유 대역이 생길 수 있다. 반면, 선캡처 구간에 진입하였는데 선캡처 데이터를 아직 전부 수신하지 않은 경우, 아직 수신하지 않은 선캡처 데이터의 나머지를 수신하여 클라우드 스트리밍 서비스를 제공할 수 있다.That is, if all of the line capture data is received when entering the line capture interval, the terminal device will provide the cloud streaming service using the received line capture data instead of the real time data, and since the cloud streaming server has no data to be transmitted There may be a spare band. On the other hand, if the line capturing data has not yet been received yet, it is possible to provide the cloud streaming service by receiving the remainder of the line capture data that has not yet been received.

또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 방법은 선캡처 데이터를 화면에 표시함으로써 클라우드 스트리밍 서비스를 제공한다(S960).In addition, the cloud streaming service method according to an embodiment of the present invention provides a cloud streaming service by displaying line capture data on a screen (S960).

즉, 선캡처 구간에 진입하여 선캡처 데이터를 이용하여 클라우드 스트리밍 서비스를 제공할 수 있을 때에는, 선캡처 데이터를 화면에 표시하여 클라우드 스트리밍 서비스를 제공한다.That is, when the user enters the line capture section and can provide the cloud streaming service using the line capture data, the line capture data is displayed on the screen to provide the cloud streaming service.

도 9에는 도시되지 아니하였으나, 선캡처 구간에 진입하였는데, 실시간 데이터와 선캡처 데이터가 상이한 경우, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 방법은 실시간 데이터 중 선캡처 데이터와 상이한 부분만을 수신할 수 있다.Although not shown in FIG. 9, when the real-time data and the line capture data are different from each other, the cloud streaming service method according to an embodiment of the present invention receives only a different part from the real- .

이 때, 사용자 입력 시나리오에 기반하여 예측되거나, 어플리케이션의 실행 히스토리에 기반하여 분석된 선캡처 구간에 상응하는 선캡처 데이터가 실제로 요청받은 실시간 데이터와 완전히 동일하지 않을 수도 있다. 이 경우, 실시간 데이터 전체를 수신하는 것보다, 상이한 부분만을 수신하고 미리 수신한 선캡처 데이터와 조합하여 클라우드 스트리밍 서비스를 제공하는 것이 효율적일 수 있다. 따라서, 선캡처 구간에 진입하였을 때, 클라우드 스트리밍 서버는 실시간 데이터와 선캡처 데이터의 상이한 부분을 인식하여 상이한 부분만을 전송하고, 단말 장치는 상이한 부분과 선캡처 데이터를 조합하여 클라우드 스트리밍 서비스를 제공할 수 있다.At this time, the line capture data corresponding to the line capture interval, which is predicted based on the user input scenario or analyzed based on the execution history of the application, may not be exactly the same as the real time data actually requested. In this case, it may be more efficient to receive a different portion than the entire real-time data and to provide the cloud streaming service in combination with previously received line capture data. Therefore, when entering the line capturing section, the cloud streaming server recognizes different parts of the real-time data and the line capturing data and transmits only different parts, and the terminal device combines different parts and line capturing data to provide a cloud streaming service .

도 8 및 도 9에 도시된 각 단계는 도 8 및 도 9에 도시된 순서, 그 역순 또는 동시에 수행될 수 있다.The steps shown in Figs. 8 and 9 may be performed in the order shown in Figs. 8 and 9, in reverse order, or concurrently.

본 발명에 따른 클라우드 스트리밍 서비스 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 또는 스마트폰 앱으로 구현될 수 있다. 이 때, 프로그램 또는 스마트폰 앱은 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 모든 형태의 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The cloud streaming service method according to the present invention can be implemented as a program or a smartphone application that can be performed through various computer means. At this time, the program or smartphone application may be recorded on a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions recorded on the medium may be those specially designed and configured for the present invention or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Includes all types of hardware devices that are specially configured to store and execute magneto-optical media and program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions may include machine language code such as those generated by a compiler, as well as high-level language code that may be executed by a computer using an interpreter or the like. Such a hardware device may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

이상에서와 같이 본 발명에 따른 클라우드 스트리밍 서비스 시스템, 클라우드 스트리밍 서비스 방법 및 이를 위한 장치는 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.As described above, the cloud streaming service system, the cloud streaming service method, and the apparatus for the same according to the present invention are not limited to the configuration and method of the embodiments described above, All or some of the embodiments may be selectively combined.

본 발명은 화면 변화가 큰 구간을 인식하고, 해당 화면을 미리 캡처 및 인코딩하여 여유 대역에 미리 전송함으로써 화면 변화가 큰 구간에서의 지연 시간을 최소화하고, 미리 전송한 선캡처 데이터와, 실제로 전송해야할 데이터가 상이할 때, 상이한 부분만을 전송함으로써 사용자의 체감 반응 속도를 향상시킬 수 있다. 따라서, 클라우드 스트리밍 서비스를 이용할 때의 낭비되는 시간 및 자원을 감소시킴으로써 클라우드 스트리밍 서비스 산업을 활성화시키고, 산업 발전에 이바지할 수 있다.The present invention recognizes an interval in which a screen change is large, captures and encodes the screen in advance, and transmits the screen in advance to the spare band, thereby minimizing a delay time in a section where a screen change is large, When the data is different, it is possible to improve the speed of the user's sensory reaction by transmitting only the different part. Therefore, by reducing the wasted time and resources when using the cloud streaming service, it is possible to activate the cloud streaming service industry and contribute to industrial development.

110: 클라우드 스트리밍 서버 120: 단말 장치
130: 네트워크 210: 제어부
220: 저장부 230: 통신부
310: 통신부 320: 제어부
110: Cloud streaming server 120: Terminal device
130: Network 210:
220: storage unit 230: communication unit
310 communication unit 320 control unit

Claims (20)

클라우드 스트리밍 서비스를 위해 실행되는 어플리케이션의 현재 구간에 상응하는 실행 화면을 캡처 및 인코딩하여 실시간 데이터를 생성하는 제어부;
상기 어플리케이션의 기설정된 선캡처 구간에 상응하는 실행 화면을 캡처 및 인코딩한, 선캡처 데이터가 저장되는 저장부; 및
상기 실시간 데이터를 전송하고, 상기 선캡처 데이터 중 적어도 일부를 전송하는 통신부
를 포함하는 것을 특징으로 하는 클라우드 스트리밍 서버.
A controller for capturing and encoding an execution screen corresponding to a current section of an application executed for the cloud streaming service to generate real time data;
A storage unit for storing pre-capture data obtained by capturing and encoding an execution screen corresponding to a predetermined pre-capture interval of the application; And
A communication unit for transmitting the real-time data and transmitting at least a part of the line-
Wherein the server comprises:
청구항 1에 있어서,
상기 통신부는
상기 현재 구간에 상응하는 실시간 데이터를 전송한 후, 다음 입력을 수신할 때까지의 여유 대역 동안 상기 선캡처 데이터 중 전송이 수행되지 않은 부분의 적어도 일부를 전송하는 것을 특징으로 하는 클라우드 스트리밍 서버.
The method according to claim 1,
The communication unit
And transmits at least a part of a portion of the pre-capture data that has not been transmitted during a spare band until the next input is received after transmitting real-time data corresponding to the current section.
청구항 2에 있어서,
상기 통신부는
상기 선캡처 데이터 전부의 전송이 수행되기 전에 상기 선캡처 구간에 진입하여 상기 선캡처 구간에 상응하는 실시간 데이터의 전송을 요청받은 경우, 상기 선캡처 데이터 중 전송이 수행되지 않은 부분을 전송하는 것을 특징으로 하는 클라우드 스트리밍 서버.
The method of claim 2,
The communication unit
And transmits the part of the line capture data that has not been transmitted, when it is requested to transmit the real-time data corresponding to the line capturing interval, before entering the line capturing interval before transmission of all the line capture data is performed A cloud-streaming server.
청구항 2에 있어서,
상기 통신부는
상기 선캡처 구간에 진입하였을 때, 전송할 실시간 데이터와 상기 선캡처 데이터가 상이한 경우, 상기 실시간 데이터 중 상기 선캡처 데이터와 상이한 부분만을 전송하는 것을 특징으로 하는 클라우드 스트리밍 서버.
The method of claim 2,
The communication unit
Wherein when the real-time data to be transmitted and the line-capture data differ from each other when the line-capturing period is entered, only the portion of the real-time data different from the line-capturing data is transmitted.
청구항 2에 있어서,
상기 선캡처 구간은
사용자 입력 시나리오에 기반하여 탐색된, 화면의 변화가 기설정된 기준보다 큰 구간인 것을 특징으로 하는 클라우드 스트리밍 서버.
The method of claim 2,
The line capture interval
Wherein the server is a section that is searched based on a user input scenario and the change of the screen is larger than a preset reference.
청구항 2에 있어서,
상기 선캡처 구간은
상기 어플리케이션의 실행 히스토리에 기반하여 분석된, 화면의 변화가 기설정된 기준보다 큰 구간인 것을 특징으로 하는 클라우드 스트리밍 서버.
The method of claim 2,
The line capture interval
And the change of the screen, which is analyzed based on the execution history of the application, is larger than a preset reference.
청구항 2에 있어서,
상기 선캡처 구간은
상기 어플리케이션의 실행 히스토리에 기반하여 분석된, 사용자의 진입이 기설정된 기준보다 많은 구간인 것을 특징으로 하는 클라우드 스트리밍 서버.
The method of claim 2,
The line capture interval
Wherein the user's entry is longer than the preset reference time based on the execution history of the application.
클라우드 스트리밍 서버에서 실행되는 어플리케이션의 현재 구간에 상응하는 실행 화면이 캡처 및 인코딩되어 생성된 실시간 데이터 및 상기 어플리케이션의 기설정된 선캡처 구간에 상응하는 실행 화면이 캡처 및 인코딩되어 생성된 선캡처 데이터 중 적어도 어느 하나를 수신하는 통신부; 및
상기 실시간 데이터 및 상기 선캡처 데이터 중 어느 하나를 화면에 표시함으로써 클라우드 스트리밍 서비스를 제공하는 제어부
를 포함하는 것을 특징으로 하는 단말 장치.
An execution screen corresponding to a current section of an application running in the cloud streaming server is captured and encoded, and real-time data generated by capturing and encoding an execution screen corresponding to a predetermined line capturing interval of the application, A communication unit for receiving either one; And
A controller for providing a cloud streaming service by displaying any one of the real-time data and the line capture data on a screen,
And a terminal device.
청구항 8에 있어서,
상기 통신부는
상기 현재 구간에 상응하는 실시간 데이터를 수신한 후, 다음 입력을 전송할 때까지의 여유 대역 동안 상기 선캡처 데이터 중 수신되지 않은 부분의 적어도 일부를 수신하는 것을 특징으로 하는 단말 장치.
The method of claim 8,
The communication unit
And receives at least a part of an unrecorded portion of the line capture data during a spare band until a next input is transmitted after receiving the real time data corresponding to the current section.
청구항 9에 있어서,
상기 통신부는
상기 선캡처 데이터 전부를 수신하기 전에 상기 선캡처 구간에 진입한 경우, 상기 선캡처 데이터 중 수신되지 않은 부분을 수신하는 것을 특징으로 하는 단말 장치.
The method of claim 9,
The communication unit
And receives a portion of the line capture data that has not been received when the line capture section enters the line capture section before receiving all of the line capture data.
청구항 9에 있어서,
상기 제어부는
상기 어플리케이션이 상기 선캡처 구간에 진입한 경우, 상기 선캡처 데이터를 상기 화면에 표시하고, 그렇지 아니한 경우 상기 실시간 데이터를 상기 화면에 표시하는 것을 특징으로 하는 단말 장치.
The method of claim 9,
The control unit
And displays the pre-capture data on the screen when the application enters the pre-capture interval, and displays the real-time data on the screen if not.
클라우드 스트리밍 서비스를 위해 실행되는 어플리케이션의 기설정된 선캡처 구간에 상응하는 실행 화면을 캡처 및 인코딩하여 선캡처 데이터를 생성하는 단계;
상기 어플리케이션의 현재 구간에 상응하는 실행 화면을 캡처 및 인코딩하여 실시간 데이터를 생성하는 단계;
상기 실시간 데이터를 전송하는 단계; 및
상기 선캡처 데이터 중 적어도 일부를 전송하는 단계
를 포함하는 것을 특징으로 하는 클라우드 스트리밍 서비스 방법.
Capturing and encoding an execution screen corresponding to a predetermined pre-capture interval of an application executed for a cloud streaming service to generate pre-capture data;
Capturing and encoding an execution screen corresponding to a current section of the application to generate real-time data;
Transmitting the real-time data; And
Transmitting at least some of the line capture data
The method of claim 1,
청구항 12에 있어서,
상기 선캡처 데이터 중 적어도 일부를 전송하는 단계는
다음 입력을 수신할 때까지의 여유 대역 동안 상기 선캡처 데이터 중 전송이 수행되지 않은 부분의 적어도 일부를 전송하는 것을 특징으로 하는 클라우드 스트리밍 서비스 방법.
The method of claim 12,
Wherein transmitting at least some of the line capture data comprises:
And transmits at least a part of the line capture data that has not been transmitted during an extra band until receiving the next input.
청구항 13에 있어서,
상기 선캡처 데이터 중 적어도 일부를 전송하는 단계는
상기 선캡처 데이터 전부의 전송이 수행되기 전에 상기 선캡처 구간에 진입하여 상기 선캡처 데이터의 전송을 요청받은 경우, 상기 선캡처 데이터 중 전송이 수행되지 않은 부분을 전송하는 것을 특징으로 하는 클라우드 스트리밍 서비스 방법.
14. The method of claim 13,
Wherein transmitting at least some of the line capture data comprises:
And transmits a part of the line capture data, which is not transmitted, when the line capturing section enters the line capturing section and is requested to transmit the line capturing data before the transmission of the entire line capturing data is performed. Way.
클라우드 스트리밍 서버에서 실행되는 어플리케이션의 현재 구간에 상응하는 실행 화면이 캡처 및 인코딩되어 생성된 실시간 데이터를 수신하는 단계;
상기 어플리케이션의 기설정된 선캡처 구간에 상응하는 실행 화면이 캡처 및 인코딩되어 생성된 선캡처 데이터 중 적어도 일부를 수신하는 단계; 및
상기 실시간 데이터 및 상기 선캡처 데이터 중 어느 하나를 화면에 표시함으로써 클라우드 스트리밍 서비스를 제공하는 단계
를 포함하는 것을 특징으로 하는 클라우드 스트리밍 서비스 방법.
Receiving real-time data generated by capturing and encoding an execution screen corresponding to a current section of an application running on a cloud streaming server;
Receiving at least a part of line capture data generated by capturing and encoding an execution screen corresponding to a predetermined line capturing interval of the application; And
Providing the cloud streaming service by displaying any one of the real-time data and the line capture data on the screen
The method of claim 1,
청구항 15에 있어서,
상기 선캡처 데이터 중 적어도 일부를 수신하는 단계는
다음 입력을 전송할 때까지의 여유 대역 동안 상기 선캡처 데이터 중 수신되지 않은 부분의 적어도 일부를 수신하는 것을 특징으로 하는 클라우드 스트리밍 서비스 방법.
16. The method of claim 15,
The step of receiving at least some of the line capture data
And receives at least a part of an unrecorded portion of the line capture data during an extra band until a next input is transmitted.
청구항 16에 있어서,
상기 선캡처 데이터 중 적어도 일부를 수신하는 단계는
상기 선캡처 데이터 전부를 수신하기 전에 상기 선캡처 구간에 진입한 경우, 상기 선캡처 데이터 중 수신되지 않은 부분을 수신하는 것을 특징으로 하는 클라우드 스트리밍 서비스 방법.
18. The method of claim 16,
The step of receiving at least some of the line capture data
And receiving a portion of the line capture data that has not been received when the line capture section enters the line capture section before receiving all of the line capture data.
청구항 16에 있어서,
상기 서비스를 제공하는 단계는
상기 어플리케이션이 상기 선캡처 구간에 진입한 경우, 상기 선캡처 데이터를 상기 화면에 표시하고, 그렇지 아니한 경우 상기 실시간 데이터를 상기 화면에 표시하는 것을 특징으로 하는 클라우드 스트리밍 서비스 방법.
18. The method of claim 16,
The step of providing the service
Displaying the pre-capture data on the screen when the application enters the pre-capture interval, and displaying the real-time data on the screen if not.
청구항 12 내지 18 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록된 기록매체.A recording medium on which a program for executing the method according to any one of claims 12 to 18 is recorded. 클라우드 스트리밍 서비스를 위해 실행되는 어플리케이션의 실행 화면을 캡처 및 인코딩하여 생성된 실시간 데이터 및 상기 어플리케이션의 기설정된 선캡처 구간에 상응하는 실행 화면을 캡처 및 인코딩하여 생성된 선캡처 데이터 중 적어도 어느 하나를 전송하는 클라우드 스트리밍 서버; 및
상기 실시간 데이터 및 상기 선캡처 데이터 중 적어도 어느 하나를 수신하고, 상기 실시간 데이터 및 상기 선캡처 데이터 중 어느 하나를 화면에 표시함으로써 클라우드 스트리밍 서비스를 제공하는 단말 장치를 포함하는 것을 특징으로 하는 클라우드 스트리밍 서비스 시스템.
At least one of the real-time data generated by capturing and encoding an execution screen of an application executed for the cloud streaming service and the line capture data generated by capturing and encoding an execution screen corresponding to a predetermined line capture interval of the application A cloud streaming server; And
And a terminal device for receiving the at least one of the real-time data and the line-capturing data and displaying the real-time data and the line-capturing data on a screen to provide a cloud streaming service. system.
KR1020140061841A 2014-02-07 2014-05-22 System for servicing cloud streaming, method of servicing cloud streaming and server for the same Active KR102094677B1 (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1020140061841A KR102094677B1 (en) 2014-05-22 2014-05-22 System for servicing cloud streaming, method of servicing cloud streaming and server for the same
EP14878394.7A EP2937789A4 (en) 2014-02-07 2014-11-21 CLOUD CONTINUOUS DIFFUSION SERVICE SYSTEM, CLOUD CONTINUOUS DIFFUSION SERVICE PROVIDING METHOD, AND DEVICE THEREOF
CN201480006988.0A CN104981797B (en) 2014-02-07 2014-11-21 Cloud streaming service system and method and device for providing cloud streaming service
EP20162243.8A EP3683692A1 (en) 2014-02-07 2014-11-21 Cloud streaming service system, and method and apparatus for providing cloud streaming service
PCT/KR2014/011251 WO2015119361A1 (en) 2014-02-07 2014-11-21 Cloud streaming service system, method for providing cloud streaming service, and device for same
US14/761,251 US10021162B2 (en) 2014-02-07 2014-11-21 Cloud streaming service system, and method and apparatus for providing cloud streaming service

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140061841A KR102094677B1 (en) 2014-05-22 2014-05-22 System for servicing cloud streaming, method of servicing cloud streaming and server for the same

Publications (2)

Publication Number Publication Date
KR20150134716A true KR20150134716A (en) 2015-12-02
KR102094677B1 KR102094677B1 (en) 2020-03-30

Family

ID=54883111

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140061841A Active KR102094677B1 (en) 2014-02-07 2014-05-22 System for servicing cloud streaming, method of servicing cloud streaming and server for the same

Country Status (1)

Country Link
KR (1) KR102094677B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023195806A1 (en) * 2022-04-06 2023-10-12 삼성전자 주식회사 Electronic device and operation method therefor

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000040087A (en) 1998-12-17 2000-07-05 구자홍 Method of controlling playback speed of video using scene change distribution
JP2002259626A (en) * 2001-02-28 2002-09-13 Hitachi Ltd Content distribution device, content distribution method, content providing method, and content provider introducing method
US20090119737A1 (en) * 2002-12-10 2009-05-07 Onlive, Inc. System for collaborative conferencing using streaming interactive video
US20110161493A1 (en) * 2003-01-29 2011-06-30 Realnetworks, Inc. Systems and methods for selecting buffering time for media data
US20140033042A1 (en) * 2009-04-14 2014-01-30 Avid Technology Canada Corp. Rendering in a multi-user video editing system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000040087A (en) 1998-12-17 2000-07-05 구자홍 Method of controlling playback speed of video using scene change distribution
JP2002259626A (en) * 2001-02-28 2002-09-13 Hitachi Ltd Content distribution device, content distribution method, content providing method, and content provider introducing method
US20090119737A1 (en) * 2002-12-10 2009-05-07 Onlive, Inc. System for collaborative conferencing using streaming interactive video
US20110161493A1 (en) * 2003-01-29 2011-06-30 Realnetworks, Inc. Systems and methods for selecting buffering time for media data
US20140033042A1 (en) * 2009-04-14 2014-01-30 Avid Technology Canada Corp. Rendering in a multi-user video editing system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023195806A1 (en) * 2022-04-06 2023-10-12 삼성전자 주식회사 Electronic device and operation method therefor

Also Published As

Publication number Publication date
KR102094677B1 (en) 2020-03-30

Similar Documents

Publication Publication Date Title
US20220174346A1 (en) Video playing method and apparatus
US10412429B1 (en) Predictive transmitting of video stream data
JP2023522092A (en) INTERACTION RECORD GENERATING METHOD, APPARATUS, DEVICE AND MEDIUM
CN116405709B (en) A cloud rendering method and related equipment
US20170171568A1 (en) Method and device for processing live video
KR102346747B1 (en) System for cloud streaming service, method of cloud streaming service of providing multi-view screen based on resize and apparatus for the same
US10021162B2 (en) Cloud streaming service system, and method and apparatus for providing cloud streaming service
US10560727B2 (en) Server structure for supporting multiple sessions of virtualization
KR102094677B1 (en) System for servicing cloud streaming, method of servicing cloud streaming and server for the same
KR102426288B1 (en) Method and apparatus for providing artificial intelligence assistant service using voice call
KR20160121982A (en) System for cloud streaming service, method of image cloud streaming service using shared web-container and apparatus for the same
KR20160115566A (en) System for cloud streaming service, method of image cloud streaming service using separation of image and text and apparatus for the same
JP5420863B2 (en) Thin client system, application server, terminal control server, communication method
KR20160093929A (en) System for cloud streaming service, method of image cloud streaming service using simultaneous encoding and apparatus for the same
CN113595976B (en) Multimedia playback method, cloud server, system and storage medium
KR20160109805A (en) System for cloud streaming service, method of image cloud streaming service using split of changed image and apparatus for the same
KR102313529B1 (en) System for cloud streaming service, method of image cloud streaming service based on optimum rendering and apparatus for the same
KR102050736B1 (en) Cloud streaming system and apparatus for caching date in the system
KR102247888B1 (en) System for cloud streaming service, method of image cloud streaming service based on selective streaming pipeline method and apparatus for the same
KR20160091622A (en) System for cloud streaming service, method of image cloud streaming service using division of the change area and apparatus for the same
KR101668284B1 (en) System for cloud streaming service, method of providing cloud streaming service and apparatus for the same
KR101587192B1 (en) System for servicing cloud streaming, method of servicing cloud streaming and server for the same
KR102272358B1 (en) System for cloud streaming service, method of image cloud streaming service using managed occupation of browser and method using the same
CN105242972B (en) System and method for liberating computer resources
KR102199276B1 (en) System for cloud streaming service, method for processing service based on type of cloud streaming service and apparatus for the same

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20140522

N231 Notification of change of applicant
PN2301 Change of applicant

Patent event date: 20151113

Comment text: Notification of Change of Applicant

Patent event code: PN23011R01D

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20180404

Comment text: Request for Examination of Application

Patent event code: PA02011R01I

Patent event date: 20140522

Comment text: Patent Application

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20190703

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20191224

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20200324

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20200325

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20231211

Start annual number: 5

End annual number: 5