KR20200097497A - Apparatus and method for encoding of cloud streaming - Google Patents

Apparatus and method for encoding of cloud streaming Download PDF

Info

Publication number
KR20200097497A
KR20200097497A KR1020190014948A KR20190014948A KR20200097497A KR 20200097497 A KR20200097497 A KR 20200097497A KR 1020190014948 A KR1020190014948 A KR 1020190014948A KR 20190014948 A KR20190014948 A KR 20190014948A KR 20200097497 A KR20200097497 A KR 20200097497A
Authority
KR
South Korea
Prior art keywords
cloud streaming
encoding
image
global cache
data
Prior art date
Application number
KR1020190014948A
Other languages
Korean (ko)
Other versions
KR102617491B1 (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 KR1020190014948A priority Critical patent/KR102617491B1/en
Publication of KR20200097497A publication Critical patent/KR20200097497A/en
Application granted granted Critical
Publication of KR102617491B1 publication Critical patent/KR102617491B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234336Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by media transcoding, e.g. video is transformed into a slideshow of still pictures or audio is converted into text
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/222Secondary servers, e.g. proxy server, cable television Head-end
    • H04N21/2223Secondary servers, e.g. proxy server, cable television Head-end being a public access point, e.g. for downloading to or uploading from clients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Disclosed are a device and a method for encoding of cloud streaming. According to an embodiment of the present invention, the device for encoding of cloud streaming includes: an image change detector which detects changes in images provided through cloud streaming to check the presence of global cache data; and a post-processing unit determines whether re-encoding is necessary according to a preset condition based on reference data required for post-processing of the global cache data, wherein the global cache data is re-encoded based on whether the re-encoding is required, and the global cache data is updated using a re-encoded result, thereby ensuring better data size and quality in cloud streaming.

Description

클라우드 스트리밍 인코딩 장치 및 방법 {APPARATUS AND METHOD FOR ENCODING OF CLOUD STREAMING}Cloud streaming encoding device and method {APPARATUS AND METHOD FOR ENCODING OF CLOUD STREAMING}

본 발명은 클라우드 스트리밍 기술에 관한 것으로, 보다 상세하게는 클라우드 스트리밍의 인코딩 기술에 관한 것이다.The present invention relates to a cloud streaming technology, and more particularly, to an encoding technology of cloud streaming.

인터넷의 급속한 발달은 개인의 통신 속도를 급격히 향상시키는 결과를 가져왔으며, 이러한 통신 속도의 향상은 원격지에 위치한 컴퓨터에 접속하여 대용량의 데이터를 다운로드 또는 업로드 하거나, 원격지 컴퓨터 제어 프로그램을 사용하여 마치 원격지 컴퓨터에 로컬 로그인한 것과 같이 원격지 컴퓨터를 이용할 수 있는 환경을 제공하고 있다.The rapid development of the Internet has resulted in a rapid increase in the communication speed of individuals, and this increase in communication speed is like downloading or uploading large amounts of data by accessing a remote computer, or using a remote computer control program. It provides an environment where you can use a remote computer, such as logging in locally to the computer.

또한, 스마트폰과 같은 이동통신 단말에서 구동되는 어플리케이션이 다양하게 개발되면서, 비교적 낮은 성능의 사용자 단말에서 높은 성능을 필요로 하는 어플리케이션을 구동하기 위한 가상화 기술들이 많이 제안되고 있다. In addition, as applications driven in mobile communication terminals such as smart phones have been developed in various ways, many virtualization technologies have been proposed for driving applications that require high performance in user terminals with relatively low performance.

그 중에서 어플리케이션을 서버에서 구동시키고 구동화면은 비디오 인코딩(Encoding)을 통해 압축하여 클라이언트로 전송하고, 클라이언트는 전송된 비디오를 재생하여 마치 자신의 단말에서 어플리케이션이 구동되는 것과 같은 효과를 내는 화면 가상화 기반의 클라우드 스트리밍 서비스가 각광받고 있는 추세이다.Among them, the application is run on the server, the driving screen is compressed through video encoding and transmitted to the client, and the client plays the transmitted video to create the same effect as running the application on its own terminal based on screen virtualization. The cloud streaming service of is in the spotlight.

클라우드 스트리밍 서비스는 기본적으로 비디오 코덱 기반의 클라우드 스트리밍 기법이 적용되었다. 그러나 메뉴 디스플레이와 같이 정적인 화면을 서비스 하는 경우에도 불필요하게 화면 전체를 캡처하고 비디오 코덱을 이용하여 동작하게 되어 시스템 전체적으로 비효율적인 측면이 존재하였다.Cloud streaming service basically applied a cloud streaming technique based on a video codec. However, even in the case of servicing a static screen such as a menu display, the entire screen was unnecessarily captured and operated using a video codec, resulting in inefficient aspects of the system as a whole.

또한, 캐시를 이용한 클라우드 스트리밍 서비스 시 네트워크 성능이 낮은 단말에게 서비스를 제공할 때에는, 캐시를 통해 화질이 좋은 데이터를 획득하여도 단말에게 제공하기 위해 다시 데이터의 화질을 떨어뜨리는 비효율적인 처리를 수행할 수 있다. In addition, when providing a service to a terminal with low network performance during a cloud streaming service using a cache, even if high-quality data is acquired through the cache, in order to provide it to the terminal again, inefficient processing that lowers the quality of the data is performed. I can.

따라서, 어플리케이션 실행화면에서 정적인 부분의 이미지만을 캡처하여 사용자의 단말로 제공하되, 단말의 성능에 상응하는 캐시를 통해 서비스를 제공할 수 있도록 할 수 있는 이미지 기반의 클라우드 스트리밍 서비스 기술이 절실하게 대두된다.Therefore, there is an urgent need for an image-based cloud streaming service technology capable of capturing only the static image of the application execution screen and providing it to the user's terminal, but providing the service through a cache corresponding to the performance of the terminal. do.

이와 같은 클라우드 스트리밍 서비스는 기본적으로 비디오 코덱 기반의 클라우드 스트리밍 기법이 적용되었다. 그러나 메뉴 디스플레이와 같이 정적인 화면을 서비스 하는 경우에도 불필요하게 화면 전체를 캡처하고 비디오 코덱을 이용하여 동작하기 때문에 클라우드 스트리밍 서비스 시스템을 운영함에 있어서 비효율적인 부분이 존재하였다.In this cloud streaming service, a cloud streaming technique based on a video codec is basically applied. However, even in the case of servicing a static screen such as a menu display, since the entire screen is unnecessarily captured and operated using a video codec, there is an inefficient part in operating the cloud streaming service system.

이미지 클라우드 스트리밍에 있어서 적절한 인코딩 방식의 선택은 화질, 데이터 크기, 실시간 처리에 있어서 중요한 요소이다. (빠르게 인코딩 방식이 선택되어야 하며, 인코딩 속도 또한 빨라야 하며, 데이터 크기는 작되 화질은 좋아야 한다는 모든 것을 만족 시키기 어려운 요구 사항이 있다.) In image cloud streaming, selection of an appropriate encoding method is an important factor in quality, data size, and real-time processing. (There is a requirement that it is difficult to satisfy all that the encoding method should be selected quickly, the encoding speed should be fast, and the data size should be small but the quality should be good.)

클라우드 스트리밍 서비스 시스템, 소스 정보를 이용한 클라우드 스트리밍 서비스 방법 및 이를 위한 장치 (10-2014-0137733)에서는 이미지 특성 정보를 취득 혹은 이미지 데이터를 분석한 특성 정보를 바탕으로 적절한 인코딩 방식을 결정하는 것에 대한 제안 하였다. In the cloud streaming service system, a cloud streaming service method using source information, and a device therefor (10-2014-0137733), a proposal for acquiring image characteristic information or determining an appropriate encoding method based on the characteristic information analyzing image data I did.

또한 고화질 / 저화질에 대한 동시 인코딩을 진행하고, 기준 컬러 수 이하라면 저화질 인코딩만 처리, 기준 컬러 수 이상일 때 고화질 인코딩 데이터를 전달하여 화질과 속도를 보장하는 방법이 제안된 바 있다. (클라우드 스트리밍 서비스 시스템, 동시 인코딩을 이용한 이미지 클라우드 스트리밍 서비스 10-2015-0014861)In addition, a method has been proposed to perform simultaneous encoding for high-definition/low-quality images, process only low-quality encoding if the number of colors is less than or equal to the number of colors, and deliver high-quality encoded data when the number of colors is greater than or equal to the number of reference colors to ensure image quality and speed. (Cloud streaming service system, image cloud streaming service using simultaneous encoding 10-2015-0014861)

그러나, 이 방법들은 실시간 성을 보장해야 하기 때문에 제한된 인코딩 모드 (고화질 / 저화질)로 처리하거나 (실제로는 인코딩 포맷, 포맷에 따른 세부 옵션 등 다양한 인코딩 변수가 존재한다.), 이미지 특성 정보를 자연, 합성 정도로 분류하여 이 특성에 맞는 인코딩 방식을 제안하고 있다.However, since these methods must guarantee real-time performance, they can be processed in a limited encoding mode (high quality/low quality) (actually, there are various encoding variables such as encoding format and detailed options depending on the format), and image characteristic information is converted into natural, or low-quality encoding. It classifies the degree of synthesis and proposes an encoding method suitable for this characteristic.

한국 공개 특허 제10-2015-0014861호, 2016년 4월 12일 공개 (명칭: 클라우드 스트리밍 서비스 시스템, 동시 인코딩을 이용한 이미지 클라우드 스트리밍 서비스)Korean Patent Publication No. 10-2015-0014861, published on April 12, 2016 (Name: Cloud Streaming Service System, Image Cloud Streaming Service Using Simultaneous Encoding)

본 발명은 실시간으로 제공되는 클라우드 스트리밍에서 더 나은 데이터 크기 및 화질을 보장하는 것을 목적으로 한다.An object of the present invention is to ensure better data size and quality in cloud streaming provided in real time.

또한, 본 발명은 최적의 데이터로 인코딩을 수행하여 클라우드 스트리밍을 효율적으로 제공하는 것을 목적으로 한다.In addition, an object of the present invention is to efficiently provide cloud streaming by performing encoding with optimal data.

상기한 목적을 달성하기 위한 본 발명의 일실시예에 따른 클라우드 스트리밍 인코딩 장치는 글로벌 캐시 데이터의 존재 여부를 확인하기 위해 클라우드 스트리밍을 통해 제공되는 이미지의 변화를 감지하는 이미지 변화 감지부 및 상기 글로벌 캐시 데이터의 후처리에 필요한 기준 데이터에 기반한 기설정된 조건에 따라 재인코딩 필요 여부를 판단하고, 상기 재인코딩 필요 여부에 기반하여 상기 글로벌 캐시 데이터를 재인코딩하고, 재인코딩된 결과를 이용하여 상기 글로벌 캐시 데이터를 갱신하는 후처리부를 포함한다.In order to achieve the above object, the cloud streaming encoding apparatus according to an embodiment of the present invention includes an image change detector configured to detect a change in an image provided through cloud streaming in order to check the existence of global cache data, and the global cache. Determine whether re-encoding is necessary according to a preset condition based on reference data required for post-processing of data, re-encode the global cache data based on whether re-encoding is necessary, and use the re-encoded result to the global cache It includes a post-processing unit for updating data.

이 때, 상기 이미지 변화 감지부는 상기 이미지의 변화를 감지한 결과에 상응하는 글로벌 캐시 이미지의 존재하지 않는 경우, 후처리에 필요한 기준 데이터를 저장할 수 있다.In this case, when there is no global cache image corresponding to a result of detecting the change in the image, the image change detection unit may store reference data required for post-processing.

이 때, 상기 후처리에 필요한 기준 데이터는 상기 이미지의 화질을 판단하기 위한 데이터의 크기 및 최대 신호 대 잡음비(Peak Signal-to-Noise Ratio, PSNR)에 관한 정보 중 적어도 하나 이상 포함할 수 있다.In this case, the reference data necessary for the post-processing may include at least one of a size of data for determining the image quality and information on a peak signal-to-noise ratio (PSNR).

이 때, 상기 후처리부는 상기 이미지의 화질을 판단하기 위한 데이터의 크기보다 큰 글로벌 캐시 데이터에 대한 적어도 하나 이상의 방식의 인코딩 옵션으로 인코딩을 수행할 수 있다.In this case, the post-processor may perform encoding with at least one encoding option for global cache data that is larger than the size of data for determining the image quality.

이 때, 상기 후처리부는 상기 적어도 하나 이상의 방식의 인코딩 옵션으로 인코딩된 글로벌 캐시 데이터를 비교하여 어느 하나의 인코딩된 글로벌 캐시 데이터를 선택하여 상기 글로벌 캐시 데이터를 갱신할 수 있다.In this case, the post-processor may compare global cache data encoded with the at least one encoding option and select one of the encoded global cache data to update the global cache data.

또한, 상기한 목적을 달성하기 위한 본 발명의 일실시예에 따른 클라우드 스트리밍 인코딩 방법은 클라우드 스트리밍 인코딩 장치의 클라우드 스트리밍 인코딩 방법에 있어서, 글로벌 캐시 데이터의 존재 여부를 확인하기 위해, 클라우드 스트리밍을 통해 제공되는 이미지의 변화를 감지하는 단계; 상기 글로벌 캐시 데이터의 후처리에 필요한 기준 데이터에 기반한 기설정된 조건에 따라 재인코딩 필요 여부를 판단하는 단계 및 상기 재인코딩 필요 여부에 기반하여 상기 글로벌 캐시 데이터를 재인코딩하고, 재인코딩된 결과를 이용하여 상기 글로벌 캐시 데이터를 갱신하는 후처리 단계를 포함한다.In addition, the cloud streaming encoding method according to an embodiment of the present invention for achieving the above object is provided through cloud streaming in order to check the existence of global cache data in the cloud streaming encoding method of the cloud streaming encoding device. Detecting a change in the image being changed; Determining whether re-encoding is necessary according to a preset condition based on reference data required for post-processing of the global cache data, re-encoding the global cache data based on the need for re-encoding, and using the re-encoded result And a post-processing step of updating the global cache data.

이 때, 상기 이미지의 변화를 감지하는 단계는 상기 이미지의 변화를 감지한 결과에 상응하는 글로벌 캐시 이미지의 존재하지 않는 경우, 후처리에 필요한 기준 데이터를 저장할 수 있다.In this case, the step of detecting the change of the image may store reference data necessary for post-processing when there is no global cache image corresponding to a result of detecting the change of the image.

이 때, 상기 후처리에 필요한 기준 데이터는 상기 이미지의 화질을 판단하기 위한 데이터의 크기 및 최대 신호 대 잡음비(Peak Signal-to-Noise Ratio, PSNR)에 관한 정보 중 적어도 하나 이상 포함할 수 있다.In this case, the reference data necessary for the post-processing may include at least one of a size of data for determining the image quality and information on a peak signal-to-noise ratio (PSNR).

이 때, 상기 후처리 단계는 상기 이미지의 화질을 판단하기 위한 데이터의 크기보다 큰 글로벌 캐시 데이터에 대한 적어도 하나 이상의 방식의 인코딩 옵션으로 인코딩을 수행할 수 있다.In this case, in the post-processing step, encoding may be performed using at least one encoding option for global cache data that is larger than the size of data for determining the image quality.

이 때, 상기 후처리 단계는 상기 적어도 하나 이상의 방식의 인코딩 옵션으로 인코딩된 글로벌 캐시 데이터를 비교하여 어느 하나의 인코딩된 글로벌 캐시 데이터를 선택하여 상기 글로벌 캐시 데이터를 갱신할 수 있다.In this case, in the post-processing step, the global cache data may be updated by comparing global cache data encoded with the at least one encoding option and selecting any one of the encoded global cache data.

본 발명은 실시간으로 제공되는 클라우드 스트리밍에서 더 나은 데이터 크기 및 화질을 보장할 수 있다.The present invention can ensure better data size and quality in cloud streaming provided in real time.

또한, 본 발명은 최적의 데이터로 인코딩을 수행하여 클라우드 스트리밍을 효율적으로 제공할 수 있다.In addition, the present invention can efficiently provide cloud streaming by performing encoding with optimal data.

도 1은 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 시스템을 나타낸 블록도이다.
도 2는 도 1에 도시된 클라우드 스트리밍 라우터의 일 예를 나타낸 블록도이다.
도 3은 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 시스템을 상세하게 나타낸 블록도이다.
도 4는 본 발명의 일실시예에 따른 클라우드 스트리밍 인코딩 장치를 나타낸 블록도이다.
도 5는 본 발명의 일실시예에 따른 클라우드 스트리밍 인코딩 방법을 나타낸 동작흐름도이다.
도 6은 본 발명의 일실시예에 따른 이미지 변화를 감지하는 과정의 클라우드 스트리밍 인코딩 방법을 나타낸 동작흐름도이다.
도 7은 본 발명의 일실시예에 따른 글로벌 캐시를 후처리하는 과정의 클라우드 스트리밍 인코딩 방법을 나타낸 동작흐름도이다.
도 8은 본 발명의 일실시예에 따른 컴퓨터 시스템을 나타낸 도면이다.
1 is a block diagram showing a cloud streaming service system according to an embodiment of the present invention.
2 is a block diagram illustrating an example of a cloud streaming router shown in FIG. 1.
3 is a block diagram showing in detail a cloud streaming service system according to an embodiment of the present invention.
4 is a block diagram showing a cloud streaming encoding apparatus according to an embodiment of the present invention.
5 is a flowchart illustrating a cloud streaming encoding method according to an embodiment of the present invention.
6 is an operation flow diagram illustrating a cloud streaming encoding method in a process of detecting image change according to an embodiment of the present invention.
7 is an operation flow diagram illustrating a cloud streaming encoding method in a process of post-processing a global cache according to an embodiment of the present invention.
8 is a diagram showing a computer system according to an embodiment of the present invention.

본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.The present invention will be described in detail with reference to the accompanying drawings as follows. Here, repeated descriptions, well-known functions that may unnecessarily obscure the subject matter of the present invention, and detailed descriptions of configurations are omitted. Embodiments of the present invention are provided to more completely explain the present invention to those with average knowledge in the art. Therefore, the shapes and sizes of elements in the drawings may be exaggerated for clearer explanation.

명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when a certain part "includes" a certain component, it means that other components may be further included rather than excluding other components unless specifically stated to the contrary.

본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 본 발명의 효과 및 특징, 그리고 그것들을 달성하는 방법은 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다. In the present invention, various transformations may be applied and various embodiments may be provided, and specific embodiments will be illustrated in the drawings and described in detail. Effects and features of the present invention, and a method of achieving them will be apparent with reference to the embodiments described later in detail together with the drawings. Here, repeated descriptions, well-known functions that may unnecessarily obscure the subject matter of the present invention, and detailed descriptions of configurations are omitted. Embodiments of the present invention are provided to more completely explain the present invention to those with average knowledge in the art. Therefore, the shapes and sizes of elements in the drawings may be exaggerated for clearer explanation.

그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성되어 다양한 형태로 구현될 수 있다. 이하의 실시예에서, 제1, 제2 등의 용어는 한정적인 의미가 아니라 하나의 구성 요소를 다른 구성 요소와 구별하는 목적으로 사용되었다. 또한, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는한 복수의 표현을 포함한다. 또한, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 또는 구성요소가 존재함을 의미하는 것이고, 하나 이상의 다른 특징들 또는 구성요소가 부가될 가능성을 미리 배제하는 것은 아니다.However, the present invention is not limited to the embodiments disclosed below, and may be implemented in various forms by selectively combining all or part of each embodiment. In the following embodiments, terms such as first and second are used for the purpose of distinguishing one constituent element from other constituent elements rather than a limiting meaning. In addition, expressions in the singular include plural expressions unless the context clearly indicates otherwise. In addition, terms such as include or have means that the features or elements described in the specification are present, and do not preclude the possibility of adding one or more other features or elements in advance.

이하 본 발명의 바람직한 실시예를 첨부한 도면을 참조하여 상세히 설명한다. 다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. However, detailed descriptions of known functions or configurations that may obscure the subject matter of the present invention will be omitted in the following description and accompanying drawings. In addition, it should be noted that the same components are indicated by the same reference numerals as possible throughout the drawings. Embodiments of the present invention are provided to more completely explain the present invention to those with average knowledge in the art. Therefore, the shapes and sizes of elements in the drawings may be exaggerated for clearer explanation.

이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다. 또한 제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하기 위해 사용하는 것으로, 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 뿐, 상기 구성요소들을 한정하기 위해 사용되지 않는다.The terms or words used in the present specification and claims described below should not be construed as being limited to a conventional or dictionary meaning, and the inventor is appropriate as a concept of terms for describing his own invention in the best way. It should be interpreted as a meaning and concept consistent with the technical idea of the present invention on the basis of the principle that it can be defined. Therefore, the embodiments described in the present specification and the configurations shown in the drawings are only the most preferred embodiments of the present invention, and do not represent all the technical spirit of the present invention, and thus various alternatives that can be substituted for them at the time of application It should be understood that there may be equivalents and variations. In addition, terms such as first and second are used to describe various elements, and are used only for the purpose of distinguishing one element from other elements, and are not used to limit the elements.

이하, 첨부된 도면을 참조하여 본 발명의 실시예들을 상세히 설명하기로 하며, 도면을 참조하여 설명할 때 동일하거나 대응하는 구성 요소는 동일한 도면 부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings, and when describing with reference to the drawings, identical or corresponding constituent elements are denoted by the same reference numerals, and redundant descriptions thereof will be omitted. .

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

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

클라우드 스트리밍 라우터(110)는 복수 개의 클라우드 스트리밍 서버(120-1~ 120-N)들 중 어느 하나로 세션 연결하기 위한 적어도 하나의 단말(130-1~ 130-N)의 네트워크 성능을 판단한다.The cloud streaming router 110 determines the network performance of at least one terminal 130-1 to 130-N for session connection to any one of the plurality of cloud streaming servers 120-1 to 120-N.

이 때, 대역폭의 크기 및 네트워크의 읽기쓰기 성능 중 적어도 하나를 고려하여 네트워크 성능을 기설정된 기준 성능 이상에 상응하는 제1 수준 및 제1 수준보다 성능이 낮은 제2 수준 중 어느 하나로 판단할 수 있다.In this case, in consideration of at least one of the size of the bandwidth and the read/write performance of the network, the network performance may be determined as one of a first level corresponding to a predetermined reference performance or higher and a second level having a lower performance than the first level. .

이 때, 캐시 이미지 화질 레벨은 어플리케이션 실행화면의 원본 화질에 상응하는 제1 레벨 및 제1 레벨보다 열화된 화질에 상응하는 제2 레벨 중 어느 하나에 상응할 수 있다.In this case, the cache image quality level may correspond to one of a first level corresponding to the original quality of the application execution screen and a second level corresponding to a quality deteriorated than the first level.

이 때, 복수 개의 클라우드 스트리밍 서버(120-1~ 120-N)들은 캐시 이미지 화질 레벨이 제1 레벨에 상응하는 제1 클라우드 스트리밍 서버 및 캐시 이미지 화질 레벨이 제2 레벨에 상응하는 제2 클라우드 스트리밍 서버 중 어느 하나에 상응할 수 있다.In this case, the plurality of cloud streaming servers 120-1 to 120 -N have a first cloud streaming server having a cache image quality level corresponding to the first level and a second cloud streaming server having a cache image quality level corresponding to the second level. It can correspond to any of the servers.

이 때, 제1 클라우드 스트리밍 서버는 캐시에 저장된 이미지를 제1 레벨에 상응하게 스틸 이미지 인코딩하여 적어도 하나의 단말(130-1~ 130-N)로 전송할 수 있다.In this case, the first cloud streaming server may encode the image stored in the cache according to the first level and transmit the still image to the at least one terminal 130-1 to 130 -N.

이 때, 제2 레벨은 팔렛티드 PNG 및 화질이 저하된 JPEG 중 어느 하나에 상응할 수 있다.In this case, the second level may correspond to one of a palletized PNG and a JPEG with deteriorated image quality.

이 때, 적어도 하나의 단말(130-1~ 130-N)이 인터넷을 통해 연결된 퍼스널 컴퓨터(Personal Computer; PC)에 상응하는 경우에 네트워크 성능을 제1 수준인 것으로 판단하고, 적어도 하나의 단말(130-1~ 130-N)이 케이블 모뎀(Cable Modem)망을 통해 연결된 저성능의 셋톱박스(Set Top Box)에 상응하는 경우에 네트워크 성능을 제2 수준이 것으로 판단할 수 있다.In this case, when at least one terminal (130-1 to 130-N) corresponds to a personal computer (PC) connected through the Internet, it is determined that the network performance is at the first level, and at least one terminal ( When 130-1 to 130-N) correspond to a low-performance set-top box connected through a cable modem network, the network performance may be determined to be at the second level.

또한, 클라우드 스트리밍 라우터(110)는 복수 개의 클라우드 스트리밍 서버(120-1~ 120-N)들 중 캐시에 저장된 이미지의 캐시 이미지 화질 레벨이 네트워크 성능에 상응하는 클라우드 스트리밍 서버(120-1~ 120-N)로 적어도 하나의 단말(130-1~ 130-N)을 연결한다.In addition, the cloud streaming router 110 includes a plurality of cloud streaming servers 120-1 to 120-N, in which the cache image quality level of the image stored in the cache corresponds to the network performance. At least one terminal (130-1 to 130-N) is connected to N).

이 때, 적어도 하나의 단말(130-1~ 130-N)이 제1 수준에 상응하는 경우에 적어도 하나의 단말(130-1~ 130-N)을 제1 클라우드 스트리밍 서버로 연결하고, 적어도 하나의 단말(130-1~ 130-N)이 제2 수준에 상응하는 경우에 적어도 하나의 단말(130-1~ 130-N)을 제2 클라우드 스트리밍 서버로 연결할 수 있다.At this time, when at least one terminal (130-1 to 130-N) corresponds to the first level, at least one terminal (130-1 to 130-N) is connected to the first cloud streaming server, and at least one When the terminals 130-1 to 130-N of correspond to the second level, at least one terminal 130-1 to 130-N may be connected to the second cloud streaming server.

클라우드 스트리밍 서버(120-1~ 120-N)는 세션 연결된 단말(130-1~ 130-N)에게 이미지 기반의 클라우드 스트리밍 서비스를 제공한다. The cloud streaming servers 120-1 to 120-N provide an image-based cloud streaming service to the session-connected terminals 130-1 to 130-N.

이 때, 캐시에 저장된 이미지를 이용하여 어플리케이션 실행화면에 상응하는 이미지를 획득할 수 있다.In this case, an image corresponding to the application execution screen may be obtained by using the image stored in the cache.

이 때, 캐시에 저장된 이미지의 캐시 이미지 화질 레벨에 상응하게 이미지를 스틸 이미지 인코딩하여 단말(130-1~ 130-N)로 전송할 수 있다.In this case, the still image may be encoded and transmitted to the terminals 130-1 to 130-N according to the cache image quality level of the image stored in the cache.

이 때, 캐시 이미지 화질 레벨은 어플리케이션 실행화면의 원본 화질에 상응하는 제1 레벨 및 제1 레벨보다 열화된 화질에 상응하는 제2 레벨 중 어느 하나에 상응할 수 있다.In this case, the cache image quality level may correspond to one of a first level corresponding to the original quality of the application execution screen and a second level corresponding to a quality deteriorated than the first level.

이 때, 클라우드 스트리밍 서버(120-1~ 120-N)는 캐시 이미지 화질 레벨이 제1 레벨에 상응하는 캐시 및 캐시 이미지 화질 레벨이 제2 레벨에 상응하는 캐시 중 적어도 하나를 포함할 수 있다.In this case, the cloud streaming servers 120-1 to 120 -N may include at least one of a cache having a cache image quality level corresponding to the first level and a cache having a cache image quality level corresponding to the second level.

이 때, 클라우드 스트리밍 서버(120-1~ 120-N)는 렌더링, 캡처, 스틸 이미지 인코딩 및 센딩에 상응하는 파이프라인 과정을 통해 이미지 기반의 클라우드 스트리밍 서비스를 제공할 수 있다.In this case, the cloud streaming servers 120-1 to 120-N may provide an image-based cloud streaming service through a pipeline process corresponding to rendering, capturing, still image encoding, and sending.

단말(130-1~ 130-N)은 클라우드 스트리밍 서버(110)로부터 클라우드 스트리밍 서비스에 상응하는 어플리케이션 실행화면을 수신하여 사용자에게 제공한다.The terminals 130-1 to 130-N receive an application execution screen corresponding to the cloud streaming service from the cloud streaming server 110 and provide it to the user.

