BR112019011452A2 - criar, transmitir e visualizar conteúdo 3d - Google Patents
criar, transmitir e visualizar conteúdo 3d Download PDFInfo
- Publication number
- BR112019011452A2 BR112019011452A2 BR112019011452A BR112019011452A BR112019011452A2 BR 112019011452 A2 BR112019011452 A2 BR 112019011452A2 BR 112019011452 A BR112019011452 A BR 112019011452A BR 112019011452 A BR112019011452 A BR 112019011452A BR 112019011452 A2 BR112019011452 A2 BR 112019011452A2
- Authority
- BR
- Brazil
- Prior art keywords
- game
- metadata
- viewer
- module
- data
- Prior art date
Links
- 238000000034 method Methods 0.000 claims abstract description 36
- 230000004044 response Effects 0.000 claims abstract description 13
- 230000005540 biological transmission Effects 0.000 claims description 49
- 230000015654 memory Effects 0.000 claims description 27
- 230000009471 action Effects 0.000 claims description 24
- 239000000203 mixture Substances 0.000 claims description 12
- 230000004424 eye movement Effects 0.000 claims description 7
- 238000006243 chemical reaction Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 claims description 3
- 238000009877 rendering Methods 0.000 description 25
- 238000004891 communication Methods 0.000 description 14
- 238000012800 visualization Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 6
- 230000033001 locomotion Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000013473 artificial intelligence Methods 0.000 description 5
- 210000003128 head Anatomy 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 230000007613 environmental effect Effects 0.000 description 3
- 239000007789 gas Substances 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000036461 convulsion Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000008921 facial expression Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 239000008280 blood Substances 0.000 description 1
- 210000004369 blood Anatomy 0.000 description 1
- 230000036772 blood pressure Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000003344 environmental pollutant Substances 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000004886 head movement Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 231100000719 pollutant Toxicity 0.000 description 1
- 230000008261 resistance mechanism Effects 0.000 description 1
- 230000002207 retinal effect Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000035900 sweating Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/85—Providing additional services to players
- A63F13/86—Watching games played by other players
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/21—Input arrangements for video game devices characterised by their sensors, purposes or types
- A63F13/213—Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/45—Controlling the progress of the video game
- A63F13/49—Saving the game status; Pausing or ending the game
- A63F13/497—Partially or entirely replaying previous game actions
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
- A63F13/525—Changing parameters of virtual cameras
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23424—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
- H04N21/2353—Processing of additional data, e.g. scrambling of additional data or processing content descriptors specifically adapted to content descriptors, e.g. coding, compressing or processing of metadata
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management 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/258—Client 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/25866—Management of end-user data
- H04N21/25891—Management of end-user data being end-user preferences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/422—Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
- H04N21/4223—Cameras
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/816—Monomedia components thereof involving special video data, e.g 3D video
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8166—Monomedia components thereof involving executable data, e.g. software
- H04N21/8173—End-user applications, e.g. Web browser, game
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating 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/67—Generating 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Databases & Information Systems (AREA)
- Library & Information Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Business, Economics & Management (AREA)
- Marketing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Processing Or Creating Images (AREA)
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
- Studio Devices (AREA)
Abstract
é revelado um método para permitir que seja criada uma versão personalizada de sessão de vídeo para apresentação em ao menos um dispositivo visualizador. são recebidos metadados de jogo gerados a partir de uma alimentação de vídeo ao vivo ou gravado. os metadados de jogo incluem dados de modelagem tridimensional associados à alimentação de vídeo ao vivo ou gravado. são recebidos metadados de espectador coletados a partir de uma pluralidade de dispositivos visualizadores. os metadados de espectador incluem informação referente a uma pluralidade de respostas de uma pluralidade de espectadores para uma apresentação da sessão de vídeo em uma pluralidade de dispositivos visualizadores. são criados metadados adicionais de jogo baseados nos metadados de jogo e nos metadados de espectador. os metadados adicionais de jogo incluem dados de câmera baseados nos dados de modelagem tridimensional. os metadados adicionais de jogo são integrados nos metadados de jogo para apresentação ao menos em tempo quase real da versão personalizada da sessão de vídeo.
Description
CRIAR, TRANSMITIR E VISUALIZAR CONTEÚDO 3D REFERÊNCIA A PEDIDOS DE PATENTE CORRELATOS [001] Este pedido de patente reivindica o beneficio do Pedido de Patente Provisório US Número de Série 62/432.321, depositado em 09 de dezembro de 2016, e do Pedido de Patente Provisório US Número de Série 62/551.130, depositado em 28 de agosto de 2017, cada um dos quais é incorporado neste documento por referência na sua totalidade.
CAMPO TÉCNICO [002] As modalidades da presente invenção referem-se de modo geral a jogos de computador para múltiplos jogadores e, mais especificamente, a sistemas e métodos para criar, transmitir e visualizar conteúdo 3D.
FUNDAMENTOS [003] Existem diversas ferramentas que permitem que jogadores de videogames joguem jogos para múltiplos jogadores online em tempo real por meio do que diversos jogadores de videogames distribuídos por uma rede interajam com o mesmo videogame ao mesmo tempo. Além disso, existem ferramentas para que usuários que não jogam assistam ao jogo e transmitam as suas visões do jogo junto com comentários. Estes usuários que não jogam são referidos como anfitriões ou controladores e a sua difusão é uma transmissão do jogo. Muitos terceiros usuários podem sintonizar e assistir aos jogos selecionados por meio de sites da Internet tais como Twitch® e YouTube®.
[004] Infelizmente para os terceiros espectadores, a qualidade cinematográfica da transmissão é frequentemente muito fraca em relação à estabilidade da câmera, conjuntura
Petição 870190074105, de 01/08/2019, pág. 7/59
2/44 de tomada, cortes de câmera e mais. Os controladores frequentemente não têm treinamento em cinematografia e têm ferramentas muito limitadas à sua disposição para capturar a ação de jogos. A ferramenta mais popular é uma câmera controlada por um mouse de computador, mas esta ferramenta frequentemente fornece visualizações entrecortadas. Mais frequentemente, o controlador não tem qualquer controle da visão e deve criar o elenco usando a câmera de jogador (por exemplo, a visão da câmera usada pelo jogador em qualquer determinado momento), o que é muito difícil de assistir. Espectadores assistindo à ação diretamente do jogo (por exemplo, sem um controlador) não têm escolha a não ser a partir de uma das câmeras de jogador. Além disso, outro inconveniente de transmissões tradicionais de jogos é que a saída é uma transmissão padrão de vídeo visível em aparelhos de vídeo que não têm qualquer capacidade para controlar cinematografia ou fornecer realimentação significativa de espectadores além de visualizações, curtidas e comentários.
BREVE DESCRIÇÃO DOS DESENHOS [005] Diversos dos desenhos anexos meramente ilustram modalidades exemplificativas da presente revelação e não podem ser considerados como limitando o seu âmbito. Recursos e vantagens adicionais da presente revelação tornar-se-ão evidentes a partir da descrição detalhada a seguir, considerada em combinação com os desenhos anexos, nos quais:
a Figura 1 é um diagrama de componentes de um sistema eSport exemplificativo que inclui um dispositivo de eSport e periféricos associados, de acordo com uma modalidade;
Petição 870190074105, de 01/08/2019, pág. 8/59
3/44 a Figura 2A ilustra o sistema eSport em uma rede exemplificativa pela qual é fornecido um jogo de computador para múltiplos jogadores online (por exemplo, um jogo de eSport), de acordo com uma modalidade;
a Figura 2B ilustra o sistema eSport em uma rede exemplificativa pela qual é fornecida uma transmissão de um evento real, de acordo com uma modalidade;
as Figuras 3A e 3B ilustram um método exemplificativo para criar conteúdo de transmissão de alta definição de jogos de eSport para distribuição e apresentação a espectadores por sites de compartilhamento de vídeos, de acordo com uma modalidade;
as Figuras 3C e 3D ilustram um método exemplificativo para exibir e controlar a cinematografia para conteúdo de transmissão de alta definição de eventos de eSport, de acordo com uma modalidade;
a Figura 4 é um diagrama de blocos que ilustra uma arquitetura de software exemplificativa, a qual pode ser usada em conjunto com diversas arquiteturas de hardware descritas neste documento, de acordo com uma modalidade; e a Figura 5 é um diagrama de blocos que ilustra componentes de uma máquina, de acordo com algumas modalidades exemplificativas, capaz de ler instruções a partir de um meio legível por máquina (por exemplo, um meio de armazenamento legível por máquina) e executar qualquer uma ou mais das metodologias discutidas neste documento, de acordo com uma modalidade.
[006] Os cabeçalhos fornecidos neste documento são meramente por conveniência e não necessariamente afetam o âmbito ou significado dos termos usados. Números similares
Petição 870190074105, de 01/08/2019, pág. 9/59
4/44 nas figuras indicam componentes similares.
DESCRIÇÃO DETALHADA [007] A descrição que se segue inclui sistemas, métodos, técnicas, sequências de instruções e produtos de programa de máquina computacional que corporificam modalidades ilustrativas da revelação. Na descrição a seguir, com a finalidade de explanação, numerosos detalhes específicos são apresentados com a finalidade de fornecer uma compreensão de diversas modalidades do assunto da invenção. Será evidente, contudo, para aqueles versados na técnica, que modalidades do assunto da invenção podem ser executadas sem estes detalhes específicos. Em geral, casos de instrução, protocolos, estruturas e técnicas bem conhecidos não são necessariamente mostrados em detalhe.
[008] Os sistemas e métodos descritos neste documento fornecem um meio para criar saída de vídeo de alta qualidade cinematográfica a partir de um ambiente de jogo em tempo real (ou ao menos quase tempo real) onde a saída de vídeo contém metadados que podem ser usados pelo espectador para enriquecer a experiência de visualização. Além disso, os sistemas e métodos fornecidos neste documento descrevem um componente de jogador configurado para exibir as transmissões de jogo a espectadores, fornecer-lhes ferramentas para permitir que estes interajam com os metadados, e coletar dados dos espectadores para fornecer realimentação para o jogo e o controlador de jogo em tempo real.
[009] Os sistemas e métodos descritos neste documento permitem que um controlador crie transmissões de jogo em tempo real a partir do ambiente de jogo que alavancam
Petição 870190074105, de 01/08/2019, pág. 10/59
5/44 áudio, vídeo e metadados de jogo para fornecer uma alta qualidade cinematográfica e enriquecer a experiência de visualização. Além disso, os sistemas e métodos fornecidos neste documento descrevem um módulo de visualização configurado para exibir transmissões de jogos a espectadores, fornecer ferramentas aos espectadores para permitir que estes interajam com os metadados, e coletar dados dos espectadores para fornecer realimentação para o jogo e o controlador de jogo em tempo real. De acordo com outra modalidade, o módulo de visualização é configurado para exibir um jogo previamente gravado ou transmissão previamente gravada de jogo, fornecer ferramentas aos espectadores para permitir que estes interajam com os metadados, e coletar dados dos espectadores para fornecer realimentação para o jogo. De acordo com outra modalidade, o módulo de visualização é configurado para exibir um ambiente 3D (por exemplo, a partir de dados de ambiente 3D) , fornecer ferramentas aos espectadores para permitir que estes interajam com os metadados e o ambiente 3D, e coletar dados dos espectadores para fornecer realimentação para o gerador de dados de ambiente 3D. Os dados de ambiente 3D podem incluir dados do modelo 3D ao vivo, renderização 3D ao vivo (por exemplo, fotogrametria 3D ao vivo) de um ambiente real, dados de modelo 3D previamente gravados e renderização 3D previamente gravada (por exemplo, fotogrametria 3D gravada) de um ambiente real. Por toda a descrição neste documento o termo eSport refere-se em geral a conteúdo 3D, o qual inclui dados para jogos para múltiplos jogadores em rede gerados em tempo real, pelo que uma pluralidade de jogadores de videogame distribuídos por
Petição 870190074105, de 01/08/2019, pág. 11/59
6/44 uma rede interage com o mesmo videogame ao mesmo tempo (por exemplo, jogo amador online e jogo profissional competitivo online), e o termo inclui dados de ambiente 3D.
[0010] A Figura 1 é um diagrama de componentes de um dispositivo de eSport exemplificativo 102 e periféricos associados. Na modalidade exemplificativa, o dispositivo de eSport 102 é um dispositivo computacional operado por um usuário 110. O usuário 110 pode ser um jogador de um jogo para múltiplos jogadores online (por exemplo, um jogo de eSport), ou um controlador de transmissão (ou apenas controlador) que fornece diversas funções de transmissão associadas ao jogo de eSport, ou um terceiro espectador da transmissão. O dispositivo de eSport 102 inclui um ou mais dispositivos visualizadores 104 (por exemplo, monitores convencionais de computador, dispositivo vestiveis VR, etc.) e um ou mais dispositivos de entrada 106 (por exemplo, teclado, mouse, dispositivos apontadores portáteis ou vestiveis, dispositivo de câmera, dispositivo de rastreamento de movimento, etc.). O dispositivo de eSport 102 também inclui uma memória 120, uma ou mais unidades de processamento central (CPUs) 122, uma ou mais unidades de processamento gráfico (GPUs) 124, e um ou mais adaptadores 126 (por exemplo, adaptadores de rede com fio ou sem fio que fornecem conectividade de rede usada para o jogo de eSport).
[0011] Na modalidade exemplificativa, o dispositivo de eSport 102 inclui um motor de jogo 130 (por exemplo, executado pela CPU 122 ou GPU 124) que apresenta o jogo de eSport ao usuário 110. O motor de jogo 130 inclui um módulo de eSport 140 que fornece diversas funcionalidades de
Petição 870190074105, de 01/08/2019, pág. 12/59
7/44 transmissão para o jogo de eSport como descrito neste documento. 0 módulo de eSport 140 inclui um módulo de jogo ao vivo 142, um módulo de transmissão 144, um módulo de visualização 146 e um módulo cinematográfico 148, cada um implementado dentro do, ou de outro modo em comunicação com o, motor de jogo 130. Cada um do módulo de jogo ao vivo 142, do módulo de transmissão 144, do módulo de visualização 146 e do módulo cinematográfico 148, assim como o motor de jogo 130, inclui instruções executáveis por computador residentes na memória 120 que são executadas pela CPU 122 ou GPU 124 durante operação. O motor de jogo 130 comunica-se com os dispositivos visualizadores 104 e também com outro hardware tal como o(s) dispositivo(s) de entrada 106. O módulo de jogo ao vivo 142, o módulo de transmissão 144, o módulo de visualização 146 e o módulo cinematográfico 148, ou todo o módulo de eSport 140, podem estar integrados diretamente dentro do motor de jogo 130, ou podem ser implementados como uma peça externa de software (por exemplo, um plugue ou outro software independente). Além disso, embora o módulo de jogo ao vivo 142, o módulo de transmissão 144, o módulo de visualização 146 e o módulo cinematográfico 148 sejam mostrados como módulos distintos na Figura 1, na prática estes módulos podem ser combinados de qualquer modo e podem não ser implementados como módulos de código discreto, mas integrados diretamente dentro do código para o módulo de jogo.
[0012] Na modalidade exemplificativa, o módulo de jogo ao vivo 142 fornece uma série de ferramentas com as quais o usuário 110 pode assistir e participar em uma
Petição 870190074105, de 01/08/2019, pág. 13/59
8/44 sessão de videogame online ao vivo ou gravada (ou apenas sessão de eSport) e uma sessão ou evento real ao vivo ou gravado com dados de ambiente 3D (por exemplo, um jogo de futebol americano real gravado com fotogrametria real), com um ou mais outros usuários 110 e aguele fornece funcionalidade para o sistema eSport como descrito neste documento. De acordo com uma modalidade, o módulo de transmissão 144 fornece uma série de ferramentas com as guais o usuário 110 pode gravar e transmitir (por exemplo, incluindo metadados) aspectos da sessão de eSport online (ou sessão de eSport gravada) de acordo com o sistema eSport como descrito neste documento. O usuário 110 (por exemplo, controlador) pode ser tanto um participante pleno no jogo de eSport, ou ser um espectador do jogo de eSport. Os metadados incluem dados gue podem ser usados pelo módulo de jogo ao vivo 142 e pelo módulo de visualização 146 para fornecer funcionalidade ao usuário 110 como descrito neste documento. O módulo de transmissão 144 pode também fornecer ao usuário 110 ferramentas cinematográficas (por exemplo, usando o módulo cinematográfico 148) para permitir gue o usuário controle uma ou mais câmeras usando técnicas avançadas de câmera.
[0013] De acordo com uma modalidade, o módulo de visualização 146 fornece ao usuário 110 ferramentas para exibir e interagir com dados de jogo provenientes da sessão de eSport online (ou sessão de eSport gravada), incluindo dados e video da sessão criada por outros usuários 110 (por exemplo, usando o módulo de transmissão 144, o módulo de visualização 146, o módulo cinematográfico 148 ou o módulo de jogo ao vivo 142) e para coletar metadados de espectador
Petição 870190074105, de 01/08/2019, pág. 14/59
9/44 do usuário 110 durante visualização (por exemplo, incluindo dados em tempo real referentes a ações ou comportamento do usuário, tais como nível de jogo sendo visualizado, objetivo(s) do jogo sendo visualizado, câmera sendo usada para visualização, evento sendo seguido, duração de visualização a partir de uma câmera específica ou a partir de um ângulo específico de câmera, jogador sendo visualizado, batalha sendo visualizada, compostura de tomada, posição de mouse, e mais). A partir destes dados de espectador, o módulo de eSport pode determinar que câmeras os espectadores preferem, quão rapidamente eles trocam de câmeras, que ângulos eles preferem para o início do jogo em oposição ao final do jogo, e que ângulos eles preferem quando qualquer determinado cenário está ocorrendo. Os dados de espectadores coletados podem ser referidos neste documento como metadados de espectador. Em algumas modalidades, o módulo de visualização 146 pode utilizar um dispositivo de câmera (não representado separadamente) para capturar uma alimentação de vídeo do usuário 110 (por exemplo, um espectador do conteúdo de transmissão) e rastrear o movimento dos olhos e o movimento da cabeça do usuário 110 durante o jogo (por exemplo, aproximando onde o espectador está focando seu(s) olho(s) em um determinado instante) com a finalidade de adicionar a alimentação de vídeo e/ou os dados do movimento dos olhos rastreados aos metadados de espectador. De acordo com algumas modalidades, os movimentos dos olhos ou movimentos da cabeça rastreados podem ser usados para controlar uma câmera dentro da sessão de eSport para permitir um modo de câmera de rastreamento de cabeça similar a um dispositivo visualizador montado na
Petição 870190074105, de 01/08/2019, pág. 15/59
10/44 cabeça de realidade virtual ou um dispositivo visualizador montado na cabeça de realidade aumentada que dá ao usuário a capacidade de controlar diretamente um movimento de câmera com um movimento de cabeça (ou olhos) . Em algumas modalidades, o módulo de visualização 146 pode analisar a alimentação de vídeo do espectador para determinar expressões faciais dos espectadores durante o jogo. Alguns metadados de espectador podem ser transmitidos de volta a um dispositivo de eSport 102 usado por um jogador na sessão de eSport, e podem ser apresentados ao jogador com a finalidade de informar o jogador acerca do espectador (por exemplo, para informar o jogador que 30% dos espectadores estão observando a sua batalha, ou que um espectador observa mais o jogador X, ou que o espectador prefere observar as batalhas a partir de uma câmera de drone, ou que o espectador troca as visualizações de câmera com um intervalo de tempo médio de Y segundos), ou que o espectador tem uma reação específica (por exemplo, surpresa, horror, diversão, tristeza, etc.). Em algumas modalidades, os metadados de espectador podem ser transmitidos pela rede a um repositório central (por exemplo, uma base de dados não mostrada separadamente na figura) para armazenamento e futuro uso (por exemplo, por anunciantes e desenvolvedores). Em algumas modalidades, o módulo de visualização 146 pode capturar, gravar e carimbar com data e hora os metadados de espectador, dados de jogo e metadados de câmeras. De acordo com uma modalidade, os metadados de espectador carimbados com data e hora são alinhados com os dados de jogo e metadados de câmeras carimbados com data e hora. Os dados carimbados com data e
Petição 870190074105, de 01/08/2019, pág. 16/59
11/44 hora podem mais tarde ser usados por desenvolvedores e anunciantes para determinar relações entre os dados que incluem definir janelas de captura para qualquer determinada resposta (por exemplo, uma pergunta tal como o que estava no fluxo de metadados um segundo de ambos os lados da resposta X ?, onde X representa qualquer resposta mensurável de espectador, podería ser transmitido a uma base de dados contendo os dados carimbados com data e hora) e reações de espectadores a eventos de jogo, eventos de câmeras e ações de controlador específicas.
[0014] De acordo com uma modalidade, o módulo cinematográfico 148 fornece o módulo de jogo ao vivo 142, o módulo de transmissão 144 e o módulo de visualização 146 com um conjunto de ferramentas cinematográficas para exibir e gravar a sessão de eSport online. Os detalhes de como o módulo cinematográfico 148 fornece as ferramentas são fornecidos neste documento com a descrição do sistema eSport. De acordo com uma modalidade, as ferramentas cinematográficas incluem ferramentas para criar, posicionar, orientar e alterar as propriedades de câmeras virtuais no ambiente de jogo. As ferramentas podem incluir uma interface gráfica de usuário para usuários controlarem recursos cinematográficos implementados pelo módulo cinematográfico 148, uma ferramenta de autocinematografia para executar parte ou todas as funções de cinematografia em um modo automatizado, e um conjunto de recursos de cinematografia (por exemplo, por meio de uma interface de aplicativo ou API), assim como uma ferramenta para criar e embutir metadados de cinematografia em uma saída de dispositivo. De acordo com uma modalidade, as ferramentas
Petição 870190074105, de 01/08/2019, pág. 17/59
12/44 de cinematografia trabalham em mecanismos de alto nível que permitem tomadas desejadas sem um usuário acionando diretamente a câmera (por exemplo, por meio de manche ou mouse). Os mecanismos incluem composição processual, avaliação de tomada, prevenção de colisão e comportamentos dinâmicos de acompanhamento.
[0015] A Figura 2A ilustra o sistema eSport 200 em uma rede exemplificativa 280 pela qual é fornecido um jogo de computador para múltiplos jogadores online (por exemplo, um jogo de eSport). Na modalidade exemplificativa, o sistema eSport 200 inclui um dispositivo de transmissão 210, dois dispositivos de jogadores 220A, 220B (coletivamente dispositivos de jogadores 220), um dispositivo visualizador 230, sites de compartilhamento de vídeos 240, servidores de jogo online 250 e um serviço de renderização online 260, cada um se comunicando na rede compartilhada 280 (por exemplo, a Internet) . A rede 280 inclui redes com fio e sem fio. O dispositivo de transmissão 210, os dispositivos de jogadores 220 e o dispositivo visualizador 230 podem ser similares ao dispositivo de eSport 102. O número de jogadores de jogo, controladores e espectadores pode variar. Os servidores de jogo online 250 incluem um módulo de servidor de jogo (não mostrado separadamente nas figuras) que pode ser similar ao motor de jogo 130, mas que é especificamente configurado para fornecer funcionalidade de servidor de jogo. O serviço de renderização online 260 pode ser um serviço baseado na Internet que fornece serviços de renderização de gráficos também conhecidos como renderização em nuvem ou rede de renderização.
Petição 870190074105, de 01/08/2019, pág. 18/59
13/44 [0016] Na modalidade exempli!icativa, quando a sessão de eSport é urn videogame online, o jogo online pode ser configurado usando uma metodologia cliente-servidor para jogos online onde o servidor de jogo online 250 executa uma versão oficial do jogo e o cliente (por exemplo, o módulo de jogo ao vivo 142 nos dispositivos visualizadores 220) executa uma versão local do jogo (por exemplo, por meio do motor de jogo 130). Os dispositivos de jogadores 220 e o servidor de jogo 250 comunicam-se pela rede 280 trocando dados de jogo durante a sessão de eSport para criar um ambiente de jogo em tempo real para os jogadores 222A, 222B (coletivamente, jogadores 222). Os servidores de jogo online 250 coletam dados de jogo de todos os jogadores 222 por meio do módulo de jogo ao vivo 142 dos dispositivos de jogadores 220 e podem ter uma versão oficial do jogo. O cliente do módulo de jogo ao vivo 142 executa uma versão local do jogo (por exemplo, em cada dispositivo de jogador) e aceita dados do servidor de jogo 250 (por exemplo, incluindo os dados de jogo de outros jogadores 222) para atualizar a versão local do jogo usando os dados de servidor como a versão oficial de modo que os dados de servidor substituam os dados locais em caso de uma discrepância.
[0017] Em uma modalidade exemplificativa, os módulos do módulo de eSport 140 que estão ativos em cada um dos dispositivos 210, 220, 230 são mostrados na Figura 2A para fins de ilustrar as funções primárias dos dispositivos 210, 220, 230. Deverá ser entendido, contudo, que qualquer dos diversos módulos descritos neste documento pode estar operando em qualquer dos dispositivos 210, 220, 230. Por
Petição 870190074105, de 01/08/2019, pág. 19/59
14/44 exemplo, durante operação, os dispositivos de jogadores 220A, 220B são operados pelos jogadores 222A, 222B, respectivamente, enquanto jogando o jogo de eSport, e o módulo de jogo online 142 está ativo em cada dispositivo (por exemplo, para comunicar-se com os servidores de jogo online 250 e fornecer ao jogador 222 o ambiente de jogo e para permitir que o jogador 222 interaja com o jogo) . Um controlador 212 opera o dispositivo de transmissão 210 para fornecer conteúdo de transmissão para o jogo de eSport (por exemplo, para diversos espectadores 232, 242), e o módulo de transmissão 144, o módulo de visualização 146 e o módulo cinematográfico 148 estão ativos no dispositivo de transmissão 210. O módulo de transmissão 144, o módulo de visualização 146 e o módulo cinematográfico 148 estão ativos com a finalidade de fornecer ao controlador as ferramentas para criar o conteúdo de transmissão. O espectador 232 opera o dispositivo visualizador 230 para consumir o conteúdo de transmissão gerado pelo controlador 212 por meio do módulo de visualização 146 e do módulo cinematográfico 148 ativos no dispositivo visualizador 230. O módulo de visualização 146 e do módulo cinematográfico 148 estão principalmente ativos com a finalidade de fornecer ao espectador 232 uma visualização do jogo e de algum controle cinematográfico das câmeras. Isto é similar aos espectadores 242 assistirem a partir de sites de compartilhamento de vídeos 240.
[0018] Na modalidade exemplificativa, o conteúdo de transmissão fornecido pelo controlador 212 (por exemplo, por meio do dispositivo de transmissão 210) pode ser apresentado aos espectadores 242 por meio de diversos sites
Petição 870190074105, de 01/08/2019, pág. 20/59
15/44 de compartilhamento de videos 240. Os sites de compartilhamento de videos 240 podem incluir provedores de conteúdo online tais como YouTube®, Twitch®, ou outros sites da Internet de compartilhamento de videos. Como mostrado na Figura 2A, os sites de compartilhamento de videos 240 podem também incluir o módulo de eSport 140 ou componentes do módulo de eSport 140, tais como o módulo de visualização 146 ou o módulo cinematográfico 148, que podem ser usados para apresentar o conteúdo de transmissão e outras funcionalidades aos espectadores 242. Por exemplo, o módulo cinematográfico 148 pode ser implementado dentro do site de compartilhamento de videos 240 (por exemplo, um plugue) com a finalidade de fornecer aos espectadores ferramentas cinematográficas para controlar a visualização de um jogo de eSport. Em algumas modalidades, as ferramentas de visualização e ferramentas cinematográficas seriam apenas visíveis na interface de usuário do site de compartilhamento de vídeos 240 se os metadados de jogo existissem no conteúdo de vídeo a ser exibido. O módulo cinematográfico 148 usa os metadados de jogo para executar a funcionalidade cinematográfica. De acordo com uma modalidade, o módulo de visualização 146 no módulo de eSport 140 em um site de compartilhamento de vídeos 240 pode executar alguma ou toda a renderização localmente no dispositivo de usuário. De acordo com outra modalidade, as escolhas de visualização cinematográfica do usuário são renderizadas remotamente (por exemplo, em um serviço de renderização em nuvem) e quando necessárias (por exemplo, na hora), e o vídeo renderizado é transmitido ao usuário por meio de um site de compartilhamento de vídeos 240. De
Petição 870190074105, de 01/08/2019, pág. 21/59
16/44 acordo com ainda outra modalidade, um número fixo de câmeras processuais está ativo dentro da sessão de eSport (sessão de eSport gravada ou ao vivo) e a visualização a partir de cada câmera processual é renderizada remotamente (por exemplo, em um serviço de renderização em nuvem) e transmitida ao site de compartilhamento de vídeos 240 como uma transmissão de vídeo renderizada de modo que o espectador possa escolher (por exemplo, com o módulo de visualização 146 ou o módulo cinematográfico 148) qual das transmissões de vídeo renderizadas assistir. O fato de haver câmeras processuais com renderização em nuvem permite que dispositivos com fraca capacidade de renderização (por exemplo, telefones móveis ou computadores antigos) vejam alta qualidade de renderização enquanto ainda controlando as câmeras.
[0019] A Figura 2B ilustra o sistema eSport 200 em uma rede exemplificativa 280 pela qual é fornecido um evento real (por exemplo, um evento esportivo ao vivo ou gravado, ou um evento não esportivo ao vivo ou gravado). Na modalidade exemplificativa, o sistema eSport 200 inclui um dispositivo de transmissão 210, dois dispositivos visualizadores 230A, 230B (coletivamente, dispositivos visualizadores 230), um servidor de jogo online 250 e uma base de dados 290, cada um se comunicando na rede compartilhada 280 (por exemplo, a Internet). O sistema eSport 200 está conectado a um sistema externo de gravação de vídeo 3D 252 que fornece dados e vídeo 3D de um evento real 254. O dispositivo de transmissão 210 e o dispositivo visualizador 230 podem ser similares ao dispositivo de eSport 102. O número de controladores 210 e de espectadores
Petição 870190074105, de 01/08/2019, pág. 22/59
17/44 (232, 242) pode variar. Os servidores de jogo online 250 incluem um módulo de servidor de jogo (não mostrado separadamente na figura) que pode ser similar ao motor de jogo 130, mas que é especificamente configurado para fornecer funcionalidade de servidor de jogo tal como transmissão dos dados 3D de um evento ao vivo ou gravado. O sistema de gravação de vídeo 3D 252 é configurado para gerar dados de ambiente 3D de um evento real 254 a ser transmitido a espectadores e controladores 210 por meio dos servidores de jogo online 250. O sistema de gravação de vídeo 3D 252 é também configurado para gravar os dados de ambiente 3D na base de dados 290 para retransmissão futura. O sistema de gravação de vídeo 3D 252 pode gerar os dados de ambiente 3D de muitos modos; por exemplo, o sistema 252 pode usar uma ou mais câmeras especiais para gravar diretamente dados 3D do ambiente ou usar uma pluralidade de câmeras de vídeo padrão para gravar o evento 254 de diferentes ângulos e em seguida usar um método para gerar dados 3D a partir das múltiplas transmissões de vídeo.
[0020] Na modalidade exemplificativa, os módulos do módulo de eSport 140 que estão ativos em cada um dos dispositivos 210, 230, 240 são mostrados na Figura 2B para fins de ilustrar as funções primárias dos dispositivos 210, 230, 240. Deverá ser entendido, contudo, que qualquer dos diversos módulos descritos neste documento pode estar operando em qualquer dos dispositivos 210, 230, 240. Por exemplo, durante operação, um controlador 212 opera o dispositivo de transmissão 210 para fornecer conteúdo de transmissão para a sessão de eSport (por exemplo, para diversos espectadores 232, 242), e o módulo de transmissão
Petição 870190074105, de 01/08/2019, pág. 23/59
18/44
144, o módulo de visualização 146 e o módulo cinematográfico 148 estão ativos no dispositivo de transmissão 210. O módulo de transmissão 144, o módulo de visualização 146 e o módulo cinematográfico 148 estão ativos com a finalidade de fornecer ao controlador as ferramentas para criar o conteúdo de transmissão. O espectador 232 opera o dispositivo visualizador 230 para consumir o conteúdo de transmissão gerado pelo controlador 212 e diretamente a partir dos servidores online 250, e o módulo de visualização 146 e o módulo cinematográfico 148 estão ativos. O módulo de visualização 146 e o módulo cinematográfico 148 estão principalmente ativos com a finalidade de fornecer ao espectador 232 uma visualização do jogo real 254 e algum controle cinematográfico das câmeras. Isto é similar aos espectadores 242 assistirem a partir de sites de compartilhamento de videos 240.
[0021] As Figuras 3A e 3B ilustram um método exemplificativo para criar conteúdo de transmissão de alta qualidade de jogos de eSport para distribuição e apresentação a espectadores 242 por sites de compartilhamento de videos 240 e a espectadores 232 em um dispositivo visualizador 230. Na modalidade exemplificativa, o método 300 é executado pelo sistema eSport 200 no ambiente em rede ilustrado na Figura 2A e na Figura 2B. O método 300 é executado à medida que os jogadores 222 jogam ativamente o jogo online usando os módulos de jogo ao vivo 142 nos seus respectivos dispositivos visualizadores 220. Na operação 310, o módulo de jogo ao vivo 142 grava e transmite entradas de usuário a partir de dispositivos de entrada de usuário 106 (por
Petição 870190074105, de 01/08/2019, pág. 24/59
19/44 exemplo, a partir de manche, mouse, visores montados na cabeça, dispositivos de rastreamento manuais, etc.) ao servidor de jogo 250. O servidor de jogo 250 usa os dados de jogo recebidos de todos os jogadores 222 para construir a versão oficial do jogo e em seguida para distribuir os dados de jogo deste jogo oficial de volta a todos os dispositivos de usuário 220. O módulo de jogo ao vivo 142 executa código de jogo localmente para implementar predição do lado do cliente com a finalidade de reduzir efeitos de latência de rede que ocorrem com a comunicação entre cliente e servidor. O módulo de jogo ao vivo 142 também executa código de jogo para integrar dados de jogo provenientes do servidor 250 (por exemplo, dados de jogo de outros dispositivos remotos de jogadores 220 e do jogo oficial no servidor 250) com dados de jogo local e exibir os dados combinados no dispositivo visualizador 104. O módulo de jogo ao vivo 142 também recebe metadados de espectador do servidor de jogo 250 e exibe estes dados ao jogador 222.
[0022] Na operação 312, na modalidade exemplificativa, o módulo de transmissão 144 no dispositivo de transmissão 210 recebe dados de jogo (incluindo todos os metadados de jogo e metadados de espectador) do servidor de jogo 250. O módulo de transmissão 144 recebe os dados de jogo (incluindo os metadados de jogo) e metadados de espectador na operação 312 e usa os dados de jogo dos servidores de jogo online 250 para criar e exibir uma versão local do jogo ao controlador 212 na operação 314. O módulo de transmissão 144 usa os dados de jogo para criar e apresentar um ambiente de todo o jogo em ação. O módulo de
Petição 870190074105, de 01/08/2019, pág. 25/59
20/44 transmissão 144 exibe ferramentas de controle de câmera de transmissão por meio de uma interface para controlar um operador de câmera virtual (por exemplo, por meio do módulo cinematográfico 148) para criar e direcionar tomadas de câmera. O módulo cinematográfico 148 e o módulo de transmissão 144 usam os metadados de jogo para criar e preencher as ferramentas de controle de câmera. Adicionalmente, metadados de espectador são exibidos ao controlador 212 e a outros jogadores 222 dando-lhes realimentação referente aos espectadores 232, 242. O módulo de transmissão 144 exibe ferramentas de transmissão ao controlador 212 por meio de uma interface gráfica de usuário (GUI). As ferramentas de transmissão permitem gue o controlador 212 controle as câmeras dentro do ambiente de jogo, crie (por exemplo, grave) e transmita (por exemplo, difunda) uma versão personalizada (por exemplo, incluindo os dados de controle de câmera do controlador) da sessão de eSport pela rede 280. As ferramentas incluem elementos de interface de usuário (UI) gue permitem gue o controlador 212, por exemplo, visualize a sessão de eSport a partir de gualguer câmera de jogo existente, crie novas câmeras dentro do jogo para visualizar a sessão de eSport a partir de gualguer posição, e acione um módulo cinematográfico 148 para auxiliar a controlar as câmeras. As posições das câmeras e composições das telas podem ser completas ou parcialmente controladas pelo módulo cinematográfico 148. Por toda a descrição neste documento, os termos composição e composicional referem-se à colocação ou disposição de elementos visuais em uma tomada de tela (por exemplo, em uma tomada de video de um jogo de eSport ou de
Petição 870190074105, de 01/08/2019, pág. 26/59
21/44 uma cena 3D). 0 módulo de transmissão 144 usa os metadados de jogo e o módulo cinematográfico 148 para controlar as câmeras no jogo com a finalidade de criar vídeo de alta qualidade da sessão de eSport. 0 módulo cinematográfico 148 usa composição automática para compor tomadas da ação de jogo usando as direções provenientes do controlador. A composição automática usada pelo módulo cinematográfico 148 pode ser baseada em regras (por exemplo, usando regras de composição cinematográfica) e pode ser controlada por inteligência artificial. De acordo com uma modalidade, cada jogo teria dados e instruções que definissem os tipos de ângulos e tomadas disponíveis para cada personagem e cenário (por exemplo, os dados e instruções poderíam ser determinados por um desenvolvedor de jogos no momento de criação do jogo). Após jogar, o controlador seria capaz de selecionar a partir dos diferentes estilos de tomada disponíveis - close-up, grande angular, tomada de drone, câmera de segurança, câmera de acompanhamento, etc., e de diferentes assuntos ou eventos - personagem A, tiro fatal, subida de nível, corrida, etc. 0 controlador usaria o dispositivo de transmissão 210 para a transmissão rápida de tipo de câmera e assunto/evento que seria executado pelo módulo cinematográfico 148 para produzir uma boa tomada em qualquer situação. Na operação 316, o módulo de transmissão 144 também grava comentários de vídeo e áudio em tempo real do controlador para o vídeo de sessão de eSport. Na operação 318, o módulo de transmissão 144 cria uma saída para a sessão que inclui a posição e propriedades de todas as câmeras de gravação (referidas abaixo como metadados de câmeras) em cada momento junto com comentários de áudio e
Petição 870190074105, de 01/08/2019, pág. 27/59
22/44 vídeo em tempo real do controlador e que inclui os dados de jogo. Em algumas modalidades, a saída do módulo de transmissão pode incluir todas as posições e orientações das câmeras e configurações de lentes para cada quadro. Em algumas modalidades, podem ser transmitidos comandos de câmera de nível mais alto (por exemplo, tomada de close-up no jogador X, tomada com grande angular no jogador Y) . Deste modo, o módulo cinematográfico 148 pode ser utilizado para processar os comandos de nível mais alto. Em algumas modalidades, o serviço de renderização online 260 podem incluir o módulo cinematográfico 148 de modo a processar os comandos de nível mais alto. Em algumas modalidades, o servidor de jogo online 250 pode transmitir os dados de jogo diretamente ao serviço de renderização online 260, deste modo reduzindo latência.
[0023] Na modalidade exemplificativa, na operação 320, o módulo de transmissão 144 empacota a saída e transmite os dados pela rede 280 ao serviço de renderização online 260. Na operação 322, o serviço de renderização 260 usa os dados de jogo e os metadados de câmera para renderizar um vídeo de transmissão (por exemplo, uma transmissão de vídeo) do jogo usando as tomadas composicionais de câmera que foram escolhidas pelo controlador 212 e criadas pelo módulo cinematográfico 148. Na operação 324, o vídeo de transmissão renderizado e os dados de jogo são transmitidos ao serviço de compartilhamento de vídeos 240 para serem exibidos aos espectadores 242. Na operação 326, um módulo de visualização no serviço de compartilhamento de vídeos (não representado separadamente, mas pode ser similar ao módulo
Petição 870190074105, de 01/08/2019, pág. 28/59
23/44 de visualização 146) exibe metadados de jogo junto com o vídeo de transmissão e coleta metadados de espectador enquanto o vídeo está sendo exibido. 0 serviço de compartilhamento de vídeos 240 recebe e exibe o vídeo de transmissão e metadados de jogo (por exemplo, incluindo todos os metadados de controlador) . O módulo de visualização 146 usa os metadados para exibir informações não tradicionalmente disponíveis na alimentação de vídeo de um jogo para múltiplos jogadores (por exemplo, versão de jogo, nível, personagens ativos na tela atual, progressão da missão, estado do jogo, horas jogadas, compras, etc.). O módulo cinematográfico 148 pode usar os metadados para exibir informações tais como, por exemplo, assunto atual, animações na tela, tipo de lente (por exemplo, tele, normal, grande angular), ângulo da câmera, etc. Na operação 327, o módulo de visualização sincroniza os dados de jogo e os metadados de espectador.
[0024] Na operação 328, na modalidade exemplificativa, o módulo de visualização 146 no serviço de compartilhamento de vídeos 240 também coleta dados dos espectadores por meio de uma interface de usuário e transmite os dados (por exemplo, metadados de espectador) pela rede 280 em tempo real aos servidores de jogo online 250 para distribuição a dispositivos de eSport (incluindo dispositivos de jogadores 220, dispositivos de transmissão 210, dispositivos visualizadores 230 e módulo de visualização 146 nos sites de compartilhamento de vídeos 240) para controladores de jogo 212 e jogadores de jogo 222. Em algumas modalidades, o servidor de jogo online 250 também coleta e armazena os metadados de espectador para
Petição 870190074105, de 01/08/2019, pág. 29/59
24/44 posterior processamento. 0 módulo de jogo ao vivo 142 nos dispositivos de jogadores 220 pode usar os metadados de espectador para exibir informações de usuário durante uma sessão e para influenciar o jogo. Similarmente, o módulo de jogo ao vivo 142 no dispositivo de transmissão 210 pode usar os metadados de espectador para exibir informações de espectadores durante uma sessão e para influenciar a gravação do controlador 212 da sessão de eSport.
[0025] Em algumas modalidades, os serviços de renderização fornecidos pelo serviço de renderização online 260 podem ser fornecidos por um módulo de renderização local (não representado separadamente) no dispositivo de transmissão 210. Em outras palavras, as operações 320, 322 e 324 podem ser executadas localmente no dispositivo de transmissão 210 pelo módulo de renderização local.
[0026] Em algumas modalidades, o conteúdo de transmissão gerado pelo método 300 pode ser visualizado localmente pelo controlador 212. Em outras palavras, as operações 324, 326, 327 e 328 podem ser executadas localmente no dispositivo de transmissão 210 pelo módulo de visualização 146. Deste modo, o controlador 212 também age como o espectador 242 e 232. Em tal modalidade o controlador 212 é similar a um espectador 232 e o dispositivo de transmissão 210 é similar ao dispositivo visualizador 230 de modo que o espectador 232 pode controlar diretamente as câmeras com o módulo cinematográfico 148 e visualizar diretamente o vídeo resultante.
[0027] Em algumas modalidades, o controlador humano
212 pode ser substituído por uma versão automática do
Petição 870190074105, de 01/08/2019, pág. 30/59
25/44 módulo cinematográfico 148 executado no dispositivo de transmissão 210 e executando as operações 314 e 316. Em outras palavras, o módulo cinematográfico automático 148 recebe dados de jogo e metadados de espectador a partir do servidor de jogo 250. O módulo cinematográfico automático 148 usa os dados de jogo e metadados de espectador para criar uma versão local do jogo (por exemplo, usando um módulo de jogo ao vivo 142 no dispositivo de transmissão). O módulo cinematográfico automático 148 contém um operador de câmera controlado por inteligência artificial (AI) que usa inteligência artificial (por exemplo, aprendizagem por máquina e redes neurais) para escolher e compor tomadas com a finalidade de criar um vídeo de transmissão. O módulo cinematográfico automático 148 cria uma saída para a sessão que inclui a posição e propriedades da câmera de gravação em cada momento (por exemplo, câmera X com propriedades para tempo 1, câmera X com propriedades para tempo 2, câmera Y com propriedades para tempo 3, etc.). O módulo de transmissão 144 empacota os metadados de câmeras com os dados de jogo e transmite os dados por uma rede a um serviço de renderização online 260. O serviço de renderização 260 usa os dados de jogo e os metadados de câmeras para renderizar um vídeo de transmissão do jogo baseado nas instruções do módulo cinematográfico automático 148. O vídeo de transmissão e os dados de jogo são transmitidos ao serviço de compartilhamento de vídeos 240 para serem exibidos a espectadores 242. Um módulo de visualização especial no site da Internet de serviço de compartilhamento de vídeos exibe metadados de jogo junto com o vídeo de transmissão e coleta metadados de espectador
Petição 870190074105, de 01/08/2019, pág. 31/59
26/44
| enquanto | o | vídeo está | sendo exibido. | De | acordo com | a |
| operação | 328 | , os metadados de espectador | são | transmitidos | a | |
| partir | do | módulo de | visualização | 146 | no site | de |
compartilhamento de vídeos 240 ao módulo cinematográfico automático 148 no dispositivo de transmissão 210. O módulo cinematográfico automático 148 no dispositivo de transmissão 210 pode usar os metadados de espectador para influenciar a gravação da sessão de eSport.
[0028] De acordo com uma modalidade, quando o módulo cinematográfico automático 148 recebe dados de jogo do servidor de jogo 250, o módulo cinematográfico automático 148 retarda a saída (por exemplo, para o serviço de renderização 260) . O retardo pode ser qualquer montante de tempo, mas um retardo típico seria 2 ou 3 segundos. O resultado do retardo é que o módulo cinematográfico automático 148 tem dados em tempo real do servidor de jogo 250 enquanto quaisquer espectadores (por exemplo, um controlador 212 por meio de um dispositivo de transmissão 210, um espectador 242 por meio de um site de compartilhamento de vídeos 240 e um espectador 232 por meio de um dispositivo visualizador 230) vê uma versão ligeiramente retardada do vídeo de jogo. Isto permite que as câmeras (por meio do módulo cinematográfico automático 148) vejam no futuro durante o retardo. Durante o retardo, o módulo cinematográfico automático 148 pesquisa os dados de jogo para eventos (por exemplo, uma explosão, morte de um jogador, uma emboscada, tiros disparados em um jogador, etc.) e posiciona (por exemplo, por meio de posicionamento e composição) uma ou mais câmeras no ambiente de jogo para cobrir quaisquer eventos descobertos
Petição 870190074105, de 01/08/2019, pág. 32/59
27/44 e em seguida corta para uma tomada de câmera do evento antes que aconteça (por exemplo, antes que seja visto por um espectador/controlador) e, portanto, criando uma tomada adequadamente posicionada e composta de eventos que estão para acontecer a partir da perspectiva do espectador. Do ponto de vista de um espectador/controlador, a câmera sempre chega antes da ação do evento e fornece aos espectadores uma boa visão da ação que circunda o evento.
[0029] O retardo permite que desenvolvedores de jogos priorizem quaisquer eventos chave de jogo (por exemplo, eventos que são definidos como importantes pelos desenvolvedores durante a criação do jogo e eventos que são determinados como importantes pela inteligência artificial no decorrer do jogo) dentro do seu jogo. O retardo é também útil quando se assiste a um evento real em tempo real (por exemplo, jogo de futebol americano, jogo de hóquei, jogo de futebol, incluindo eventos reais ao vivo não esportivos) uma vez que o retardo permite que inteligência artificial ou comentaristas de eventos ao vivo determinem ou marquem
| ações | específicas | como importantes. Também permite | que | ||
| espectadores 232, | 242 | ou controladores | 212 | escolham | se o |
| módulo | cinematográfico | automático 148 | deve | pesquisar | por |
| eventos | e ações | do | jogo e ajustar | a | cinematografia |
adequadamente, ou ignorar os eventos e ações do jogo. Em outras palavras, o módulo cinematográfico automático 148 pode ter um modo de retardo por meio do qual ter o modo de retardo ligado implicaria em ter o filme do módulo 148 (por exemplo, posição, composição e câmeras de corte) e exibir um jogo de acordo com os eventos e ações do jogo. Por exemplo, durante um jogo ou evento real ao vivo, um
Petição 870190074105, de 01/08/2019, pág. 33/59
28/44 espectador 232, 242 ou controlador 212 pode escolher os seus tipos de câmeras preferidos (por exemplo, Close-up no jogador #3) para filmagem padrão e o módulo cinematográfico automático 148 sairá deste tipo de câmera padrão se um evento ou ação de alta prioridade ocorrer. Alternativamente, ter o modo de retardo desligado fará o módulo 148 ignorar os eventos ou ações enquanto filmando o jogo. 0 retardo é útil porque uma das maiores questões com a visualização de eSports é como melhor apresentar o jogo a todos os espectadores.
[0030] As Figuras 3C e 3D ilustram um método exemplificativo para controlar a visualização cinematográfica de conteúdo de transmissão de alta qualidade de um evento de eSport (por exemplo, um jogo de futebol americano) em um dispositivo visualizador 230. Nesta modalidade exemplificativa, o método 380 é executado pelo sistema eSport 200 no ambiente de rede ilustrado na Figura 2B. Na operação 340, o sistema de eSport 200 recebe dados de jogo (incluindo dados e vídeo 3D) de um sistema externo de gravação de vídeo 3D 252 onde os dados de jogo são da gravação de um evento real 254. Na modalidade, o termo dados de jogo inclui dados e vídeo 3D do evento real 254. Na operação 342, o módulo de visualização 146 recebe os dados de jogo. Na operação 344, o módulo de visualização 146 usa os dados de jogo para criar e exibir uma representação 3D do evento real. A representação 3D pode ter uma malha de contagem de polígonos alta ou baixa e pode ter texturização de resolução alta ou baixa. O módulo de visualização 146 exibe ferramentas de controle de câmeras para o espectador por meio de uma interface de
Petição 870190074105, de 01/08/2019, pág. 34/59
29/44 usuário. As ferramentas de controle são usadas pelo espectador para controlar um operador de câmera amador para criar e orientar tomadas de câmera com a finalidade de criar um video. Na operação 346, o espectador usa as ferramentas (por exemplo, câmeras processuais) para criar instruções para uma gravação de video do evento 254. As posições de câmera, cortes de câmera e composição são ou completa ou parcialmente controlados pelo módulo cinematográfico 148. Na operação 348, o módulo de visualização 146 cria uma salda para o evento que inclui a posição e propriedades de todas as câmeras de gravação em cada momento (por exemplo, dados de câmeras) e também inclui os dados 3D. Na operação 350, o dispositivo de visualização usa os dados 3D a partir dos dados de jogo e dos dados de câmeras para renderizar um video do evento baseado nas instruções cinematográficas do espectador. De acordo com outra modalidade, o dispositivo de visualização empacota e transmite os dados de jogo e os dados de câmeras a um serviço externo de renderização para renderização. Na operação 352, o módulo de visualização 146 exibe o video e coleta metadados de espectador enquanto o video está sendo assistido. Na operação 354, o módulo de visualização sincroniza os dados de jogo junto com os metadados de espectador. Na operação 356, os metadados de espectador são realimentados para o sistema externo 252 (por exemplo, em tempo real).
[0031] A Figura 4 é um diagrama de blocos que ilustra uma arquitetura de software exemplificativa 402, que pode ser usada em conjunto com diversas arquiteturas de hardware descritas neste documento. A Figura 4 é um exemplo
Petição 870190074105, de 01/08/2019, pág. 35/59
30/44 não limitative de uma arquitetura de software e será entendido que muitas outras arquiteturas podem ser implementadas para facilitar a funcionalidade descrita neste documento. A arquitetura de software 402 pode ser executada em hardware tal como a máquina 500 da Figura 5 que inclui, entre outras coisas, processadores 510, memória 530 e componentes de entrada/saida (I/O) 550. Uma camada de hardware representativa 404 é ilustrada e pode representar, por exemplo, a máquina 500 da Figura 5. A camada de hardware representativa 404 inclui uma unidade de processamento 406 que tem instruções executáveis associadas 408. As instruções executáveis 408 representam as instruções executáveis da arquitetura de software 402, incluindo implementação dos métodos, módulos, etc. descritos neste documento. A camada de hardware 404 também inclui memória e/ou módulos de armazenamento mostrados como memória/armazenamento 410, que também têm as instruções executáveis 408. A camada de hardware 404 pode também compreender outros hardwares 412.
[0032] Na arquitetura exemplificativa da Figura 4, a arquitetura de software 402 pode ser conceitualizada como uma pilha de camadas onde cada camada fornece funcionalidade especifica. Por exemplo, a arquitetura de software 402 pode incluir camadas tais como um sistema operacional 414, bibliotecas 416, estruturas ou middleware 418, aplicativos 420 e uma camada de apresentação 444. Operacionalmente, os aplicativos 420 e/ou outros componentes dentro das camadas podem invocar chamadas de interface de programação de aplicativos (API) 424 através da pilha de software e receber uma resposta como mensagens
Petição 870190074105, de 01/08/2019, pág. 36/59
31/44
426. As camadas ilustradas são representativas em natureza e nem todas as arquiteturas de software têm todas as camadas. Por exemplo, alguns sistemas operacionais móveis ou de fim especial podem não fornecer a estrutura/middleware 418, enquanto outros podem fornecer tal camada. Outras arquiteturas de software podem incluir camadas adicionais ou diferentes.
[0033] O sistema operacional 414 pode gerir recursos e fornecer serviços comuns. O sistema operacional 414 pode incluir, por exemplo, um núcleo 428, serviços 430 e acionadores 432. O núcleo 428 pode atuar como uma camada de abstração entre o hardware e as outras camadas de software. Por exemplo, o núcleo 428 pode ser responsável pela gestão da memória, gestão dos processadores (por exemplo, agendamento), gestão dos componentes, ligação em rede, ajustes de segurança, etc. Os serviços 430 podem fornecer outros serviços comuns para as outras camadas de software. Os acionadores 432 podem ser responsáveis pelo controle e interface com o hardware subjacente. Por exemplo, os acionadores 432 podem incluir acionadores de telas, acionadores de câmeras, acionadores de Bluetooth®, acionadores de memória flash, acionadores de comunicação serial (por exemplo, acionadores de Barramento Serial Universal (USB)), acionadores de Wi-Fi®, acionadores de áudio, acionadores de gestão de energia, etc., dependendo da configuração de hardware.
[0034] As bibliotecas 416 podem fornecer uma infraestrutura comum que pode ser usada pelos aplicativos 420 e/ou outros componentes e/ou camadas. As bibliotecas 416 fornecem tipicamente funcionalidade que permite que
Petição 870190074105, de 01/08/2019, pág. 37/59
32/44 outros módulos de software executem tarefas em um modo mais fácil que por interface direta com a funcionalidade do sistema operacional subjacente 414 (por exemplo, núcleo 428, serviços 430 e/ou acionadores 432). As bibliotecas 416 podem incluir bibliotecas de sistema 434 (por exemplo, biblioteca de C padrão) que pode fornecer funções tais como funções de alocação de memória, funções de manipulação de cadeia, funções matemáticas, etc. Além disso, as bibliotecas 416 podem incluir bibliotecas de API 436 tais como bibliotecas de mídia (por exemplo, bibliotecas para suportar apresentação e manipulação de diversos formatos de mídia tais como MPEG4, H.264, MP3, AAC, AMR, JPG e PNG) , bibliotecas de gráficos (por exemplo, uma estrutura OpenGL que pode ser usada para renderizar conteúdo de gráficos 2D e 3D em uma tela) , bibliotecas de bases de dados (por exemplo, SQLite que pode fornecer diversas funções relacionais de bases de dados), bibliotecas da Internet (por exemplo, WebKit que pode fornecer funcionalidade de navegação na Internet), e similares. As bibliotecas 416 podem também incluir uma ampla variedade de outras bibliotecas 438 para fornecer muitas outras APIs aos aplicativos 420 e outros componentes/módulos de software.
[0035] As estruturas 418 (também algumas vezes referidas como middleware) fornecem uma infraestrutura comum de nível mais elevado que pode ser usada pelos aplicativos 420 e/ou outros componentes/módulos de software. Por exemplo, as estruturas/middleware 418 podem fornecer diversas funções de interfaces gráficas de usuário (GUI), gestão de recursos de alto nível, serviços de localização de alto nível, etc. As estruturas/middleware
Petição 870190074105, de 01/08/2019, pág. 38/59
33/44
418 podem fornecer um amplo espectro de outras APIs que podem ser usadas pelos aplicativos 420 e/ou outros
| componentes/módulos | de software | , alguns dos | quais podem ser | |
| específicos a um | sistema | operacional | ou | plataforma |
| particular. | ||||
| [0036] Os | aplicativos | 420 incluem | aplicativos |
embutidos 440 e/ou aplicativos de terceiros 442. Exemplos de aplicativos embutidos representativos 440 podem incluir um aplicativo de contatos, um aplicativo de navegador, um aplicativo de leitor de livros, um aplicativo de localização, um aplicativo de mídia, um aplicativo de mensagens e/ou um aplicativo de jogo, mas não se limitam a estes. Os aplicativos de terceiros 442 podem incluir um aplicativo desenvolvido usando o conjunto de desenvolvimento de software (SDK) Android™ ou iOS™ por uma entidade diferente do vendedor da plataforma específica, e pode ser software móvel que é executado em um sistema operacional móvel tal como iOS™, Android™, Windows® Phone, ou outros sistemas operacionais móveis. Os aplicativos de terceiros 442 podem invocar as chamadas de API 424 fornecidas pelo sistema operacional móvel tal como o sistema operacional 414 para facilitar a funcionalidade descrita neste documento.
[0037] Os aplicativos 420 podem usar funções de sistema operacional embutido (por exemplo, núcleo 428, serviços 430 e/ou acionadores 432), bibliotecas 416, ou estruturas/middleware 418 para criar interfaces de usuário para interagir com usuários do sistema. Alternativa ou adicionalmente, em alguns sistemas as interações com um usuário podem ocorrer através de uma camada de
Petição 870190074105, de 01/08/2019, pág. 39/59
34/44 apresentação, tal como a camada de apresentação 444. Nestes sistemas, a lógica de aplicativo/módulo pode ser separada dos aspectos do aplicativo/módulo que interage com um usuário.
[0038] Algumas arquiteturas de software usam máquinas virtuais. No exemplo da Figura 4, isto é ilustrado por uma máquina virtual 448. A máquina virtual 448 cria um ambiente de software onde aplicativos/módulos podem ser executados como se fossem executados em uma máquina de hardware (tal como a máquina 500 da Figura 5, por exemplo). A máquina virtual 448 é controlada por um sistema operacional de controlador (por exemplo, sistema operacional 414 na Figura 4) e tipicamente, embora nem sempre, tem um monitor de máquina virtual 446, que gere a operação da máquina virtual 448 assim como a interface com o sistema operacional de controlador (por exemplo, sistema operacional 414) . Uma arquitetura de software é executada dentro da máquina virtual 448 tal como um sistema operacional (OS) 450, bibliotecas 452, estruturas 454, aplicativos 456 e/ou uma camada de apresentação 458. Estas camadas de arquitetura de software que são executadas dentro da máquina virtual 448 podem ser as mesmas que as correspondentes camadas previamente descritas ou podem ser diferentes.
[0039] A Figura 5 é um diagrama de blocos que ilustra componentes de uma máquina 500, de acordo com algumas modalidades exemplificativas, capaz de ler instruções de um meio legível por máquina (por exemplo, um meio de armazenamento legível por máquina) e executar qualquer uma ou mais das metodologias discutidas neste
Petição 870190074105, de 01/08/2019, pág. 40/59
35/44 documento. Especificamente, a Figura 5 mostra uma representação diagramática da máguina 500 na forma exemplificativa de um sistema computacional, dentro do gual instruções 516 (por exemplo, software, um programa, uma aplicação, um miniaplicativo, um aplicativo, ou outro código executável) para fazer a máguina 500 executar gualguer uma ou mais das metodologias discutidas neste documento podem ser executadas. Deste modo, as instruções 516 podem ser usadas para implementar módulos ou componentes descritos neste documento. As instruções 516 transformam a máguina geral não programada 500 em uma máguina especifica 500 programada para executar as funções descritas e ilustradas no modo descrito. Em modalidades alternativas, a máguina 500 opera como um dispositivo independente ou pode estar acoplada (por exemplo, em rede) a outras máguinas. Em uma implementação em rede, a máguina 500 pode operar na gualidade de uma máguina de servidor ou de uma máguina de cliente em um ambiente de rede servidorcliente, ou como uma máguina em um ambiente de rede entre pares (ou distribuído) . A máguina 500 pode compreender um computador servidor, um computador cliente, um computador pessoal (PC), um computador tablet, um computador portátil,
| um netbook, uma | caixa conversora (STB), | um | assistente | |
| digital pessoal | (PDA) , um | sistema | de | mídia de |
| entretenimento, | um telefone | celular, | um | telefone |
inteligente, um dispositivo móvel, um dispositivo vestível (por exemplo, um relógio de pulso inteligente), um dispositivo doméstico inteligente (por exemplo, um eletrodoméstico inteligente), outros dispositivos inteligentes, um dispositivo de Internet, um roteador de
Petição 870190074105, de 01/08/2019, pág. 41/59
36/44 rede, um comutador de rede, uma ponte de rede, ou qualquer máquina capaz de executar as instruções 516, sequencialmente ou de outro modo, que especifique ações a serem tomadas pela máquina 500, mas não é limitada a estas. Além disso, embora apenas uma única máquina 500 seja ilustrada, o termo máquina deverá também ser considerado como incluindo uma coleção de máquinas que individualmente ou em conjunto executem as instruções 516 para executar qualquer uma ou mais das metodologias discutidas neste documento.
[0040] A máquina 500 pode incluir processadores 510, memória 530 e componentes de entrada/saída (I/O) 550, que podem ser configurados para se comunicarem entre si por meio de um barramento 502. Em uma modalidade exemplificativa, os processadores 510 (por exemplo, uma Unidade de Processamento Central (CPU), um processador de Computação de Conjunto Reduzido de Instruções (RISC), um processador de Computação de Conjunto Complexo de Instruções (CISC), uma Unidade de Processamento Gráfico (GPU), um Processador Digital de Sinais (DSP), um Circuito Integrado de Aplicação Específica (ASIC), um Circuito Integrado de Radiofrequência (RFIC), outro processador, ou qualquer combinação adequada daqueles) podem incluir, por exemplo, um processador 512 e um processador 514 que podem executar as instruções 516. O termo processador destinase a incluir processador de múltiplos núcleos que pode compreender dois ou mais processadores independentes (algumas vezes referidos como núcleos) que podem executar instruções contemporaneamente. Embora a Figura 5 mostre múltiplos processadores, a máquina 500 pode incluir um
Petição 870190074105, de 01/08/2019, pág. 42/59
37/44 único processador com um único núcleo, um único processador com múltiplos núcleos (por exemplo, um processador de múltiplos núcleos), múltiplos processadores com um único núcleo, múltiplos processadores com múltiplos núcleos, ou qualquer combinação destes.
[0041] A memória 530 pode incluir uma memória, tal como uma memória principal 532, uma memória estática 534, ou outro armazenamento de memória, e uma unidade de armazenamento 536, ambos acessíveis aos processadores 510 por meio do barramento 502. A unidade de armazenamento 536 e a memória 532, 534 armazenam as instruções 516 que incorporam qualquer uma ou mais das metodologias ou funções descritas neste documento. As instruções 516 podem também residir, completa ou parcialmente, dentro da memória 532, 534, dentro da unidade de armazenamento 536, dentro de ao menos um dos processadores 510 (por exemplo, dentro da memória cache do processador), ou qualquer combinação destes, durante sua execução pela máquina 500. Consequentemente, a memória 532, 534, a unidade de armazenamento 536 e a memória de processadores 510 são exemplos de meios legíveis por máquina.
[0042] Como usado neste documento, meio legível por máquina significa um dispositivo capaz de armazenar instruções e dados temporários ou permanentemente e pode incluir memória de acesso aleatório (RAM), memória apenas de leitura (ROM), memória buffer, memória flash, meios ópticos, meios magnéticos, memória cache, outros tipos de armazenamento (por exemplo, Memória Apenas de Leitura Programável Apagável (EEPROM), e/ou qualquer combinação daquelas, mas não é limitada a estas. O termo meio legível
Petição 870190074105, de 01/08/2019, pág. 43/59
38/44 por máquina deverá ser considerado como incluindo um único meio ou múltiplos meios (por exemplo, uma base de dados centralizada ou distribuída, ou caches e servidores associados) capaz de armazenar as instruções 516. 0 termo meio legível por máquina também deverá ser considerado como incluindo qualquer meio, ou combinação de múltiplos meios, que é capaz de armazenar instruções (por exemplo, instruções 516) para execução por uma máquina (por exemplo, máquina 500), de modo que as instruções, quando executadas por um ou mais processadores da máquina 500 (por exemplo, processadores 510), façam com que a máquina 500 execute qualquer uma ou mais das metodologias descritas neste documento. Consequentemente, um meio legível por máquina refere-se a um único aparelho ou dispositivo de armazenamento, assim como a sistemas de armazenamento baseados em nuvem ou redes de armazenamento que incluem múltiplos aparelhos ou dispositivos de armazenamento. O termo meio legível por máquina exclui sinais por si só.
[0043] Os componentes de entrada/saída (I/O) 550 podem incluir uma ampla variedade de componentes para receber entrada, fornecer saída, produzir saída, transmitir informação, trocar informação, capturar medições, etc. Os componentes de entrada/saída (I/O) específicos 550 que estão incluídos em uma máquina específica dependerão do tipo de máquina. Por exemplo, máquinas portáteis tais como telefones móveis incluirão provavelmente um dispositivo de entrada sensível ao toque ou outros tais mecanismos de entrada, enquanto uma máquina de servidor sem cabeça provavelmente não incluirá tal dispositivo de entrada sensível ao toque. Será entendido que os componentes de
Petição 870190074105, de 01/08/2019, pág. 44/59
39/44 entrada/saída (I/O) 550 podem incluir muitos outros componentes que não são mostrados na Figura 5. Os componentes de entrada/saída (I/O) 550 são agrupados meramente de acordo com a funcionalidade para simplificar a discussão a seguir e o agrupamento não é de qualquer modo limitativo. Em diversas modalidades exemplificativas, os componentes de entrada/saída (I/O) 550 podem incluir componentes de saída 552 e componentes de entrada 554. Os componentes de saída 552 podem incluir componentes visuais (por exemplo, um visor tal como um painel de exibição de plasma (PDF) , um visor de diodo emissor de luz (LED) , um visor de cristal líquido (LCD), um projetor, ou um tubo de raios catódicos (CRT)), componentes acústicos (por exemplo, alto-falantes), componentes hápticos (por exemplo, um motor vibratório, mecanismos de resistências), outros geradores de sinais, etc. Os componentes de entrada 554 podem incluir componentes de entrada alfanuméricos (por exemplo, um teclado, uma tela sensível ao toque configurada para receber entrada alfanumérica, um teclado foto-óptico, ou outros componentes de entrada alfanuméricos), componentes de entrada baseados em pontos (por exemplo, um mouse, um teclado, uma bola de rota seguida, um manche, um sensor de movimento, ou outros instrumentos apontadores), componentes de entrada táteis (por exemplo, um botão físico, uma tela sensível ao toque que fornece localização e/ou força de toques ou gestos de toque, ou outros componentes de entrada táteis), componentes de entrada de áudio (por exemplo, um microfone), e similares.
[0044] Em outras modalidades exemplificativas, os componentes de entrada/saída (I/O) 550 podem incluir
Petição 870190074105, de 01/08/2019, pág. 45/59
40/44 componentes biométricos 556, componentes de movimento 558, componentes ambientais 560, ou componentes de posição 562 entre um amplo conjunto de outros componentes. Por exemplo, os componentes biométricos 556 podem incluir componentes para detectar expressões (por exemplo, expressões de mãos, expressões faciais, expressões vocais, gestos corporais, ou rastreamento de olhos), medir biossinais (por exemplo, pressão arterial, frequência cardíaca, temperatura do corpo, transpiração, ou ondas cerebrais), identificar uma pessoa (por exemplo, identificação de voz, identificação de retina, identificação facial, identificação de impressões digitais, ou identificação baseada em eletroencefalograma), e similares. Os componentes de movimento 558 podem incluir componentes sensores de aceleração (por exemplo, acelerômetro), componentes sensores de gravitação, componentes sensores de rotação (por exemplo, giroscópio) , etc. Os componentes ambientais de ambiente 560 podem incluir, por exemplo, componentes sensores de iluminação (por exemplo, fotômetro), componentes sensores de temperatura (por exemplo, um ou mais termômetros que detectam a temperatura ambiente), componentes sensores de umidade, componentes sensores de pressão (por exemplo, barômetro), componentes sensores acústicos (por exemplo, um ou mais microfones que detectam ruído de fundo), componentes sensores de proximidade (por exemplo, sensores de infravermelho que detectam objetos próximos), sensores de gases (por exemplo, sensores de detecção de gás para detectar concentrações de gases perigosos para a segurança ou para medir poluentes na atmosfera) , ou outros componentes que fornecem indicações, medições, ou sinais
Petição 870190074105, de 01/08/2019, pág. 46/59
41/44 correspondentes a um ambiente físico circundante. Os componentes de posição 562 podem incluir componentes sensores de localização (por exemplo, componente receptor de Sistema de Posicionamento Global (GPS)), componentes sensores de altitude (por exemplo, altímetros ou barômetros que detectam a pressão atmosférica a partir da qual pode ser obtida a altitude), componentes sensores de orientação (por exemplo, magnetômetros) e similares.
[0045] A comunicação pode ser implementada usando uma ampla variedade de tecnologias. Os componentes de entrada/saída (I/O) 550 podem incluir componentes de comunicação 564 operáveis para acoplar a máquina 500 a uma rede 580 ou a dispositivos 570 por meio de um acoplamento 582 e um acoplamento 572, respectivamente. Por exemplo, os componentes de comunicação 564 podem incluir um componente de interface de rede ou outro dispositivo adequado para fazer interface com a rede 580. Em outros exemplos, os componentes de comunicação 440 podem incluir componentes de comunicação com fio, componentes de comunicação sem fio, componentes de comunicação celulares, componentes de Comunicação de Campo Próximo (NFC), componentes de Bluetooth® (por exemplo, Bluetooth® de Baixa Energia), componentes de Wi-Fi®, e outros componentes de comunicação para fornecer comunicação por meio de outras modalidades. Os dispositivos 570 podem ser outra máquina ou qualquer um de uma ampla variedade de dispositivos periféricos (por exemplo, dispositivo periférico acoplado por meio de Barramento Serial Universal (USB)).
[0046] Além disso, os componentes de comunicação
564 podem detectar identificadores ou incluir componentes
Petição 870190074105, de 01/08/2019, pág. 47/59
42/44 operáveis para detectar identificadores. Por exemplo, os componentes de comunicação 564 podem incluir componentes de leitura de etiquetas de Identificação de Radiofrequência (RFID), componentes de detecção de etiquetas de NFC inteligente, componentes de leitura óptica (por exemplo, um sensor óptico para detectar códigos de barras unidimensionais tais como código de barras de Código Universal de Produto (UPC) , códigos de barras multidimensionais tais como código de barras de Resposta Rápida (QR), código Asteca, Matriz de Dados, Dataglyph, MaxiCode, PDF417, Código Ultra, código de barras UCC RSS2D, e outros códigos ópticos), ou componentes de detecção acústicos (por exemplo, microfones para identificar sinais de áudio etiquetados). Além disso, uma variedade de informações pode ser obtida por meio dos componentes de comunicação 564, tais como localização por meio de geolocalização de Protocolo de Internet (IP), localização por meio de triangulação de sinais de Wi-Fi®, localização por meio de detecção de um sinal de feixe de NFC que pode indicar uma localização especifica, etc.
[0047] Embora uma visão geral do assunto da invenção tenha sido descrita com referência a modalidades exemplificativas especificas, diversas modificações e alterações podem ser feitas nestas modalidades sem divergir do âmbito mais amplo das modalidades da presente revelação. Tais modalidades do assunto da invenção podem ser referidas neste documento, individual ou coletivamente, pelo termo invenção meramente por conveniência e sem pretender limitar voluntariamente o âmbito deste pedido de patente a qualquer única revelação ou conceito inventivo se mais de
Petição 870190074105, de 01/08/2019, pág. 48/59
43/44 um for, na verdade, revelado.
[0048] As modalidades ilustradas neste documento são descritas em detalhe suficiente para permitir que aqueles versados na técnica executem os ensinamentos revelados. Outras modalidades podem ser usadas e obtidas a partir daqueles, de modo que as substituições e alterações estruturais e lógicas possam ser feitas sem divergir do âmbito desta revelação. A Descrição Detalhada, portanto, não deve ser considerada em um sentido limitativo, e o âmbito das diversas modalidades é definido apenas pelas reivindicações apensas, junto com a gama total de equivalentes às quais tais reivindicações têm direito.
[0049] Como usado neste documento, o termo ou pode ser considerado em um sentido tanto inclusive como exclusivo. Além disso, exemplos plurais podem ser fornecidos para recursos, operações ou estruturas descritas neste documento como um exemplo único. Adicionalmente, limites entre diversos recursos, operações, módulos, motores e armazenamentos de dados são um tanto arbitrários, e operações especificas são ilustradas em um contexto de configurações ilustrativas especificas. Outras alocações de funcionalidade são vislumbradas e podem cair dentro de um âmbito de diversas modalidades da presente revelação. Em geral, estruturas e funcionalidade apresentadas como recursos separados nas configurações exemplificativas podem ser implementadas como uma estrutura ou recurso combinado. Similarmente, estrutura e funcionalidade apresentadas como um único recurso podem ser implementadas como recursos separados. Estas e outras variações, modificações, adições e aperfeiçoamentos caem dentro de um âmbito de modalidades
Petição 870190074105, de 01/08/2019, pág. 49/59
44/44 da presente revelação como representada pelas reivindicações apensas. A especificação e desenhos devem, consequentemente, ser considerados em um sentido ilustrativo ao invés de restritivo.
Claims (20)
1. Sistema, caracterizado por compreender:
um ou mais processadores de computador;
uma ou mais memórias de computador;
um ou mais módulos incorporados na uma ou mais memórias, o um ou mais módulos configurando o um ou mais processadores de computador para executar operações para gerar automaticamente uma versão personalizada de sessão de vídeo para apresentação em ao menos um dispositivo visualizador, as operações compreendendo:
receber metadados de jogo gerados a partir de uma alimentação de vídeo ao vivo ou gravado, os metadados de jogo incluindo dados de modelagem tridimensional associados à alimentação de vídeo ao vivo ou gravado;
receber metadados de espectador coletados a partir de uma pluralidade de dispositivos visualizadores, os metadados de espectador incluindo informação referente a uma pluralidade de respostas de uma pluralidade de espectadores para uma apresentação da sessão de vídeo em uma pluralidade de dispositivos visualizadores;
determinar cinematografia preferida da pluralidade de espectadores em relação aos eventos que ocorrem dentro do jogo com base nos metadados de espectador;
criar automaticamente metadados adicionais de jogo baseados nos metadados de espectador, os
Petição 870190052027, de 03/06/2019, pág. 28/36
2/9 metadados adicionais de jogo incluindo dados de câmera associados a ao menos um de um novo ângulo de câmera ou um diferente ângulo de câmera para refletir a cinematografia preferida;
integrar os metadados adicionais de jogo nos metadados de jogo para ajustar ao menos em tempo quase real a cinematografia dos eventos para apresentação no ao menos um dispositivo visualizador.
2. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de a criação dos metadados adicionais de jogo ser executada por um usuário por meio de ferramentas de controle de câmera, as ferramentas de controle de câmera permitindo que o usuário controle câmeras e crie novas câmeras dentro de um ambiente modelado pelos dados de modelagem tridimensionais.
3. Sistema, de acordo com a reivindicação 2, caracterizado pelo fato de as operações compreenderem ainda apresentar informação referente aos metadados de jogo em uma primeira região de uma interface de usuário e apresentar informação referente aos metadados de espectador em uma segunda região da interface de usuário.
4. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de a pluralidade de respostas incluir informação referente a ao menos um de um nível de jogo sendo visto, um objeto de jogo sendo visto, uma câmera sendo usada para visualização, um evento de jogo sendo seguido, ou uma reação de um espectador.
5. Sistema, de acordo com a reivindicação 1,
Petição 870190052027, de 03/06/2019, pág. 29/36
3/9 caracterizado pelo fato de a criação do ajuste da cinematografia incluir invocação de um recurso cinematográfico automático de um módulo cinematográfico, o recurso cinematográfico automático incluindo configurar automaticamente uma composição de um disparo durante um retardo inserido em uma transmissão da sessão de video e cortar automaticamente o disparo antes do evento de jogo ocorrer durante a apresentação.
6. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de a sessão de video ser uma sessão de video de eSport e as operações compreenderem ainda:
ações executadas por uma pluralidade de jogadores associados à pluralidade de dispositivos de jogadores, cada uma da pluralidade de ações sendo uma ação executada pela pluralidade de jogadores que muda um aspecto de um ambiente de um jogo sendo jogado na sessão de video; e sincronizar os dados de jogo com os metadados de jogo para transmissão a um servidor de jogo.
7. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de a pluralidade de respostas incluir dados de movimento dos olhos correspondentes à pluralidade de usuários, e as operações incluírem ainda sincronização dos dados de movimento dos olhos com os metadados de jogo para cada uma da pluralidade das respostas.
8. Sistema, de acordo com a reivindicação 7,
Petição 870190052027, de 03/06/2019, pág. 30/36
4/9 caracterizado pelo fato de os dados de movimento dos olhos identificarem ao menos um de uma área de foco dos olhos e um objeto de jogo de foco dos olhos de cada um da pluralidade de jogadores durante o evento.
9. Método caracterizado por compreender:
incorporar um ou mais módulos nas uma ou mais memórias de computador por meio de um processo de implementação implementado em computador, o um ou mais módulos configurando o um ou mais processadores de computador para executar operações para gerar automaticamente uma versão personalizada de sessão de vídeo para apresentação em ao menos um dispositivo visualizador, as operações compreendendo:
receber metadados de jogo gerados a partir de uma alimentação de vídeo ao vivo ou gravado, os metadados de jogo incluindo dados de modelagem tridimensional associados à alimentação de vídeo ao vivo ou gravado;
receber metadados de espectador coletados a partir de uma pluralidade de dispositivos visualizadores, os metadados de espectador incluindo informação referente a uma pluralidade de respostas de uma pluralidade de espectadores para uma apresentação da
Petição 870190052027, de 03/06/2019, pág. 31/36
5/9 nos metadados de espectador;
criar automaticamente metadados adicionais de jogo baseados nos metadados de espectador, os metadados adicionais de jogo incluindo dados de câmera associados a ao menos um de um novo ângulo de câmera ou um diferente ângulo de câmera para refletir a cinematografia preferida;
integrar os metadados adicionais de jogo nos metadados de jogo para ajustar ao menos em tempo quase real a cinematografia dos eventos para apresentação no ao menos um dispositivo visualizador.
10. Método, de acordo com a reivindicação 9, caracterizado pelo fato de a criação dos metadados adicionais de jogo ser executada por um usuário por meio de ferramentas de controle de câmera, as ferramentas de controle de câmera permitindo que o usuário controle câmeras e crie novas câmeras dentro de um ambiente modelado pelos dados de modelagem tridimensionais.
11. Método, de acordo com a reivindicação 10, caracterizado pelo fato de as operações compreenderem ainda apresentar informação referente aos metadados de jogo em uma primeira região de uma interface de usuário e apresentar informação referente aos metadados de espectador em uma segunda região da interface de usuário.
12. Método, de acordo com a reivindicação 9, caracterizado pelo fato de a pluralidade de respostas incluir informação referente a ao menos um de um nivel de jogo sendo visto, um objeto de jogo sendo visto, uma câmera
Petição 870190052027, de 03/06/2019, pág. 32/36
6/9 sendo usada para visualização, um evento de jogo sendo seguido, ou uma reação de um espectador.
13. Método, de acordo com a reivindicação 9, caracterizado pelo fato de o ajuste da cinematografia incluir invocação de um recurso cinematográfico automático de um módulo cinematográfico, o recurso cinematográfico automático incluindo configurar automaticamente uma composição de um disparo durante um retardo inserido em uma transmissão da sessão de vídeo e cortar automaticamente o disparo antes do evento de jogo ocorrer durante a apresentação.
14. Método, de acordo com a reivindicação 9, caracterizado pelo fato de a sessão de vídeo ser uma sessão de vídeo de eSport e as operações compreenderem ainda:
ações executadas por uma pluralidade de jogadores associados à pluralidade de dispositivos de jogadores, cada uma da pluralidade de ações sendo uma ação executada pela pluralidade de jogadores que muda um aspecto de um ambiente de um jogo sendo jogado na sessão de vídeo; e sincronizar os dados de jogo com os metadados de jogo para transmissão a um servidor de jogo.
15. Meio não transitório legível por computador, caracterizado por armazenar instruções executáveis por processador que, quando executadas por um processador, fazem com que o processador execute operações para gerar automaticamente uma versão personalizada de sessão de vídeo
Petição 870190052027, de 03/06/2019, pág. 33/36
7/9 para apresentação em ao menos um dispositivo visualizador, as operações compreendendo:
receber metadados de jogo gerados a partir de uma alimentação de vídeo ao vivo ou gravado, os metadados de jogo incluindo dados de modelagem tridimensional associados à alimentação de vídeo ao vivo ou gravado;
receber metadados de espectador coletados a partir de uma pluralidade de dispositivos visualizadores, os metadados de espectador incluindo informação
nos metadados de espectador;
criar automaticamente metadados adicionais de jogo baseados nos metadados de espectador, os metadados adicionais de jogo incluindo dados de câmera associados a ao menos um de um novo ângulo de câmera ou um diferente ângulo de câmera para refletir a cinematografia preferida;
integrar os metadados adicionais de jogo nos metadados de jogo para ajustar ao menos em tempo quase real a cinematografia dos eventos para apresentação no ao menos um dispositivo visualizador.
Petição 870190052027, de 03/06/2019, pág. 34/36
8/9
16. Meio não transitório legível por computador, de acordo com a reivindicação 15, caracterizado pelo fato de a criação dos metadados adicionais de jogo ser executada por um usuário por meio de ferramentas de controle de câmera, as ferramentas de controle de câmera permitindo que o usuário controle câmeras e crie novas câmeras dentro de um ambiente modelado pelos dados de modelagem tridimensionais.
17. Meio não transitório legível por computador, de acordo com a reivindicação 16, caracterizado pelo fato de as operações compreenderem ainda apresentar informação referente aos metadados de jogo em uma primeira região de uma interface de usuário e apresentar informação referente aos metadados de espectador em uma segunda região da interface de usuário.
18. Meio não transitório legível por computador, de acordo com a reivindicação 15, caracterizado pelo fato de a pluralidade de respostas incluir informação referente a ao menos um de um nível de jogo sendo visto, um objeto de jogo sendo visto, uma câmera sendo usada para visualização, um evento de jogo sendo seguido, ou uma reação de um espectador.
19. Meio não transitório legível por computador, de acordo com a reivindicação 15, caracterizado pelo fato de a criação do ajuste da cinematografia incluir invocação de um recurso cinematográfico automático de um módulo cinematográfico, o recurso cinematográfico automático incluindo configurar automaticamente uma composição de um disparo durante um retardo inserido em uma transmissão da sessão de vídeo e cortar automaticamente o disparo antes do evento de jogo ocorrer durante a apresentação.
Petição 870190052027, de 03/06/2019, pág. 35/36
9/9
20. Meio não transitório legível por computador, de
sessão de vídeo ser uma sessão de vídeo de eSport e as operações compreenderem ainda:
pluralidade de dispositivos de jogadores, os dados de jogo representando uma pluralidade de ações executadas por uma pluralidade de jogadores associados à pluralidade de dispositivos de jogadores, cada uma da pluralidade de ações sendo uma ação executada pela pluralidade de jogadores
sendo jogado na sessão de vídeo; e sincronizar os dados de jogo com os metadados de jogo para transmissão a um servidor de jogo.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201662432321P | 2016-12-09 | 2016-12-09 | |
| US201762551130P | 2017-08-28 | 2017-08-28 | |
| PCT/IB2017/001645 WO2018104791A1 (en) | 2016-12-09 | 2017-12-09 | Creating, broadcasting, and viewing 3d content |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| BR112019011452A2 true BR112019011452A2 (pt) | 2019-10-15 |
Family
ID=61192965
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| BR112019011452A BR112019011452A2 (pt) | 2016-12-09 | 2017-12-09 | criar, transmitir e visualizar conteúdo 3d |
Country Status (8)
| Country | Link |
|---|---|
| US (2) | US10695680B2 (pt) |
| EP (1) | EP3551304A1 (pt) |
| JP (1) | JP6746801B2 (pt) |
| CN (1) | CN110121379A (pt) |
| BR (1) | BR112019011452A2 (pt) |
| CA (1) | CA3046417C (pt) |
| RU (1) | RU2719454C1 (pt) |
| WO (1) | WO2018104791A1 (pt) |
Families Citing this family (36)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10962780B2 (en) * | 2015-10-26 | 2021-03-30 | Microsoft Technology Licensing, Llc | Remote rendering for virtual images |
| US9919217B2 (en) | 2016-03-08 | 2018-03-20 | Electronic Arts Inc. | Dynamic difficulty adjustment |
| BR112019011452A2 (pt) | 2016-12-09 | 2019-10-15 | Unity IPR ApS | criar, transmitir e visualizar conteúdo 3d |
| US10384133B1 (en) | 2016-12-30 | 2019-08-20 | Electronic Arts Inc. | Systems and methods for automatically measuring a video game difficulty |
| US10357718B2 (en) | 2017-02-28 | 2019-07-23 | Electronic Arts Inc. | Realtime dynamic modification and optimization of gameplay parameters within a video game application |
| US10341537B2 (en) * | 2017-09-29 | 2019-07-02 | Sony Interactive Entertainment America Llc | Spectator view into an interactive gaming world showcased in a live event held in a real-world venue |
| US10839215B2 (en) | 2018-05-21 | 2020-11-17 | Electronic Arts Inc. | Artificial intelligence for emulating human playstyles |
| WO2019231619A1 (en) * | 2018-05-30 | 2019-12-05 | Infiniscene, Inc. | Systems and methods game streaming |
| US10713543B1 (en) * | 2018-06-13 | 2020-07-14 | Electronic Arts Inc. | Enhanced training of machine learning systems based on automatically generated realistic gameplay information |
| US11024137B2 (en) * | 2018-08-08 | 2021-06-01 | Digital Ally, Inc. | Remote video triggering and tagging |
| JP6570715B1 (ja) | 2018-08-30 | 2019-09-04 | 株式会社ドワンゴ | 配信サーバ、配信システム、配信方法及びプログラム |
| US11305191B2 (en) | 2018-12-20 | 2022-04-19 | Activision Publishing, Inc. | Systems and methods for controlling camera perspectives, movements, and displays of video game gameplay |
| US11504630B2 (en) * | 2019-03-18 | 2022-11-22 | Steven Bress | Massively-multiplayer-online-game avatar customization for non-game media |
| US10953334B2 (en) | 2019-03-27 | 2021-03-23 | Electronic Arts Inc. | Virtual character generation from image or video data |
| US11276216B2 (en) | 2019-03-27 | 2022-03-15 | Electronic Arts Inc. | Virtual animal character generation from image or video data |
| US10940393B2 (en) | 2019-07-02 | 2021-03-09 | Electronic Arts Inc. | Customized models for imitating player gameplay in a video game |
| US11110353B2 (en) | 2019-07-10 | 2021-09-07 | Electronic Arts Inc. | Distributed training for machine learning of AI controlled virtual entities on video game clients |
| US11331586B2 (en) | 2019-08-22 | 2022-05-17 | Nvidia Corporation | Joining or replaying a game instance from a game broadcast |
| US11103782B2 (en) * | 2019-09-26 | 2021-08-31 | Sony Interactive Entertainment Inc. | Artificial intelligence (AI) controlled camera perspective generator and AI broadcaster |
| US11285390B2 (en) * | 2019-09-26 | 2022-03-29 | Sony Interactive Entertainment Inc. | Artificial intelligence (AI) controlled camera perspective generator and AI broadcaster |
| CN110732136B (zh) | 2019-10-17 | 2023-03-31 | 腾讯科技(深圳)有限公司 | 局外环境下局内行为的预览方法、装置、终端及存储介质 |
| US11222667B2 (en) | 2019-11-06 | 2022-01-11 | Cole Asher Ratias | Scene-creation using high-resolution video perspective manipulation and editing techniques |
| US11166050B2 (en) * | 2019-12-11 | 2021-11-02 | At&T Intellectual Property I, L.P. | Methods, systems, and devices for identifying viewed action of a live event and adjusting a group of resources to augment presentation of the action of the live event |
| US11420122B2 (en) * | 2019-12-23 | 2022-08-23 | Activision Publishing, Inc. | Systems and methods for controlling camera perspectives, movements, and displays of video game gameplay |
| US20210248826A1 (en) * | 2020-02-07 | 2021-08-12 | Krikey, Inc. | Surface distinction for mobile rendered augmented reality |
| US20210406697A1 (en) * | 2020-06-26 | 2021-12-30 | Nvidia Corporation | Interaction determination using one or more neural networks |
| EP4182922A1 (en) * | 2020-07-16 | 2023-05-24 | Sony Interactive Entertainment Inc. | Influencer stream customization for follower viewers |
| GB2599080A (en) * | 2020-09-11 | 2022-03-30 | Robotify Labs Ltd | An in-browser, multi-player 3D robotic simulator |
| US11115269B1 (en) * | 2020-10-20 | 2021-09-07 | Metactix Llc | System and method for updating an application for a population of computers |
| US11439904B2 (en) | 2020-11-11 | 2022-09-13 | Activision Publishing, Inc. | Systems and methods for imparting dynamic and realistic movement to player-controlled avatars in video games |
| CN112468873A (zh) * | 2020-11-16 | 2021-03-09 | 北京达佳互联信息技术有限公司 | 画面显示方法、装置、系统、电子设备、服务器及介质 |
| JP7168875B2 (ja) * | 2020-11-27 | 2022-11-10 | 株式会社カプコン | ゲームシステムおよびゲーム制御方法 |
| JP7018617B1 (ja) | 2020-12-11 | 2022-02-14 | 正啓 榊原 | プレイ記録動画作成システム |
| JP7010444B1 (ja) * | 2021-03-05 | 2022-01-26 | 正啓 榊原 | プレイ記録動画作成システム |
| CN115888072A (zh) * | 2021-08-04 | 2023-04-04 | 北京字跳网络技术有限公司 | 视频交互方法及设备 |
| US12225267B2 (en) * | 2022-08-08 | 2025-02-11 | Phenix Real Time Solutions, Inc. | Leveraging insights from real-time media stream in delayed versions |
Family Cites Families (22)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0446801Y2 (pt) | 1987-07-16 | 1992-11-05 | ||
| AU2001261232A1 (en) * | 2000-05-08 | 2001-11-20 | Walker Digital, Llc | Method and system for providing a link in an electronic file being presented to a user |
| US6999083B2 (en) | 2001-08-22 | 2006-02-14 | Microsoft Corporation | System and method to provide a spectator experience for networked gaming |
| WO2004034235A2 (en) * | 2002-10-11 | 2004-04-22 | Walker Digital, Llc | Method and apparatus for outputting a message at a game machine |
| US20100166056A1 (en) * | 2002-12-10 | 2010-07-01 | Steve Perlman | System and method for encoding video using a selected tile and tile rotation pattern |
| US8491391B2 (en) | 2003-03-10 | 2013-07-23 | Igt | Regulated gaming—agile media player for controlling games |
| US20080274798A1 (en) * | 2003-09-22 | 2008-11-06 | Walker Digital Management, Llc | Methods and systems for replaying a player's experience in a casino environment |
| US7458894B2 (en) * | 2004-09-15 | 2008-12-02 | Microsoft Corporation | Online gaming spectator system |
| WO2007130691A2 (en) * | 2006-05-07 | 2007-11-15 | Sony Computer Entertainment Inc. | Method for providing affective characteristics to computer generated avatar during gameplay |
| DE102006034893A1 (de) * | 2006-07-25 | 2008-01-31 | Tesa Ag | Bimodale Acrylathaftklebemasse zur Verklebung von niederenergetischen und rauhen Oberflächen |
| AU2013216621B2 (en) * | 2007-04-19 | 2015-11-26 | Mudalla Technology, Inc. | Regulated gaming- agile media player for controlling games |
| US8435115B2 (en) * | 2007-09-26 | 2013-05-07 | Igt | Method and apparatus for displaying gaming content |
| US20090262137A1 (en) * | 2008-01-10 | 2009-10-22 | Walker Jay S | Systems and methods for presenting prediction in a broadcast |
| US8515253B2 (en) | 2008-02-15 | 2013-08-20 | Sony Computer Entertainment America Llc | System and method for automated creation of video game highlights |
| US8632409B2 (en) | 2010-05-11 | 2014-01-21 | Bungie, Llc | Method and apparatus for online rendering of game files |
| US9342998B2 (en) | 2010-11-16 | 2016-05-17 | Microsoft Technology Licensing, Llc | Techniques to annotate street view images with contextual information |
| US10525347B2 (en) | 2012-03-13 | 2020-01-07 | Sony Interactive Entertainment America Llc | System and method for capturing and sharing console gaming data |
| US20140181633A1 (en) * | 2012-12-20 | 2014-06-26 | Stanley Mo | Method and apparatus for metadata directed dynamic and personal data curation |
| US20140195675A1 (en) * | 2013-01-09 | 2014-07-10 | Giga Entertainment Media Inc. | Simultaneous Content Data Streaming And Interaction System |
| CA2953806C (en) * | 2014-06-27 | 2019-06-11 | Amazon Technologies, Inc. | Spawning new timelines during game session replay |
| US9791919B2 (en) * | 2014-10-19 | 2017-10-17 | Philip Lyren | Electronic device displays an image of an obstructed target |
| BR112019011452A2 (pt) | 2016-12-09 | 2019-10-15 | Unity IPR ApS | criar, transmitir e visualizar conteúdo 3d |
-
2017
- 2017-12-09 BR BR112019011452A patent/BR112019011452A2/pt not_active Application Discontinuation
- 2017-12-09 EP EP17840570.0A patent/EP3551304A1/en not_active Withdrawn
- 2017-12-09 JP JP2019551761A patent/JP6746801B2/ja not_active Expired - Fee Related
- 2017-12-09 CN CN201780076310.3A patent/CN110121379A/zh active Pending
- 2017-12-09 US US15/836,826 patent/US10695680B2/en active Active
- 2017-12-09 RU RU2019121255A patent/RU2719454C1/ru active
- 2017-12-09 WO PCT/IB2017/001645 patent/WO2018104791A1/en not_active Ceased
- 2017-12-09 CA CA3046417A patent/CA3046417C/en active Active
-
2019
- 2019-12-31 US US16/731,981 patent/US11266915B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| EP3551304A1 (en) | 2019-10-16 |
| CA3046417A1 (en) | 2018-06-14 |
| US20180161682A1 (en) | 2018-06-14 |
| US10695680B2 (en) | 2020-06-30 |
| US11266915B2 (en) | 2022-03-08 |
| JP6746801B2 (ja) | 2020-08-26 |
| CN110121379A (zh) | 2019-08-13 |
| US20200206640A1 (en) | 2020-07-02 |
| RU2719454C1 (ru) | 2020-04-17 |
| WO2018104791A1 (en) | 2018-06-14 |
| WO2018104791A9 (en) | 2018-11-22 |
| JP2020515316A (ja) | 2020-05-28 |
| CA3046417C (en) | 2021-09-14 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| BR112019011452A2 (pt) | criar, transmitir e visualizar conteúdo 3d | |
| CN114616509B (zh) | 具有关于持久坐标框架的质量信息的交叉现实系统 | |
| US12134037B2 (en) | Method and system for directing user attention to a location based game play companion application | |
| US11176731B2 (en) | Field of view (FOV) throttling of virtual reality (VR) content in a head mounted display | |
| CN115427758B (zh) | 具有精确共享地图的交叉现实系统 | |
| US20230414899A1 (en) | Classifying a discomfort level of a user when interacting with virtual reality (vr) content | |
| CN112805750A (zh) | 跨现实系统 | |
| CN109069933A (zh) | 在vr环境中的观众视角 | |
| CN109069934A (zh) | 对虚拟现实环境(vr)中的vr用户的观众视图跟踪 | |
| CN109641152A (zh) | 用于在游戏应用程序期间运行特定任务的控制模式 | |
| JP7503122B2 (ja) | 位置に基づくゲームプレイコンパニオンアプリケーションへユーザの注目を向ける方法及びシステム | |
| JP2022536510A (ja) | ストーリー内のオブジェクトの感情適合性を管理する方法およびシステム | |
| CN119497644A (zh) | 举报和众包审查游戏活动对于用户是否适当 | |
| JP6875029B1 (ja) | 方法、プログラム、情報処理装置 | |
| JP2019012536A (ja) | 情報提供方法、プログラム、および、情報提供装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| B350 | Update of information on the portal [chapter 15.35 patent gazette] | ||
| B06W | Patent application suspended after preliminary examination (for patents with searches from other patent authorities) chapter 6.23 patent gazette] | ||
| B11B | Dismissal acc. art. 36, par 1 of ipl - no reply within 90 days to fullfil the necessary requirements |