KR20210006906A - 라이브 이벤트의 비디오 스트리밍과 온라인 게임 환경의 동기화 - Google Patents

라이브 이벤트의 비디오 스트리밍과 온라인 게임 환경의 동기화 Download PDF

Info

Publication number
KR20210006906A
KR20210006906A KR1020207032245A KR20207032245A KR20210006906A KR 20210006906 A KR20210006906 A KR 20210006906A KR 1020207032245 A KR1020207032245 A KR 1020207032245A KR 20207032245 A KR20207032245 A KR 20207032245A KR 20210006906 A KR20210006906 A KR 20210006906A
Authority
KR
South Korea
Prior art keywords
user devices
video
question
server
user
Prior art date
Application number
KR1020207032245A
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 노비 디지털 엔터테인먼트 프라이빗 리미티드
Publication of KR20210006906A publication Critical patent/KR20210006906A/ko

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/358Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/65Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/355Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an MPEG-stream for transmitting to a mobile phone or a thin client
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/45Controlling the progress of the video game
    • A63F13/46Computing the game score
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/45Controlling the progress of the video game
    • A63F13/48Starting a game, e.g. activating a game device or waiting for other players to join a multiplayer session
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/85Providing additional services to players
    • A63F13/86Watching games played by other players
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • 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/2385Channel allocation; Bandwidth allocation
    • 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/242Synchronization processes, e.g. processing of PCR [Program Clock References]
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • H04N21/25841Management of client data involving the geographical location of the client
    • 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/4302Content synchronisation processes, e.g. decoder synchronisation
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/533Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game for prompting the player, e.g. by displaying a game menu
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/57Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of game services offered to the player
    • A63F2300/572Communication between players during game play of non game information, e.g. e-mail, chat, file transfer, streaming of audio and streaming of video

Abstract

본 발명의 실시예는 온라인 게임 환경과 적어도 하나의 라이브 이벤트의 비디오 스트리밍과의 동기화를 개시한다. 게임 애플리케이션은 복수의 사용자 장치(110) 각각 상에서, 스트리밍되는 상기 비디오와 동시에 실행되도록 구성된다. 상기 라이브 이벤트의 적어도 하나의 동작에 기반하여, 적어도 하나의 인스턴트 질문(instantaneous question)이 생성된다. 상기 비디오와 상기 인스턴트 질문 모두는 상기 라이브 이벤트 비디오와 동기화된 상태로 표시된다. 또한, 서버(106)는 상기 적어도 하나의 인스턴트 질문의 답변을 다음 인스턴트 질문 및 스트리밍되는 상기 비디오와 동기화하여, 상기 답변, 상기 비디오 및 상기 다음 인스턴트 질문이 상기 복수의 사용자 장치(110) 중 적어도 하나 상에 동기화된 상태로 표시되도록 한다.

Description

라이브 이벤트의 비디오 스트리밍과 온라인 게임 환경의 동기화
본 발명은 일반적으로 온라인 게임에 관한 것으로, 특히 본 발명의 실시예는 라이브 이벤트의 비디오 스트리밍 및 그 동기화에 기반한 온라인 게임 환경 제공에 관한 것이다.
사용자로 하여금 게임을 편하게 플레이하도록 하기 위하여, 텔레비전 세트, 모바일 장치, 스마트 폰, 개인 정보 단말기(personal digital assistants), 랩톱, 태블릿 등과 같은 다양한 전자 장치를 이용한 다양한 게임 플랫폼이 사용될 수 있다. 온라인 게임 애플리케이션은 최근 몇 년간 많은 인기를 구가해 왔으며, 사용자는 온라인 게임을 하기 위하여 전자 장치를 통해 하나 이상의 서버에 연결된다. 또한, 이러한 게임은 복수의 사용자들이 실시간으로 참여하는 상호작용형(interactive) 게임이다.
데이터 스트리밍의 출현에 따라, 원격 서버로부터 네트워크 내의 다양한 전자 장치로 오디오 및 비디오 데이터를 스트리밍할 수 있게 되었다. 또한, 데이터 스트리밍 기술은, 다양한 지리적 장소에 있는 다수의 청중/시청자를 위해 임의의 라이브 이벤트의 오디오 및/또는 비디오를 실시간으로 스트리밍하는 데 사용된다. 최근에는, 스포츠 경기, 라이브 콘서트 등과 같이 실시간으로 발생하는 현실의 이벤트와 시나리오를 기반으로 하는 온라인 게임 애플리케이션이 개발되고 있다. 이러한 온라인 애플리케이션은 각자의 장치 상에서 게임을 플레이하는 다수의 사용자의 참여가 필요하다.
현실의 이벤트를 기반으로 한 온라인 게임 환경과 관련된 문제 중 하나는, 스트리밍된 데이터가 네트워크 내에 연결된 장치에서 동시에 수신되지 않는, 전송 지연(transmission latency)이다. 이는 게임 서버에 연결된 다양한 전자 장치가 단일의 서비스 제공 업체에 등록되지 않았기 때문이다. 위성 네트워크, 로컬 케이블 네트워크, 모바일 서비스 네트워크 등을 포함한 다양한 수단을 통해 서비스를 제공하는, 상이한 서비스 제공 업체들이 존재할 수 있다. 또한, 이러한 서비스 제공 업체는 일반적으로 규제 기관이 설정한, 상이한 대역폭들 하에서 운영된다. 이러한 상황에서, 실시간 이벤트의 특정 동작과 관련된 게임 데이터가, 전자 장치에서 스트리밍되는 실시간 이벤트의 비디오와 동기화 상태에 이르지 못할 가능성이 있다.
기존의 시스템 및 방법은, 게임의 데이터 및 비디오 컴포넌트(video component)를 스트리밍하기 위해, RTMP 및 RTSP 프로토콜을 사용하는 네트워크 기반 게임을 제공한다. 그러나, 기존의 시스템 및 방법은 전송되는 데이터와 비디오 간의 지연을 효과적으로 없애지 못한다. 그 결과, 비디오가 끊기거나 흔들리면서, 게이머는 게임 장치 화면 상에서 비디오 스트리밍의 지연을 관찰하게 된다.
또한, 게이머는 실시간 게임에 참여할 때와 TV 또는 인터넷을 통해 실시간으로 게임을 시청할 때, 상이한 시간 지연을 경험할 수 있다. 이는 사용자/게이머의 즐거움을 방해하므로, 모든 참가자/게이머에게 공정성을 보장하기 위해 지연을 무효화시킬 필요가 있다.
전술한 문제점을 고려하여, 전자 장치로 스트리밍되는 실시간 데이터 및 실시간 스트리밍되는 실시간 이벤트를 기반으로 하는 게임 애플리케이션 데이터 간의 동기화를 제공할 필요가 있다.
전술한 종래 기술의 단점 및 한계를 고려하여, 본 발명의 목적은 실시간으로 발생하는 현실 세계 시나리오에 기반한 상호작용 게임 환경의 시스템 및 방법을 제공하는 것이다.
본 발명의 다른 목적은, 복수의 위치에서 복수의 사용자에 의해 사용되는 복수의 전자 장치에서, 실시간 비디오 데이터 스트리밍과 실시간 게임 환경의 동기화를 제공하는 것이다.
본 항목은 아래 상세한 설명의 추가적인 설명을 단순화한 형태로, 본 발명의 특정 양태를 소개하기 위해 제공된다. 본 항목은 청구된 사항의 주요 기능이나 범위를 식별하기 위한 것이 아니다.
상기의 목적 및 다른 목적을 고려하여, 본 발명의 일 양태는 온라인 게임 환경에서 적어도 하나의 라이브 이벤트의 비디오 스트리밍과의 동기화를 제공하는 방법에 관한 것일 수 있다. 상기 방법은: 상기 적어도 하나의 라이브 이벤트에 기반하여 게임 애플리케이션 - 상기 게임 애플리케이션은 복수의 지리적 장소에 위치한 복수의 사용자 장치(110)에서 실행됨 - 을 구성하는 단계; 서버(104)를 통해, 상기 적어도 하나의 라이브 이벤트의 비디오 스트림 - 상기 비디오 스트림은 대응하는 시간 지연에 의해 상기 복수의 사용자 장치(110) 상에서 수신됨 - 을 스트리밍하도록 상기 복수의 사용자 장치(110) 상에 상기 게임 애플리케이션을 구성하는 단계; 상기 적어도 하나의 라이브 이벤트에서 발생하는 적어도 하나의 동작에 기반하여 적어도 하나의 인스턴트 질문(instantaneous question)을 생성하는 단계; 상기 대응하는 시간 지연에 기반해, 상기 적어도 하나의 인스턴트 질문과 상기 복수의 사용자 장치(110) 상에서 스트리밍되는 상기 비디오를 동기화하여, 상기 비디오와 상기 적어도 하나의 인스턴트 질문 모두가 상기 복수의 사용자 장치(110) 상에 동기화된 상태로 표시되도록 하는 단계; 및 상기 대응하는 시간 지연에 기반해, 상기 적어도 하나의 인스턴트 질문의 답변을 다음 인스턴트 질문 및 상기 복수의 사용자 장치(110) 상에서 스트리밍되는 상기 비디오와 동기화하여, 상기 답변, 상기 비디오 및 상기 다음 인스턴트 질문이 상기 복수의 사용자 장치(110) 중 적어도 하나 상에 동기화된 상태로 표시되는 단계를 포함한다.
본 발명의 다른 양태는 온라인 게임 환경 내에서 적어도 하나의 라이브 이벤트의 비디오 스트리밍과의 동기화를 제공하는 시스템(100)에 관한 것이다. 상기 시스템(100)은 게임 애플리케이션(상기 게임 애플리케이션을 통한 상기 적어도 하나의 라이브 이벤트의 스트리밍에 기반하여 구성됨)을 실행하는, 복수의 지리적 장소에 위치한 각각의 복수의 사용자 장치(110)를 포함한다. 게임 어플리케이션은 라이브 이벤트의 비디오 스트리밍과 동시에 실행된다. 시스템(100)은 서버(104)를 더 포함하고, 상기 서버(104)는 복수의 사용자 장치(110) 각각 상의 상기 적어도 하나의 라이브 이벤트의 비디오(상기 비디오는, 대응하는 시간 지연에 의해 상기 복수의 사용자 장치(110) 상에서 수신됨)를 스트리밍한다. 상기 서버(104)는 상기 적어도 하나의 라이브 이벤트에서 발생하는 적어도 하나의 동작에 기반하여 적어도 하나의 인스턴트 질문(instantaneous question)을 생성하도록 더 구성된다. 상기 서버(104)는 상기 대응하는 시간 지연에 기반해, 상기 적어도 하나의 인스턴트 질문과 상기 복수의 사용자 장치(110) 상에서 스트리밍되는 상기 비디오를 더 동기화하여, 상기 비디오와 상기 적어도 하나의 인스턴트 질문 모두가 상기 복수의 사용자 장치(110) 상에 동기화된 상태로 표시되도록 한다. 상기 서버(104)는, 상기 대응하는 시간 지연에 기반해, 상기 적어도 하나의 인스턴트 질문의 답변을 다음 인스턴트 질문 및 상기 복수의 사용자 장치(110) 상에서 스트리밍되는 상기 비디오와 더 동기화하여, 상기 답변, 상기 비디오 및 상기 다음 인스턴트 질문이 상기 복수의 사용자 장치(110) 중 적어도 하나 상에 동기화된 상태로 표시되도록 한다. 데이터베이스(108)는 상기 서버(104)와 통신하도록 구성되고, 또한, 게임 애플리케이션 및 상기 적어도 하나의 라이브 이벤트에서 발생하는 적어도 하나의 동작에 관한 데이터를 저장하도록 제공된다..
본 발명의 다양한 실시예에서, 적어도 하나의 인스턴트 질문은 대화형(interactive) 객관식 질문(상기 대화형 객관식 질문에 대한 임의의 선택이 이루어져, 이에 상응하도록 상기 복수의 사용자 장치(110)에 의해 서버(104)로 제출됨)이다. 상기 제출된 선택이 기정의된 시간 범위(time window)를 벗어나 수신되면 상기 서버에 의해 거부된다. 기정의된 시간 범위 내에서 제출된 선택이 수신되었을 때, 상기 제출된 선택은 이의 정확도를 결정하기 위하여 상기 적어도 하나의 인스턴트 질문의 상기 답변과 비교된다. 상기 복수의 사용자 장치(110)의 각각의 사용자의 순위(상기 순위는 상기 대응되는 사용자 장치(110)가 제출한 정답의 총 수에 기반하여 계산됨)를 계산하여 리더 보드(leader board)가 더 생성된다. 무작위 추출 기술을 사용하여, 상기 리더 보드로부터 적어도 한 명의 승자가 선택된다.
본 발명의 실시예예서, 상기 시간 지연은: 상기 복수의 사용자 장치(110)의 지리적 장소, 및 상기 복수의 사용자 장치(110) 중 임의의 하나가 상기 적어도 하나의 라이브 이벤트의 상기 비디오 스트리밍을 수신하기 위하여 가입(subscribe)한 해당 서비스의 제공자에게 할당되는 대역폭을 포함하는, 복수의 요인 중 적어도 하나에 좌우된다.
본 명세서에 포함되고 본 개시의 일부를 구성하는 첨부 도면은, 개시된 방법 및 시스템의 예시적인 실시예를 도시하며, 상이한 도면 전체에 걸쳐 동일한 참조 번호가 동일한 부분을 지칭한다. 도면의 구성요소는 본 발명의 원리를 명확하게 설명하는 데 중점을 두며, 반드시 축척을 따를 필요는 없다. 일부 도면은 블록도를 사용하여 구성요소를 나타낼 수 있으며, 각 구성요소의 내부 회로를 나타내지 않을 수 있다. 당업자는 이러한 도면의 개시가 해당 구성요소를 구현하기 위해 일반적으로 사용되는 전자 부품 또는 회로의 개시를 포함한다는 사실을 이해할 것이다. 구성요소의 하위 구성요소 간의 연결은, 명확성을 위해 도면에 표시되지 않았을 수 있으므로, 본 명세서에 명시적으로 달리 기술되지 않는 한 모든 하위 구성요소는 서로 연결된 것으로 가정해야 한다.
도 1은 본 발명의 예시적인 실시예에 따라, 온라인 게임 환경 내에서 적어도 하나의 라이브 이벤트의 비디오 스트리밍과의 동기화를 제공하기 위한 시스템(100) 아키텍처(system architecture)를 도시한다.
도 2는 본 발명의 예시적인 실시예에 따라, 라이브 이벤트 기반의 게임에 참여한 사용자가 획득한 점수를 평가하기 위한 다양한 모듈을 도시한다.
도 3은 본 발명의 예시적인 실시예에 따라, 적어도 하나의 사용자 장치(110) 상에서 스트리밍되는 라이브 이벤트 비디오와의 게임 환경의 동기화를 도시한다.
도 4는 본 발명의 예시적인 실시예에 따라, 적어도 하나의 라이브 이벤트의 비디오 스트리밍과의 온라인 게임 환경의 동기화를 제공하는 방법을 도시한다.
다음의 설명에서, 설명의 목적을 위해, 본 발명의 실시예의 완전한 이해를 제공하기 위한 다양한 특정 세부사항이 제시된다. 그러나, 본 발명의 실시예는 이러한 특정 세부사항 없이 실시될 수 있음이 명백할 것이다. 이후에 설명되는 몇 가지 특징은 서로 독립적으로 또는 다른 특징의 조합과 함께 각각 사용될 수 있다. 개별 특징만으로는 전술된 임의의 문제를 해결하지 못하거나 전술된 문제 중 한 가지만을 해결할 수 있다.
본 발명은 적어도 하나의 라이브 이벤트의 비디오 스트리밍을 온라인 게임 환경과 동기화시키기 위한 시스템 및 방법을 포함한다. 게임 애플리케이션은 라이브 이벤트를 기반으로 하며, 전송 연기 또는 지연으로 인해 비디오가 상이한 사용자 장치(110)에서 상이한 시간에 수신되는 시나리오에서도, 라이브 이벤트의 비디오와 동시에 실행된다. 따라서, 본 발명은 사용자가 실시간으로 모든 이벤트의 라이브 비디오를 화면에서 볼 수 있도록 하는 방법 및 시스템을 포함한다. 동시에, 사용자는 네트워크를 통해 사용자 장치(110)에서 스트리밍되는 실시간 이벤트 기반의 상호작용형 게임을 쉽게 플레이할 수 있다.
본 명세서에서 사용된, "하드웨어"라는 용어는, 개별 구성요소, 집적 회로, 주문형 반도체(ASIC, application specific integrated circuit), 필드 프로그래밍 가능 게이트 어레이(field programmable gate array), 기타 프로그래밍 가능 논리 장치 및/또는 당업자에게 명백할 수 있는 기타 적절한 하드웨어의 조합을 포함한다.
본 명세서에서 사용된, "소프트웨어"라는 용어는, 하나 이상의 객체, 에이전트(agent), 스레드(thread), 코드 라인, 서브 루틴(subroutine), 개별 소프트웨어 애플리케이션, 또는 당업자에게 명백할 수 있는 기타 적절한 소프트웨어 구조를 포함한다. 일 실시예에서, 소프트웨어는 운영 체제와 같은 범용 소프트웨어 애플리케이션에서 작동하는 하나 이상의 코드 라인 및, 특수 목적 소프트웨어 애플리케이션 내에서 작동하는 하나 이상의 코드 라인 또는 기타 적절한 소프트웨어 구조를 포함할 수 있다.
본 명세서에서 사용된, "게임 애플리케이션"이라는 용어는, 사용자 전자 장치/사용자 장치 내에 존재하는 소프트웨어 애플리케이션이며, 웹 기반 애플리케이션 및 모바일 애플리케이션을 포함할 수 있다. 게임 애플리케이션은 웹 서버로부터 사용자 장치로 설치되거나 다운로드될 수 있다. 사용자 장치는 통신 네트워크를 통해 서버에 연결될 수 있다. 게임 애플리케이션은 연락처 관리 애플리케이션, 캘린더 애플리케이션, 메시지 애플리케이션, 이미지 및/또는 비디오 수정 및 보기 애플리케이션, 내비게이션 애플리케이션, 오피스 애플리케이션, 비즈니스 애플리케이션, 교육 애플리케이션, 건강 및 피트니스 애플리케이션, 의료 애플리케이션, 금융 애플리케이션, 소셜 네트워킹 애플리케이션 및 기타 애플리케이션을 포함하되 이에 한정되지 않는 다른 애플리케이션과 통신 가능하게 결합될 수 있다. 애플리케이션은, 시간이 지남에 따라 전자 장치에서 생성, 수정 또는 설치될 수 있는 "데이터"를 사용한다. 데이터는 연락처, 캘린더 항목, 통화 로그, 게임 데이터 로그, SMS, 이미지, 비디오, 공장 기본값 및 게임 애플리케이션과 관련된 기타 데이터를 포함하되, 이에 한정되지 않는다.
본 명세서에서 사용된, "결합", "결합된"등의 유사 용어는, 물리적 연결(예: 전도체 연결), 가상 연결(예: 데이터 메모리 장치의 무작위로 할당된 메모리 위치를 통한 연결), 논리적 연결(예: 반도체 장치의 논리 게이트를 통한 연결), 기타 적절한 연결, 또는 당업자에게 명백할 수 있는 이러한 연결의 조합을 포함할 수 있다.
본 명세서에서 사용된, "사용자 장치"라는 용어는, 이동 전화, 스마트 폰, 셋톱 박스, 스마트 텔레비전, 랩톱, 범용 컴퓨터, 데스크톱, 개인 정보 단말기, 태블릿 컴퓨터, 메인프레임 컴퓨터, 또는 당업자에게 명백할 수 있는 임의의 다른 컴퓨팅 장치를 포함하되 이에 한정되지 않는다.
이하 본 발명의 실시예가 시스템의 구조적, 기능적 특징 및 방법의 세부사항과 함께 논의될 것이다.
도 1은, 본 발명의 예시적인 실시예에 따라, 온라인 게임 환경 내에서 적어도 하나의 라이브 이벤트의 비디오 스트리밍과의 동기화를 제공하기 위한 시스템(100) 아키텍처를 도시한다. 도 1에 도시된 바와 같이, 시스템(100)은, 게임 엔진(106) 및 데이터베이스(108)와 관련된 서버(104)에 통신 가능하게 결합된, 이벤트 서버(102)를 포함한다. 서버는 또한 통신 네트워크를 통해 복수의 사용자 장치(110)에 통신 가능하게 결합된다. 시스템(100)은 복수의 사용자 장치(110)에서 스트리밍되는 라이브 비디오를 온라인 게임 환경 내에서 동기화시키도록 구성된다.
본 발명의 일 실시예에서, 복수의 사용자 장치(110)는 복수의 지리적 장소에 위치한다. 적어도 하나의 상호작용형 게임 애플리케이션은, 적어도 실시간으로 발생하는 온-라이브(on live) 이벤트에 기반해, 게임 엔진(106)을 사용하여 서버(104)에 의해 구성된다. 라이브 이벤트는 스포츠 경기, 콘서트, 대회 이벤트 등을 포함할 수 있다. 라이브 이벤트의 비디오는, 이벤트 서버(102)를 거쳐, 통신 네트워크를 통하여 복수의 사용자 장치(110)에서 스트리밍된다. 적어도 하나의 게임 애플리케이션은, 사용자 또는 참가자가 상호작용형 게임을 플레이할 수 있도록, 복수의 사용자 장치(110)에서 실행되게끔 구성된다. 승인된 사용자만이 각각의 사용자 장치를 통해 상호작용형 게임에 참여할 수 있도록, 다양한 보안 제어가 제공될 수 있다.
또한, 이벤트 서버(102)는 라이브 비디오와 게임 애플리케이션의 동기화를 용이하게 하기 위하여 서버(104)에 통신 가능하게 연결된다. 게임 애플리케이션은 라이브 이벤트의 비디오 스트리밍과 동시에 실행된다. 비디오는, 이벤트 서버(102)의 실제 전송 시간과 비교하여, 대응하는 시간 지연에 의해 복수의 사용자 장치(110) 상에서 수신되는데, 이는 해당 시간 지연이 정부 당국에 의해 조직적이며 임의적으로 시행될 수 있기 때문이다. 따라서, 서로 다른 서비스 제공자에 가입(subscribe)된 서로 다른 사용자 장치(110)는, 당국에서 허용된 시간 지연에 의하여 비디오를 수신할 수 있다.
서버(104)는, 적어도 하나의 라이브 이벤트에서 발생하는 적어도 하나의 동작에 기반하여, 적어도 하나의 인스턴트 질문을 생성하도록 더 구성된다. 인스턴트 질문은 스포츠 경기(예: 크리켓) 등과 적어도 하나의 이벤트의 라이브 액션을 기반으로 한다. 본 발명의 일 실시예에서, 인스턴트 질문은 게임 애플리케이션을 사용하는 동안 사용자가 옵션을 선택하도록 요구하는, 객관식 질문(MCQ, multiple choice question)이다. 적어도 하나의 인스턴트 질문이 복수의 사용자 장치(110) 상에서 스트리밍되는 비디오와 동기화되어, 비디오 및 적어도 하나의 인스턴트 질문 모두가 복수의 사용자 장치(110) 중 적어도 하나 상에 동기화된 상태로 표시된다.
본 발명의 일 실시예에서, 각각의 인스턴트 질문에 대응하는 답변은 서버(104)에 의해 생성되어 적어도 하나의 사용자 장치(110)로 전송된다. 이전 인스턴트 질문에 대한 답변은 다음 인스턴트 질문과 서로 동기화되어, 적어도 하나의 사용자 장치(110)로 함께 전송된다. 즉, 대응하는 시간 지연을 기반으로, 다음 인스턴트 질문은, 복수의 사용자 장치(110)에서 스트리밍되는 동영상 및 직전 순간에 전송된 이전 질문의 답변과 동기화된다. 전술된 동기화 과정은, 사용자 장치(110)가 이전 인스턴트 질문의 답변, 다음 인스턴트 질문의 답변 및 라이브 이벤트의 비디오를 동시에 수신할 수 있도록 한다. 따라서, 비디오, 현재 순간의 질문 및 이전 질문에 대한 답변은, 전송 지연에도 불구하고 복수의 사용자 장치(110) 중 적어도 하나 상에 동기화된 상태로 표시된다.
본 발명의 일 실시예에서, '피드(feed)'라고도 칭해지는 실시간 비디오 데이터 스트리밍은, 이벤트 서버(102)에 의해 매우 빠른 속도로 서버(104)로 전송되어, 다중 선택 인스턴트 질문을 렌더링할 수 있다. 이벤트 서버(102)는, 피드를 전송하여 적절한 순간에 서버(104)에 의해 인스턴트 질문이 생성될 수 있도록 하는, 제3자 서버일 수 있다. MCQ에는 퀴즈(trivia) 질문 또는 예측 질문이 포함될 수 있다. 예를 들어, 크리켓 경기가 현실 세계에서 실시간으로 진행되는 경우, 예측 질문은 '다음 공의 결과는 무엇인가?'가 될 수 있다. 이 질문은 볼러(bowler)가 공을 볼링하는 동안 사용자 장치(110)에 도달해야 하며, 타자(batsman)가 공을 치거나 공을 놓친 후에는 안 된다. 이후, 플레이어/사용자는 사용자 장치(110)의 화면 상에 보이는 객관식 질문에 대한 선택을 할 것이 요구된다. 사용자 또는 플레이어는 각각의 사용자 장치(110) 인터페이스를 통해, 질문에 대한 답변을 선택하여 제출한다. 사용자가 점수를 얻기 위해서는, 기정의된 시간 범위(time window) 내에 선택을 제출해야 한다. 사용자가 기정의된 시간 범위 내에서 자신의 선택을 제출하지 않을 경우, 서버(104)에 의해 선택의 제출이 거부될 수 있다. 이러한 시나리오에서, 사용자는 점수를 잃을 수 있다. 본 발명의 실시예에 따르면, 기정의된 시간 범위는 초 단위로 측정되는 시간 간격이다. 이후, 사용자에게 다음 인스턴트 질문이 제공되고, 기정의된 시간 내에 다음 답변을 다시 제출해야 한다. 이는 시스템(100)에 의해 승자가 결정될 때까지 전체 이벤트에 대해 계속된다. 승자를 결정하는 프로세스는, 각자의 사용자 장치(110)에서 상호작용형 게임을 플레이하는 동안 사용자가 높은 점수를 획득한 것을 기반으로 한다. 본 발명의 일 실시예에서, 사용자에 의해 제출된 선택은 적어도 하나의 인스턴트 질문의 대응하는 정답(상기 정답은 서버(104)에 의해 생성되어 적어도 하나의 사용자 장치(110)로 전송됨)과 비교된다. 제출된 선택은, 정확도를 판단하기 위하여, 사용자 장치(110)에 의해 수신된 답변과 비교되거나 매핑된다. 그 후, 사용자가 정답을 제출할 때마다 사용자 계정 또는 사용자 프로필에 점수가 추가되고, 가장 높은 점수를 받은 사용자는 무작위화(randomization) 기술을 사용하여 우승자로 선정될 수 있다.
본 발명의 일 실시예에서, 서버(104)는 임의의 라이브 이벤트의 비디오 스트리밍을 위해 HTTP 기반 메커니즘을 사용하도록 구성된다. HTTP 기반 프로세스는, 상이한 사용자 장치(110) 또는 클라이언트들이 서로 다른 대역폭을 사용하고, 잠재적으로 나머지 시청자보다 앞서거나 뒤처지게 한다. HTTP 기반 스트리밍의 동기화되지 않은(out-of-sync) 임의의 특성은, 정해진 시간 범위 내에 질문에 답해야 하는 "워치 앤 플레이(Watch-and-Play)"유형의 게임에 문제를 일으킬 수 있다. 따라서, 본 발명의 실시예는 비디오 스트림의 HLS 매니페스트(HTTP Live Streaming manifest) 내에 PDT 확장자(Program Date Time extension)를 삽입하는 것을 포함하며, 여기서 HLS 매니페스트는 코멘트, HLS 커맨드 및 비디오 전송 세그먼트에 대한 링크 목록이 있는'텍스트'파일이다. PDT는 기정의된 시간 간격(초 단위)마다 새로고침되므로, 진행중인 경기/게임 사이에 참여하는 모든 사용자는 사용자 장치를 사용하여 진행중인 라이브 이벤트의 즉각적인 정보를 얻을 수 있다. 이는 라이브 이벤트의 비디오와 게임 환경의 동기화를 용이하게 한다. 또한, 이는 사용자가 로그인한 후 게임을 플레이하고, 게임이 진행되는 동안 언제든지 상호작용에 참여할 수 있도록 한다. 따라서, 사용자는 온라인 게임을 시작할 때 항상 로그인할 필요가 없으며, 게임이 종료되기 전에 언제든 참가할 수 있다.
PDT 확장자의 추가는 라이브 크리켓 경기와 같은 이벤트의 다음 라이브 스트리밍 예시를 통해 더욱 잘 설명될 수 있다.
예를 들어, 사용자 장치(110)에서 크리켓 경기를 라이브 스트리밍하는 동안, "지연이 없는" 이상적인 상태에서 볼러의 실제 '런업(run-up)'시간이"XX:00:00 에서 시작되면, XX:00:00 시간에, 서버(104)가 사용자 장치(110)에 MCQ 인스턴트 질문을 보낼 수 있다. 이러한 시간이 HLS 매니페스트에 삽입되었을 때, 볼링되는 공과 사용자 장치(110) 상에서 스트리밍되는 비디오 간에는 "지연이 없는"이상적인 상태이므로, 사용자 장치(110)는 공이 볼링될 때, 대응하는 질문을 표시할 수 있으며, 사용자는 XX:00:10 시간까지 답변을 보낼 수 있다(공을 날리는 데 10 초가 걸린다고 가정함).
그러나, 이러한 이상적인 시나리오가 발생하지 않을 수 있으며, 사용자 장치(110)로 비디오를 스트리밍하는 데 일정한 지연이 일어날 수 있다. 그 결과, 사용자 장치(110)는 몇 초가 지날 때까지 XX:00:00 이벤트(즉, 런업 시작)를 받지 못하고, 실제로 해당 동작의 비디오 스트림을 수신하는 시간은 XX:00:10 또는 XX:00:15 시간이 될 수 있다. 이는 사용자 장치(110)가 스트리밍 시간(PDT에 의해 표시됨)과 장치의 현지 시간 사이의 차이를 계산하도록 함으로써 해결된다. 이러한 차이 또는 오프셋(offset)은, 이후 라이브 이벤트의 모든 동작을 보정하는 데 사용할 수 있다. 예를 들어, XX:00:00 의 런업 시작은 질문이 XX:00:10 에 표시된다는 것을 의미하며, XX:00:10 에 날아가는 공은 이에 따라 타임 스탬프(timestamp) XX:00:20 에 매핑되어, 기정의된 답변 제출 시간 범위가 종료된다. 대응하는 시간 지연(즉, 이 예에서는 10초 또는 15초)에 기반하여, 이전 인스턴트 질문의 답변이 다음 인스턴트 질문과 동기화되고, 해당 순간의 비디오가 사용자 장치(110)에서 스트리밍된다. 이에 따라 답변, 비디오 및 다음 인스턴트 질문은 복수의 사용자 장치(110) 중 적어도 하나에 동기화된 상태로 표시된다.
실제 시나리오에서, PDT는 트랜스코더(transcoder)에 의해 생성되며, 크리켓 경기와 같은 이벤트의 런업 시작, 공 날림 등 다양한 동작의 시간은 사람에 의해 표시된다. PDT가 사용자 장치(110)의 현지 시간에 대해 보정되지 않아 이벤트 동작 시간을 이에 따라 조정하지 않은 경우, 오류가 발생할 수 있다. 본 발명의 실시예는 사용자 장치(110)측에서 설정된 현지 시간에 따라 PDT의 보정을 용이하게 하는 것을 포함한다. 예를 들면, XX:00:00(PDT)에 볼링된 공이, 사용자 기기에서는 XX:00:20 에 표시되는 경우, 이에 따라 사용자 장치(110)는 이벤트 시간을 20초 감소시킨다.
본 발명의 일 실시예에서, 데이터베이스(108)는 고객/사용자 프로필 정보를 저장하도록 구성될 수 있다. 사용자 프로필 정보에는 사용자 이름, 휴대폰/연락처, 이메일 ID, 사용자 장치(110) ID, 사용자 기록 생성 날짜/시간 정보 등이 포함된다. 데이터베이스(108)는 서버(104)와 통신하도록 구성되어 있으며, 또한, 게임 애플리케이션 및 적어도 하나의 라이브 이벤트에서 발생하는 적어도 하나의 동작에 관한 데이터를 저장하기 위해 제공된다.
도 2는 본 발명의 예시적인 실시예에 따른, 라이브 이벤트를 기반으로 게임에 참여한 사용자가 획득한 점수를 평가하기 위한 다양한 모듈을 도시한다. 다양한 모듈은 입력을 수신하여 플레이어의 점수를 평가하고 플레이어 중에서 승자를 결정할 수 있는 다양한 기능을 제공한다. 상기 모듈은 다음과 같이 설명된다:
게임 로그 모듈(202) - 온라인 게임에 참여하는 동안, 모든 사용자의 상호작용 및 활동에 대한 게임 로그를 유지한다. 게임 로그에는 특정 게임에 대한 사용자 로그인 시간과 로그아웃 시간 사이의 사용자 활동 내역이 포함된다.
리더 보드(Leaderboard) 모듈(204) - 이 모듈은 플레이 중인 각 게임에 대한 득점판(scoreboard)을 제공한다. 리더 보드 모듈은 각각의 사용자 장치(110)를 통해 다양한 사용자로부터 수신된 가장 많은 수의 정답을 기반으로 득점판을 유지한다. 스코어 보드는 플레이어 또는 사용자가 사용자 장치(110)에서 수신한 인스턴트 질문에 정답을 제출할 때마다 새로고침된다. 따라서 리더 보드는 "경기별 리더 보드"이며, 리더 보드 데이터는 질문이 "종료"된 후, 즉, 해당 인스턴트 질문에 대한 시간 범위가 초과되었을 때, 매번 다시 계산된다.
경험 포인트 모듈(206) - 이 모듈은 지금까지 각각의 장치에서 사용자가 획득한 전체 포인트를 유지한다.
상품 모듈(208) - 이 모듈은 크리켓 경기와 같은 이벤트의 실시간 특성을 유지하면서, 게임에서 이기는 경우 각각의 사용자 장치(110)를 통해 사용자에게 경고 및 알림을 제공한다. 사용자는 게임에서 이겼다는 알림을 받으면 상품을 받을 수 있다.
수정 모듈(210) - 또한, 본 발명은 제3자 서버로부터 수신된 게임 틱(game tick) 정보의 로그를 감사(auditing)하는 방법 및 시스템을 포함한다. 또한, 일반적인 시나리오에서는 수정이 필요할 수 있으며, 서버(104)가 플레이어 장치로 보낸 특정 질문에 대한 다수의 기록이 있을 수 있다. 예를 들어, 인적 오류, 공의 부재 등 다양한 이유로 인해 이전 답변에 수정이 필요한 상황이 있을 수 있다. 따라서, 오류가 발생할 경우, 게임 엔진(106)은 제3자 서버로부터 정정 답변을 수신하고, 두 그룹의 플레이어에게 포인트를 부여한다. 이 경우, 개인(고객)의 리더 보드 상에서는 점수가 뒤처지지만, 서버 점수는 항상 정확하다. 사용자 장치(110)에 설치된 애플리케이션을 재시작하면 클라이언트 점수가 새로고침된다.
경기 리더 보드 계산 모듈(212) - 또한, 본 발명은 사용자가 플레이하는 게임의 임의의 순간에 승자를 식별하기 위해 리더 보드를 가장 빠르게 확인하는 기능을 포함한다. 경기 리더 보드 계산 모듈은 사용자가 모든 인스턴트 질문에 대한 첫 번째 정답을 제출하자마자 리더 보드에 올라가는 것을 용이하게 한다. 무작위화 기능을 사용하는 이러한 모듈은, 게임 전체가 완료되고 게임에 참여한 사용자가 모든 질문에 답한 후에야 리더 보드를 계산하는 기존의 무작위화 기술과 비교하여, 게임의 승자를 공정하게 결정하게 된다. 본 발명의 실시예에 따르면, 사용자가 인스턴트 질문에 대한 답변으로 첫 번째 정답을 제출하면, 이들의 플레이어 매치 포지션이 설정된다. 동점일 경우, 플레이어 매치 포지션은 타이브레이크(tie-break) 무작위화 기능으로서 사용된다. 플레이어 매치 포지션은 사용자가 게임을 플레이할 때마다 새로 설정되는 플레이어/사용자의 순위이다. 라이브 이벤트를 기반으로 한 상호작용형 게임에 참여하는 사용자가 일반적으로 매우 많으며 다양하기 때문에, 플레이어 순위 결정은 사용자가 화면 상에서 보는 이벤트 동작의 가변성에 대한 임의의 함수이다. 임의의 UserID 또는 DeviceID는 승자를 결정하기 위해 선택될 수 있으며, 어느 당사자(즉, 사용자 장치 또는 서버)도 그러한 선택 절차에서 제어권을 가질 수 없고, 이는 게임에 참여하는 사용자의 다양한 인원수에 따라 달라질 수 있다. 사용자 장치 ID를 셔플 기능으로 사용하는 세 번째 무작위화 레이어가 주어지면, 플레이어 매치 포지션은 각각의 득점 라운드 후에 잠재적으로 변경될 수 있다. 모든 새로운 게임은 동일한 사용자에 대해 새로운 플레이어 매치 포지션을 얻는다.
또한, 토너먼트 리더 보드는, 변경되지 않은 상태로 저장되고 심사관이 사용할 수 있는 모든 이전 경기 우승 리더 보드의 점수를 평가하여 계산된다. 심사관은 평가를 수행하고, 승자를 공표한다.
본 발명의 일 실시예에서, 게임을 플레이하는 사용자에게 게임 순위가 부여된다. 게임 순위는 경기 점수와 플레이어 매치 포지션의 정렬 기능으로, 타이브레이크 이벤트에서 사용된다. 예를 들어, 주어진 시간에 모든 사용자의 점수가 동일한 경우 또는 모든 사용자가 하나의 질문에만 대답하는 경우, 사용자간에 타이브레이크가 발생할 수 있다. 따라서, 타이브레이크는 항상 플레이어 매치 포지션이다.
시스템(100)은 또한 본 발명에 따라 게임 애플리케이션과 관련된 데이터 및 정보를 저장하도록 구성된 데이터베이스(108) 또는 저장소(108)와 통신 가능하게 연결된다.
도 3은 본 개시의 예시적인 실시예에 따른, 적어도 하나의 사용자 장치(110)에서 스트리밍되는 라이브 이벤트 비디오와 게임 애플리케이션(308)의 실행의 동기화를 도시한다. 전술된 바와 같이, 서버(104)는 비디오 데이터를 장치로 스트리밍함으로써 라이브 크리켓 경기와 같은 라이브 이벤트의 비디오(306)를 전송하기 위해, 복수의 사용자 장치(110)와 통신 가능하게 결합된다. 서버(104)는 적어도 하나의 라이브 이벤트에서 발생하는 다양한 동작에 기반하여 인스턴트 질문을 생성하도록 구성된다. 도시된 바와 같이, 각각의 장치에서 발생하는 기타 지연에도 불구하고, 이벤트의 특정 동작에 대해 생성된 질문은, 모든 순간 해당 동작의 비디오(306)와 동기화된 상태로 각 장치에 전달된다. 따라서, 비디오(306) 및 적어도 하나의 인스턴트 질문 모두가, 복수의 사용자 장치(110) 각각 상에 동기화된 상태로 표시된다.
또한, 적어도 하나의 인스턴트 질문에 대한 답변은 다음 인스턴트 질문과 동기화되며, 비디오(306) 또한 복수의 사용자 장치(110) 상에서 스트리밍되고 있어, 답변, 비디오(306) 및 다음 인스턴트 질문은 복수의 사용자 장치(110) 중 적어도 하나에 동기화되어 표시된다.
전술된 시스템(100)의 모듈 및 기능은, 본 발명에 따라, 데이터 처리, 입/출력 처리 및/또는 시스템(100)의 작동을 가능하게 하는 기타 임의의 기능을 수행하도록 구성된 적어도 하나의 프로세서와 연결될 수 있다. 본 명세서에서 사용된, "프로세서"라는 용어는, 인스트럭션을 처리하기 위한 임의의 논리 회로를 지칭한다. 프로세서는 특수 목적 프로세서 또는 복수의 마이크로 프로세서일 수 있으며, 여기서 하나 이상의 마이크로 프로세서는 적어도 하나의 컨트롤러, 마이크로 컨트롤러, 주문형 반도체(ASIC), 필드 프로그래밍 가능 게이트 어레이(FPGA) 회로 및 기타 임의의 유형의 집적 회로(IC) 등과 연결될 수 있다. 또한, 적어도 하나의 프로세서는, 본 발명에서 설명된 바와 같은 방법 단계를 처리하는, 원격 위치의 프로세서일 수 있다. 또한 다른 기능 중에서도, 프로세서는 메모리 또는 데이터 저장 장치에 저장된 컴퓨터 판독 가능 인스트럭션 및 데이터를 가져오고 실행하도록 구성된다.
본 발명의 실시예에 따르면, 데이터베이스(108) 또는 저장소는 메모리, 임의의 외부 저장 장치, 및 메타데이터(metadata)를 저장하기 위해 사용자 장치(110)와 통신하도록 구성될 수 있는 내부 저장 장치를 사용하여 구현될 수 있다. 메모리는 또한 적어도 하나의 라이브 이벤트의 비디오 스트리밍과 게임 환경의 동기화를 구현하기 위해 시스템(100)에 의해 사용되는, 실행될 인스트럭션, 임의의 정보 및 데이터를 저장할 수 있다. 본 명세서에서 사용된, "메모리"또는 "저장소"라는 용어는, 기계가 특정 방식으로 작동하도록 하는 데이터 및/또는 인스트럭션을 저장하는 임의의 비 일시적(non-transitory) 매체를 의미한다. 메모리는 휘발성 메모리 또는 비 휘발성 메모리를 포함할 수 있다. 비 휘발성 메모리에는, 예를 들어, 자기 디스크(magnetic disk), 광학 디스크(optical disk), 솔리드 스테이트 드라이브(solid state drive) 또는 정보 및 인스트럭션을 저장하기 위한 기타 저장 장치가 포함된다. 휘발성 메모리는, 예를 들어, 동적 메모리를 포함한다. 메모리는 단일 또는 다중, 결합 또는 독립적일 수 있으며, 당업자에게 명백할 수 있는 다른 변형 및 구현의 옵션을 포함한다.
프로세서, 메모리 및 시스템(100)은, 예를 들어, 통신 버스를 사용하여 상호 연결된다. "통신 버스(communication bus)"또는 "버스"는, 데이터 및/또는 인스트럭션의 전송을 용이하게 하기 위하여 버스에 의해 사용되는 하드웨어, 소프트웨어 및 통신 프로토콜을 포함한다. 통신 버스는 이러한 구성 요소 간의 데이터, 정보 및 콘텐츠 전송을 용이하게 한다.
하나 이상의 사용자 장치(110)는 Android OS, Apple iOS, Blackberry OS, Symbian, Web OS, Windows Phone OS 등을 포함하는, 동일하거나 다른 운영 체제에서 작동할 수 있다.
예시적인 실시예에서, 시스템(100)은 사용자 장치(110)로부터 수신된 요청의 인증을 제공하기 위한 인증 모듈을 포함한다. 서버(104)는 수신 요청에 대한 제한 정책을 설정하고, 수신된 요청의 유효화 및 무효화 중 하나를 제공한다. 인증 모듈은 유효한 요청을 인증하고, 게임 애플리케이션의 실행을 위한 서버(104)의 적어도 일부분에 들어가는 임의의 악성 요청을 판단하여, 이의 침투를 방지한다. 따라서, 수신되는 요청은 인증 모듈에 의해 추가로 필터링되어, 인증된 요청만이 실행을 위해 서버(104)로 전송된다. 인증 모듈은, 사용자 ID, 장치 ID 및 서버(104)에서 제공받을 수 있는 영구 ID와 같은 다양한 매개 변수를 기반으로, 수신된 요청을 승인한다. 본 발명의 일 실시예에서, 인증 모듈은 사용자 장치(110)의 자격 증명 인증을 제공하기 위해, 기저장된 자격 증명과 확인하고 매칭한다. 인증 모듈은 데이터베이스(108) 또는 저장소와 연결되어 인증 프로세스와 관련된 데이터를 저장하고 검색한다.
도 3은 본 개시의 예시적인 실시예에 따라, 적어도 하나의 라이브 이벤트의 비디오 스트리밍과의 동기화를 제공하는 방법을 도시한다.
단계(402)에서, 게임 애플리케이션은 크리켓 경기와 같이 현실 세계에서 발생하는 적어도 하나의 라이브 이벤트에 기반하여 구성된다. 게임 애플리케이션은 복수의 사용자 장치(110)에 통신 가능하게 연결된 서버(104)를 사용하여 구성된다. 구성된 게임 애플리케이션은 복수의 지리적 장소에 위치한 복수의 사용자 장치(110)에서 실행될 수 있다.
단계(404)에서, 복수의 사용자 장치(110)상의 게임 애플리케이션은 서버(104)를 통해 적어도 하나의 라이브 이벤트의 비디오를 스트리밍한다. 비디오는 정부 기관에서 정한 승인 표준에 따르는, 대응하는 시간 지연에 의해 복수의 사용자 장치(110)에서 수신된다.
단계(406)에서, 적어도 하나의 라이브 이벤트에서 발생하는 적어도 하나의 동작에 기반하여, 적어도 하나의 인스턴트 질문이 생성된다.
단계(408)에서, 대응하는 시간 지연에 기반하여, 적어도 하나의 인스턴트 질문이 복수의 사용자 장치(110) 상에서 스트리밍되는 비디오와 동기화되어, 비디오 및 적어도 하나의 인스턴트 질문 모두가 복수의 사용자 장치(110) 상에 동기화된 상태로 표시된다.
단계(410)에서, 대응하는 시간 지연에 기반하여, 적어도 하나의 인스턴트 질문의 답변은 다음 인스턴트 질문 및 복수의 사용자 장치(110)에서 스트리밍되는 비디오와 동기화되어, 답변, 비디오 및 다음 인스턴트 질문이 복수의 사용자 장치(110) 중 적어도 하나 상에 동기화된 상태로 표시된다.
본 명세서에서 개시된 실시예에 대해 많은 강조가 이루어졌지만, 본 발명의 원리를 벗어나지 않고 실시예에 대한 변형이 이루어질 수 있음이 이해될 것이다. 본 발명의 실시예에서의 이러한 및 기타 변형은 본 발명의 범위 내에 있을 것이며, 전술된 설명의 내용은 예시적이며 비제한적이라는 것이 이해될 것이다.

Claims (25)

  1. 온라인 게임 환경 내에서 적어도 하나의 라이브 이벤트의 비디오 스트리밍과의 동기화를 제공하는 방법에 있어서, 상기 방법은:
    상기 적어도 하나의 라이브 이벤트에 기반하여 게임 애플리케이션 - 상기 게임 애플리케이션은 복수의 지리적 장소에 위치한 복수의 사용자 장치(110)에서 실행됨 - 을 구성하는 단계;
    서버(104)를 통해, 상기 적어도 하나의 라이브 이벤트의 비디오 스트림 - 상기 비디오 스트림은 대응하는 시간 지연에 의해 상기 복수의 사용자 장치(110) 상에서 수신됨 - 을 수신하도록 상기 복수의 사용자 장치(110) 상에 상기 게임 애플리케이션을 구성하는 단계;
    상기 적어도 하나의 라이브 이벤트에서 발생하는 적어도 하나의 동작에 기반하여 적어도 하나의 인스턴트 질문(instantaneous question)을 생성하는 단계; 및
    상기 대응하는 시간 지연에 기반해, 상기 적어도 하나의 인스턴트 질문과 상기 복수의 사용자 장치(110) 상에서 스트리밍되는 상기 비디오를 동기화하여, 상기 비디오와 상기 적어도 하나의 인스턴트 질문 모두가 상기 복수의 사용자 장치(110) 상에 동기화된 상태로 표시되도록 하는 단계;
    를 포함하는, 방법.
  2. 제1항에 있어서,
    상기 대응하는 시간 지연에 기반해, 상기 적어도 하나의 인스턴트 질문의 답변을 다음 인스턴트 질문 및 상기 복수의 사용자 장치(110) 상에서 스트리밍되는 상기 비디오와 동기화하여, 상기 답변, 상기 비디오 및 상기 다음 인스턴트 질문이 상기 복수의 사용자 장치(110) 중 적어도 하나 상에 동기화된 상태로 표시되는 단계를 더 포함하는, 방법.
  3. 제1항에 있어서,
    상기 온라인 게임 환경과 상기 라이브 비디오 스트림의 동기화를 용이하게 하기 위하여, 상기 비디오 스트림의 HLS 매니페스트(HTTP Live Streaming manifest) 내에 PDT 확장자(Program Date Time extension)가 삽입되는, 방법.
  4. 제1항에 있어서,
    상기 게임 애플리케이션이 상기 라이브 이벤트의 상기 비디오 스트리밍과 동시에 실행되는, 방법.
  5. 제1항에 있어서,
    상기 적어도 하나의 인스턴트 질문은 대화형(interactive) 객관식 질문 - 상기 대화형 객관식 질문에 대한 임의의 선택이 이루어져, 상기 복수의 사용자 장치(110)에 의해 이에 상응하도록 상기 서버(104)로 제출됨 - 인, 방법.
  6. 제5항에 있어서,
    상기 제출된 선택이 기정의된 시간 범위(time window)를 벗어나 수신되면 상기 서버(104)에 의해 거부되는, 방법.
  7. 제5항에 있어서,
    상기 제출된 선택의 정확도를 결정하기 위하여, 상기 제출된 선택이 상기 적어도 하나의 인스턴트 질문의 상기 답변과 비교되는, 방법.
  8. 제5항에 있어서,
    상기 복수의 사용자 장치(110)의 각각의 사용자의 순위 - 상기 순위는 해당 상기 대응되는 사용자 장치(110)가 제출한 정답의 총 수에 기반하여 계산됨 - 를 계산하여 리더 보드(leader board)를 더 생성하는, 방법.
  9. 제8항에 있어서,
    무작위 추출 기술을 사용하여 상기 리더 보드로부터 적어도 한 명의 승자를 선택하는 단계를 더 포함하는, 방법.
  10. 제1항에 있어서,
    상기 적어도 하나의 이벤트에 대한 상기 복수의 사용자 장치(110)의 실시간 상호작용의 로그를 제공하기 위한 게임 로그 모듈을 더 구성하는, 방법.
  11. 제1항에 있어서,
    제3자 웹 서버를 사용하여 상기 제출된 선택의 정확도에 대해 평가하는, 방법.
  12. 제1항에 있어서,
    상기 시간 지연은:
    상기 복수의 사용자 장치(110)의 지리적 장소; 및
    상기 복수의 사용자 장치(110) 중 임의의 하나가 상기 적어도 하나의 라이브 이벤트의 상기 비디오 스트리밍을 수신하기 위하여 가입(subscribe)한, 해당 서비스의 제공자에게 할당되는 대역폭;
    을 포함하는 복수의 요인 중 적어도 하나에 좌우되는, 방법.
  13. 온라인 게임 환경 내에서 적어도 하나의 라이브 이벤트의 비디오 스트리밍과의 동기화를 제공하는 시스템(100)에 있어서, 상기 시스템(100)은:
    게임 애플리케이션 - 상기 게임 애플리케이션을 통한 상기 적어도 하나의 라이브 이벤트의 스트리밍에 기반하여 구성됨 - 을 실행하는, 복수의 지리적 장소에 위치한 복수의 사용자 장치(110); 및
    상기 복수의 사용자 장치(110)와 통신하는 서버(104)를 포함하되,
    상기 서버(104)는:
    상기 복수의 사용자 장치(110) 각각 상의 상기 적어도 하나의 라이브 이벤트의 비디오 - 상기 비디오는 대응하는 시간 지연에 의해 상기 복수의 사용자 장치(110) 상에서 수신됨 - 를 스트리밍하고,
    상기 적어도 하나의 라이브 이벤트에서 발생하는 적어도 하나의 동작에 기반하여 적어도 하나의 인스턴트 질문(instantaneous question)을 생성하고,
    상기 대응하는 시간 지연에 기반해, 상기 적어도 하나의 인스턴트 질문과 상기 복수의 사용자 장치(110) 상에서 스트리밍되는 상기 비디오를 동기화하여, 상기 비디오와 상기 적어도 하나의 인스턴트 질문 모두가 상기 복수의 사용자 장치(110) 상에 동기화된 상태로 표시되도록 구성된, 시스템(100).
  14. 제13항에 있어서,
    상기 서버(104)가:
    상기 대응하는 시간 지연에 기반해, 상기 적어도 하나의 인스턴트 질문의 답변을 다음 인스턴트 질문 및 상기 복수의 사용자 장치(110) 상에서 스트리밍되는 상기 비디오와 동기화하여, 상기 답변, 상기 비디오 및 상기 다음 인스턴트 질문이 상기 복수의 사용자 장치(110) 중 적어도 하나 상에 동기화된 상태로 표시되도록 더 구성되는, 시스템(100).
  15. 제13항에 있어서,
    상기 온라인 게임 환경과 상기 라이브 비디오 스트림의 동기화를 용이하게 하기 위하여, 상기 비디오 스트림의 HLS 매니페스트(HTTP Live Streaming manifest) 내에 PDT 확장자(Program Date Time extension)가 삽입되는, 시스템(100).
  16. 제13항에 있어서,
    상기 게임 애플리케이션이 상기 라이브 이벤트의 상기 비디오 스트리밍과 동시에 실행되는, 시스템(100).
  17. 제13항에 있어서,
    상기 적어도 하나의 인스턴트 질문은 대화형(interactive) 객관식 질문 - 상기 대화형 객관식 질문에 대한 임의의 선택이 이루어져, 이에 상응하도록 상기 복수의 사용자 장치(110)에 의해 서버(104)로 제출됨 - 인, 시스템(100).
  18. 제17항에 있어서,
    상기 제출된 선택이 기정의된 시간 범위(time window)를 벗어나 수신되면 상기 서버에 의해 거부되는, 시스템(100).
  19. 제17항에 있어서,
    상기 제출된 선택의 정확도를 결정하기 위하여, 상기 제출된 선택이 상기 적어도 하나의 인스턴트 질문의 상기 답변과 비교되는, 시스템(100).
  20. 제17항에 있어서,
    상기 복수의 사용자 장치(110)의 각각의 사용자의 순위 - 상기 순위는 해당 상기 대응되는 사용자 장치(110)가 제출한 정답의 총 수에 기반하여 계산됨 - 를 계산하여 리더 보드(leader board)를 더 생성하는, 시스템(100).
  21. 제20항에 있어서,
    무작위 추출 기술을 사용하여 상기 리더 보드로부터 적어도 한 명의 승자를 선택하는 단계를 더 포함하는, 시스템(100).
  22. 제13항에 있어서,
    상기 적어도 하나의 이벤트에 대한 상기 복수의 사용자 장치(110)의 실시간 상호작용의 로그를 제공하기 위한 게임 로그 모듈을 더 구성하는, 시스템(100).
  23. 제13항에 있어서,
    제3자 웹 서버(104)를 사용하여 상기 제출된 선택의 정확도에 대해 평가하는, 시스템(100).
  24. 제13항에 있어서,
    상기 시간 지연은:
    상기 복수의 사용자 장치(110)의 지리적 장소; 및
    상기 복수의 사용자 장치(110) 중 임의의 하나가 상기 적어도 하나의 라이브 이벤트의 상기 비디오 스트리밍을 수신하기 위하여 가입(subscribe)한, 해당 서비스의 제공자에게 할당되는 대역폭;
    을 포함하는 복수의 요인 중 적어도 하나에 좌우되는, 시스템(100).
  25. 제13항에 있어서,
    상기 게임 애플리케이션 및 상기 적어도 하나의 라이브 이벤트에서 발생하는 적어도 하나의 동작에 관한 데이터를 저장하기 위해 상기 서버(104)와 통신하도록 구성된 데이터베이스(108)를 더 포함하는, 시스템(100).
KR1020207032245A 2018-04-06 2019-04-05 라이브 이벤트의 비디오 스트리밍과 온라인 게임 환경의 동기화 KR20210006906A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
IN201821013325 2018-04-06
IN201821013325 2018-04-06
PCT/IN2019/050282 WO2019193610A2 (en) 2018-04-06 2019-04-05 Synchronization of online gaming environment with video streaming of a live event

Publications (1)

Publication Number Publication Date
KR20210006906A true KR20210006906A (ko) 2021-01-19

Family

ID=68100157

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207032245A KR20210006906A (ko) 2018-04-06 2019-04-05 라이브 이벤트의 비디오 스트리밍과 온라인 게임 환경의 동기화

Country Status (11)

Country Link
US (1) US11819758B2 (ko)
EP (1) EP3773949A4 (ko)
JP (1) JP2021520961A (ko)
KR (1) KR20210006906A (ko)
CN (1) CN112272580A (ko)
AU (1) AU2019247957A1 (ko)
CA (1) CA3095994A1 (ko)
LU (1) LU101524B1 (ko)
PH (1) PH12020551662A1 (ko)
SG (1) SG11202009900WA (ko)
WO (1) WO2019193610A2 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220135009A (ko) 2021-03-29 2022-10-06 주식회사 위시모바일 라이브 통신 제어 서비스를 제공하기 위한 컴퓨터 프로그램 및 기록매체
KR20220135010A (ko) 2021-03-29 2022-10-06 주식회사 위시모바일 복수의 클라이언트 단말의 스트리밍을 제어하는 통신 제어 시스템
KR20220135007A (ko) 2021-03-29 2022-10-06 주식회사 위시모바일 라이브 통신 제어 장치 및 방법

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113101673B (zh) * 2021-03-30 2024-02-09 北京达佳互联信息技术有限公司 直播互动的处理方法、装置及服务器
CN117336520B (zh) * 2023-12-01 2024-04-26 江西拓世智能科技股份有限公司 基于智能数字人的直播信息的处理方法及处理装置

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6080063A (en) * 1997-01-06 2000-06-27 Khosla; Vinod Simulated real time game play with live event
US6697869B1 (en) * 1998-08-24 2004-02-24 Koninklijke Philips Electronics N.V. Emulation of streaming over the internet in a broadcast application
AU5766000A (en) * 1999-06-25 2001-01-31 Rulesworks, Llc Method for multiplayer sports trivia game
US20020133562A1 (en) * 2001-03-13 2002-09-19 Newnam Scott G. System and method for operating internet-based events
US20040032424A1 (en) * 2001-11-06 2004-02-19 Florschuetz Alan Scott Method and system for producing and administering a web-cast event
TW589892B (en) * 2003-03-12 2004-06-01 Asustek Comp Inc Instant video conferencing method, system and storage medium implemented in web game using A/V synchronization technology
US20060068818A1 (en) * 2004-09-28 2006-03-30 Amir Leitersdorf Audience participation method and apparatus
US7997582B2 (en) * 2005-02-07 2011-08-16 Wong Michael K Multi-player audio game playable on internet
US8705195B2 (en) * 2006-04-12 2014-04-22 Winview, Inc. Synchronized gaming and programming
US8149530B1 (en) 2006-04-12 2012-04-03 Winview, Inc. Methodology for equalizing systemic latencies in television reception in connection with games of skill played in connection with live television programming
US20080242409A1 (en) * 2007-03-30 2008-10-02 Ntn Buzztime, Inc. Video Feed Synchronization in an Interactive Environment
US7778869B2 (en) * 2007-06-12 2010-08-17 Microsoft Corporation Fair discounting auction
US8858313B1 (en) 2010-01-25 2014-10-14 Topspin Networks, Inc. Methods, systems, and devices for synchronized parallel gameplay
WO2012048257A2 (en) * 2010-10-08 2012-04-12 Lumi Technologies, Inc. Scalable synchronization of events among server and clients with varying lag-times
US9440152B2 (en) * 2013-05-22 2016-09-13 Clip Engine LLC Fantasy sports integration with video content
US20150347415A1 (en) * 2014-05-30 2015-12-03 Apple Inc. Http live streaming dateranges
US10971026B1 (en) * 2014-06-17 2021-04-06 Matthew B. Norkaitis Method for integrating educational learning into entertainment media
US10226702B2 (en) * 2015-05-25 2019-03-12 International Business Machines Corporation Vehicle entertainment system
CN106331562B (zh) * 2015-06-16 2020-04-24 南宁富桂精密工业有限公司 云端服务器、控制设备及音频视频同步方法
WO2017058951A1 (en) * 2015-09-30 2017-04-06 Sony Interactive Entertainment America Llc Systems and methods for providing time-shifted intelligently synchronized game video
US10099133B2 (en) * 2016-06-30 2018-10-16 Abrakadabra Reklam ve Yayncilik Limited Sirketi Digital multimedia platform for converting video objects to gamified multimedia objects
CN106302434B (zh) * 2016-08-11 2022-01-14 腾讯科技(深圳)有限公司 服务器适配方法、装置和系统
US11301877B2 (en) * 2016-09-01 2022-04-12 Qualtrics, Llc Providing analysis of perception data over time for events
US9998796B1 (en) * 2016-12-12 2018-06-12 Facebook, Inc. Enhancing live video streams using themed experiences
US10284888B2 (en) * 2017-06-03 2019-05-07 Apple Inc. Multiple live HLS streams

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220135009A (ko) 2021-03-29 2022-10-06 주식회사 위시모바일 라이브 통신 제어 서비스를 제공하기 위한 컴퓨터 프로그램 및 기록매체
KR20220135010A (ko) 2021-03-29 2022-10-06 주식회사 위시모바일 복수의 클라이언트 단말의 스트리밍을 제어하는 통신 제어 시스템
KR20220135007A (ko) 2021-03-29 2022-10-06 주식회사 위시모바일 라이브 통신 제어 장치 및 방법

Also Published As

Publication number Publication date
LU101524A1 (en) 2020-01-07
CN112272580A (zh) 2021-01-26
LU101524B1 (en) 2020-05-04
EP3773949A2 (en) 2021-02-17
AU2019247957A1 (en) 2020-11-19
JP2021520961A (ja) 2021-08-26
SG11202009900WA (en) 2020-11-27
WO2019193610A2 (en) 2019-10-10
US11819758B2 (en) 2023-11-21
PH12020551662A1 (en) 2021-05-31
CA3095994A1 (en) 2019-10-10
EP3773949A4 (en) 2021-12-29
US20210154575A1 (en) 2021-05-27
WO2019193610A3 (en) 2019-11-14

Similar Documents

Publication Publication Date Title
LU101524B1 (en) Synchronization of online gaming environment with video streaming of a live event
JP7184913B2 (ja) ファンダムの影響による勝者トーナメントの作成
CN112788358B (zh) 游戏对局的视频直播方法、视频发送方法、装置及设备
US20230146419A1 (en) Method of generating separate contests of skill or chance from two independent events
US20210001236A1 (en) System and method for integrating live video communication and content in the context of internet-based sports gaming mobile device application
US7632186B2 (en) Spectator mode for a game
US8025572B2 (en) Dynamic spectator mode
US10201755B2 (en) System and method for providing a platform for real time interactive game participation
US20170368454A1 (en) Systems, methods and computer readable media for a viewer controller
KR20040104753A (ko) 온라인 게이밍 관객
US11704703B2 (en) Systems and methods for dynamically modifying video game content based on non-video gaming content being concurrently experienced by a user
AU2013231217A1 (en) Interactive system
US20230356082A1 (en) Method and apparatus for displaying event pop-ups, device, medium and program product
US20220184501A1 (en) Video game center for a controlled environment facility
US20220086511A1 (en) Method and data processing system for making predictions during a live event stream
CN112717422A (zh) 实时信息交互方法及装置、设备、存储介质
US20220072419A1 (en) Real-time interactive platform for live streams
US20240048795A1 (en) Real-time interactive platform for live streams
TWI610710B (zh) 根據票選競賽數值隨機生成賓果盤之方法
CN116320510A (zh) 直播互动方法、装置、设备及存储介质
WO2010139000A1 (en) Entertainment event