KR102247892B1 - 클라우드 스트리밍 서비스 시스템, 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치 - Google Patents

클라우드 스트리밍 서비스 시스템, 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치 Download PDF

Info

Publication number
KR102247892B1
KR102247892B1 KR1020140170423A KR20140170423A KR102247892B1 KR 102247892 B1 KR102247892 B1 KR 102247892B1 KR 1020140170423 A KR1020140170423 A KR 1020140170423A KR 20140170423 A KR20140170423 A KR 20140170423A KR 102247892 B1 KR102247892 B1 KR 102247892B1
Authority
KR
South Korea
Prior art keywords
code
animation
image
cloud streaming
information
Prior art date
Application number
KR1020140170423A
Other languages
English (en)
Other versions
KR20160066274A (ko
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 KR1020140170423A priority Critical patent/KR102247892B1/ko
Priority to CN201580064613.4A priority patent/CN107005731B/zh
Priority to EP15864490.6A priority patent/EP3229478B1/en
Priority to JP2017529725A priority patent/JP6454013B2/ja
Priority to PCT/KR2015/002073 priority patent/WO2016088940A1/ko
Priority to US15/532,377 priority patent/US10659826B2/en
Priority to PCT/KR2015/007263 priority patent/WO2016035995A1/ko
Publication of KR20160066274A publication Critical patent/KR20160066274A/ko
Application granted granted Critical
Publication of KR102247892B1 publication Critical patent/KR102247892B1/ko

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/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2353Processing of additional data, e.g. scrambling of additional data or processing content descriptors specifically adapted to content descriptors, e.g. coding, compressing or processing of metadata
    • 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/23439Processing 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 for generating different versions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/802D [Two Dimensional] animation, e.g. using sprites
    • 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
    • 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/23602Multiplexing isochronously with the video sync, e.g. according to bit-parallel or bit-serial interface formats, as SDI
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • 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
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • 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
    • H04N21/4318Generation of visual interfaces for content selection or interaction; Content or additional data rendering by altering the content in the rendering process, e.g. blanking, blurring or masking an image region
    • 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/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47217End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6125Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8146Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics
    • H04N21/8153Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics comprising still images, e.g. texture, background image
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8545Content authoring for generating interactive applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Library & Information Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Processing Or Creating Images (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

클라우드 스트리밍 서비스 시스템, 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치가 개시된다. 웹 어플리케이션 서버로부터 어플리케이션 결과 화면에 상응하는 제1 코드를 수신하고, 제1 코드에 포함된 이미지 영역 속성 정보를 이용하여 캡처 이미지를 생성하고, 스틸 이미지 압축 기법을 이용하여 캡처 이미지를 스틸 이미지 인코딩하고, 사용자 단말에서 어플리케이션 결과 화면을 생성할 수 있도록 스틸 이미지 인코딩된 캡처 이미지 및 제1 코드를 변환하여 애니메이션 정보를 포함하도록 생성한 제2 코드를 사용자 단말로 전송하여 스틸 이미지 기반의 클라우드 스트리밍 서비스를 수행할 수 있다. 클라우드 스트리밍 서버에서 불필요한 렌더링을 수행하지 않아도 되고, 애니메이션 처리를 수행하지 않아 서버에서 구동 가능한 웹 컨테이너의 수를 늘리는 것이 가능하다.

Description

클라우드 스트리밍 서비스 시스템, 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치 {SYSTEM FOR CLOUD STREAMING SERVICE, METHOD OF IMAGE CLOUD STREAMING SERVICE USING APPLICATION CODE AND APPARATUS FOR THE SAME}
본 발명은 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 기술에 관한 것으로, 특히 어플리케이션 코드를 이용하여 캡처 이미지를 생성하고, 변환한 코드를 캡처 이미지와 함께 사용자에게 전송함으로써 사용자 단말에서 애니메이션 효과가 적용된 어플리케이션 결과 화면을 생성할 수 있는 클라우드 스트리밍 서비스 시스템, 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치에 관한 것이다.
최근 인터넷의 발달로 인해 개인용 모바일 통신기기를 이용한 통신의 속도가 급격하게 향상되고, 이를 기반으로 원격지 컴퓨터 접속을 통해 대용량의 데이터를 다운로드 및 업로드하거나, 원격지 컴퓨터에 로컬 로그인하는 것과 같은 인터넷 환경이 조성되었다. 또한, 스마트폰과 같은 이동통신 단말에서 구동되는 어플리케이션이 다양하게 개발되면서, 비교적 낮은 성능의 사용자 단말에서 높은 성능을 필요로 하는 어플리케이션을 구동하기 위한 가상화 기술들이 많이 제안되고 있다. 그 중에서 어플리케이션을 서버에서 구동시키고 구동화면은 비디오 인코딩(Encoding)을 통해 압축하여 클라이언트로 전송하고, 클라이언트는 전송된 비디오를 재생하여 마치 자신의 단말에서 어플리케이션이 구동되는 것과 같은 효과를 내는 화면 가상화 기반의 클라우드 스트리밍 서비스가 각광받고 있는 추세이다.
이와 같은 클라우드 스트리밍 서비스는 기본적으로 비디오 코덱 기반의 클라우드 스트리밍 기법이 적용되지만, 메뉴 디스플레이와 같은 서비스를 제공하는 경우에도 불필요하게 화면 전체를 캡처하고 비디오 코덱을 이용하여 동작하게 되어 시스템 전체적으로 비효율적인 측면이 존재한다.
따라서, 사용자 요청에 의해 실행된 어플리케이션의 실행 결과 화면 중 필요한 최소 부분만 렌더링하고, 애니메이션과 같은 동적인 효과가 적용된 경우에도 불필요하게 많은 화면을 캡처하지 않도록 애니메이션과 관련된 정보를 이미지와는 별도로 사용자의 셋탑박스로 전송함으로써 셋탑박스에서 애니메이션 효과가 적용된 서비스 화면을 생성할 수 있는 기술이 절실하게 대두되고 있다.
한국 공개 특허 제10-2010-0113503호, 2010년 10월 21일 공개 (명칭: 어플리케이션 호스팅 센터 내에 프로그램 코드 및 데이터를 저장하기 위한 시스템 및 방법)
본 발명의 목적은, 클라우드 스트리밍 서버에서 캡처할 이미지를 생성하기 위해 프레임의 차이를 비교하는 과정을 생략하고 코드단에서 이미지를 획득함으로써 보다 향상된 클라우드 스트리밍 서비스를 제공하는 것이다.
또한, 본 발명의 목적은 어플리케이션 결과 화면을 처리할 때 불필요한 애니메이션 처리를 수행하지 않도록 하여 서버에서 구동 가능한 웹 컨테이너의 수를 증가시키는 것이다.
또한, 본 발명의 목적은 웹 어플리케이션 개발자들이 새로운 형식의 코드가 아닌 기존의 방식대로 원하는 형식의 어플리케이션 코드를 작성하여도 애니메이션 효과 적용을 사용자 단말에서 수행하기 위한 클라우드 스트리밍 서비스를 제공할 수 있도록 하는 것이다.
상기한 목적을 달성하기 위한 본 발명에 따른 클라우드 스트리밍 서버는, 웹 어플리케이션 서버로부터 어플리케이션 결과 화면에 상응하는 제1 코드를 수신하는 코드 수신부; 상기 제1 코드에 포함된 이미지 영역 속성 정보를 이용하여 캡처 이미지를 생성하는 캡처부; 스틸 이미지 압축 기법을 이용하여 상기 캡처 이미지를 스틸 이미지 인코딩하는 인코딩부; 및 사용자 단말에서 상기 어플리케이션 결과 화면을 생성할 수 있도록 스틸 이미지 인코딩된 상기 캡처 이미지 및 상기 제1 코드를 변환하여 애니메이션 정보를 포함하도록 생성한 제2 코드를 상기 사용자 단말로 전송하여 스틸 이미지 기반의 클라우드 스트리밍 서비스를 수행하는 센딩부를 포함한다.
이 때, 캡처부는 상기 제1 코드에 포함된 상기 이미지 영역 속성 정보에 상응하는 입력 정보에 대해 렌더링을 수행하여 상기 캡처 이미지를 생성할 수 있다.
이 때, 클라우드 스트리밍 서버는 상기 제1 코드에 포함된 상기 이미지 영역 속성 정보를 이용하여 캡처 이미지 정보를 생성하는 캡처 이미지 정보 생성부; 상기 제1 코드에 포함된 애니메이션 코드를 이용하여 상기 애니메이션 정보를 생성하는 애니메이션 정보 생성부; 및 상기 제1 코드를, 상기 캡처 이미지 정보 및 애니메이션 정보를 포함하는 상기 제2 코드로 변환하는 코드 변환부를 더 포함할 수 있다.
이 때, 캡처부는 상기 어플리케이션 결과 화면 중 일부에 대해서만 상기 렌더링을 수행하여 상기 캡처 이미지를 생성할 수 있다.
이 때, 제2 코드는 애니메이션 타입, 애니메이션 적용 시간, 애니메이션 반복 횟수, 시작 좌표, 종료 좌표, 시작 사이즈 및 종료 사이즈 중 적어도 하나 이상에 상응하는 상기 애니메이션 정보를 포함할 수 있다.
이 때, 제2 코드는 상기 애니메이션 코드를 포함하지 않을 수 있다.
이 때, 인코딩부는 PNG(portable network graphics), 팔렛티드 PNG(portable network graphics) 및 JPEG(joint photography experts group) 중 어느 하나에 상응하는 스틸 이미지 압축 기법을 이용하여 상기 캡처 이미지를 스틸 이미지 인코딩할 수 있다.
또한, 본 발명에 따른 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법은, 웹 어플리케이션 서버로부터 어플리케이션 결과 화면에 상응하는 제1 코드를 수신하는 단계; 상기 제1 코드에 포함된 이미지 영역 속성 정보를 이용하여 캡처 이미지를 생성하는 단계; 스틸 이미지 압축 기법을 이용하여 상기 캡처 이미지를 스틸 이미지 인코딩하는 단계; 및 사용자 단말에서 상기 어플리케이션 결과 화면을 생성할 수 있도록 스틸 이미지 인코딩된 상기 캡처 이미지 및 상기 제1 코드를 변환하여 애니메이션 정보를 포함하도록 생성된 제2 코드를 상기 사용자 단말로 전송하여 스틸 이미지 기반의 클라우드 스트리밍 서비스를 수행하는 단계를 포함한다.
이 때, 캡처 이미지를 생성하는 단계는 상기 제1 코드에 포함된 상기 이미지 영역 속성 정보에 상응하는 입력 정보에 대해 렌더링을 수행하여 상기 캡처 이미지를 생성할 수 있다.
이 때, 클라우드 스트리밍 서비스 방법은 상기 제1 코드에 포함된 상기 이미지 영역 속성 정보를 이용하여 캡처 이미지 정보를 생성하는 단계; 상기 제1 코드에 포함된 애니메이션 코드를 이용하여 상기 애니메이션 정보를 생성하는 단계; 및 상기 제1 코드를, 상기 캡처 이미지 정보 및 애니메이션 정보를 포함하는 상기 제2 코드로 변환하는 단계를 포함할 수 있다.
이 때, 캡처 이미지를 생성하는 단계는 상기 어플리케이션 결과 화면 중 일부에 대해서만 상기 렌더링을 수행하여 상기 캡처 이미지를 생성할 수 있다.
이 때, 제2 코드는 애니메이션 타입, 애니메이션 적용 시간, 애니메이션 반복 횟수, 시작 좌표, 종료 좌표, 시작 사이즈 및 종료 사이즈 중 적어도 하나 이상에 상응하는 상기 애니메이션 정보를 포함할 수 있다.
이 때, 제2 코드는 상기 애니메이션 코드를 포함하지 않을 수 있다.
이 때, 스틸 이미지 인코딩하는 단계는 PNG(portable network graphics), 팔렛티드 PNG(portable network graphics) 및 JPEG(joint photography experts group) 중 어느 하나에 상응하는 스틸 이미지 압축 기법을 이용하여 상기 캡처 이미지를 스틸 이미지 인코딩할 수 있다.
또한, 본 발명의 과제 해결을 위한 또 다른 수단으로써, 상술한 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램을 제공한다.
또한, 본 발명에 따른 클라우드 스트리밍 서비스 시스템은 웹 어플리케이션 서버로부터 어플리케이션 결과 화면에 상응하는 제1 코드를 수신하고, 상기 제1 코드에 포함된 이미지 영역 속성 정보를 이용하여 캡처 이미지를 생성하고, 스틸 이미지 압축 기법을 이용하여 스틸 이미지 인코딩된 상기 캡처 이미지 및 상기 제1 코드를 변환하여 애니메이션 정보를 포함하도록 생성된 제2 코드를 사용자 단말로 전송하여 스틸 이미지 기반의 클라우드 스트리밍 서비스를 수행하는 클라우드 스트리밍 서버; 및 상기 클라우드 스트리밍 서버로부터 상기 스틸 이미지 기반의 클라우드 스트리밍 서비스에 상응하는 어플리케이션 실행 결과 화면을 수신하는 단말을 포함한다.
본 발명에 따르면, 클라우드 스트리밍 서버에서 캡처할 이미지를 생성하기 위해 프레임의 차이를 비교하는 과정을 생략하고 코드단에서 이미지를 획득함으로써 보다 향상된 클라우드 스트리밍 서비스를 제공할 수 있다.
또한, 본 발명은 어플리케이션 결과 화면을 처리할 때 불필요한 애니메이션 처리를 수행하지 않도록 하여 서버에서 구동 가능한 웹 컨테이너의 수를 증가시킬 수 있다.
또한, 본 발명은 웹 어플리케이션 개발자들이 새로운 형식의 코드가 아닌 기존의 방식대로 원하는 형식의 어플리케이션 코드를 작성하여도 애니메이션 효과 적용을 사용자 단말에서 수행하기 위한 클라우드 스트리밍 서비스를 제공할 수 있다.
도 1은 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 시스템을 나타낸 블록도이다.
도 2는 도 1에 도시된 클라우드 스트리밍 서버의 일 예를 나타낸 블록도이다.
도 3은 본 발명의 일실시예에 따른 스틸 이미지 기반의 클라우드 스트리밍 서비스 수행을 나타낸 도면이다.
도 4는 본 발명의 일실시예에 따른 제1 코드 및 제2 코드를 나타낸 도면이다.
도 5는 본 발명의 일실시예에 따른 코드 변환을 나타낸 도면이다.
도 6은 본 발명의 다른 실시예에 따른 코드 변환을 나타낸 도면이다.
도 7은 본 발명의 일실시예에 따른 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법을 나타낸 동작 흐름도이다.
도 8은 본 발명의 일실시예에 따른 코드 변환과정을 나타낸 동작 흐름도이다.
이하 본 발명의 바람직한 실시예를 첨부한 도면을 참조하여 상세히 설명한다. 다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.
이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다. 또한 제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하기 위해 사용하는 것으로, 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 뿐, 상기 구성요소들을 한정하기 위해 사용되지 않는다.
도 1은 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 시스템을 나타낸 블록도이다.
도 1을 참조하면 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 시스템은 웹 어플리케이션 서버(105), 클라우드 스트리밍 서버(110), 단말 장치들(120-1, ..., 120-N) 및 네트워크(130)를 포함한다.
웹 어플리케이션 서버(105)는 단말 장치들(120-1, ..., 120-N)로부터의 요청을 전달받아 처리하는 서버이다. 웹 어플리케이션 서버(105)에서 단말 장치들(120-1, ..., 120-N)로부터 수신된 요청을 모두 처리하기보다 웹 컨테이너들을 통해 웹 어플리케이션 서버(105)의 기능을 구조적으로 분리하여 처리할 수 있기 때문에 단말 장치들(120-1, ..., 120-N)로부터의 서비스 요청이 많을수록 웹 어플리케이션 서버(105)를 이용하여 서비스하는 방법이 효과적일 수 있다. 예를 들어, BEA사의 WEB LOGIC, IBM사의 Web Spere, T-max사의 JEUS, Tomcat, RedHot사의 Jboss 등이 웹 어플리케이션 서버(105)에 해당할 수 있다.
이러한 어플리케이션 서버(105)는 단말 장치들(120-1, ..., 120-N)로부터 수신된 서비스 요청에 기반하여 어플리케이션 결과 화면에 상응하는 어플리케이션 코드를 클라우드 스트리밍 서버(105)로 전송할 수 있다.
클라우드 스트리밍 서버(110)는 웹 어플리케이션 서버(105)로부터 어플리케이션 결과 화면에 상응하는 제1 코드를 수신한다.
또한, 클라우드 스트리밍 서버(110)는 제1 코드에 포함된 이미지 영역 속성 정보를 이용하여 캡처 이미지 정보를 생성할 수 있다.
또한, 클라우드 스트리밍 서버(110)는 제1 코드에 포함된 애니메이션 코드를 이용하여 애니메이션 정보를 생성할 수 있다.
또한, 클라우드 스트리밍 서버(110)는 제1 코드를, 캡처 이미지 정보 및 애니메이션 정보를 포함하는 제2 코드로 변환할 수 있다. 이 때, 제2 코드는 애니메이션 타입, 애니메이션 적용 시간, 애니메이션 반복 횟수, 시작 좌표, 종료 좌표, 시작 사이즈 및 종료 사이즈 중 적어도 하나 이상에 상응하는 애니메이션 정보를 포함할 수 있다. 이 때, 제2 코드는 애니메이션 코드를 포함하지 않을 수 있다.
또한, 클라우드 스트리밍 서버(110)는 제1 코드에 포함된 이미지 영역 속성 정보를 이용하여 캡처 이미지를 생성한다. 이 때, 제1 코드에 포함된 이미지 영역 속성 정보에 상응하는 입력 정보에 대해 렌더링을 수행하여 캡처 이미지를 생성할 수 있다. 이 때, 어플리케이션 결과 화면 중 일부에 대해서만 렌더링을 수행하여 캡처 이미지를 생성할 수 있다.
또한, 클라우드 스트리밍 서버(110)는 스틸 이미지 압축 기법을 이용하여 캡처 이미지를 스틸 이미지 인코딩한다. 이 때, PNG(portable network graphics), 팔렛티드 PNG(portable network graphics) 및 JPEG(joint photography experts group) 중 어느 하나에 상응하는 스틸 이미지 압축 기법을 이용하여 캡처 이미지를 스틸 이미지 인코딩할 수 있다.
또한, 클라우드 스트리밍 서버(110)는 단말 장치들(120-1, ..., 120-N)에서 어플리케이션 결과 화면을 생성할 수 있도록 스틸 이미지 인코딩된 캡처 이미지 및 제1 코드를 변환하여 애니메이션 정보를 포함하도록 생성한 제2 코드를 사용자 단말로 전송하여 스틸 이미지 기반의 클라우드 스트리밍 서비스를 수행한다.
단말 장치들(120-1, ..., 120-N)은 클라우드 스트리밍 서버(110)로부터 클라우드 스트리밍 서비스에 상응하는 어플리케이션 실행 결과 화면을 수신하여 사용자에게 제공한다.
단말 장치들(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) 단말일 수 있다.
네트워크(130)는 클라우드 스트리밍 서버(110)및 단말 장치들(120-1, ..., 120-N) 사이에 데이터를 전달하는 통로를 제공하는 것으로서, 기존에 이용되는 네트워크 및 향후 개발 가능한 네트워크를 모두 포괄하는 개념이다. 예를 들어, 네트워크(130)는 한정된 지역 내에서 각종 정보장치들의 통신을 제공하는 유무선근거리 통신망, 이동체 상호 간 및 이동체와 이동체 외부와의 통신을 제공하는 이동통신망, 위성을 이용해 지구국과 지구국간 통신을 제공하는 위성통신망이거나 유무선 통신망 중에서 어느 하나이거나, 둘 이상의 결합으로 이루어질 수 있다. 한편, 네트워크(130)의 전송 방식 표준은, 기존의 전송 방식 표준에 한정되는 것은 아니며, 향후 개발될 모든 전송 방식 표준을 포함할 수 있다. 또한, 도 1에서 클라우드 스트리밍 서버(110)와 단말 장치들(120-1, ..., 120-N) 사이에 사용되는 네트워크는 단말 장치들(120-1, ..., 120-N) 상호간에 사용되는 네트워크와 상이한 것일 수도 있고, 동일한 것일 수도 있다.
도 2는 도 1에 도시된 클라우드 스트리밍 서버의 일 예를 나타낸 블록도이다.
도 2를 참조하면, 도 1에 도시된 클라우드 스트리밍 서버는 코드 수신부(210), 캡처 이미지 정보 생성부(220), 애니메이션 정보 생성부(230), 코드 변환부(240), 캡처부(250), 인코딩부(260), 센딩부(270) 및 저장부(280)를 포함한다.
코드 수신부(210)는 웹 어플리케이션 서버로부터 어플리케이션 결과 화면에 상응하는 제1 코드를 수신한다. 이와 같은 제1 코드에는 어플리케이션을 실행할 때 적용된 애니메이션 효과에 대한 애니메이션 정보 및 애니메이션 효과가 적용된 이미지들에 대한 이미지 영역 속성 정보 등을 포함할 수 있다. 또한, 웹 어플리케이션 개발자들이 기존에 사용하던 방식으로 작성되어 있을 수 있다. 예를 들어, 제1 코드는 애니메이션 용도로 널리 사용되고 있는 jQuery 등의 라이브러리를 활용하여 작성될 수 있다.
캡처 이미지 정보 생성부(220)는 제1 코드에 포함된 이미지 영역 속성 정보를 이용하여 캡처 이미지 정보를 생성한다. 예를 들어, 이미지 영역 속성 정보는 캡처될 이미지에 대한 좌표 정보들일 수 있다.
애니메이션 정보 생성부(230)는 제1 코드에 포함된 애니메이션 코드를 이용하여 애니메이션 정보를 생성한다. 제2 코드에 포함된 애니메이션 코드는 애니메이션을 실행시키기 위한 코드로써, 해당 코드를 실행시키는 경우 불필요한 캡처를 수행해야 하는 경우가 발생할 수 있다. 따라서, 애니메이션 코드의 내용을 확인하고, 추출할 수 있는 정보를 이용하여 애니메이션 정보를 생성할 수 있다.
코드 변환부(240)는 제1 코드를, 캡처 이미지 정보 및 애니메이션 정보를 포함하는 제2 코드로 변환한다. 따라서, 제2 코드를 확인하면 캡처 영역에 대한 정보 및 애니메이션에 대한 상세한 정보를 파악할 수 있다.
이 때, 제2 코드는 애니메이션 타입, 애니메이션 적용 시간, 애니메이션 반복 횟수, 시작 좌표, 종료 좌표, 시작 사이즈 및 종료 사이즈 중 적어도 하나 이상에 상응하는 애니메이션 정보를 포함할 수 있다. 예를 들어, 제2 코드 상에서 애니메이션 타입은 'effect type', 애니메이션 적용 시간은 'duration', 애니메이션 반복 횟수는 'isRepeat', 시작 좌표는 'start X, start Y', 종료 좌표는 'end X, end Y', 시작 사이즈는 'start W, start H' 및 종료 사이즈는 'end W, end H'로 표시될 수 있다.
이 때, 제2 코드는 애니메이션 코드를 포함하지 않을 수 있다.
캡처부(250)는 제1 코드에 포함된 이미지 영역 속성 정보를 이용하여 캡처 이미지를 생성한다. 이 때, 이미지 영역 속성 정보에 상응하는 이미지를 캡처하는 과정을 수행하지 않고 바로 리딩하여 획득할 수 있다. 예를 들어, 어플리케이션 결과 화면을 렌더링하고, 렌더링된 화면들 중 이미지 영역 속성 정보에 상응하는 부분을 캡처하는 경우에는 렌더링이나 캡처를 수행하기 위해 서버의 리소스를 사용하게 되므로 비효율적일 수 있다. 따라서, 이미지 영역 속성 정보에 상응하는 이미지를 웹 어플리케이션 서버로부터 수신된 정보들 중에서 리딩하여 생성할 수 있다.
이 때, 제1 코드에 포함된 이미지 영역 속성 정보에 상응하는 입력 정보에 대해 렌더링을 수행하여 캡처 이미지를 생성할 수 있다. 예를 들어, 이미지 영역 속성 정보를 이용하여 제1 코드 중 캡처 이미지에 해당하는 부분만을 렌더링하여 캡처 이미지를 생성할 수 있다.
이 때, 어플리케이션 결과 화면 중 일부에 대해서만 렌더링을 수행하여 캡처 이미지를 생성할 수 있다. 예를 들어, 일반적인 렌더링 수행의 경우에는 어플리케이션 결과 화면의 전체를 렌더링하고, 각 영역들의 차이점을 비교하는 연산과정을 수행하여 캡처할 부분을 검출할 수 있다. 그러나 이와 같은 여러가지 과정을 수행함으로써 클라우드 스트리밍 서버(110)의 리소스가 소비되므로, 보다 많은 서비스 요청을 동시에 처리하는데 어려움이 발생할 수 있다. 따라서, 전체 어플리케이션 결과 화면 중 캡처 이미지가 포함된 일부 영역에 대해서만 렌더링을 수행하여 캡처 이미지를 생성할 수 있다.
인코딩부(260)는 스틸 이미지 압축 기법을 이용하여 캡처 이미지를 스틸 이미지 인코딩한다.
이 때, PNG(portable network graphics), 팔렛티드 PNG(portable network graphics) 및 JPEG(joint photography experts group) 중 어느 하나에 상응하는 스틸 이미지 압축 기법을 이용하여 캡처 이미지를 스틸 이미지 인코딩할 수 있다.
PNG 스틸 이미지 압축 기법은 인코딩 시 이미지의 화질은 좋으나 데이터의 크기가 커져서 전송 망의 대역폭이 낮은 경우에는 전송 속도가 저하될 수 있다.
팔렛티드 PNG 스틸 이미지 압축 기법은 인코딩 시 이미지의 데이터 크기가 줄어들어 전송 속도는 보장할 수 있지만, 8비트로 색상을 표현하기 때문에 이미지 화질에 열화를 가져올 수 있다.
JPEG 스틸 이미지 압축 기법은 압축 효율이 좋아서 인코딩 시 전송 데이터 량을 대폭 줄일 수 있으나, 압축 효율이 큰 만큼 인코딩 및 디코딩을 수행할 때 시스템 부하를 많이 발생시킬 수 있다.
센딩부(270)는 사용자 단말에서 어플리케이션 결과 화면을 생성할 수 있도록 스틸 이미지 인코딩된 캡처 이미지 및 제1 코드를 변환하여 애니메이션 정보를 포함하도록 생성한 제2 코드를 사용자 단말로 전송하여 스틸 이미지 기반의 클라우드 스트리밍 서비스를 수행한다. 예를 들어, 클라우드 스트리밍 서버(110)에서 어플리케이션 결과 화면을 완벽하게 생성하여 스트리밍 할 수도 있지만, 상기와 같은 방법으로 사용자 단말에서 어플리케이션 결과 화면을 생성하도록 전송함으로써 클라우드 스트리밍 서버(110)에서 발생하는 부하를 현저하게 감소시킬 수 있다. 이와 같이 클라우드 스트리밍 서버(110)의 부하가 감소되면 클라우드 스트리밍 서버(110)에서 동시에 처리할 수 있는 서비스의 수가 늘어나므로 보다 많은 사용자들이 동시에 서비스를 제공받을 수 있는 효과가 있다.
도 3은 본 발명의 일실시예에 따른 스틸 이미지 기반의 클라우드 스트리밍 서비스 수행을 나타낸 도면이다.
도 3을 참조하면, 본 발명의 일실시예에 따른 스틸 이미지 기반의 클라우드 스트리밍 서비스 수행 과정은 크게 클라우드 스트리밍 서버(300)와 사용자 단말 (305)에서 수행되는 과정으로 분류하여 설명할 수 있다.
클라우드 스트리밍 서버(300)는 어플리케이션 서버에서 사용자 요청에 따라 생성한 어플리케이션 결과 화면(310)에 상응하는 어플리케이션 코드 수신(320)을 수행할 수 있다. 이 때, 어플리케이션 코드는 제1 코드로서, 이미지 영역 속성 정보와 애니메이션 코드 등을 포함할 수 있다.
이 후, 어플리케이션 코드에 포함된 이미지 영역 속성 정보를 이용하여 캡처 이미지를 생성하고, 생성한 캡처 이미지를 인코딩(330)할 수 있다. 이 때, 캡처 이미지는 이미지 영역 속성 정보에 포함된 이미지의 타입에 따라 바로 리딩하여 획득하거나, 이미지 영역 속성 정보를 이용한 최소 렌더링을 수행하여 획득할 수 있다. 예를 들어, PNG타입의 이미지와 같은 경우 바로 리딩하여 인코딩을 수행할 수 있다.
또한, 어플리케이션 코드에 포함된 이미지 영역 속성 정보 및 어플리케이션 코드를 각각 이용하여 캡처 이미지 정보 및 애니메이션 정보를 생성할 수 있다.
이 후, 어플리케이션 코드를 변환하여 캡처 이미지 정보와 애니메이션 정보를 포함하는 변환코드 생성(340)을 수행할 수 있다. 이 때, 변환코드는 제2 코드로서, 애니메이션 코드가 아닌 애니메이션의 정보를 포함할 수 있다.
클라우드 스트리밍 서버(300)는 인코딩(330)된 캡처 이미지와 변환코드인 제2 코드를 함께 사용자 단말(305)로 센딩(350)할 수 있다. 이 때, 하나의 메시지에 캡처 이미지와 변환코드를 포함하여 전송하거나, 캡처 이미지와 변환코드 각각에 대한 메시지를 생성하여 전송할 수도 있다.
사용자 단말(305)에서는 클라우드 스트리밍 서버(300)로부터 수신된 캡처 이미지와 변환코드를 이용하여 어플리케이션 결과 화면을 생성할 수 있다. 즉, 변환코드에 포함된 애니메이션 정보 및 캡처 이미지 정보에 기반하여 캡처 이미지에 애니메이션을 적용(360)할 수 있다. 이 때, 애니메이션 정보에는 애니메이션 타입, 애니메이션 적용 시간, 애니메이션 반복 횟수, 시작 좌표, 종료 좌표, 시작 사이즈 및 종료 사이즈와 같은 정보가 포함되어 있으므로, 캡처 이미지에 애니메이션을 정확하고 수월하게 적용하여 어플리케이션 결과 화면을 생성할 수 있다.
사용자 단말(305)에서는 이와 같이 생성된 어플리케이션 결과 화면을 이미지 렌더링(370)하여 사용자에게 출력할 수 있다.
도 4는 본 발명의 일실시예에 따른 제1 코드 및 제2 코드를 나타낸 도면이다.
도 4를 참조하면, 본 발명의 일실시예에 따른 제1 코드(410)는 이미지 영역 속성 정보(411) 및 애니메이션 코드(412)를 포함하고, 제2 코드(420)는 캡처 이미지 정보(421) 및 애니메이션 정보(422)를 포함한다.
제1 코드(410)는 웹 어플리케이션 서버로부터 수신된 어플리케이션 결과 화면에 상응하는 어플리케이션 코드일 수 있다. 따라서, 이미지 영역 속성 정보(411)는 어플리케이션 결과 화면에서 애니메이션이 적용된 부분에 대한 정보일 수 있으며, 애니메이션 코드(412)는 이미지 영역 속성 정보(411)에 해당하는 부분에 적용된 애니메이션 효과에 대한 코드일 수 있다.
제2 코드(420)는 이미지 영역 속성 정보(411)를 이용하여 생성된 캡처 이미지 정보(421)와 애니메이션 코드(412)를 이용하여 생성된 애니메이션 정보(422)를 포함할 수 있다. 따라서, 제2 코드(420)를 사용자 단말로 전송하여 사용자 단말에서 제1 코드(410)에 상응하는 어플리케이션 결과 화면을 생성할 수 있도록 할 수 있다.
도 5는 본 발명의 일실시예에 따른 코드 변환을 나타낸 도면이다.
도 5를 참조하면, 제1 코드(510)를 제2 코드(520)의 형태로 변환하는 것을 알 수 있다.
이 때, 제1 코드(510)는 애니메이션 용도로 사용되고 있는 jQuery 등의 라이브러리를 활용하여 작성된 것으로, 제1 코드(510)의 1번째 및 2번째 줄에 기재된 캡처할 영역의 속성과 4번째 및 5번째 줄에 기재된 애니메이션 코드를 포함하고 있다. 즉, 제1 코드(510)를 해석하면 'img1.png'에 SlideUp 애니메이션을 적용하라는 내용일 수 있다. 이와 같은 내용을 이용하여 캡처 이미지 정보와 애니메이션 정보가 포함되도록 제1 코드(510)를 제2 코드(520)로 변환할 수 있다.
예를 들어, 제2 코드(520)의 7번째 내지 9번째 줄에 포함된 내용을 확인해보면, 애니메이션 타입은 'SlideUp', 적용 시간은 '3000', 반복 횟수는 '0', 시작 좌표는 '332,300', 시작 사이즈는 '551, 191', 종료 좌표는 '332, 0', 종료 사이즈는 '551, 191'인 것을 알 수 있다. 이와 같이 캡처 이미지에 대한 좌표 정보와 애니메이션에 대한 타입, 적용 시간 및 반복 횟수와 같은 정보를 포함함으로써 사용자 단말에서 애니메이션을 포함하는 어플리케이션 결과 화면을 생성할 때 제2 코드(520)를 이용하여 생성할 수 있도록 코드를 변환할 수 있다.
이 때, 제2 코드(520)와 함께 사용자 단말로 전달할 캡처 이미지는 제1 코드(510)에서 바로 추출할 수 있다. 예를 들어, 제1 코드(510)에서 'img1.png'를 추출하여 캡처 이미지로 저장하고, 생성된 제2 코드(520)와 함께 캡처 이미지를 사용자 단말로 전달할 수 있다.
도 6은 본 발명의 다른 실시예에 따른 코드 변환을 나타낸 도면이다.
도 6을 참조하면, 제1 코드(610)는 img1.png, img2.png가 포함된 test_1의 코드 영역, img3.png, img4.png가 포함된 test_2의 코드 영역 및 img5.png, img6.png가 포함된 test_3의 코드 영역으로 구성되어 있고, 제1 코드(610)의 23번째 및 24번째 줄과 같이 test_1의 코드 영역에 fadeout에 해당하는 애니메이션을 적용하고 있는 것을 알 수 있다.
이와 같은 제1 코드(610)를 제2 코드(620)로 변환할 때에는 캡처 이미지에 해당하는 img1.png와 img2.png를 포함하는 test_1 코드 영역만을 이용하여 제2 코드(620)와 같이 생성할 수 있다.
이 때, 'div id="test_1"'만을 바로 이미지로 만들어서 캡처 이미지를 생성할 수 있다. 이와 같이 바로 캡처 이미지를 생성함으로써, 어플리케이션 결과 화면을 캡처하는 과정이나 다른 영역과 캡처된 화면을 비교하여 연산하는 과정을 생략할 수 있으므로 클라우드 스트리밍 서버의 리소스를 절약할 수 있다.
이 때, 제2 코드(620)와 함께 사용자 단말로 전달할 캡처 이미지는 제1 코드(610)의 부분 코드를 렌더링한 결과를 이미지로 저장해서 획득할 수 있다. 예를 들어, 제1 코드(610)에서는 5번째 줄부터 8번째 줄까지를 렌더링하여 'img1.png' 및 'img2.png'에 상응하는 캡처 이미지를 획득할 수 있고, 획득한 캡처 이미지를 제2 코드(620)와 함께 사용자 단말로 전달할 수 있다.
도 7은 본 발명의 일실시예에 따른 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법을 나타낸 동작 흐름도이다.
도 7을 참조하면, 본 발명의 일실시예에 따른 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법은 웹 어플리케이션 서버로부터 어플리케이션 결과 화면에 상응하는 제1 코드를 수신한다(S710). 이와 같은 제1 코드에는 어플리케이션을 실행할 때 적용된 애니메이션 효과에 대한 애니메이션 정보 및 애니메이션 효과가 적용된 이미지들에 대한 이미지 영역 속성 정보 등을 포함할 수 있다. 또한, 웹 어플리케이션 개발자들이 기존에 사용하던 방식으로 작성되어 있을 수 있다. 예를 들어, 제1 코드는 애니메이션 용도로 널리 사용되고 있는 jQuery 등의 라이브러리를 활용하여 작성될 수 있다.
또한, 본 발명의 일실시예에 따른 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법은 제1 코드에 포함된 이미지 영역 속성 정보를 이용하여 캡처 이미지를 생성한다(S720). 이 때, 이미지 영역 속성 정보에 상응하는 이미지를 캡처하는 과정을 수행하지 않고 바로 리딩하여 획득할 수 있다. 예를 들어, 어플리케이션 결과 화면을 렌더링하고, 렌더링된 화면들 중 이미지 영역 속성 정보에 상응하는 부분을 캡처하는 경우에는 렌더링이나 캡처를 수행하기 위해 서버의 리소스를 사용하게 되므로 비효율적일 수 있다. 따라서, 이미지 영역 속성 정보에 상응하는 이미지를 웹 어플리케이션 서버로부터 수신된 정보들 중에서 리딩하여 생성할 수 있다.
이 때, 제1 코드에 포함된 이미지 영역 속성 정보에 상응하는 입력 정보에 대해 렌더링을 수행하여 캡처 이미지를 생성할 수 있다. 예를 들어, 이미지 영역 속성 정보를 이용하여 제1 코드 중 캡처 이미지에 해당하는 부분만을 렌더링하여 캡처 이미지를 생성할 수 있다.
이 때, 어플리케이션 결과 화면 중 일부에 대해서만 렌더링을 수행하여 캡처 이미지를 생성할 수 있다. 예를 들어, 일반적인 렌더링 수행의 경우에는 어플리케이션 결과 화면의 전체를 렌더링하고, 각 영역들의 차이점을 비교하는 연산과정을 수행하여 캡처할 부분을 검출할 수 있다. 그러나 이와 같은 여러가지 과정을 수행함으로써 클라우드 스트리밍 서버의 리소스가 소비되므로, 보다 많은 서비스 요청을 동시에 처리하는데 어려움이 발생할 수 있다. 따라서, 전체 어플리케이션 결과 화면 중 캡처 이미지가 포함된 일부 영역에 대해서만 렌더링을 수행하여 캡처 이미지를 생성할 수 있다.
또한, 본 발명의 일실시예에 따른 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법은 스틸 이미지 압축 기법을 이용하여 캡처 이미지를 스틸 이미지 인코딩한다(S730).
이 때, PNG(portable network graphics), 팔렛티드 PNG(portable network graphics) 및 JPEG(joint photography experts group) 중 어느 하나에 상응하는 스틸 이미지 압축 기법을 이용하여 캡처 이미지를 스틸 이미지 인코딩할 수 있다.
PNG 스틸 이미지 압축 기법은 인코딩 시 이미지의 화질은 좋으나 데이터의 크기가 커져서 전송 망의 대역폭이 낮은 경우에는 전송 속도가 저하될 수 있다.
팔렛티드 PNG 스틸 이미지 압축 기법은 인코딩 시 이미지의 데이터 크기가 줄어들어 전송 속도는 보장할 수 있지만, 8비트로 색상을 표현하기 때문에 이미지 화질에 열화를 가져올 수 있다.
JPEG 스틸 이미지 압축 기법은 압축 효율이 좋아서 인코딩 시 전송 데이터 량을 대폭 줄일 수 있으나, 압축 효율이 큰 만큼 인코딩 및 디코딩을 수행할 때 시스템 부하를 많이 발생시킬 수 있다.
또한, 본 발명의 일실시예에 따른 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법은 사용자 단말에서 어플리케이션 결과 화면을 생성할 수 있도록 스틸 이미지 인코딩된 캡처 이미지 및 제1 코드를 변환하여 애니메이션 정보를 포함하도록 생성한 제2 코드를 사용자 단말로 전송하여 스틸 이미지 기반의 클라우드 스트리밍 서비스를 수행한다(S740). 예를 들어, 클라우드 스트리밍 서버에서 어플리케이션 결과 화면을 완벽하게 생성하여 스트리밍 할 수도 있지만, 상기와 같은 방법으로 사용자 단말에서 어플리케이션 결과 화면을 생성하도록 전송함으로써 클라우드 스트리밍 서버에서 발생하는 부하를 현저하게 감소시킬 수 있다. 이와 같이 클라우드 스트리밍 서버의 부하가 감소되면 클라우드 스트리밍 서버에서 동시에 처리할 수 있는 서비스의 수가 늘어나므로 보다 많은 사용자들이 동시에 서비스를 제공받을 수 있는 효과가 있다.
이 때, 제2 코드는 애니메이션 타입, 애니메이션 적용 시간, 애니메이션 반복 횟수, 시작 좌표, 종료 좌표, 시작 사이즈 및 종료 사이즈 중 적어도 하나 이상에 상응하는 애니메이션 정보를 포함할 수 있다. 예를 들어, 제2 코드 상에서 애니메이션 타입은 'effect type', 애니메이션 적용 시간은 'duration', 애니메이션 반복 횟수는 'isRepeat', 시작 좌표는 'start X, start Y', 종료 좌표는 'end X, end Y', 시작 사이즈는 'start W, start H' 및 종료 사이즈는 'end W, end H'로 표시될 수 있다.
이 때, 제2 코드는 애니메이션 코드를 포함하지 않을 수 있다.
또한, 도 7에는 도시하지 아니하였으나, 본 발명의 일실시예에 따른 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법은 제1 코드에 포함된 이미지 영역 속성 정보를 이용하여 캡처 이미지 정보를 생성한다. 예를 들어, 이미지 영역 속성 정보는 캡처될 이미지에 대한 좌표 정보들일 수 있다.
또한, 도 7에는 도시하지 아니하였으나, 본 발명의 일실시예에 따른 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법은 제1 코드에 포함된 애니메이션 코드를 이용하여 애니메이션 정보를 생성한다. 제2 코드에 포함된 애니메이션 코드는 애니메이션을 실행시키기 위한 코드로써, 해당 코드를 실행시키는 경우 불필요한 캡처를 수행해야 하는 경우가 발생할 수 있다. 따라서, 애니메이션 코드의 내용을 확인하고, 추출할 수 있는 정보를 이용하여 애니메이션 정보를 생성할 수 있다.
또한, 도 7에는 도시하지 아니하였으나, 본 발명의 일실시예에 따른 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법은 제1 코드를, 캡처 이미지 정보 및 애니메이션 정보를 포함하는 제2 코드로 변환한다. 따라서, 제2 코드를 확인하면 캡처 영역에 대한 정보 및 애니메이션에 대한 상세한 정보를 파악할 수 있다.
도 8은 본 발명의 일실시예에 따른 코드 변환과정을 나타낸 동작 흐름도이다.
도 8을 참조하면, 본 발명의 일실시예에 따른 코드 변환과정은 웹 어플리케이션 서버로부터 수신한 제1 코드에 포함된 이미지 영역 속성 정보를 이용하여 캡처 이미지 정보를 생성한다(S810).
이 때, 제1 코드는 어플리케이션을 실행할 때 적용된 애니메이션 효과에 대한 애니메이션 코드 및 애니메이션 효과가 적용된 이미지들에 대한 이미지 영역 속성 정보 등을 포함할 수 있다. 또한, 제1 코드는 웹 어플리케이션 개발자들이 기존에 사용하던 방식으로 작성되어 있을 수 있다. 예를 들어, 제1 코드는 애니메이션 용도로 널리 사용되고 있는 jQuery 등의 라이브러리를 활용하여 작성될 수 있다.
또한, 본 발명의 일실시예에 따른 코드 변환과정은 제1 코드에 포함된 애니메이션 코드를 이용하여 애니메이션 정보를 생성한다(S820). 이 때, 제1 코드에 포함된 애니메이션 코드는 애니메이션을 실행시키기 위한 코드로써, 해당 코드를 실행시키는 경우 불필요한 캡처를 수행해야 하는 경우가 발생할 수 있다. 따라서, 애니메이션 코드의 내용을 이용하여 사용자 단말로 전송하기 위한 애니메이션 정보를 생성할 수 있다.
또한, 본 발명의 일실시예에 따른 코드 변환과정은 제1 코드를, 캡처 이미지 정보 및 애니메이션 정보를 포함하는 제2 코드로 변환한다(S830). 따라서, 사용자 단말에서 제2 코드를 이용하여 캡처 이미지에 애니메이션을 적용한 어플리케이션 화면을 생성할 수 있다.
이 때, 제2 코드는 애니메이션 타입, 애니메이션 적용 시간, 애니메이션 반복 횟수, 시작 좌표, 종료 좌표, 시작 사이즈 및 종료 사이즈 중 적어도 하나 이상에 상응하는 애니메이션 정보를 포함할 수 있다. 예를 들어, 애니메이션 타입은 'effect type', 애니메이션 적용 시간은 'duration', 애니메이션 반복 횟수는 'isRepeat', 시작 좌표는 'start X, start Y', 종료 좌표는 'end X, end Y', 시작 사이즈는 'start W, start H' 및 종료 사이즈는 'end W, end H'와 같은 식별자로 기재되어 각각의 식별자에 값을 할당하여 애니메이션 정보를 나타낼 수 있다. 또한, 제2 코드는 애니메이션 코드를 포함하지 않을 수 있다.
본 발명에 따른 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 모든 형태의 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서와 같이 본 발명에 따른 클라우드 스트리밍 서비스 시스템, 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치는 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.
본 발명에 의하면 웹 어플리케이션 서버로부터 어플리케이션 결과 화면에 상응하는 제1 코드를 수신하고, 제1 코드에 포함된 이미지 영역 속성 정보를 이용하여 캡처 이미지를 생성하고, 스틸 이미지 압축 기법을 이용하여 캡처 이미지를 인코딩하고, 사용자 단말에서 어플리케이션 결과 화면을 생성할 수 있도록 스틸 이미지 인코딩된 캡처 이미지 및 제1 코드를 변환하여 애니메이션 정보를 포함하도록 생성한 제2 코드를 사용자 단말로 전송하여 스틸 이미지 기반의 클라우드 스트리밍 서비스를 수행할 수 있다. 나아가, 웹 어플리케이션 개발자들이 새로운 형식의 코드가 아닌 기존의 방식대로 원하는 형식의 어플리케이션 코드를 작성하여도 애니메이션 효과 적용을 사용자 단말에서 수행하기 위한 클라우드 스트리밍 서비스를 제공할 수 있으므로 서비스 제공자의 편의를 도울 수 있다.
105: 웹 어플리케이션 서버 110, 300: 클라우드 스트리밍 서버
120-1~120-N: 단말 장치 130: 네트워크
210: 코드 수신부 220: 캡처 이미지 정보 생성부
230: 애니메이션 정보 생성부 240: 코드 변환부
250: 캡처부 260: 인코딩부
270: 센딩부 280: 저장부
305: 사용자 단말 410, 510, 610: 제1 코드
420, 520, 620: 제2 코드

Claims (16)

  1. 웹 어플리케이션 서버로부터 어플리케이션 결과 화면에 상응하는 제1 코드를 수신하는 코드 수신부;
    상기 제1 코드에 포함된 이미지 영역 속성 정보를 이용하여 캡처 이미지를 생성하는 캡처부;
    스틸 이미지 압축 기법을 이용하여 상기 캡처 이미지를 스틸 이미지 인코딩하는 인코딩부; 및
    사용자 단말에서 상기 어플리케이션 결과 화면을 생성할 수 있도록 스틸 이미지 인코딩된 상기 캡처 이미지 및 상기 제1 코드를 변환하여 애니메이션 정보를 포함하도록 생성한 제2 코드를 상기 사용자 단말로 전송하여 스틸 이미지 기반의 클라우드 스트리밍 서비스를 수행하는 센딩부
    를 포함하고,
    상기 캡처 이미지는
    상기 애니메이션 정보에 상응하는 애니메이션 효과가 적용되지 않은 이미지에 상응하고,
    상기 애니메이션 정보는
    상기 사용자 단말이 상기 캡처 이미지에 상기 애니메이션 효과를 적용할 수 있도록 애니메이션 타입, 애니메이션 적용 시간, 애니메이션 반복 횟수, 시작 좌표, 종료 좌표, 시작 사이즈 및 종료 사이즈 중 적어도 하나를 포함하는 것을 특징으로 하는 클라우드 스트리밍 서버.
  2. 청구항 1에 있어서,
    상기 캡처부는
    상기 제1 코드에 포함된 상기 이미지 영역 속성 정보에 상응하는 입력 정보에 대해 렌더링을 수행하여 상기 캡처 이미지를 생성하는 것을 특징으로 하는 클라우드 스트리밍 서버.
  3. 청구항 2에 있어서,
    상기 클라우드 스트리밍 서버는
    상기 제1 코드에 포함된 상기 이미지 영역 속성 정보를 이용하여 캡처 이미지 정보를 생성하는 캡처 이미지 정보 생성부
    상기 제1 코드에 포함된 애니메이션 코드를 이용하여 상기 애니메이션 정보를 생성하는 애니메이션 정보 생성부; 및
    상기 제1 코드를, 상기 캡처 이미지 정보 및 애니메이션 정보를 포함하는 상기 제2 코드로 변환하는 코드 변환부
    를 더 포함하는 것을 특징으로 하는 클라우드 스트리밍 서버.
  4. 청구항 3에 있어서,
    상기 캡처부는
    상기 어플리케이션 결과 화면 중 일부에 대해서만 상기 렌더링을 수행하여 상기 캡처 이미지를 생성하는 것을 특징으로 하는 클라우드 스트리밍 서버.
  5. 삭제
  6. 청구항 3에 있어서,
    상기 제2 코드는
    상기 애니메이션 코드를 포함하지 않는 것을 특징으로 하는 클라우드 스트리밍 서버.
  7. 삭제
  8. 웹 어플리케이션 서버로부터 어플리케이션 결과 화면에 상응하는 제1 코드를 수신하는 단계;
    상기 제1 코드에 포함된 이미지 영역 속성 정보를 이용하여 캡처 이미지를 생성하는 단계;
    스틸 이미지 압축 기법을 이용하여 상기 캡처 이미지를 스틸 이미지 인코딩하는 단계; 및
    사용자 단말에서 상기 어플리케이션 결과 화면을 생성할 수 있도록 스틸 이미지 인코딩된 상기 캡처 이미지 및 상기 제1 코드를 변환하여 애니메이션 정보를 포함하도록 생성된 제2 코드를 상기 사용자 단말로 전송하여 스틸 이미지 기반의 클라우드 스트리밍 서비스를 수행하는 단계
    를 포함하고,
    상기 캡처 이미지는
    상기 애니메이션 정보에 상응하는 애니메이션 효과가 적용되지 않은 이미지에 상응하고,
    상기 애니메이션 정보는
    상기 사용자 단말이 상기 캡처 이미지에 상기 애니메이션 효과를 적용할 수 있도록 애니메이션 타입, 애니메이션 적용 시간, 애니메이션 반복 횟수, 시작 좌표, 종료 좌표, 시작 사이즈 및 종료 사이즈 중 적어도 하나를 포함하는 것을 특징으로 하는 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법.
  9. 삭제
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 웹 어플리케이션 서버로부터 어플리케이션 결과 화면에 상응하는 제1 코드를 수신하고, 상기 제1 코드에 포함된 이미지 영역 속성 정보를 이용하여 캡처 이미지를 생성하고, 스틸 이미지 압축 기법을 이용하여 스틸 이미지 인코딩된 상기 캡처 이미지 및 상기 제1 코드를 변환하여 애니메이션 정보를 포함하도록 생성된 제2 코드를 사용자 단말로 전송하여 스틸 이미지 기반의 클라우드 스트리밍 서비스를 수행하는 클라우드 스트리밍 서버; 및
    상기 클라우드 스트리밍 서버로부터 상기 스틸 이미지 기반의 클라우드 스트리밍 서비스에 상응하는 어플리케이션 실행 결과 화면을 수신하는 사용자 단말
    을 포함하고,
    상기 캡처 이미지는
    상기 애니메이션 정보에 상응하는 애니메이션 효과가 적용되지 않은 이미지에 상응하고,
    상기 애니메이션 정보는
    상기 사용자 단말이 상기 캡처 이미지에 상기 애니메이션 효과를 적용할 수 있도록 애니메이션 타입, 애니메이션 적용 시간, 애니메이션 반복 횟수, 시작 좌표, 종료 좌표, 시작 사이즈 및 종료 사이즈 중 적어도 하나를 포함하는 것을 특징으로 하는 클라우드 스트리밍 시스템.
KR1020140170423A 2014-09-01 2014-12-02 클라우드 스트리밍 서비스 시스템, 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치 KR102247892B1 (ko)

Priority Applications (7)

Application Number Priority Date Filing Date Title
KR1020140170423A KR102247892B1 (ko) 2014-12-02 2014-12-02 클라우드 스트리밍 서비스 시스템, 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
CN201580064613.4A CN107005731B (zh) 2014-12-02 2015-03-04 使用应用代码的图像云端流媒体服务方法、服务器及系统
EP15864490.6A EP3229478B1 (en) 2014-12-02 2015-03-04 Cloud streaming service system, image cloud streaming service method using application code, and device therefor
JP2017529725A JP6454013B2 (ja) 2014-12-02 2015-03-04 クラウドストリーミングサービスシステム、アプリケーションコードを利用したイメージクラウドストリーミングサービス方法及びそのための装置
PCT/KR2015/002073 WO2016088940A1 (ko) 2014-12-02 2015-03-04 클라우드 스트리밍 서비스 시스템, 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
US15/532,377 US10659826B2 (en) 2014-12-02 2015-03-04 Cloud streaming service system, image cloud streaming service method using application code, and device therefor
PCT/KR2015/007263 WO2016035995A1 (ko) 2014-09-01 2015-07-13 클라우드 스트리밍 서비스 시스템, 시스템 자원을 절약하기 위한 클라우드 스트리밍 서비스 방법 및 이를 위한 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140170423A KR102247892B1 (ko) 2014-12-02 2014-12-02 클라우드 스트리밍 서비스 시스템, 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치

Publications (2)

Publication Number Publication Date
KR20160066274A KR20160066274A (ko) 2016-06-10
KR102247892B1 true KR102247892B1 (ko) 2021-05-04

Family

ID=56091870

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140170423A KR102247892B1 (ko) 2014-09-01 2014-12-02 클라우드 스트리밍 서비스 시스템, 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치

Country Status (6)

Country Link
US (1) US10659826B2 (ko)
EP (1) EP3229478B1 (ko)
JP (1) JP6454013B2 (ko)
KR (1) KR102247892B1 (ko)
CN (1) CN107005731B (ko)
WO (1) WO2016088940A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11086472B1 (en) * 2018-06-26 2021-08-10 Facebook, Inc. Applying a visual effect to a region of a content item responsive to detecting a user action in conjunction with presenting the content item at a client device
CN113168337A (zh) * 2018-11-23 2021-07-23 耐瑞唯信有限公司 用于管理在客户端设备上生成和渲染用户界面的技术

Citations (2)

* 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
US20130155075A1 (en) * 2011-12-15 2013-06-20 Fujitsu Limited Information processing device, image transmission method, and recording medium

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7752256B2 (en) * 2002-01-16 2010-07-06 Laszlo Systems, Inc. Presentation server
KR100676621B1 (ko) 2004-08-30 2007-01-30 에스케이 텔레콤주식회사 이동통신 단말기의 브라우저에서 지원되지 않는 이미지 및태그 처리를 위한 웹 문서 변환 방법
JP2006236323A (ja) 2005-01-25 2006-09-07 Sony Corp アプリケーション提供システム、サーバ、クライアントおよびアプリケーション提供方法
JP4735636B2 (ja) 2007-11-01 2011-07-27 カシオ計算機株式会社 携帯端末、及び、合成画像表示プログラム
TWI459215B (zh) 2007-12-05 2014-11-01 Ol2 Inc 用於將程式碼及資料儲存於應用程式主機代管中心內之系統及方法
US8732749B2 (en) 2009-04-16 2014-05-20 Guest Tek Interactive Entertainment Ltd. Virtual desktop services
US9229734B2 (en) * 2010-01-15 2016-01-05 Guest Tek Interactive Entertainment Ltd. Hospitality media system employing virtual user interfaces
CN102238151B (zh) * 2010-04-27 2014-07-16 中兴通讯股份有限公司 一种基于Flash的媒体流生成系统及方法
KR101711009B1 (ko) * 2010-08-26 2017-03-02 삼성전자주식회사 영상 저장장치, 영상 재생장치, 영상 저장방법, 영상 제공방법, 저장매체 및 촬영장치
US8700699B2 (en) * 2011-04-15 2014-04-15 Microsoft Corporation Using a proxy server for a mobile browser
US9300705B2 (en) * 2011-05-11 2016-03-29 Blue Jeans Network Methods and systems for interfacing heterogeneous endpoints and web-based media sources in a video conference
JP5800569B2 (ja) * 2011-05-13 2015-10-28 任天堂株式会社 情報処理システム、情報処理方法、情報処理プログラム
US8749559B2 (en) * 2011-06-03 2014-06-10 Microsoft Corporation Mesh sequence file format
CN102314346A (zh) * 2011-07-15 2012-01-11 杭州典能科技有限公司 一种用户界面产品的开发方法
CN102413234A (zh) * 2011-10-31 2012-04-11 青岛海信移动通信技术股份有限公司 移动终端媒体资源加载方法和移动终端
US10409445B2 (en) 2012-01-09 2019-09-10 Activevideo Networks, Inc. Rendering of an interactive lean-backward user interface on a television
US9465882B2 (en) * 2012-07-19 2016-10-11 Adobe Systems Incorporated Systems and methods for efficient storage of content and animation
JP5959353B2 (ja) * 2012-07-23 2016-08-02 三菱電機株式会社 遠隔表示装置
KR101491591B1 (ko) * 2012-11-05 2015-02-09 주식회사 케이티 웹앱 가상화 서비스를 제공하는 가상화 서버 및 웹앱 가상화 서비스 제공을 위한 데이터 전송방법
CN103095685A (zh) * 2012-12-18 2013-05-08 上海量明科技发展有限公司 即时通信中复合图标的录制方法、客户端及系统
US9507781B2 (en) * 2013-04-30 2016-11-29 Jpmorgan Chase Bank, N.A. System and method for mobile presentation processing

Patent Citations (2)

* 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
US20130155075A1 (en) * 2011-12-15 2013-06-20 Fujitsu Limited Information processing device, image transmission method, and recording medium

Also Published As

Publication number Publication date
WO2016088940A1 (ko) 2016-06-09
US20180115790A1 (en) 2018-04-26
EP3229478A1 (en) 2017-10-11
CN107005731B (zh) 2020-07-24
JP2018504805A (ja) 2018-02-15
EP3229478A4 (en) 2017-12-20
US10659826B2 (en) 2020-05-19
EP3229478B1 (en) 2021-05-26
JP6454013B2 (ja) 2019-01-16
CN107005731A (zh) 2017-08-01
KR20160066274A (ko) 2016-06-10

Similar Documents

Publication Publication Date Title
KR101473257B1 (ko) 유저 인터페이스 데이터를 포함하는 컨텐츠 스트림을 재생하는 장치 및 방법
KR102247892B1 (ko) 클라우드 스트리밍 서비스 시스템, 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
KR102199270B1 (ko) 클라우드 스트리밍 서비스 시스템, 스틸 이미지 기반 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
KR102271721B1 (ko) 클라우드 스트리밍 서비스 시스템, 단말 성능을 고려한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
US10547878B2 (en) Hybrid transmission protocol
KR102273142B1 (ko) 클라우드 스트리밍 서비스 시스템, 어플리케이션 코드 변환을 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
KR102313516B1 (ko) 클라우드 스트리밍 서비스 시스템, 메시지 기반 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
KR102247887B1 (ko) 클라우드 스트리밍 서비스 시스템, 소스 정보를 이용한 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
KR102313533B1 (ko) 클라우드 스트리밍 서비스 시스템, 전체 화면 변화를 고려한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
KR102313532B1 (ko) 클라우드 스트리밍 서비스 시스템, 애니메이션 메시지를 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
KR102225610B1 (ko) 클라우드 스트리밍 서비스 시스템, 메시지 기반 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
KR20160115566A (ko) 클라우드 스트리밍 서비스 시스템, 이미지와 텍스트의 분리를 통한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
KR102273143B1 (ko) 클라우드 스트리밍 서비스 시스템, 스틸 이미지 기반 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
KR102225609B1 (ko) 클라우드 스트리밍 서비스 시스템, 전체 화면 변화를 고려한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
KR102272357B1 (ko) 클라우드 스트리밍 서비스 시스템, 드로잉 레이어 분리를 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
KR102225608B1 (ko) 클라우드 스트리밍 서비스 시스템, 애니메이션 메시지를 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
KR102306889B1 (ko) 클라우드 스트리밍 서비스 시스템, 데이터 치환을 통한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
CN111435995B (zh) 用于生成动态图片的方法、装置和系统
KR102247657B1 (ko) 클라우드 스트리밍 서비스 시스템, 인코딩 처리 유닛의 작업 분리를 통한 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
KR20170025140A (ko) 클라우드 스트리밍 서비스 시스템, os 메시지를 이용한 변화 영역 탐지 기반의 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
KR20170000670A (ko) 클라우드 스트리밍 서비스 시스템, 씬 영역 특성을 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치

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