KR102273142B1 - System for cloud streaming service, method of image cloud streaming service using application code conversion and apparatus for the same - Google Patents

System for cloud streaming service, method of image cloud streaming service using application code conversion and apparatus for the same Download PDF

Info

Publication number
KR102273142B1
KR102273142B1 KR1020150005690A KR20150005690A KR102273142B1 KR 102273142 B1 KR102273142 B1 KR 102273142B1 KR 1020150005690 A KR1020150005690 A KR 1020150005690A KR 20150005690 A KR20150005690 A KR 20150005690A KR 102273142 B1 KR102273142 B1 KR 102273142B1
Authority
KR
South Korea
Prior art keywords
code
animation
captured image
cloud streaming
information
Prior art date
Application number
KR1020150005690A
Other languages
Korean (ko)
Other versions
KR20160087129A (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 KR1020150005690A priority Critical patent/KR102273142B1/en
Publication of KR20160087129A publication Critical patent/KR20160087129A/en
Application granted granted Critical
Publication of KR102273142B1 publication Critical patent/KR102273142B1/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23614Multiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2387Stream processing in response to a playback request from an end-user, e.g. for trick-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering

Landscapes

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

Abstract

클라우드 스트리밍 서비스 시스템, 어플리케이션 코드 변환을 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치가 개시된다. 클라우드 스트리밍 서버가 어플리케이션 코드를 이용하여 변환코드를 생성하고, 변환코드의 실행 결과를 캡처하여 캡처 이미지를 생성하고, 변환한 코드를 캡처 이미지와 함께 사용자에게 전송함으로써 사용자 단말에서 어플리케이션 결과 화면을 생성할 수 있게끔 하여 스틸 이미지 기반의 클라우드 스트리밍 서비스를 수행할 수 있도록 하여 웹 어플리케이션 개발자들이 새로운 형식의 코드가 아닌 기존의 방식대로 원하는 형식의 어플리케이션 코드를 작성하여도 애니메이션 효과 적용을 사용자 단말에서 수행하기 위한 클라우드 스트리밍 서비스를 제공할 수 있다.A cloud streaming service system, an image cloud streaming service method using application code conversion, and an apparatus therefor are disclosed. The cloud streaming server generates a conversion code using the application code, captures the execution result of the conversion code to create a captured image, and transmits the converted code to the user along with the captured image to create an application result screen in the user terminal. Cloud to perform animation effect application on the user terminal even if web application developers write application code in the desired format in the existing way, rather than in a new format, by enabling the still image-based cloud streaming service to be performed. A streaming service can be provided.

Figure R1020150005690
Figure R1020150005690

Description

클라우드 스트리밍 서비스 시스템, 어플리케이션 코드 변환을 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치 {SYSTEM FOR CLOUD STREAMING SERVICE, METHOD OF IMAGE CLOUD STREAMING SERVICE USING APPLICATION CODE CONVERSION AND APPARATUS FOR THE SAME}Cloud streaming service system, image cloud streaming service method using application code conversion, and device therefor {SYSTEM FOR CLOUD STREAMING SERVICE, METHOD OF IMAGE CLOUD STREAMING SERVICE USING APPLICATION CODE CONVERSION AND APPARATUS FOR THE SAME}

본 발명은 어플리케이션 코드 변환을 이용한 이미지 클라우드 스트리밍 서비스 기술에 관한 것으로, 특히 어플리케이션 코드를 이용하여 변환코드를 생성하고, 변환코드의 실행 결과를 캡처하여 캡처 이미지를 생성하고, 변환한 코드를 캡처 이미지와 함께 사용자에게 전송함으로써 사용자 단말에서 애니메이션 효과가 적용된 어플리케이션 결과 화면을 생성할 수 있는 클라우드 스트리밍 서비스 시스템, 어플리케이션 코드 변환을 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치에 관한 것이다.The present invention relates to an image cloud streaming service technology using application code conversion, and in particular, generating a conversion code using an application code, capturing the execution result of the conversion code to generate a captured image, and combining the converted code with a capture image It relates to a cloud streaming service system capable of generating an application result screen to which an animation effect is applied in a user terminal by transmitting the same to a user, an image cloud streaming service method using application code conversion, and an apparatus therefor.

최근 인터넷의 발달로 인해 개인용 모바일 통신기기를 이용한 통신의 속도가 급격하게 향상되고, 이를 기반으로 원격지 컴퓨터 접속을 통해 대용량의 데이터를 다운로드 및 업로드하거나, 원격지 컴퓨터에 로컬 로그인하는 것과 같은 인터넷 환경이 조성되었다. 또한, 스마트폰과 같은 이동통신 단말에서 구동되는 어플리케이션이 다양하게 개발되면서, 비교적 낮은 성능의 사용자 단말에서 높은 성능을 필요로 하는 어플리케이션을 구동하기 위한 가상화 기술들이 많이 제안되고 있다. 그 중에서 어플리케이션을 서버에서 구동시키고 구동화면은 비디오 인코딩(Encoding)을 통해 압축하여 클라이언트로 전송하고, 클라이언트는 전송된 비디오를 재생하여 마치 자신의 단말에서 어플리케이션이 구동되는 것과 같은 효과를 내는 화면 가상화 기반의 클라우드 스트리밍 서비스가 각광받고 있는 추세이다.Due to the recent development of the Internet, the speed of communication using personal mobile communication devices has rapidly improved, and based on this, an Internet environment such as downloading and uploading large amounts of data through remote computer access or logging into a remote computer locally is created. became In addition, as applications driven in mobile communication terminals such as smartphones have been developed in various ways, many virtualization technologies have been proposed for driving applications requiring high performance in user terminals with relatively low performance. Among them, a screen virtualization base that runs an application on the server, compresses the driving screen through video encoding, and transmits it to the client, and the client plays the transmitted video to have the same effect as if the application is running on its own terminal. of cloud streaming services are in the spotlight.

이와 같은 클라우드 스트리밍 서비스는 기본적으로 비디오 코덱 기반의 클라우드 스트리밍 기법이 적용되지만, 메뉴 디스플레이와 같은 서비스를 제공하는 경우에도 불필요하게 화면 전체를 캡처하고 비디오 코덱을 이용하여 동작하게 되어 시스템 전체적으로 비효율적인 측면이 존재한다.This cloud streaming service basically applies a video codec-based cloud streaming technique, but even when a service such as a menu display is provided, the entire screen is unnecessarily captured and operated using the video codec, resulting in inefficiency of the system as a whole. exist.

따라서, 사용자 요청에 의해 실행된 어플리케이션의 실행 결과 화면에 상응하는 웹 어플리케이션 코드를 셋탑박스에서 실행 가능한 코드로 변환하고, 변환된 코드를 이용하여 애니메이션과 같은 동적인 효과가 필요한 부분에 대해 캡처 이미지를 생성하여, 캡처 이미지와 애니메이션과 관련된 정보를 사용자의 셋탑박스로 전송함으로써 셋탑박스에서 애니메이션 효과가 적용된 서비스 화면을 생성할 수 있는 기술이 절실하게 대두되고 있다.Therefore, the web application code corresponding to the execution result screen of the application executed by the user's request is converted into executable code in the set-top box, and the captured image is generated for the part requiring dynamic effects such as animation using the converted code. A technology capable of generating a service screen to which an animation effect is applied in the set-top box by generating and transmitting the captured image and animation-related information to the user's set-top box is urgently emerging.

한국 공개 특허 제10-2010-0113503호, 2010년 10월 21일 공개 (명칭: 어플리케이션 호스팅 센터 내에 프로그램 코드 및 데이터를 저장하기 위한 시스템 및 방법)Korean Patent Laid-Open Patent No. 10-2010-0113503, published on October 21, 2010 (Title: System and method for storing program code and data in an application hosting center)

본 발명의 목적은, 클라우드 스트리밍 서버에서 캡처 할 이미지를 생성하기 위해 프레임의 차이를 비교하는 과정을 생략하고 코드단에서 이미지를 획득함으로써 보다 향상된 클라우드 스트리밍 서비스를 제공하는 것이다.It is an object of the present invention to provide a more improved cloud streaming service by omitting the process of comparing the frame difference in order to generate an image to be captured in the cloud streaming server and acquiring the image at the code stage.

또한, 본 발명의 목적은 어플리케이션 결과 화면을 처리할 때 불필요한 애니메이션 처리를 수행하지 않도록 하여 서버에서 구동 가능한 웹 컨테이너의 수를 증가시키는 것이다.Another object of the present invention is to increase the number of web containers that can be driven by a server by not performing unnecessary animation processing when processing an application result screen.

또한, 본 발명의 목적은 웹 어플리케이션 개발자들이 새로운 형식의 코드가 아닌 기존의 방식대로 원하는 형식의 어플리케이션 코드를 작성하여도 애니메이션 효과 적용을 사용자 단말에서 수행하기 위한 클라우드 스트리밍 서비스를 제공할 수 있도록 하는 것이다.In addition, it is an object of the present invention to provide a cloud streaming service for web application developers to apply animation effects in a user terminal even if they write application code of a desired format in an existing manner rather than a new format code. .

상기한 목적을 달성하기 위한 본 발명에 따른 클라우드 스트리밍 서버는, 웹 어플리케이션 서버로부터 어플리케이션 결과 화면에 상응하는 제1 코드를 수신하는 코드 수신부; 상기 제1 코드를, 캡처 이미지 정보 및 애니메이션 정보를 포함하는 제2 코드로 변환하는 코드 변환부; 상기 제2 코드에 포함된 상기 캡처 이미지 정보를 기반으로 캡처 이미지를 생성하는 캡처부; 스틸 이미지 압축 기법을 이용하여 상기 캡처 이미지를 스틸 이미지 인코딩하는 인코딩부; 및 사용자 단말에서 상기 어플리케이션 결과 화면을 생성할 수 있도록 스틸 이미지 인코딩된 상기 캡처 이미지 및 상기 제2 코드를 상기 사용자 단말로 전송하여 스틸 이미지 기반의 클라우드 스트리밍 서비스를 수행하는 센딩부를 포함한다.Cloud streaming server according to the present invention for achieving the above object, a code receiving unit for receiving a first code corresponding to the application result screen from the web application server; a code conversion unit converting the first code into a second code including captured image information and animation information; a capture unit generating a captured image based on the captured image information included in the second code; an encoding unit for encoding the still image of the captured image using a still image compression technique; and a sending unit that transmits the still image-encoded captured image and the second code to the user terminal so that the user terminal can generate the application result screen to perform a still image-based cloud streaming service.

이 때, 캡처부는 상기 어플리케이션 결과 화면 중, 상기 제2 코드에 포함된 상기 캡처 이미지 정보에 상응하는 영역을 캡처하여 상기 캡처 이미지를 생성할 수 있다.In this case, the capture unit may generate the captured image by capturing an area corresponding to the captured image information included in the second code of the application result screen.

이 때, 클라우드 스트리밍 서버는 상기 제1 코드에 포함된 이미지 영역 속성 정보를 이용하여 상기 캡처 이미지 정보를 생성하는 캡처 이미지 정보 생성부; 및 상기 제1 코드에 포함된 애니메이션 코드를 이용하여 상기 애니메이션 정보를 생성하는 애니메이션 정보 생성부를 더 포함할 수 있다.At this time, the cloud streaming server includes: a captured image information generating unit for generating the captured image information by using the image region property information included in the first code; and an animation information generator configured to generate the animation information by using the animation code included in the first code.

이 때, 캡처 이미지 정보 생성부는 상기 제1 코드에 포함된 상기 이미지 영역 속성 정보에 기반하여 상기 어플리케이션 결과 화면에서 애니메이션이 표시될 영역을 나타내는 픽셀 좌표 값을 산출하고, 상기 좌표 값을 포함하는 상기 캡처 이미지 정보를 생성할 수 있다.At this time, the captured image information generating unit calculates a pixel coordinate value indicating an area in which an animation is to be displayed on the application result screen based on the image area property information included in the first code, and the capture including the coordinate value Image information can be created.

이 때, 제2 코드는 애니메이션 타입, 애니메이션 적용 시간, 애니메이션 반복 횟수, 시작 좌표, 종료 좌표, 시작 사이즈 및 종료 사이즈 중 적어도 하나 이상에 상응하는 상기 애니메이션 정보를 포함할 수 있다.In this case, the second code may include the animation information corresponding to at least one of an animation type, an animation application time, an animation repetition number, a start coordinate, an end coordinate, a start size, and an end size.

이 때, 제2 코드는 상기 애니메이션 코드를 포함하지 않을 수 있다.In this case, the second code may not include the animation code.

이 때, 인코딩부는 PNG(portable network graphics), 팔렛티드 PNG(portable network graphics) 및 JPEG(joint photography experts group) 중 어느 하나에 상응하는 스틸 이미지 압축 기법을 이용하여 상기 캡처 이미지를 스틸 이미지 인코딩할 수 있다.In this case, the encoding unit may encode the captured image as a still image using a still image compression technique corresponding to any one of portable network graphics (PNG), paletted portable network graphics (PNG), and joint photography experts group (JPEG). have.

또한, 본 발명에 따른 어플리케이션 코드 변환을 이용한 이미지 클라우드 스트리밍 서비스 방법은, 웹 어플리케이션 서버로부터 어플리케이션 결과 화면에 상응하는 제1 코드를 수신하는 단계; 상기 제1 코드를, 캡처 이미지 정보 및 애니메이션 정보를 포함하는 제2 코드로 변환하는 단계; 상기 제2 코드에 포함된 상기 캡처 이미지 정보를 기반으로 캡처 이미지를 생성하는 단계; 스틸 이미지 압축 기법을 이용하여 상기 캡처 이미지를 스틸 이미지 인코딩하는 단계; 및 사용자 단말에서 상기 어플리케이션 결과 화면을 생성할 수 있도록 스틸 이미지 인코딩된 상기 캡처 이미지 및 상기 제2 코드를 상기 사용자 단말로 전송하여 스틸 이미지 기반의 클라우드 스트리밍 서비스를 수행하는 단계를 포함한다.In addition, the image cloud streaming service method using the application code conversion according to the present invention, receiving a first code corresponding to the application result screen from the web application server; converting the first code into a second code including captured image information and animation information; generating a captured image based on the captured image information included in the second code; still image encoding the captured image using a still image compression technique; and transmitting the still image-encoded captured image and the second code to the user terminal so that the user terminal can generate the application result screen to perform a still image-based cloud streaming service.

이 때, 캡처 이미지를 생성하는 단계는 상기 어플리케이션 결과 화면 중, 상기 제2 코드에 포함된 상기 캡처 이미지 정보에 상응하는 영역을 캡처하여 상기 캡처 이미지를 생성할 수 있다.In this case, the generating of the captured image may include capturing an area corresponding to the captured image information included in the second code of the application result screen to generate the captured image.

이 때, 이미지 클라우드 스트리밍 서비스 방법은 상기 제1 코드에 포함된 이미지 영역 속성 정보를 이용하여 상기 캡처 이미지 정보를 생성하는 단계; 및 상기 제1 코드에 포함된 애니메이션 코드를 이용하여 상기 애니메이션 정보를 생성하는 단계를 더 포함할 수 있다.In this case, the image cloud streaming service method includes generating the captured image information by using the image region property information included in the first code; and generating the animation information by using the animation code included in the first code.

이 때, 캡처 이미지 정보를 생성하는 단계는 상기 제1 코드에 포함된 상기 이미지 영역 속성 정보에 기반하여 상기 어플리케이션 결과 화면에서 애니메이션이 표시될 영역을 나타내는 픽셀 좌표 값을 산출하고, 상기 좌표 값을 포함하는 상기 캡처 이미지 정보를 생성할 수 있다.In this case, the step of generating the captured image information includes calculating a pixel coordinate value indicating a region in which an animation is to be displayed on the application result screen based on the image region property information included in the first code, and including the coordinate value to generate the captured image information.

이 때, 제2 코드는 애니메이션 타입, 애니메이션 적용 시간, 애니메이션 반복 횟수, 시작 좌표, 종료 좌표, 시작 사이즈 및 종료 사이즈 중 적어도 하나 이상에 상응하는 상기 애니메이션 정보를 포함할 수 있다.In this case, the second code may include the animation information corresponding to at least one of an animation type, an animation application time, an animation repetition number, a start coordinate, an end coordinate, a start size, and an end size.

이 때, 제2 코드는 상기 애니메이션 코드를 포함하지 않을 수 있다.In this case, the second code may not include the animation code.

이 때, 클라우드 스트리밍 서비스를 수행하는 단계는 PNG(portable network graphics), 팔렛티드 PNG(portable network graphics) 및 JPEG(joint photography experts group) 중 어느 하나에 상응하는 스틸 이미지 압축 기법을 이용하여 상기 캡처 이미지를 스틸 이미지 인코딩할 수 있다.In this case, the step of performing the cloud streaming service includes using a still image compression technique corresponding to any one of portable network graphics (PNG), portable network graphics (PNG) and joint photography experts group (JPEG) to capture the captured image. can encode still images.

본 발명에 따르면, 클라우드 스트리밍 서버에서 캡처할 이미지를 생성하기 위해 프레임의 차이를 비교하는 과정을 생략하고 코드단에서 이미지를 획득함으로써 보다 향상된 클라우드 스트리밍 서비스를 제공할 수 있다.According to the present invention, it is possible to provide a more improved cloud streaming service by omitting the process of comparing the frame difference in order to generate an image to be captured by the cloud streaming server and acquiring the image at the code stage.

또한, 본 발명은 어플리케이션 결과 화면을 처리할 때 불필요한 애니메이션 처리를 수행하지 않도록 하여 서버에서 구동 가능한 웹 컨테이너의 수를 증가시킬 수 있다.In addition, the present invention can increase the number of web containers that can be driven by the server by not performing unnecessary animation processing when processing the application result screen.

또한, 본 발명은 웹 어플리케이션 개발자들이 새로운 형식의 코드가 아닌 기존의 방식대로 원하는 형식의 어플리케이션 코드를 작성하여도 애니메이션 효과 적용을 사용자 단말에서 수행하기 위한 클라우드 스트리밍 서비스를 제공할 수 있다.In addition, the present invention can provide a cloud streaming service for performing animation effect application in a user terminal even if web application developers write application code of a desired format in an existing manner rather than a new format code.

도 1은 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 시스템을 나타낸 블록도이다.
도 2는 도 1에 도시된 클라우드 스트리밍 서버의 일 예를 나타낸 블록도이다.
도 3은 본 발명의 일실시예에 따른 스틸 이미지 기반의 클라우드 스트리밍 서비스 수행 과정을 나타낸 도면이다.
도 4는 본 발명의 일실시예에 따른 제1 코드 및 제2 코드를 나타낸 도면이다.
도 5는 본 발명의 일실시예에 따른 코드 변환을 나타낸 도면이다.
도 6은 본 발명의 다른 실시예에 따른 코드 변환을 나타낸 도면이다.
도 7은 본 발명의 일실시예에 따른 어플리케이션 코드 변환을 이용한 이미지 클라우드 스트리밍 서비스 방법을 나타낸 동작 흐름도이다.
1 is a block diagram showing a cloud streaming service system according to an embodiment of the present invention.
FIG. 2 is a block diagram illustrating an example of the cloud streaming server shown in FIG. 1 .
3 is a diagram illustrating a process of performing a cloud streaming service based on a still image according to an embodiment of the present invention.
4 is a view showing a first code and a second code according to an embodiment of the present invention.
5 is a diagram illustrating code conversion according to an embodiment of the present invention.
6 is a diagram illustrating code conversion according to another embodiment of the present invention.
7 is an operation flowchart illustrating an image cloud streaming service method using application code conversion according to an embodiment of the present invention.

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

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

도 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) 및 네트워크(140)를 포함한다.Referring to FIG. 1 , the cloud streaming service system according to an embodiment of the present invention includes a cloud streaming server 110 , terminal devices 120-1, ..., 120-N, a web application server 130 and a network 140 . ) is included.