또한, 단말(130-1~ 130-N)은 각각 통신망에 연결되어 클라우드 컴퓨팅 시스템 기반으로 어플리케이션을 실행할 수 있는 장치로, 이동통신단말기에 한정된 것이 아니고, 모든 정보통신기기, 멀티미디어 단말, 유선 단말, 고정형 단말 및 IP(Internet Protocol) 단말 등의 다양한 단말일 수 있다. 또한, 단말(130-1~ 130-N)은 각각 휴대폰, PMP(Portable Multimedia Played), MID(Mobile Internet Device), 스마트폰(Smart Phone), 데스크톱(Desktop), 태블릿컴퓨터(Tablet PC), 노트북(Note book), 넷북(Net Book), 개인휴대용 정보단말(Personal Digital Assistant; PDA), 스마트 TV 및 정보통신 기기 등과 같은 다양한 이동통신 사양을 갖는 모바일(Mobile) 단말일 수 있다.In addition, the terminals 130-1 to 130-N are devices that are connected to a communication network and can execute applications based on a cloud computing system, and are not limited to mobile communication terminals, and all information and communication devices, multimedia terminals, wired terminals, It may be a variety of terminals such as fixed terminal and IP (Internet Protocol) terminal. In addition, the terminals 130-1 to 130-N are mobile phones, Portable Multimedia Played (PMP), Mobile Internet Devices (MID), smart phones, desktops, tablet computers, and notebook computers, respectively. It may be a mobile terminal having various mobile communication specifications, such as (Note book), Net Book, Personal Digital Assistant (PDA), smart TV and information communication device.

또한, 단말(130-1~ 130-N)은 숫자 및 문자 정보 등의 다양한 정보를 입력 받고, 각종 기능을 설정 및 단말(130-1~ 130-N)의 기능 제어와 관련하여 입력되는 신호를 입력부를 통해 제어부로 전달할 수 있다. 또한, 단말(130-1~ 130-N)의 입력부는 사용자의 터치 또는 조작에 따른 입력 신호를 발생하는 키패드와 터치패드 중 적어도 하나를 포함하여 구성할 수 있다. 이 때, 단말(130-1~ 130-N)의 입력부는 단말(130-1~ 130-N)의 표시부와 함께 하나의 터치패널(또는 터치 스크린(touch screen))의 형태로 구성되어 입력과 표시 기능을 동시에 수행할 수 있다. 또한, 단말(130-1~ 130-N)의 입력부는 키보드, 키패드, 마우스, 조이스틱 등과 같은 입력 장치 외에도 향후 개발될 수 있는 모든 형태의 입력 수단이 사용될 수 있다. 특히, 본 발명에 따른 단말(130-1~ 130-N)의 입력부는 클라우드 컴퓨팅 기반으로 컨텐츠를 업로드 하거나 다운로드 하기 위한 입력 신호를 단말(130-1~ 130-N)의 제어부로 전달할 수 있다.In addition, the terminals 130-1 to 130-N receive various information such as number and character information, set various functions, and transmit signals input in connection with function control of the terminals 130-1 to 130-N. It can be transmitted to the control unit through the input unit. In addition, the input unit of the terminals 130-1 to 130 -N may include at least one of a keypad and a touch pad that generate an input signal according to a user's touch or manipulation. At this time, the input unit of the terminals 130-1 to 130-N is configured in the form of a single touch panel (or touch screen) together with the display unit of the terminals 130-1 to 130-N, The display function can be performed simultaneously. In addition, the input unit of the terminals 130-1 to 130-N may use all types of input means that may be developed in the future in addition to input devices such as a keyboard, keypad, mouse, and joystick. In particular, the input unit of the terminals 130-1 to 130-N according to the present invention may transmit an input signal for uploading or downloading content based on cloud computing to the controllers of the terminals 130-1 to 130-N.

또한, 단말(130-1~ 130-N)의 표시부는 단말(130-1~ 130-N)의 기능 수행 중에 발생하는 일련의 동작상태 및 동작결과 등에 대한 정보를 표시할 수 있다. 또한, 단말(130-1~ 130-N)의 표시부는 단말(130-1~ 130-N)의 메뉴 및 사용자가 입력한 사용자 데이터 등을 표시할 수 있다. 여기서, 단말(130-1~ 130-N)의 표시부는 액정표시장치(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) 디스플레이 등으로 구성될 수 있다. 이 때, 단말(130-1~ 130-N)의 표시부가 터치스크린 형태로 구성된 경우, 단말(130-1~ 130-N)의 표시부는 단말(130-1~ 130-N)의 입력부의 기능 중 일부 또는 전부를 수행할 수 있다. 특히, 본 발명에 따른 단말(130-1~ 130-N)의 표시부는 클라우드 컴퓨팅 기반으로 제공되는 컨텐츠의 실행과 관련된 정보를 화면으로 표시할 수 있다.In addition, the display unit of the terminals 130-1 to 130-N may display information about a series of operation states and operation results that occur while performing functions of the terminals 130-1 to 130-N. Also, the display unit of the terminals 130-1 to 130-N may display a menu of the terminals 130-1 to 130-N and user data input by the user. Here, the display of the terminals 130-1 to 130-N is a liquid crystal display (LCD), an ultra-thin liquid crystal display (TFT-LCD, Thin Film Transistor LCD), and a light emitting diode (LED). , Organic light-emitting diodes (OLED, Organic LED), active organic light-emitting diodes (AMOLED, Active Matrix OLED), Retina Display, Flexible display, and 3D display, etc. have. At this time, when the display unit of the terminals 130-1 to 130-N is configured in the form of a touch screen, the display unit of the terminals 130-1 to 130-N functions as an input unit of the terminals 130-1 to 130-N. Some or all of them may be performed. In particular, the display unit of the terminals 130-1 to 130-N according to the present invention may display information related to execution of content provided based on cloud computing on a screen.

또한, 단말(130-1~ 130-N)의 저장부는 데이터를 저장하기 위한 장치로, 주 기억장치 및 보조 기억장치를 포함하고, 단말(130-1~ 130-N)의 기능 동작에 필요한 응용 프로그램을 저장할 수 있다. 이러한 단말(130-1~ 130-N)의 저장부는 크게 프로그램 영역과 데이터 영역을 포함할 수 있다. 여기서, 단말(130-1~ 130-N)는 사용자의 요청에 상응하여 각 기능을 활성화하는 경우, 제어부의 제어 하에 해당 응용 프로그램들을 실행하여 각 기능을 제공하게 된다. 특히, 본 발명에 따른 단말(130-1~ 130-N)의 저장부는 단말(130-1~ 130-N)를 부팅시키는 운영체제, 클라우드 컴퓨팅 기반으로 컨텐츠를 업로드 하거나 다운로드하기 위한 프로그램 등을 저장할 수 있다. 또한, 단말(130-1~ 130-N)의 저장부는 다수의 컨텐츠를 저장하는 컨텐츠 DB와 단말(130-1~ 130-N)의 정보를 저장할 수 있다. 이 때, 컨텐츠 DB는 컨텐츠를 실행하기 위한 실행 데이터와 컨텐츠에 대한 속성 정보를 포함하고, 컨텐츠 실행에 따른 컨텐츠 사용 정보 등이 저장될 수 있다. 그리고, 단말(130-1~ 130-N)의 정보는 단말 사양 정보를 포함할 수 있다.In addition, the storage unit of the terminals 130-1 to 130-N is a device for storing data, including a main memory device and an auxiliary memory device, and is an application required for the functional operation of the terminals 130-1 to 130-N. You can save the program. The storage of the terminals 130-1 to 130-N may largely include a program area and a data area. Here, when the terminals 130-1 to 130-N activate each function in response to a user's request, the terminals 130-1 to 130-N execute the corresponding application programs under the control of the controller to provide each function. In particular, the storage unit of the terminals 130-1 to 130-N according to the present invention can store an operating system for booting the terminals 130-1 to 130-N, a program for uploading or downloading content based on cloud computing. have. Further, the storage unit of the terminals 130-1 to 130-N may store a content DB for storing a plurality of contents and information of the terminals 130-1 to 130-N. In this case, the content DB may include execution data for executing the content and attribute information on the content, and may store content usage information according to content execution. In addition, the information of the terminals 130-1 to 130-N may include terminal specification information.

또한, 단말(130-1~ 130-N)의 통신부는 클라우드 스트리밍 서버(110)와 네트워크(130)을 통해 데이터를 송수신하기 위한 기능을 수행할 수 있다. 여기서 단말(130-1~ 130-N)의 통신부는 송신되는 신호의 주파수를 상승 변환 및 증폭하는 RF 송신 수단과 수신되는 신호를 저잡음 증폭하고 주파수를 하강 변환하는 RF 수신 수단 등을 포함할 수 있다. 이러한 단말(130-1~ 130-N)의 통신부는 무선통신 모듈 및 유선통신 모듈 중 적어도 하나를 포함할 수 있다. 그리고, 무선통신 모듈은 무선 통신 방법에 따라 데이터를 송수신하기 위한 구성이며, 단말(130-1~ 130-N)이 무선 통신을 이용하는 경우, 무선망 통신 모듈, 무선랜 통신 모듈 및 무선팬 통신 모듈 중 어느 하나를 이용하여 데이터를 클라우드 스트리밍 서버(110)로 송수신할 수 있다. 또한, 유선통신 모듈은 유선으로 데이터를 송수신하기 위한 것이다. 유선통신 모듈은 유선을 통해 네트워크(130)에 접속하여, 클라우드 스트리밍 서버(110)에 데이터를 송수신할 수 있다. 즉 단말(130-1~ 130-N)은 무선통신 모듈 또는 유선통신 모듈을 이용하여 네트워크(130)에 접속하며, 네트워크(130)을 통해 클라우드 스트리밍 서버(110)와 데이터를 송수신할 수 있다. 특히, 본 발명에 따른 네트워크(130)는 클라우드 스트리밍 서버(110) 또는 다른 단말(130-1~ 130-N)과 통신하여 클라우드 컴퓨팅 기반으로 컨텐츠를 업로드 또는 다운로드 하는데 필요한 데이터를 송수신할 수 있다.In addition, the communication unit of the terminals 130-1 to 130 -N may perform a function of transmitting and receiving data through the cloud streaming server 110 and the network 130. Here, the communication unit of the terminals 130-1 to 130-N may include an RF transmission unit for up-converting and amplifying the frequency of the transmitted signal, and an RF receiving unit for low-noise amplification and down-converting the received signal. . The communication unit of the terminals 130-1 to 130-N may include at least one of a wireless communication module and a wired communication module. And, the wireless communication module is a configuration for transmitting and receiving data according to a wireless communication method, and when the terminals 130-1 to 130-N use wireless communication, a wireless network communication module, a wireless LAN communication module, and a wireless fan communication module Data can be transmitted and received to the cloud streaming server 110 using any one of them. In addition, the wired communication module is for transmitting and receiving data by wire. The wired communication module may connect to the network 130 through a wire and transmit/receive data to the cloud streaming server 110. That is, the terminals 130-1 to 130-N access the network 130 using a wireless communication module or a wired communication module, and may transmit and receive data to and from the cloud streaming server 110 through the network 130. In particular, the network 130 according to the present invention may communicate with the cloud streaming server 110 or other terminals 130-1 to 130-N to transmit and receive data necessary for uploading or downloading content based on cloud computing.

또한, 단말 장치(130-1~ 130-N)의 제어부는 운영 체제((OS, Operation System) 및 각 구성을 구동시키는 프로세스 장치가 될 수 있다. 예를 들어, 제어부는 클라우드 스트리밍 서버(110)에 접속하는 과정 전반을 제어할 수 있다. 별도의 서비스 어플리케이션을 통해 클라우드 스트리밍 서버(110)에 접속하는 경우, 사용자의 요청에 따라 서비스 어플리케이션을 실행되는 과정 전반을 제어할 수 있으며, 실행과 동시에 클라우드 스트리밍 서버(110)로 서비스 이용 요청이 전송되도록 제어할 수 있으며, 이때 사용자 인증에 필요한 단말(130-1~ 130-N)의 정보가 함께 전송되도록 제어할 수 있다.In addition, the control unit of the terminal devices 130-1 to 130-N may be an operating system (Operation System) and a process device that drives each component. For example, the control unit is the cloud streaming server 110 When accessing the cloud streaming server 110 through a separate service application, the entire process of executing the service application can be controlled according to the user's request, and at the same time, the cloud It is possible to control so that a service use request is transmitted to the streaming server 110, and at this time, information of the terminals 130-1 to 130-N required for user authentication can be controlled to be transmitted together.

또한, 단말(130-1~ 130-N)의 제어부는 사용자의 요청에 따라 단말(130-1~ 130-N)의 저장부에 저장된 특정 컨텐츠를 실행할 수 있다. 이때, 제어부는 컨텐츠 실행에 따른 컨텐츠 사용 이력을 컨텐츠 사용 정보로 저장할 수 있다.In addition, the controller of the terminals 130-1 to 130-N may execute specific content stored in the storage of the terminals 130-1 to 130-N according to a user's request. In this case, the controller may store the content use history according to the content execution as content use information.

또한, 단말(130-1~ 130-N)의 제어부는 컨텐츠를 실행하기 위한 실행 데이터와, 컨텐츠에 대한 속성 정보를 포함하는 컨텐츠 정보와, 컨텐츠 사용 이력에 따른 정보인 컨텐츠 사용 정보를 함께 클라우드 스트리밍 서버(110)로 전송하여 업로드 할 수 있다. 이후, 제어부는 클라우드 스트리밍 서버(110)에 전송하여 업로드된 컨텐츠에 대해서는 사용자의 요청에 따라 단말(130-1~ 130-N)의 저장부에서 삭제할 수 있으며, 클라우드 스트리밍 서버(110)에 접속하여 클라우드 스트리밍 서버(110)를 통해 컨텐츠를 실행하여 이용할 수도 있다.In addition, the control unit of the terminals 130-1 to 130-N is cloud streaming with execution data for executing the content, content information including attribute information on the content, and content usage information, which is information according to the content usage history. It can be uploaded by transmitting it to the server 110. Thereafter, the control unit may delete the content uploaded by transmitting to the cloud streaming server 110 from the storage unit of the terminals 130-1 to 130-N according to the user's request, and access the cloud streaming server 110 The content may be executed and used through the cloud streaming server 110.

또한, 단말(130-1~ 130-N)의 제어부는 클라우드 스트리밍 서버(110)에 접속하여 다른 단말(130-1~ 130-N)로부터 컨텐츠를 다운로드한 후 저장부에 저장되도록 제어할 수도 있으며, 클라우드 스트리밍 서버(110)를 통해 컨텐츠 실행 시, 실행에 필요한 데이터만을 수신한 후 컨텐츠가 실행되도록 제어할 수도 있다.In addition, the control unit of the terminals 130-1 to 130-N may access the cloud streaming server 110 to download content from other terminals 130-1 to 130-N and then control to be stored in the storage unit. , When executing content through the cloud streaming server 110, it is possible to control the content to be executed after receiving only data necessary for execution.

네트워크(140)는 클라우드 스트리밍 라우터(110) 및 단말(130-1~ 130-N) 사이 에 데이터를 전달하는 통로를 제공하는 것으로서, 기존에 이용되는 네트워크 및 향후 개발 가능한 네트워크를 모두 포괄하는 개념이다. 예를 들어, 네트워크(140)는 한정된 지역 내에서 각종 정보장치들의 통신을 제공하는 유무선근거리 통신망, 이동체 상호 간 및 이동체와 이동체 외부와의 통신을 제공하는 이동통신망, 위성을 이용해 지구국과 지구국간 통신을 제공하는 위성통신망이거나 유무선 통신망 중에서 어느 하나이거나, 둘 이상의 결합으로 이루어질 수 있다. 한편, 네트워크(140)의 전송 방식 표준은, 기존의 전송 방식 표준에 한정되는 것은 아니며, 향후 개발될 모든 전송 방식 표준을 포함할 수 있다. 또한, 도 1에서 클라우드 스트리밍 라우터(110)와 단말(130-1~ 130-N) 사이에 사용되는 네트워크는 단말(130-1~ 130-N)들 상호간에 사용되는 네트워크와 상이한 것일 수도 있고, 동일한 것일 수도 있다.The network 140 provides a path for transmitting data between the cloud streaming router 110 and the terminals 130-1 to 130-N, and is a concept encompassing both an existing network and a network that can be developed in the future. . For example, the network 140 is a wired/wireless local area communication network that provides communication of various information devices within a limited area, a mobile communication network that provides communication between mobiles and the mobile and the outside of the mobile, and the earth station and the earth station communicate using satellites. It may be a satellite communication network, a wired or wireless communication network, or a combination of two or more. Meanwhile, the transmission method standard of the network 140 is not limited to the existing transmission method standard, and may include all transmission method standards to be developed in the future. In addition, the network used between the cloud streaming router 110 and the terminals 130-1 to 130-N in FIG. 1 may be different from the network used between the terminals 130-1 to 130-N, It could be the same thing.

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

도 2를 참조하면, 도 1에 도시된 클라우드 스트리밍 라우터(110)는 통신부(210), 네트워크 성능 판단부(220), 연결부(230) 및 저장부(240)를 포함한다.Referring to FIG. 2, the cloud streaming router 110 illustrated in FIG. 1 includes a communication unit 210, a network performance determination unit 220, a connection unit 230, and a storage unit 240.

통신부(210)는 도 1에 도시된 네트워크와 같은 통신망을 통해 다수의 단말들과 관련된 정보를 송수신하는 역할을 한다. 특히, 본 발명의 일실시예에 따른 통신부(210)는 클라우드 스트리밍 서비스에 대한 요청과 함께 단말의 성능 정보를 단말로부터 수신할 수 있다. 예를 들어, 세션연결을 요청하는 단말의 장치 종류나 모델명, 단말이 사용하는 네트워크의 종류 및 네트워크 속도 등의 정보를 제공할 수 있다. 이와 같은 단말의 성능 또는 단말의 네트워크 성능 정보는 클라우드 스트리밍 서비스 시스템의 관리자 설정에 따라 자유롭게 설정 변경이 가능할 수 있다.The communication unit 210 serves to transmit and receive information related to a plurality of terminals through a communication network such as the network shown in FIG. 1. In particular, the communication unit 210 according to an embodiment of the present invention may receive performance information of the terminal from the terminal together with a request for a cloud streaming service. For example, information such as a device type or model name of a terminal requesting a session connection, a network type and a network speed used by the terminal may be provided. The performance of the terminal or the network performance information of the terminal may be freely set according to the administrator setting of the cloud streaming service system.

이 때, 단말이 요청한 클라우드 스트리밍 서비스에 대해서 클라우드 스트리밍 서버로부터 어플리케이션 실행결과를 수신할 수 있다.In this case, the application execution result may be received from the cloud streaming server for the cloud streaming service requested by the terminal.

또한, 단말이 요청한 클라우드 스트리밍 서비스에 상응하는 어플리케이션의 실행결과를 단말로 제공할 수 있다. 예를 들어, 단말과 세션 연결된 클라우드 스트리밍 서버로부터 단말이 요청한 서비스에 상응하는 어플리케이션 실행화면을 수신하여 단말로 전송할 수 있다. 또한, 클라우드 스트리밍 서버와 단말이 이미 클라우드 스트리밍 라우터(110)를 통해 세션 연결된 상태라면, 이후 데이터는 클라우드 스트리밍 라우터(110)를 거치지 않고 클라우드 스트리밍 서버와 단말간의 통신망을 통해 직접 송수신 될 수 있다.In addition, an execution result of an application corresponding to the cloud streaming service requested by the terminal may be provided to the terminal. For example, an application execution screen corresponding to a service requested by the terminal may be received from a cloud streaming server connected to the terminal and transmitted to the terminal. In addition, if the cloud streaming server and the terminal are already in a session-connected state through the cloud streaming router 110, then data can be directly transmitted and received through a communication network between the cloud streaming server and the terminal without going through the cloud streaming router 110.

네트워크 성능 판단부(220)는 복수 개의 클라우드 스트리밍 서버들 중 어느 하나로 세션 연결하기 위한 적어도 하나의 단말의 네트워크 성능을 판단한다. 예를 들어, 단말로부터 세션 연결을 요청하는 메시지와 함께 단말이 사용중인 네트워크에 대한 정보 또는 네트워크의 성능 정보 등을 함께 수신하여 판단할 수 있다. 이와 같이 단말의 네트워크와 관련된 정보를 이용하여 복수 개의 클라우드 스트리밍 서버들 중 단말에게 적절한 서비스를 제공할 수 있는 서버를 검색하여 단말과 연결할 수 있다.The network performance determination unit 220 determines the network performance of at least one terminal for session connection to any one of a plurality of cloud streaming servers. For example, it may be determined by receiving a message requesting a session connection from the terminal together with information on a network being used by the terminal or performance information of a network. In this way, a server capable of providing an appropriate service to the terminal among a plurality of cloud streaming servers may be searched for and connected to the terminal using information related to the terminal network.

이 때, 대역폭의 크기 및 네트워크의 읽기쓰기 성능 중 적어도 하나를 고려하여 네트워크 성능을 기설정된 기준 성능 이상에 상응하는 제1 수준 및 제1 수준보다 성능이 낮은 제2 수준 중 어느 하나로 판단할 수 있다.In this case, in consideration of at least one of the size of the bandwidth and the read/write performance of the network, the network performance may be determined as one of a first level corresponding to a predetermined reference performance or higher and a second level having a lower performance than the first level. .

대역폭은 네트워크를 통해 데이터를 전송하기 위한 채널이 얼만큼의 전송 능력을 가지고 있는지 나타내는 값이라고 할 수 있다. 예를 들어, 도로가 넓으면 한번에 많은 차가 달릴 수 있는 것과 같이 대역폭이 크면 한번에 전송할 수 있는 데이터가 많아 채널의 전송능력이 크다고 판단할 수 있다. 즉, 대역폭이 크면 한번에 전송할 수 있는 데이터의 용량이 클 수 있다. The bandwidth can be said to be a value indicating how much transmission capability a channel for transmitting data through a network has. For example, if the road is wide, many cars can run at once, and if the bandwidth is large, there is a lot of data that can be transmitted at one time, so it can be determined that the transmission capacity of the channel is high. That is, if the bandwidth is large, the capacity of data that can be transmitted at one time may be large.

따라서, 본 발명에 따른 복수 개의 클라우드 스트리밍 서버들은 그림 파일 위주의 용량이 큰 데이터들을 단말로 전송하기 때문에 네트워크의 대역폭이나 네트워크가 데이터를 읽거나 쓰는 성능 중 적어도 하나를 고려하여 네트워크의 성능을 판단할 수 있다. Therefore, since the plurality of cloud streaming servers according to the present invention transmit data with a large capacity mainly for picture files to the terminal, the performance of the network can be determined by considering at least one of the bandwidth of the network or the performance of reading or writing the data. I can.

이 때, 제1 수준을 판단하는 기설정된 기준 성능은 클라우드 스트리밍 서버에서 제공되는 어플리케이션 실행화면에 상응하는 이미지를 문제없이 수신할 수 있는 정도의 상응할 수 있다. 예를 들어, 클라우드 스트리밍 서버가 어플리케이션 실행화면에 상응하는 이미지를 스틸 이미지 인코딩하여 단말로 전송하였을 때, 단말 측에서 지연이 발생하지 않고 이미지를 수신할 수 있을 정도의 네트워크 수준을 기설정된 기준 성능으로 설정할 수 있다. In this case, the preset reference performance for determining the first level may correspond to a degree to which an image corresponding to an application execution screen provided from the cloud streaming server can be received without a problem. For example, when a cloud streaming server encodes an image corresponding to the application execution screen to a terminal and transmits it to a terminal, the network level capable of receiving an image without delay in the terminal side is determined as a preset reference performance. Can be set.

따라서, 기설정된 기준 성능에 상응하는 제1 수준보다 성능이 낮은 제2 수준은 어플리케이션 실행화면에 상응하는 화질의 이미지를 처리할 때 지연이 발생하는 수준에 상응할 수 있다.Accordingly, the second level, which is lower in performance than the first level corresponding to the preset reference performance, may correspond to a level at which a delay occurs when processing an image having an image quality corresponding to an application execution screen.

이 때, 제1 수준과 제2 수준의 기준이 될 수 있는 기설정된 기준 성능은 클라우드 스트리밍 서버에서 제공되는 어플리케이션 실행화면의 이미지 화질에 따라 설정될 수도 있고, 클라우드 스트리밍 서비스 시스템의 관리자에 의해 자유롭게 설정 및 변경될 수도 있다. In this case, the preset standard performance, which can be the standard of the first level and the second level, may be set according to the image quality of the application execution screen provided from the cloud streaming server, or freely set by the administrator of the cloud streaming service system. And may be changed.

이 때, 캐시 이미지 화질 레벨은 어플리케이션 실행화면의 원본 화질에 상응하는 제1 레벨 및 제1 레벨보다 열화된 화질에 상응하는 제2 레벨 중 어느 하나에 상응할 수 있다. 즉, 다시 말해서 캐시 이미지 화질 레벨은 클라우드 스트리밍 서버에 구비되는 캐시에 저장된 이미지들의 화질 수준에 상응할 수 있다. In this case, the cache image quality level may correspond to one of a first level corresponding to the original quality of the application execution screen and a second level corresponding to a quality deteriorated than the first level. In other words, the cache image quality level may correspond to the quality level of images stored in the cache provided in the cloud streaming server.

본 발명의 일실시예에 따른 복수 개의 클라우드 스트리밍 서버들은 제1 레벨 및 제2 레벨 중 어느 하나에 상응하는 이미지만을 캐시에 저장할 수 있다. 즉, 원본 화질에 상응하는 이미지만을 저장하거나 열화된 이미지만을 저장할 수 있는데, 이는 캐시에 저장된 이미지의 화질 정보와 단말의 네트워크 성능을 맞추어 세션을 연결하기 위함일 수 있다.A plurality of cloud streaming servers according to an embodiment of the present invention may store only an image corresponding to one of the first level and the second level in the cache. That is, only an image corresponding to the original image quality may be stored or only a deteriorated image may be stored, and this may be to connect a session by matching the image quality information stored in the cache with the network performance of the terminal.

또한, 다양한 실시예에 따라 하나의 클라우드 스트리밍 서버에서 제1 레벨에 상응하는 이미지와 제2 레벨에 상응하는 이미지를 저장하는 캐시를 각각 구비하는 케이스도 존재할 수 있다.In addition, according to various embodiments, there may be a case in which a single cloud streaming server includes a cache for storing an image corresponding to a first level and an image corresponding to a second level.

이 때, 복수 개의 클라우드 스트리밍 서버들은 캐시 이미지 화질 레벨이 제1 레벨에 상응하는 제1 클라우드 스트리밍 서버 및 캐시 이미지 화질 레벨이 제2 레벨에 상응하는 제2 클라우드 스트리밍 서버 중 어느 하나에 상응할 수 있다. 즉, 캐시에 저장된 이미지의 화질에 따라 클라우드 스트리밍 서버를 두 종류로 분류함으로써, 클라우드 스트리밍 라우터가 단말의 네트워크 성능에 따라 단말과 세션 연결할 클라우드 스트리밍 서버를 수월하게 검색할 수 있다. 예를 들어, 복수 개의 클라우드 스트리밍 서버들마다 제1 클라우드 스트리밍 서버인지 제2 클라우드 스트리밍 서버인지를 구별할 수 있는 서버 식별자를 부여하고, 서버 식별자를 이용하여 쉽게 서버의 종류를 구별할 수 있다. 또한 서버 식별자를 이용한 방법이 아니더라도 다양한 방법을 이용하여 두 종류의 클라우드 스트리밍 서버를 구별하기 쉽게 표시함으로써 단말에게 보다 빠른 세션 연결을 제공할 수 있도록 할 수 있다.In this case, the plurality of cloud streaming servers may correspond to any one of a first cloud streaming server having a cache image quality level corresponding to the first level and a second cloud streaming server having a cache image quality level corresponding to the second level. . That is, by classifying the cloud streaming server into two types according to the image quality stored in the cache, the cloud streaming router can easily search for a cloud streaming server to connect to a session with the terminal according to the network performance of the terminal. For example, a server identifier capable of distinguishing between a first cloud streaming server or a second cloud streaming server may be assigned to each of the plurality of cloud streaming servers, and the server type may be easily distinguished using the server identifier. In addition, even if it is not a method using a server identifier, it is possible to provide a faster session connection to a terminal by easily displaying two types of cloud streaming servers using various methods.

이 때, 제1 클라우드 스트리밍 서버는 캐시에 저장된 이미지를 제1 레벨에 상응하게 스틸 이미지 인코딩하여 적어도 하나의 단말로 전송할 수 있다. 즉, 클라우드 스트리밍 라우터를 통해 단말이 제1 클라우드 스트리밍 서버에 세션 연결되었다면, 단말의 네트워크 성능이 제1 레벨에 상응하는 이미지를 수신하는데 어려움이 없다는 의미일 수 있다. 따라서, 캐시에 저장된 이미지를 화질 열화가 발생하지 않도록 스틸 이미지 인코딩하여 단말로 전송함으로써, 단말을 통해 사용자에게 원본 화질의 서비스를 제공할 수 있도록 할 수 있다.In this case, the first cloud streaming server may encode the still image corresponding to the first level and transmit the image stored in the cache to at least one terminal. That is, if the terminal is session-connected to the first cloud streaming server through the cloud streaming router, it may mean that there is no difficulty in receiving an image corresponding to the first level of the network performance of the terminal. Accordingly, the image stored in the cache is encoded and transmitted to the terminal so that the image quality does not deteriorate, so that the original quality service can be provided to the user through the terminal.

이 때, 제2 레벨은 팔렛티드 PNG 및 화질이 저하된 JPEG 중 어느 하나에 상응할 수 있다. 예를 들어, 단말의 네트워크 성능에 맞추어 화질을 열화시킨 제2 레벨은 이미지의 컬러수를 줄이거나 해상도를 낮추는 등의 방식으로 생성할 수 있다.In this case, the second level may correspond to one of a palletized PNG and a JPEG with deteriorated image quality. For example, the second level, in which the image quality is degraded according to the network performance of the terminal, may be generated by reducing the number of colors or lowering the resolution of the image.

이 때, 팔렛티드 PNG의 경우에는 이미지를 구성하는 픽셀 하나당 컬러 인덱스에 해당하는 1Byte의 정보를 포함할 수 있다. 이는 비교적 화질이 좋은 PNG32bit의 방식보다 픽셀당 데이터 크기가 4분의 1에 해당하는 것일 수 있다. 따라서, 전체 이미지의 데이터 용량도 4분의 1로 감소하기 때문에 네트워크 성능이 좋지 않은 환경에 적합할 수 있다.In this case, in the case of the palletized PNG, 1 byte of information corresponding to a color index per pixel constituting the image may be included. This may correspond to a quarter of the data size per pixel than the PNG32bit method, which has relatively good image quality. Therefore, since the data capacity of the entire image is also reduced to a quarter, it may be suitable for an environment with poor network performance.

또한, 정상적인 JPEG 이미지를 손실압축과 같은 방법을 이용하여 화질을 저하시킴으로써 데이터 크기를 감소시킬 수 있다. In addition, it is possible to reduce the data size by lowering the image quality of a normal JPEG image using a method such as lossy compression.

이와 같이 이미지의 화질을 저하시킨, 즉 이미지에 상응하는 데이터 용량을 감소시킨 제2 레벨의 캐시 이미지를 이용하여 네트워크 성능이 좋지 않은 단말로 지연이 발생하지 않게 서비스를 제공할 있다. 또한, 클라우드 스트리밍 서버에서도 캐시에 저장된 이미지를 네트워크 성능에 맞춰 다시 렌더링하지 않아도 되기 때문에 이에 따른 리소스를 절약할 수 있다.As described above, a service can be provided to a terminal with poor network performance without delay by using a cache image of the second level, which has lowered the image quality, that is, a data capacity corresponding to the image is reduced. In addition, even in the cloud streaming server, the image stored in the cache does not need to be re-rendered according to the network performance, thus saving resources accordingly.

이 때, 적어도 하나의 단말이 인터넷을 통해 연결된 퍼스널 컴퓨터(Personal Computer; PC)에 상응하는 경우에 네트워크 성능을 제1 수준인 것으로 판단하고, 적어도 하나의 단말이 케이블 모뎀(Cable Modem)망을 통해 연결된 저성능의 셋톱박스(Set Top Box)에 상응하는 경우에 네트워크 성능을 제2 수준인 것으로 판단할 수 있다.At this time, when at least one terminal corresponds to a personal computer (PC) connected through the Internet, it is determined that the network performance is at the first level, and at least one terminal is connected through a cable modem network. When it corresponds to a connected low-performance set-top box, it can be determined that the network performance is at the second level.

케이블 모뎀(Cable Modem)은 케이블 TV망을 이용하여 인터넷에 접속할 때 사용하는 장치일 수 있다. 이러한 케이블 모뎀은 광케이블과 동축케이블이 혼합된 HFC(Hybrid Fiber Coaxial)망의 끝부분, 즉 케이블 망에 가입한 가입자 집안에 설치되어 셋톱박스에 연결될 수 있다. 이 때, 케이블 모뎀을 통해 연결된 셋톱박스는 디지털 위성방송용 수신장비를 말하는 것으로, 텔레비전 위에 설치한 상자라는 뜻에서 붙여진 이름이다. 셋톱박스를 설치하면 아날로그 텔레비전으로도 디지털텔레비전 방송을 수신할 수 있는데, 쌍방향 텔레비전이나 주문형 영상물을 실현하는데도 셋톱박스가 필수적이다. 이러한 셋톱박스는 가입자 집안에 따라 매우 다양한 종류가 다양할 수 있으며 종류에 따라 성능의 차이가 발생할 수 있다.A cable modem may be a device used when accessing the Internet through a cable TV network. Such a cable modem can be installed at the end of a hybrid fiber coaxial (HFC) network in which an optical cable and a coaxial cable are mixed, that is, in a subscriber's house to a cable network and connected to a set-top box. At this time, the set-top box connected through a cable modem refers to a receiver for digital satellite broadcasting, and is named after a box installed on a television. When a set-top box is installed, digital television broadcasts can be received through analog television, and a set-top box is essential for realizing interactive television or video on demand. These set-top boxes may be of a wide variety according to the subscriber's household, and performance may vary depending on the type.

따라서, 셋톱박스의 종류에 따라 저성능의 셋톱박스인 경우에는 클라우드 스트리밍 서버에서 원본 화질로 제공하는 이미지를 처리하는데 지연이 발생할 수 있으므로 제2 수준으로 판단하고 화질이 열화된 제2 레벨에 상응하게 서비스를 제공할 수 있다.Therefore, depending on the type of set-top box, in the case of a low-performance set-top box, there may be a delay in processing the image provided in the original quality from the cloud streaming server. Therefore, it is determined as the second level and the image quality is deteriorated corresponding to the second level. Service can be provided.

연결부(230)는 복수 개의 클라우드 스트리밍 서버들 중 캐시에 저장된 이미지의 캐시 이미지 화질 레벨이 네트워크 성능에 상응하는 클라우드 스트리밍 서버로 적어도 하나의 단말을 연결한다. 예를 들어, 단말의 네트워크 성능이 높아서 고화질의 이미지를 수신하는데 문제가 없다고 가정한다면, 캐시 이미지 화질 레벨이 높은 클라우드 스트리밍 서버로 단말을 세션 연결할 수 있다. 즉, 단말의 네트워크 성능이 좋아 고화질의 서비스를 제공할 수 있는 경우, 캐시에 고화질의 이미지를 저장한 클라우드 스트리밍 서버를 연결함으로써 고화질의 서비스를 제공할 수 있도록 할 수 있다. The connection unit 230 connects at least one terminal to a cloud streaming server in which a cache image quality level of an image stored in a cache among the plurality of cloud streaming servers corresponds to network performance. For example, assuming that there is no problem in receiving a high-quality image due to high network performance of the terminal, the terminal can be session-connected to a cloud streaming server having a high cache image quality level. That is, if the terminal's network performance is good and high-quality service can be provided, it is possible to provide high-quality service by connecting a cloud streaming server that stores high-quality images in a cache.

그러나, 네트워크 성능이 높지 않은 단말을 캐시에 고화질의 이미지를 저장한 클라우드 스트리밍 서버로 연결하면, 클라우드 스트리밍 서버에서 고화질의 이미지를 화질 열화시키는 과정을 통해 화질이 열화된 이미지를 단말로 제공하는 상황이 발생할 수 있다. 이는 고화질의 서비스를 제공할 수 없을뿐더러 클라우드 스트리밍 서버에서 불필요하게 화질 열화과정을 처리해야 하기 때문에 클라우드 스트리밍 서버의 자원을 비효율적으로 사용하는 원인이 될 수 있다. However, when a terminal with low network performance is connected to a cloud streaming server that stores high-quality images in a cache, there is a situation in which the cloud streaming server provides an image with deteriorated image quality through the process of deteriorating the image quality. Can occur. This may be a cause of inefficient use of the resources of the cloud streaming server because it is not possible to provide a high-definition service, and the cloud streaming server has to unnecessarily process the image quality deterioration process.

따라서, 단말의 네트워크 성능이 높지 않은 경우에는 이에 따라 캐시에 저화질에 이미지를 저장한 클라우드 스트리밍 서버를 연결함으로써 보다 신속하고 효율적인 클라우드 스트리밍 서비스를 제공할 수 있도록 할 수 있다.Therefore, when the network performance of the terminal is not high, it is possible to provide a faster and more efficient cloud streaming service by connecting a cloud streaming server that stores an image in a cache at a low quality accordingly.

이 때, 적어도 하나의 단말이 제1 수준에 상응하는 경우에 적어도 하나의 단말을 제1 클라우드 스트리밍 서버로 연결하고, 적어도 하나의 단말이 제2 수준에 상응하는 경우에 적어도 하나의 단말을 제2 클라우드 스트리밍 서버로 연결할 수 있다. 즉, 네트워크 성능이 제1 수준에 상응하는 단말은 제1 레벨의 캐시 이미지를 제공할 수 있는 제1 클라우드 스트리밍 서버와 세션 연결하고, 네트워크 성능이 제2 수준에 상응하는 단말은 제2 레벨의 캐시 이미지를 제공할 수 있는 제2 클라우드 스트리밍 서버와 세션 연결할 수 있다.In this case, when at least one terminal corresponds to the first level, at least one terminal is connected to the first cloud streaming server, and when at least one terminal corresponds to the second level, at least one terminal is connected to the second level. You can connect to a cloud streaming server. That is, a terminal having a network performance corresponding to the first level connects a session with a first cloud streaming server capable of providing a cache image of the first level, and a terminal having a network performance corresponding to the second level has a second level cache. Session connection with a second cloud streaming server capable of providing images.

이 때, 제1 클라우드 스트리밍 서버 및 제2 클라우드 스트리밍 서버는 이미지 기반의 클라우드 스트리밍 서비스를 제공하는 클라우드 스트리밍 서버에 상응할 수 있다. 따라서, 어플리케이션 실행화면을 렌더링, 캡처, 스틸 이미지 인코딩 및 센딩에 상응하는 파이프라인 과정을 통해 단말로 서비스를 제공할 수 있다.In this case, the first cloud streaming server and the second cloud streaming server may correspond to a cloud streaming server that provides an image-based cloud streaming service. Accordingly, a service can be provided to the terminal through a pipeline process corresponding to rendering, capturing, still image encoding and sending of an application execution screen.

비디오 코덱 기반의 클라우드 스트리밍 기법은 어플리케이션이 동작하는 화면에 상응하는 모든 프레임을 캡처하여 인코딩을 수행할 수 있다. 그러나 어플리케이션이 동작하는 화면 상에서 프레임간 변화가 크지 않은 경우에는 이미지 기반의 클라우드 스트리밍 기법과 같이 이전 프레임과 비교하여 변화된 프레임의 변화 영역만을 캡처하여 스틸 이미지 인코딩을 수행하고, 사용자의 단말에 디스플레이 할 때 변화 영역을 제외한 부분은 동일하게 보여주고 변화 영역만 변화를 주는 방식으로 디스플레이 할 수 있다.The video codec-based cloud streaming technique can perform encoding by capturing all frames corresponding to the screen on which the application is running. However, if the change between frames on the screen on which the application is running is not large, as in the image-based cloud streaming technique, when compared with the previous frame, only the changed area of the changed frame is captured and still image encoded and displayed on the user's terminal. Except for the change area, it can be displayed in the same way and only the change area is changed.

이 때, 렌더링된 어플리케이션의 실행화면에 상응하는 프레임들 중 프레임간의 변화가 적은 구간들을 검출하고, 프레임간의 변화가 적은 구간에서 이미지를 캡처할 프레임을 검출할 수 있다. 예를 들어, 프레임간의 변화가 많은 구간은 캡처할 이미지의 수가 많아 이미지 기반의 클라우드 스트리밍 서비스를 제공하는 것이 비효율적일 수 있다. 따라서, 이와 같이 변화가 많은 구간은 비디오 코덱 기반의 클라우드 스트리밍 기법을 통해 서비스를 수행하고, 프레임간 변화가 적은 구간에서만 이미지 기반의 클라우드 스트리밍 서비스를 수행하기 위해 변화된 프레임에서 이미지를 캡처할 수 있다.In this case, among frames corresponding to the execution screen of the rendered application, sections with little change between frames may be detected, and a frame to capture an image may be detected in sections with little change between frames. For example, in a section in which there are many changes between frames, it may be inefficient to provide an image-based cloud streaming service because the number of images to be captured is large. Accordingly, in such a period with many changes, the service is performed through a video codec-based cloud streaming technique, and an image can be captured from the changed frame in order to perform the image-based cloud streaming service only in the section with little inter-frame change.

이 때, 프레임의 이전 프레임과 비교하여 변화된 부분에 상응하는 이미지를 캡처할 수 있다. 예를 들어, 어플리케이션 실행화면을 구성하는 많은 프레임들 중에서 현재 프레임과 이전 프레임을 비교하고, 두 프레임간에 차이가 있는 부분을 변화된 부분으로 판단하여 이미지로 캡처할 수 있다. 또한, 변화된 부분이 프레임 상에서 복수의 영역으로 검출되는 경우에는, 복수의 영역을 포함하는 하나의 영역을 이미지로 캡처하거나 복수의 영역을 각각 여러 이미지로 캡처할 수도 있다.In this case, the image corresponding to the changed portion may be captured compared to the previous frame of the frame. For example, among many frames constituting an application execution screen, a current frame and a previous frame may be compared, and a part having a difference between the two frames may be determined as a changed part and captured as an image. In addition, when the changed portion is detected as a plurality of regions on the frame, one region including the plurality of regions may be captured as an image or the plurality of regions may be captured as multiple images, respectively.

이 때, 단말로부터 요청된 이미지가 캐시에 존재하는 경우에 어플리케이션 실행화면에서 이미지를 캡처하지 않고 캐시에서 이미지를 획득할 수 있다. 또한, 어플리케이션 실행화면에서 캡처 및 스틸 이미지 인코딩하여 단말로 제공된 이미지는 캐시에 저장함으로써 다음에 단말이 요청하는 경우 캐시를 통해 신속하게 제공할 수 있다.In this case, when the image requested from the terminal exists in the cache, the image may be obtained from the cache without capturing the image from the application execution screen. In addition, the image captured and encoded on the application execution screen and provided to the terminal is stored in a cache, so that the next request by the terminal can be quickly provided through the cache.

이 때, 단말로 전송할 이미지를 스틸 이미지 인코딩 방식으로 압축할 수 있는데, 여러 스틸 이미지 인코딩 방식 중 이미지에 이미지에 상응하는 방식을 선택하여 스틸 이미지 인코딩을 수행할 수 있다.In this case, the image to be transmitted to the terminal may be compressed using a still image encoding method, and still image encoding may be performed by selecting a method corresponding to the image among several still image encoding methods.

이 때, 본 발명에서는 클라우드 스트리밍 서버가 단말의 네트워크 성능에 따라 선택되어 세션 연결되었기 때문에, 캐시에 저장된 이미지를 스틸 이미지 인코딩하는 경우에는 이미지의 화질에 상응하게 스틸 이미지 인코딩 방식을 선택할 수 있다. 또한, 단말이 요청하는 이미지가 캐시에 존재하지 않아서 어플리케이션 실행화면을 캡처하여 스틸 이미지 인코딩하는 경우에는 단말의 성능 및 단말의 네트워크 성능에 따라 스틸 이미지 인코딩 방식을 선택할 수 있다. 예를 들어, 클라우드 스트리밍 서비스의 속도를 향상시키기 위해서는 압축률이 높고 부하가 적게 발생하는 팔렛트 PNG 인코딩 방식으로 이미지를 압축할 수 있다. 또한, 부하량은 상관하지 않고 이미지의 화질을 좋게 제공하고 싶다면, PNG32bit 인코딩 방식 또는 JPEG 인코딩 방식 등을 이용하여 이미지를 압축할 수 있다.In this case, in the present invention, since the cloud streaming server is selected according to the network capability of the terminal and connected to the session, when encoding the still image stored in the cache, the still image encoding method may be selected according to the image quality. In addition, when the image requested by the terminal does not exist in the cache and the application execution screen is captured and still image encoded, the still image encoding method may be selected according to the performance of the terminal and the network performance of the terminal. For example, in order to improve the speed of a cloud streaming service, images can be compressed using a pallet PNG encoding method that has a high compression rate and low load. In addition, if you want to provide good image quality regardless of the amount of load, you can compress the image using a PNG32bit encoding method or a JPEG encoding method.

저장부(240)는 상술한 바와 같이 본 발명의 실시예에 따른 클라우드 스트리밍 서비스 과정에서 발생되는 다양한 정보를 저장한다.As described above, the storage unit 240 stores various types of information generated during a cloud streaming service process according to an embodiment of the present invention.

실시예에 따라, 저장부(240)는 클라우드 스트리밍 라우터(110)와 독립적으로 구성되어 클라우드 스트리밍 서비스를 위한 기능을 지원할 수 있다. 이 때, 저장부(240)는 별도의 대용량 스토리지로 동작할 수 있고, 동작 수행을 위한 제어 기능을 포함할 수 있다.According to an embodiment, the storage unit 240 may be configured independently of the cloud streaming router 110 to support a function for a cloud streaming service. In this case, the storage unit 240 may operate as a separate mass storage, and may include a control function for performing the operation.

또한, 상술한 바와 같이 구성되는 클라우드 스트리밍 라우터(110)는 하나 이상의 장치로 구현될 수 있다.In addition, the cloud streaming router 110 configured as described above may be implemented as one or more devices.

한편, 클라우드 스트리밍 라우터(110)는 메모리가 탑재되어 그 장치 내에서 정보를 저장할 수 있다. 일 구현예의 경우, 메모리는 컴퓨터로 판독 가능한 매체이다. 일 구현 예에서, 메모리는 휘발성 메모리 유닛일 수 있으며, 다른 구현예의 경우, 메모리는 비휘발성 메모리 유닛일 수도 있다. 일 구현예의 경우, 저장장치는 컴퓨터로 판독 가능한 매체이다. 다양한 서로 다른 구현 예에서, 저장장치는 예컨대 하드디스크 장치, 광학디스크 장치, 혹은 어떤 다른 대용량 저장장치를 포함할 수도 있다.Meanwhile, the cloud streaming router 110 is equipped with a memory and can store information within the device. In one implementation, the memory is a computer-readable medium. In one implementation, the memory may be a volatile memory unit, and in another implementation, the memory may be a non-volatile memory unit. In one implementation, the storage device is a computer-readable medium. In various different implementations, the storage device may include, for example, a hard disk device, an optical disk device, or some other mass storage device.

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

도 3을 참조하면, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 시스템은 클라우드 스트리밍 라우터(310), 제1 클라우드 스트리밍 서버(320), 제2 클라우드 스트리밍 서버(330) 및 단말에 상응하는 PC(340)와 STB(Set Top Box)(350)를 포함한다.3, a cloud streaming service system according to an embodiment of the present invention includes a cloud streaming router 310, a first cloud streaming server 320, a second cloud streaming server 330, and a PC corresponding to the terminal ( 340) and STB (Set Top Box) 350.

이 때, 제1 클라우드 스트리밍 서버(320)에 구비된 캐시(321)는 캐시 이미지 화질 레벨이 제1 레벨에 상응하는 이미지를 저장하고, 제2 클라우드 스트리밍 서버(330)에 구비된 캐시(331)는 캐시 이미지 화질 레벨이 제2 레벨에 상응하는 이미지를 저장할 수 있다.At this time, the cache 321 provided in the first cloud streaming server 320 stores an image having a cache image quality level corresponding to the first level, and the cache 331 provided in the second cloud streaming server 330 May store an image whose cache image quality level corresponds to the second level.

이 때, 클라우드 스트리밍 라우터(310)가 인터넷을 통해 PC(340)로부터 클라우드 스트리밍 서버에 대한 세션 연결요청을 수신할 수 있다. 클라우드 스트리밍 라우터(310)는 PC(340)의 네트워크 성능을 판단할 수 있다. 만약, 클라우드 스트리밍 라우터(310)가 PC(340)의 네트워크 성능을 기설정된 기준 성능 이상에 상응하는 제1 수준으로 판단하였다면, 클라우드 스트리밍 라우터(310)는 PC(340)를 제1 클라우드 스트리밍 서버(320)로 세션 연결할 수 있다. 즉, PC(340)가 캐시(321)에 저장된 제1 레벨에 상응하는 이미지를 수신하는데 문제가 없다고 판단하고, 제1 클라우드 스트리밍 서버로부터 제1 레벨에 상응하는 화질의 서비스를 제공받도록 연결할 수 있다.In this case, the cloud streaming router 310 may receive a session connection request to the cloud streaming server from the PC 340 through the Internet. The cloud streaming router 310 may determine the network performance of the PC 340. If the cloud streaming router 310 determines the network performance of the PC 340 to be a first level corresponding to a predetermined reference performance or higher, the cloud streaming router 310 connects the PC 340 to the first cloud streaming server ( 320). That is, the PC 340 determines that there is no problem in receiving the image corresponding to the first level stored in the cache 321, and can connect to receive a service of the quality corresponding to the first level from the first cloud streaming server. .

또한, 클라우드 스트리밍 라우터(310)가 케이블 모뎀을 통해 STB(350)로부터 클라우드 스트리밍 서버에 대한 세션 연결요청을 수신할 수 있다. 클라우드 스트리밍 라우터(310)는 STB(350)에 대한 네트워크 성능을 판단할 수 있다. 만약, 클라우드 스트리밍 라우터(310)가 STB(350)의 네트워크 성능을 제1 수준보다 낮은 제2 수준으로 판단하였다면, 클라우드 스트리밍 라우터(310)는 STB(350)를 제2 클라우드 스트리밍 서버(330)로 세션 연결할 수 있다. 즉, STB(350)가 제1 클라우드 스트리밍 서버(320)의 캐시(321)에 저장된 이미지를 수신하기에는 네트워크 성능이 낮다고 판단한 것일 수 있다. 따라서, STB(350)가 캐시(331)에 저장된 제2 레벨에 상응하는 이미지를 수신할 수 있도록 제2 클라우드 스트리밍 서버로 연결할 수 있다.In addition, the cloud streaming router 310 may receive a session connection request to the cloud streaming server from the STB 350 through a cable modem. The cloud streaming router 310 may determine the network performance of the STB 350. If the cloud streaming router 310 determines the network performance of the STB 350 as a second level lower than the first level, the cloud streaming router 310 transfers the STB 350 to the second cloud streaming server 330. Session can be connected. That is, it may be determined that the network performance is low for the STB 350 to receive the image stored in the cache 321 of the first cloud streaming server 320. Accordingly, the STB 350 may connect to the second cloud streaming server so that the image corresponding to the second level stored in the cache 331 can be received.

한편, 클라우드 스트리밍 라우터는 메모리가 탑재되어 그 장치 내에서 정보를 저장할 수 있다. 일 구현예의 경우, 메모리는 컴퓨터로 판독 가능한 매체이다. 일 구현 예에서, 메모리는 휘발성 메모리 유닛일 수 있으며, 다른 구현예의 경우, 메모리는 비휘발성 메모리 유닛일 수도 있다. 일 구현예의 경우, 저장장치는 컴퓨터로 판독 가능한 매체이다. 다양한 서로 다른 구현 예에서, 저장장치는 예컨대 하드디스크 장치, 광학디스크 장치, 혹은 어떤 다른 대용량 저장장치를 포함할 수도 있다.Meanwhile, the cloud streaming router is equipped with a memory and can store information within the device. In one implementation, the memory is a computer-readable medium. In one implementation, the memory may be a volatile memory unit, and in another implementation, the memory may be a non-volatile memory unit. In one implementation, the storage device is a computer-readable medium. In various different implementations, the storage device may include, for example, a hard disk device, an optical disk device, or some other mass storage device.

도 4는 본 발명의 일실시예에 따른 클라우드 스트리밍 인코딩 장치를 나타낸 블록도이다.4 is a block diagram showing a cloud streaming encoding apparatus according to an embodiment of the present invention.

도 4를 참조하면, 본 발명의 일실시예에 따른 클라우드 스트리밍 인코딩 장치는 이미지 변화 감지부(11) 및 후처리부(12)를 포함한다.Referring to FIG. 4, a cloud streaming encoding apparatus according to an embodiment of the present invention includes an image change detection unit 11 and a post-processing unit 12.

이 때, 클라우드 스트리밍 인코딩 장치는 도 1 내지 도 3에서 설명한 클라우드 스트리밍 서버(120-1, 120-2, 120-N)에 상응할 수 있다.In this case, the cloud streaming encoding apparatus may correspond to the cloud streaming servers 120-1, 120-2, and 120-N described in FIGS. 1 to 3.

이미지 변화 감지부(11)는 글로벌 캐시 데이터의 존재 여부를 확인하기 위해 클라우드 스트리밍을 통해 제공되는 이미지의 변화를 감지할 수 있다.The image change detection unit 11 may detect a change in an image provided through cloud streaming in order to check whether global cache data exists.

이 때, 이미지 변화 감지부(11)는 상기 이미지의 변화를 감지한 결과에 상응하는 글로벌 캐시 이미지의 존재하지 않는 경우, 후처리에 필요한 기준 데이터를 저장할 수 있다.In this case, when there is no global cache image corresponding to a result of detecting the change in the image, the image change detection unit 11 may store reference data required for post-processing.

이 때, 이미지 변화 감지부(11)는 상기 이미지의 변화를 감지한 결과에 상응하는 글로벌 캐시 이미지의 존재하는 경우 사용자의 단말 장치에 데이터를 전달할 수 있다.In this case, the image change detection unit 11 may transmit data to the user's terminal device when a global cache image corresponding to a result of detecting the change in the image exists.

이 때, 후처리에 필요한 기준 데이터는 상기 이미지의 화질을 판단하기 위한 데이터의 크기 및 최대 신호 대 잡음비(Peak Signal-to-Noise Ratio, PSNR)에 관한 정보 중 적어도 하나 이상 포함할 수 있다.In this case, the reference data required for post-processing may include at least one of a size of data for determining the image quality and information on a peak signal-to-noise ratio (PSNR).

후처리부(12)는 상기 글로벌 캐시 데이터의 후처리에 필요한 기준 데이터에 기반한 기설정된 조건에 따라 재인코딩 필요 여부를 판단하고, 상기 재인코딩 필요 여부에 기반하여 상기 글로벌 캐시 데이터를 재인코딩하고, 재인코딩된 결과를 이용하여 상기 글로벌 캐시 데이터를 갱신할 수 있다.The post-processing unit 12 determines whether re-encoding is necessary according to a preset condition based on reference data required for post-processing of the global cache data, re-encodes the global cache data based on whether the re-encoding is necessary, and re-encodes the global cache data. The global cache data may be updated using the encoded result.

이 때, 후처리부(12)는 상기 이미지의 화질을 판단하기 위한 데이터의 크기보다 큰 글로벌 캐시 데이터에 대한 적어도 하나 이상의 방식의 인코딩 옵션으로 인코딩을 수행할 수 있다.In this case, the post-processor 12 may perform encoding with at least one or more encoding options for global cache data that is larger than the size of the data for determining the image quality.

이 때, 후처리부(12)는 상기 적어도 하나 이상의 방식의 인코딩 옵션으로 인코딩된 글로벌 캐시 데이터를 비교하여 어느 하나의 인코딩된 글로벌 캐시 데이터를 선택하여 상기 글로벌 캐시 데이터를 갱신할 수 있다.In this case, the post-processing unit 12 may compare the global cache data encoded with the at least one encoding option and select any one of the encoded global cache data to update the global cache data.

이 때, 후처리부(12)는 일정 순서대로 실시간 처리 대비 다양한 인코딩 옵션들에 대해 글로벌 캐시 데이터를 인코딩하고, 최적의 데이터로 재인코딩된 데이터를 글로벌 캐시 데이터로 갱신하여 유지할 수 있다.In this case, the post-processing unit 12 may encode global cache data for various encoding options compared to real-time processing in a predetermined order, and update and maintain data re-encoded as optimal data as global cache data.

도 5는 본 발명의 일실시예에 따른 클라우드 스트리밍 인코딩 방법을 나타낸 동작흐름도이다.5 is a flowchart illustrating a cloud streaming encoding method according to an embodiment of the present invention.

도 5를 참조하면, 본 발명의 일실시예에 따른 클라우드 스트리밍 인코딩 방법은 먼저 이미지 변화를 감지할 수 있다(S21).Referring to FIG. 5, the cloud streaming encoding method according to an embodiment of the present invention may first detect an image change (S21).

즉, 단계(S21)는 글로벌 캐시 데이터의 존재 여부를 확인하기 위해 클라우드 스트리밍을 통해 제공되는 이미지의 변화를 감지할 수 있다.That is, in step S21, a change in an image provided through cloud streaming may be detected to check whether the global cache data exists.

이 때, 단계(S21)는 상기 이미지의 변화를 감지한 결과에 상응하는 글로벌 캐시 이미지의 존재하지 않는 경우, 후처리에 필요한 기준 데이터를 저장할 수 있다.In this case, in step S21, when there is no global cache image corresponding to a result of detecting the change in the image, reference data required for post-processing may be stored.

이 때, 단계(S21)는 상기 이미지의 변화를 감지한 결과에 상응하는 글로벌 캐시 이미지의 존재하는 경우 사용자의 단말 장치에 데이터를 전달할 수 있다.In this case, in step S21, when a global cache image corresponding to a result of detecting the change in the image exists, data may be delivered to the user's terminal device.

이 때, 후처리에 필요한 기준 데이터는 상기 이미지의 화질을 판단하기 위한 데이터의 크기 및 최대 신호 대 잡음비(Peak Signal-to-Noise Ratio, PSNR)에 관한 정보 중 적어도 하나 이상 포함할 수 있다.In this case, the reference data required for post-processing may include at least one of a size of data for determining the image quality and information on a peak signal-to-noise ratio (PSNR).

또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 인코딩 방법은 글로벌 캐시 데이터를 후처리할 수 있다(S22).In addition, the cloud streaming encoding method according to an embodiment of the present invention may post-process global cache data (S22).

즉, 단계(S22)는 상기 글로벌 캐시 데이터의 후처리에 필요한 기준 데이터에 기반한 기설정된 조건에 따라 재인코딩 필요 여부를 판단하고, 상기 재인코딩 필요 여부에 기반하여 상기 글로벌 캐시 데이터를 재인코딩하고, 재인코딩된 결과를 이용하여 상기 글로벌 캐시 데이터를 갱신할 수 있다.That is, step S22 determines whether re-encoding is necessary according to a preset condition based on reference data required for post-processing of the global cache data, and re-encodes the global cache data based on whether or not re-encoding is necessary, The global cache data may be updated using the re-encoded result.

이 때, 단계(S22)는 글로벌 캐시 데이터의 재인코딩 필요 여부를 판단한 결과, 재인 코딩이 필요하지 않은 경우, 후처리를 수행하지 않고 절차를 종료할 수 있다.In this case, in step S22, as a result of determining whether re-encoding of the global cache data is required, if re-encoding is not required, the procedure may be terminated without performing post-processing.

이 때, 단계(S22)는 상기 이미지의 화질을 판단하기 위한 데이터의 크기보다 큰 글로벌 캐시 데이터에 대한 적어도 하나 이상의 방식의 인코딩 옵션으로 인코딩을 수행할 수 있다.In this case, in step S22, encoding may be performed using at least one or more encoding options for global cache data that is larger than the size of the data for determining the image quality.

이 때, 단계(S22)는 상기 적어도 하나 이상의 방식의 인코딩 옵션으로 인코딩된 글로벌 캐시 데이터를 비교하여 어느 하나의 인코딩된 글로벌 캐시 데이터를 선택하여 상기 글로벌 캐시 데이터를 갱신할 수 있다.In this case, in step S22, the global cache data may be updated by comparing global cache data encoded with the at least one encoding option and selecting any one of the encoded global cache data.

이 때, 단계(S22)는 일정 순서대로 실시간 처리 대비 다양한 인코딩 옵션들에 대해 글로벌 캐시 데이터를 인코딩하고, 최적의 데이터로 재인코딩된 데이터를 글로벌 캐시 데이터로 갱신하여 유지할 수 있다.In this case, in step S22, global cache data may be encoded for various encoding options compared to real-time processing in a predetermined order, and data re-encoded as optimal data may be updated and maintained as global cache data.

도 6은 본 발명의 일실시예에 따른 이미지 변화를 감지하는 과정의 클라우드 스트리밍 인코딩 방법을 나타낸 동작흐름도이다.6 is an operation flow diagram illustrating a cloud streaming encoding method in a process of detecting image change according to an embodiment of the present invention.

도 6을 참조하면, 본 발명의 일실시예에 따른 클라우드 스트리밍 인코딩 방법은 먼저 이미지 변화를 감지할 수 있다(S31).Referring to FIG. 6, the cloud streaming encoding method according to an embodiment of the present invention may first detect an image change (S31).

즉, 단계(S31)는 글로벌 캐시 데이터의 존재 여부를 확인하기 위해 클라우드 스트리밍을 통해 제공되는 이미지의 변화를 감지할 수 있다.That is, in step S31, a change in an image provided through cloud streaming may be detected in order to check whether the global cache data exists.

이 때, 단계(S32)는 상기 이미지의 변화를 감지한 결과에 상응하는 글로벌 캐시 이미지의 존재하지 않는 경우, 후처리에 필요한 기준 데이터를 저장할 수 있다(S33).In this case, in step S32, when there is no global cache image corresponding to a result of detecting the change in the image, reference data required for post-processing may be stored (S33).

이 때, 단계(S32)는 상기 이미지의 변화를 감지한 결과에 상응하는 글로벌 캐시 이미지의 존재하는 경우 사용자의 단말 장치에 데이터를 전달할 수 있다(S34).In this case, in step S32, when a global cache image corresponding to a result of detecting the change in the image exists, data may be delivered to the user's terminal device (S34).

이 때, 후처리에 필요한 기준 데이터는 상기 이미지의 화질을 판단하기 위한 데이터의 크기 및 최대 신호 대 잡음비(Peak Signal-to-Noise Ratio, PSNR)에 관한 정보 중 적어도 하나 이상 포함할 수 있다.In this case, the reference data required for post-processing may include at least one of a size of data for determining the image quality and information on a peak signal-to-noise ratio (PSNR).

도 7은 본 발명의 일실시예에 따른 글로벌 캐시를 후처리하는 과정의 클라우드 스트리밍 인코딩 방법을 나타낸 동작흐름도이다.7 is an operation flow diagram illustrating a cloud streaming encoding method in a process of post-processing a global cache according to an embodiment of the present invention.

도 7을 참조하면, 본 발명의 일실시예에 따른 클라우드 스트리밍 인코딩 방법은 글로벌 캐시 데이터를 후처리할 수 있다(S41).Referring to FIG. 7, the cloud streaming encoding method according to an embodiment of the present invention may post-process global cache data (S41).

이 때, 단계(S42)는 상기 글로벌 캐시 데이터의 후처리에 필요한 기준 데이터에 기반한 기설정된 조건에 따라 재인코딩 필요 여부를 판단할 수 있다.In this case, in step S42, it may be determined whether re-encoding is necessary according to a preset condition based on reference data required for post-processing of the global cache data.

이 때, 단계(S42)는 글로벌 캐시 데이터의 재인코딩 필요 여부를 판단한 결과, 재인 코딩이 필요하지 않은 경우, 후처리를 수행하지 않고 절차를 종료할 수 있다.In this case, as a result of determining whether re-encoding of the global cache data is required in step S42, if re-encoding is not required, the procedure may be terminated without performing post-processing.

이 때, 단계(S43)는 상기 재인코딩 필요 여부에 기반하여 상기 글로벌 캐시 데이터를 재인코딩할 수 있다.In this case, in step S43, the global cache data may be re-encoded based on whether the re-encoding is required.

이 때, 단계(S43)는 상기 이미지의 화질을 판단하기 위한 데이터의 크기보다 큰 글로벌 캐시 데이터에 대한 적어도 하나 이상의 방식의 인코딩 옵션으로 인코딩을 수행할 수 있다.In this case, in step S43, encoding may be performed with at least one or more encoding options for global cache data that is larger than the size of the data for determining the image quality.

이 때, 단계(S44)는 재인코딩된 결과를 이용하여 상기 글로벌 캐시 데이터를 갱신할 수 있다.In this case, in step S44, the global cache data may be updated using the re-encoded result.

이 때, 단계(S44)는 상기 적어도 하나 이상의 방식의 인코딩 옵션으로 인코딩된 글로벌 캐시 데이터를 비교하여 어느 하나의 인코딩된 글로벌 캐시 데이터를 선택하여 상기 글로벌 캐시 데이터를 갱신할 수 있다.In this case, in step S44, the global cache data may be updated by comparing global cache data encoded with the at least one encoding option and selecting any one of the encoded global cache data.

이 때, 단계(S44)는 일정 순서대로 실시간 처리 대비 다양한 인코딩 옵션들에 대해 글로벌 캐시 데이터를 인코딩하고, 최적의 데이터로 재인코딩된 데이터를 글로벌 캐시 데이터로 갱신하여 유지할 수 있다.In this case, in step S44, global cache data may be encoded for various encoding options compared to real-time processing in a certain order, and data re-encoded as optimal data may be updated and maintained as global cache data.

도 8은 본 발명의 일실시예에 따른 컴퓨터 시스템을 나타낸 도면이다.8 is a diagram showing a computer system according to an embodiment of the present invention.

도 8을 참조하면, 본 발명의 일실시예에 따른 클라우드 스트리밍 인코딩 장치는 컴퓨터로 읽을 수 있는 기록매체와 같은 컴퓨터 시스템(1100)에서 구현될 수 있다. 도 8에 도시된 바와 같이, 컴퓨터 시스템(1100)은 버스(1120)를 통하여 서로 통신하는 하나 이상의 프로세서(1110), 메모리(1130), 사용자 인터페이스 입력 장치(1140), 사용자 인터페이스 출력 장치(1150) 및 스토리지(1160)를 포함할 수 있다. 또한, 컴퓨터 시스템(1100)은 네트워크(1180)에 연결되는 네트워크 인터페이스(1170)를 더 포함할 수 있다. 프로세서(1110)는 중앙 처리 장치 또는 메모리(1130)나 스토리지(1160)에 저장된 프로세싱 인스트럭션들을 실행하는 반도체 장치일 수 있다. 메모리(1130) 및 스토리지(1160)는 다양한 형태의 휘발성 또는 비휘발성 저장 매체일 수 있다. 예를 들어, 메모리는 ROM(1131)이나 RAM(1132)을 포함할 수 있다.Referring to FIG. 8, the cloud streaming encoding apparatus according to an embodiment of the present invention may be implemented in a computer system 1100 such as a computer-readable recording medium. As shown in FIG. 8, the computer system 1100 includes one or more processors 1110, a memory 1130, a user interface input device 1140, and a user interface output device 1150 communicating with each other through a bus 1120. And a storage 1160. Also, the computer system 1100 may further include a network interface 1170 connected to the network 1180. The processor 1110 may be a central processing unit or a semiconductor device that executes processing instructions stored in the memory 1130 or the storage 1160. The memory 1130 and the storage 1160 may be various types of volatile or nonvolatile storage media. For example, the memory may include a ROM 1131 or a RAM 1132.

이상 설명된 본 발명에 따른 실시예는 다양한 컴퓨터 구성요소를 통하여 실행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위하여 하나 이상의 소프트웨어 모듈로 변경될 수 있으며, 그 역도 마찬가지이다.The embodiments according to the present invention described above may be implemented in the form of program instructions that can be executed through various computer components and recorded in a computer-readable recording medium. The computer-readable recording medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded in the computer-readable recording medium may be specially designed and configured for the present invention or may be known and usable to those skilled in the computer software field. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks and magnetic tapes, optical recording media such as CD-ROMs and DVDs, and magnetic-optical media such as floptical disks. medium), and a hardware device specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those produced by a compiler but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware device can be changed to one or more software modules to perform the processing according to the present invention, and vice versa.

