KR20160071815A - 중요도에 따른 원격 화면 전송 시스템 및 그 방법 - Google Patents

중요도에 따른 원격 화면 전송 시스템 및 그 방법 Download PDF

Info

Publication number
KR20160071815A
KR20160071815A KR1020140179440A KR20140179440A KR20160071815A KR 20160071815 A KR20160071815 A KR 20160071815A KR 1020140179440 A KR1020140179440 A KR 1020140179440A KR 20140179440 A KR20140179440 A KR 20140179440A KR 20160071815 A KR20160071815 A KR 20160071815A
Authority
KR
South Korea
Prior art keywords
screen
importance
quality
current
change
Prior art date
Application number
KR1020140179440A
Other languages
English (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 KR1020140179440A priority Critical patent/KR20160071815A/ko
Publication of KR20160071815A publication Critical patent/KR20160071815A/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/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
    • 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/234309Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo
    • 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
    • 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/2355Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving reformatting operations of additional data, e.g. HTML pages

Landscapes

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

Abstract

본 발명의 실시예에 따른 중요도에 따른 원격 화면 전송 시스템은 현재 화면의 중요도를 판단하는 중요도 판단부; 상기 현재 화면의 중요도에 따라 상기 중요도가 높은 화면은 고품질로 결정하고 상기 중요도가 낮은 화면은 저품질로 결정하는 화면 품질 결정부; 및 상기 화면 품질 결정부에 의해 결정된 품질로 상기 현재 화면을 네트워크를 통해 전송하는 화면 전송부를 포함할 수 있다.

Description

중요도에 따른 원격 화면 전송 시스템 및 그 방법{System for transmitting a remote screen based on importance and method thereof}
본 발명은 중요도에 따른 원격 화면 전송 시스템 및 그 방법에 관한 것으로, 보다 상세하게는 원격 화면의 중요도에 따라 원격 화면의 품질을 다르게 전송하도록 하는 기술에 관한 것이다.
원격 화면 전송 서버들은 거의 대부분 원격화면을 그대로 단말에게 전송하는 것을 목표로 한다.
대표적인 원격화면 전송 기법은 마이크로소프트 윈도우 원격데스크탑 RDP(remote desktop protocol)가 있고, 오픈소스형태인 VNC(virtual network computing), VAS(Video Aware Scheduling)가 있다.
이때, 전송되는 화면 데이터는 사용자가 스마트폰과 같은 단말을 사용하여 LTE로 수신할 경우 비용 및 자원 절약을 위해 데이터양을 줄이는 것이 필요하다.
종래의 화면의 데이터를 줄이는 방법은 어떤 방법으로 화면을 전송하느냐에 따라, 몇 가지 방법들이 사용될 수 있다.
첫째, 화면을 캡처하여 동영상으로 인코딩하여 스트림하는 경우, 1080P(1920x1080)크기로 30 FPS(frame per second)로 보낼 때, 인코딩하는 코덱의 옵션을 조정하여 인코딩 품질을 떨어트려서 데이터를 줄일 수도 있고, 해상도를 줄여 720P크기로 보낼 수도 있고, 초당 프레임 수를 줄여 15FPS로 보낼 수도 있다.
둘째, 화면 변화 데이터를 비트맵(bitmap)으로 그대로 보낼 경우에는, 변경된 화면만을 보내거나 해당 데이터를 JPEG 이미지나 다른 압축 방법을 통해 압축해서 보낼 수 있다.
셋째, 화면 데이터를 압축하는 압축방식도 있으나 대개의 경우 압축과정에서 데이터손실이 발생하므로, 수신하는 화면의 품질이 저하되는 경우가 많다.
이처럼 종래에는 실제 사용자가 수신하는 화면의 중요도를 반영하는 것이 아니라, 화면 그대로의 데이터를 줄이는 방법을 사용한다.
특허공개번호 KR 2014-0025112호
본 발명의 실시예는 원격 화면의 중요도에 따라 원격 화면의 품질을 다르게 전송하여 사용자의 만족도를 증가시키는 동시에 자원을 절약할 수 있도록 하는 중요도에 따른 원격 화면 전송 시스템 및 그 방법을 제공하고자 한다.
본 발명의 실시예에 따른 중요도에 따른 원격 화면 전송 시스템은 현재 화면의 중요도를 판단하는 중요도 판단부; 상기 현재 화면의 중요도에 따라 상기 중요도가 높은 화면은 고품질로 결정하고 상기 중요도가 낮은 화면은 저품질로 결정하는 화면 품질 결정부; 및 상기 화면 품질 결정부에 의해 결정된 품질로 상기 현재 화면을 네트워크를 통해 전송하는 화면 전송부를 포함할 수 있다.
또한, 현재 화면의 변화량을 판단하는 화면 변화 판단부; 및 화면 변화가 발생한 시간, 화면 변화 발생 후 경과한 시간, 화면 전송 후 경과한 시간을 판단하는 시간 경과 판단부를 더 포함할 수 있다.
또한, 상기 중요도 판단부는, 상기 현재 화면의 중요도가 낮은 것으로 판단된 경우, 상기 현재 화면의 마지막 전송시점으로부터 경과한 시간이 미리 정한 시간을 경과하였는지를 판단할 수 있다.
또한, 상기 화면 품질 결정부는, 상기 현재 화면의 마지막 전송시점으로부터 경과한 시간이 미리 정한 시간을 경과한 경우 상기 현재 화면을 저품질로의 전송을 결정할 수 있다.
또한, 상기 중요도 판단부는, 상기 화면 전송부에서 상기 현재 화면을 고품질 또는 저품질로 전송한 후, 상기 현재 화면의 마지막 변화가 있던 시점으로부터 경과한 시간이 미리 정한 시간을 경과하거나 상기 현재 화면에 변화가 발생하는지를 판단할 수 있다.
또한, 상기 중요도 판단부는, 상기 현재 화면의 마지막 변화가 있던 시점으로부터 경과한 시간이 미리 정한 시간을 경과하거나 상기 현재 화면에 변화가 발생한 경우, 상기 현재 화면의 중요도를 판단할 수 있다.
또한, 상기 중요도 판단부는, 현재 화면의 마지막 화면 변화시간으로부터 미리 정한 시간이상 시간을 경과하지 않았거나 현재 화면의 변화량이 미리 정한 변화량보다 큰 경우 상기 현재 화면의 중요도가 높은 것으로 판단할 수 있다.
본 발명에 따른 중요도에 따른 원격 화면 전송 방법은 현재 화면의 중요도를 판단하는 단계; 및 상기 현재 화면의 중요도에 따라 화면의 품질을 다르게 전송하는 단계를 포함할 수 있다.
또한, 상기 화면 전송 후, 마지막 화면 변화 시점으로부터 일정 시간이 경과하거나 화면 변화가 발생하는 지를 판단하는 단계; 및 상기 마지막 화면 변화 시점으로부터 일정 시간이 경과하거나 화면 변화가 발생하는 경우 상기 중요도를 판단하는 단계로 진입하는 단계를 더 포함할 수 있다.
또한, 상기 화면의 품질을 다르게 전송하는 단계는, 상기 중요도가 높은 화면은 고품질로 전송하고 상기 중요도가 낮은 화면은 저품질로 전송할 수 있다.
또한, 상기 화면의 품질을 다르게 전송하는 단계는, 상기 중요도가 낮은 화면의 경우, 상기 현재 화면의 중요도가 낮은 것으로 판단된 경우, 상기 현재 화면의 마지막 전송시점으로부터 경과한 시간이 미리 정한 시간을 경과하였는지를 판단하고, 상기 현재 화면의 마지막 전송시점으로부터 경과한 시간이 미리 정한 시간을 경과 한 경우 저품질 화면을 전송할 수 있다.
또한, 상기 현재 화면의 중요도를 판단하는 단계는, 상기 현재 화면의 마지막 화면 변화시간으로부터 미리 정한 시간이상 시간을 경과하지 않았거나 현재 화면의 변화량이 미리 정한 변화량보다 큰 경우 상기 현재 화면의 중요도가 높은 것으로 판단할 수 있다.
본 기술은 원격 화면의 품질에 대한 사용자의 만족도를 증가시키면서도 데이터 전송량을 감소시켜 서버 자원을 절약할 수 있다.
도 1은 본 발명의 실시예에 따른 중요도에 따른 원격 화면 전송 시스템의 구성도이다.
도 2는 도 1의 중요도에 따른 원격 화면 전송을 위한 서버의 세부 구성도이다.
도 3은 본 발명의 실시예에 따른 원격 화면 전송 시스템을 가상 시스템에 적용한 예시도이다.
도 4는 본 발명의 실시예에 따른 중요도에 따른 원격 화면 전송방법을 나타내는 순서도이다.
도 5는 도 4의 원격 화면의 중요도를 판단하는 방법을 나타내는 순서도이다.
도 6은 본 발명의 실시예에 따른 사용자 입력 후 일정 시간 경과 후 화면이 변환하는 데이터 양을 나타내는 그래프이다.
이하 본 발명이 속하는 기술분야에서 통상의 지식을 가진자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여, 본 발명의 가장 바람직한 실시예를 첨부도면을 참조하여 설명하기로 한다.
본 발명은 원격 화면 중 화면 변화 발생 시 사용자가 중요하게 여기는 부분만을 고품질로 전송하고 중요하지 않은 부분은 저품질로 전달함으로써 사용자의 체감 품질을 유지하면서 데이터 전송량을 최소화할 수 있다.
또한, 본 발명은 사용자의 입력 직후 그에 대한 반응으로 화면 변화가 발생하는 시간 및 변화량을 기준으로 원격 화면의 사용자에 의한 중요도 및 체감품질에 중요하게 영향을 미치는 화면인지를 판단할 수 있다.
이하, 도 1 내지 도 6을 참조하여, 본 발명의 실시예들을 구체적으로 설명하기로 한다.
도 1은 본 발명의 실시예에 따른 중요도에 따른 원격 화면 전송 시스템의 구성도이다.
본 발명의 실시예에 따른 중요도에 따른 원격 화면 전송 시스템(1)은 서버(2), 네트워크(3) 및 클라이언트 단말(4)을 포함한다.
원격 화면 전송 시스템(1)은 클라이언트 단말(4)을 가능한 한 단순하게 구성하고, 모든 정보와 기능을 서버(2)에 둔다. 이때, 서버(2)는 서버(2)에 설치된 응용프로그램을 실행시키며, 실행결과 화면을 네트워크(3)를 통해 원격으로 클라이언트 단말(4)에 제공한다. 클라이언트 단말(4)은 다수 개일 수 있다.
본 발명은 서버(2)의 클라이언트 단말(4)로의 원격화면 전송에 있어서, 클라이언트 단말(4)의 네트워크 환경 의존을 최소로 하기 위하여, 스케일러블 비디오 코덱 기술과 그래픽 하이브리드 기술을 활용하여 클라이언트 단말(4) 사용자에게 원격화면을 원활하게 제공하는 기술에 관한 것이다.
즉, 서버(2)가 클라이언트 단말(4)에 원격화면을 제공하기 위해서, 원격화면을 구성하는 이미지와 그래픽 명령어를 분리한 후 스케일러블 비디오 인코더를 통해 이미지를 인코딩하며, 인코딩된 이미지와 그래픽 명령어를 클라이언트 단말(4)에 각각 전송한다. 서버(2)에 접속한 클라이언트 단말(4)은 서버(2)로부터 분리된 이미지와 그래픽 명령어를 각각 수신한다. 그리고, 수신된 이미지를 스케일러블 비디오 디코더를 통해 디코딩한 후 디코딩된 이미지와 그래픽 명령어를 합성하여 원격화면을 재구성하며 재구성된 원격화면을 사용자에게 표시한다.
도 2는 도 1의 서버(2)의 세부 구성도이다.
본 발명에 따른 중요도에 따른 원격 화면 전송을 위한 서버(2)는 화면변화 판단부(110), 경과 시간 판단부(120), 중요도 판단부(130), 화면 품질 결정부(140), 화면 전송부(150)를 구비한다.
화면변화 판단부(110)는 현재 화면의 변화량을 판단한다.
경과 시간 판단부(120)는 화면 변화가 발생한 시간, 화면 변화 발생 후 경과한 시간 y, 화면 전송 후 경과한 시간 d을 판단한다.
중요도 판단부(130)는 현재 화면의 중요도를 판단한다. 즉, 중요도 판단부(130)는 현재 화면의 마지막 화면 변화시간으로부터 미리 정한 시간이상 시간을 경과하지 않았거나 현재 화면의 변화량이 미리 정한 변화량보다 큰 경우 현재 화면의 중요도가 높은 것으로 판단한다. 중요도 판단부(130)는 현재 화면의 중요도가 낮은 것으로 판단된 경우, 현재 화면의 마지막 전송시점으로부터 경과한 시간이 미리 정한 시간을 경과하였는지를 판단하여 현재 화면의 마지막 전송시점으로부터 경과한 시간이 미리 정한 시간을 경과하면 화면 전송부(150)를 통해 저품질 화면이 전송되도록 한다. 중요도 판단부(130)는 화면 전송부(150))에서 현재 화면을 고품질 또는 저품질로 전송한 후, 현재 화면의 마지막 변화가 있던 시점으로부터 경과한 시간이 미리 정한 시간을 경과하거나 현재 화면에 변화가 발생하는지를 판단하고, 현재 화면의 마지막 변화가 있던 시점으로부터 경과한 시간이 미리 정한 시간을 경과하거나 현재 화면에 변화가 발생한 경우, 현재 화면의 중요도를 판단한다.
화면 품질 결정부(140)는 현재 화면의 중요도에 따라 중요도가 높은 화면은 고품질로 결정하고 중요도가 낮은 화면은 저품질로 결정한다.
화면 전송부(150)는 화면 품질 결정부에 의해 결정된 품질로 현재 화면을 네트워크를 통해 원격지의 클라이언트 단말(4)로 전송한다.
이와 같이 본 발명은 화면변화 중 사용자가 중요하게 여기는 부분만을 자세히 전달하고, 그렇지 않은 부분은 간략히 전달함으로써, 사용자의 체감 품질은 유지하면서 데이터 전송량과 서버 자원을 절약하도록 한다.
도 3은 본 발명의 실시예에 따른 원격 화면 전송 시스템을 가상 시스템에 적용한 예시도이다. 본 발명은 VDI(virtual desktop infrastructure)와 같이, 원격 서버가 네트워크를 통해 연결된 단말에게 원격 화면을 전송하여, 단말이 원격 화면을 볼 수 있도록 해준다.
본 발명의 실시예에 따른 가상 시스템(100)은 가상머신(VM;virtual machine, 110), 하이퍼바이저(hypervisor;120), 가상화면 스트림엔진(130), 가상 표시부(140)를 구비한다.
하이퍼바이저(120)는 가상화를 수행한다.
가상화면 스트림엔진(130)은 가상 화면에 대한 중요도를 판단하여 중요도에 따라 화면의 품질을 다르게 하여 원격 스크린(200)으로 전송한다.
가상 표시부(140)는 가상 머신(110)에 의해 구동된 가상 화면을 표시한다.
원격 화면을 사용하는 것은 기존 RDP나 VNC처럼 원격의 서버가 실제 하드웨어(HW)로 존재하는 경우가 일반적이었으나, 최근들어 클라우드 시스템이 많이 보급되고 원격 스마트 워킹, 게임 클라우드와 같은 클라우드 기반 서비스들이 많이 보급되면서, 원격의 서버가 가상 머신으로 구동되는 경우가 많다.
이에 본 발명은 특정 형태의 머신을 가정하지 않으나, 도 3과 같이 클라우드 기반의 가상머신(VM)의 화면을 원격의 사용자에게 보내어 해당 머신을 사용할 수 있도록 하는 환경을 가정하여 설명한다.
도 3을 참조하면 클라우드 플랫폼에는 하나의 서버에서 가상 머신을 서버의 자원이 허용하는 한 많은 수를 만들어 사용할 수 있다. 해당 머신을 실제로 가상화하여 동작하도록 만드는 것이 하이퍼바이저(120)인데, 해당 소프트웨어(SW)를 통해 가상 머신(VM)의 화면데이타를 복사해낼 수 있다. 해당 화면은 원격 단말(200)에게 전송되어, 원격 사용자가 볼 수 있도록 한다.
이하, 도 4를 참조하여 본 발명의 실시예에 따른 중요도에 따른 원격 화면 전송방법을 구체적으로 설명하기로 한다.
먼저, 중요도 판단부(230)는 현재 화면이 중요 화면인지를 판단한다(S100).
상기 과정 S100의 판단결과 현재 화면이 중요 화면인 경우 화면 품질 결정부(240)는 현재 화면을 고품질로 생성하고 화면 전송부(250)를 통해 원격의 클라이언트단말(4)로 전송한다(S200).
반면에 현재 화면이 중요 화면이 아닌 것으로 판단된 경우, 중요도 판단부(2230)는 중요 화면이 아닌 경우 자주 전송할 필요가 없으므로 화면 전송 후 미리 정한 시간값 d_max을 경과하였는지를 판단한다(S300). 즉, 저품질의 경우, 화면을 자주 보낼 필요가 없기 때문에 마지막 화면전송시점으로부터 d_max라는 시간이 경과했을 시에만 저품질 화면을 전송하도록 하기 위해 상기 시간 경과 여부를 판단한다.
상기 과정 S300에서 화면 전송 후 미리 정한 시간 d_max를 경과하지 않은 경우에는 화면 전송 후 미리 정한 시간 d_max를 경과하는지를 계속 체크한다.
화면 품질 결정부(240)는 현재 화면을 저품질로 생성하고 화면 전송부(250)를 통해 원격의 클라이언트단말(4)로 전송한다(S400).
그 후, 화면변화 판단부(210)는 화면 변화가 발생하였는지를 계속 체크하고 경과 시간 판단부(220)는 마지막 변화가 발생한 시점으로부터 일정시간이 경과하였는지를 체크하여(S500), 마지막 변화가 발생한 시점으로부터 일정 시간이 경과하거나 화면 변화가 발생한 경우 상기 과정 S100으로 분기되어 현재 화면이 중요화면인지를 판단한다. 즉, 중요도 판단부(230)는 화면 변화가 발생하거나, 마지막 변화가 발생한 시점으로부터 일정 시간 y가 경과했을 때만, 중요화면인지를 판단하도록 하여, 불필요하게 과도한 연산을 하는 것을 방지한다.
화면 전송 후 일정 시간이 경과하거나 화면 변화가 발생하지 않은 경우 원격 화면 전송 시스템(1)은 대기상태를 유지한다(S600).
사용자가 입력을 하는 중이거나, 입력을 마친 수초 내에서는 사용자 입력에 따른 변화 화면이 나타나므로 화면 변화량도 많고 중요한 데이터인 경우가 많다. 그 이후에 변화하는 내용은 어플리케이션이 자동으로 변화하여 나타나는 데이터로 변화량이 작고 덜 중요한 데이터인 경우가 많다.
만약 사용자가 동영상을 보게 될 경우엔, 사용자가 입력을 마친 후에도 화면 변화가 지속적으로 크게 날 수 있다. 따라서, 마지막으로 사용자 입력이 발생한 시점 x와, 경과시간 d, 그리고, 화면 변화량 v가 중요한 값이 된다.
이에, 현재 화면이 중요한 화면이면, 고품질로 화면을 전송하고, 그렇지 않은 경우 저품질로 화면을 전송한다. 단, 저품질의 경우, 굳이 자주 보낼 필요가 없기 때문에 d_max라는 시간이 마지막 화면전송시점으로부터 경과했을 시에 전송하도록 한다. 또한, 화면 전송 후 일정 시간이 경과하거나 화면 변화가 발생한 경우에만 화면의 중요도를 판단함으로써 알고리즘을 간단화할 수 있다.
또한, 화면 압축이나 인코딩 방법에 따라 고품질로 하여 데이터량을 높일 수도 있고, 낮은 품질로 하여 데이터량을 줄일 수도 있다. 예를 들어, jpeg 혹은 mjpeg이미지로 화면을 인코딩할 때 낮은 품질로 할수록 데이터를 절약할 수 있다. 또한, h.264나 mpeg4 등의 동영상 인코딩할 때 낮은 품질로 할수록 데이터를 절약할 수 있다. 이는 손실을 포함하여 고압축 형태로 데이터를 보내고, 화면 압축이나 인코딩한 데이터를 단말에서 복원하였을 때 품질/압축 파라메터에 따라 원본데이터나 화질의 손실이 발생하기 때문이다. 이때 데이터를 절약하는 낮은 품질 방법은 사용방법들이 매우 다양하고, 기존에 공개된 많은 방법들이 존재하므로 본 발명에서 해당 내용을 열거하지 않는다.
또한, 굳이 고품질/저품질로 화면 인코딩을 달리하지 않더라도, d_max값을 y보다 높은 값으로 할 경우, 중요화면은 더 짧은 주기인 y 시간마다 전송되고, 덜 중요한 화면은 그 보다 더 긴 주기인 d_max시간마다 전송되므로, 덜 중요한 화면을 천천히 업데이트함으로써 데이터를 절약하는 효과도 있다. 예를 들면, y는 중요화면을 초당 30프레임을 전송하기 위해, 33ms로 설정하고, d_max는 덜 중요한 화면을 초당 10프레임으로 전송하기 위해, 100ms로 설정하면 된다. 다만, d_max나 y값은 필요에 따라 고정 설정값 또는 자동 설정값을 사용할 수 있으며, 일률적인 수치를 정할 수는 없다.
이하, 도 5를 참조하여 도 4의 원격 화면의 중요도를 판단하는 방법을 구체적으로 설명하기로 한다.
먼저, 중요도 판단부(230)는 현재 화면의 시간을 측정하고(S101), 마지막 입력 시간으로부터 경과시간 d를 측정하고 마지막 화면 전송으로부터 화면 변화량 v를 측정한다(S102). 이때, 두개의 화면에서 동일한 x,y 좌표에 해당하는 점(dot)을 비교하여 전체 화면 중 해당 점의 변화한 비율을 산출하여 화면 변화량을 측정할 수 있다. 즉, 두 개의 화면이 각각 일정 크기(폭*높이)를 가지고 일정 점(dot)수를 가진다고 할 때, 특정 지점 x, y 좌표에 대해 전체 크기(폭*높이)의 점 개수 중 변화한 점의 개수로 변화량을 측정하는 것이다.중요도 판단부(230)는 경과시간 d 및 화면변화량 v를 이용하여 중요도 여부를 판단한다(S103).
중요도 판단부(230)는 경과시간이 d가 미리 정한 시간값 d_max보다 작거나 화면변화량 v가 미리 정한 변화량 v_max보다 큰 경우 현재 화면이 중요한 화면으로 판단하고(S105), 그렇지 않은 경우 중요하지 않은 화면으로 판단한다(S104).
즉, 사용자 입력이 발생한 후 경과된 시간이 미리 정한 시간값 d_min보다 작아서 얼마 시간이 경과하지 않았거나, 또는 화면 변화량 v이 미리 정한 변화량 v_max보다 커서 화면 변화가 클 경우엔 중요화면으로 판단하고, 그렇지 않은 경우엔 중요하지 않은 화면으로 판단한다. 예를 들어, 웹 화면의 경우엔 약 3초정도면 결과 화면 로딩이 끝나므로, d_min을 3sec로 설정할 수 있다. 그런데, 워드나 게임 같은 경우, 대부분 즉각적인 반응이 나오므로, 1초정도로 설정할 수 있다.
화면 변화량 v는, 이전에 화면 변화 내용을 보냈을 시점의 스크린과 현재 스크린과의 화면 변화 차이로 정의한다. 예를 들어, 100x100 pixel을 갖는 화면의 경우, 이전 화면을 보냈을 때에 비해, 화면 중앙에 5x5의 검은색 사각형이 새롭게 생겼다면, 화면 변화량은 5x5/(100x100)으로 하여, 0.25%가 변화한 것으로 볼 수 있다. 이러한 화면 변화의 값을 계산하는 것은 이전 화면의 픽셀(pixel)값들과 현재 화면 픽셀(pixel)값을 비교하는 방법도 있을 수 있고, 화면을 그리는 명령을 모니터링 하여, 화면 그리기 명령에 들어있는 업데이트 영역을 머지(merge_하여 확인할 수도 있다. 이러한 예시는 간단한 예로 화면 변화량을 측정하는 방법은 여러 가지 다른 방법을 쓸 수 있으며, 전체 화면 넓이에서 어느 넓이만큼이 변화했는지의 비율값으로 화면 변화량을 정의하는 것은 동일하다.
이때, 웹페이지와 같은 경우, 광고영역들은 대개의 경우 대략 화면범위의 15%이하이기 때문에, v_max를 15%로 정의할 수 있다. 그러나, 워드프로그램과 같은 경우, 사용자의 입력이 멈춘 경우, 커서만이 깜박이거나, 일부 메뉴만 깜박일 수 있으므로, 1%정도로 v_max를 정의할 수도 있다. 다른 수치와 마찬가지로 v_max값을 일률적으로 정할 수 없으며, 상황에 따라 적절한 값을 취할 수 있다.
도 6은 본 발명의 실시예에 따른 사용자 입력 후 일정 시간 경과 후 화면이 변환하는 데이터 양을 나타내는 그래프이다.
본 발명이 적용 가능한 대표적인 예는 웹서핑 화면이다. 웹서핑 화면의 경우, 사용자가 url 주소값을 입력하거나, 링크 클릭, 사용자 키보드 입력이 발생하면 사용자의 입력에 따라, 결과 화면이 수초 내에 화면에 응답하여 변화하는 방식으로 동작한다. 이때 사용자가 입한력 후에 시간이 흐르면서 화면이 변화하는 데이터 양은 도 6과 같은 그래프로 개시될 수 있다.
사용자가 링크를 클릭하면 화면이 로딩되는 초기동안 수초의 화면은 그대로 빠르게 좋은 품질로 사용자에게 전달하여, 확인할 수 있도록 할 필요가 있다. 그러나 포털 사이트의 웹페이지 메인 화면의 경우, 화면이 로딩된 후에도 광고 이미지나 동영상, 스스로 움직이는 메뉴나 이미지 컨텐트들로 인해 화면 로딩이 끝난후에도 계속해서 화면이 변화한다. 이러한 변화 내용은 굳이 보내주지 않아도 사용자가 내용을 읽거나 추가 링크를 클릭하거나 입력하는 동작을 하는데, 거의 불편함을 주지 않는다.
즉, 사용자가 입력을 하는 중이거나, 입력을 마친 수초 내에서는 사용자 입력에 따른 변화화면이 나타나므로 화면 변화량도 많고 중요한 데이터인 경우가 많고, 그 이후에 변화하는 내용은 어플리케이션이 자동으로 변화하여 나타나는 데이터로 변화량이 작고 덜 중요한 데이터인 경우가 많다.
사용자에게 원격 화면을 전송할 때 모든 화면을 그대로 보여주는 것이 가장 좋긴 하지만, 비용의 문제나 네트워크 대역폭의 문제나 시스템 성능 등의 이유로 데이터량을 줄여야 한다. 이에 본 발명은 사용자가 중요하게 여기는 화면 데이터는 좋은 품질로 보내주고, 그렇지 않은 부분은 낮은 품질로 보내주는 방법을 제시한다. 이때 좋은 품질과 낮은 품질에 따라 데이터를 절약하는 구체적인 방법들은 기존의 방법들을 사용할 수 있으며, 본 발명은 화면의 중요도에 따라 데이터량을 제어하는 알고리즘을 제시하고 있다.
또한, 웹브라우징 화면 뿐아니라, 워드프로그램이나 게임 같은 경우에도 브라우져와 비슷한 화면 변화패턴을 보일 수도 있다. 예를 들어, 워드의 경우 사용자의 입력에 반응하여 즉각적인 화면 변화가 발생하고, 그 이후에는 커서위치만 깜박이며 변화하거나, 일부 메뉴만 메뉴만 조금 변할 수 있다. 게임의 경우에도 사용자가 명령을 내렸을 때 즉각적인 큰 변화가 발생하고, 그 이후에는 일률적으로 작은 부분의 단순 화면 반복패턴이 반복되는 경우가 많다.
그러나, 본 발명은 일반 워드 문서 작업이나 무손실로 그대로 보내야 하는 경우 등에는 적용될 수 없다. 그런 경우에는, 사용자가 화면 전송 모드를 수동으로 수정하던지 혹은 자동으로 수정하는 방법들을 사용할 수 있다.
또한, 만약 사용자가 웹서핑을 하다가 웹페이내의 동영상을 보게 될 경우엔, 사용자가 입력을 마친 후에도 화면 변화가 지속적으로 크게 일어난다. 이러한 경우, 동영상 컨텐츠를 판별하여 지속적으로 좋은 품질로 보내거나, 화면 변화량이 지속적으로 얼마 이상으로 크게 유지될 때에는 좋은 품질로 보내주는 등의 방법을 사용할 수 있다.
그러나 본 발명은 그러한 것들을 모두 포함하지 않으며, 그러한 것들은 구현시 기존의 전송방법들과의 통합에 연관된 문제에 해당한다. 즉 본 발명에서 제안하고자 하는 방향은 앞에서 제시한 그래프형태로 사용자의 입력에 반응하는 일반적인 형태의 어플리케이션을 사용자가 사용할 때, 사용자 입력 후 반응화면이 나타나는 수초간은 좋은 품질로 화면을 보내고 그 이후의 화면은 정지하거나 저 품질로 보내어 데이터와 컴퓨팅 자원을 절약하도록 한다.
이상에서 상세히 설명한 바와 같이, 본 발명은 화면변화 중 사용자가 중요하게 여기는 부분만을 자세히 전달하고, 그렇지 않은 부분은 간략히 전달함으로써, 사용자의 체감 품질은 최대한 유지하면서 데이터 전송량과 서버 자원을 절약할 수 있다.
특히 사용자가 이동 스마트폰과 같이, 네트워크 사용량에 따라 과금이 비례하는 경우 비용을 줄일 수 있다. 또한 대역폭이 랜(LAN)에 비해 작은 경우, 불필요한 화면전송을 줄이는 것이 전송네트워크의 혼잡을 막아 중요한 화면을 빨리 전송시킬 수 있어 사용자 체감 품질을 높일 수 있다.
또한 스마트폰과 같은 단말의 경우, 네트워크를 통해 받는 화면 변화가 많을수록 처리할 프레임이 많아서 성능저하 및 배터리 소모를 가져올 수 있는데, 이러한 문제도 막을 수 있다.
또한, 서버 측면에서도 불필요한 화면 내용을 계속 좋은 품질로 전송시키는데 드는 서버 자원을 절약할 수 있어, 서버의 가입자 수용률이나 유지 비용면에서 경제적인 효과를 높일 수 있다.
상술한 본 발명의 바람직한 실시예는 예시의 목적을 위한 것으로, 당업자라면 첨부된 특허청구범위의 기술적 사상과 범위를 통해 다양한 수정, 변경, 대체 및 부가가 가능할 것이며, 이러한 수정 변경 등은 이하의 특허청구범위에 속하는 것으로 보아야 할 것이다.

Claims (12)

  1. 현재 화면의 중요도를 판단하는 중요도 판단부;
    상기 현재 화면의 중요도에 따라 상기 중요도가 높은 화면은 고품질로 결정하고 상기 중요도가 낮은 화면은 저품질로 결정하는 화면 품질 결정부; 및
    상기 화면 품질 결정부에 의해 결정된 품질로 상기 현재 화면을 네트워크를 통해 전송하는 화면 전송부;
    를 포함하는 중요도에 따른 원격 화면 전송 시스템.
  2. 청구항 1에 있어서,
    현재 화면의 변화량을 판단하는 화면 변화 판단부; 및
    화면 변화가 발생한 시간, 화면 변화 발생 후 경과한 시간, 화면 전송 후 경과한 시간을 판단하는 시간 경과 판단부
    를 더 포함하는 것을 특징으로 하는 중요도에 따른 원격 화면 전송 시스템.
  3. 청구항 2에 있어서,
    상기 중요도 판단부는,
    상기 현재 화면의 중요도가 낮은 것으로 판단된 경우, 상기 현재 화면의 마지막 전송시점으로부터 경과한 시간이 미리 정한 시간을 경과하였는지를 판단하는 것을 특징으로 하는 중요도에 따른 원격 화면 전송 시스템.
  4. 청구항 3에 있어서,
    상기 화면 품질 결정부는,
    상기 현재 화면의 마지막 전송시점으로부터 경과한 시간이 미리 정한 시간을 경과한 경우 상기 현재 화면을 저품질로의 전송을 결정하는 것을 특징으로 하는 중요도에 따른 원격 화면 전송 시스템.
  5. 청구항 2에 있어서,
    상기 중요도 판단부는,
    상기 화면 전송부에서 상기 현재 화면을 고품질 또는 저품질로 전송한 후, 상기 현재 화면의 마지막 변화가 있던 시점으로부터 경과한 시간이 미리 정한 시간을 경과하거나 상기 현재 화면에 변화가 발생하는지를 판단하는 것을 특징으로 하는 중요도에 따른 원격 화면 전송 시스템.
  6. 청구항 5에 있어서,
    상기 중요도 판단부는,
    상기 현재 화면의 마지막 변화가 있던 시점으로부터 경과한 시간이 미리 정한 시간을 경과하거나 상기 현재 화면에 변화가 발생한 경우, 상기 현재 화면의 중요도를 판단하는 것을 특징으로 하는 중요도에 따른 원격 화면 전송 시스템.
  7. 청구항 2에 있어서,
    상기 중요도 판단부는,
    현재 화면의 마지막 화면 변화시간으로부터 미리 정한 시간이상 시간을 경과하지 않았거나 현재 화면의 변화량이 미리 정한 변화량보다 큰 경우 상기 현재 화면의 중요도가 높은 것으로 판단하는 것을 특징으로 하는 중요도에 따른 원격 화면 전송 시스템.
  8. 현재 화면의 중요도를 판단하는 단계; 및
    상기 현재 화면의 중요도에 따라 화면의 품질을 다르게 전송하는 단계;
    를 포함하는 것을 특징으로 하는 중요도에 따른 원격 화면 전송 방법.
  9. 청구항 8에 있어서,
    상기 화면 전송 후, 마지막 화면 변화 시점으로부터 일정 시간이 경과하거나 화면 변화가 발생하는 지를 판단하는 단계; 및
    상기 마지막 화면 변화 시점으로부터 일정 시간이 경과하거나 화면 변화가 발생하는 경우 상기 중요도를 판단하는 단계로 진입하는 단계
    를 더 포함하는 것을 특징으로 하는 중요도에 따른 원격 화면 전송 방법.
  10. 청구항 8에 있어서,
    상기 화면의 품질을 다르게 전송하는 단계는,
    상기 중요도가 높은 화면은 고품질로 전송하고 상기 중요도가 낮은 화면은 저품질로 전송하는 것을 특징으로 하는 중요도에 따른 원격 화면 전송 방법.
  11. 청구항 10에 있어서,
    상기 화면의 품질을 다르게 전송하는 단계는,
    상기 중요도가 낮은 화면의 경우,
    상기 현재 화면의 중요도가 낮은 것으로 판단된 경우, 상기 현재 화면의 마지막 전송시점으로부터 경과한 시간이 미리 정한 시간을 경과하였는지를 판단하고, 상기 현재 화면의 마지막 전송시점으로부터 경과한 시간이 미리 정한 시간을 경과 한 경우 저품질 화면을 전송하는 것을 특징으로 하는 중요도에 따른 원격 화면 전송 방법.
  12. 청구항 10에 있어서,
    상기 현재 화면의 중요도를 판단하는 단계는,
    상기 현재 화면의 마지막 화면 변화시간으로부터 미리 정한 시간이상 시간을 경과하지 않았거나 현재 화면의 변화량이 미리 정한 변화량보다 큰 경우 상기 현재 화면의 중요도가 높은 것으로 판단하는 것을 특징으로 하는 중요도에 따른 원격 화면 전송 방법.
KR1020140179440A 2014-12-12 2014-12-12 중요도에 따른 원격 화면 전송 시스템 및 그 방법 KR20160071815A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140179440A KR20160071815A (ko) 2014-12-12 2014-12-12 중요도에 따른 원격 화면 전송 시스템 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140179440A KR20160071815A (ko) 2014-12-12 2014-12-12 중요도에 따른 원격 화면 전송 시스템 및 그 방법

Publications (1)

Publication Number Publication Date
KR20160071815A true KR20160071815A (ko) 2016-06-22

Family

ID=56365028

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140179440A KR20160071815A (ko) 2014-12-12 2014-12-12 중요도에 따른 원격 화면 전송 시스템 및 그 방법

Country Status (1)

Country Link
KR (1) KR20160071815A (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140025112A (ko) 2012-08-21 2014-03-04 한국전자통신연구원 스케일러블 원격화면 전송방법 및 그 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140025112A (ko) 2012-08-21 2014-03-04 한국전자통신연구원 스케일러블 원격화면 전송방법 및 그 장치

Similar Documents

Publication Publication Date Title
US11343298B2 (en) Video stream management for remote graphical user interfaces
EP2603848B1 (en) Cloning or extending a computer desktop on a wireless display surface
US20240007516A1 (en) Ultra-low latency remote application access
KR20140018157A (ko) 미디어 작업부하 스케줄러
US11741292B2 (en) Adaptive content delivery
US8477842B2 (en) Encoding method of screen frame and electronic device applying the same
WO2018040428A1 (zh) 屏幕界面显示方法和系统
KR20170041273A (ko) 정책 기반 이미지 인코딩 기법
JP2016103117A (ja) 情報処理装置、端末装置、画像表示システムおよび画像送信プログラム
CN112804527A (zh) 图像输出方法、装置及计算机可读存储介质
TW201842775A (zh) 用於在視訊編碼中的順延後處理的系統及方法
US20140099039A1 (en) Image processing device, image processing method, and image processing system
WO2020038071A1 (zh) 视频增强控制方法、装置、电子设备及存储介质
JP6146230B2 (ja) 中継装置、シンクライアントシステム、中継方法および中継プログラム
KR20160071815A (ko) 중요도에 따른 원격 화면 전송 시스템 및 그 방법
CN115941965A (zh) 云桌面编码方法、重建方法、显示方法和显示系统
EP3264284B1 (en) Data processing method and device
KR101251879B1 (ko) 멀티미디어 클라우드 시스템에서 화면변화에 따른 광고영상 출력 장치 및 방법
JP5593514B2 (ja) スクリーンフレームの符号化方法、及び、それを応用した電子装置
KR101473463B1 (ko) 터미널 환경의 서버 기반 컴퓨팅 시스템에서 압축 화면 정보를 제공하는 터미널 서비스 시스템 및 터미널 서비스 방법
WO2023022717A1 (en) Adjustments of remote access applications based on workloads
CN115761083A (zh) 一种渲染结果的处理方法、装置、设备及介质

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination