KR102242225B1 - 인터랙티브 비디오 컨텐츠의 렌더링 검출 및 이에 대한 응답 - Google Patents

인터랙티브 비디오 컨텐츠의 렌더링 검출 및 이에 대한 응답 Download PDF

Info

Publication number
KR102242225B1
KR102242225B1 KR1020197036619A KR20197036619A KR102242225B1 KR 102242225 B1 KR102242225 B1 KR 102242225B1 KR 1020197036619 A KR1020197036619 A KR 1020197036619A KR 20197036619 A KR20197036619 A KR 20197036619A KR 102242225 B1 KR102242225 B1 KR 102242225B1
Authority
KR
South Korea
Prior art keywords
video
content
video content
rendered
rendering
Prior art date
Application number
KR1020197036619A
Other languages
English (en)
Other versions
KR20190141019A (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 KR1020217011026A priority Critical patent/KR102350420B1/ko
Publication of KR20190141019A publication Critical patent/KR20190141019A/ko
Application granted granted Critical
Publication of KR102242225B1 publication Critical patent/KR102242225B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/35Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users
    • H04H60/37Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users for identifying segments of broadcast information, e.g. scenes or extracting programme ID
    • H04H60/372Programme
    • 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
    • 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
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • 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/537Controlling 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 using indicators, e.g. showing the condition of a game character on screen
    • A63F13/5375Controlling 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 using indicators, e.g. showing the condition of a game character on screen for graphically or textually suggesting an action, e.g. by displaying an arrow indicating a turn in a driving game
    • 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/67Generating 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 adaptively or by learning from player actions, e.g. skill level adjustment or by storing successful combat sequences for re-use
    • 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/70Game security or game management aspects
    • A63F13/75Enforcing rules, e.g. detecting foul play or generating lists of cheating players
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/783Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • 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/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/23605Creation or processing of packetized elementary streams [PES]
    • 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/25866Management of end-user data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4112Peripherals receiving signals from specially adapted client devices having fewer capabilities than the client, e.g. thin client having less processing power or no tuning capabilities
    • 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/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4343Extraction or processing of packetized elementary streams [PES]
    • 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 or rendering scenes according to encoded video stream scene graphs
    • 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/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4781Games
    • 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/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6581Reference data, e.g. a movie identifier for ordering a movie or a product identifier in a home shopping application
    • 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/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6582Data stored in the client, e.g. viewing habits, hardware capabilities, credit card number
    • 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/812Monomedia components thereof involving advertisement data
    • 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/8126Monomedia components thereof involving additional data, e.g. news, sports, stocks, weather forecasts
    • H04N21/8133Monomedia components thereof involving additional data, e.g. news, sports, stocks, weather forecasts specifically related to the content, e.g. biography of the actors in a movie, detailed information about an article seen in a video program
    • 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/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • H04N21/8352Generation of protective data, e.g. certificates involving content or source identification data, e.g. Unique Material Identifier [UMID]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Library & Information Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Marketing (AREA)
  • Optics & Photonics (AREA)
  • Computer Graphics (AREA)
  • General Business, Economics & Management (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

컴퓨팅 시스템은 사전 설정된 비디오 세그먼트를 나타내는 제 1 부분 및 동적 정의되는 비디오 세그먼트를 나타내는 제 2 부분을 포함하는, 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠의 핑거프린트를 획득한다. 쿼리 핑거프린트를 획득하는 동안, 컴퓨팅 시스템은 (a) 쿼리 핑거프린트의 제 1 부분과 사전 설정된 비디오 세그먼트를 나타내는 레퍼런스 핑거프린트 사이의 매칭을 검출하고, (b) 이 매칭의 검출에 기초하여, 렌더링되고 있는 비디오 컨텐츠를 식별하고, (c) 렌더링되고 있는 비디오 컨텐츠를 식별한 이후에, 적어도 쿼리 핑거프린트의 제 2 부분에, 트레이닝된 뉴럴 네트워크를 적용하며, 또한 (d) 뉴럴 네트워크의 적용에 기초하여, 식별된 비디오 컨텐츠의 렌더링이 계속되고 있는 것을 검출한다. 또한 적어도 식별된 비디오 컨텐츠의 렌더링이 계속되는 것을 검출한 것에 응답하여, 컴퓨팅 시스템은 관련 액션을 취한다.

Description

인터랙티브 비디오 컨텐츠의 렌더링 검출 및 이에 대한 응답
관련 출원에 대한 상호 참조
본원은 2017년 6월 12일자로 출원된 미국 특허 출원 제15/620,440호에 대한 우선권을 주장하며, 이 문헌의 전체 내용은 참조로서 본 명세서에 포함된다.
일반적인 비디오 프레젠테이션 디바이스(video presentation device)는 비디오 컨텐츠를 나타내는 디지털 비디오 스트림을 수신하고, 비디오 컨텐츠를 하나 이상의 사용자가 볼 수 있도록 디스플레이 상에 렌더링하게 동작한다. 이러한 디바이스들의 예들로는 텔레비전, 컴퓨터 모니터, 헤드 마운트 디스플레이, 태블릿, 스마트 폰, 시계, 카메라, 프로젝션 시스템 등을 포함하며, 이에 한정되지 않는다.
많은 경우에 있어, 비디오 프레젠테이션 디바이스는 렌더링을 위해 다양한 비디오 컨텐츠 중 임의의 것을 선택적으로 제공할 수 있는 비디오 소스와 통신할 수 있으며, 비디오 프레젠테이션 디바이스는 선택된 비디오 컨텐츠를 수신하여 렌더링하도록 구성될 수 있다. 예를 들어, 비디오 프레젠테이션 디바이스는 사용자에 의해 선택된 비디오 컨텐츠를 출력하도록 구성되는 수신기, 플레이어, 콘솔, 컴퓨터 및/또는 원격 서버와 연결되거나 통신 가능하게 링크될 수 있으며, 비디오 프레젠테이션 디바이스는 비디오 소스에 의해 출력되고 있는 비디오 컨텐츠를 수신하고 이 비디오 컨텐츠를 디스플레이 상에 실시간으로 렌더링하여 볼 수 있게 하도록 구성될 수 있다.
일부 비디오 컨텐츠는 적어도 부분적으로 "인터랙티브식(interactive)"일 수 있으며, 이 경우 비디오 컨텐츠가 프레젠테이션되는 사용자는 컨텐츠가 렌더링되고 있을 때 그 컨텐츠와 상호 작용하고, 이 컨텐츠는 해당 사용자 상호 작용에 기초하여 동적으로 변하게 된다. 제한이 아닌, 인터랙티브 비디오 컨텐츠의 일 예는 비디오 게임이며, 여기서 사용자(게임을 하는 사람)는 게임 진행 방식 및 이에 따른 게임의 비디오 컨텐츠가 시간 경과에 따라 행해지는 방식에 대하여 어느 정도 제어를 할 수 있다. 예를 들어, 게임 콘솔, 원격 서버 또는 게임 비디오 컨텐츠의 다른 소스와의 상호 작용을 통해, 사용자는 게임 목표 달성이나 달성 실패, 게임에서 아이템 획득 또는 상실, 게임 내에서의 가상 배향 및/또는 게임에서 하나 이상의 아바타 또는 물체의 움직임이나 다른 액션 등과 관련된 비디오 컨텐츠를 제어할 수 있다. 결과적으로, 인터랙티브 비디오 컨텐츠는 사용자의 입력에 따라 실시간으로 변할 수 있으며, 재생될 때마다 실질적으로 달라질 수 있다.
렌더링되고 있는 비디오 컨텐츠에 대한 이러한 사용자 상호 작용 및 영향은 비디오 컨텐츠를 재생하는 기본 메커니즘에 대한 사용자 제어(여기서는 사용자의 상호 작용이 기본 비디오 컨텐츠 자체에 영향을 미치지 않음)와 구별될 수 있다. 예를 들어, 게임 콘솔 또는 원격 서버와 같은 비디오 소스를 통해 사용자는 재생, 일시 중지, 중지, 빨리 감기 또는 빨리 되감기와 같은 기능들을 제어할 수 있다. 그러나 이러한 제어 기능들은 예를 들어 비디오 게임의 스토리와 진행을 제어하는 실시간 사용자 상호 작용과는 달리, 기본 비디오 컨텐츠에 영향을 미치지 않으며 따라서 인터랙티브식인 것으로 간주되지 않는다.
또한, 이러한 인터랙티브식 또는 동적 정의되는 컨텐츠를 포함하는 비디오 컨텐츠는 간혹 렌더링되고 있는 동안 사용자 상호 작용에 기초하여 변하지 않는 소정의 사전 설정된 또는 정적으로 정의된 비디오 세그먼트를 포함할 수도 있다. 예를 들어, 비디오 게임은 종종 영화 수준으로 제작된 비디오 클립(video clip)과 같은 사전 설정된 "컷씬(cutscene)"들을 포함하며, 이들은 게임 레벨들 간의 전환으로서 자동 재생되는 것으로서, 시작 장면, 종료 장면 등과 같은 다른 사전 설정된 비디오 세그먼트들이다. 이러한 사전 설정된 비디오 세그먼트들이 재생되는 시기(예를 들면, 비디오 게임에서 사용자가 성공적으로 플레이 레벨을 달성하는 경우 등)를 사용자가 제어할 수 있지만, 사전 설정된 비디오 세그먼트들이 렌더링되고 있는 동안에는 사용자 상호 작용에 따라 이 사전 설정된 비디오 세그먼트들의 컨텐츠가 달라지지 않는다.
비디오 프레젠테이션 디바이스가 비디오 컨텐츠를 수신하고 렌더링할 때, 비디오 프레젠테이션 디바이스는 렌더링되고 있는 비디오 컨텐츠의 아이덴티티의 표시를 갖고 있지 않을 수도 있다. 비디오 컨텐츠를 비디오 프레젠테이션 디바이스에 제공하는 로컬 플레이어 또는 원격 서버와 같은 비디오 소스는 그러한 정보를 가지고 있을 수 있다. 그러나 해당 비디오 소스로부터 비디오 컨텐츠를 수신하는 비디오 프레젠테이션 디바이스에는 그러한 정보가 없을 수도 있다.
예를 들어, 컴퓨터 모니터가 비디오 게임 콘솔에 연결되어 있고 사용자가 게임 콘솔과 상호 작용하여 재생할 특정 비디오 게임을 선택하면, 게임 콘솔은 어떤 게임이 재생되고 있는며 이에 따라 어떤 게임의 비디오 컨텐츠가 렌더링을 위해 출력되고 있는지에 대한 표시를 가질 수 있다. 그러나 컴퓨터 모니터는 단지 게임 콘솔에 의해 제공되는 비디오 컨텐츠를 수신 및 렌더링할 수 있을 뿐이며, 렌더링되고 있는 비디오 컨텐츠가 어떤 비디오 게임이 재생되고 있으며 이에 따라 어떤 비디오 게임의 컨텐츠 모니터가 렌더링되고 있는지는 물론이고, 렌더링되고 있는 비디오 컨텐츠가 비디오 게임이라는 표시조차도 갖지 않을 수 있다.
그러나, 다양한 이유로, 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠의 아이덴티티를 결정하는 것이 유용할 수 있다. 또한, 비디오 소스로부터 어떤 비디오 컨텐츠가 프레젠테이션되고 있는지에 대한 보고를 비디오 소스로부터 수신하지 않고서, 비디오 소스 또는 그것의 프로바이더의 관여없이 그것을 수행하는 것이 유용할 수 있다. 예를 들어, 비디오 프레젠테이션 디바이스 자체 및/또는 비디오 프레젠테이션 디바이스와 협력하여 작동하는 네트워크 서버가, 렌더링되고 있는 비디오 컨텐츠 자체에 대한 평가에 기초하여, 비디오 프레젠테이션 디바이스가 렌더링하고 있는 비디오 컨텐츠를 식별하는 것이 유용할 수 있다.
렌더링되고 있는 비디오 컨텐츠의 아이덴티티에 대한 지식이 주어지면, 비디오 프레젠테이션 디바이스 또는 다른 엔티티는 식별된 비디오 컨텐츠에 특정한 액션들과 같은, 하나 이상의 유용한 액션들을 프로그램적으로 수행할 수 있다. 예를 들어, 엔티티는 특정 비디오 컨텐츠가 프레젠테이션되는 정도를 측정하기 위해 컨텐츠 레이팅 또는 분석 시스템의 일부로서, 비디오 프레젠테이션 디바이스가 식별된 비디오 컨텐츠를 프레젠테이션하고 있다는 사실을 기록할 수 있다. 대안적으로, 엔티티는 팝업 광고 또는 식별된 컨텐츠와 관련된 다른 정보와 같은 부가 비디오 컨텐츠의 프레젠테이션을 트리거하는 것에 의해 또는 비디오 컨텐츠가 식별된 비디오 컨텐츠라는 것에 기초하여 프레젠테이션되고 있는 특정 비디오 컨텐츠에 응답할 수 있다.
예를 들어, 렌더링되고 있는 비디오 컨텐츠가 특정 비디오 게임인 것으로 결정될 때, 엔티티는 해당 비디오 게임과 관련된 가상 또는 물리적 상품 또는 서비스를 제안하는 팝업 광고를 프레젠테이션할 수 있다. 또한, 엔티티는 컷씬(cutscene)들 사이에서 그 게임의 렌더링이 얼마나 오랫동안 계속되고 있는지를 결정할 수 있고, 해당 듀레이션에 기초하여, 부가 컨텐츠의 프레젠테이션을 트리거할 수 있다. 예를 들어, 듀레이션이 스레숄드 롱(threshold long)인 경우, 엔티티는 사용자가 어려움을 겪고 있는 것 같다는 이유로, 게임의 목표를 달성하기 위한 힌트 또는 다른 팁과 같은, 게임 플레이 도움말의 프레젠테이션을 트리거할 수 있다. 다른 예들도 또한 가능하다.
이것을 실제로 용이하게 하기 위해, 비디오 프레젠테이션 디바이스가 비디오 컨텐츠를 렌더링하고 있을 때, 비디오 프레젠테이션 디바이스는 렌더링되고 있는 비디오 컨텐츠의 디지털 핑거프린트를 생성하여 컴퓨팅 시스템에 제공할 수 있다. 또한 컴퓨팅 시스템이 해당 핑거프린트를 획득함에 따라, 컴퓨팅 시스템은 해당 핑거프린트를, 공지의 비디오 컨텐츠 아이템들에 대해 미리 설정된 레퍼런스 핑거프린트 데이터와 비교할 수 있다. 이론적으로는, 렌더링되고 있는 비디오 컨텐츠의 핑거프린트가 공지의 비디오 컨텐츠 아이템의 레퍼런스 핑거프린트와 매칭되는 것으로 컴퓨팅 시스템이 결정하면, 이에 따라 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠가 공지의 비디오 컨텐츠인 것으로 서버가 결론 지을 수 있으며, 컴퓨팅 시스템이 전술한 바와 같은 액션을 응답적으로 취할 수 있다.
그러나 불행하게도, 이 프로세스는 비디오 게임과 같은 인터랙티브 비디오 컨텐츠의 경우 문제가 될 수 있다. 전술한 바와 같이, 인터랙티브 비디오 컨텐츠는 사용자 상호 작용에 기초하여 동적으로 변할 수 있으며, 따라서 그것이 렌더링될 때마다 달라질 수 있다. 결과적으로, 임의의 주어진 시간에 렌더링되고 있는 인터랙티브 비디오 컨텐츠를 식별하기 위한 신뢰할 수 있는 비교 포인트로서 작용하는 레퍼런스 핑거프린트 데이터를 설정하는 것은 비현실적인 것일 수 있다.
한편, 전술한 바와 같이, 비디오 게임과 같은 인터랙티브 비디오 컨텐츠는 컷씬 등과 같은 사전 설정된 또는 정적으로 정의된 비디오 세그먼트들을 포함할 수 있으며, 이러한 사전 설정된 비디오 세그먼트들은 그들이 렌더링되고 있는 동안에 사용자 상호 작용에 따라 동적으로 변하게 된다. 또한, 소정 비디오 게임과 같은 주어진 비디오 컨텐츠 아이템에서 사전 설정되는 비디오 세그먼트들은, 해당 비디오 컨텐츠 아이템에 고유한 것일 수 있다(예를 들어, 다른 비디오 컨텐츠 아이템들에는 포함되어 있지 않음). 따라서 인터랙티브 비디오 컨텐츠를 다룰 때, 사전 설정된 비디오 세그먼트들에 대한 핑거프린트 비교에 초점을 맞추는 것이 유용할 수 있다.
예를 들어, 컴퓨팅 시스템이 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠의 디지털 핑거프린트를 획득함에 따라, 컴퓨팅 시스템은 해당 핑거프린트를, 특정 비디오 컨텐츠 아이템들(예를 들면, 특정 비디오 게임들)에 각각 대응하는 다양한 사전 설정된 비디오 세그먼트들의 레퍼런스 핑거프린트들과 비교할 수 있다. 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠의 핑거프린트가 특정 사전 설정된 비디오 세그먼트의 레퍼런스 핑거프린트와 매칭되는 것으로 결정하면, 컴퓨팅 시스템은 이에 따라 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠가, 그 레퍼런스 데이터가 상기 특정 사전 설정된 비디오 세그먼트와 연관되어 있는 비디오 컨텐츠 아이템이라고 결론 지을 수 있다.
컴퓨팅 시스템이 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠의 아이덴티티를 결정하고 나면, 문제는 사전 설정된 비디오 세그먼트가 종료된 후, 비디오 프레젠테이션 디바이스가 식별된 비디오 컨텐츠를 계속 렌더링하는지의 여부일 수 있다. 예를 들어, 비디오 게임의 경우, 식별된 컷씬이 종료한 이후에 렌더링되고 있는 비디오 컨텐츠가 계속하여 해당 컷씬과 관련된 비디오 게임인지 여부가 문제로 될 수 있다. 또한, 식별된 비디오 게임의 인터랙티브 플레이가 컷씬들 사이에서 계속되는 기간 등과 같은, 해당 식별된 비디오 컨텐츠의 렌더링이 사전 설정된 비디오 세그먼트들의 인스턴스들 사이에서 얼마나 오랫동안 계속되는지 문제가 될 수 있다.
그러나, 여기서도, 비디오 컨텐츠의 인터랙티브 특성으로 인해 어려움이 발생할 수 있다. 즉, 사전 설정된 비디오 세그먼트가 종료되고 나서 비디오 컨텐츠가 렌더링 동안에 사용자 상호 작용에 기초하여 동적으로 변하는 인터랙티브 컨텐츠로 전환되면, 렌더링되고 있는 비디오 컨텐츠가 여전히 식별된 비디오 컨텐츠인지 여부를 결정하기 위한 기반으로서 단지 핑거프린트 매칭을 사용하는 것이 어렵거나 비현실적인 것일 수 있다.
이러한 어려움을 해결하기 위해, 본 개시에 따르면, 컴퓨팅 시스템이, 문제가 되고 있는 인터랙티브 비디오 컨텐츠의 다수의 플레이 아웃(playout)에 기초하여 트레이닝되는 뉴럴 네트워크(neural network) 또는 다른 머신 러닝(machine-learning) 알고리즘을 이용할 수 있다. 예를 들어, 비디오 게임을 고려하면, 다수의 온라인 플레이-스루(play-through) 비디오의 디지털 핑거프린트들 등과 같은, 실제 게임 플레이의 많은 인스턴스들에 대한 디지털 핑거프린트들에 기초하여 뉴럴 네트워크가 트레이닝될 수 있다. 주어진 게임에 대한 인터랙티브 비디오 컨텐츠는 해당 게임이 실행될 때마다 다를 수 있지만, 게임을 인식하고 나서 그 게임을 분류하거나 그 게임과 다른 게임 간을 구별하거나 및/또는 그 게임과 게임이 아닌 비디오 컨텐츠 간을 구별하도록 뉴럴 네트워크가 트레이닝될 수 있기에 충분한 유사성이 게임 인스턴스들 간에 존재할 수 있다.
따라서, 컴퓨팅 시스템이 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠를 나타내는 디지털 핑거프린트를 획득함에 따라, 컴퓨팅 시스템은 전술한 바와 같이 핑거프린트 매칭 프로세스를 적용할 수 있으며, 이에 따라 공지의 비디오 컨텐츠와 관련된 사전 설정된 비디오 세그먼트에 대한 핑거프린트 매칭에 기초하여 비디오 컨텐츠를 식별할 수 있다. 또한 컴퓨팅 시스템이 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠의 디지털 핑거프린트를 계속 획득함에 따라, 컴퓨팅 시스템은 적어도 비디오 컨텐츠의 동적 정의되는 부분에 대해 뉴럴 네트워크를 적용할 수 있으며 이에 따라, 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠가 여전히 식별된 비디오 컨텐츠인 것을 검출할 수 있다. 유리하게는, 컴퓨팅 시스템은 전술한 바와 같은 액션을 응답적으로 취할 수 있다.
따라서, 일 양태에서, 비디오 프레젠테이션 디바이스에 의한 비디오 컨텐츠의 렌더링을 검출하고 이에 응답하는 방법이 본 명세서에 개시되며, 여기서 비디오 컨텐츠는 (i) 렌더링 동안 사용자 상호 작용에 기초하여 변하지 않는 사전 설정된 비디오 세그먼트 및 (ii) 렌더링 동안 사용자 상호 작용에 기초하여 변하는 동적 정의되는 비디오 세그먼트를 포함한다.
이 방법에 따르면, 컴퓨팅 시스템은 렌더링되고 있는 비디오 컨텐츠의 표현으로서 렌더링 동안 실시간으로 생성되는 쿼리 핑거프린트를 획득하며, 여기서 이 쿼리 핑거프린트는 사전 설정된 비디오 세그먼트를 나타내는 제 1 부분 및 동적 정의되는 비디오를 나타내는 제 2 부분을 포함한다. 또한, 쿼리 핑거프린트를 획득하는 동안, 컴퓨팅 시스템은 (a) 쿼리 핑거프린트의 제 1 부분과 사전 설정된 비디오 세그먼트를 나타내는 레퍼런스 핑거프린트 사이의 매칭을 검출하고, (b) 이 매칭의 검출에 기초하여, 렌더링되고 있는 비디오 컨텐츠를 식별하고, (c) 렌더링되고 있는 비디오 컨텐츠를 식별한 이후에, 적어도 쿼리 핑거프린트의 제 2 부분에, 트레이닝된 뉴럴 네트워크를 적용하며, 또한 (d) 뉴럴 네트워크의 적용에 기초하여, 식별된 비디오 컨텐츠의 렌더링이 계속되고 있는 것을 검출한다. 또한, 적어도 식별된 비디오 컨텐츠의 렌더링이 계속되고 있는 것을 검출한 것에 응답하여, 컴퓨팅 시스템은 식별된 비디오 컨텐츠와 관련된 액션을 취한다.
또한, 다른 관점에서, 비디오 게임의 재생을 검출하고 이에 응답하는 방법이 개시되며, 여기서 비디오 게임은 (i) 렌더링 동안 사용자 상호 작용에 기초하여 변하지 않는 컷씬(cutscene) 비디오 세그먼트들 및 (ii) 렌더링 동안 사용자 상호 작용에 기초하여 변하는 인터랙티브 비디오 세그먼트들을 포함한다.
이 방법에 따르면, 컴퓨팅 시스템은 재생되고 있는 비디오 게임의 표현으로서 렌더링 동안 실시간으로 생성되는 쿼리 핑거프린트를 획득하며, 여기서 이 쿼리 핑거프린트는 (i) 제 1 컷씬 비디오 세그먼트를 나타내는 제 1 부분 및 (ii) 제 1 인터랙티브 비디오 세그먼트를 나타내는 제 2 부분을 포함한다. 또한, 컴퓨팅 시스템은 쿼리 핑거프린트의 제 1 부분과 제 1 컷씬 비디오 세그먼트를 나타내는 레퍼런스 핑거프린트 사이의 매칭을 검출하고, 이 검출된 매칭에 기초하여, 컴퓨팅 시스템에 의해서, 렌더링되고 있는 비디오 게임을 식별한다. 그리고 렌더링되고 있는 비디오 컨텐츠를 식별한 이후에, 컴퓨팅 시스템은 트레이닝된 뉴럴 네트워크를 적어도 쿼리 핑거프린트의 제 2 부분에 적용함으로써 렌더링되고 있는 비디오 컨텐츠가 여전히 식별된 게임인 것을 검출한다. 또한, 적어도 렌더링되고 있는 비디오 컨텐츠가 여전히 식별된 비디오 게임인 것을 검출하는 것에 응답하여, 컴퓨팅 시스템은 부가 컨텐츠가 프레젠테이션되게 한다.
또한, 네트워크 통신 인터페이스, 프로세싱 유닛, 비일시적 데이터 스토리지, 및 비일시적 데이터 스토리지에 저장되며 비디오 프레젠테이션 디바이스에 의한 비디오 컨텐츠의 렌더링을 검출하고 이에 응답하기 위한 동작들을 수행하도록 프로세싱 유닛에 의해 실행 가능한 프로그램 명령어들을 포함하는 컴퓨팅 시스템이 추가로 개시되며, 여기서 비디오 컨텐츠는 (i) 렌더링 동안 사용자 상호 작용에 기초하여 변하지 않는 사전 설정된 비디오 세그먼트 및 (ii) 렌더링 동안 사용자 상호 작용에 기초하여 변하는 동적 정의되는 비디오 세그먼트를 순차적으로 포함한다.
컴퓨팅 시스템에 의해 수행되는 동작들은 위에서 언급된 것들과 유사할 수 있다. 예를 들어, 동작들은 렌더링되고 있는 비디오 컨텐츠의 표현으로서 렌더링 동안 실시간으로 생성되는 쿼리 핑거프린트를, 네트워크 통신 인터페이스를 통해, 비디오 프레젠테이션 디바이스로부터 수신하는 동작을 포함할 수 있으며, 여기서 이 쿼리 핑거프린트는 (i) 사전 설정된 비디오 세그먼트를 나타내는 제 1 부분 및 (ii) 동적 정의되는 비디오 세그먼트를 나타내는 제 2 부분을 순차적으로 포함한다. 또한, 동작들은 쿼리 핑거프린트의 제 1 부분과 사전 설정된 비디오 세그먼트를 나타내는 레퍼런스 핑거프린트 사이의 매칭을 검출하고, 검출된 매칭에 기초하여, 렌더링되고 있는 비디오 컨텐츠를 식별하는 동작을 포함할 수 있다. 그리고 동작들은 렌더링되고 있는 비디오 컨텐츠를 식별한 이후에, 적어도 쿼리 핑거프린트의 제 2 부분에 머신 러닝 알고리즘(machine-learning algorithm)을 적용함으로써 렌더링되고 있는 비디오 컨텐츠가 여전히 식별된 비디오 컨텐츠인 것을 검출하는 동작을 포함할 수 있다. 또한, 동작들은 적어도 렌더링되고 있는 비디오 컨텐츠가 여전히 식별된 비디오 컨텐츠인 것을 검출한 것에 응답하여, 사용자 디바이스로 하여금 부가 컨텐츠를 렌더링하게 하는 동작을 포함할 수 있다.
이들 및 다른 양태, 장점 및 대안은 첨부 도면을 적절히 참조하여, 다음의 상세한 설명을 읽음으로써 당업자에게 명백해질 것이다. 또한, 이 요약 및 아래에서 제공되는 설명들은 본 발명을 제한하기 위한 것이 아니라 단지 일 예로서 예시하기 위한 것으로 이해되어야 한다.
도 1은 다양한 개시 원리들이 적용될 수 있는 예시적인 시스템의 간략 블록도.
도 2는 다양한 개시 원리들의 구현을 용이하게 하기 위해 비디오 프레젠테이션 디바이스가 네트워크 플랫폼과 통신하는 예시적인 네트워크 구성의 간략 블록도.
도 3은 하나 이상의 동적 정의되는 부분들 및 하나 이상의 사전 확립된 부분들을 포함하는 비디오 컨텐츠의 일 예를 나타내는 타이밍도.
도 4는 본 개시에 따라 수행될 수 있는 동작들을 도시한 도면.
도 5는 본 개시에 따라 수행될 수 있는 동작들을 도시한 다른 도면.
도 6은 예시적인 컴퓨팅 시스템의 간략 블록도.
도 7은 예시적인 비디오 프레젠테이션 디바이스의 간략 블록도.
도면들을 참조하면, 도 1은 다양한 개시 원리들이 적용될 수 있는 예시적인 시스템의 간략 블록도이다. 그러나, 본 명세서에서 설명되는 이러한 구성과 처리 및 다른 구성과 처리는 다양한 다른 형태를 취할 수 있음을 이해할 것이다. 예를 들어, 요소들 및 동작들은 재정렬, 분산, 복제, 결합, 생략, 추가 또는 수정될 수 있다. 또한, 하나 이상의 엔티티들에 의해 수행되는 것으로 여기에서 설명되는 기능들은 하드웨어, 펌웨어, 및/또는 소프트웨어를 통해(예를 들어 프로그램 명령어 등을 실행하는 하나 이상의 처리 유닛들에 의해) 그러한 엔티티들에 의해 및/또는 이들을 대신하여 구현될 수 있음을 이해할 것이다.
도 1에 도시된 바와 같이, 본 예시적인 시스템은 하나 이상의 비디오 소스들(14)과 통신 가능하게 링크되며, 비디오 소스(들)로부터 비디오 컨텐츠를 수신하고 이 비디오 컨텐츠를 렌더링함으로써 사용자(16)가 볼 수 있도록 구성되는 비디오 프레젠테이션 디바이스(12)를 포함한다.
대표적인 구현에서, 비디오 프레젠테이션 디바이스(12)는 컴퓨터 모니터, 텔레비전, 또는 디스플레이 등에서 비디오 컨텐츠를 수신하고 렌더링하도록 구성되는 다른 디바이스일 수 있다. 이와 같이, 비디오 프레젠테이션 디바이스(12)는 비디오 컨텐츠를 수신하기 위한 하나 이상의 비디오 입력 포트들(예를 들면, HDMI, DVI, 컴포넌트 비디오, 컴포지트 비디오, VGA 및/또는 기타 유선 또는 무선 입력 포트들), 비디오 컨텐츠를 프레젠테이션하기 위한 디스플레이 패널(예를 들면, OLED, LED, LCD, 플라스마 및/또는 다른 패널), 및 선택된 비디오 입력 포트를 통해 비디오 컨텐츠가 도착함에 따라 이것을 렌더링하고 렌더링된 비디오 컨텐츠를 디스플레이 상에 출력하여 사용자(16)에게 프레젠테이션하기 위한 하나 이상의 프로세싱 컴포넌트들(예를 들면, 비디오 프로세서들)을 포함할 수 있다.
비디오 소스(14)는 비디오 프레젠테이션 디바이스(12)에 의한 수신 및 렌더링에 적합한 비디오 컨텐츠를 제공하고, 비디오 컨텐츠 출력을 제어(예를 들어, 비디오 컨텐츠를 대화식으로 정의)하기 위해 사용자(16)로부터의 입력을 수신 및 응답하도록 구성되는 임의의 다양한 비디오 컴포넌트들을 포함할 수 있다. 도시된 바와 같이, 비디오 소스들은 하나 이상의 로컬 비디오 소스 컴포넌트들(18) 및 하나 이상의 원격 비디오 소스 컴포넌트들(20)을 포함할 수 있으며, 이들 중 어느 하나는 비디오 프레젠테이션 디바이스(12)에 의한 렌더링을 위한 비디오 컨텐츠를 생성 및 출력하거나 수신 및 전달하도록 구성될 수 있다. 또한, 적어도 하나의 로컬 비디오 소스 컴포넌트(18)는 사용자(16)에 근접하여 위치되거나 그렇지 않으면 사용자(16)와 통신하여 비디오 컨텐츠 출력을 제어하기 위한 사용자 입력을 수신하도록 장착될 수 있다.
예를 들어, 비디오 소스(14)는 비디오 프레젠테이션 디바이스(12)와 HDMI 케이블 또는 다른 유무선 메커니즘에 의해 로컬로 연결되는 비디오 게임 콘솔을 포함할 수 있다. 이러한 콘솔은 DVD, CD, 내부 저장소, 네트워크 소스 등으로부터 게임 소프트웨어를 실행함으로써 인터랙티브 비디오 게임 플레이를 가능하게 하도록 설계된 특수 컴퓨터일 수 있다. 이와 같이, 콘솔은 재생할 비디오 게임을 선택, 제공 또는 지정하는 사용자 입력을 수신할 수 있다. 그 후에 콘솔이 게임을 실행하고 렌더링을 위해 비디오 프레젠테이션 디바이스에 관련 비디오 컨텐츠를 전달함에 따라, 콘솔은 게임 진행 방식을 동적으로 제어함으로써 전달되고 있는 비디오 컨텐츠를 동적 정의하는 사용자 입력을 수신할 수 있다.
대안적으로, 비디오 소스들(14)은 비디오 프레젠테이션 디바이스와 로컬로 연결된 범용 컴퓨터(예를 들어, 데스크탑 또는 휴대용 컴퓨터)를 포함할 수 있으며, 로컬 컴퓨터와 네트워크 통신하는 원격 게임 서버를 포함할 수 있다. 이러한 구성에서는, 로컬 컴퓨터가 사용자 인터페이스, 가능하게는 일반적인 브라우저 인터페이스를 제공할 수 있으며, 이를 통해 사용자가 게임 서버와 상호 작용할 수 있고, 로컬 컴퓨터는 게임 서버로부터 비디오 컨텐츠를 수신하여 렌더링을 위해 이 비디오를 비디오 프레젠테이션 디바이스로 전달하도록 구성될 수 있다. 따라서, 로컬 컴퓨터의 사용자 인터페이스를 통해, 사용자는 재생할 비디오 게임을 선택하거나 지정할 수 있으며, 또한 게임 진행 방법 및 비디오 프레젠테이션 디바이스에 의한 렌더링을 위해 전달할 비디오 컨텐츠를 제어할 수 있다.
또한 대안적으로, 비디오 소스들(14)은 반드시 비디오 게임 소스들로 한정되지 않으며 다른 형태들을 취할 수도 있다. 예를 들어, 비디오 소스들은 비디오 프레젠테이션 디바이스와 로컬로 연결되고 텔레비전 채널의 사용자 선택을 수신하여 해당 채널에 응답하여 튜닝하고 렌더링을 위해 이 텔레비전 채널의 비디오 컨텐츠를 비디오 프레젠테이션 디바이스에 전달하도록 구성되는 케이블-TV 또는 위성 셋탑 박스와 같은 텔레비전 튜너를 포함할 수 있다. 또한 비디오 소스들은 디지털 비디오 레코더들/플레이어들을 포함할 수 있으며, 마찬가지로 이들은 비디오 컨텐츠의 사용자 선택을 수신하고, 렌더링을 위해 선택된 비디오 컨텐츠를 비디오 프레젠테이션 디바이스에 응답적으로 전달할 수 있다. 또한, 비디오 소스들은 오디오/비디오 수신기, 또는 비디오 소스의 사용자 선택이 비디오 컨텐츠를 제공할 수 있게 하고 렌더링을 위해 선택된 소스로부터 비디오 프레젠테이션 디바이스로 비디오를 수신 및 전달하는 다른 디바이스를 포함할 수 있다. 다른 예들도 또한 가능하다.
전술한 바와 같이, 비디오 프레젠테이션 디바이스가 비디오 컨텐츠를 수신 및 렌더링할 때, 비디오 프레젠테이션 디바이스는 해당 비디오 컨텐츠의 아이덴티티에 대한 표시를 갖고 있지 않을 수 있다. 오히려, 비디오 프레젠테이션 디바이스는 비디오 소스로부터의 비디오 스트림으로서 비디오 컨텐츠를 수동적으로 수신하고, 이 수신된 비디오 컨텐츠를 렌더링하도록 구성될 수 있다. 그러나, 본 개시에 따르면, 비디오 프레젠테이션 디바이스가 네트워크 플랫폼과 통신할 수 있으며, 이 네트워크 플랫폼과 협력함으로써 렌더링되고 있는 비디오 컨텐츠의 식별을 용이하게 할 수 있고 이에 따라 전술한 바와 같은 컨텐츠 특정 액션을 용이하게 할 수 있다(대안적으로, 네트워크 플랫폼의 특징들은 비디오 프레젠테이션 디바이스의 일부로서 제공되거나 또는 비디오 프레젠테이션 디바이스와 연동되어 로컬로 제공될 수도 있음).
도 2는 비디오 프레젠테이션 디바이스(12)가 인터넷과 같은 네트워크(24)를 통해 네트워크 플랫폼(22)과 통신하는 예시적인 네트워크 구성을 도시한 것이다. 실제에 있어서, 비디오 프레젠테이션 디바이스(12)는 고객 구내에서 근거리 통신망(LAN) 상의 노드로서 위치할 수 있으며, 비디오 프레젠테이션 디바이스는 LAN 상에서의 인터넷 프로토콜(IP) 주소가 할당되며 LAN은 인터넷 상에서의 IP 어드레스를 갖는다. 또한, 네트워크 플랫폼(22)은 인터넷 상의 IP 주소에서 액세스 가능한 서버를 포함할 수 있다.
이러한 구성으로, 비디오 프레젠테이션 디바이스는 비디오 컨텐츠가 렌더링되고 있을 때 플랫폼에 비디오 컨텐츠의 디지털 핑거프린트를 실시간으로 제공하기 위해 인터넷을 통해 플랫폼과 IP 통신을 개시 및 연결할 수 있으며, 비디오 컨텐츠를 식별하고 컨텐츠 특정 동작을 응답적으로 트리거하기 위해, 디지털 핑거프린트가 도착하면 플랫폼이 이것을 지속적으로 평가할 수 있다.
실제에 있어서 이것을 용이하게 하기 위해, 비디오 프레젠테이션 디바이스(12) 또는 다른 엔티티는 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠의 디지털 핑거프린트를 생성하고, 분석을 위해 이 디지털 핑거프린트를 플랫폼(22)에 전송하도록 구성될 수 있다.
예를 들어, 도 2에 도시된 바와 같이, 비디오 프레젠테이션 디바이스는 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠의 디지털 핑거프린트를 생성하도록 구성될 수 있는 핑거프린트 생성기(26)를 포함할 수 있다. 이러한 핑거프린트 생성기는 비디오 프레젠테이션 디바이스가 비디오 컨텐츠를 수신하고/하거나 비디오 프레젠테이션 디바이스가 프레젠테이션을 위해 그 비디오 컨텐츠를 처리할 때 비디오 컨텐츠의 디지털 핑거프린트를 생성하도록 구성될 수 있다. 이와 같이, 핑거프린트 생성기는 비디오 프레젠테이션 디바이스에 도착하고/하거나 비디오 프레젠테이션 디바이스에 의해 프레젠테이션을 위해 처리되는 비디오 컨텐츠의 사본을 입력으로서 수신할 수 있으며, 현재 알려진 또는 나중에 개발될 임의의 미디어 핑거프린팅 프로세스를 적용하여 비디오 컨텐츠의 디지털 핑거프린트를 생성할 수 있다.
제한이 아닌, 예시적인 디지털 핑거프린팅 프로세스는 비디오 프레임 단위마다 적용될 수 있고 휘도 및/또는 다른 비디오 특성의 표현을 확립하는 것을 포함할 수 있다. 예를 들어, 주어진 비디오 프레임에 대해, 핑거프린트 생성기는 프로그램적으로 프레임을 그리드로 분할할 수 있고, 핑거프린트 생성기는 그리드 셀마다에 대한 프레임의 광도를 측정할 수 있으며, 또한 각각의 그리드 셀의 광도를 나타내거나, 소정의 정의된 그리드 셀 쌍들 사이의 가중 처리된 차이 등을 나타내는 각각의 비트 또는 일련의 비트를 갖는 비트 스트링을 생성할 수 있다. 또한, 핑거프린트 생성기는 이 프로세스를 연속적으로 적용하여 핑거프린트들의 시퀀스로서(예를 들어, 핑거프린트 스트림으로서) 시간에 따른 디지털 핑거프린트를 생성할 수 있다. 예를 들어, 핑거프린트 생성기는 디지털 핑거프린트를 정의하는 각 프레임의 비트 스트링을 사용하거나 및/또는 지정된 해시, 이러한 비트 스트링들이나 디지털 핑거프린트를 정의하는 기타 대표 값들의 조합 또는 시리즈를 사용하거나, 슬라이딩 윈도우 기반으로, 각 프레임, 각 키 프레임에 대하여, 주기적으로 또는 다른 정의된 기준으로 이 프로세스를 적용할 수 있다. 다른 디지털 핑거프린팅 프로세스들도 또한 사용될 수 있다.
실제에 있어서, 비디오 프레젠테이션 디바이스(12)는 프로그램적으로 플랫폼(22)과의 통신 세션(예를 들어, TCP 소켓)을 확립하고 해당 세션에서 렌더링되고 있는 비디오 컨텐츠의 디지털 핑거프린트(본 명세서에서 "쿼리 핑거프린트"라 칭함)를 플랫폼으로 송신하도록 구성될 수 있다. 예를 들어, 비디오 프레젠테이션 디바이스는 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠의 최신 프레임, 일련의 프레임, 또는 다른 부분의 디지털 핑거프린트를 반송하는 메시지를 주기적으로 또는 간헐적으로 플랫폼에 송신하도록 구성될 수 있다. 이에 따라 플랫폼은 비디오 컨텐츠가 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있을 때 대체적으로 실시간으로, 분석을 위한 디지털 핑거프린트를 수신할 수 있다.
대안적으로는, 비디오 프레젠테이션 디바이스가 플랫폼으로 전송할 수 있으며, 이에 따라 플랫폼 자체 또는 다른 엔티티가 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠의 쿼리 핑거프린트를 생성할 수 있도록 하기 위해, 온고잉 기반으로 또는 다른 방식으로, 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠에 관한 다양한 데이터를 플랫폼이 수신할 수 있다. 예를 들어, 비디오 프레젠테이션 디바이스는 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠의 부분들, 예컨대 개별 프레임들(예를 들어, 스냅 샷들) 또는 다른 비디오 컨텐츠 세그먼트들을 플랫폼으로 송신할 수 있다. 또한 플랫폼은 핑거프린트 생성기를 적용하여 분석을 위한 비디오 컨텐츠의 디지털 핑거프린트를 생성할 수 있다.
상기한 논의에 따라, 이러한 구성의 플랫폼은 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠의 쿼리 핑거프린트를 평가할 수 있으며, 이에 따라 렌더링되고 있는 비디오 컨텐츠를 식별하고 응답적으로 컨텐츠 특정 액션을 취할 수 있다.
위에서 설명한 바와 같이, 이 프로세스는 렌더링되고 있는 비디오 컨텐츠가 사전 설정된 비디오 컨텐츠 및 인터랙티브 비디오 컨텐츠의 조합을 포함하는 시나리오를 처리할 수 있다. 예를 들어, 이 프로세스는 렌더링되고 있는 비디오 컨텐츠가 (i) 렌더링되고 있는 동안 사용자 상호 작용에 기초하여 변하지 않는 컷씬(cutscene)들 등과 같은 하나 이상의 사전 설정된 비디오 세그먼트들 및 (ii) 렌더링되고 있는 동안 사용자 상호 작용에 기초하여 변하는 하나 이상의 동적 정의되는 비디오 세그먼트들(예를 들면, 온고잉 게임 플레이 비디오 컨텐츠)을 포함하는 비디오 게임인 시나리오를 처리할 수 있다.
도 3은 이러한 비디오 컨텐츠가 어떻게 구성될 수 있는지에 대한 일 예를 나타내는 타이밍도이다. 도 3에 도시된 바와 같이, 비디오 컨텐츠는 동적 정의되는 비디오 세그먼트 및 사전 설정된 비디오 세그먼트를 번갈아 포함한다. 특히, 비디오 컨텐츠는 시간 T1에서 시간 T2까지의 제 1 동적 정의되는 비디오 세그먼트(30), 시간 T2에서 시간 T3까지의 제 1 사전 설정된 비디오 세그먼트(32), 시간 T2에서 시간 T3까지의 제 2 동적 정의되는 비디오 세그먼트(34), 및 시간 T3에서 시간 T4까지의 제 2 사전 설정된 비디오 세그먼트(36)를 포함한다.
이 예의 비디오 컨텐츠가 특정 비디오 게임의 것인 경우, 예를 들어, 제 1 및 제 2 동적 정의되는 비디오 세그먼트들(30, 34)은 각 레벨들의 게임 플레이의 인터랙티브 비디오 컨텐츠일 수 있으며, 여기서 비디오 컨텐츠는 게임 동안의 사용자 상호 작용에 관한 정보에 기초하여(예를 들면, 게임 플레이 중 사용자의 선택들에 따라) 동적 정의된다. 그리고 제 1 및 제 2 사전 설정된 비디오 세그먼트들(32, 36)은 비디오 게임에 고유한 것으로서 사용자가 게임 플레이 레벨들 사이에서 전환할 시에 사용자에게 프레젠테이션되는 정적으로 정의된 시네마틱 컷씬들일 수 있거나, 또는 비디오 게임에 고유한 다른 사전 설정된 비디오 세그먼트들일 수 있다.
상기한 논의에 따라, 네트워크 플랫폼(22)은 렌더링되고 있는 비디오 컨텐츠의 핑거프린트가, 특정 비디오 컨텐츠 아이템(예를 들어, 특정 비디오 게임)에 대응하는 것으로 알려진 사전 설정된 비디오 세그먼트의 레퍼런스 핑거프린트와 매칭되는 것을 검출함으로써, 렌더링되고 있는 비디오 컨텐츠를 식별하기 위해 핑거프린트 매칭 프로세스를 적용하도록 구성될 수 있다. 또한, 플랫폼은 관련된 액션을 트리거하기 위한 기준으로서, 렌더링되고 있는 비디오 컨텐츠가 여전히 식별된 비디오 컨텐츠인 것을 결정하기 위해 트레이닝된 뉴럴 네트워크를 적용하도록 구성될 수 있다.
예시적인 구현에서, 플랫폼은 도 2에 도시된 바와 같은 개별의 서로 연동하는 서버들 또는 다른 모듈들을 포함할 수 있다. 즉, 플랫폼은 비디오 프레젠테이션 디바이스와 통신하기 위한 외향 IP 주소를 갖는 프록시 서버(38), 렌더링되고 있는 비디오 컨텐츠를 식별하기 위해 핑거프린트 매칭 프로세스를 수행하기 위한 핑거프린트 매칭 서버(40), 및 렌더링되고 있는 비디오 컨텐츠가 여전히 식별된 비디오 컨텐츠인 것을 결정하고, 해당 비디오 컨텐츠의 계속적인 프레젠테이션에 기초하는 트리거링 액션을 용이하게 하도록 트레이닝된 뉴럴 네트워크를 적용하기 위한 서버(42)를 포함할 수 있다. 이러한 서버들은 LAN 상에 노트들로서 위치하거나 통신적으로 서로 연결될 수 있다.
이러한 구성에 의해, 프록시 서버(38)는 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠의 쿼리 핑거프린트를 비디오 프레젠테이션 디바이스로부터 수신할 수 있으며, 쿼리 핑거프린트가 도착함에 따라, 분석을 위해 이 쿼리 핑거프린트를 핑거프린트 매칭 서버(40)로 전달할 수 있다.
핑거프린트 매칭 서버(40)가 쿼리 핑거프린트를 수신함에 따라, 핑거프린트 매칭 서버는 연속적으로(예를 들어, 빠른 주기로) 쿼리 핑거프린트를, 핑거프린트 매칭의 탐색 시에 그 개개의 것이 각각의 비디오 컨텐츠 아이템에 나타나는 것으로 알려진 사전 설정된 비디오 세그먼트들의 레퍼런스 핑거프린트들과 비교할 수 있다. 또한 이러한 매칭을 검출하면, 핑거프린팅 매칭 서버(40)는 렌더링되고 있는 비디오 컨텐츠가, 그 핑거프린트와 매칭되는 사전 설정된 비디오 세그먼트를 포함하는 것으로 결론 지을 수 있으며, 따라서 해당 사전 설정된 비디오 세그먼트를 포함하는 것으로 알려진 비디오 컨텐츠 아이템인 것으로서, 렌더링되고 있는 비디오 컨텐츠를 식별할 수 있다. 예를 들어, 특정 비디오 게임에서 나타나는 것으로 알려진 컷씬에 관한 핑거프린트 매칭을 검출함으로써, 핑거프린트 매칭 서버는, 렌더링되고 있는 비디오 컨텐츠가 특정 비디오 게임이라고 결론 지을 수 있다.
쿼리 핑거프린트 스트림을 레퍼런스 핑거프린트와 비교하기 위해, 서버는 핑거프린트들의 대응 부분들을 서로 비교하여, 그 부분들이 정확하게 매칭되는지 또는 정의된 허용 범위 내에서 매칭되는지 여부를 결정할 수 있다. 예를 들어, 프레임 단위 또는 다른 원하는 속도로, 서버는 핑거프린트들 사이의 최대 편차를 계산하고, 그 최대 편차가 사전 정의된 허용 범위 내에 있는지 여부를 결정할 수 있다. 또한, 핑거프린트들이 이진수인 경우, 이것은 부울(Boolean) 판정일 수 있거나 또는 해밍(Hamming) 거리를 계산하는 것(핑거프린트들의 각 비트 위치 사이의 미스매칭 카운트로서)을 포함할 수 있으며, 핑거프린트들이 더 복잡한 값인 경우, 예를 들어 십진수 값들 또는 벡터들(예를 들면, 비디오 프레임 영역마다의 그레이 값들)인 경우, 이것은 그 값들 또는 벡터들 사이의 거리를 판정하는 것을 포함할 수 있다. 다수의 다른 예들도 가능하다.
핑거프린트 매칭 서버가 사전 설정된 비디오 세그먼트에 관한 핑거프린트 매칭의 시작을 검출하고 이에 따라 렌더링되고 있는 비디오 컨텐츠를 식별하면, 핑거프린트 매칭 서버는 아마도 검출된 사전 설정된 비디오 세그먼트의 고유 식별자(예를 들어, 컷씬 식별자)와 함께, 결정된 비디오 컨텐츠의 아이덴티티(예를 들면, 렌더링되고 있는 비디오 게임의 명칭)를 표시하기 위해 프록시 서버(38)에 신호를 전송할 수 있다. 또한, 핑거프린트 매칭 서버는 수신 쿼리 핑거프린트와 레퍼런스 핑거프린트 데이터를 계속 비교하여, 사전 설정된 비디오 세그먼트에 대한, 검출된 핑거프린트 매칭이 언제 종료되는지를 결정한 다음, 후속의 사전 설정된 비디오 세그먼트에 대한 핑거프린트 매칭을 탐색하는 등의 동작을 수행할 수 있다.
핑거프린트 매칭 서버는 핑거프린트 분석으로부터 검출된 핑거프린트 매칭이 종료되었다고 판정할 경우, 비디오 프레젠테이션 디바이스가 관련 사전 설정된 비디오 세그먼트의 렌더링을 완료했음을 나타낼 수 있다. 이 시점에서 문제가 되는 것은 비디오 프레젠테이션 디바이스가 식별된 비디오 컨텐츠를 계속 렌더링하는지의 여부 및 가능하게는 얼마나 오랫동안 렌더링하는지의 여부일 수 있다. 예를 들어, 식별된 비디오 컨텐츠가 특정 비디오 게임이고 핑거프린트 매칭 서버가 해당 비디오 게임의 컷씬에 대한 핑거프린트 매칭의 끝을 검출하는 경우, 문제가 되는 것은 비디오 프레젠테이션 디바이스가 식별된 비디오 게임을 계속 렌더링하는지의 여부(다른 비디오 컨텐츠를 렌더링하는 것과 반대) 및 가능하게는 후속의 컷씬이 발생하기 이전에, 얼마나 오랫동안 식별된 비디오 게임의 렌더링이 계속되는지의 여부일 수 있다.
전술한 바와 같이, 이 문제는 계속되는 비디오 컨텐츠가 다른 사전 설정된 비디오 세그먼트가 아니라, 인터랙티브 사용자 게임 플레이(이것은 사용자 상호 작용에 따라 크게 달라질 수 있음)와 같은 동적 정의되는 비디오 세그먼트인 경우에 해결하기 어려울 수 있다.
이 문제를 해결하기 위해, 핑거프린트 매칭 서버는 핑거프린트 매칭 서버가 컷씬의 끝을 검출했다는 것을 나타내도록 프록시 서버에 신호 전송할 수 있으며, 그 후에 프록시 서버는 뉴럴 네트워크 서버(42)의 지원을 응답적으로 호출할 수 있다. 즉, 프록시 서버가 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠의 쿼리 핑거프린트를 계속 수신함에 따라, 프록시 서버는 해당 쿼리 핑거프린트를 뉴럴 네트워크 서버에 전달할 수 있으며, 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠가 여전히 식별된 비디오 컨텐츠인지 여부를 나타내는 것을 돕는 방식으로 쿼리 핑거프린트를 분류하는 것을 시작하도록 뉴럴 네트워크 서버에게 명령할 수 있다.
이러한 프록시 서버로부터의 신호에 대한 응답으로, 뉴럴 네트워크 서버는 원하는 레벨의 그래뉼래러티로 디지털 핑거프린트를 분류하도록 트레이닝된 뉴럴 네트워크를 통해 도달 쿼리 핑거프린트를 공급할 수 있다(대안적으로, 뉴럴 네트워크 서버는 이러한 도달 쿼리 핑거프린트를 프록시 서버로부터 정기적으로 수신할 수 있으며, 이 분석을 핑거프린트 매칭 서버의 분석과 동시에 적용함으로써, 렌더링되고 있는 비디오 컨텐츠의 식별을 도울 수 있다).
예를 들어, 식별된 비디오 컨텐츠가 특정 비디오 게임인 경우, 뉴럴 네트워크 서버는 비디오 게임 컨텐츠와 비-비디오 게임 컨텐츠를 구별하도록 트레이닝된 뉴럴 네트워크를 적용할 수 있다. 예를 들어, 뉴럴 네트워크는 (i) 동적 정의되는 비디오 게임 컨텐츠에 대한 다수의 디지털 핑거프린트들 및 (ii) 텔레비전 컨텐츠 또는 다른 비-비디오 게임 컨텐츠에 대한 다수의 디지털 핑거프린트를 포함하는 입력 데이터에 기초하여 트레이닝될 수 있다. 이러한 트레이닝을 통해, 뉴럴 네트워크는 비디오 게임 컨텐츠를 나타내는 비디오 컨텐츠 특성 및 비-비디오 게임 컨텐츠를 나타내는 비디오 컨텐츠 특성을 학습할 수 있으며, 이에 따라 뉴럴 네트워크는 비디오 게임 컨텐츠를 비-비디오 게임 컨텐츠와 구별하는 법을 학습할 수 있다.
이와 같이 트레이닝된 뉴럴 네트워크를, 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠를 나타내는 쿼리 핑거프린트에 적용함으로써, 뉴럴 네트워크 서버는 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠가 여전히 비디오 게임 컨텐츠인지의 여부를 결정할 수 있으며, 그에 따라 프록시 서버에 신호를 전송할 수 있다.
뉴럴 네트워크가 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠가 비디오 게임인 것으로 결정하는 경우, 특정 비디오 게임인 것으로 비디오 컨텐츠의 식별이 주어진 것에 대한 합리적인 결론은, 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 게임이 여전히 해당 식별된 비디오 게임이라는 것이다. 따라서, 이 시점에서 사용자가 식별된 비디오 게임을 계속 플레이하고 있다는 합리적인 결론이 나온다. 반면에, 뉴럴 네트워크가 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠가 비디오 게임이 아니라고 결정할 경우, 합리적인 결론은, 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠가 더 이상 식별된 비디오 게임이 아니며, 따라서 사용자가 식별된 비디오 게임의 플레이를 중단했다는 것이다.
대안적으로 또는 추가적으로, 뉴럴 네트워크 서버는 특정 비디오 게임들 사이 및/또는 다른 종류들의 인터랙티브 비디오 컨텐츠를 보다 세밀하게 구별할 수 있도록 트레이닝된 뉴럴 네트워크를 적용할 수 있다. 예를 들어, 뉴럴 네트워크는 특정 비디오 게임을 재생하는 인스턴스들로부터 동적 정의되는 비디오 게임 컨텐츠에 대한 다수의 디지털 핑거프린트들을, 각각의 다양한 특정 비디오 게임들 각각에 대해 개별적으로 및 각기 포함하는 입력 데이터에 기초하여 트레이닝될 수 있다. 이러한 트레이닝을 통해, 뉴럴 네트워크는 특정 비디오 게임에 특정한 비디오 컨텐츠 특성을 학습할 수 있으며, 이에 따라 뉴럴 네트워크는 하나의 비디오 게임을 다른 비디오 게임과 구별하는 것을 학습할 수 있다.
그 경우에, 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠를 나타내는 쿼리 핑거프린트의 뉴럴 네트워크 분석에 기초하여, 또 다른 비디오 게임 또는 예를 들어 다른 인터랙티브 비디오 컨텐츠와 비교함으로써, 뉴럴 네트워크 서버는 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠가 여전히 특정 식별된 비디오 게임인지 여부를 결정할 수 있다. 또한, 뉴럴 네트워크 서버는 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠가 여전히 식별된 비디오 컨텐츠인지를 나타내기 위해 프록시 서버에 신호를 전송할 수 있다.
이러한 보다 세밀한 뉴럴 네트워크 구현에 의해서, 각각의 다양한 비디오 컨텐츠 아이템들(예를 들어, 특정 비디오 게임들)이 명칭 또는 다른 식별자에 의해 지정될 수 있으며, 뉴럴 네트워크는 해당 식별자를 그것의 분류 시에 참조할 수 있다. 프록시 서버가 핑거프린트 매칭 서버로부터 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠의 아이덴티티를 알게 되면, 프록시 서버는 뉴럴 네트워크 서버에게 비디오 컨텐츠 식별자를 통지할 수 있으며, 뉴럴 네트워크 서버는 이에 응답하여 해당 식별자를 가진 비디오 컨텐츠가 여전히 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠인지 여부를 결정하기 위한 뉴럴 네트워크를 적용할 수 있고, 또한 그에 따라 프록시 서버에게 다시 보고할 수 있다.
이 프로세스에서 뉴럴 네트워크 서버에 의해 적용되는 뉴럴 네트워크는 다양한 형태들 중 임의의 형태를 취할 수 있다. 예를 들어, 뉴럴 네트워크는 LSTM(Long Short-Term Memory) 아키텍처를 사용하는 순환 딥 뉴럴 네트워크(recurrent deep neural network)일 수 있으며, 그 동작은 Hochreiter 등에 의한, "Long Short-Term Memory," Neural Computation 9(8):1735-1780, 1997, http://deeplearning.cs.cmu.edu/pdfs/Hochreiter97_lstm.pdf에 설명되어 있다. 대안적으로는, 다른 형태의 뉴럴 네트워크들(예를 들어, 게이트 순환 유닛 뉴럴 네트워크(gated recurrent unit neural network), 컨볼루션 뉴럴 네트워크(convolutional neural network) 및 현재 알려져 있거나 나중에 개발될 다른 것)도 적용될 수 있다.
도 3은 예시적인 비디오 세그먼트들(30-36)을 나타내는 수신 디지털 핑거프린트를 이용하여 이 프로세스가 어떻게 수행될 수 있는지를 도시한 것이다. 여기서, 네트워크 플랫폼(22)은 렌더링되고 있는 비디오 컨텐츠를 나타내는 쿼리 핑거프린트를 수신할 수 있으며, 따라서 쿼리 핑거프린트는 동적 정의되는 비디오 세그먼트(30)를 나타내는 제 1 부분, 사전 설정된 비디오 세그먼트(32)를 나타내는 제 2 부분, 동적 정의되는 비디오 세그먼트(34)를 나타내는 제 3 부분 및 사전 설정된 비디오 세그먼트(36)를 나타내는 제 4 부분을 순차적으로 포함할 수 있다.
상기한 논의에 따라, 플랫폼이 이 쿼리 핑거프린트를 수신할 시에, 프록시 서버는 쿼리 핑거프린트를 핑거프린트 매칭 서버로 전달할 수 있으며, 핑거프린트 매칭 서버는 쿼리 핑거프린트를, 공지의(known) 비디오 컨텐츠 아이템들에 대응하는 다양한 사전 설정된 비디오 세그먼트들을 나타내는 레퍼런스 핑거프린트들과 지속적으로 비교할 수 있다. 결과적으로, 시간 T2 직후에(시간 TA에서), 핑거프린트 매칭 서버는 특정 공지의 비디오 게임에 대응하는 사전 설정된 비디오 세그먼트의 레퍼런스 핑거프린트와의 매칭을 검출할 수 있으며, 이에 따라 렌더링되고 있는 비디오 컨텐츠가 해당 특정 비디오 게임이라는 결론을 지원한다. 또한 핑거프린트 매칭 서버는 이 결과를 프록시 서버에 보고할 수 있다.
그 후, 핑거프린트 매칭 서버가 시간 T3 직후에(시간 TB에서) 수신 쿼리 핑거프린트를 계속 평가함에 따라, 핑거프린트 매칭 서버는 사전 설정된 비디오 세그먼트 종료로 인한 미스매칭을 검출할 수 있으며, 이것을 프록시 서버에 보고할 수 있다. 이러한 미스매칭 및 사전 설정된 비디오 세그먼트의 종료에 응답하여, 프록시 서버가 수신 디지털 핑거프린트를 뉴럴 네트워크 서버로 전달하기 시작할 수 있으며(프록시 서버가 아직 그렇게 하지 않은 경우), 뉴럴 네트워크 서버는 문제의 비디오 컨텐츠의 결정된 아이덴티티를 뉴럴 네트워크 서버에게 신호 전송할 수 있다.
이에 응답하여, 뉴럴 네트워크 서버는 쿼리 핑거프린트를 분류하여 쿼리 핑거프린트가 식별된 비디오 컨텐츠를 계속 나타내는지 여부를 결정하기 위해, 쿼리 핑거프린트가 도착함에 따라 트레이닝된 뉴럴 네트워크를 쿼리 핑거프린트에 적용할 수 있다. 예를 들어, 식별된 비디오 컨텐츠가 특정 비디오 게임인 경우, 뉴럴 네트워크 서버는 쿼리 핑거프린트가 비디오 게임 컨텐츠를 일반적으로 계속 나타내는지 여부를 결정하고 및/또는 핑거프린트가 구체적으로 식별된 비디오 게임을 나타내는지 여부를 결정하기 위해, 도착하는 쿼리 핑거프린트에 대해 뉴럴 네트워크를 계속 적용할 수 있다. 또한 뉴럴 네트워크 서버는, 가능하게는 연속적으로, 그 결과를 프록시 서버에 보고할 수 있다.
한편, 핑거프린트 매칭 서버는 T4 시간 직후에(시간 TC에) 수신 쿼리 핑거프린트를 레퍼런스 핑거프린트들과 계속 비교함에 따라, 핑거프린트 매칭 서버는 식별된 비디오 게임에 또한 대응하는 다른 사전 설정된 비디오 세그먼트의 레퍼런스 핑거프린트와의 매칭을 검출할 수 있으며, 그 결과를 프록시 서버에 보고할 수 있다. 이러한 사전 설정된 비디오 세그먼트와의 매칭이 동적 정의되는 비디오 세그먼트(34)의 끝을 나타내기 때문에, 그 후에 프록시 서버는 디지털 핑거프린트를 뉴럴 네트워크 서버로 전달하는 것을 중단하고, 뉴럴 네트워크의 적용을 중지시키도록 하는 신호를 뉴럴 네트워크 서버로 전송할 수 있다.
그 후에 이 프로세스는 핑거프린트 매칭 서버가 검출된 사전 설정된 비디오 세그먼트의 핑거프린트와의 매칭의 끝을 다시 검출하여 프록시 서버에 응답적으로 시그널링하고, 프록시 서버가 뉴럴 네트워크 서버에 응답적으로 시그널링하며, 뉴럴 네트워크 서버가 뉴럴 네트워크를 응답적으로 적용함으로써 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠가 여전히 식별된 비디오 컨텐츠인지 여부를 결정하는 것에 의하여 반복적으로 계속될 수 있다.
위에서 언급한 바와 같이, 이 프로세스는 핑거프린트 매칭 서버가 각각 공지의 비디오 컨텐츠 아이템들에 대응하는 다양한 사전 설정된 비디오 세그먼트들의 레퍼런스 핑거프린트들에 액세스할 수 있고, 뉴럴 네트워크 서버는 다양한 공지의 비디오 컨텐츠 아이템들에 기반하여 트레이닝된 뉴럴 네트워크로 구성되는 것으로 가정한다. 실제에 있어서 이 프로세스를 용이하게 하기 위해, 네트워크 플랫폼(22)은 레퍼런스 핑거프린트들을 확립하고 뉴럴 네트워크를 트레이닝시키는 것을 돕기 위해 핑거프린트 매칭 서버(40) 및 뉴럴 네트워크 서버(42)와 연동할 수 있는 프로비저닝 서버(44)를 더 포함할 수 있다.
비디오 게임들과 관련하여, 프로비저닝 서버는 비디오 게임 플레이의 실제 인스턴스들에 대한 다수의 비디오 레코딩들을 획득할 수 있으며, 사전 설정된 비디오 세그먼트들(예를 들어, 컷씬 등)의 레퍼런스 핑거프린트들을 생성하는데 사용하기 위해 그리고 하나 이상의 뉴럴 네트워크들을 트레이닝시키는데 사용하기 위해 이들 비디오 레코딩들의 디지털 핑거프린트들을 생성할 수 있다.
프로비저닝 서버는 다양한 방식으로 비디오 게임 플레이의 실제 인스턴스들에 대한 이러한 레코딩들을 획득할 수 있다. 예를 들어, 레코딩들의 유용한 소스 중 하나는 Twitch 및 YouTube와 같은 웹 사이트에서 일반적으로 액세스할 수 있는, 온라인 "LP(Let 's Play)" 비디오 및 다른 플레이-스루(play-through) 비디오이다. 이러한 플레이-스루 비디오는 게임 플레이의 실제 인스턴스들에 대한 레코딩들이며, 때로는 스크립트 나레이션으로 편집된 것이나, 때로는 온더플라이로 캡처된 보다 생생한 게임 플레이의 레코딩들일 수 있다.
예시적인 구현에서, 프로비저닝 서버는 이러한 플레이-스루 비디오들의 디지털 핑거프린트들을 자동으로 탐색하고 생성하도록 구성될 수 있다. 예를 들어, 네트워크 플랫폼의 관리자는 다양한 공지의 비디오 게임들의 프로비저닝 서버 명칭을 입력할 수 있으며, 프로비저닝 서버는 지정된 비디오 게임들의 플레이-스루 비디오들을 Twitch 및 YouTube와 같은 웹 사이트들에서 자동으로 탐색할 수 있다. 프로비저닝 서버가 이러한 비디오들을 찾아내면, 프로비저닝 서버는 자동으로 비디오들을 재생하고(예를 들어, 비디오들의 스트리밍 비디오 표현 수신), 위에서 언급한 바와 같은 핑거프린트 생성기를 적용하여, 비디오들의 대응하는 디지털 핑거프린트들을 생성할 수 있다. 그 다음 프로비저닝 서버는 최종 생성된 디지털 핑거프린트들을 비디오 게임들의 명칭과 연관시켜 저장할 수 있다.
게임 플레이의 실제 인스턴스들에 대한 이들 디지털 핑거프린트들이 제공되면, 프로비저닝 서버는 프로그램적으로 디지털 핑거프린트들을 평가함으로써 사전 설정된 비디오 세그먼트들을 나타내는 핑거프린트 세그먼트들을 식별할 수 있다. 예를 들어, 특정 비디오 게임의 다수의 플레이 인스턴스들에 대한 핑거프린트들을 평가함으로써, 프로비저닝 서버는 해당 비디오 게임 플레이의 각 인스턴스 내에서 반복적으로 발생하거나 또는 해당 비디오 게임 플레이의 각 인스턴스에서 적어도 한 번 발생하는 핑거프린트 세그먼트를 식별할 수 있다. 컷씬과 같은 사전 설정된 비디오 세그먼트들의 정적 특성을 고려하여, 프로비저닝 서버는 이러한 반복되는 핑거프린트 세그먼트들을 비디오 게임의 사전 설정된 비디오 세그먼트들을 나타내는 것으로 간주할 수 있다. 따라서 프로비저닝 서버는 이러한 핑거프린트 세그먼트들을 문제의 비디오 게임의 공지의 아이덴티티, 및 가능하게는 사전 설정된 비디오 세그먼트의 식별자와 관련하여 사전 설정된 비디오 세그먼트를 나타내는 레퍼런스 핑거프린트들로서 저장할 수 있다. 그리고 프로비저닝 서버는 전술한 바와 같은 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠를 식별하는데 사용하기 위해 핑거프린트 매칭 서버가 해당 레퍼런스 핑거프린트 데이터를 이용 가능하게 할 수 있다.
대안적으로, 프로비저닝 서버는 다른 방식으로 공지의 비디오 컨텐츠 아이템들과 연관된 사전 설정된 비디오 세그먼트들의 레퍼런스 핑거프린트들을 획득할 수 있다. 예를 들어, 사람이 다양한 비디오 게임의 비디오 레코딩들을 본 후에, 사전 설정된 비디오 세그먼트들(예를 들면, 시작 및 중지 시간)을 수동으로 식별하고 나서, 식별된 비디오 세그먼트들의 레퍼런스 핑거프린트들을 생성하도록 프로비저닝 서버에게 지시할 수 있다. 다른 예들도 또한 가능하다.
또한, 프로비저닝 서버는 하나 이상의 뉴럴 네트워크를 트레이닝시키도록 뉴럴 네트워크 서버에 의해 사용하기 위해, 비디오 게임 플레이의 실제 인스턴스들에 대한 디지털 핑거프린트들을 뉴럴 네트워크 서버에 제공할 수 있다. 프로비저닝 서버는 각 레코딩에 대한 비디오 게임 아이덴티티와 함께, 그러한 각 레코딩에 대한 완전한 디지털 핑거프린트들을 뉴럴 네트워크 서버에게 제공할 수 있다. 또는 프로비저닝 서버는 사전 설정된 비디오 세그먼트들을 나타내는 것으로 간주되는 세그먼트가 아닌 이러한 핑거프린트 세그먼트들에 기초하여, 레코딩들에 대한 동적 정의되는 세그먼트들을 나타내는 핑거프린트 세그먼트들을 분리해 낼 수 있으며, 프로비저닝 서버는 이러한 핑거프린트 세그먼트들을 각 레코딩의 비디오 게임 아이덴티티와 함께 뉴럴 네트워크 서버에 제공할 수 있다.
또한, 뉴럴 네트워크 서버가 비디오 게임 컨텐츠와 비-비디오 게임 컨텐츠를 구별하도록 뉴럴 네트워크를 트레이닝시키는 것을 가능하게 하기 위해, 프로비저닝 서버는 또한 비-비디오 게임 컨텐츠(예컨대, 텔레비전 컨텐츠)의 디지털 핑거프린트들을 획득할 수 있다. 예를 들어, 프로비저닝 서버 및/또는 다른 관련 서버들은 다양한 텔레비전 컨텐츠 채널들을 수신하기 위한 튜너들을 갖는 하나 이상의 텔레비전 시청국들을 포함할 수 있으며, 해당 텔레비전 컨텐츠의 디지털 핑거프린트들을 생성하기 위해 전술한 바와 같은 핑거프린트 생성기를 사용할 수 있다. 그 후에 프로비저닝 서버는 전술한 바와 같은 하나 이상의 뉴럴 네트워크를 트레이닝시키는데 사용하기 위해 비-비디오 게임 컨텐츠의 디지털 핑거프린트들을 뉴럴 네트워크 서버에 제공할 수 있다.
본 개시에 따르면, 위에서 언급한 바와 같이, 네트워크 플랫폼이 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠의 아이덴티티를 결정한 것에 응답하여, 특히 비디오 프레젠테이션 디바이스가 식별된 비디오 컨텐츠 아이템을 계속 렌더링하는 스레숄드 듀레이션을 검출한 것에 응답하여 액션들을 취하도록 구성될 수 있다.
예를 들어, 프록시 서버가 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠의 아이덴티티(예를 들어, 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 특정 비디오 게임의 아이덴티티)를 학습하고 나면, 프록시 서버 또는 관련 엔티티는 해당 비디오 컨텐츠의 프레젠테이션에 관한 레이팅 데이터(ratings-data)를 기록할 수 있다. 예를 들어, 프록시 서버는, 프레젠테이션되고 있는 식별된 비디오 컨텐츠의 카운트 또는 다른 통계에 대하여 해당 비디오 컨텐츠가 프레젠테이션된 정도를 나타내는 데이터를 추가하는 것 등에 의해, 비디오 프레젠테이션 디바이스가 식별된 비디오 컨텐츠를 프레젠테이션하고 있다는 사실을 기록할 수 있다. 또한, 프록시 서버는 비디오 프레젠테이션 디바이스(장치별 뷰잉 분석으로서) 및 관련 통계별로 이러한 데이터를 기록할 수 있다.
다른 예로서, 프록시 서버가 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠의 아이덴티티를 학습하고 나면, 프록시 서버 또는 관련 엔티티는 비디오 프레젠테이션 디바이스 또는 다른 사용자 디바이스가 부가 컨텐츠, 가능하게는 식별된 비디오 컨텐츠와 관련된 컨텐츠를 프레젠테이션하게 할 수 있다. 예를 들어, 프록시 서버는 비디오 프레젠테이션 디바이스 또는 다른 사용자 디바이스가 식별된 비디오 컨텐츠(예를 들어, 추가 게임 레벨 또는 다른 게임)를 고려하여 관심을 가질 수 있는 가상 컨텐츠 또는 물리적 상품을 제안하거나, 또는 관심을 가질만한 도움말이나 기타 정보를 제공하는 팝업 광고를 프레젠테이션하게 할 수 있다. 특히, 프록시 서버는 사용자에 의한 뷰잉을 위해 그렇지 않으면 부가 컨텐츠를 사용자에게 프레젠테이션하기 위해, 프레젠테이션된 비디오 컨텐츠 위에 부가 컨텐츠를 중첩함으로써(예를 들면, 디스플레이의 코너 또는 에지에) 비디오 프레젠테이션 디바이스 또는 다른 사용자 디바이스가 응답할 지시와 함께 그러한 부가 컨텐츠를 반송하는 메시지를 비디오 프레젠테이션 디바이스 또는 다른 사용자 디바이스에 전송할 수 있다.
이에 대한 특정 예로서, 위에서 언급한 바와 같이, 프록시 서버는 비디오 프레젠테이션 디바이스가 비디오 컨텐츠의 사전 설정된 비디오 세그먼트들의 인스턴스들 사이에서 식별된 비디오 컨텐츠를 얼마나 오랫동안 계속 렌더링하고 있는지를 결정할 수 있으며, 그 결정된 듀레이션에 기초하여 액션을 취할 수 있다. 예를 들어, 프록시 서버는 식별된 비디오 게임의 인터랙티브 비디오 세그먼트가 해당 비디오 게임의 컷씬들 사이에서 얼마나 오랫동안 계속되고 있는지를 결정할 수 있으며, 가능하게는 얼마나 오랫동안 사용자가 게임 플레이의 다음 레벨에 도달하려고 시도했는지를 나타낼 수 있고, 해당 듀레이션에 기초하여 액션을 취할 수 있다. 결정된 듀레이션이 예를 들어 시간 TD에서 도 3에 도시된 바와 같이 스레숄드 롱(threshold long)(및 계속 온고잉)인 경우, 프록시 서버는 사용자가 어려움을 겪고 있는 것으로 보인다는 점에 근거하여, 비디오 프레젠테이션 디바이스로 하여금 게임 플레이 힌트와 같은 도움말 컨텐츠를 사용자에게 프레젠테이션하게 할 수 있다. 반면, 결정된 듀레이션이 스레숄드 쇼트(threshold short)인 경우, 프록시 서버는 사용자가 전문가 플레이어인 것으로 보인다는 점에 근거하여, 비디오 프레젠테이션 디바이스로 하여금 더 높은 게임 레벨 등의 구매 제안을 사용자에게 프레젠테이션하게 할 수 있다.
이러한 사전 설정된 비디오 세그먼트들 사이의 듀레이션에 대한 평가는 식별된 비디오 컨텐츠를 재생하는 실제 인스턴스들의 이력 통계 분석에 기초하여 확립된 하나 이상의 듀레이션 스레숄드들과 함께, 식별된 비디오 컨텐츠에 특정한 것일 수 있다. 실제에 있어서, 프로비저닝 서버 또는 다른 엔티티는 이러한 스레숄드들을 개발할 수 있다. 예를 들어, 특정 비디오 게임과 관련하여, 프로비저닝 서버는 해당 비디오 게임의 다수의 플레이 인스턴스들 각각에 있어서(예를 들어, 플레이-스루 레코딩 등), 해당 비디오 게임의 특정 컷씬들 사이의 듀레이션을 평가할 수 있으며, 컷씬들 사이의 일반적인 듀레이션으로 간주될 수 있는 것을 설정하기 위해 듀레이션들을 평균화하거나 듀레이션 데이터를 롤업(roll up)할 수 있다. 그리고 프로비저닝 서버는 비디오 게임의 주어진 플레이 인스턴스에서 컷씬들 사이의 듀레이션이 스레숄드 롱인지 슬레숄드 쇼트인지 여부를 결정하기 위한 스레숄드들로서 사용하기 위해, 이러한 듀레이션들을 나타내는 데이터를(컷씬들의 식별자들과 함께) 프록시 서버에 제공할 수 있다. 다른 구현들도 또한 가능하다.
도 4는 비디오 프레젠테이션 디바이스에 의한 비디오 컨텐츠의 렌더링을 검출하고 이에 응답하기 위한 상기 논의에 따른 예시적인 방법에 대한 도면이며, 여기서 비디오 컨텐츠는 (i) 렌더링 동안 사용자 상호 작용에 기초하여 변하지 않는 사전 설정된 비디오 세그먼트 및 (ii) 렌더링 동안 사용자 상호 작용에 기초하여 변하는 동적 정의되는 비디오 세그먼트를 포함한다.
도 4에 도시된 바와 같이, 블록(40)에서, 본 방법은 컴퓨팅 시스템이 렌더링되고 있는 비디오 컨텐츠의 표현으로서 렌더링 동안 실시간으로 생성되는 쿼리 핑거프린트를 획득(예를 들어, 수신 또는 설정)하는 것을 포함하며, 여기서 쿼리 핑거프린트는 사전 설정된 비디오 세그먼트를 나타내는 제 1 부분 및 동적 정의되는 비디오를 나타내는 제 2 부분을 포함한다. 또한, 블록(40)과 동시에 도시된 블록(42)에서, 컴퓨팅 시스템은 쿼리 핑거프린트의 제 1 부분과 사전 설정된 비디오 세그먼트를 나타내는 레퍼런스 핑거프린트 사이의 매칭을 검출하고, (b) 매칭의 검출에 기초하여, 렌더링되고 있는 비디오 컨텐츠를 식별하고, (c) 렌더링되고 있는 비디오 컨텐츠의 식별 이후에, 트레이닝된 뉴럴 네트워크를 적어도 쿼리 핑거프린트의 제 2 부분에 적용하고, (d) 뉴럴 네트워크의 적용에 기초하여, 식별된 비디오 컨텐츠의 렌더링이 계속되고 있는 것을 검출한다. 결과적으로, 블록(44)에서, 적어도 식별된 비디오 컨텐츠의 렌더링이 계속되고 있는 것을 검출한 것에 응답하여, 컴퓨팅 시스템은 식별된 비디오 컨텐츠에 특정한 동작을 취한다.
상기 논의에 따라, 본 방법의 비디오 컨텐츠는 비디오 게임 컨텐츠를 포함할 수 있으며, 렌더링되고 있는 비디오 컨텐츠를 식별하는 동작은 렌더링되고 있는 특정 비디오 게임의 아이덴티티를 결정하는 것을 포함할 수 있다. 또한, 식별된 비디오 컨텐츠의 렌더링이 계속되고 있는 것을 검출하는 동작은 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠가 여전히 비디오 게임 컨텐츠인 것을 검출하는 것 및/또는 렌더링되고 있는 비디오 컨텐츠가 여전히 특정 식별된 비디오 게임인 것을 검출하는 것을 포함할 수 있다. 또한, 식별된 비디오 컨텐츠에 특정한 액션을 취하는 동작은 추가 비디오 게임 컨텐츠에 대한 제안을 포함하는 부가 컨텐츠의 프레젠테이션을 발생시키는 것을 포함할 수 있다.
위에서 추가로 논의된 바와 같이, 본 방법은 컴퓨팅 시스템이 (사전 설정된 비디오 세그먼트와 관련하여) 검출된 매칭의 종료를 검출하는 것을 추가로 포함할 수 있으며, 이 경우 트레이닝된 뉴럴 네트워크를 적용하는 동작은 적어도 검출된 매칭의 종료를 검출하는 것에 대해 응답하는 것일 수 있다.
또한, 본 방법은 컴퓨팅 시스템이, 트레이닝된 뉴럴 네트워크를 적어도 쿼리 핑거프린트의 제 2 부분에 적용하는 것에 기초하여, 비디오 컨텐츠의 동적 정의되는 부분의 렌더링이 적어도 스레숄드 듀레이션 동안 계속된 것으로 결정하는 것을 포함할 수 있다. 또한 식별된 비디오 컨텐츠에 특정한 액션을 취하는 동작은 부가 컨텐츠의 프레젠테이션을 발생시키는 것을 포함할 수 있다. 또한, 부가 컨텐츠를 프레젠테이션하는 동작은 비디오 컨텐츠의 동적 정의되는 부분의 렌더링이 적어도 스레숄드 듀레이션 동안 계속된 것으로 결정한 동작에 대해 추가로 응답하는 것일 수 있다. 예를 들어, 비디오 컨텐츠의 동적 정의되는 부분은 인터랙티브 비디오 게임 컨텐츠를 포함할 수 있으며, 적어도 스레숄드 듀레이션 동안 계속된 비디오 컨텐츠의 동적 정의되는 부분에 추가로 응답하는 부가 컨텐츠의 프레젠테이션을 발생시키는 동작은 비디오 게임 도움말 컨텐츠의 프레젠테이션을 발생시키는 것을 포함한다.
또한, 사전 설정된 비디오 세그먼트는 제 1 사전 설정된 비디오 세그먼트로 라벨링될 수 있고, 비디오 컨텐츠는 렌더링 동안 사용자 상호 작용에 기초하여 변하지 않는 제 2 사전 설정된 비디오 세그먼트를 포함할 수 있으며, 여기서 쿼리 핑거프린트는 제 2 사전 설정된 비디오 세그먼트를 나타내는 제 3 부분을 포함한다. 그 경우에, 트레이닝된 뉴럴 네트워크를 적어도 쿼리 핑거프린트의 제 2 부분에 적용한 것에 기초하여, 비디오 컨텐츠의 동적 정의되는 부분의 렌더링이 적어도 스레숄드 듀레이션 동안 계속된 것으로 결정하는 동작은 제 1 사전 설정된 비디오 세그먼트의 렌더링으로부터 제 2 사전 설정된 비디오 세그먼트의 렌더링까지(예를 들어, 그 전 또는 그 때)의 스레숄드 롱 듀레이션을 검출하는 것을 포함한다.
또한, 이 매칭은 제 1 매칭으로 라벨링될 수 있으며, 본 방법은 컴퓨팅 시스템이 쿼리 핑거프린트의 제 3 부분과 제 2 사전 설정된 비디오 세그먼트를 나타내는 레퍼런스 핑거프린트 사이의 제 2 매칭를 검출하고, 제 2 매칭의 검출에 기초하여, 트레이닝된 뉴럴 네트워크를 쿼리 핑거프린트에 적용하는 것을 중단하는 것을 추가로 포함할 수 있다.
또한, 상기 논의에 따라, 컴퓨팅 시스템은 네트워크를 통해 비디오 프레젠테이션 디바이스와 통신하며, 컴퓨팅 시스템이 렌더링되고 있는 비디오 컨텐츠의 표현으로서 렌더링 동안 실시간으로 생성되는 쿼리 핑거프린트를 획득하는 동작은, 컴퓨팅 시스템이 네트워크를 통해, 비디오 컨텐츠의 렌더링 동안 비디오 프레젠테이션 디바이스에 의해 실시간으로 생성되는 쿼리 핑거프린트의 전송들(예를 들어, 연속 전송 또는 순차적 전송)을 비디오 프레젠테이션 디바이스로부터 수신하는 것을 포함할 수 있다.
또한, 위에서 논의된 바와 같이, 본 방법은 비디오 게임 플레이의 다양한 인스턴스들의 컴퓨터화된 분석에 기초하여, 레퍼런스 핑거프린트 및 트레이닝된 뉴럴 네트워크를 포함하는 레퍼런스 데이터 세트를 설정하는 것을 추가로 포함할 수 있다. 예를 들어, 본 방법은 플레이-스루 비디오들과 같은 비디오 게임 플레이의 다양한 인스턴스들 중 적어도 일부를 공개 패킷 교환 네트워크로부터 자동으로 탐색 및 다운로드(예를 들어, 스트리밍 플레이아웃 수신)하며, 또한 비디오 게임 플레이의 다운로드된(예를 들어, 스트리밍) 인스턴스들에 대하여 컴퓨터화된 분석을 수행하는 것을 포함할 수 있다.
도 5는 비디오 게임의 재생을 검출하고 이에 응답하기 위한 상기 논의에 따른 방법을 도시한 다른 도면이며, 여기서 비디오 게임은 비디오 디스플레이 유닛(예를 들어, 비디오 프레젠테이션 디바이스 또는 관련 유닛) 상에서 실시간으로 렌더링되며, 비디오 게임은 (i) 렌더링 동안 사용자 상호 작용에 기초하여 변하지 않는 컷씬 비디오 세그먼트들 및 (ii) 렌더링 동안 사용자 상호 작용에 기초하여 변하는 인터랙티브 비디오 세그먼트들을 포함한다.
도 5에 도시된 바와 같이, 블록(50)에서, 본 방법은 컴퓨팅 시스템이, 재생되고 있는 비디오 게임의 표현으로서 렌더링 동안 실시간으로 생성되는 쿼리 핑거프린트를 획득하는 것을 포함하며, 여기서 쿼리 핑거프린트는 (i) 제 1 컷씬 비디오 세그먼트를 나타내는 제 1 부분 및 (ii) 제 1 인터랙티브 비디오 세그먼트를 나타내는 제 2 부분을 포함한다. 또한 본 방법은 쿼리 핑거프린트를 획득하면서 수행될 수 있는 후속 블록들을 포함한다. 특히, 블록(52)에서, 본 방법은 컴퓨팅 시스템이, 쿼리 핑거프린트의 제 1 부분과 제 1 컷씬 비디오 세그먼트를 나타내는 레퍼런스 핑거프린트 사이의 매칭을 검출하고, 검출된 매칭에 기초하여, 컴퓨팅 시스템에 의해서 렌더링되고 있는 비디오 게임을 식별하는 것을 포함한다. 블록(54)에서, 본 방법은 렌더링되고 있는 비디오 컨텐츠를 식별한 이후에, 컴퓨팅 시스템이, 트레이닝된 뉴럴 네트워크를 적어도 쿼리 핑거프린트의 제 2 부분에 적용함으로써 렌더링되고 있는 비디오 컨텐츠가 여전히 식별된 게임인 것을 검출하는 것을 포함한다. 그리고 블록(56)에서, 본 방법은 적어도 렌더링되고 있는 비디오 컨텐츠가 여전히 식별된 비디오 게임인 것을 검출한 것에 응답하여, 컴퓨팅 시스템이 부가 컨텐츠의 프레젠테이션을 발생시키는 것을 포함한다.
위에서 더 논의된 바와 같이, 본 방법은 컴퓨팅 시스템이, 검출된 매칭의 종료를 검출하는 것을 추가로 포함할 수 있으며, 트레이닝된 뉴럴 네트워크의 적용은 적어도 검출된 매칭의 종료를 검출한 것에 대한 응답일 수 있다. 또한, 본 방법은 트레이닝된 뉴럴 네트워크를 적어도 쿼리 핑거프린트의 제 2 부분에 적용하는 것에 기초하여, 컴퓨팅 시스템이, 제 1 인터랙티브 비디오 세그먼트가 적어도 스레숄드 듀레이션 동안 계속된 것으로 결정하는 것을 추가로 포함할 수 있으며, 부가 컨텐츠의 프레젠테이션은 비디오 컨텐츠의 인터랙티브 부분이 적어도 스레숄드 듀레이션 동안 계속된 것에 대한 추가 응답일 수 있고, 부가 컨텐츠는 비디오 게임 도움말 컨텐츠를 포함할 수 있다.
도 6은 본 발명에 따라 동작 가능한 예시적인 컴퓨팅 시스템의 간략 블록도이다. 이 컴퓨팅 시스템은 전술한 네트워크 플랫폼(22) 및/또는 하나 이상의 다른 엔티티(가능하게는 미디어 프레젠테이션 디바이스를 포함함)로서 구현될 수 있다. 도 6에 도시된 바와 같이, 본 예시적인 시스템은 네트워크 통신 인터페이스(60), 프로세싱 유닛(62), 비일시적 데이터 스토리지(64)를 포함하며, 이들 중의 일부 또는 전부가 함께 통합될 수 있고, 또는 도시된 바와 같이 시스템 버스, 네트워크 또는 다른 연결 메커니즘(66)에 의해 함께 통신 가능하게 링크될 수도 있다.
네트워크 통신 인터페이스(60)는 전술한 네트워크(22)와 같은 네트워크 상에서의 통신을 용이하게 하거나 및/또는 하나 이상의 다른 로컬 또는 원격 엔티티들과 직접 결합하거나 또는 네트워크 통신을 하기 위한 하나 이상의 물리적 네트워크 연결 메커니즘을 포함할 수 있다. 이와 같이, 네트워크 통신 인터페이스는 IP 통신 및/또는 다른 타입의 네트워크 통신에 결합하기 위한, 무선 또는 유선 이더넷 인터페이스 또는 다른 타입의 네트워크 인터페이스를 포함할 수 있다.
프로세싱 유닛(62)은 하나 이상의 범용 프로세서(예를 들어, 마이크로프로세서) 및/또는 하나 이상의 특수 프로세서(예를 들어, 주문형 집적 회로)를 포함할 수 있다. 또한 비일시적 데이터 스토리지(64)는 광학, 자기 또는 플래시 스토리지와 같은 하나 이상의 휘발성 및/또는 비휘발성 스토리지 컴포넌트들을 포함할 수 있다.
도시된 바와 같이, 데이터 스토리지(64)는 비디오 프레젠테이션 디바이스에 의한 비디오 컨텐츠의 렌더링을 검출하고 이에 응답하기 위해, 본 명세서에서 설명한 다양한 동작을 수행하도록 프로세싱 유닛(62)에 의해 실행될 수 있는 프로그램 명령어들(68)을 저장하며, 여기서 비디오 컨텐츠는 (i) 렌더링 동안 사용자 상호 작용에 기초하여 변하지 않는 사전 설정된 비디오 세그먼트 및 (ii) 렌더링 동안 사용자 상호 작용에 기초하여 변하는 동적 정의되는 비디오 세그먼트를 순차적으로 포함한다.
위에서 논의된 바와 같이, 예를 들어, 동작들은 렌더링되고 있는 비디오 컨텐츠의 표현으로서 렌더링 동안 실시간으로 생성되는 쿼리 핑거프린트를, 네트워크 통신 인터페이스를 통해, 비디오 프레젠테이션 디바이스로부터 수신하는 동작을 포함할 수 있으며, 여기서 쿼리 핑거프린트는 (i) 사전 설정된 비디오 세그먼트를 나타내는 제 1 부분 및 (ii) 동적 정의되는 비디오 세그먼트를 나타내는 제 2 부분을 순차적으로 포함한다. 또한, 동작들은 쿼리 핑거프린트의 제 1 부분과 사전 설정된 비디오 세그먼트를 나타내는 레퍼런스 핑거프린트 사이의 매칭을 검출하고, 검출된 매칭에 기초하여, 렌더링되고 있는 비디오 컨텐츠를 식별하는 동작을 포함할 수 있다. 동작들은 렌더링되고 있는 비디오 컨텐츠를 식별한 이후에, 적어도 쿼리 핑거프린트의 제 2 부분에 트레이닝된 뉴럴 네트워크를 적용함으로써 렌더링되고 있는 비디오 컨텐츠가 여전히 식별된 비디오 컨텐츠인 것을 검출하는 동작과, 적어도 렌더링되고 있는 비디오 컨텐츠가 여전히 식별된 비디오 컨텐츠인 것을 검출한 것에 응답하여, 사용자 디바이스로 하여금 부가 컨텐츠를 렌더링하게 하는 동작을 포함한다.
전술한 다양한 특징들이 이 상황에서도 적용될 수 있다. 예를 들어, 비디오 컨텐츠는 비디오 게임 컨텐츠를 포함할 수 있고, 사전 설정된 비디오 세그먼트는 컷씬 비디오 세그먼트를 포함할 수 있으며, 또한 동적 정의되는 비디오 세그먼트는 인터랙티브 게임 플레이 비디오 세그먼트를 포함할 수 있다. 이 경우에, 동작들은 트레이닝된 뉴럴 네트워크를 적어도 쿼리 핑거프린트의 제 2 부분에 적용하는 것에 기초하여, 인터랙티브 게임 플레이 비디오 세그먼트가 적어도 스레숄드 듀레이션 동안 계속된 것으로 결정하는 동작을 추가로 포함할 수 있으며, 사용자 디바이스로 하여금 부가 컨텐츠를 렌더링하게 하는 것은 인터랙티브 게임 플레이 비디오 세그먼트가 적어도 스레숄드 듀레이션 동안 계속된 것으로 결정한 것에 대한 추가 응답일 수 있고, 부가 컨텐츠는 비디오 게임 도움말 컨텐츠를 포함할 수 있다.
마지막으로, 도 7은 본 발명에 따라 동작 가능한 예시적인 비디오 프레젠테이션 디바이스의 간략 블록도이다. 전술한 바와 같이, 이 비디오 프레젠테이션 디바이스는 다양한 형태를 취할 수 있다. 예를 들어, 이것은 텔레비전, 컴퓨터 모니터 또는 비디오 컨텐츠를 수신하고 렌더링하도록 작동하는 다른 디바이스일 수 있다.
도 7에 도시된 바와 같이, 예시적인 비디오 프레젠테이션 디바이스는 비디오 입력 인터페이스(70), 비디오 프레젠테이션 인터페이스(72), 네트워크 통신 인터페이스(74), 프로세싱 유닛(76) 및 비일시적 데이터 스토리지(78)를 포함하며, 이들 중의 일부 또는 전부는 함께 통합되거나, 또는 도시된 바와 같이, 시스템 버스, 네트워크 또는 다른 연결 메커니즘(80)에 의해 함께 통신 가능하게 링크될 수도 있다.
비디오 입력 인터페이스(70)는 비디오 프레젠테이션 디바이스에 의해 프레젠테이션될 비디오 컨텐츠를 수신하기 위한 물리적 통신 인터페이스를 포함할 수 있다. 이와 같이, 미디어 입력 인터페이스는 비디오 소스로부터 아날로그 또는 디지털 형태의 비디오 컨텐츠를 수신하고 이것과의 통신을 확립하기 위한 하나 이상의 유선 및/또는 무선 인터페이스들을 포함할 수 있다. 예를 들어, 비디오 입력 인터페이스는 다른 가능성 중에서도 전술한 하나 이상의 인터페이스들일 수 있다.
비디오 프레젠테이션 인터페이스(72)는 수신된 비디오 컨텐츠의 프레젠테이션을 용이하게 하기 위한 하나 이상의 컴포넌트들을 포함할 수 있다. 예를 들어, 비디오 프레젠테이션 인터페이스는 디스플레이 패널 및 수신된 비디오 컨텐츠를 처리하여 디스플레이 패널 상에 비디오 컨텐츠를 프레젠테이션하는 것을 용이하게 하는 하나 이상의 비디오 디스플레이 드라이버들 또는 다른 컴포넌트들을 포함할 수 있다.
네트워크 통신 인터페이스(74)는 전술한 네트워크(24)와 같은 네트워크 상에서의 통신을 용이하게 하기 위한 및/또는 하나 이상의 다른 로컬 또는 원격 엔티티와 직접 결합하거나 네트워크 통신하기 위한 물리적 네트워크 연결 메커니즘을 포함할 수 있다. 이와 같이, 네트워크 통신 인터페이스는 IP 통신 및/또는 다른 타입의 네트워크 통신에 결합하기 위한 무선 또는 유선 이더넷 인터페이스 또는 다른 타입의 네트워크 인터페이스를 포함할 수 있다.
프로세싱 유닛(76)은 하나 이상의 범용 프로세서(예를 들어, 마이크로프로세서) 및/또는 하나 이상의 특수 프로세서(예를 들어, 주문형 집적 회로)를 포함할 수 있다. 또한 비일시적 데이터 스토리지(78)는 광학, 자기 또는 플래시 스토리지와 같은 하나 이상의 휘발성 및/또는 비휘발성 스토리지 컴포넌트들을 포함할 수 있다. 또한, 도시된 바와 같이, 데이터 스토리지(78)는 본 명세서에서 설명한 다양한 동작들을 수행하기 위해 프로세싱 유닛(76)에 의해 실행될 수 있는 프로그램 명령어들(82)을 저장한다. 예를 들어, 이 프로그램 명령어들은 비디오 입력 인터페이스(70)에서 수신되고 및/또는 비디오 프레젠테이션 인터페이스에서 처리되는 미디어 컨텐츠의 분석에 기초하여, 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠의 핑거프린트를 온고잉 기반으로 생성하며, 또한 이 생성된 핑거프린트를 온고잉 기반으로 제공함으로써 본 명세서에 설명된 바와 같은 채널 식별을 용이하게 하도록 실행될 수 있다.
상기 논의는 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 비디오 컨텐츠가 여전히 식별된 비디오 컨텐츠인 것을 결정하는데 뉴럴 네트워크를 사용하는 것을 제공하지만, 다른 종류의 머신 러닝 알고리즘도 또한 이러한 목적을 위해 사용될 수 있음에 유의한다. 예를 들면, 템플릿 매칭 프로세스가 사용될 수 있다. 템플릿 매칭은 주어진 비디오 컨텐츠 아이템에 특정한 시퀀스 또는 다른 패턴의 비디오 프레임들(불연속적일 수 있음)을 식별하는 것을 포함할 수 있다. 따라서, 템플릿 매칭 서버는 비디오 컨텐츠 아이템마다에 대하여 하나 이상의 이러한 패턴을 식별하기 위해 인터랙티브 비디오 컨텐츠의 레퍼런스 핑거프린트들을 평가하는 트레이닝 프로세스를 적용할 수 있다. 또한 템플릿 매칭 서버는, 트레이닝 프로세스가 특정 비디오 컨텐츠 아이템과 연관시킨 패턴을 쿼리 핑거프린트가 포함한다는 것을 검출함으로써, 수신 쿼리 핑거프린트를 분류할 수 있다. 다른 머신 러닝 프로세스들도 또한 사용될 수 있다.
이상 예시적인 실시들에 대하여 설명하였다. 그러나, 당업자는 본 발명의 진정한 범위 및 사상을 벗어나지 않고서도 이러한 실시예들에 대한 변경 및 수정이 이루어질 수 있음을 이해할 것이다.

Claims (20)

  1. 비디오 프레젠테이션 디바이스에 의한 비디오 컨텐츠의 렌더링(rendering)을 검출하고 이에 응답하는 방법으로서, 상기 비디오 컨텐츠는 (i) 상기 렌더링 동안 사용자 상호 작용에 기초하여 변하지 않는 사전 설정된 비디오 세그먼트 및 (ii) 상기 렌더링 동안 사용자 상호 작용에 기초하여 변하는 동적 정의되는 비디오 세그먼트를 포함하며, 상기 방법은,
    컴퓨팅 시스템에 의해서, 렌더링되고 있는 상기 비디오 컨텐츠의 표현으로서 상기 렌더링 동안 실시간으로 생성되는 쿼리 핑거프린트(query fingerprint)를 획득하는 단계 - 상기 쿼리 핑거프린트는 상기 사전 설정된 비디오 세그먼트를 나타내는 제 1 부분 및 상기 동적 정의되는 비디오 세그먼트를 나타내는 제 2 부분을 포함함 -;
    상기 쿼리 핑거프린트를 획득하는 동안, 상기 컴퓨팅 시스템이 (a) 상기 쿼리 핑거프린트의 상기 제 1 부분과 상기 사전 설정된 비디오 세그먼트를 나타내는 레퍼런스 핑거프린트 사이의 매칭을 검출하고, (b) 상기 매칭의 검출에 기초하여, 렌더링되고 있는 상기 비디오 컨텐츠를 식별하고, (c) 렌더링되고 있는 상기 비디오 컨텐츠를 식별한 이후에, 적어도 상기 쿼리 핑거프린트의 상기 제 2 부분에 트레이닝된 뉴럴 네트워크(trained neural network)를 적용하며, 또한 (d) 상기 뉴럴 네트워크의 적용에 기초하여, 상기 식별된 비디오 컨텐츠의 렌더링이 계속되고 있는 것을 검출하는 단계; 및
    적어도 상기 식별된 비디오 컨텐츠의 렌더링이 계속되고 있는 것을 검출한 것에 응답하여, 상기 컴퓨팅 시스템이 상기 식별된 비디오 컨텐츠에 특정한 액션을 취하는 단계
    를 포함하는, 방법.
  2. 제 1 항에 있어서,
    상기 비디오 컨텐츠는 비디오 게임 컨텐츠를 포함하는, 방법.
  3. 제 2 항에 있어서,
    상기 식별된 비디오 컨텐츠의 렌더링이 계속되고 있는 것을 검출하는 것은 상기 비디오 프레젠테이션 디바이스에 의해 렌더링되고 있는 상기 비디오 컨텐츠가 계속해서 비디오 게임 컨텐츠인 것을 검출하는 것을 포함하는, 방법.
  4. 제 2 항에 있어서,
    렌더링되고 있는 상기 비디오 컨텐츠를 식별하는 것은 렌더링되고 있는 특정 비디오 게임의 아이덴티티(identity)를 결정하는 것을 포함하며, 또한 상기 식별된 비디오 컨텐츠의 렌더링이 계속되고 있는 것을 검출하는 것은 렌더링되고 있는 상기 비디오 컨텐츠가 계속해서 상기 특정 비디오 게임인 것을 검출하는 것을 포함하는, 방법.
  5. 제 2 항에 있어서,
    상기 식별된 비디오 컨텐츠에 특정한 액션을 취하는 것은 추가 비디오 게임 컨텐츠에 대한 제안을 포함하는 부가 컨텐츠(supplemental content)의 프레젠테이션을 발생시키는 것을 포함하는, 방법.
  6. 제 1 항에 있어서,
    상기 컴퓨팅 시스템에 의해서, 검출된 상기 매칭의 종료를 검출하는 단계를 더 포함하며,
    상기 컴퓨팅 시스템에 의해서 상기 트레이닝된 뉴럴 네트워크를 적용하는 것은, 적어도 검출된 상기 매칭의 종료를 검출한 것에 대해 응답하는 것인, 방법.
  7. 제 1 항에 있어서,
    상기 컴퓨팅 시스템에 의해서, 상기 트레이닝된 뉴럴 네트워크를 적어도 상기 쿼리 핑거프린트의 상기 제 2 부분에 적용하는 것에 기초하여, 상기 비디오 컨텐츠의 동적 정의되는 부분의 렌더링이 적어도 스레숄드 듀레이션(threshold duration) 동안 계속되었다고 결정하는 단계를 더 포함하며,
    상기 식별된 비디오 컨텐츠에 특정한 동작을 취하는 것은 부가 컨텐츠의 프레젠테이션을 발생시키는 것을 포함하고,
    상기 부가 컨텐츠의 프레젠테이션을 발생시키는 것은 상기 비디오 컨텐츠의 상기 동적 정의되는 부분의 렌더링이 적어도 상기 스레숄드 듀레이션 동안 계속되었다고 결정한 것에 대해 추가로 응답하는 것인, 방법.
  8. 제 7 항에 있어서,
    상기 비디오 컨텐츠의 상기 동적 정의되는 부분은 인터랙티브 비디오 게임 컨텐츠를 포함하며, 또한
    상기 비디오 컨텐츠의 상기 동적 정의되는 부분이 적어도 상기 스레숄드 듀레이션 동안 계속된 것에 대하여 추가로 응답하여 상기 부가 컨텐츠의 프레젠테이션을 발생시키는 것은 비디오 게임 도움말 컨텐츠의 프레젠테이션을 발생시키는 것을 포함하는, 방법.
  9. 제 7 항에 있어서,
    상기 사전 설정된 비디오 세그먼트는 제 1 사전 설정된 비디오 세그먼트이고, 상기 비디오 컨텐츠는 상기 렌더링 동안 사용자 상호 작용에 기초하여 마찬가지로 변하지 않는 제 2 사전 설정된 비디오 세그먼트를 포함하고, 또한 상기 쿼리 핑거프린트는 상기 제 2 사전 설정된 비디오 세그먼트를 나타내는 제 3 부분을 포함하며,
    상기 컴퓨팅 시스템에 의해서, 상기 트레이닝된 뉴럴 네트워크를 적어도 상기 쿼리 핑거프린트의 상기 제 2 부분에 적용하는 것에 기초하여, 상기 비디오 컨텐츠의 상기 동적 정의되는 부분의 렌더링이 적어도 상기 스레숄드 듀레이션 동안 계속되었다고 결정하는 것은, 상기 제 1 사전 설정된 비디오 세그먼트를 렌더링하는 것으로부터 상기 제 2 사전 설정된 비디오 세그먼트를 렌더링하기까지의 스레숄드 롱 듀레이션(threshold long duration)을 검출하는 것을 포함하는, 방법.
  10. 제 9 항에 있어서,
    상기 매칭은 제 1 매칭이며, 상기 방법은,
    상기 컴퓨팅 시스템에 의해서, 상기 쿼리 핑거프린트의 상기 제 3 부분과 상기 제 2 사전 설정된 비디오 세그먼트를 나타내는 레퍼런스 핑거프린트 사이의 제 2 매칭를 검출하며, 또한 상기 제 2 매칭의 검출에 기초하여, 상기 컴퓨팅 시스템에 의해서, 상기 트레이닝된 뉴럴 네트워크를 상기 쿼리 핑거프린트에 적용하는 것을 중단하는 단계를 더 포함하는, 방법.
  11. 제 1 항에 있어서,
    상기 컴퓨팅 시스템은 네트워크를 통해 상기 비디오 프레젠테이션 디바이스와 통신하며, 상기 컴퓨팅 시스템에 의해서, 렌더링되고 있는 상기 비디오 컨텐츠의 표현으로서 상기 렌더링 동안 실시간으로 생성되는 상기 쿼리 핑거프린트를 획득하는 것은, 상기 컴퓨팅 시스템에 의해서, 상기 비디오 컨텐츠의 렌더링 동안 상기 비디오 프레젠테이션 디바이스에 의해 실시간으로 생성되는 상기 쿼리 핑거프린트의 전송들을, 상기 네트워크를 통해 상기 비디오 프레젠테이션 디바이스로부터 수신하는 것을 포함하는, 방법.
  12. 제 1 항에 있어서,
    비디오 게임 플레이의 다양한 인스턴스들의 컴퓨터화된 분석(computerized analysis)에 기초하여, 상기 레퍼런스 핑거프린트 및 상기 트레이닝된 뉴럴 네트워크를 포함하는 레퍼런스 데이터 세트를 설정하는 단계를 더 포함하는, 방법.
  13. 제 12 항에 있어서,
    비디오 게임 플레이의 다양한 인스턴스들 중 적어도 일부를 공공 패킷 교환 네트워크로부터 자동으로 탐색하고 다운로드하는 단계; 및
    상기 다운로드된 비디오 게임 플레이의 다양한 인스턴스들에 대해 컴퓨터화된 분석을 수행하는 단계를 더 포함하는, 방법.
  14. 제 13 항에 있어서,
    상기 비디오 게임 플레이의 다양한 인스턴스들은 플레이-스루(play-through) 비디오들을 포함하는, 방법.
  15. 제 1 항에 있어서,
    상기 뉴럴 네트워크는 LSTM(Long Short Term Memory) 뉴럴 네트워크를 포함하는, 방법.
  16. 비디오 게임의 재생을 검출하고 이에 응답하는 방법으로서, 상기 비디오 게임은 비디오 디스플레이 유닛 상에 실시간으로 렌더링되고, 상기 비디오 게임은 (i) 상기 렌더링 동안 사용자 상호 작용에 기초하여 변하지 않는 컷씬(cutscene) 비디오 세그먼트들 및 (ii) 상기 렌더링 동안 사용자 상호 작용에 기초하여 변하는 인터랙티브 비디오 세그먼트들을 포함하며, 상기 방법은,
    컴퓨팅 시스템에 의해서, 재생되고 있는 상기 비디오 게임의 표현으로서 상기 렌더링 동안 실시간으로 생성되는 쿼리 핑거프린트를 획득하는 단계 - 상기 쿼리 핑거프린트는 (i) 제 1 컷씬 비디오 세그먼트를 나타내는 제 1 부분 및 (ii) 제 1 인터랙티브 비디오 세그먼트를 나타내는 제 2 부분을 포함함 -;
    상기 컴퓨팅 시스템에 의해서, 상기 쿼리 핑거프린트의 상기 제 1 부분과 상기 제 1 컷씬 비디오 세그먼트를 나타내는 레퍼런스 핑거프린트 사이의 매칭을 검출하고, 검출된 상기 매칭에 기초하여, 상기 컴퓨팅 시스템에 의해서, 렌더링되고 있는 상기 비디오 게임을 식별하는 단계;
    상기 컴퓨팅 시스템에 의해서, 렌더링되고 있는 상기 비디오 게임을 식별한 이후에, 상기 컴퓨팅 시스템에 의해서, 트레이닝된 뉴럴 네트워크를 적어도 상기 쿼리 핑거프린트의 상기 제 2 부분에 적용함으로써 렌더링되고 있는 상기 비디오 게임이 계속해서 상기 식별된 게임인 것을 검출하는 단계; 및
    적어도 렌더링되고 있는 상기 비디오 게임이 계속해서 상기 식별된 비디오 게임인 것을 검출하는 것에 응답하여, 상기 컴퓨팅 시스템에 의해서, 부가 컨텐츠의 프레젠테이션을 발생키는 단계
    를 포함하는, 방법.
  17. 제 16 항에 있어서,
    상기 컴퓨팅 시스템에 의해서, 검출된 상기 매칭의 종료를 검출하는 단계를 더 포함하며,
    상기 컴퓨팅 시스템에 의해서, 상기 트레이닝된 뉴럴 네트워크를 적용하는 것은, 적어도 검출된 상기 매칭의 종료를 검출한 것에 대해 응답하는 것인, 방법.
  18. 제 16 항에 있어서,
    상기 컴퓨팅 시스템에 의해서, 상기 트레이닝된 뉴럴 네트워크를 적어도 상기 쿼리 핑거프린트의 상기 제 2 부분에 적용하는 것에 기초하여, 상기 제 1 인터랙티브 비디오 세그먼트가 적어도 스레숄드 듀레이션 동안 계속되었다고 결정하는 단계를 더 포함하며,
    상기 부가 컨텐츠의 프레젠테이션을 발생시키는 것은 상기 비디오 게임의 상기 인터랙티브 부분이 적어도 상기 스레숄드 듀레이션 동안 계속되었다고 결정한 것에 대해 추가로 응답하는 것이고,
    상기 부가 컨텐츠는 비디오 게임 도움말 컨텐츠를 포함하는, 방법.
  19. 컴퓨팅 시스템으로서,
    네트워크 통신 인터페이스;
    프로세싱 유닛;
    비일시적 데이터 스토리지; 및
    상기 비일시적 데이터 스토리지에 저장되며 비디오 프레젠테이션 디바이스에 의한 비디오 컨텐츠의 렌더링을 검출하고 이에 응답하기 위한 동작들을 수행하도록 상기 프로세싱 유닛에 의해 실행 가능한 프로그램 명령어들을 포함하며, 상기 비디오 컨텐츠는 (i) 상기 렌더링 동안 사용자 상호 작용에 기초하여 변하지 않는 사전 설정된 비디오 세그먼트 및 (ii) 상기 렌더링 동안 사용자 상호 작용에 기초하여 변하는 동적 정의되는 비디오 세그먼트를 순차적으로 포함하며, 상기 동작들은,
    렌더링되고 있는 상기 비디오 컨텐츠의 표현으로서 상기 렌더링 동안 실시간으로 생성되는 쿼리 핑거프린트를, 네트워크 통신 인터페이스를 통해, 상기 비디오 프레젠테이션 디바이스로부터 수신하는 동작과 - 상기 쿼리 핑거프린트는 (i) 상기 사전 설정된 비디오 세그먼트를 나타내는 제 1 부분 및 (ii) 상기 동적 정의되는 비디오 세그먼트를 나타내는 제 2 부분을 순차적으로 포함함 -,
    상기 쿼리 핑거프린트의 상기 제 1 부분과 상기 사전 설정된 비디오 세그먼트를 나타내는 레퍼런스 핑거프린트 사이의 매칭을 검출하고, 검출된 상기 매칭에 기초하여, 렌더링되고 있는 상기 비디오 컨텐츠를 식별하는 동작과,
    렌더링되고 있는 상기 비디오 컨텐츠를 식별한 이후에, 적어도 상기 쿼리 핑거프린트의 상기 제 2 부분에 머신 러닝 알고리즘(machine-learning algorithm)을 적용함으로써 렌더링되고 있는 상기 비디오 컨텐츠가 계속해서 상기 식별된 비디오 컨텐츠인 것을 검출하는 동작과,
    적어도 렌더링되고 있는 상기 비디오 컨텐츠가 계속해서 상기 식별된 비디오 컨텐츠인 것을 검출한 것에 응답하여, 사용자 디바이스로 하여금 부가 컨텐츠를 렌더링하게 하는 동작
    을 포함하는, 컴퓨팅 시스템.
  20. 제 19 항에 있어서,
    상기 비디오 컨텐츠는 비디오 게임 컨텐츠를 포함하며, 상기 사전 설정된 비디오 세그먼트는 컷씬 비디오 세그먼트를 포함하고, 상기 동적 정의되는 비디오 세그먼트는 인터랙티브 게임 플레이 비디오 세그먼트를 포함하고, 상기 동작들은,
    상기 머신 러닝 알고리즘을 적어도 상기 쿼리 핑거프린트의 상기 제 2 부분에 적용하는 것에 기초하여, 상기 인터랙티브 게임 플레이 비디오 세그먼트가 적어도 스레숄드 듀레이션 동안 계속되었다고 결정하는 동작을 더 포함하고,
    상기 사용자 디바이스로 하여금 상기 부가 컨텐츠를 렌더링하게 하는 것은 상기 인터랙티브 게임 플레이 비디오 세그먼트가 적어도 상기 스레숄드 듀레이션 동안 계속되었다고 결정한 것에 대해 추가로 응답하는 것이며, 또한
    상기 부가 컨텐츠는 비디오 게임 도움말 컨텐츠를 포함하는, 컴퓨팅 시스템.
KR1020197036619A 2017-06-12 2018-05-11 인터랙티브 비디오 컨텐츠의 렌더링 검출 및 이에 대한 응답 KR102242225B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020217011026A KR102350420B1 (ko) 2017-06-12 2018-05-11 인터랙티브 비디오 컨텐츠의 렌더링 검출 및 이에 대한 응답

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/620,440 US10972203B2 (en) 2017-06-12 2017-06-12 Detecting and responding to rendering of interactive video content
US15/620,440 2017-06-12
PCT/US2018/032202 WO2018231393A1 (en) 2017-06-12 2018-05-11 Detecting and responding to rendering of interactive video content

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020217011026A Division KR102350420B1 (ko) 2017-06-12 2018-05-11 인터랙티브 비디오 컨텐츠의 렌더링 검출 및 이에 대한 응답

Publications (2)

Publication Number Publication Date
KR20190141019A KR20190141019A (ko) 2019-12-20
KR102242225B1 true KR102242225B1 (ko) 2021-04-21

Family

ID=64563784

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020217011026A KR102350420B1 (ko) 2017-06-12 2018-05-11 인터랙티브 비디오 컨텐츠의 렌더링 검출 및 이에 대한 응답
KR1020197036619A KR102242225B1 (ko) 2017-06-12 2018-05-11 인터랙티브 비디오 컨텐츠의 렌더링 검출 및 이에 대한 응답

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020217011026A KR102350420B1 (ko) 2017-06-12 2018-05-11 인터랙티브 비디오 컨텐츠의 렌더링 검출 및 이에 대한 응답

Country Status (6)

Country Link
US (3) US10972203B2 (ko)
EP (2) EP3912698B1 (ko)
JP (1) JP6937978B2 (ko)
KR (2) KR102350420B1 (ko)
CN (1) CN110731085B (ko)
WO (1) WO2018231393A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10972203B2 (en) 2017-06-12 2021-04-06 Gracenote, Inc. Detecting and responding to rendering of interactive video content
US10853656B2 (en) * 2017-08-28 2020-12-01 Nec Corporation Surveillance system with activity recognition
US11470137B2 (en) 2019-01-08 2022-10-11 Rainway, Inc. Method and system for encoding game video and audio remotely streamed to a remote computer system
US10846506B1 (en) * 2019-05-10 2020-11-24 The Nielsen Company (Us), Llc Content-modification system with geographic area-based feature
US10796159B1 (en) * 2019-05-10 2020-10-06 The Nielsen Company (Us), Llc Content-modification system with use of multiple fingerprint data types feature
US11205319B2 (en) 2019-06-21 2021-12-21 Sg Gaming, Inc. System and method for synthetic image training of a neural network associated with a casino table game monitoring system
US11789905B2 (en) 2020-05-27 2023-10-17 Roblox Corporation Automated generation of game tags
GB2612767A (en) * 2021-11-03 2023-05-17 Sony Interactive Entertainment Inc Virtual reality interactions
US20230177076A1 (en) * 2021-12-06 2023-06-08 International Business Machines Corporation Extracting query-related temporal information from unstructured text documents
CN114363666B (zh) * 2021-12-22 2023-11-10 咪咕互动娱乐有限公司 视频处理方法、装置及电子设备
CN115484487B (zh) * 2022-08-23 2023-12-05 北京奇艺世纪科技有限公司 一种视频播放方法、装置、电子设备及存储介质

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040162759A1 (en) 2002-09-03 2004-08-19 Daniel Willis Advertising on video event display systems
US20060106867A1 (en) 2004-11-02 2006-05-18 Microsoft Corporation System and method for speeding up database lookups for multiple synchronized data streams
US20060252533A1 (en) 2005-05-06 2006-11-09 Hironobu Sakaguchi Dynamic frame system
US20070072676A1 (en) 2005-09-29 2007-03-29 Shumeet Baluja Using information from user-video game interactions to target advertisements, such as advertisements to be served in video games for example
US20080318676A1 (en) 2007-06-21 2008-12-25 Microsoft Corporation Responsive Cutscenes in Video Games
WO2009026564A1 (en) 2007-08-22 2009-02-26 Google Inc. Detection and classification of matches between time-based media
EP2067508A1 (en) 2007-11-29 2009-06-10 AMBX UK Limited A method for providing a sensory effect to augment an experience provided by a video game
US20090150947A1 (en) 2007-10-05 2009-06-11 Soderstrom Robert W Online search, storage, manipulation, and delivery of video content
US20140024451A1 (en) 2012-03-09 2014-01-23 Hulu, LLC Configuring advertisements in a video segment based on a game result
US20140236988A1 (en) 2013-01-07 2014-08-21 Gracenote, Inc. Video fingerprinting
US20140373043A1 (en) 2013-06-14 2014-12-18 Anthony Rose System For Synchronising Content With Live Television
US20150110340A1 (en) 2013-10-23 2015-04-23 Gracenote, Inc. Identifying video content via color-based fingerprint matching
US20160148055A1 (en) 2014-11-21 2016-05-26 Microsoft Technology Licensing, Llc Content interruption point identification accuracy and efficiency
WO2017058951A1 (en) 2015-09-30 2017-04-06 Sony Interactive Entertainment America Llc Systems and methods for providing time-shifted intelligently synchronized game video
US9872076B1 (en) 2016-12-09 2018-01-16 Google Llc Livestream conversation notifications

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7224819B2 (en) 1995-05-08 2007-05-29 Digimarc Corporation Integrating digital watermarks in multimedia content
US6053814A (en) 1997-12-04 2000-04-25 Logitech, Inc. System and method for automatically adjusting game controller sensitivity to player inputs
TW495710B (en) 1998-10-15 2002-07-21 Primax Electronics Ltd Voice control module for control of game controller
JP3949961B2 (ja) * 1999-07-30 2007-07-25 株式会社エヌ・ティ・ティ・ドコモ 信号変換装置、サーバ装置、ネットワーク情報システム及びそれらの制御方法並びに電話機端末装置
US7162314B2 (en) 2001-03-05 2007-01-09 Microsoft Corporation Scripting solution for interactive audio generation
US8073157B2 (en) 2003-08-27 2011-12-06 Sony Computer Entertainment Inc. Methods and apparatus for targeted sound detection and characterization
US20040235567A1 (en) 2003-05-20 2004-11-25 Sony Computer Entertainment America Inc., Foster City, Ca Video game method and system with content-related options
US7682237B2 (en) 2003-09-22 2010-03-23 Ssd Company Limited Music game with strike sounds changing in quality in the progress of music and entertainment music system
US7976385B2 (en) 2004-05-11 2011-07-12 Mattel, Inc. Game controller with sensitivity adjustment
US8180596B2 (en) * 2004-07-13 2012-05-15 General Electric Company Methods and apparatus for assembling rotatable machines
US20060025253A1 (en) * 2004-07-29 2006-02-02 Giannetti William B Composite ball bat with constrained layer dampening
US20070155494A1 (en) 2004-08-25 2007-07-05 Wells Robert V Video game system and method
US7690011B2 (en) 2005-05-02 2010-03-30 Technology, Patents & Licensing, Inc. Video stream modification to defeat detection
US8616973B2 (en) 2005-09-15 2013-12-31 Sony Computer Entertainment Inc. System and method for control by audible device
US8048413B2 (en) * 2006-05-17 2011-11-01 Helene Huguet Site-specific intestinal delivery of adsorbents, alone or in combination with degrading molecules
JP2008015679A (ja) 2006-07-04 2008-01-24 Sony Computer Entertainment Inc ユーザインタフェース装置および操作感度調整方法
EP2038027A1 (en) 2006-07-07 2009-03-25 AMBX UK Limited Ambient environment effects
JP4809201B2 (ja) * 2006-12-12 2011-11-09 ヤフー株式会社 情報提供装置、情報提供方法、及びコンピュータプログラム
JP2009022088A (ja) * 2007-07-11 2009-01-29 Hitachi Ltd 回転電機、及びこの製造方法
US8577077B2 (en) 2008-05-22 2013-11-05 Yuvad Technologies Co., Ltd. System for identifying motion video/audio content
US8879751B2 (en) 2010-07-19 2014-11-04 Voyetra Turtle Beach, Inc. Gaming headset with programmable audio paths
US9037468B2 (en) 2008-10-27 2015-05-19 Sony Computer Entertainment Inc. Sound localization for user in motion
US8805939B2 (en) 2010-11-03 2014-08-12 Microsoft Corporation Gaming notifications aggregator
KR101310943B1 (ko) 2011-09-26 2013-09-23 (주)엔써즈 방송 콘텐츠와 연관된 콘텐츠 연관 정보를 제공하는 시스템 및 방법
US10569171B2 (en) 2012-07-02 2020-02-25 Disney Enterprises, Inc. TV-to-game sync
US9122225B2 (en) * 2012-07-31 2015-09-01 Ricoh Company, Ltd. Lubricant applicator, image forming apparatus, and process cartridge
US9495451B2 (en) * 2013-01-07 2016-11-15 Gracenote, Inc. Identifying video content via fingerprint matching
US9372531B2 (en) 2013-03-12 2016-06-21 Gracenote, Inc. Detecting an event within interactive media including spatialized multi-channel audio content
US8979658B1 (en) 2013-10-10 2015-03-17 Voyetra Turtle Beach, Inc. Dynamic adjustment of game controller sensitivity based on audio analysis
CN103686409B (zh) 2013-12-06 2017-12-12 乐视网信息技术(北京)股份有限公司 桌面背景与直播界面同步播放的方法和系统
US9497505B2 (en) 2014-09-30 2016-11-15 The Nielsen Company (Us), Llc Systems and methods to verify and/or correct media lineup information
US10750236B2 (en) * 2015-04-23 2020-08-18 The Nielsen Company (Us), Llc Automatic content recognition with local matching
JP2016220174A (ja) * 2015-05-26 2016-12-22 株式会社東芝 家電制御方法及び家電制御装置
CN105719156A (zh) * 2015-10-15 2016-06-29 深圳市麻省图创科技有限公司 用于识别和推广已添加标签的商品的系统及方法
CN105338117B (zh) 2015-11-27 2018-05-29 亮风台(上海)信息科技有限公司 用于生成ar应用和呈现ar实例的方法、设备与系统
CN107566781B (zh) 2016-06-30 2019-06-21 北京旷视科技有限公司 视频监控方法和视频监控设备
US10986400B2 (en) 2016-08-04 2021-04-20 Microsoft Technology Licensing. LLC Compact video representation for video event retrieval and recognition
KR20160119432A (ko) 2016-09-30 2016-10-13 에스케이플래닛 주식회사 게임 정보를 이용하여 광고를 제공하기 위한 시스템, 이를 위한 장치, 이를 위한 단말, 이를 위한 방법 및 이 방법이 기록된 컴퓨터로 판독 가능한 기록 매체
US10972203B2 (en) 2017-06-12 2021-04-06 Gracenote, Inc. Detecting and responding to rendering of interactive video content

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040162759A1 (en) 2002-09-03 2004-08-19 Daniel Willis Advertising on video event display systems
US20060106867A1 (en) 2004-11-02 2006-05-18 Microsoft Corporation System and method for speeding up database lookups for multiple synchronized data streams
US20060252533A1 (en) 2005-05-06 2006-11-09 Hironobu Sakaguchi Dynamic frame system
US20070072676A1 (en) 2005-09-29 2007-03-29 Shumeet Baluja Using information from user-video game interactions to target advertisements, such as advertisements to be served in video games for example
US20080318676A1 (en) 2007-06-21 2008-12-25 Microsoft Corporation Responsive Cutscenes in Video Games
WO2009026564A1 (en) 2007-08-22 2009-02-26 Google Inc. Detection and classification of matches between time-based media
US20090150947A1 (en) 2007-10-05 2009-06-11 Soderstrom Robert W Online search, storage, manipulation, and delivery of video content
EP2067508A1 (en) 2007-11-29 2009-06-10 AMBX UK Limited A method for providing a sensory effect to augment an experience provided by a video game
US20140024451A1 (en) 2012-03-09 2014-01-23 Hulu, LLC Configuring advertisements in a video segment based on a game result
US20140236988A1 (en) 2013-01-07 2014-08-21 Gracenote, Inc. Video fingerprinting
US20140373043A1 (en) 2013-06-14 2014-12-18 Anthony Rose System For Synchronising Content With Live Television
US20150110340A1 (en) 2013-10-23 2015-04-23 Gracenote, Inc. Identifying video content via color-based fingerprint matching
US20160148055A1 (en) 2014-11-21 2016-05-26 Microsoft Technology Licensing, Llc Content interruption point identification accuracy and efficiency
WO2017058951A1 (en) 2015-09-30 2017-04-06 Sony Interactive Entertainment America Llc Systems and methods for providing time-shifted intelligently synchronized game video
US9872076B1 (en) 2016-12-09 2018-01-16 Google Llc Livestream conversation notifications

Also Published As

Publication number Publication date
JP6937978B2 (ja) 2021-09-22
CN110731085A (zh) 2020-01-24
KR102350420B1 (ko) 2022-01-13
US20180359041A1 (en) 2018-12-13
KR20210044317A (ko) 2021-04-22
EP3912698A1 (en) 2021-11-24
EP3639522A4 (en) 2020-12-23
US20180359040A1 (en) 2018-12-13
JP2020523871A (ja) 2020-08-06
CN110731085B (zh) 2021-12-14
US10972204B2 (en) 2021-04-06
EP3912698B1 (en) 2023-05-03
EP3639522A1 (en) 2020-04-22
US10972203B2 (en) 2021-04-06
EP3639522B1 (en) 2021-08-11
KR20190141019A (ko) 2019-12-20
US11936467B2 (en) 2024-03-19
WO2018231393A1 (en) 2018-12-20
US20210184779A1 (en) 2021-06-17

Similar Documents

Publication Publication Date Title
KR102242225B1 (ko) 인터랙티브 비디오 컨텐츠의 렌더링 검출 및 이에 대한 응답
JP6928107B2 (ja) アプリケーション内の行動に基づく個人化されたユーザインターフェース
KR102286410B1 (ko) 반복적 재생을 피하기 위한 미디어 타이틀의 이전에 스트리밍된 부분들의 식별
TWI537035B (zh) 遊戲歷程記錄裝置、遊戲歷程記錄方法及遊戲歷程互動方法
CN111444415B (zh) 弹幕处理方法、服务器、客户端、电子设备及存储介质
JP7022782B2 (ja) コンテンツ特徴に基づいたトリガ機能を有するコンピューティングシステム
US20210289255A1 (en) Synchronization of media content across multiple participant devices
JP5789303B2 (ja) コンテンツシグネチャリング
JP2013537330A (ja) コンテンツシグネチャリングユーザーインターフェイス
US20240080520A1 (en) Systems and methods for providing media recommendations
WO2022265669A1 (en) Methods and systems for providing dynamic summaries of missed content from a group watching experience
US20220312079A1 (en) Systems and methods to provide adaptive play settings
US11856040B1 (en) Dynamic remediation of pluggable streaming devices
CN107852523B (zh) 用于在终端之间同步媒体渲染的方法、终端和设备
US20230138329A1 (en) Methods and systems for group watching
US20240137394A1 (en) Systems, methods, and computer program products for providing simulator augmented content selection
US20240146979A1 (en) System, method and computer-readable medium for live streaming recommendation
JP6569315B2 (ja) 動画監視システム、動画監視方法、および動画監視用プログラム
KR20200084396A (ko) 영상과 관련된 메타데이터를 생성하는 장치 및 방법
WO2022103414A1 (en) Systems and methods for providing media recommendations
JP2011215895A (ja) コンテンツ評価装置及びコンテンツ評価方法
KR20140072842A (ko) 댓글 광고 운영 방법

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
A107 Divisional application of patent
GRNT Written decision to grant