본 발명에서 설명하는 특정 실행들은 실시예들로서, 어떠한 방법으로도 본 발명의 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다. 또한, “필수적인”, “중요하게” 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.The specific implementations described in the present invention are examples, and do not limit the scope of the present invention in any way. For brevity of the specification, descriptions of conventional electronic configurations, control systems, software, and other functional aspects of the systems may be omitted. In addition, the connection or connection members of the lines between the components shown in the drawings exemplarily represent functional connections and/or physical or circuit connections, and in an actual device, various functional connections that can be replaced or additionally Connections, or circuit connections, may be represented. In addition, if there is no specific mention such as “essential” or “importantly”, it may not be an essential component for the application of the present invention.

따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 또는 이로부터 등가적으로 변경된 모든 범위는 본 발명의 사상의 범주에 속한다고 할 것이다.Accordingly, the spirit of the present invention is limited to the above-described embodiments and should not be defined, and all ranges equivalent to or equivalently changed from the claims to be described later as well as the claims to be described later are the scope of the spirit of the present invention. It will be said to belong to.

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

이와 같이, 본 명세서는 그 제시된 구체적인 용어에 본 발명을 제한하려는 의도가 아니다. 따라서, 상술한 예를 참조하여 본 발명을 상세하게 설명하였지만, 당업자라면 본 발명의 범위를 벗어나지 않으면서도 본 예들에 대한 개조, 변경 및 변형을 가할 수 있다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.As such, this specification is not intended to limit the invention to the specific terms presented. Accordingly, although the present invention has been described in detail with reference to the above-described examples, those skilled in the art can make modifications, changes, and modifications to these examples without departing from the scope of the present invention. The scope of the present invention is indicated by the claims to be described later rather than the detailed description, and all changes or modified forms derived from the meaning and scope of the claims and their equivalent concepts should be interpreted as being included in the scope of the present invention. do.