클라우드 스트리밍 서버(110)는 웹 어플리케이션 서버(130)로부터 어플리케이션 결과 화면에 상응하는 제1 코드를 수신한다.Cloud streaming server 110 receives the first code corresponding to the application result screen from the web application server (130).

또한, 클라우드 스트리밍 서버(110)는 제1 코드를, 캡처 이미지 정보 및 애니메이션 정보를 포함하는 제2 코드로 변환한다. 이 때, 제2 코드는 애니메이션 타입, 애니메이션 적용 시간, 애니메이션 반복 횟수, 시작 좌표, 종료 좌표, 시작 사이즈 및 종료 사이즈 중 적어도 하나 이상에 상응하는 애니메이션 정보를 포함할 수 있다. 이 때, 제2 코드는 애니메이션 코드를 포함하지 않을 수 있다.In addition, the cloud streaming server 110 converts the first code into a second code including captured image information and animation information. In this case, the second code may include animation information corresponding to at least one of an animation type, an animation application time, an animation repetition number, a start coordinate, an end coordinate, a start size, and an end size. In this case, the second code may not include the animation code.

또한, 클라우드 스트리밍 서버(110)는 어플리케이션 결과 화면 중, 제2 코드에 포함된 캡처 이미지 정보에 상응하는 영역을 캡처하여 캡처 이미지를 생성할 수 있다.In addition, the cloud streaming server 110 may generate a captured image by capturing an area corresponding to the captured image information included in the second code of the application result screen.

또한, 클라우드 스트리밍 서버(110)는 제1 코드에 포함된 이미지 영역 속성 정보를 이용하여 캡처 이미지 정보를 생성할 수 있다.In addition, the cloud streaming server 110 may generate the captured image information by using the image region property information included in the first code.

또한, 클라우드 스트리밍 서버(110)는 제1 코드에 포함된 애니메이션 코드를 이용하여 애니메이션 정보를 생성할 수 있다.In addition, the cloud streaming server 110 may generate animation information by using the animation code included in the first code.

또한, 클라우드 스트리밍 서버(110)는 제2 코드에 포함된 캡처 이미지 정보를 기반으로 캡처 이미지를 생성한다. 이 때, 어플리케이션 결과 화면 중, 제2 코드에 포함된 캡처 이미지 정보에 상응하는 영역을 캡처하여 캡처 이미지를 생성할 수 있다. 제1 코드에 포함된 이미지 영역 속성 정보에 상응하는 입력 정보에 대해 렌더링을 수행하여 캡처 이미지를 생성할 수 있다.In addition, the cloud streaming server 110 generates a captured image based on the captured image information included in the second code. In this case, a captured image may be generated by capturing an area corresponding to the captured image information included in the second code of the application result screen. A captured image may be generated by rendering the input information corresponding to the image region attribute information included in the first code.

또한, 클라우드 스트리밍 서버(110)는 스틸 이미지 압축 기법을 이용하여 캡처 이미지를 스틸 이미지 인코딩한다. 이 때, PNG(portable network graphics), 팔렛티드 PNG(portable network graphics) 및 JPEG(joint photography experts group) 중 어느 하나에 상응하는 스틸 이미지 압축 기법을 이용하여 캡처 이미지를 스틸 이미지 인코딩할 수 있다.Also, the cloud streaming server 110 encodes the captured image as a still image using a still image compression technique. In this case, the captured image may be encoded as a still image by using a still image compression technique corresponding to any one of portable network graphics (PNG), paletted portable network graphics (PNG), and joint photography experts group (JPEG).

또한, 클라우드 스트리밍 서버(110)는 단말 장치들(120-1, …, 120-N)에서 어플리케이션 결과 화면을 생성할 수 있도록 스틸 이미지 인코딩된 캡처 이미지 및 제1 코드를 변환하여 애니메이션 정보를 포함하도록 생성한 제2 코드를 사용자 단말로 전송하여 스틸 이미지 기반의 클라우드 스트리밍 서비스를 수행한다.In addition, the cloud streaming server 110 converts the still image-encoded captured image and the first code so as to generate an application result screen in the terminal devices 120-1, ..., 120-N to include animation information. A still image-based cloud streaming service is performed by transmitting the generated second code to the user terminal.

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

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

웹 어플리케이션 서버(130)는 단말 장치들(120-1, …, 120-N)로부터의 요청을 전달받아 처리하는 서버이다. 웹 어플리케이션 서버(130)에서 단말 장치들(120-1, …, 120-N)로부터 수신된 요청을 모두 처리하기보다 웹 컨테이너들을 통해 웹 어플리케이션 서버(130)의 기능을 구조적으로 분리하여 처리할 수 있기 때문에 단말 장치들(120-1, …, 120-N)로부터의 서비스 요청이 많을수록 웹 어플리케이션 서버(130)를 이용하여 서비스하는 방법이 효과적일 수 있다. 예를 들어, BEA사의 WEB LOGIC, IBM사의 Web Spere, T-max사의 JEUS, Tomcat, RedHot사의 Jboss 등이 웹 어플리케이션 서버(130)에 해당할 수 있다.The web application server 130 is a server that receives and processes requests from the terminal devices 120-1, ..., 120-N. Rather than processing all the requests received from the terminal devices 120-1, ..., 120-N in the web application server 130, the functions of the web application server 130 may be structurally separated and processed through web containers. Therefore, as the number of service requests from the terminal devices 120-1, ..., 120-N increases, the method of providing a service using the web application server 130 may be more effective. For example, BEA's WEB LOGIC, IBM's Web Spere, T-max's JEUS, Tomcat, RedHot's Jboss, etc. may correspond to the web application server 130 .

이러한 웹 어플리케이션 서버(130)는 단말 장치들(120-1, …, 120-N)로부터 수신된 서비스 요청에 기반하여 어플리케이션 결과 화면에 상응하는 어플리케이션 코드를 클라우드 스트리밍 서버(110)로 전송할 수 있다.The web application server 130 may transmit the application code corresponding to the application result screen to the cloud streaming server 110 based on the service request received from the terminal devices 120-1, ..., 120-N.

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

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

도 2를 참조하면, 도 1에 도시된 클라우드 스트리밍 서버는 코드 수신부(210), 캡처 이미지 정보 생성부(220), 애니메이션 정보 생성부(230), 코드 변환부(240), 캡처부(250), 인코딩부(260), 센딩부(270) 및 저장부(280)를 포함한다.Referring to FIG. 2 , the cloud streaming server shown in FIG. 1 includes a code receiving unit 210 , a captured image information generating unit 220 , an animation information generating unit 230 , a code converting unit 240 , and a capturing unit 250 . , an encoding unit 260 , a sending unit 270 , and a storage unit 280 .

코드 수신부(210)는 웹 어플리케이션 서버로부터 어플리케이션 결과 화면에 상응하는 제1 코드를 수신한다. 이와 같은 제1 코드에는 어플리케이션을 실행할 때 적용된 애니메이션 효과에 대한 애니메이션 정보 및 애니메이션 효과가 적용된 이미지들에 대한 이미지 영역 속성 정보 등을 포함할 수 있다. 또한, 웹 어플리케이션 개발자들이 기존에 사용하던 방식으로 작성되어 있을 수 있다. 예를 들어, 제1 코드는 애니메이션 용도로 널리 사용되고 있는 jQuery 등의 라이브러리를 활용하여 작성될 수 있다.The code receiving unit 210 receives the first code corresponding to the application result screen from the web application server. Such a first code may include animation information on an animation effect applied when an application is executed, image area property information on images to which an animation effect is applied, and the like. In addition, it may be written in a way that web application developers have previously used. For example, the first code may be written using a library such as jQuery, which is widely used for animation purposes.

캡처 이미지 정보 생성부(220)는 제1 코드에 포함된 이미지 영역 속성 정보를 이용하여 캡처 이미지 정보를 생성한다. 예를 들어, 이미지 영역 속성 정보는 캡처될 이미지에 대한 좌표 정보들일 수 있다.The captured image information generating unit 220 generates captured image information by using the image region attribute information included in the first code. For example, the image region attribute information may be coordinate information for an image to be captured.

애니메이션 정보 생성부(230)는 제1 코드에 포함된 애니메이션 코드를 이용하여 애니메이션 정보를 생성한다. 제2 코드에 포함된 애니메이션 코드는 애니메이션을 실행시키기 위한 코드로써, 해당 코드를 실행시키는 경우 불필요한 캡처를 수행해야 하는 경우가 발생할 수 있다. 따라서, 애니메이션 코드의 내용을 확인하고, 추출할 수 있는 정보를 이용하여 애니메이션 정보를 생성할 수 있다.The animation information generator 230 generates animation information by using the animation code included in the first code. The animation code included in the second code is a code for executing animation, and when executing the corresponding code, unnecessary capture may be required. Accordingly, it is possible to check the contents of the animation code and generate animation information using information that can be extracted.

코드 변환부(240)는 제1 코드를, 캡처 이미지 정보 및 애니메이션 정보를 포함하는 제2 코드로 변환한다. 따라서, 제2 코드를 확인하면 캡처 영역에 대한 정보 및 애니메이션에 대한 상세한 정보를 파악할 수 있다.The code conversion unit 240 converts the first code into a second code including captured image information and animation information. Accordingly, by checking the second code, information on the capture area and detailed information on animation can be grasped.

이 때, 제2 코드는 애니메이션 타입, 애니메이션 적용 시간, 애니메이션 반복 횟수, 시작 좌표, 종료 좌표, 시작 사이즈 및 종료 사이즈 중 적어도 하나 이상에 상응하는 애니메이션 정보를 포함할 수 있다. 예를 들어, 제2 코드 상에서 애니메이션 타입은 'effect type', 애니메이션 적용 시간은 'duration', 애니메이션 반복 횟수는 'isRepeat', 시작 좌표는 'start X, start Y', 종료 좌표는 'end X, end Y', 시작 사이즈는 'start W, start H' 및 종료 사이즈는 'end W, end H'로 표시될 수 있다.In this case, the second code may include animation information corresponding to at least one of an animation type, an animation application time, an animation repetition number, a start coordinate, an end coordinate, a start size, and an end size. For example, in the second code, the animation type is 'effect type', the animation application time is 'duration', the number of animation repetitions is 'isRepeat', the start coordinates are 'start X, start Y', the end coordinates are 'end X, end Y', the start size may be expressed as 'start W, start H', and the end size may be expressed as 'end W, end H'.

이 때, 제2 코드는 애니메이션 코드를 포함하지 않을 수 있다.In this case, the second code may not include the animation code.

캡처부(250)는 제2 코드에 포함된 캡처 이미지 정보를 기반으로 캡처 이미지를 생성한다. 이 때, 어플리케이션 결과 화면을 렌더링하고, 캡처 이미지 정보에 상응하는 영역만을 캡처하여 캡처 이미지를 획득할 수 있다. 이 때, 캡처 이미지 정보는 어플리케이션 결과 화면에서 애니메이션이 표시될 픽셀 좌표 값들을 포함할 수 있다.The capture unit 250 generates a captured image based on captured image information included in the second code. In this case, a captured image may be obtained by rendering the application result screen and capturing only an area corresponding to the captured image information. In this case, the captured image information may include pixel coordinate values at which animation is to be displayed on the application result screen.

인코딩부(260)는 스틸 이미지 압축 기법을 이용하여 캡처 이미지를 스틸 이미지 인코딩한다.The encoding unit 260 encodes the captured image as a still image by using a still image compression technique.

이 때, PNG(portable network graphics), 팔렛티드 PNG(portable network graphics) 및 JPEG(joint photography experts group) 중 어느 하나에 상응하는 스틸 이미지 압축 기법을 이용하여 캡처 이미지를 스틸 이미지 인코딩할 수 있다.In this case, the captured image may be encoded as a still image by using a still image compression technique corresponding to any one of portable network graphics (PNG), paletted portable network graphics (PNG), and joint photography experts group (JPEG).

PNG 스틸 이미지 압축 기법은 인코딩 시 이미지의 화질은 좋으나 데이터의 크기가 커져서 전송 망의 대역폭이 낮은 경우에는 전송 속도가 저하될 수 있다.The PNG still image compression technique has good image quality during encoding, but the transmission speed may be lowered when the bandwidth of the transmission network is low due to the large data size.

팔렛티드 PNG 스틸 이미지 압축 기법은 인코딩 시 이미지의 데이터 크기가 줄어들어 전송 속도는 보장할 수 있지만, 8비트로 색상을 표현하기 때문에 이미지 화질에 열화를 가져올 수 있다.The paletted PNG still image compression technique reduces the data size of the image during encoding, so the transmission speed can be guaranteed, but since the color is expressed in 8 bits, it can cause deterioration in image quality.

JPEG 스틸 이미지 압축 기법은 압축 효율이 좋아서 인코딩 시 전송 데이터 량을 대폭 줄일 수 있으나, 압축 효율이 큰 만큼 인코딩 및 디코딩을 수행할 때 시스템 부하를 많이 발생시킬 수 있다.Since the JPEG still image compression technique has good compression efficiency, the amount of transmitted data can be greatly reduced during encoding. However, since the compression efficiency is high, it can generate a lot of system load when encoding and decoding.

센딩부(270)는 사용자 단말에서 어플리케이션 결과 화면을 생성할 수 있도록 스틸 이미지 인코딩된 캡처 이미지 및 제1 코드를 변환하여 애니메이션 정보를 포함하도록 생성한 제2 코드를 사용자 단말로 전송하여 스틸 이미지 기반의 클라우드 스트리밍 서비스를 수행한다. 예를 들어, 클라우드 스트리밍 서버(110)에서 어플리케이션 결과 화면을 완벽하게 생성하여 스트리밍 할 수도 있지만, 상기와 같은 방법으로 사용자 단말에서 어플리케이션 결과 화면을 생성하도록 전송함으로써 클라우드 스트리밍 서버(110)에서 발생하는 부하를 현저하게 감소시킬 수 있다. 이와 같이 클라우드 스트리밍 서버(110)의 부하가 감소되면 클라우드 스트리밍 서버(110)에서 동시에 처리할 수 있는 서비스의 수가 늘어나므로 보다 많은 사용자들이 동시에 서비스를 제공받을 수 있는 효과가 있다.The sending unit 270 converts the still image-encoded captured image and the first code so that the user terminal can generate the application result screen, and transmits the second code generated to include animation information to the user terminal, Cloud streaming service. For example, the cloud streaming server 110 may completely generate and stream the application result screen, but the load generated in the cloud streaming server 110 by transmitting the application result screen to the user terminal in the same way as above. can be significantly reduced. As such, when the load of the cloud streaming server 110 is reduced, the number of services that can be simultaneously processed by the cloud streaming server 110 increases, so that more users can receive the service at the same time.

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

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

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

한편, 클라우드 스트리밍 서버(110)는 메모리가 탑재되어 그 장치 내에서 정보를 저장할 수 있다. 일 구현예의 경우, 메모리는 컴퓨터로 판독 가능한 매체이다. 일 구현 예에서, 메모리는 휘발성 메모리 유닛일 수 있으며, 다른 구현예의 경우, 메모리는 비휘발성 메모리 유닛일 수도 있다. 일 구현예의 경우, 저장장치는 컴퓨터로 판독 가능한 매체이다. 다양한 서로 다른 구현 예에서, 저장장치는 예컨대 하드디스크 장치, 광학디스크 장치, 혹은 어떤 다른 대용량 저장장치를 포함할 수도 있다.On the other hand, the cloud streaming server 110 is equipped with a memory can store information in the device. For 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 embodiment, 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 diagram illustrating a process of performing a cloud streaming service based on a still image according to an embodiment of the present invention.

도 3을 참조하면, 본 발명의 일실시예에 따른 스틸 이미지 기반의 클라우드 스트리밍 서비스 수행 과정은 클라우드 스트리밍 서버 영역(300), 단말 영역(305) 및 어플리케이션 서버 영역(310)으로 분류하여 설명할 수 있다.Referring to FIG. 3 , the process of performing a cloud streaming service based on a still image according to an embodiment of the present invention can be described by classifying it into a cloud streaming server area 300 , a terminal area 305 , and an application server area 310 . have.

먼저 클라우드 스트리밍 서버 영역(300)에서 사용자의 요청에 기반하여 어플리케이션 서버에서 수신되는 어플리케이션 코드를 수신(320)하여 분석할 수 있다. 이 때, 어플리케이션 코드는 제1 코드로서, 이미지 영역 속성 정보와 애니메이션 코드 등을 포함할 수 있다.First, the application code received from the application server based on the user's request in the cloud streaming server area 300 may be received 320 and analyzed. In this case, the application code is the first code, and may include image region property information, animation code, and the like.

이 후, 어플리케이션 코드를 변환하여 변환 코드를 생성(340)할 수 있다. 이 때, 변환 코드는 제2 코드로서, 이미지 영역 속성 정보를 이용하여 생성된 캡처 이미지 정보 및 애니메이션 코드를 이용하여 생성된 애니메이션 정보 등을 포함할 수 있다.Thereafter, the conversion code may be generated (340) by converting the application code. In this case, the conversion code is the second code, and may include captured image information generated using image region property information, animation information generated using the animation code, and the like.

이 때, 클라우드 스트리밍 서버 영역(300)에서는 어플리케이션 결과 화면 중 변환 코드에 포함된 캡처 이미지 정보에 상응하는 영역만을 캡처하여 캡처 이미지를 생성할 수 있다.At this time, the cloud streaming server area 300 may generate a captured image by capturing only an area corresponding to the captured image information included in the conversion code among the application result screen.

또한, 클라우드 스트리밍 서버 영역(300)에서는 인코딩(330)을 수행한 캡처 이미지와 제2 코드를 함께 단말 영역(305)으로 스트리밍(350)할 수 있다. 이 때, 하나의 메시지에 캡처 이미지와 제2 코드를 포함하여 전송하거나, 각각의 메시지를 생성하여 전송할 수도 있다.In addition, in the cloud streaming server area 300 , the captured image and the second code on which the encoding 330 is performed may be streamed 350 to the terminal area 305 together. In this case, the captured image and the second code may be included in one message and transmitted, or each message may be generated and transmitted.

단말 영역(305)에서는 클라우드 스트리밍 서버 영역(300)으로부터 수신된 캡처 이미지와 제2 코드를 이용하여 어플리케이션 결과 화면을 생성할 수 있다. 즉, 제2 코드에 포함된 애니메이션 정보 및 캡처 이미지 정보에 기반하여 캡처 이미지에 애니메이션을 적용(360)할 수 있다. 이 때, 애니메이션 정보에는 애니메이션 타입, 애니메이션 적용 시간, 애니메이션 반복 횟수, 시작 좌표, 종료 좌표, 시작 사이즈 및 종료 사이즈와 같은 정보가 포함되어 있으므로, 캡처 이미지에 애니메이션을 정확하고 수월하게 적용하여 어플리케이션 결과 화면을 생성할 수 있다.The terminal area 305 may generate an application result screen using the captured image and the second code received from the cloud streaming server area 300 . That is, based on the animation information and the captured image information included in the second code, the animation may be applied (360) to the captured image. At this time, since the animation information includes information such as animation type, animation application time, animation repetition number, start coordinates, end coordinates, start size and end size, it is possible to accurately and easily apply the animation to the captured image to display the application result screen. can create

단말 영역(305)에서는 이와 같이 생성된 어플리케이션 결과 화면을 이미지 렌더링(370)을 수행하여 사용자에게 출력할 수 있다.The terminal area 305 may perform image rendering 370 on the generated application result screen to output to the user.

어플리케이션 서버 영역(310)에서는 사용자의 입력 신호를 수신하고, 입력 신호에 상응하는 출력 화면에 상응하는 어플리케이션 코드를 클라우드 스트리밍 서버에 전송한다.The application server area 310 receives the user's input signal, and transmits the application code corresponding to the output screen corresponding to the input signal to the cloud streaming server.

도 4는 본 발명의 일실시예에 따른 제1 코드 및 제2 코드를 나타낸 도면이다.4 is a view showing a first code and a second code according to an embodiment of the present invention.

도 4를 참조하면, 본 발명의 일실시예에 따른 제1 코드(410)는 이미지 영역 속성 정보(411) 및 애니메이션 코드(412)를 포함하고, 제2 코드(420)는 캡처 이미지 정보(421) 및 애니메이션 정보(422)를 포함한다.Referring to FIG. 4 , the first code 410 according to an embodiment of the present invention includes image region property information 411 and animation code 412 , and the second code 420 includes captured image information 421 . ) and animation information 422 .

제1 코드(410)는 웹 어플리케이션 서버로부터 수신된 어플리케이션 결과 화면에 상응하는 어플리케이션 코드일 수 있다. 따라서, 이미지 영역 속성 정보(411)는 어플리케이션 결과 화면에서 애니메이션이 적용된 부분에 대한 정보일 수 있으며, 애니메이션 코드(412)는 이미지 영역 속성 정보(411)에 해당하는 부분에 적용된 애니메이션 효과에 대한 코드일 수 있다.The first code 410 may be an application code corresponding to the application result screen received from the web application server. Accordingly, the image area property information 411 may be information on a part to which an animation is applied on the application result screen, and the animation code 412 may be a code for an animation effect applied to a part corresponding to the image area property information 411 . can

제2 코드(420)는 이미지 영역 속성 정보(411)를 이용하여 생성된 캡처 이미지 정보(421)와 애니메이션 코드(412)를 이용하여 생성된 애니메이션 정보(422)를 포함할 수 있다. 따라서, 제2 코드(420)를 사용자 단말로 전송하여 사용자 단말에서 제1 코드(410)에 상응하는 어플리케이션 결과 화면을 생성할 수 있도록 할 수 있다.The second code 420 may include captured image information 421 generated using the image region property information 411 and animation information 422 generated using the animation code 412 . Accordingly, by transmitting the second code 420 to the user terminal, the user terminal may generate an application result screen corresponding to the first code 410 .

도 5는 본 발명의 일실시예에 따른 코드 변환을 나타낸 도면이다.5 is a diagram illustrating code conversion according to an embodiment of the present invention.

도 5를 참조하면, 제1 코드(510)를 제2 코드(520)의 형태로 변환하는 것을 알 수 있다.Referring to FIG. 5 , it can be seen that the first code 510 is converted into the form of the second code 520 .

이 때, 제1 코드(510)는 애니메이션 용도로 사용되고 있는 jQuery 등의 라이브러리를 활용하여 작성된 것으로, 제1 코드(510)의 1번째 및 2번째 줄에 기재된 캡처할 영역의 속성과 4번째 및 5번째 줄에 기재된 애니메이션 코드를 포함하고 있다.At this time, the first code 510 is written using a library such as jQuery used for animation purposes, and the properties of the area to be captured described in the first and second lines of the first code 510 and the fourth and fifth It contains the animation code listed in the first line.

이 때, 제2 코드(520)에는 캡처 이미지 정보와 애니메이션 정보가 포함될 수 있다. 예를 들어, 제2 코드(520)의 7번째 내지 9번째 줄에 포함된 내용을 확인해보면, 애니메이션 타입은 'SlideUp', 적용 시간은 '3000', 반복 횟수는 '0', 시작 좌표는 '332, 300', 시작 사이즈는 '551, 191', 종료 좌표는 '332, 0', 종료 사이즈는 '551, 191'인 것을 알 수 있다. 이와 같이 캡처 이미지에 대한 좌표 정보와 애니메이션에 대한 타입, 적용 시간 및 반복 횟수와 같은 정보를 포함함으로써 사용자 단말에서 애니메이션을 포함하는 어플리케이션 결과 화면을 생성할 때 제2 코드(520)를 이용하여 생성할 수 있도록 할 수 있다.In this case, the second code 520 may include captured image information and animation information. For example, if you check the contents included in the 7th to 9th lines of the second code 520, the animation type is 'SlideUp', the application time is '3000', the number of repetitions is '0', and the start coordinate is ' It can be seen that 332, 300', the start size is '551, 191', the end coordinate is '332, 0', and the end size is '551, 191'. As such, by including information such as coordinate information for the captured image and animation type, application time, and number of repetitions, the second code 520 can be used to generate an application result screen including animation in the user terminal. can make it happen

이 때, 시작 좌표 '332, 300' 및 시작 사이즈 '551, 191'를 이용하여 애니메이션이 표시될 영역을 나타내는 픽셀 좌표 값을 알 수 있고, 이를 이용하여 캡처 이미지를 생성할 수 있다.In this case, a pixel coordinate value indicating an area in which an animation is to be displayed may be known using the start coordinates '332, 300' and the start sizes '551, 191', and a captured image may be generated using the pixel coordinate values.

예를 들어, 시작 좌표 '332, 300' 및 시작 사이즈 '551, 191'인 경우, '332, 300', '883, 300', '883, 491' 및 '332, 491'를 네 귀퉁이로 하는 영역이 애니메이션이 표시될 영역임을 알 수 있고, 해당 영역을 캡처하여 캡처 이미지를 생성할 수 있다.For example, if the starting coordinate is '332, 300' and the starting size is '551, 191', the four corners are '332, 300', '883, 300', '883, 491' and '332, 491'. You can see that the area is the area where the animation will be displayed, and you can capture that area to create a capture image.

도 6은 본 발명의 다른 실시예에 따른 코드 변환을 나타낸 도면이다.6 is a diagram illustrating code conversion according to another embodiment of the present invention.

도 6을 참조하면, 제1 코드(610)는 img1.png, img2.png가 포함된 test_1의 코드 영역으로 구성되어 있고, 제1 코드(610)의 6번째 및 7번째 줄과 같이 test_1의 코드 영역에 fadeout에 해당하는 애니메이션을 적용하고 있는 것을 알 수 있다.Referring to FIG. 6 , the first code 610 is composed of a code region of test_1 including img1.png and img2.png, and the code of test_1 like the 6th and 7th lines of the first code 610 . You can see that the animation corresponding to the fadeout is applied to the area.

이와 같은 제1 코드(610)를 제2 코드(620)로 변환할 때에는 캡처 이미지에 해당하는 img1.png와 img2.png를 포함하는 test_1 코드 영역을 이용하여 제2 코드(620)와 같이 생성할 수 있다.When converting the first code 610 into the second code 620, it is generated like the second code 620 using the test_1 code region including img1.png and img2.png corresponding to the captured image. can

이 때, 도 6과 같이 시작 좌표 '332, 540' 및 시작 사이즈 '551, 382'인 경우, '332, 540', '883, 540', '883, 922' 및 '332, 922'를 네 귀퉁이로 하는 영역이 애니메이션이 적용되는 test_1의 코드 영역일 수 있고, 해당 영역을 캡처하여 캡처 이미지를 생성할 수 있다.At this time, in the case of starting coordinates '332, 540' and starting sizes '551, 382' as shown in FIG. 6, '332, 540', '883, 540', '883, 922' and '332, 922' are four. A corner area may be a code area of test_1 to which animation is applied, and a captured image may be generated by capturing the area.

도 7은 본 발명의 일실시예에 따른 어플리케이션 코드 변환을 이용한 이미지 클라우드 스트리밍 서비스 방법을 나타낸 동작 흐름도이다.7 is an operation flowchart illustrating an image cloud streaming service method using application code conversion according to an embodiment of the present invention.

도 7을 참조하면, 본 발명의 일실시예에 따른 어플리케이션 코드 변환을 이용한 이미지 클라우드 스트리밍 서비스 방법은 웹 어플리케이션 서버로부터 어플리케이션 결과 화면에 상응하는 제1 코드를 수신한다(S700).Referring to FIG. 7 , the image cloud streaming service method using application code conversion according to an embodiment of the present invention receives a first code corresponding to an application result screen from a web application server (S700).

또한, 본 발명의 일실시예에 따른 어플리케이션 코드 변환을 이용한 이미지 클라우드 스트리밍 서비스 방법은 제1 코드를, 캡처 이미지 정보 및 애니메이션 정보를 포함하는 제2 코드로 변환한다(S705).In addition, the image cloud streaming service method using application code conversion according to an embodiment of the present invention converts a first code into a second code including captured image information and animation information (S705).

이 때, 단계(S705)는 제1 코드에 포함된 이미지 영역 속성 정보를 이용하여 캡처 이미지 정보를 생성하는 단계 및 제1 코드에 포함된 애니메이션 코드를 이용하여 애니메이션 정보를 생성하는 단계를 거쳐 캡처 이미지 정보 및 애니메이션 정보를 포함하는 제2 코드로 변환할 수 있다.At this time, in step S705, the captured image information is generated using the image region property information included in the first code and the animation information is generated using the animation code included in the first code. It can be converted into a second code including information and animation information.

또한, 본 발명의 일실시예에 따른 어플리케이션 코드 변환을 이용한 이미지 클라우드 스트리밍 서비스 방법은 제2 코드에 포함된 캡처 이미지 정보를 기반으로 캡처 이미지를 생성한다(S710).In addition, the image cloud streaming service method using the application code conversion according to an embodiment of the present invention generates a captured image based on the captured image information included in the second code (S710).

또한, 본 발명의 일실시예에 따른 어플리케이션 코드 변환을 이용한 이미지 클라우드 스트리밍 서비스 방법은 스틸 이미지 압축 기법을 이용하여 캡처 이미지를 스틸 이미지 인코딩한다(S720).In addition, the image cloud streaming service method using application code conversion according to an embodiment of the present invention encodes a captured image using a still image compression technique (S720).

또한, 본 발명의 일실시예에 따른 어플리케이션 코드 변환을 이용한 이미지 클라우드 스트리밍 서비스 방법은 사용자 단말에서 어플리케이션 결과 화면을 생성할 수 있도록 스틸 이미지 인코딩된 캡처 이미지 및 제2 코드를 사용자 단말로 전송하여 스틸 이미지 기반의 클라우드 스트리밍 서비스를 수행한다(S730).In addition, the image cloud streaming service method using application code conversion according to an embodiment of the present invention transmits a still image-encoded captured image and a second code to the user terminal so as to generate an application result screen in the user terminal, thereby providing a still image Based cloud streaming service is performed (S730).

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

이상에서와 같이 본 발명에 따른 클라우드 스트리밍 서비스 시스템, 어플리케이션 코드 변환을 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치는 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.As described above, in the cloud streaming service system according to the present invention, the image cloud streaming service method using the application code conversion, and the apparatus therefor, the configuration and method of the embodiments described above are not limitedly applicable, but the above Embodiments may be configured by selectively combining all or part of each embodiment so that various modifications can be made.

본 발명에 의하면 클라우드 스트리밍 서버가 어플리케이션 코드를 이용하여 변환코드를 생성하고, 변환코드의 실행 결과를 캡처하여 캡처 이미지를 생성하고, 변환한 코드를 캡처 이미지와 함께 사용자에게 전송함으로써 사용자 단말에서 어플리케이션 결과 화면을 생성할 수 있게끔 하여 스틸 이미지 기반의 클라우드 스트리밍 서비스를 수행할 수 있다. 나아가, 웹 어플리케이션 개발자들이 새로운 형식의 코드가 아닌 기존의 방식대로 원하는 형식의 어플리케이션 코드를 작성하여도 애니메이션 효과 적용을 사용자 단말에서 수행하기 위한 클라우드 스트리밍 서비스를 제공할 수 있으므로 서비스 제공자의 편의를 도울 수 있다.According to the present invention, the cloud streaming server generates a conversion code using the application code, captures the execution result of the conversion code to generate a captured image, and transmits the converted code to the user together with the captured image, so that the application result in the user terminal By making it possible to create a screen, it is possible to perform a still image-based cloud streaming service. Furthermore, even if web application developers write application code in the desired format in the existing way, rather than in a new format, it can provide a cloud streaming service for applying animation effects to the user terminal, so it can help the convenience of service providers. have.

110: 클라우드 스트리밍 서버 120-1~120-N: 단말 장치
130: 웹 어플리케이션 서버 140: 네트워크
210: 코드 수신부 220: 캡처 이미지 정보 생성부
230: 애니메이션 정보 생성부 240: 코드 변환부
250: 캡처부 260: 인코딩부
270: 센딩부 280: 저장부
300: 클라우드 스트리밍 서버 영역 305: 단말 영역
310: 어플리케이션 서버 영역 410, 510, 610: 제1 코드
420, 520, 620: 제2 코드
110: cloud streaming server 120-1 to 120-N: terminal device
130: web application server 140: network
210: code receiving unit 220: captured image information generating unit
230: animation information generation unit 240: code conversion unit
250: capture unit 260: encoding unit
270: sending unit 280: storage unit
300: cloud streaming server area 305: terminal area
310: application server area 410, 510, 610: first code
420, 520, 620: second code

Claims (16)

웹 어플리케이션 서버로부터 어플리케이션 결과 화면에 상응하는 제1 코드를 수신하는 코드 수신부;
상기 제1 코드를, 캡처 이미지 정보 및 애니메이션 정보를 포함하는 제2 코드로 변환하는 코드 변환부;
상기 제2 코드에 포함된 상기 캡처 이미지 정보를 기반으로 캡처 이미지를 생성하는 캡처부;
스틸 이미지 압축 기법을 이용하여 상기 캡처 이미지를 스틸 이미지 인코딩하는 인코딩부; 및
사용자 단말에서 상기 애니메이션 정보에 상응하는 애니메이션 효과를 적용하여 상기 어플리케이션 결과 화면을 생성할 수 있도록 스틸 이미지 인코딩된 상기 캡처 이미지 및 상기 제2 코드를 상기 사용자 단말로 전송하여 스틸 이미지 기반의 클라우드 스트리밍 서비스를 수행하는 센딩부
를 포함하고,
상기 캡처 이미지는
상기 애니메이션 효과가 적용되지 않은 상태로 캡처된 이미지에 상응하고,
상기 애니메이션 정보는
애니메이션 타입, 애니메이션 적용 시간, 애니메이션 반복 횟수, 애니메이션 시작 좌표, 애니메이션 종료 좌표, 시작 사이즈 및 종료 사이즈 중 적어도 하나를 포함하는 것을 특징으로 하는 클라우드 스트리밍 서버.
a code receiving unit for receiving a first code corresponding to the application result screen from the web application server;
a code conversion unit converting the first code into a second code including captured image information and animation information;
a capture unit generating a captured image based on the captured image information included in the second code;
an encoding unit for encoding the still image of the captured image using a still image compression technique; and
A still image-based cloud streaming service is provided by transmitting the still image-encoded captured image and the second code to the user terminal so that the user terminal can apply an animation effect corresponding to the animation information to generate the application result screen. Sending unit to perform
including,
The captured image is
Corresponding to the image captured without the animation effect applied,
The animation information is
Cloud streaming server, comprising at least one of animation type, animation application time, animation repetition number, animation start coordinates, animation end coordinates, start size, and end size.
청구항 1에 있어서,
상기 캡처부는
상기 어플리케이션 결과 화면 중, 상기 제2 코드에 포함된 상기 캡처 이미지 정보에 상응하는 영역을 캡처하여 상기 캡처 이미지를 생성하는 것을 특징으로 하는 클라우드 스트리밍 서버.
The method according to claim 1,
the capture unit
Cloud streaming server, characterized in that by capturing an area corresponding to the captured image information included in the second code of the application result screen to generate the captured image.
청구항 2에 있어서,
상기 클라우드 스트리밍 서버는
상기 제1 코드에 포함된 이미지 영역 속성 정보를 이용하여 상기 캡처 이미지 정보를 생성하는 캡처 이미지 정보 생성부; 및
상기 제1 코드에 포함된 애니메이션 코드를 이용하여 상기 애니메이션 정보를 생성하는 애니메이션 정보 생성부
를 더 포함하는 것을 특징으로 하는 클라우드 스트리밍 서버.
3. The method according to claim 2,
The cloud streaming server
a captured image information generator configured to generate the captured image information by using the image region attribute information included in the first code; and
An animation information generating unit for generating the animation information by using the animation code included in the first code
Cloud streaming server, characterized in that it further comprises.
삭제delete 삭제delete 삭제delete 삭제delete 웹 어플리케이션 서버로부터 어플리케이션 결과 화면에 상응하는 제1 코드를 수신하는 단계;
상기 제1 코드를, 캡처 이미지 정보 및 애니메이션 정보를 포함하는 제2 코드로 변환하는 단계;
상기 제2 코드에 포함된 상기 캡처 이미지 정보를 기반으로 캡처 이미지를 생성하는 단계;
스틸 이미지 압축 기법을 이용하여 상기 캡처 이미지를 스틸 이미지 인코딩하는 단계; 및
사용자 단말에서 상기 애니메이션 정보에 상응하는 애니메이션 효과를 적용하여 상기 어플리케이션 결과 화면을 생성할 수 있도록 스틸 이미지 인코딩된 상기 캡처 이미지 및 상기 제2 코드를 상기 사용자 단말로 전송하여 스틸 이미지 기반의 클라우드 스트리밍 서비스를 수행하는 단계
를 포함하고,
상기 캡처 이미지는
상기 애니메이션 효과가 적용되지 않은 상태로 캡처된 이미지에 상응하고,
상기 애니메이션 정보는
애니메이션 타입, 애니메이션 적용 시간, 애니메이션 반복 횟수, 애니메이션 시작 좌표, 애니메이션 종료 좌표, 시작 사이즈 및 종료 사이즈 중 적어도 하나를 포함하는 것을 특징으로 하는 어플리케이션 코드 변환을 이용한 이미지 클라우드 스트리밍 서비스 방법.
Receiving a first code corresponding to the application result screen from the web application server;
converting the first code into a second code including captured image information and animation information;
generating a captured image based on the captured image information included in the second code;
encoding the captured image as a still image using a still image compression technique; and
A still image-based cloud streaming service is provided by transmitting the still image-encoded captured image and the second code to the user terminal so that the user terminal can apply an animation effect corresponding to the animation information to generate the application result screen. Steps to perform
including,
The captured image is
Corresponding to the image captured without the animation effect applied,
The animation information is
An image cloud streaming service method using application code conversion, characterized in that it includes at least one of an animation type, an animation application time, an animation repetition number, an animation start coordinate, an animation end coordinate, a start size, and an end size.
삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 웹 어플리케이션 서버로부터 어플리케이션 결과 화면에 상응하는 제1 코드를 수신하고, 상기 제1 코드를, 캡처 이미지 정보 및 애니메이션 정보를 포함하는 제2 코드로 변환하고, 상기 제2 코드에 포함된 상기 캡처 이미지 정보를 기반으로 캡처 이미지를 생성하고, 스틸 이미지 압축 기법을 이용하여 상기 캡처 이미지를 스틸 이미지 인코딩하고, 사용자 단말에서 상기 애니메이션 정보에 상응하는 애니메이션 효과를 적용하여 상기 어플리케이션 결과 화면을 생성할 수 있도록 스틸 이미지 인코딩된 상기 캡처 이미지 및 상기 제2 코드를 상기 사용자 단말로 전송하여 스틸 이미지 기반의 클라우드 스트리밍 서비스를 수행하는 클라우드 스트리밍 서버; 및
상기 클라우드 스트리밍 서버로부터 스틸 이미지 인코딩된 상기 캡처 이미지 및 상기 제2 코드를 수신하여, 상기 스틸 이미지 기반의 클라우드 스트리밍 서비스에 상응하는 어플리케이션 실행 결과 화면을 제공하는 사용자 단말
을 포함하고,
상기 캡처 이미지는
상기 애니메이션 효과가 적용되지 않은 상태로 캡처된 이미지에 상응하고,
상기 애니메이션 정보는
애니메이션 타입, 애니메이션 적용 시간, 애니메이션 반복 횟수, 애니메이션 시작 좌표, 애니메이션 종료 좌표, 시작 사이즈 및 종료 사이즈 중 적어도 하나를 포함하는 것을 특징으로 하는 클라우드 스트리밍 시스템.
Receive a first code corresponding to the application result screen from the web application server, convert the first code into a second code including captured image information and animation information, and the captured image information included in the second code to generate a captured image based on the still image, encode the captured image using a still image compression technique, and apply an animation effect corresponding to the animation information in the user terminal to generate the application result screen. a cloud streaming server that transmits the encoded captured image and the second code to the user terminal to perform a still image-based cloud streaming service; and
User terminal receiving the still image-encoded captured image and the second code from the cloud streaming server, and providing an application execution result screen corresponding to the still image-based cloud streaming service
including,
The captured image is
Corresponding to the image captured without the animation effect applied,
The animation information is
Cloud streaming system, characterized in that it includes at least one of animation type, animation application time, animation repetition number, animation start coordinates, animation end coordinates, start size, and end size.
KR1020150005690A 2015-01-13 2015-01-13 System for cloud streaming service, method of image cloud streaming service using application code conversion and apparatus for the same KR102273142B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150005690A KR102273142B1 (en) 2015-01-13 2015-01-13 System for cloud streaming service, method of image cloud streaming service using application code conversion and apparatus for the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150005690A KR102273142B1 (en) 2015-01-13 2015-01-13 System for cloud streaming service, method of image cloud streaming service using application code conversion and apparatus for the same

Publications (2)

Publication Number Publication Date
KR20160087129A KR20160087129A (en) 2016-07-21
KR102273142B1 true KR102273142B1 (en) 2021-07-05

Family

ID=56680430

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150005690A KR102273142B1 (en) 2015-01-13 2015-01-13 System for cloud streaming service, method of image cloud streaming service using application code conversion and apparatus for the same

Country Status (1)

Country Link
KR (1) KR102273142B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080313545A1 (en) * 2007-06-13 2008-12-18 Microsoft Corporation Systems and methods for providing desktop or application remoting to a web browser
JP2013027021A (en) 2011-07-26 2013-02-04 Canon Inc Omnidirectional imaging device and omnidirectional imaging method
WO2016076680A1 (en) 2014-11-14 2016-05-19 Samsung Electronics Co., Ltd. Coding of 360 degree videos using region adaptive smoothing

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NZ585909A (en) 2007-12-05 2013-08-30 Ol2 Inc System and method for storing program code and data within an application hosting center
KR101480186B1 (en) * 2007-12-10 2015-01-07 삼성전자주식회사 System and method for generating and playing image file including two dimensional image and three dimensional image
KR101491591B1 (en) * 2012-11-05 2015-02-09 주식회사 케이티 Virtualization server providing virtualization service of web application and method for transmitting data for providing the same

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080313545A1 (en) * 2007-06-13 2008-12-18 Microsoft Corporation Systems and methods for providing desktop or application remoting to a web browser
JP2013027021A (en) 2011-07-26 2013-02-04 Canon Inc Omnidirectional imaging device and omnidirectional imaging method
WO2016076680A1 (en) 2014-11-14 2016-05-19 Samsung Electronics Co., Ltd. Coding of 360 degree videos using region adaptive smoothing

Also Published As

Publication number Publication date
KR20160087129A (en) 2016-07-21

Similar Documents

Publication Publication Date Title
KR102384174B1 (en) System for cloud streaming service, method of cloud streaming service using still image compression technique and apparatus for the same
KR102247892B1 (en) System for cloud streaming service, method of image cloud streaming service using application code and apparatus for the same
KR102271721B1 (en) System for cloud streaming service, method of image cloud streaming service considering terminal performance and apparatus for the same
KR102273142B1 (en) System for cloud streaming service, method of image cloud streaming service using application code conversion and apparatus for the same
US10547878B2 (en) Hybrid transmission protocol
KR102313516B1 (en) System for cloud streaming service, method of message-based image cloud streaming service and apparatus for the same
KR102313533B1 (en) System for cloud streaming service, method of image cloud streaming service considering full screen transition and apparatus for the same
KR102313532B1 (en) System for cloud streaming service, method of image cloud streaming service using animation message 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
KR102272357B1 (en) System for cloud streaming service, method of image cloud streaming service using drawing layer separation and apparatus for the same
KR102225610B1 (en) System for cloud streaming service, method of message-based image cloud streaming service 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
KR102306889B1 (en) System for cloud streaming service, method of image cloud streaming service using data substitution and apparatus for the same
KR102225608B1 (en) System for cloud streaming service, method of image cloud streaming service using animation message and apparatus for the same
KR102225609B1 (en) System for cloud streaming service, method of image cloud streaming service considering full screen transition and apparatus for the same
CN111435995B (en) Method, device and system for generating dynamic picture
KR102354269B1 (en) System for cloud streaming service, method of image cloud streaming service using property of scene region and method using the same
KR20170025140A (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
KR20160026561A (en) System for cloud streaming service, method of cloud streaming service to save system resources and apparatus for the same

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant