KR101839054B1 - 클라우드 게임 장치 및 방법 - Google Patents

클라우드 게임 장치 및 방법 Download PDF

Info

Publication number
KR101839054B1
KR101839054B1 KR1020140010481A KR20140010481A KR101839054B1 KR 101839054 B1 KR101839054 B1 KR 101839054B1 KR 1020140010481 A KR1020140010481 A KR 1020140010481A KR 20140010481 A KR20140010481 A KR 20140010481A KR 101839054 B1 KR101839054 B1 KR 101839054B1
Authority
KR
South Korea
Prior art keywords
game
media data
broadcast
display
server
Prior art date
Application number
KR1020140010481A
Other languages
English (en)
Other versions
KR20150089624A (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 KR1020140010481A priority Critical patent/KR101839054B1/ko
Publication of KR20150089624A publication Critical patent/KR20150089624A/ko
Application granted granted Critical
Publication of KR101839054B1 publication Critical patent/KR101839054B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units

Landscapes

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

Abstract

방송 미디어 데이터 및 게임 미디어 데이터를 표시하는 디바이스는 응용 어플리케이션을 실행하고, 응용 어플리케이션에 대응하는 그래픽 유저 인터페이스를 표시하는 응용 어플리케이션부, 그래픽 유저 인터페이스를 통해 제 1 선택이 입력된 경우, 방송에 대응하는 방송 미디어 데이터의 표시를 제어하는 미들웨어, 미들웨어의 제어에 따라 방송 미디어 데이터를 표시하는 표시부, 그래픽 유저 인터페이스를 통해 제 2 선택이 입력된 경우, 미들웨어로 방송 미디어 데이터의 표시의 중단을 요청하고, 게임 서버로 게임의 실행 요청을 전송하는 게임 제어부, 게임 서버로부터 게임에 대응하는 게임 미디어 데이터를 수신하고, 게임 미디어 데이터의 표시를 제어하는 게임 미디어 데이터 처리부를 포함하되, 표시부는 게임 미디어 데이터 처리부의 제어에 따라 게임 미디어 데이터를 표시한다.

Description

클라우드 게임 장치 및 방법{APPARATUS AND METHOD FOR PLAYING GAME ON CLOUD NETWORK}
클라우드 네트워크를 이용한 게임 장치 및 방법에 관한 것이다.
클라우드 컴퓨팅은 각 단말의 독립적인 하드웨어 성능에 의존하던 기존의 컴퓨팅 환경과 달리, 다른 위치에 존재하는 컴퓨터들의 자원을 가상화 기술로 통합해 제공하는 기술로서, 개인용 컴퓨터나 기업의 서버에 개별적으로 저장해 두었던 프로그램이나, 문서를 인터넷으로 접속할 수 있는 장치를 통해 네트워크 서버에 저장하고, 모바일 단말기 등의 다양한 단말기에서 웹 브라우저 등의 어플리케이션을 통해 원하는 작업을 수행할 수 있는 환경을 말한다.
또한, 모바일 단말과 관련된 네트워크 기술이 발전함에 따라 게임 산업도로 급속도로 발전하고 있다. 종래의 컴퓨터 게임은 단순한 아케이드 게임 또는 비디오 게임이 주를 이루고 있었으나, 멀티미디어 기술과 네트워크 기술이 발전함에 따라, 다중 사용자가 참여하는 온라인 게임이라는 새로운 게임 분야가 탄생하였다.
한편, 퇴근에는 컴퓨팅 및 네트워크 기능을 지원하는 모바일 단말에 대하여 스트리밍 방식으로 클라우드 게임 서비스를 제공하는 기술이 주목되고 있다. 클라우드 게임 서비스는 사용자 단말로부터 입력된 입력 신호를 수신하여 입력 신호에 대응하는 게임 실행 결과 화면을 사용자 단말로 제공함으로써, 사용자가 게임을 즐길 수 있도록 하는 것을 말한다. 한국 공개특허 제2007-0061242호에는 휴대용 단말기를 위한 스트리밍 방식의 소프트웨어 제공 방법에 대한 구성이 개시되어 있다.
미들웨어(Middle ware)와 독립적으로 작동하여 게임을 구동하는 데몬(Daemon) 및 HW 자원 제어 부분을 생성하고, 미디어를 제어하는 미들웨어와 분리하되, 통신 채널을 통해 하드웨어 자원을 시간에 따라 분배하고자 한다. 미디어 응용의 미들웨어 상에서 작동하는 어플리케이션과 게임을 구동하는 데몬과의 통신 방법을 제공하고자 한다. 다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 더 존재할 수 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 일 실시예는, 응용 어플리케이션을 실행하고, 응용 어플리케이션에 대응하는 그래픽 유저 인터페이스를 표시하는 응용 어플리케이션부, 그래픽 유저 인터페이스를 통해 제 1 선택이 입력된 경우, 방송에 대응하는 방송 미디어 데이터의 표시를 제어하는 미들웨어, 미들웨어의 제어에 따라 방송 미디어 데이터를 표시하는 표시부, 그래픽 유저 인터페이스를 통해 제 2 선택이 입력된 경우, 미들웨어로 방송 미디어 데이터의 표시의 중단을 요청하고, 게임 서버로 게임의 실행 요청을 전송하는 게임 제어부, 게임 서버로부터 게임에 대응하는 게임 미디어 데이터를 수신하고, 게임 미디어 데이터의 표시를 제어하는 게임 미디어 데이터 처리부를 포함하되, 표시부는 게임 미디어 데이터 처리부의 제어에 따라 게임 미디어 데이터를 표시하는 것인, 방송 미디어 데이터 및 게임 미디어 데이터를 표시하는 디바이스를 제공할 수 있다.
또한, 본 발명의 일 실시예에 있어서, 응용 어플리케이션을 실행하는 단계, 응용 어플리케이션에 대응하는 그래픽 유저 인터페이스를 표시하는 단계, 그래픽 유저 인터페이스를 통해 제 1 선택이 입력된 경우, 방송에 대응하는 방송 미디어 데이터의 표시를 제어하는 단계, 방송 미디어 데이터의 표시의 제어에 따라 방송 미디어 데이터를 표시하는 단계, 그래픽 유저 인터페이스를 통해 제 2 선택이 입력된 경우, 방송 미디어 데이터의 표시의 중단을 처리하는 단계, 게임 서버로 게임의 실행 요청을 전송하는 단계, 게임 서버로부터 게임에 대응하는 게임 미디어 데이터를 수신하는 단계. 게임 미디어 데이터의 표시를 제어하는 단계, 게임 미디어 데이터의 표시의 제어에 따라 게임 미디어 데이터를 표시하는 단계를 포함하는 방송 미디어 데이터 및 게임 미디어 데이터를 표시하는 방법을 제공할 수 있다.
상술한 과제 해결 수단 중 어느 하나에 의하면, 미들웨어와 독립적으로 작동하여 게임을 구동하는 데몬을 생성하고, 미디어를 제어하는 미들웨어와 분리하되, 통신 채널을 통해 하드웨어 자원을 시간에 따라 분배할 수 있다. 미디어 응용의 미들웨어 상에서 작동하는 어플리케이션과 게임을 구동하는 데몬과의 통신 방법을 제공할 수 있다. 미들웨어가 미디어 서비스에 대한 하드웨어 자원을 찾아오기 위한 신호 송수신 방법을 제공할 수 있다. 게임 클라이언트로 인해 미들웨어가 불안정 해지는 것을 방지할 수 있다.
도 1은 본 발명의 일 실시예에 따른 클라우드 게임 시스템의 구성도이다.
도 2는 본 발명의 일 실시예에 따른 디바이스의 구성도이다.
도 3은 본 발명의 일 실시예에 따른 서비스가 제공되는 과정을 나타내는 도면이다.
도 4는 본 발명의 일 실시예에 따른 리소스를 할당하는 것을 나타내는 도면이다.
도 5는 본 발명의 일 실시예에 따른 게임 미디어 데이터를 표시하는 방법을 나타내는 도면이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1 개의 유닛이 2 개 이상의 하드웨어를 이용하여 실현되어도 되고, 2 개 이상의 유닛이 1 개의 하드웨어에 의해 실현되어도 된다.
본 명세서에 있어서 단말 또는 디바이스가 수행하는 것으로 기술된 동작이나 기능 중 일부는 해당 단말 또는 디바이스와 연결된 서버에서 대신 수행될 수도 있다. 이와 마찬가지로, 서버가 수행하는 것으로 기술된 동작이나 기능 중 일부도 해당 서버와 연결된 단말 또는 디바이스에서 수행될 수도 있다.
이하 첨부된 도면을 참고하여 본 발명의 일 실시예를 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 클라우드 게임 시스템의 구성도이다. 도 1을 참조하면, 클라우드 게임 시스템은 디바이스(10), 게임 서버(20) 및 방송 미디어 서버(30)을 포함한다. 다만, 본 발명의 구성이 도 1에 도시된 예로 한정되어 해석되는 것은 아니다.
도 1에 도시된 각 구성들을 일반적으로 네트워크를 통해 연결될 수 있다. 네트워크는 단말들 및 서버들과 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 이러한 네트워크(network)의 일 예에는 3GPP(3rd Generation Partnership Project) 네트워크, LTE(Long Term Evolution) 네트워크, WIMAX(World Interope rability for Microwave Access) 네트워크, 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), 블루투스(Bluetooth) 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크 등이 포함되나 이에 한정되지는 않는다.
디바이스(10)는 무선 통신이 가능한 모바일 단말을 포함할 수 있으며, 이 밖에도 다양한 형태의 디바이스를 더 포함할 수 있다. 예를 들어, 디바이스(10)는 네트워크를 통해 원격지의 서버에 접속할 수 있는 TV 장치, 컴퓨터 또는 휴대용 단말일 수 있다. 여기서, TV 장치의 일 예에는 스마트 TV, IPTV 셋톱박스 등이 포함되고, 컴퓨터의 일 예에는 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(desktop), 랩톱(laptop) 등이 포함되고, 휴대용 단말의 일 예에는 휴대성과 이동성이 보장되는 무선 통신 장치로서, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말, 스마트폰(smartphone), 태블릿 PC 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치가 포함될 수 있다. 다만, 디바이스(10)가 도 1의 도시된 형태 또는 앞서 예시된 것들로 한정 해석되는 것은 아니다.
디바이스(10)는 응용 어플리케이션을 실행하고, 응용 어플리케이션에 대응하는 그래픽 유저 인터페이스를 표시할 수 있다. 일 예로, 디바이스(10)는 디바이스(10)에 설치된 방송 미디어 데이터 또는 게임 미디어 데이터를 표시할 수 있는 소정 어플리케이션의 그래픽 유저 인터페이스를 표시할 수 있다.
디바이스(10)는 그래픽 유저 인터페이스를 통해 제 1 선택이 입력되면, 방송에 대응하는 방송 미디어 데이터를 표시할 수 있다. 일 예로, 디바이스(10)는 방송 미디어 데이터의 표시를 요청하는 선택에 기초하여 실시간 방송 또는 VOD 등의 방송 미디어 데이터를 표시할 수 있다.
디바이스(10)는 그래픽 유저 인터페이스를 통해 제 2 선택이 입력되면, 디바이스(10) 내 미들웨어(102)로 방송 미디어 데이터의 표시 중단을 요청하고, 게임 서버(20)로 게임의 실행 요청을 전송할 수 있다. 디바이스(10)는 게임 서버(20)로부터 게임에 대응하는 게임 미디어 데이터를 수신하고, 게임 미디어 데이터의 표시를 제어할 수 있다. 일 예로, 디바이스(10)는 디바이스(10)를 통해 표시되는 방송 미디어 데이터의 표시를 중단하고, 게임 서버(20)로부터 게임 미디어 데이터를 수신하여 디바이스(10)에 표시할 수 있다.
이와 같은 디바이스(10)의 동작은 후술되는 도 2에서 자세히 설명된다.
게임 서버(20)는 클라우드 게임 서버로서, 디바이스(10)로부터 수신된 게임 미디어 데이터 요청에 기초하여, 소정 게임을 실행하고, 실행되는 게임에 대한 미디어 데이터를 디바이스(10)에 전송할 수 있다.
일반적으로, 클라우드 게임은 사용자가 게임 서버(20)에 접속하여 게임을 즐길 수 있도록 하는 것으로, 게임을 구현하는데 필요한 하드웨어 자원은 게임 서버(20)에 있고, 게임 화면을 계산해 주는 구성도 게임 서버(20)에서 처리된다. 게임 서버(20)는 계산된 게임 화면이 H.264 등의 동영상 형태로 변환된 게임 미디어 데이터를 디바이스(10)에 전송할 수 있다. 사용자의 입장에서는 동영상을 보면서 게임을 즐기는 것으로 보일 수 있다. 게임 서버(20)는 디바이스(10)로부터 게임의 조작과 관련된 소정 입력이 수신되면, 조작과 관련된 입력에 기초하여 게임 내 입력을 계산하고, 스트리밍의 형태로 게임 미디어 데이터를 디바이스(10)에 전송할 수 있다.
방송 미디어 서버(30)는 디바이스(10)에 실시간 방송 또는 VOd 등의 방송 미디어 데이터를 전송할 수 있다.
도 2는 본 발명의 일 실시예에 따른 디바이스(10)의 구성도이다. 도 2를 참조하면, 디바이스(10)는 응용 어플리케이션부(101), 미들웨어(102), 표시부(103), 게임 제어부(104) 및 게임 미디어 데이터 처리부(105)를 포함할 수 있다. 다만, 도 2에 도시된 디바이스(10)의 구성이 앞서 예시된 것들로 한정되는 것은 아니다.
응용 어플리케이션부(101)는 응용 어플리케이션을 실행하고, 응용 어플리케이션에 대응하는 그래픽 유저 인터페이스를 표시한다. 일 예로, 응용 어플리케이션부(101)는 디바이스(10)에 설치된, 방송 미디어 데이터 또는 게임 미디어 데이터를 표시할 수 있는 어플리케이션에 대응하는 그래픽 유저 인터페이스를 표시할 수 있다.
미들웨어(102)는 그래픽 유저 인터페이스를 통해 제 1 선택이 입력된 경우, 방송에 대응하는 방송 미디어 데이터의 표시를 제어한다. 미들웨어(102)는 응용 어플리케이션부(101)와 자바스크립트(Java Script) 메시지를 통해 통신할 수 있다. 예를 들면, 미들웨어(102)는 그래픽 유저 인터페이스를 통해 미디어 재생 시작과 관련된 선택에 기초하여, 방송 미디어 서버(30)로 방송 미디어 데이터의 전송을 요청할 수 있으며, 미들웨어(102)는 그래픽 유저 인터페이스를 통해 미디어 재생 정지와 관련된 선택에 기초하여, 방송 미디어 서버(30)로 방송 미디어 데이터의 전송 중단을 요청할 수도 있다.
표시부(103)는 미들웨어(102)의 제어에 따라 방송 미디어 데이터를 표시한다. 즉, 표시부(103)는 미들웨어(102)의 제어에 따라 방송 미디어 서버(30)로부터 전송되는 방송 미디어 데이터를 디바이스(10)의 디스플레이에 표시할 수 있다.
표시부(103)는 미들웨어(102)의 제어 또는 게임 미디어 데이터 처리부(105)의 제어에 따라 방송 미디어 데이터의 표시와 게임 미디어 데이터의 표시를 상호 전환할 수 있다. 이 때, 방송 미디어 데이터는 방송 비디오 데이터 및 방송 오디오 데이터를 포함할 수 있고, 게임 미디어 데이터는 게임 비디오 데이터 및 게임 오디오 데이터를 포함할 수 있다. 다시 말하면, 표시부(103)는 실시간 방송 또는 VOD 등 방송과 관련된 미디어 데이터를 표시하는 중, 방송과 관련된 미디어 데이터의 표시를 중단하고, 게임 서버(20)로부터 수신된 게임과 관련된 미디어 데이터를 표시할 수 있다.
게임 제어부(104)는 그래픽 유저 인터페이스를 통해 제 2 선택이 입력된 경우, 미들웨어(102)로 방송 미디어 데이터의 표시의 중단을 요청하고, 게임 서버(20)로 게임의 실행 요청을 전송한다. 게임 제어부(104)는 자원 획득 요청을 통해 방송 미디어 데이터의 표시의 중단을 요청하고, 자원 릴리즈 요청을 통해 게임 미디어 데이터의 표시의 중단을 알릴 수도 있다. 게임 제어부(104)는 데몬(Daemon)형 유닛일 수 있다. 예를 들어, 게임 제어부(104)는 게임 미디어 데이터 시작과 관련된 선택이 입력된 경우, 미들웨어(102)에 미디어 자원의 획득과 관련된 메시지(Resource Get Request)를 전송할 수 있다. 이 때, 미들웨어(102)는 방송 미디어 데이터와 관련된 자원을 해제함으로써, 방송 미디어 데이터의 표시를 중단시킬 수 있다. 미들 웨어(102)는 현재 사용 하고 있는 하드웨어 자원을 릴리즈할 뿐만 아니라 현재 채널의 IGMP Leave 메시지 또는 현재 VOD 스트림에 대한 Stop 메시지를 방송 미디어 서버(30)에 전송하여, 방송 미디어 데이터와 관련된 자원을 해제할 수 있다. 게임 제어부(104)는 미들웨어(102)로부터 미디어 자원의 획득과 관련된 메시지에 대한 응답(Resource Get Response)을 수신할 수 있다. 이후, 게임 제어부(104)는 게임 서버(20)에 게임의 실행 요청을 전송할 수 있다.
다른 예에서, 게임 제어부(104)는 그래픽 유저 인터페이스를 통해 게임 미디어 데이터 종료와 관련된 선택이 입력된 경우, 게임 서버(20)에 게임의 실행 중지 요청을 전송하고, 미들웨어(102)에 게임 미디어 데이터 자원의 해제와 관련된 메시지(Resource Release Request)를 전송할 수 있다. 이 경우, 미들웨어(102)는 방송 미디어 서버(30)로부터 방송 미디어 데이터와 관련된 자원을 수신하여, 방송 미디어 데이터를 표시할 수 있고, 게임 제어부(104)로, 게임 미디어 데이터 자원의 해제와 관련된 메시지에 대한 응답(Resource Release Response)을 수신할 수 있다.
게임 제어부(104)는 응용 어플리케이션부(101)로부터 게임에 관한 사용자 아이디, 게임 아이디 및 인증 정보 중 적어도 하나 이상을 수신할 수 있으며, 게임의 실행 요청은 해당 게임에 대한 사용자 아이디, 게임 아이디 및 인증 정보 중 적어도 하나 이상을 포함할 수 있다. 게임 제어부(104)는 응용 어플리케이션부(101)와 HTTP(Hypertext Transfer Protocol)메시지를 통해 통신할 수 있으며, HTTP 메시지는 HTTP Get 메시지 또는 명령어, HTTP Post 메시지 또는 명령어를 포함할 수 있다. 예를 들어, 게임 제어부(104)는 게임의 실행 요청과 관련된 선택에 기초하여, 게임 서버(20)에 게임 실행을 요청하고, 게임 서버(20)는 수신된 요청에 기초하여 게임 제어부(104)에 게임 디바이스의 장착 여부를 질의함과 동시에, SAID 등의 사용자 ID, 게임 ID를 전송할 수 있다. 이후, 게임 제어부(104)는 게임 서버(20)에 사용자 ID, 게임 ID 및 디바이스에 대한 사용자 인증 토큰을 게임 서버(20)에 HTTP 메시지를 통해 전송할 수 있다.
게임 제어부(104)는 게임 서버(20)로 게임 실행을 요청하고, 게임 서버(20)로부터 셋톱박스로 대표되는 디바이스(10)에 대응하는 블레이드(blade) 주소를 수신하고, 게임 미디어 데이터 처리부(105)로 수신된 블레이드 주소를 전송할 수 있다. 일 예로, 게임 서버(20)는 사용자의 인증 후, 해당 게임의 블레이드 주소를 할당하여, 블레이드 주소에 대한 접속 정보를 게임 제어부(104)로 전송할 수 있고, 게임 제어부(104)는 수신된 블레이드 주소를 게임 미디어 데이터 처리부(105)로 전송할 수 있다. 좀 더 상세히 말하면, 게임 제어부(104)는 HTTP 메시지를 통해 게임의 실행 요청을 전송하고, HTTP 메시지를 통해 게임 서버(20)의 블레이드 주소를 수신할 수 있다.
게임 제어부(104)는 방송 재생 디바이스에 게임을 위한 외부 디바이스가 연결되었는지 여부를 판단하고, 판단 결과에 따라 미들웨어(102)로 방송 미디어 데이터의 표시의 중단을 요청하고, 게임 서버(20)로 게임의 실행 요청을 전송할 수 있으며, 게임 제어부(104)는 게임 미디어 데이터 처리부(105)를 활성화시킬 수 있다. 게임 제어부(104)는 Long Polling, 웹 소켓 등의 미디어 이벤트를 응용 애플리케이션부(101)로 전달할 수도 있다. 게임 제어부(104)는 Long polling, 웹 소켓 등의 미디어 이벤트를 브라우저로 비동기 이벤트를 발생시키는데 이용할 수도 있다.
게임 미디어 데이터 처리부(105)는 게임 서버(20)로부터 게임에 대응하는 게임 미디어 데이터를 수신하고, 게임 미디어 데이터의 표시를 제어한다. 게임 미디어 데이터 처리부(105)는 게임 제어부(104)로부터 수신된 블레이드 주소를 이용하여 게임 미디어 데이터를 수신할 수 있으며, 게임 미디어 데이터 처리부(105)는 TCP(Transmission Control Protocol)에 기초하여 게임 서버(20)의 블레이드로 게임 미디어 데이터를 요청하고, UDP(Uses Datagram Protocol)에 블레이드로부터 게임 미디어 데이터를 수신할 수도 있다.
이와 같은 디바이스(10)는 미들웨어(102)를 통해 실시간 방송 또는 VOD 등의 방송 미디어 데이터를 표시하는 중, 게임 서버(20)로부터 전송되는 게임 미디어 데이터의 전송이 요청되면, 방송 미디어 데이터의 표시를 중단하고, 게임 미디어 데이터를 표시할 수 있다. 디바이스(10)는 게임 미디어 데이터의 표시가 중단된 이후, 다시 방송 미디어 데이터를 표시할 수 있다.
도 3은 본 발명의 일 실시예에 따른 서비스가 제공되는 과정을 나타내는 도면이다. 도 3은 게임 제어부(104) 및 게임 미디어 데이터 처리부(105)에서 게임 미디어 데이터를 수신하는 과정을 나타낸다. 도 3을 참조하면, 게임 제어부(104)는 게임 서버(20)에 사용자에 대한 인증을 요청(S301)하고, 게임 서버(20)로부터 인증 정보에 대한 토큰을 수신(S302)할 수 있다. 사용자에 대한 인증 및 게임 서버(20)로부터 수신되는 인증 정보는 HTTP 메시지에 기초할 수 있다.
이후, 게임 제어부(104)는 게임 서버(20)에 게임의 시작 또는 실행과 관련된 요청을 전송(S303)하고, 게임의 실행과 관련된 블레이드 주소를 요청(S304)한다. 게임 서버(20)는 블레이드 주소를 할당하여 게임 제어부(104)로 전송(S305)하고, 게임 제어부(104)는 수신된 블레이드 주소를 게임 미디어 데이터 처리부(105)로 전송(S306)한다. 게임 미디어 데이터 처리부(105)는 수신된 블레이드 주소에 기초하여 게임 서버(20)에 게임 미디어 데이터를 요청하고, 게임 서버(20)로부터 게임 데이터를 수신(S308)할 수 있다. 게임 미디어 데이터 처리부(105)는 게임의 조작과 관련된 데이터, 트래픽과 관련된 정보 및 TCP, UDP 등의 프로토콜 정보를 게임 서버(20)에 전송할 수 있으며, 게임 서버(20)는 수신된 데이터가 반영된 데임 미디어 데이터를 게임 미디어 데이터 처리부(105)에 전송할 수 있다.
상술한 설명에서, 단계 S301 내지 S308은 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다.
도 4는 본 발명의 일 실시예에 따른 리소스를 할당하는 것을 나타내는 도면이다. 도 4를 참조하면, 미들웨어(102)를 통해 방송 미디어 데이터의 표시를 제어하는 중, 게임 제어부(104)로부터 요청된 게임 미디어 데이터에 대한 요청이 수신되면, 미들웨어(102)는 방송 미디어 서버(30)을 통해 수신되는 방송 미디어 데이터의 수신을 중단할 수 있다. 게임 미디어 데이터 처리부(105) 는 게임 서버(20)로부터 게임 미디어 데이터를 수신하여, 표시부(103)를 통해 표시할 수 있다. 게임 미디어 데이터 처리부(105)를 통해, 게임 서버(20)로부터 수신되는 게임 미디어 데이터데 대한 전송이 중단된 이후, 미들웨어(102)는 방송 미디어 서버(30)로부터 방송 미디어 데이터를 수신하여, 표시부(103)를 통해 표시할 수 있다.
도 5는 본 발명의 일 실시예에 따른 게임 미디어 데이터를 표시하는 방법을 나타내는 도면이다. 도 5에 도시된 게임 미디어 데이터의 표시 방법은 도 1 내지 도 2를 통해 설명되는 디바이스(10)에서 시계열적으로 처리되는 동작들을 포함한다. 따라서, 이하 생략된 내용이라고 하여도, 도 1 내지 도 2를 통해 설명되는 디바이스(10)에 대한 설명은 도 5에도 적용된다.
도 5를 참조하면, 디바이스(10)는 디바이스(10)에 설치된 응용 어플리케이션을 실행(S501)하고, 응용 어플리케이션에 대응하는 그래픽 유저 인터페이스를 디바이스(10)의 디스플레이에 표시(S502)한다. 디바이스(10)는 그래픽 유저 인터페이스를 통해 방송 미디어 데이터의 표시와 관련된 제 1 선택이 입력된 경우, 방송에 대응하는 방송 미디어 데이터의 표시를 제어(S503)하고, 방송 미디어 데이터의 표시의 제어에 따라 방송 미디어 데이터를 표시(S504)한다.
디바이스(10)는 그래픽 유저 인터페이스를 통해 게임 미디어 데이터의 표시와 관련된 제 2 선택이 입력된 경우, 방송 미디어 데이터의 표시의 중단을 처리(S505)한다. 이 때, 디바이스(10)는 게임을 위한 외부 디바이스가 연결되었는지 여부를 판단하고, 판단 결과에 따라 미들웨어(102)로 방송 미디어 데이터의 표시의 중단을 처리할 수 있다.
디바이스(10)는 게임 서버(20)로 게임의 실행 요청을 전송(S506)할 수 있다. 이 때, 실행 요청은 게임에 관한 사용자 아이디, 게임 아이디 및 인증 정보 중 적어도 하나 이상을 포함할 수 있다. 디바이스(10)는 게임 서버(20)로 게임의 실행 요청을 전송한 이후, 게임 서버(20)로부터 게임에 대응하는 게임 미디어 데이터를 수신(S507)할 수 있다. 이 때, 디바이스(10)는 게임 서버(20)로부터 게임 서버(20)의 블레이드 주소를 수신하고, 수신된 블레이드 주소를 이용하여 게임 서버(20)의 블레이드로 게임 미디어 데이터를 요청할 수 있으며, 디바이스(10)는 게임에 대응하는 게임 미디어 데이터를 블레이드로부터 수신할 수 있다.
디바이스(10)는 게임 미디어 데이터의 표시를 제어(S508)하고, 게임 미디어 데이터의 표시의 제어에 따라 게임 미디어 데이터를 표시(S509)할 수 있다.
상술한 설명에서, 단계 S501 내지 S509은 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다.
도 5를 통해 설명되는 방송 미디어 데이터 및 게임 미디어 데이터를 표시하는 방법은 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다.
또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다.
본 발명의 일 실시예는 도 5를 통해 설명된 설명되는 방송 미디어 데이터 및 게임 미디어 데이터를 표시하는 방법을 실행하는 디바이스와 연동하여 동작하는 어플리케이션을 제공하는 방법을 제공할 수 있다.  이 때, 디바이스는 방송 미디어 데이터 및 게임 미디어 데이터를 표시하는 것을 특징으로 한다.  이 경우, 어플리케이션은 서버에 의하여 디바이스로 제공될 수도 있고, 서버와 별도로 구성된 다른 서버에 의하여 디바이스로 제공될 수도 있고, 서버와 다른 주체에 의하여 운용되는 다른 서버에 의하여 디바이스로 제공될 수도 있다. 
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
10: 디바이스
20: 게임 서버
30: 방송 미디어 서버.

Claims (17)

  1. 방송 미디어 데이터 및 게임 미디어 데이터를 표시하는 디바이스에 있어서,
    응용 어플리케이션을 실행하고, 상기 응용 어플리케이션에 대응하는 그래픽 유저 인터페이스를 표시하는 응용 어플리케이션부;
    상기 그래픽 유저 인터페이스를 통해 방송의 재생과 관련되는 제 1 선택이 입력된 경우, 상기 방송에 대응하는 방송 미디어 데이터의 표시를 제어하는 미들웨어;
    상기 미들웨어의 제어에 따라 상기 방송 미디어 데이터를 표시하는 표시부;
    상기 미들웨어와 독립적으로 작동하는 게임 제어부; 및
    게임 서버로부터 게임에 대응하는 게임 미디어 데이터를 수신하고, 상기 게임 미디어 데이터의 표시를 제어하는 게임 미디어 데이터 처리부
    를 포함하고,
    상기 게임 제어부는 상기 표시부가 상기 미들웨어의 제어에 따라 상기 방송 미디어 데이터를 표시하는 중에, 상기 그래픽 유저 인터페이스를 통해 상기 게임의 실행에 관련되는 제 2 선택이 입력된 경우, 상기 미들웨어로 상기 방송 미디어 데이터의 표시의 중단을 요청하고, 상기 게임 서버로 상기 게임의 실행 요청을 전송하며,
    상기 미들웨어는 상기 게임 제어부로부터 상기 방송 미디어 데이터의 표시의 중단에 대한 요청을 수신한 것에 응답하여, 상기 방송 미디어 데이터에 관련된 자원을 해제함으로써 상기 방송 미디어 데이터의 표시를 중단하고,
    상기 표시부는 상기 실행 요청에 따라 상기 게임 미디어 데이터 처리부가 상기 게임 미디어 데이터를 수신한 이후, 상기 게임 미디어 데이터 처리부의 제어에 따라 상기 게임 미디어 데이터를 표시하는 것인, 디바이스.
  2. 제 1 항에 있어서,
    상기 게임 제어부는 상기 응용 어플리케이션부로부터 상기 게임에 관한 사용자 아이디, 게임 아이디 및 인증 정보 중 적어도 하나 이상을 수신하되,
    상기 실행 요청은 상기 게임에 관한 사용자 아이디, 게임 아이디 및 인증 정보 중 적어도 하나 이상을 포함하는 것인, 디바이스.
  3. 제 1 항에 있어서,
    상기 게임 제어부는 상기 응용 어플리케이션부와 HTTP(Hypertext Transfer Protocol) 메시지를 통해 통신하되,
    상기 미들웨어는 상기 응용 어플리케이션부와 자바스크립트 메시지를 통해 통신하는 것인, 디바이스.
  4. 제 3 항에 있어서,
    상기 HTTP 메시지는 HTTP GET 메시지 및 HTTP POST 메시지를 포함하는 것인, 디바이스.
  5. 제 1 항에 있어서,
    상기 게임 제어부는,
    상기 게임 서버로 상기 게임의 실행 요청을 전송하고, 상기 게임 서버로부터 상기 게임 서버의 블레이드 주소를 수신하고, 상기 게임 미디어 데이터 처리부로 상기 블레이드 주소를 전송하되,
    상기 게임 미디어 데이터 처리부는 상기 블레이드 주소를 이용하여 상기 게임 서버의 블레이드로 상기 게임 미디어 데이터를 요청하고, 상기 블레이드로부터 상기 게임 미디어 데이터를 수신하는 것인, 디바이스.
  6. 제 5 항에 있어서,
    상기 게임 제어부는,
    HTTP(Hypertext Transfer Protocol) 메시지를 통해 상기 게임의 실행 요청을 전송하고, HTTP(Hypertext Transfer Protocol) 메시지를 통해 상기 게임 서버의 블레이드 주소를 수신하되,
    상기 게임 미디어 데이터 처리부는 TCP(Transmission Control Protocol)에 기초하여 상기 게임 서버의 블레이드로 상기 게임 미디어 데이터를 요청하고, UDP(Use Datagram Protocol)에 기초하여 상기 블레이드로부터 상기 게임 미디어 데이터를 수신하는 것인, 디바이스.
  7. 제 1 항에 있어서,
    상기 게임 제어부는 상기 게임 미디어 데이터 처리부를 활성화시키는 것인, 디바이스.
  8. 제 1 항에 있어서,
    상기 게임 제어부는 데몬형 유닛인 것인, 디바이스.
  9. 제 1 항에 있어서,
    상기 방송 미디어 데이터는 방송 비디오 데이터 및 방송 오디오 데이터를 포함하되, 상기 게임 미디어 데이터는 게임 비디오 데이터 및 게임 오디오 데이터를 포함하는 것인, 디바이스.
  10. 제 1 항에 있어서,
    상기 게임 제어부는 상기 디바이스에 상기 게임을 위한 외부 디바이스가 연결되었는지 여부를 판단하고, 판단 결과에 따라 상기 미들웨어로 상기 방송 미디어 데이터의 표시의 중단을 요청하고, 상기 게임 서버로 상기 게임의 실행 요청을 전송하는 것인, 디바이스.
  11. 제 1 항에 있어서,
    상기 표시부는 상기 미들웨어의 제어 또는 상기 게임 미디어 데이터 처리부의 제어에 따라 상기 방송 미디어 데이터의 표시와 상기 게임 미디어 데이터의 표시를 상호 전환하는 것인, 디바이스.
  12. 제 1 항에 있어서,
    상기 게임 제어부는, 상기 미들웨어에 자원 획득 요청(Resource Get Request)을 통해 상기 방송 미디어 데이터의 표시의 중단을 요청하고, 자원 릴리즈 요청(Resource Release Request)을 통해 상기 게임 미디어 데이터의 표시의 중단을 알리는 것인, 디바이스.
  13. 제 1 항에 있어서,
    상기 게임은 클라우드 게임이되, 상기 게임 서버는 클라우드 게임 서버인 것인, 디바이스.
  14. 디바이스에서 방송 미디어 데이터 및 게임 미디어 데이터를 표시하는 방법에 있어서,
    응용 어플리케이션을 실행하는 단계;
    상기 응용 어플리케이션에 대응하는 그래픽 유저 인터페이스를 표시하는 단계;
    상기 그래픽 유저 인터페이스를 통해 방송의 재생에 관련되는 제 1 선택이 입력된 경우, 상기 방송에 대응하는 방송 미디어 데이터의 표시를 제어하는 단계;
    상기 방송 미디어 데이터의 표시의 제어에 따라 상기 방송 미디어 데이터를 표시하는 단계;
    상기 방송 미디어 데이터의 표시의 제어에 따라 상기 방송 미디어 데이터를 표시하는 중에 상기 그래픽 유저 인터페이스를 통해 상기 게임의 실행에 관련되는 제 2 선택이 입력된 경우, 상기 방송 미디어 데이터의 표시의 중단을 요청하는 단계;
    상기 방송 미디어 데이터의 표시의 중단에 대한 요청에 응답하여, 상기 방송 미디어 데이터에 관련된 자원을 해제함으로써 상기 방송 미디어 데이터의 표시를 중단하는 단계;
    게임 서버로 상기 게임의 실행 요청을 전송하는 단계;
    상기 실행 요청에 따라 상기 게임 서버로부터 상기 게임에 대응하는 게임 미디어 데이터를 수신하는 단계;
    상기 게임 미디어 데이터의 표시를 제어하는 단계; 및
    상기 게임 미디어 데이터의 표시의 제어에 따라 상기 게임 미디어 데이터를 표시하는 단계
    를 포함하는 방법.
  15. 제 14 항에 있어서,
    상기 실행 요청은 상기 게임에 관한 사용자 아이디, 게임 아이디 및 인증 정보 중 적어도 하나 이상을 포함하는 것인, 방법.
  16. 제 14 항에 있어서,
    상기 게임 서버로 상기 게임의 실행 요청을 전송하는 단계 이후, 상기 게임 서버로부터 상기 게임 서버의 블레이드 주소를 수신하는 단계; 및
    상기 블레이드 주소를 이용하여 상기 게임 서버의 블레이드로 게임 미디어 데이터를 요청하는 단계를 더 포함하되,
    상기 게임에 대응하는 게임 미디어 데이터를 수신하는 단계는, 상기 블레이드로부터 상기 게임 미디어 데이터를 수신하는 것인, 방법.
  17. 제 14 항에 있어서,
    상기 방송 미디어 데이터의 표시의 중단을 요청하는 단계는,
    상기 제 2 선택이 입력된 경우, 상기 게임을 위한 외부 디바이스가 연결되었는지 여부를 판단하는 단계; 및
    상기 판단 결과에 따라 상기 방송 미디어 데이터의 표시의 중단을 요청하는 단계를 포함하는 것인, 방법.
KR1020140010481A 2014-01-28 2014-01-28 클라우드 게임 장치 및 방법 KR101839054B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140010481A KR101839054B1 (ko) 2014-01-28 2014-01-28 클라우드 게임 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140010481A KR101839054B1 (ko) 2014-01-28 2014-01-28 클라우드 게임 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20150089624A KR20150089624A (ko) 2015-08-05
KR101839054B1 true KR101839054B1 (ko) 2018-03-30

Family

ID=53886035

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140010481A KR101839054B1 (ko) 2014-01-28 2014-01-28 클라우드 게임 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101839054B1 (ko)

Also Published As

Publication number Publication date
KR20150089624A (ko) 2015-08-05

Similar Documents

Publication Publication Date Title
US11285386B2 (en) Cloud gaming device handover
US11089349B2 (en) Apparatus and method for playing back and seeking media in web browser
CN102460407A (zh) 虚拟桌面服务
JP5411386B1 (ja) ゲームを提供するサーバ及び方法
CN104349177B (zh) 一种在桌面云下转向播放多媒体文件的方法、虚拟机及系统
CN104144351A (zh) 应用虚拟化平台的视频播放方法和装置
US11564017B2 (en) Interactive application server on a second screen device
CN109788301B (zh) 一种流媒体的直播方法、终端设备、直播系统及计算机可读存储介质
CN103763614A (zh) 智能云电视iptv终端系统及其实现方法
KR101839054B1 (ko) 클라우드 게임 장치 및 방법
KR101480140B1 (ko) 멀티 인젝션 서버 및 그 방법
KR101909257B1 (ko) 단말로부터 요청된 가상 어플리케이션을 실행하는 서버 및 방법, 그리고 단말
US9954718B1 (en) Remote execution of applications over a dispersed network
JP2015089485A (ja) ゲームを提供するサーバ及び方法
US9398342B1 (en) Interactive applications
JP5504370B1 (ja) 動画をクライアント端末に表示させるサーバ及び方法
US9609365B2 (en) Application execution on a server for a television device
US20210154576A1 (en) Vector graphics-based live streaming of video games
US20230231821A1 (en) Display apparatus and operating method thereof
US11013994B2 (en) Method for playing back applications from a cloud, telecommunication network for streaming and for replaying applications (APPs) via a specific telecommunication system, and use of a telecommunication network for streaming and replaying applications (APPs)
JP2015088156A (ja) 動画をクライアント端末に表示させるサーバ及び方法
JP2015089507A (ja) ゲームを提供するサーバ及び方法
KR20150075783A (ko) 스트리밍 데이터에 대응하는 영상 데이터를 tv 디바이스로 전송하는 방법 및 디바이스
JP2015036112A (ja) ゲームを提供するサーバ及び方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right