본 발명에 의하면 클라우드 스트리밍 인코딩 장치 및 방법은 글로벌 캐시 데이터의 존재 여부를 확인하기 위해 클라우드 스트리밍을 통해 제공되는 이미지의 변화를 감지하고, 상기 글로벌 캐시 데이터의 후처리에 필요한 기준 데이터에 기반한 기설정된 조건에 따라 재인코딩 필요 여부를 판단하고, 상기 재인코딩 필요 여부에 기반하여 상기 글로벌 캐시 데이터를 재인코딩하고, 재인코딩된 결과를 이용하여 상기 글로벌 캐시 데이터를 갱신하는 것이 가능하다.According to the present invention, the cloud streaming encoding apparatus and method detects a change in an image provided through cloud streaming in order to check the existence of global cache data, and a preset condition based on reference data required for post-processing of the global cache data. It is possible to determine whether or not re-encoding is required according to, re-encode the global cache data based on whether or not re-encoding is necessary, and update the global cache data using the re-encoded result.

110, 310, 710, 810: 클라우드 스트리밍 라우터
120-1~ 120-N: 클라우드 스트리밍 서버
130-1~ 130-N, 740, 840: 단말 140: 네트워크
210: 통신부 220: 네트워크 성능 판단부
230: 연결부 240: 저장부
320, 720, 820: 제1 클라우드 스트리밍 서버
330, 730, 830: 제2 클라우드 스트리밍 서버
321, 331: 캐시 340: PC
350: STB
11: 이미지 변화 감지부 12: 후처리부
13: 인코딩부
1100: 컴퓨터 시스템
1110: 프로세서
1120: 버스
1130: 메모리
1131: 롬
1132: 램
1140: 사용자 인터페이스 입력 장치
1150: 사용자 인터페이스 출력 장치
1160: 스토리지
1170: 네트워크 인터페이스
1180: 네트워크
110, 310, 710, 810: Cloud Streaming Router
120-1~ 120-N: Cloud streaming server
130-1~ 130-N, 740, 840: terminal 140: network
210: communication unit 220: network performance determination unit
230: connection unit 240: storage unit
320, 720, 820: first cloud streaming server
330, 730, 830: second cloud streaming server
321, 331: cache 340: PC
350: STB
11: image change detection unit 12: post-processing unit
13: encoding unit
1100: computer system
1110: processor
1120: bus
1130: memory
1131: ROM
1132: RAM
1140: user interface input device
1150: user interface output device
1160: storage
1170: network interface
1180: network

Claims (10)

글로벌 캐시 데이터의 존재 여부를 확인하기 위해 클라우드 스트리밍을 통해 제공되는 이미지의 변화를 감지하는 이미지 변화 감지부; 및
상기 글로벌 캐시 데이터의 후처리에 필요한 기준 데이터에 기반한 기설정된 조건에 따라 재인코딩 필요 여부를 판단하고, 상기 재인코딩 필요 여부에 기반하여 상기 글로벌 캐시 데이터를 재인코딩하고, 재인코딩된 결과를 이용하여 상기 글로벌 캐시 데이터를 갱신하는 후처리부;
를 포함하는 것을 특징으로 하는 클라우드 스트리밍 인코딩 장치.
An image change detector configured to detect a change in an image provided through cloud streaming to check whether global cache data exists; And
Determine whether or not re-encoding is necessary according to a preset condition based on reference data required for post-processing of the global cache data, re-encode the global cache data based on whether or not re-encoding is necessary, and use the re-encoded result A post-processing unit for updating the global cache data;
Cloud streaming encoding device comprising a.
청구항 1에 있어서,
상기 이미지 변화 감지부는
상기 이미지의 변화를 감지한 결과에 상응하는 글로벌 캐시 이미지의 존재하지 않는 경우, 후처리에 필요한 기준 데이터를 저장하는 것을 특징으로 하는 클라우드 스트리밍 인코딩 장치.
The method according to claim 1,
The image change detection unit
And storing reference data necessary for post-processing when there is no global cache image corresponding to a result of detecting the change of the image.
청구항 2에 있어서,
상기 후처리에 필요한 기준 데이터는
상기 이미지의 화질을 판단하기 위한 데이터의 크기 및 최대 신호 대 잡음비(Peak Signal-to-Noise Ratio, PSNR)에 관한 정보 중 적어도 하나 이상 포함하는 것을 특징으로 하는 클라우드 스트리밍 인코딩 장치.
The method according to claim 2,
The reference data required for the post-processing is
A cloud streaming encoding apparatus comprising at least one of information on a size of data for determining the image quality and a peak signal-to-noise ratio (PSNR).
청구항 3에 있어서,
상기 후처리부는
상기 이미지의 화질을 판단하기 위한 데이터의 크기보다 큰 글로벌 캐시 데이터에 대한 적어도 하나 이상의 방식의 인코딩 옵션으로 인코딩을 수행하는 것을 특징으로 하는 클라우드 스트리밍 인코딩 장치.
The method of claim 3,
The post-processing unit
And performing encoding with at least one encoding option for global cache data that is larger than the size of the data for determining the image quality.
청구항 4에 있어서,
상기 후처리부는
상기 적어도 하나 이상의 방식의 인코딩 옵션으로 인코딩된 글로벌 캐시 데이터를 비교하여 어느 하나의 인코딩된 글로벌 캐시 데이터를 선택하여 상기 글로벌 캐시 데이터를 갱신하는 것을 특징으로 하는 클라우드 스트리밍 인코딩 장치.
The method of claim 4,
The post-processing unit
And updating the global cache data by comparing the global cache data encoded with the at least one encoding option and selecting any one of the encoded global cache data.
클라우드 스트리밍 인코딩 장치의 클라우드 스트리밍 인코딩 방법에 있어서,
글로벌 캐시 데이터의 존재 여부를 확인하기 위해, 클라우드 스트리밍을 통해 제공하는 이미지의 변화를 감지하는 단계;
상기 글로벌 캐시 데이터의 후처리에 필요한 기준 데이터에 기반한 기설정된 조건에 따라 재인코딩 필요 여부를 판단하는 단계; 및
상기 재인코딩 필요 여부에 기반하여 상기 글로벌 캐시 데이터를 재인코딩하고, 재인코딩된 결과를 이용하여 상기 글로벌 캐시 데이터를 갱신하는 후처리 단계;
를 포함하는 것을 특징으로 하는 클라우드 스트리밍 인코딩 방법.
In the cloud streaming encoding method of a cloud streaming encoding device,
Detecting a change in an image provided through cloud streaming to check whether global cache data exists;
Determining whether re-encoding is required according to a preset condition based on reference data required for post-processing of the global cache data; And
A post-processing step of re-encoding the global cache data based on whether the re-encoding is necessary, and updating the global cache data using the re-encoded result;
Cloud streaming encoding method comprising a.
청구항 6에 있어서,
상기 이미지의 변화를 감지하는 단계는
상기 이미지의 변화를 감지한 결과에 상응하는 글로벌 캐시 이미지의 존재하지 않는 경우, 후처리에 필요한 기준 데이터를 저장하는 것을 특징으로 하는 클라우드 스트리밍 인코딩 방법.
The method of claim 6,
The step of detecting the change of the image
And storing reference data required for post-processing when there is no global cache image corresponding to a result of detecting the change in the image.
청구항 7에 있어서,
상기 후처리에 필요한 기준 데이터는
상기 이미지의 화질을 판단하기 위한 데이터의 크기 및 최대 신호 대 잡음비(Peak Signal-to-Noise Ratio, PSNR)에 관한 정보 중 적어도 하나 이상 포함하는 것을 특징으로 하는 클라우드 스트리밍 인코딩 방법.
The method of claim 7,
The reference data required for the post-processing is
A cloud streaming encoding method comprising at least one of information on a size of data for determining the image quality and a peak signal-to-noise ratio (PSNR).
청구항 8에 있어서,
상기 후처리 단계는
상기 이미지의 화질을 판단하기 위한 데이터의 크기보다 큰 글로벌 캐시 데이터에 대한 적어도 하나 이상의 방식의 인코딩 옵션으로 인코딩을 수행하는 것을 특징으로 하는 클라우드 스트리밍 인코딩 방법.
The method of claim 8,
The post-treatment step
And performing encoding with at least one encoding option for global cache data that is larger than the size of the data for determining the image quality.
청구항 9에 있어서,
상기 후처리 단계는
상기 적어도 하나 이상의 방식의 인코딩 옵션으로 인코딩된 글로벌 캐시 데이터를 비교하여 어느 하나의 인코딩된 글로벌 캐시 데이터를 선택하여 상기 글로벌 캐시 데이터를 갱신하는 것을 특징으로 하는 클라우드 스트리밍 인코딩 방법.
The method of claim 9,
The post-treatment step
And updating the global cache data by comparing global cache data encoded with the at least one encoding option and selecting any one of the encoded global cache data.
KR1020190014948A 2019-02-08 2019-02-08 Apparatus and method for encoding of cloud streaming KR102617491B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190014948A KR102617491B1 (en) 2019-02-08 2019-02-08 Apparatus and method for encoding of cloud streaming

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190014948A KR102617491B1 (en) 2019-02-08 2019-02-08 Apparatus and method for encoding of cloud streaming

Publications (2)

Publication Number Publication Date
KR20200097497A true KR20200097497A (en) 2020-08-19
KR102617491B1 KR102617491B1 (en) 2023-12-27

Family

ID=72265559

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190014948A KR102617491B1 (en) 2019-02-08 2019-02-08 Apparatus and method for encoding of cloud streaming

Country Status (1)

Country Link
KR (1) KR102617491B1 (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013126185A (en) * 2011-12-15 2013-06-24 Fujitsu Ltd Information processing unit, image transmission method and image transmission program
KR20150014861A (en) 2013-07-30 2015-02-09 율리스 Diagnosis of the defective state of a bolometric detection array
KR20160043398A (en) * 2014-10-13 2016-04-21 엔트릭스 주식회사 System for cloud streaming service, method of cloud streaming service using source information and apparatus for the same
KR20160093929A (en) * 2015-01-30 2016-08-09 엔트릭스 주식회사 System for cloud streaming service, method of image cloud streaming service using simultaneous encoding and apparatus for the same
KR20160094746A (en) * 2015-02-02 2016-08-10 엔트릭스 주식회사 System for cloud streaming service, method of image cloud streaming service using additional encoding and apparatus for the same
KR20160131829A (en) * 2015-05-07 2016-11-16 엔트릭스 주식회사 System for cloud streaming service, method of image cloud streaming service using alpha value of image type and apparatus for the same
KR20160131832A (en) * 2015-05-07 2016-11-16 엔트릭스 주식회사 System for cloud streaming service, method of image cloud streaming service using reciprocal cache and apparatus for the same

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013126185A (en) * 2011-12-15 2013-06-24 Fujitsu Ltd Information processing unit, image transmission method and image transmission program
KR20150014861A (en) 2013-07-30 2015-02-09 율리스 Diagnosis of the defective state of a bolometric detection array
KR20160043398A (en) * 2014-10-13 2016-04-21 엔트릭스 주식회사 System for cloud streaming service, method of cloud streaming service using source information and apparatus for the same
KR20160093929A (en) * 2015-01-30 2016-08-09 엔트릭스 주식회사 System for cloud streaming service, method of image cloud streaming service using simultaneous encoding and apparatus for the same
KR20160094746A (en) * 2015-02-02 2016-08-10 엔트릭스 주식회사 System for cloud streaming service, method of image cloud streaming service using additional encoding and apparatus for the same
KR20160131829A (en) * 2015-05-07 2016-11-16 엔트릭스 주식회사 System for cloud streaming service, method of image cloud streaming service using alpha value of image type and apparatus for the same
KR20160131832A (en) * 2015-05-07 2016-11-16 엔트릭스 주식회사 System for cloud streaming service, method of image cloud streaming service using reciprocal cache and apparatus for the same

Also Published As

Publication number Publication date
KR102617491B1 (en) 2023-12-27

Similar Documents

Publication Publication Date Title
US10904304B2 (en) Cloud streaming service system, data compressing method for preventing memory bottlenecking, and device for same
KR102398976B1 (en) System for cloud streaming service, method of image cloud streaming service using simultaneous encoding and apparatus for the same
US10462200B2 (en) System for cloud streaming service, method for still image-based cloud streaming service and apparatus therefor
KR102426670B1 (en) System for cloud streaming service, method of image cloud streaming service using process shortering and apparatus for the same
KR102247886B1 (en) System for cloud streaming service, method of cloud streaming service based on type of image and apparatus for the same
KR20160131830A (en) System for cloud streaming service, method of cloud streaming service of providing multi-view screen based on resize and apparatus for the same
KR102409033B1 (en) System for cloud streaming service, method of image cloud streaming service using alpha level of color bit and apparatus for the same
KR102442699B1 (en) System for cloud streaming service, method of image cloud streaming service using common cache and apparatus for the same
KR102617491B1 (en) Apparatus and method for encoding of cloud streaming
KR102177934B1 (en) System for cloud streaming service, method of image cloud streaming service using split of changed image and apparatus for the same
KR102407477B1 (en) System for cloud streaming service, method of image cloud streaming service using alpha value of image type and apparatus for the same
KR102346748B1 (en) System for cloud streaming service, method of image cloud streaming service using selective server connection and apparatus for the same
KR102247887B1 (en) System for cloud streaming service, method of cloud streaming service using source information and apparatus for the same
KR102313530B1 (en) System for cloud streaming service, method of image cloud streaming service using split screen and apparatus for the same
KR102313531B1 (en) System for cloud streaming service, method of cloud streaming service using single session multi-access and apparatus for the same
KR102273143B1 (en) System for cloud streaming service, method of cloud streaming service based on still image and apparatus for the same
KR102273145B1 (en) System for cloud streaming service, method of image cloud streaming service using additional encoding and apparatus for the same
KR102405143B1 (en) System for cloud streaming service, method of image cloud streaming service using reduction of color bit and apparatus for the same
KR102306889B1 (en) System for cloud streaming service, method of image cloud streaming service using data substitution and apparatus for the same
KR102063093B1 (en) System for cloud streaming service, method of compressing data for preventing memory bottleneck and apparatus for the same
KR102354269B1 (en) System for cloud streaming service, method of image cloud streaming service using property of scene region and method using the same
KR102442698B1 (en) System for cloud streaming service, method of image cloud streaming service based on detection of change area using operating system massage and apparatus for the same
KR102265419B1 (en) System for cloud streaming service, method of cloud streaming service using selective encoding processing unit and apparatus 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
KR20160087255A (en) System for cloud streaming service, method of image cloud streaming service considering full screen transition and apparatus for the same

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant