BR102019006534A2 - Método e sistema de sincronização de saídas de vídeo em direção a uma frequência de exibição única - Google Patents

Método e sistema de sincronização de saídas de vídeo em direção a uma frequência de exibição única Download PDF

Info

Publication number
BR102019006534A2
BR102019006534A2 BR102019006534-6A BR102019006534A BR102019006534A2 BR 102019006534 A2 BR102019006534 A2 BR 102019006534A2 BR 102019006534 A BR102019006534 A BR 102019006534A BR 102019006534 A2 BR102019006534 A2 BR 102019006534A2
Authority
BR
Brazil
Prior art keywords
imaging
image
subordinate
processor
reference signal
Prior art date
Application number
BR102019006534-6A
Other languages
English (en)
Inventor
Samuel BERUBE
Jean-Sébastien DION
Original Assignee
Cae Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Cae Inc. filed Critical Cae Inc.
Publication of BR102019006534A2 publication Critical patent/BR102019006534A2/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/04Synchronising
    • H04N5/06Generation of synchronising signals
    • H04N5/067Arrangements or circuits at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/242Synchronization processes, e.g. processing of PCR [Program Clock References]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • G06F3/1438Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display using more than one graphics controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • G06F3/1446Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display display composed of modules, e.g. video walls
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1454Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/12Synchronisation between the display unit and other units, e.g. other display units, video-disc players
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/18Timing circuits for raster scan displays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/04Synchronising
    • H04N5/06Generation of synchronising signals
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2300/00Aspects of the constitution of display devices
    • G09G2300/02Composition of display devices
    • G09G2300/026Video wall, i.e. juxtaposition of a plurality of screens to create a display screen of bigger dimensions
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/04Changes in size, position or resolution of an image
    • G09G2340/0407Resolution change, inclusive of the use of different resolutions for different screen areas
    • G09G2340/0435Change or adaptation of the frame rate of the video stream
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/06Use of more than one graphics processor to process data before displaying to one or more screens

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Computer Graphics (AREA)
  • Processing Or Creating Images (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

método e sistema de sincronização de saídas de vídeo em direção a uma frequência de exibição única que compreende fornecer um sinal de referência compartilhado para sincronização, na frequência de exibição única, de saídas de vídeo entre dois ou mais processadores de geração de imagens, cada qual acionando pelo menos uma placa de vídeo independente. cada uma das placas de vídeo suporta a adaptação dinâmica da taxa de atualização de imagens com base na capacidade de resposta do processador de geração de imagens correspondente. o método também compreende, em cada um dos processadores de geração de imagens, afetar artificialmente, em tempo real, a velocidade de renderização de geração de imagens durante o processamento de geração de um próximo quadro para acionar a adaptação dinâmica da taxa de atualização de imagens pela placa de vídeo do processador de geração de imagens para programar proativamente a atualização de uma imagem correspondente ao próximo quadro pela placa de vídeo do processador de geração de imagens, alinhando, assim, a atualização da imagem ao sinal de referência compartilhado, evitando a manipulação dos registros de memória da placa de vídeo pelo processador de geração de imagens.

Description

MÉTODO E SISTEMA DE SINCRONIZAÇÃO DE SAÍDAS DE VÍDEO EM DIREÇÃO A UMA FREQUÊNCIA DE EXIBIÇÃO ÚNICA
Campo da Técnica [001] A presente invenção refere-se à sincronização de saída de placas de vídeo e, mais particularmente, à sincronização de saída de placas de vídeo controladas por software.
Antecedentes [002] Às vezes, é necessário exibir simultaneamente imagens provenientes de diferentes fontes. Por exemplo, ao projetar imagens de diferentes projetores em uma única tela, a sincronização dos projetores evita a criação de artefatos visuais. Da mesma forma, sinais diferentes fornecidos a um único projetor ou tela de exibição são sincronizados para serem exibidos corretamente juntos. Sincronizar sinais de diferentes fontes, no entanto, normalmente requer soluções complicadas, baseadas principalmente em componentes de hardware dedicados.
[003] A presente invenção visa simplificar a sincronização de imagens provenientes de diferentes fontes.
Sumário da invenção [004] Este sumário é fornecido para introduzir uma seleção de conceitos de forma simplificada, os quais são mais detalhadamente descritos a seguir na Descrição Detalhada da Invenção. Este Sumário não se destina a identificar as características chave ou essenciais da matéria reivindicada, nem se destina a ser usado como um auxílio para determinar o escopo da matéria reivindicada.
Petição 870190030956, de 30/03/2019, pág. 6/44
2/26 [005] Um primeiro aspecto é direcionado a um método para sincronizar a saída de vídeo em direção a uma frequência de exibição única, que compreende fornecer um sinal de referência compartilhado para sincronização, na frequência de exibição única, saída de vídeo entre dois ou mais processadores de geração de imagens, cada um acionando pelo menos uma placa de vídeo independente. Cada uma das placas de vídeo independentes suporta adaptação dinâmica da taxa de atualização de imagens com base na capacidade de resposta do processador de geração de imagens correspondente. O método também compreende, em cada um dos processador de geração de imagens, afetar artificialmente, em tempo real, a velocidade de renderização de geração de imagens durante um processamento de geração de próximo quadro para acionar a adaptação dinâmica da taxa de atualização de imagens pela placa de vídeo do processador de geração de imagens, para programar proativamente a atualização de uma imagem correspondente ao próximo quadro pela placa de vídeo do processador de gerador de imagens, alinhando, assim, a atualização da imagem ao sinal de referência compartilhado, evitando a manipulação dos registros de memória da placa de vídeo pelo único processador de geração de imagens.
[006] Em algumas formas de realização, o ato de afetar artificialmente, em tempo real, a velocidade de renderização de geração de imagens, é realizado reproduzindo-se programaticamente, em tempo real, retardo de renderização de geração de imagens durante o processamento de geração do próximo quadro. Em algumas formas de realização, alternativamente ou adicionalmente, o ato de afetar artificialmente, em tempo real, a velocidade de renderização de geração de imagens, é realizado reproduzindo-se programaticamente, em tempo real, aceleração da renderização de geração de imagens durante o processamento de geração do próximo quadro.
[007] Quando o processador de geração de imagens é um processador de geração de imagens mestre, afetar artificialmente, em tempo real, a velocidade de renderização de geração de imagens pode opcionalmente envolver o agendamento do processamento de geração do próximo quadro por um temporizador-alvo predeterminado, ligado ao sinal de referência compartilhado, evitando a manipulação dos registros de memória da placa de vídeo pelo processador de geração de imagens mestre.
Petição 870190030956, de 30/03/2019, pág. 7/44
3/26 [008] Quando o processador de geração de imagens é um processador de geração de imagens subordinado e a menos que o sinal de referência compartilhado esteja alinhado com um sinal subordinado local, afetar artificialmente, em tempo real, a velocidade de renderização de geração de imagens, pode opcionalmente envolver o agendamento do processamento de geração do próximo quadro variando-se um temporizador de renderização reproduzido em tempo real durante um processamento de um próximo quadro subordinado para acionar a adaptação dinâmica da taxa de atualização de imagens pela placa de vídeo do processador de geração de imagens subordinado para reduzir uma distância de tempo entre a referência compartilhada e o sinal subordinado local, melhorando assim a sincronicidade de uma imagem correspondente ao próximo quadro subordinado e uma imagem correspondente a outro próximo quadro proveniente de outro dos dois ou mais processadores de geração de imagens, evitando a manipulação dos registros de memória da placa de vídeo pelo processador de geração de imagens subordinado. Em tal exemplo, o método pode ainda compreender enviar, a partir do processador de geração de imagens subordinado para um gerador de sinal de referência, uma indicação da distância de tempo entre o sinal local subordinado e o sinal de referência compartilhado. A indicação pode opcionalmente compreender a distância de tempo entre a referência compartilhada e o sinal de referência subordinado local. Adicional ou alternativamente, o gerador de sinal de referência pode ser fornecido por um processador de geração de imagens mestre, a partir dos dois ou mais processadores de geração de imagens. O método pode também compreender, adicionalmente, atualizar o sinal de referência compartilhado, ajustando-se o temporizador-alvo predeterminado no gerador de sinal de referência, considerando uma pluralidade de indicações recebidas, compreendendo a indicação recebida da distância de tempo entre o sinal local subordinado e o sinal de referência compartilhado. O ajuste do temporizador-alvo predeterminado pode então, opcionalmente, ser realizado subtraindo-se um valor mínimo de uma pluralidade de distâncias de tempo recebidas da pluralidade de indicações recebidas.
[009] Quando o processador de geração de imagens é o processador de geração de imagens subordinado e quando o sinal de referência compartilhado estiver alinhado com
Petição 870190030956, de 30/03/2019, pág. 8/44
4/26 o sinal de referência subordinado local, o método pode então compreender o processamento do próximo quadro sem modificar o temporizador de renderização reproduzido.
[010] Em algumas formas de realização, o ato de afetar artificialmente, em tempo real, a velocidade de renderização da geração de imagens durante o processamento de geração do próximo quadro pode ser realizado, quando o processador de geração de imagens é um processador de geração de imagens subordinado e quando o sinal de referência compartilhado é atrasado em comparação a um sinal de referência de subordinado local, aumentando-se um retardo de processamento reproduzido em tempo real durante o processamento de um próximo quadro subordinado, para acionar a adaptação dinâmica da taxa de atualização de imagens, pela placa de vídeo do processador de geração de imagens subordinado, para reduzir uma distância de tempo entre a referência compartilhada e o sinal de referência subordinado local, melhorando assim a sincronicidade de uma imagem correspondente ao próximo quadro subordinado e a imagem correspondente ao próximo quadro mestre.
[011] Em algumas formas de realização, o ato de afetar artificialmente, em tempo real, a velocidade de renderização de geração de imagens durante o processamento de geração de próximo quadro é realizado, quando o processador de geração de imagens é o processador de geração de imagens subordinado e quando o sinal de referência compartilhado está adiantado em comparação com o sinal de referência subordinado local, diminuindo-se o retardo de processamento reproduzido em tempo real durante o processamento do próximo quadro subordinado, para reduzir a distância de tempo entre o sinal de referência compartilhado e o sinal de referência subordinado local, melhorando assim a sincronicidade da imagem correspondente ao próximo quadro subordinado e a imagem correspondente ao próximo quadro mestre.
[012] O método também pode compreender, independentemente de cada um dos dois ou mais processadores de geração de imagens, fornecer cada uma das imagens correspondentes a cada um dos próximos quadros na frequência de exibição única.
Petição 870190030956, de 30/03/2019, pág. 9/44
5/26 [013] Um segundo aspecto é direcionado para um sistema que compreende um sistema de exibição para exibir uma imagem composta sincronizada em uma única frequência de exibição, uma pluralidade de placas de vídeo independentes, cada uma suportando adaptação dinâmica da taxa de atualização de imagens, com base na capacidade de resposta de um processo gerador de imagem correspondente e uma pluralidade de processador de geração de imagens, cada qual acionando uma ou mais da pluralidade de placas de vídeo independentes e tendo acesso a um sinal de referência compartilhado. Cada um da pluralidade de processador de geração de imagens afeta artificialmente, em tempo real, a velocidade de renderização de geração de imagens durante o processamento de geração de um próximo quadro, para acionar a adaptação dinâmica da taxa de atualização de imagens pela placa de vídeo do processador de geração de imagens, para programar proativamente a atualização de uma imagem correspondente ao próximo quadro pela placa de vídeo do processador de geração de imagens, alinhando, assim, a atualização da imagem ao sinal de referência compartilhado, evitando a manipulação dos registros de memória da placa de vídeo pelo processador de geração de imagens. A imagem composta compreende cada uma das imagens correspondentes aos próximos quadros de cada um da pluralidade de processador de geração de imagens.
[014] O processador de geração de imagens pode afetar artificialmente, em tempo real, a velocidade de renderização de geração de imagens reproduzindo programaticamente, em tempo real, o retardo de renderização de geração de imagens durante o processamento de geração do próximo quadro. O processador de geração de imagens também pode, alternativa ou adicionalmente, afetar artificialmente, em tempo real, a velocidade de renderização de geração de imagens reproduzindo programaticamente, em tempo real, a aceleração da geração de imagens durante o processamento de geração do próximo quadro.
[015] A pluralidade de processador de geração de imagens pode compreender um processador de geração de imagens mestre e um ou mais processador de geração de imagens subordinados e, quando o processador de geração de imagens é o processador de
Petição 870190030956, de 30/03/2019, pág. 10/44
6/26 geração de imagens mestre, o processador de geração de imagens mestre pode afetar, artificialmente, em tempo real, a velocidade de renderização de geração de imagens durante o processamento de geração do próximo quadro, programando o processamento de geração de um próximo quadro mestre por um temporizador-alvo predeterminado ligado ao sinal de referência compartilhado, evitando a manipulação dos registros de memória da placa de vídeo pelo processador de geração de imagens mestre.
[016] A pluralidade de processador de geração de imagens pode também compreender um ou mais processador de geração de imagens subordinados e, quando o processador de geração de imagens é o processador de geração de imagens subordinado e a menos que o sinal de referência compartilhado esteja alinhado com um sinal subordinado local, o processador de geração de imagens subordinado afeta artificialmente, em tempo real, a velocidade de renderização de geração de imagens durante o processamento de geração do próximo quadro, variando-se um temporizador de renderização reproduzido em tempo real durante o processamento de um próximo quadro subordinado, para acionar a adaptação dinâmica da taxa de atualização de imagens pela placa de vídeo do processador de geração de imagens subordinado, para reduzir uma distância de tempo entre a referência compartilhada e o sinal subordinado local, melhorando assim a sincronicidade de uma imagem correspondente ao próximo quadro subordinado e uma imagem correspondente a outro próximo quadro proveniente de outro da pluralidade de processador de geração de imagens, evitando a manipulação dos registros de memória da placa de vídeo pelo processador de geração de imagens subordinado. O processador de geração de imagens subordinado pode ainda enviar, para um gerador de sinal de referência, uma indicação da distância de tempo entre o sinal local subordinado e o sinal de referência compartilhado. A indicação pode compreender a distância de tempo entre a referência compartilhada e o sinal de referência subordinado local. O gerador de sinal de referência pode atualizar o sinal de referência compartilhado ajustando o temporizadoralvo predeterminado, considerando uma pluralidade de indicações recebidas, compreendendo a indicação recebida da distância de tempo entre o sinal local subordinado e o sinal de referência compartilhado.
Petição 870190030956, de 30/03/2019, pág. 11/44
7/26
Breve Descrição dos Desenhos [017] Outros aspectos e vantagens exemplificativos da presente invenção se tornarão evidentes a partir da seguinte descrição detalhada, em conjunto com os desenhos anexos, em que:
[018] A Figura 1 é uma representação modular de um sistema de computador exemplificativo, de acordo com os ensinamentos da presente invenção;
[019] A Figura 2 é um fluxograma de um método exemplificativo, de acordo com os ensinamentos da presente invenção; e [020] A Figura 3 é um gráfico de operação de fluxo e nodal de uma forma de realização exemplificativa, de acordo com os ensinamentos da presente invenção.
Descrição Detalhada da Invenção [021] O desenvolvimento das diferentes formas de realização da presente invenção foi motivado pela necessidade, no contexto de uma simulação computacional imersiva e interativa, para exibir simultaneamente imagens provenientes de diferentes fontes em uma única tela ou usando um único painel de exibição. Alguns dispositivos podem receber várias entradas de vídeo e oferecem muitas opções, como mesclar/adicionar as mesmas, o que também pode exigir a sincronização das diferentes entradas. Mais especificamente, no contexto de uma simulação computacional interativa imersiva, é provido um sistema de exibição grande (único) a um ou mais aprendizes em uma estação de simulação interativa.
[022] Ainda no contexto de uma simulação computacional interativa imersiva, diferentes máquinas de computação, cada uma equipada com uma ou mais placas de vídeo de hardware, são normalmente usadas para computar as imagens a serem exibidas no sistema de exibição. Para evitar a criação de artefatos visuais, as saídas das placas de vídeo são sincronizadas. Uma solução é afetar o tempo dos sinais de vídeo da placa de vídeo gerenciando diretamente o tempo de suas saídas de vídeo. Isto foi possível através da manipulação de certas memórias internas registradas nas placas de vídeo. No entanto, as
Petição 870190030956, de 30/03/2019, pág. 12/44
8/26 placas de vídeo feitas atualmente não tornam seus registros de memória interna visíveis no computador hospedeiro. Ou seja, somente as rotinas de software fornecidas pelos fabricantes da placa de vídeo têm acesso aos registros da memória interna. Essas características garantem que a placa de vídeo funcione de acordo com as especificações do fabricante e que somente as melhores rotinas conhecidas pelos fabricantes sejam utilizadas no gerenciamento da memória interna registrada. Ao mesmo tempo, algumas placas de vídeo atualmente disponíveis suportam a adaptação dinâmica da taxa de atualização de imagens com base na capacidade de resposta do processador de geração de imagens correspondente. Ou seja, a placa de vídeo irá adaptar de forma dinâmica a taxa de atualização de saída de vídeo para melhor corresponder à velocidade do computador hospedeiro que fornece as imagens. As formas de realização exemplificadas no presente documento aproveitam a adaptação dinâmica da taxa de atualização de imagens para sincronizar as saídas de vídeo de placas diferentes, evitando a manipulação dos registros da memória interna das placas de vídeo.
[023] Fazendo-se agora referência aos desenhos, nos quais a Figura 1 mostra uma representação modular lógica de um sistema de simulação computacional interativo exemplificativo 1000 que realiza uma ou mais simulações interativas de computador (tais como simulações interativas de voo, de veículos marinhos e/ou terrestres, simulações médicas, de comportamento de multidão etc.), de acordo com os ensinamentos da presente invenção. O sistema de simulação computacional interativo 1000 compreende um processador de geração de imagens 1100, que pode estar envolvido em uma ou mais das simulações interativas de computador, a partir de uma estação de simulação computacional interativa.
[024] No exemplo representado da Figura 1, o sistema de simulação computacional interativo 1000, mostra um processador de geração de imagens 1200 e um processador de geração de imagens opcional 1300, que podem se comunicar direta ou indiretamente (por exemplo, através de rede 1400) com o processador de geração de imagens 1100. Os processador de geração de imagens 1200, 1300 podem estar associados a uma única estação de simulação computacional interativa, em que os processador de geração de
Petição 870190030956, de 30/03/2019, pág. 13/44
9/26 imagens 1100 e 1200 e, opcionalmente, 1300, podem cooperar uns com os outros para processar imagens compostas para um sistema de exibição 1600 para o(s) usuário(s), em uma única estação de simulação computacional interativa. A única estação de simulação computacional interativa pode estar envolvida em uma simulação computacional interativa que também envolva outra(s) estação(ões) de simulação (não mostradas), na mesma localização ou remotas.
[025] No exemplo representado da Figura 1, o processador de geração de imagens 1100 compreende um módulo de memória 1120, um módulo processador 1130, uma placa de vídeo 1134 e um módulo de interface de rede 1140. A placa de vídeo 1134 é mostrada com uma porta E/S (Entrada/Saída) 1136 que envia imagens para o sistema de exibição 1600 a uma determinada taxa de atualização. No exemplo representado da Figura 1, o processador de geração de imagens 1200 e, opcionalmente, 1300, compreendem, cada qual, uma placa de vídeo 1234 (E/S 1236) e, opcionalmente 1334 (E/S 1336). A porta E/S 1236 e, opcionalmente, a porta E/S 1336, envia(m) imagens para o sistema de exibição 1600 em sua própria taxa de atualização. Alternativa ou adicionalmente, o gerador de imagem 1100 pode compreender uma segunda placa de vídeo (não mostrada), que também enviaria imagens para o sistema de exibição 1600 a uma determinada taxa de atualização. Um ponto lógico de medição da taxa de atualização 1610 é mostrado na Figura 1. Deve-se enfatizar que não é necessário nenhum hardware de sincronização entre as portas E/S 1136, 1236 e, opcionalmente, 1336 e o sistema de exibição 1600. O ponto lógico 1610 serve simplesmente para ilustrar que, em tal ponto lógico 1610, as taxas de atualização dos diferentes sinais fornecidos ao sistema de exibição 1600 estão sendo sincronizadas de acordo com os ensinamentos da presente invenção. Por uma questão de clareza, a segunda placa de vídeo 1234 é representada no processador de geração de imagens 1200, mas o especialista no assunto entenderá que as portas E/S 1136, 1236 e/ou 1336 podem ser providas a partir de placas de vídeo diferentes no processador de geração de imagens 1100, usando os ensinamentos apresentados no presente documento.
[026] O sistema de exibição 1600 pode ser composto de um ou mais painéis planos, mas também poderia ser composto por uma única tela plana ou curvada, visível a partir da
Petição 870190030956, de 30/03/2019, pág. 14/44
10/26 posição esperada de um aprendiz na estação de simulação computacional interativa. Por exemplo, a estação de simulação pode incluir um ou mais projetores montados para projetar imagens em uma tela de refração curva. A tela de refração curva pode estar localizada longe o suficiente do usuário do programa de computador interativo para fornecer uma exibição colimada. Alternativamente, a tela de refração curva pode fornecer uma exibição não colimada. O especialista no assunto entenderá prontamente que os ensinamentos apresentados no presente documento são aplicáveis em uma variedade de contextos não limitados aos exemplos mencionados anteriormente (por exemplo, projetor traseiro em tela translúcida, projetor frontal em tela normal etc.).
[027] O módulo processador 1130 pode representar um único processador com um ou mais núcleos processadores ou uma matriz de processadores, cada um compreendendo um ou mais núcleos processadores. Em algumas formas de realização, o módulo processador 1130 pode também compreender uma unidade de processamento gráfico dedicada 1132. A unidade de processamento gráfico dedicada 1132 pode ser necessária, por exemplo, quando o sistema de simulação computacional interativo 1000 realiza uma simulação imersiva (por exemplo, simulador de voo certificado de treinamento de piloto), que requer capacidades extensivas de geração de imagens (isto é, qualidade e produtividade) para manter o realismo esperado dessa simulação imersiva (por exemplo, entre 5 e 60 ou até 120 imagens renderizadas por segundo ou máximo entre 8,3 ms e 200 ms para cada imagem renderizada). Em algumas formas de realização, cada um dos processadores de geração de imagens 1100, 1200, 1300 compreende um módulo processador que possui uma unidade de processamento gráfico dedicada semelhante à unidade de processamento gráfico dedicada 1132. O módulo de memória 1120 pode compreender vários tipos de memória (módulos de memória de acesso aleatório (RAM), cartões de memória, módulos de memória somente leitura (ROM), ROM programável etc. cm diferentes padronizações ou de diferentes tipos). O módulo de interface de rede 1140 representa pelo menos uma interface física que pode ser utilizada para comunicar com outros nós de rede. O módulo de interface de rede 1140 pode ser tornado visível para os outros módulos do processador de geração de imagens 1100 através de uma ou mais interfaces lógicas. As grandes quantidades reais de protocolos usados pela(s) interface(s)
Petição 870190030956, de 30/03/2019, pág. 15/44
11/26 de rede física e/ou interface(s) de rede lógica 1142, 1144, 1146, 1148 do módulo de interface de rede 1140 não afetam os ensinamentos da presente invenção. As variantes do módulo processador 1130, do módulo de memória 1120 e do módulo de interface de rede 1140, utilizáveis no contexto da presente invenção, serão prontamente evidentes para os especialistas na técnica.
[028] Um barramento 1170 é representado como um exemplo de meios para troca de dados entre os diferentes módulos do processador de geração de imagens 1100. A presente invenção não é afetada pela maneira como os diferentes módulos trocam informações entre si. Por exemplo, o módulo de memória 1120 e o módulo processador 1130 podem ser conectados por um barramento paralelo, mas também poderiam ser conectados por uma conexão serial ou envolver um módulo intermediário (não mostrado), sem afetar os ensinamentos da presente invenção.
[029] Do mesmo modo, apesar de menções explícitas ao módulo de memória 1120 e/ou ao módulo processador 1130 não serem feitas ao longo da descrição das várias formas de realização, especialistas na técnica reconhecerão prontamente que tais módulos são usados em combinação com outros módulos do processador de geração de imagens 1100 para realizar etapas de rotina, bem como etapas inovadoras relacionadas à presente invenção.
[030] Em algumas formas de realização, o processador de geração de imagens 1100 pode também compreender um módulo de Interface Gráfica de Usuário (GUI) 1150.
[031] O sistema de simulação computacional interativo 1000 compreende um sistema de armazenamento que compreende dados relacionados a um ambiente gerado por computador compartilhado e que pode, além disso, registrar dados dinâmicos enquanto a simulação computacional interativa é realizada. A Figura 1 mostra exemplos do sistema de armazenamento como um sistema de banco de dados distinto 1500A, um módulo distinto 1500B do processador de geração de imagens 1100 ou um sub-módulo 1500C do módulo de memória 1120 do processador de geração de imagens 1100. O sistema de armazenamento também pode compreender módulos de armazenamento (não
Petição 870190030956, de 30/03/2019, pág. 16/44
12/26 mostrados) nos processadores de geração de imagens 1200, 1300. O sistema de armazenamento pode ser distribuído por diferentes sistemas A, B, C e/ou pelos processadores de geração de imagens 1100, 1200, 1300 ou podem estar em um único sistema. O sistema de armazenamento pode compreender uma ou mais unidades de disco rígido (HDD) lógicas ou físicas, bem como locais ou remotas (ou uma matriz das mesmas). O sistema de armazenamento pode ainda compreender um banco de dados local ou remoto, tornado acessível para o processador de geração de imagens 1100 por uma interface padronizada ou proprietária ou através do módulo de interface de rede 1140. As variantes do sistema de armazenamento utilizáveis no contexto da presente invenção serão prontamente evidentes para especialistas na técnica.
[032] Uma Estação de Operação de Instrutor (IOS) (não mostrada) pode ser provida para permitir que várias tarefas de gerenciamento sejam realizadas no sistema de simulação computacional interativo 1000. As tarefas associadas à IOS permitem o controle e/ou monitoramento de uma ou mais simulações computacionais interativas em andamento. Por exemplo, a IOS pode ser usada para permitir que um instrutor participe da simulação computacional interativa e, possivelmente, de simulação(ões) computacional(is) interativa(s) adicional(is). Em algumas formas de realização, a IOS pode ser provida pelo processador de geração de imagens 1100. Em outras formas de realização, a IOS pode ser provida no mesmo local do processador de geração de imagens 1100 (por exemplo, dentro da mesma sala ou gabinete de simulação) ou remota em relação a ele (por exemplo, em salas diferentes ou em locais diferentes). Especialistas no assunto entenderão que muitas instâncias da IOS podem ser providas simultaneamente no sistema de simulação computacional interativo. A IOS pode prover uma interface de gerenciamento de simulação computacional, que pode ser exibida em um módulo de exibição dedicado da IOS. A IOS pode estar localizada perto do processador de geração de imagens 1100, mas também pode ser provida fora do processador de geração de imagens 1100, em comunicação com este.
[033] O módulo de exibição da IOS pode incluir uma ou mais telas de exibição, como uma tela plana com ou sem fio, uma tela sensível ao toque com ou sem fio, um computador do
Petição 870190030956, de 30/03/2019, pág. 17/44
13/26 tipo tablet, um computador portátil ou um telefone inteligente. Quando vários processadores de geração de imagens 1100, 1200 e/ou 1300 estão presentes no sistema do computador 1000, a IOS pode apresentar diferentes visões da interface de gerenciamento do programa de computador (por exemplo, para gerenciar diferentes aspectos com o mesmo) ou todos podem apresentar a mesma visão do mesmo. A interface de gerenciamento de programas de computador, pode ser permanentemente mostrada em uma das primeiras telas do módulo de exibição 1610 da IOS, enquanto uma segunda tela do módulo de exibição da IOS mostra uma visão da simulação computacional interativa (isto é, visão adaptada considerando a segunda tela a partir de imagens exibidas através do módulo GUI 1150). A interface de gerenciamento de programa de computador também pode ser acionada na IOS, por exemplo, por um gesto de toque e/ou um evento no programa de computador interativo (por exemplo, marco atingido, ação inesperada do usuário ou ação fora dos parâmetros esperados, sucesso ou falha de uma determinada missão etc.). A interface de gerenciamento de programa de computador, pode fornecer acesso a configurações da simulação computacional interativa e/ou do dispositivo computacional de simulação. Uma IOS virtualizada (não mostrada) também pode ser provida ao usuário no módulo GUI 1150 (por exemplo, em uma tela principal, em uma tela secundária ou em uma tela dedicada). Em algumas formas de realização, um Sistema Brief & Debrief (BDS) também pode ser provido. O BDS pode ser visto como uma versão da IOS usada somente durante a reprodução de dados gravados.
[034] Em certas formas de realização, a IOS pode ser usada, por exemplo, pelo instrutor, a fim de cumprir certos objetivos de uma simulação ou cenário de treinamento particular, para inserir ou modificar um elemento visual (por exemplo, adicionar uma aeronave-alvo, mudar a aeronave de um tipo para outro (por exemplo, fabricante diferente ou fidelidade diferente) etc.) e/ou para modificar o comportamento de um elemento visual (por exemplo, modificar a direção de uma aeronave, modificar a situação de armamento de uma aeronave etc.). Um ou mais dos elementos visuais exibidos através do módulo GUI 1150 podem representar outros elementos simulados (por exemplo, uma aeronave simulada controlada a partir da estação de simulação). Adicional ou alternativamente, um ou mais dos elementos visuais exibidos através do módulo GUI 1150 podem seguir um padrão
Petição 870190030956, de 30/03/2019, pág. 18/44
14/26 comportamental pré-definido (por exemplo, controlado usando inteligência artificial), em linha com os objetivos de uma simulação ou cenário de treinamento particular.
[035] O instrumento tangível provido pelo módulo de instrumento 1160 está estreitamente relacionado ao elemento que está sendo simulado. No exemplo do sistema de aeronave simulada, por exemplo, em relação a uma forma de realização de simulador de voo exemplar, o módulo de instrumento 1160 pode compreender um jugo de controle e/ou manche lateral, pedais de leme, um acelerador, um comutador de flap, um transponder, uma alavanca de trem de pouso, um comutador de freio de estacionamento, instrumentos de aeronave (indicador de velocidade do ar, indicador de atitude, altímetro, coordenador de giro, indicador de velocidade vertical, indicador de rumo, ...) etc.. Dependendo do tipo de simulação (por exemplo, nível de imersão), os instrumentos tangíveis podem ser mais ou menos realistas em comparação com aqueles que estariam disponíveis em uma aeronave real. Por exemplo, o instrumento tangível fornecido pelo módulo de instrumento 1160 pode replicar uma cabine de aeronave real, onde os instrumentos reais encontrados na aeronave real ou interfaces físicas com características físicas semelhantes são providos ao usuário (ou aprendiz). Como descrito anteriormente, as ações que o usuário ou aprendiz realiza com um ou mais dos instrumentos tangíveis fornecidos através do(s) módulo(s) de instrumento(s) 1160 (modificando as posições das alavancas, ativando/desativando comutadores etc.), permitem que o usuário ou aprendiz controle o elemento virtual simulado na simulação computacional interativa. No contexto de uma simulação imersiva sendo realizada no sistema de simulação computacional interativo 1000, o módulo de instrumento 1160 normalmente suportaria uma réplica de um painel de instrumento real encontrado no sistema real objeto da simulação imersiva. Em uma simulação tão imersiva, a unidade de processamento gráfico dedicada 1132 também seria tipicamente necessária. Embora a presente invenção seja aplicável a simulações imersivas (por exemplo, simuladores de voo certificados para treinamento de pilotos comerciais e/ou treinamento de pilotos militares), especialistas no assunto reconhecerão prontamente e poderão aplicar seus ensinamentos a outros tipos de simulações computacionais interativas.
Petição 870190030956, de 30/03/2019, pág. 19/44
15/26 [036] Em alguma forma de realização, um módulo de entrada/saída (E/S) externo opcional 1162 e/ou um módulo de entrada/saída (E/S) interno opcional 1164, pode ser provido com o módulo de instrumento 1160. Especialistas no assunto entenderão que o módulo de instrumento 1160 pode ser provido com um ou ambos os módulos E/S, tais como os representados para o processador de geração de imagens 1100. O módulo de entrada/saída (E/S) externo 1162 do módulo de instrumento 1160 pode conectar um ou mais instrumentos tangíveis externos (não mostrados) através dos mesmos. O módulo E/S externo 1162 pode ser necessário, por exemplo, para fazer a interface do sistema de simulação computacional interativo 1000 com um ou mais instrumentos tangíveis idêntico(s) a uma peça do Fabricante de Equipamento Original (OEM) que não possa ser integrada ao(s) processador(es) de geração de imagens 1100 e/ou 1200, 1300 (por exemplo, um instrumento tangível exatamente como aquele que seria encontrado no sistema real objeto da simulação interativa). O módulo de entrada/saída (E/S) interno 1164 do módulo de instrumento 1160 pode conectar um ou mais instrumentos tangíveis integrados com o módulo de instrumento 1160. A E/S 1164 pode compreender a(s) interface(s) necessária(s) para trocar dados, definir dados ou obter dados de tais instrumentos tangíveis integrados. O módulo E/S interno 1164 pode ser necessário, por exemplo, para fazer a interface do sistema de simulação computacional interativo 1000 com um ou mais instrumentos tangíveis integrados idênticos a uma peça do Fabricante de Equipamento Original (OEM) (por exemplo, um instrumento tangível exatamente como aquele que seria encontrado no sistema real objeto da simulação interativa). A E/S 1164 pode compreender a(s) interface(s) necessária(s) para trocar dados, definir dados ou obter dados de tais instrumentos tangíveis integrados.
[037] O módulo de instrumento 1160 pode compreender um ou mais módulos físicos que podem ainda ser interconectados para prover uma determinada configuração do programa de computador interativo. Como pode ser prontamente entendido, espera-se que os instrumentos do módulo de instrumento 1160 sejam manipulados pelo usuário da simulação computacional interativa para inserir comandos.
Petição 870190030956, de 30/03/2019, pág. 20/44
16/26 [038] O módulo de instrumento 1160 pode também compreender, ainda, um atuador de instrumento mecânico (não mostrado) que provê um ou mais conjuntos mecânicos para mover fisicamente um ou mais dos instrumentos tangíveis do módulo de instrumento 1160 (por exemplo, motores elétricos, amortecedores mecânicos, engrenagens, alavancas etc.). O atuador de instrumento mecânico pode receber um ou mais conjuntos de instruções (por exemplo, a partir do módulo processador 1130), para fazer com que um ou mais dos instrumentos se movam de acordo com uma função de entrada definida. O atuador de instrumento mecânico do módulo de instrumento 1160 também pode ser usado alternativa ou adicionalmente para fornecer retroalimentação (por exemplo, visual, tátil ...) ao usuário da simulação computacional interativa, através de instrumentos tangíveis e/ou simulados (por exemplo, telas sensíveis ao toque ou elementos replicados de uma cabine de avião ou de uma sala de operações). Dispositivos de retroalimentação adicionais podem ser providos com o processador de geração de imagens 1100 ou no sistema de simulação computacional interativo 1000 (por exemplo, vibração de um instrumento, movimento físico de um assento do usuário e/ou movimento físico de todo o sistema etc.).
[039] A estação de simulação associada ao processador de geração de imagens 1100 pode também compreender um ou mais assentos (não mostrados) ou outras ferramentas ergonomicamente projetadas (não mostradas) para auxiliar o usuário da simulação computacional interativa a ficar na posição adequada para obter acesso a algum ou a todos os módulos de instrumento 1160.
[040] No contexto das formas de realização representadas, o tempo de execução, execução em tempo real ou execução de processamento de prioridade em tempo real, corresponde a operações executadas durante a simulação computacional interativa que pode ter um impacto na qualidade percebida da simulação computacional interativa na perspectiva do usuário. Uma operação realizada em tempo de execução, em tempo real ou usando processamento de prioridade em tempo real, normalmente precisa atender a certas restrições de desempenho que podem ser expressas, por exemplo, em termos de tempo máximo, número máximo de quadros e/ou número máximo de ciclos de processamento. Por exemplo, em uma simulação interativa com uma taxa de quadros de
Petição 870190030956, de 30/03/2019, pág. 21/44
17/26 quadros por segundo, espera-se que uma modificação realizada dentro de 5 a 10 quadros, pareça perfeita para o usuário. Da mesma forma, em uma simulação interativa com uma taxa de quadros de 120 quadros por segundo, espera-se que uma modificação realizada dentro de 10 a 20 quadros pareça perfeita para o usuário. Os especialistas no assunto reconhecerão prontamente que o processamento em tempo real pode não ser possível em absolutamente todas as circunstâncias em que a renderização de imagens é necessária. O processamento de prioridade em tempo real requerido para a finalidade das formas de realização reveladas relaciona-se com a qualidade de serviço percebida pelo usuário da simulação computacional interativa e não requer processamento absoluto em tempo real de todos os eventos dinâmicos, mesmo que o usuário percebesse um certo nível de deterioração da qualidade do serviço que ainda seria considerado plausível.
[041] Uma rede de simulação (por exemplo, sobreposta na rede 1400) pode ser usada, em tempo de execução (por exemplo, usando processamento de prioridade em tempo real ou prioridade de processamento que o usuário percebe como em tempo real), para trocar informações (por exemplo, informações de simulação relacionadas a eventos). Por exemplo, movimentos de um veículo associado ao processador de geração de imagens 1100 e eventos relacionados a interações de um usuário do processador de geração de imagens 1100 com o ambiente interativo gerado por computador podem ser compartilhados através da rede de simulação. Da mesma forma, eventos de toda a simulação (por exemplo, relacionados a modificações persistentes no ambiente interativo gerado por computador, condições de iluminação, clima simulado modificado etc.), podem ser compartilhados através da rede de simulação a partir de um sistema de computador centralizado (não mostrado) ou de uma das estações 1100, 1200, 1300. Além disso, o módulo de armazenamento (por exemplo, um sistema de banco de dados em rede) acessível a todos os componentes do sistema de simulação computacional interativo 1000 envolvidos na simulação computacional interativa pode ser usado para armazenar dados necessários para a renderização do ambiente interativo gerado por computador. Em algumas formas de realização, o módulo de armazenamento é atualizado apenas a partir do sistema de computador centralizado e os processadores de geração de imagens 1100, 1200, 1300 só carregam dados a partir do mesmo.
Petição 870190030956, de 30/03/2019, pág. 22/44
18/26 [042] Vários enlaces de rede podem ser implícita ou explicitamente usados no contexto da presente invenção. Embora um enlace possa ser representado como um enlace sem fio, ele também pode ser incorporado como um enlace com fio usando um cabo coaxial, uma fibra óptica, um cabo de categoria 5 e similares. Um ponto de acesso com ou sem fio (não mostrado) pode estar presente no enlace entre eles. Da mesma forma, qualquer número de roteadores (não mostrados) pode estar presente e ser parte do enlace, que pode ainda passar pela Internet.
[043] A presente invenção não é afetada pela maneira como os diferentes módulos trocam informações entre eles. Por exemplo, o módulo de memória e o módulo processador podem ser conectados por um barramento paralelo, mas também podem ser conectados por uma conexão serial ou envolver um módulo intermediário (não mostrado) sem afetar os ensinamentos da presente invenção.
[044] A Figura 2 representa um método exemplificativo 2000 para sincronizar a saída de vídeo em direção a uma única frequência de exibição (por exemplo, como mensurável no ponto lógico 1610) durante a execução 2010 de uma simulação computacional interativa. No contexto do método 2000, um sinal de referência compartilhado é fornecido 2020 para sincronizar, na frequência de exibição única, saída de vídeo entre dois ou mais processadores de geração de imagens (por exemplo, 1100, 1200, 1300), cada um acionando pelo menos uma placa de vídeo independente (por exemplo, 1134, 1234, 1334).
[045] Por uma questão de descrição do método exemplificativo 2000, será feita referência aos processadores de geração de imagens 1100 e 1200 e às placas de vídeo 1134 e 1234. Especialistas no assunto reconhecerão prontamente que mais de dois (2) processadores de geração de imagens e placas de vídeo independentes podem ser usados em relação aos ensinamentos da presente invenção.
[046] Um protocolo de sincronização baseado em Ethernet pode ser usado para assegurar que os diferentes processadores de geração de imagens 1100, 1200 compartilhem um tempo comum. Especialistas no assunto reconhecerão prontamente que outras soluções
Petição 870190030956, de 30/03/2019, pág. 23/44
19/26 podem ser usadas para alcançar o mesmo tempo comum com os resultados finais que o sinal de referência compartilhado esteja disponível entre os processadores de geração de imagens 1100, 1200. Por exemplo, o sinal de referência compartilhado pode ser o resultado de um sinal de relógio compartilhado, que pode ser gerado por um dos processadores de geração de imagens 1100, 1200 ou por outro nó (não mostrado). Quando outro nó é usado, esse outro nó pode ser dedicado a gerar o sinal de relógio compartilhado ou também pode ter outras tarefas no sistema. O sinal de relógio compartilhado pode ser distribuído diretamente para cada um dos processadores de geração de imagens 1100, 1200 ou pode ser conectado entre os mesmos. Um ou mais de cada um dos processadores de geração de imagens 1100, 1200 pode(m) direcionar o outro nó para modificar o sinal de relógio compartilhado.
[047] Cada uma das placas de vídeo independentes 1134, 1234 suporta a adaptação dinâmica da taxa de atualização de imagens com base na capacidade de resposta do processador de geração de imagens correspondente 1100, 1200. Mais precisamente, o recurso de adaptação dinâmica da taxa de atualização de imagens permite que a placa de vídeo 1134, 1234 modifique dinamicamente, em tempo de execução, a taxa de atualização de sua saída de vídeo considerando a taxa na qual as imagens são disponibilizadas para exibição na placa de vídeo 1134, 1234. Por exemplo, uma aplicação que é executada no processador de geração de imagens 1100, usando o processador 1130 e/ou o processador dedicado 1132, computa uma imagem a ser exibida pela placa de vídeo 1134, por exemplo, usando o módulo de memória 1120 e/ou memória da própria placa de vídeo 1134. Uma vez concluído o processamento da imagem, a imagem é armazenada no módulo de memória 1120 ou na placa de vídeo 1134 (por exemplo, escrita para um buffer de memória da placa de vídeo, acessível ao módulo processador 1130 ou disponibilizadas em um dado local de memória acessível para a placa de vídeo 1134). O módulo de processamento 1130 informa a placa de vídeo 1134 de que a imagem está pronta emitindo uma instrução específica solicitando à placa de vídeo 1134 que exiba a imagem a partir da memória. Por exemplo, o módulo processador 1130 pode emitir instruções de desenhar (“draw) para a placa de vídeo 1134. Em algumas formas de realização, são disponibilizados dois buffers de renderização distintos entre o módulo processador 1130 e a placa de vídeo 1134 e uma
Petição 870190030956, de 30/03/2019, pág. 24/44
20/26 instrução de “swap rendering buffer do módulo processador informa à placa de vídeo 1134 que a imagem está pronta no buffer de renderização correspondente.
[048] O método 2000 também compreende, em cada um dos processadores de geração de imagens 1100, 1200, afetar artificialmente 2030, em tempo real, a velocidade de renderização do gerador de imagem durante o processamento de geração de um próximo quadro para acionar 2040 a adaptação dinâmica da taxa de atualização de imagens pela placa de vídeo do processador de geração de imagens. A finalidade de 2030 é programar proativamente a atualização de uma imagem correspondente ao próximo quadro pela placa de vídeo 1134, 1234, porque o acionamento 2040 é previsível para o módulo de processamento 1130. Como o agendamento é realizado ativamente, torna-se possível alinhar a atualização da imagem ao sinal de referência compartilhado, evitando a manipulação dos registros de memória da placa de vídeo pelo processador de geração de imagens 1100, 1200. O mesmo processo 2010 a 2040 é realizado (2034) para cada imagem processada. Como especialistas no assunto terão entendido a partir da presente descrição quando tomada como um todo, afetar artificialmente a velocidade de renderização envolve a inserção de um atraso controlado, que não é causado pelo desempenho real do gerador de imagens (por exemplo, não feito passivamente), mas que é determinado com a finalidade de controlar a taxa de atualização da placa de vídeo do processador de geração de imagens. Da mesma forma, programar proativamente a atualização de uma imagem envolve determinar o tempo de disponibilidade da próxima imagem com a intenção de controlar o comportamento da placa de vídeo do processador de geração de imagens.
[049] Em algumas formas de realização, o ato de afetar artificialmente 2020, em tempo real, a velocidade de renderização de geração de imagens, é realizado reproduzindo-se programaticamente, em tempo real, o retardo de renderização de geração de imagens durante o processamento de geração do próximo quadro. Ao fazê-lo, o processador de gerador de imagem 1100 aparece para a placa de vídeo 1134 como sendo muito lento, o que fará com que a placa de vídeo 1134 reduza a taxa de atualização da sua saída 1136. Por uma questão de completude, pode-se acrescentar que isso pode ser alcançado, por exemplo, emitindo as instruções de “desenhar (“draw) ou a instrução de “swap buffer
Petição 870190030956, de 30/03/2019, pág. 25/44
21/26 com uma distância de tempo computada representando um atraso positivo (ou tardio) em comparação com um tempo esperado medido a partir do sinal de referência compartilhado. Em algumas formas de realização, alternativa ou adicionalmente, o ato de afetar artificialmente 2020, em tempo real, a velocidade de renderização de geração de imagens, é realizado reproduzindo-se programaticamente, em tempo real, a aceleração da renderização da geração de imagens durante o processamento de geração do próximo quadro. Ao fazê-lo, o processador de geração de imagens 1100 aparece para a placa de vídeo 1134 como sendo suficientemente rápido para sustentar uma taxa de atualização mais elevada, o que fará com que a placa de vídeo 1134 aumente a taxa de atualização 1136, desde que a placa de vídeo 1134 possa suportar essa taxa de atualização mais rápida. Por uma questão de completude, pode-se acrescentar que isto pode ser alcançado, por exemplo, emitindo as instruções de desenhar (“draw) ou a instrução de “swap buffer com uma distância computada representando um atraso negativo (ou antecipação) em comparação com um tempo esperado medido a partir do sinal de referência compartilhado.
[050] Em algumas formas de realização, um dos diferentes processadores de geração de imagens 1100, 1200 é designado como um processador de geração de imagens mestre enquanto o(s) outro(s) é(são) designado(s) como processador(es) de geração de imagens subordinado(s). A maneira em que o mestre é designado não é de particular relevância no contexto das formas de realização representadas no presente documento.
[051] Quando o processador de geração de imagens é um processador de geração de imagens mestre, afetar artificialmente 2020, em tempo real, a velocidade de renderização de geração de imagens pode envolver o agendamento do processamento de geração do próximo quadro por um temporizador-alvo predeterminado ligado ao sinal de referência compartilhado, evitando a manipulação dos registros de memória da placa de vídeo pelo processador de geração de imagens mestre.
[052] Quando o processador de geração de imagens é um processador de geração de imagens subordinado e a menos que o sinal de referência compartilhado esteja alinhado com um sinal subordinado local, afetar artificialmente 2020, em tempo real, a velocidade
Petição 870190030956, de 30/03/2019, pág. 26/44
22/26 de renderização de geração de imagens, pode opcionalmente envolver o agendamento do processamento de geração do próximo quadro, variando-se um temporizador de renderização reproduzido em tempo real durante o processamento de um próximo quadro subordinado, para acionar 2030 a adaptação dinâmica da taxa de atualização de imagens pela placa de vídeo do processador de geração de imagens subordinado. A finalidade é reduzir uma distância de tempo entre a referência compartilhada e o sinal subordinado local, melhorando assim a sincronicidade de uma imagem correspondente ao próximo quadro subordinado e uma imagem correspondente a outro próximo quadro de outro dos dois ou mais processadores de geração de imagens, evitando a manipulação dos registros de memória da placa de vídeo pelo processador de geração de imagens subordinado.
[053] Quando mestre e subordinado(s) são definidos, o método 2000 pode ainda compreender enviar, a partir do processador de geração de imagens subordinado para um gerador de sinal de referência (por exemplo, o mestre, um dos subordinados ou outro nó da rede (não mostrado)), uma indicação da distância de tempo entre o sinal local subordinado e o sinal de referência compartilhado. A indicação pode opcionalmente compreender a distância de tempo entre a referência compartilhada e o sinal de referência subordinado local. Adicional ou alternativamente, o gerador de sinal de referência pode ser provido por um processador de geração de imagens mestre a partir dos dois ou mais processadores de geração de imagens. O método 2000 também pode compreender atualizar o sinal de referência compartilhado ajustando-se o temporizador-alvo predeterminado no gerador de sinal de referência, considerando-se uma pluralidade de indicações recebidas, compreendendo a indicação recebida da distância de tempo entre o sinal local subordinado e o sinal de referência compartilhado. O ajuste do temporizadoralvo predeterminado pode então, opcionalmente, ser realizado subtraindo-se um valor mínimo de uma pluralidade de distâncias de tempo recebidas da pluralidade de indicações recebidas.
[054] Quando o processador de geração de imagens é o processador de geração de imagens subordinado e quando o sinal de referência compartilhado está alinhado com o sinal de referência subordinado local, o método 2000 pode então compreender o
Petição 870190030956, de 30/03/2019, pág. 27/44
23/26 processamento do próximo quadro sem modificar o temporizador de renderização reproduzido.
[055] Em algumas formas de realização, o ato de afetar artificialmente 2020, em tempo real, a velocidade de renderização da geração de imagens, durante o processamento de geração do próximo quadro, pode ser realizado, quando o processador de geração de imagens é um processador de geração de imagens subordinado e quando o sinal de referência compartilhado é atrasado em comparação com um sinal de referência subordinado local, aumentando-se um retardo de processamento reproduzido em tempo real durante o processamento de um próximo quadro subordinado para acionar 2030 a adaptação dinâmica da taxa de atualização de imagens pela placa de vídeo do processador de geração de imagens subordinado para reduzir uma distância de tempo entre a referência compartilhada e o sinal de referência subordinado local, melhorando assim a sincronicidade de uma imagem correspondente ao próximo quadro subordinado e a imagem correspondente ao próximo quadro mestre.
[056] Em algumas formas de realização, o ato de afetar artificialmente 2020, em tempo real, a velocidade de renderização de geração de imagens durante o processamento de geração do próximo quadro, é realizado, quando o processador de geração de imagens é o processador de geração de imagens subordinado e quando o sinal de referência compartilhado é adiantado em comparação com o sinal de referência subordinado local, diminuindo-se o retardo de renderização reproduzido em tempo real durante o processamento do próximo quadro subordinado, para reduzir a distância de tempo entre o sinal de referência compartilhado e o sinal de referência subordinado local, melhorando assim a sincronicidade da imagem correspondente ao próximo quadro subordinado e a imagem correspondente ao próximo quadro mestre.
[057] O método 2000 pode então compreender, independentemente de cada um dos dois ou mais processadores de geração de imagens 1100, 1200, prover cada uma das imagens correspondentes a cada um dos próximos quadros na frequência de exibição única em direção ao painel de exibição 1600.
Petição 870190030956, de 30/03/2019, pág. 28/44
24/26 [058] Em algumas formas de realização, um programa de computador que compreende instruções realiza o método 2000 descrito acima, quando essas instruções são executadas por um processador (por exemplo, o módulo processador 1130). Como mencionado anteriormente, embora referências explícitas aos diferentes módulos (por exemplo, o módulo de memória 1120 e/ou o módulo processador 1130) não sejam feitas ao longo da descrição das várias formas de realização, especialistas na técnica reconhecerão prontamente que tais módulos são usados em combinação com outros módulos do processador de geração de imagens 1100 para realizar etapas de rotina, bem como etapas inovadoras relacionadas à presente invenção. Por exemplo, os diferentes módulos podem compartilhar dados em tempo real e/ou através do sistema de armazenamento 1500 durante a execução do programa de computador que realiza o método 2000.
[059] No exemplo da Figura 3, um exemplo específico do método 2000 é representado. Um Gerador de Imagem (IG) mestre 3010 compartilha um sinal de referência 3100 com IGs subordinados 3020.1...n, que são referidos como IGs subordinados 3020, a menos que um específico dentre eles seja especificamente identificado. O exemplo é, portanto, generalizado para 1 a n IGs subordinados para um IG mestre. Normalmente, não se espera que haja mais do que algumas dúzias de subordinados em um sistema, mas os especialistas no assunto entenderão que isso não é um limite da invenção, mas praticamente não é útil ter muitos IGs. Os projetores 3030.1. m estão representados como recebendo um ou dois (por exemplo, 4) sinais de vídeo sincronizados para exibição em um sistema de exibição 3040.
[060] No exemplo da Figura 3, o IG mestre 3010 define um atraso-alvo 3110 para fins de sincronização. O atraso-alvo 3110 afetará o sinal de referência compartilhado 3100 em direção aos IGs subordinados 3020. O IG mestre 3010 afeta artificialmente 3120 o processamento de geração de imagens, antes de desenhar 3130 a imagem para a placa de vídeo, que então envia a imagem para um projetor 3030. Em algumas formas de realização, o atraso imposto pelo IG mestre 3010 é fixo (isto é, não ajustável). O IG mestre 3010 também pode funcionar de maneira mais eficiente possível, deixando aspectos de sincronização para os IGs subordinados 3020, o que não é a solução preferencial, pois na
Petição 870190030956, de 30/03/2019, pág. 29/44
25/26 verdade requer que cada um dos IGs subordinados 3020 seja pelo menos tão rápido quanto o IG mestre 3010.
[061] Ainda no exemplo da Figura 3, cada um dos IGs subordinados 3020 computa um atraso local 3210 para fins de sincronização. O atraso local é definido considerando o sinal de referência compartilhado 3100. Cada um dos IGs subordinados 3020, conforme necessário, afeta artificialmente 3220 o processamento de geração de imagens antes de desenhar 3230 a imagem para a placa de vídeo, que então envia a imagem para um projetor 3030. Em algumas formas de realização, o IG subordinado 3220 envia retroalimentação 3240 para o IG mestre 3010 em relação ao atraso local computado 3210. Normalmente, a retroalimentação não é enviada para todas as imagens, mas pode ser enviada periodicamente ou apenas para determinados atrasos computados (por exemplo, um limiar é cruzado quando o atraso se aproxima de 0 ou excede um certo valor etc.). Quando a retroalimentação é recebida de um ou de vários dos IGs 3220 subordinados, o IG mestre 3010 pode modificar o atraso-alvo 3140 a fim de melhorar a sincronicidade das saídas e/ou eventualmente trazer o atraso-alvo para um valor mínimo.
[062] Finalmente, no exemplo representado na Figura 3, os projetores 3030 então exibem 3610 as imagens sincronizadas compostas em direção ao sistema de exibição 3040.
[063] O pseudocódigo a seguir representa uma forma de realização exemplificativa na qual o IG mestre é executado com um atraso fixo:
// Application rendering main loop const int MaxTimingCorrectionUS = 5;
while (1) {
Draw () ;
// Calculate the remaining time before the next expected video vertical sync
RemainingTimeUS = MaxFrameTimeUS - CurrentDrawTimeUS;
SleepTimeUS = RemainingTimeUS;
If (CurrentNode == Slave) {
// All slave nodes adjust their waiting time // Does it need to accelerate or slow down for VSync to be synchronized?
If (ABVsyncDeltaUS > MaxTimingCorrectionUS)
Petição 870190030956, de 30/03/2019, pág. 30/44
26/26
ABVsyncDeltaUS = MaxTimingCorrectionUS;
if (ABVsyncDeltaUS < -MaxTimingCorrectionUS)
ABVsyncDeltaUS = -MaxTimingCorrectionUS
SleepTimeUS = SleepTimeUS + ABVsyncDeltaUS;
}
Sleep (SleepTimeUS) ;
SwapRenderingBuffers ();
} }
[064] Observe que o MaxTimingCorrectionUS no exemplo anterior pode ser ajustado para minimizar o efeito de correção e filtrar algumas falhas eventuais.
[065] Geralmente, um método é concebido como uma sequência auto-consistente de etapas que leva a um resultado desejado. Essas etapas requerem manipulações físicas de quantidades físicas. Geralmente, embora não necessariamente, essas quantidades assumem a forma de sinais elétricos ou magnéticos/eletromagnéticos capazes de serem armazenados, transferidos, combinados, comparados e de outra forma manipulados. É conveniente, às vezes, principalmente por motivos de uso comum, referir-se a esses sinais como bits, valores, parâmetros, itens, elementos, objetos, símbolos, caracteres, termos, números ou similares. Deve-se observar, no entanto, que todos esses termos e termos similares devem ser associados às quantidades físicas apropriadas e são meramente rótulos convenientes aplicados a essas quantidades. A descrição da presente invenção foi apresentada para fins de ilustração, mas não pretende ser exaustiva ou limitada às formas de realização reveladas. Muitas modificações e variações serão evidentes para as pessoas de habilidade comum na técnica. As formas de realização foram escolhidas para explicar os princípios da invenção e as suas aplicações práticas e para permitir que outras pessoas de habilidade comum na técnica entendam a invenção a fim de implementar várias formas de realização com várias modificações, como pode ser adequado para outras utilizações contempladas.

Claims (20)

  1. REIVINDICAÇÕES
    1. MÉTODO DE SINCRONIZAÇÃO DE SAÍDAS DE VÍDEO EM DIREÇÃO A UMA FREQUÊNCIA
    DE EXIBIÇÃO ÚNICA caracterizado por compreender as etapas de:
    - fornecer um sinal de referência compartilhado para sincronização, na frequência de exibição única, de saídas de vídeo entre dois ou mais processadores de geração de imagem, cada qual acionando pelo menos uma placa de vídeo independente, onde cada uma das placas de vídeo independentes suporta a adaptação dinâmica da taxa de atualização de imagens com base na capacidade de resposta do processador de geração de imagem correspondente; e
    - em cada um dos processadores de geração de imagem, afetar artificialmente, em tempo real, a velocidade de renderização de geração de imagens durante o processamento de geração de um próximo quadro, para acionar a adaptação dinâmica da taxa de atualização de imagens pela placa de vídeo do processador de geração de imagens para programar proativamente a atualização de uma imagem correspondente ao próximo quadro pela placa de vídeo do processador de geração de imagens, alinhando, assim, a atualização da imagem ao sinal de referência compartilhado, evitando a manipulação dos registros de memória da placa de vídeo pelo processador de geração de imagens.
  2. 2. MÉTODO de acordo com a reivindicação 1, caracterizado pelo fato de que o ato de afetar artificialmente, em tempo real, a velocidade de renderização de geração de imagens é realizado reproduzindo-se programaticamente, em tempo real, o retardo de renderização de geração de imagens durante o processamento de geração do próximo quadro.
  3. 3. MÉTODO de acordo com a reivindicação 1 ou 2, caracterizado pelo fato de que o ato de afetar artificialmente, em tempo real, a velocidade de renderização de geração de
    Petição 870190030956, de 30/03/2019, pág. 32/44
    2/6 imagens é realizado reproduzindo-se programaticamente, em tempo real, a aceleração da renderização da geração de imagens durante o processamento de geração do próximo quadro.
  4. 4. MÉTODO de acordo com a reivindicação 1, caracterizado pelo fato de que, quando o processador de geração de imagens é um processador de geração de imagens mestre, o ato de afetar artificialmente, em tempo real, a velocidade de renderização de geração de imagens envolve programar o processamento de geração do próximo quadro por um temporizador-alvo predeterminado ligado ao sinal de referência compartilhado, evitando a manipulação dos registros de memória da placa de vídeo pelo processador de geração de imagens mestre.
  5. 5. MÉTODO de acordo com a reivindicação 1 ou 4, caracterizado pelo fato de que, quando o processador de geração de imagens é um processador de geração de imagens subordinado e a menos que o sinal de referência compartilhado esteja alinhado com um sinal subordinado local, o ato de afetar artificialmente, em tempo real, a velocidade de renderização de geração de imagens envolve programar o processamento de geração do próximo quadro variando-se um temporizador de renderização reproduzido em tempo real durante o processamento de um próximo quadro subordinado para acionar a adaptação dinâmica da taxa de atualização de imagens pela placa de vídeo do processador de geração de imagens subordinado para reduzir uma distância de tempo entre a referência compartilhada e o sinal subordinado local, melhorando assim a sincronicidade de uma imagem correspondente ao próximo quadro subordinado e uma imagem correspondente a outro próximo quadro de outro dos dois ou mais processadores de geração de imagens, evitando a manipulação dos registros de memória da placa de vídeo pelo processador de geração de imagem subordinado.
  6. 6. MÉTODO de acordo com a reivindicação 5, caracterizado por compreender, adicionalmente, o envio, a partir do processador de geração de imagens subordinado para um gerador de sinal de referência, de uma indicação da distância de tempo entre o sinal local subordinado e o sinal de referência compartilhado.
    Petição 870190030956, de 30/03/2019, pág. 33/44
    3/6
  7. 7. MÉTODO de acordo com a reivindicação 6, caracterizado pelo fato de que a indicação compreende a distância de tempo entre a referência compartilhada e o sinal de referência subordinado local.
  8. 8. MÉTODO de acordo com a reivindicação 6 ou 7, caracterizado pelo fato de que o gerador de sinal de referência é provido por um processador de geração de imagens mestre a partir dos dois ou mais processadores de geração de imagens.
  9. 9. MÉTODO de acordo com qualquer uma das reivindicações 6 a 8, caracterizado por compreender, adicionalmente, atualizar o sinal de referência compartilhado, ajustandose o temporizador-alvo predeterminado no gerador de sinal de referência, considerando uma pluralidade de indicações recebidas, compreendendo a indicação recebida da distância de tempo entre o sinal local subordinado e o sinal de referência compartilhado.
  10. 10. MÉTODO de acordo com a reivindicação 9, caracterizado pelo fato de que o ajuste do temporizador-alvo predeterminado é realizado subtraindo-se um valor mínimo de uma pluralidade de distâncias de tempo recebidas da pluralidade de indicações recebidas.
  11. 11. MÉTODO de acordo com qualquer uma das reivindicações 5 a 10, caracterizado pelo fato de, quando o processador de geração de imagens é o processador de geração de imagens subordinado e quando o sinal de referência compartilhado estiver alinhado com o sinal de referência subordinado local, processar-se o próximo quadro sem modificar o temporizador de renderização reproduzido.
  12. 12. MÉTODO de acordo com qualquer uma das reivindicações 2 a 11, caracterizado por compreender, adicionalmente, independentemente de cada um dos dois ou mais processadores de geração de imagens, prover cada uma das imagens correspondentes a cada um dos próximos quadros na frequência de exibição única.
  13. 13. SISTEMA DE SINCRONIZAÇÃO DE SAÍDAS DE VÍDEO EM DIREÇÃO A UMA FREQUÊNCIA DE EXIBIÇÃO ÚNICA caracterizado por compreender:
    Petição 870190030956, de 30/03/2019, pág. 34/44
    4/6
    - um sistema de exibição para exibir uma imagem composta sincronizada em uma frequência de exibição única;
    - uma pluralidade de placas de vídeo independentes, cada qual suportando a adaptação dinâmica da taxa de atualização de imagens com base na capacidade de resposta de um processador de geração de imagens correspondente; e
    - uma pluralidade de processadores de geração de imagens, cada um acionando uma ou mais da pluralidade de placas de vídeo independentes e tendo acesso a um sinal de referência compartilhado;
    - onde cada um da pluralidade de processadores de geração de imagens afeta artificialmente, em tempo real, a velocidade de renderização de geração de imagens durante o processamento de geração de um próximo quadro para acionar a adaptação dinâmica da taxa de atualização de imagens pela placa de vídeo do processador de geração de imagens, para programar proativamente a atualização de uma imagem correspondente ao próximo quadro pela placa de vídeo do processador de geração de imagens, alinhando, assim, a atualização da imagem ao sinal de referência compartilhado, evitando a manipulação dos registros de memória da placa de vídeo do processador de geração de imagens pelo processador de geração de imagens;
    - onde a imagem composta compreende cada uma das imagens correspondentes aos próximos quadros de cada um da pluralidade de processadores de geração de imagens.
  14. 14. SISTEMA de acordo com a reivindicação 13, caracterizado pelo fato de que o processador de geração de imagens afeta artificialmente, em tempo real, a velocidade de renderização de geração de imagens por reproduzir programaticamente, em tempo real, o retardo da renderização de geração de imagens durante o processamento de geração do próximo quadro.
    Petição 870190030956, de 30/03/2019, pág. 35/44
    5/6
  15. 15. SISTEMA de acordo com a reivindicação 13, caracterizado pelo fato de que o processador de geração de imagens afeta artificialmente, em tempo real, a velocidade de renderização de geração de imagens por reproduzir programaticamente, em tempo real, a aceleração da renderização da geração de imagens durante o processamento de geração do próximo quadro.
  16. 16. SISTEMA de acordo com a reivindicação 13, caracterizado pelo fato de que a pluralidade de processadores de geração de imagens compreende um processador de geração de imagens mestre e um ou mais processadores de geração de imagens subordinados e, quando o processador de geração de imagens é o processador de geração de imagens mestre, o processador de geração de imagens mestre afeta artificialmente, em tempo real, a velocidade de renderização de geração de imagens durante o processamento de geração do próximo quadro programando o processamento da geração de um próximo quadro mestre por um temporizador-alvo predeterminado, ligado ao sinal de referência compartilhado, evitando a manipulação dos registros de memória da placa de vídeo pelo processador de geração de imagens mestre.
  17. 17. SISTEMA de acordo com a reivindicação 13, caracterizado pelo fato de que a pluralidade de processadores de geração de imagens compreende um ou mais processadores de geração de imagens subordinados e, quando o processador de geração de imagens é o processador de geração de imagens subordinado e a menos que o sinal de referência compartilhado esteja alinhado com um sinal subordinado local, o processador de geração de imagens subordinado afeta artificialmente, em tempo real, a velocidade de renderização de geração de imagens durante o processamento de geração do próximo quadro variando-se um temporizador de renderização reproduzido em tempo real durante o processamento de um próximo quadro subordinado para acionar a adaptação dinâmica da taxa de atualização de imagens pela placa de vídeo do processador de geração de imagens subordinado, para reduzir uma distância de tempo entre a referência compartilhada e o sinal subordinado local, melhorando assim a sincronicidade de uma imagem correspondente ao próximo quadro subordinado e uma imagem correspondente a outro próximo quadro proveniente de outro da pluralidade
    Petição 870190030956, de 30/03/2019, pág. 36/44
    6/6 de processadores de geração de imagens, evitando a manipulação dos registros de memória da placa de vídeo pelo processador de geração de imagens subordinado.
  18. 18. SISTEMA de acordo com a reivindicação 17, caracterizado pelo fato de que o processador de geração de imagens subordinado envia adicionalmente, em direção a um gerador de sinal de referência, uma indicação da distância de tempo entre o sinal local subordinado e o sinal de referência compartilhado.
  19. 19. SISTEMA de acordo com a reivindicação 18, caracterizado pelo fato de que a indicação compreende a distância de tempo entre a referência compartilhada e o sinal de referência subordinado local.
  20. 20. SISTEMA de acordo com a reivindicação 18, caracterizado pelo fato de que o gerador de sinal de referência atualiza o sinal de referência compartilhado, ajustando o temporizador-alvo predeterminado considerando uma pluralidade de indicações recebidas que compreende a indicação recebida da distância de tempo entre o sinal subordinado local e o sinal de referência compartilhado.
BR102019006534-6A 2018-03-30 2019-03-30 Método e sistema de sincronização de saídas de vídeo em direção a uma frequência de exibição única BR102019006534A2 (pt)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/941,929 2018-03-30
US15/941,929 US10484578B2 (en) 2018-03-30 2018-03-30 Synchronizing video outputs towards a single display frequency

Publications (1)

Publication Number Publication Date
BR102019006534A2 true BR102019006534A2 (pt) 2019-10-08

Family

ID=62488821

Family Applications (1)

Application Number Title Priority Date Filing Date
BR102019006534-6A BR102019006534A2 (pt) 2018-03-30 2019-03-30 Método e sistema de sincronização de saídas de vídeo em direção a uma frequência de exibição única

Country Status (7)

Country Link
US (1) US10484578B2 (pt)
EP (1) EP3553770B1 (pt)
CN (1) CN110321092B (pt)
AU (1) AU2019202197C1 (pt)
BR (1) BR102019006534A2 (pt)
CA (1) CA3000467C (pt)
SG (1) SG10201902668XA (pt)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111193953B (zh) * 2020-01-14 2022-04-15 井冈山电器有限公司 一种多个拼接显示屏视频同步的显示系统及其方法
CN113038099B (zh) * 2021-03-08 2023-04-07 刘呈 一种近中远三距取景分屏显示方法及其设备

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5155595A (en) 1991-01-31 1992-10-13 Lsi Logic Corp. Genlock frequency generator
US6831648B2 (en) * 2000-11-27 2004-12-14 Silicon Graphics, Inc. Synchronized image display and buffer swapping in a multiple display environment
CN1737899A (zh) * 2004-08-17 2006-02-22 索尼株式会社 图像信号处理装置和相位同步方法
US20080268961A1 (en) 2007-04-30 2008-10-30 Michael Brook Method of creating video in a virtual world and method of distributing and using same
US8537166B1 (en) * 2007-12-06 2013-09-17 Nvidia Corporation System and method for rendering and displaying high-resolution images
US9122443B1 (en) 2008-05-01 2015-09-01 Rockwell Collins, Inc. System and method for synchronizing multiple video streams
DE102009025270B4 (de) 2009-06-17 2011-03-24 eyevis Gesellschaft für Projektions- und Grossbildtechnik mbH Bildanzeigegerät und entsprechendes Betriebsverfahren
US9348355B2 (en) 2009-08-24 2016-05-24 Ati Technologies Ulc Display link clocking method and apparatus
US9741316B2 (en) 2012-06-22 2017-08-22 Universität des Saarlandes Method and system for displaying pixels on display devices
US8891014B2 (en) 2012-07-19 2014-11-18 Barco Nv Systems and methods for latency stabilization over an IP network
KR101419921B1 (ko) 2013-01-18 2014-07-15 한국항공우주산업 주식회사 실시간 실행제어를 위한 비행시뮬레이터장치 및 그 제어방법
US9036084B2 (en) 2013-04-11 2015-05-19 Qualcomm Incorporated Apparatus and method for synchronous display of video data
EP3063616A1 (de) * 2013-10-30 2016-09-07 Barco Control Rooms GmbH Synchronisieren von videos in einer displaywand
US9239699B2 (en) * 2013-12-10 2016-01-19 Nvidia Corporation Enabling hardware acceleration in a computing device during a mosaic display mode of operation thereof
US20150189012A1 (en) 2014-01-02 2015-07-02 Nvidia Corporation Wireless display synchronization for mobile devices using buffer locking
GB2536691B (en) 2015-03-26 2019-09-04 Displaylink Uk Ltd Method and apparatus for controlling a display comprising two or more panels
US9984638B2 (en) 2015-08-18 2018-05-29 Apple Inc. High refresh rate displays with synchronized local dimming

Also Published As

Publication number Publication date
AU2019202197B2 (en) 2021-05-20
EP3553770B1 (en) 2023-07-26
US20190306381A1 (en) 2019-10-03
SG10201902668XA (en) 2019-10-30
CA3000467A1 (en) 2018-06-04
CA3000467C (en) 2019-05-07
AU2019202197A1 (en) 2019-10-17
NZ752221A (en) 2021-11-26
CN110321092B (zh) 2022-07-26
US10484578B2 (en) 2019-11-19
EP3553770A1 (en) 2019-10-16
CN110321092A (zh) 2019-10-11
AU2019202197C1 (en) 2021-08-12

Similar Documents

Publication Publication Date Title
BR102019006534A2 (pt) Método e sistema de sincronização de saídas de vídeo em direção a uma frequência de exibição única
CN104050333A (zh) 航空电子系统分布式实时综合仿真系统
US11294458B2 (en) Modular infrastructure for an interactive computer program
BR112019020497B1 (pt) Método para monitoramento contínuo de um modelo em uma estação de simulação por computador interativa e estação de simulação por computador interativa para sua execução
US9754506B2 (en) Interactive computer program with virtualized participant
CA3028220C (en) Dynamically adjusting image characteristics in real-time
CA3000450C (en) Dynamically modifying visual rendering of a visual element comprising pre-defined characteristics
NZ752221B2 (en) Synchronizing video outputs towards a single display frequency
JP2005084956A (ja) 論理回路の検証方法および検証システム
US20200202812A1 (en) Dynamically adjusting image characteristics in real-time
CA3000461C (en) Dynamically modifying visual rendering of a visual element comprising a visual contouring associated therewith
CA3000474C (en) Dynamically affecting tailored visual rendering of a visual element
Kemper et al. Simulator Design for Flying and Handling Qualities Instruction
US9583018B1 (en) Reconfigurable image generator
US20240144839A1 (en) System and method for simulating a storage system in a virtual environment
CA2980369C (en) Modular infrastructure for an interactive computer program
Pan et al. Real time data transmission and clock synchronization for HILS based on RFM
CA2923237C (en) Interactive computer program with virtualized participant
Chircop et al. A flexible framework for configurable real-time flight simulators

Legal Events

Date Code Title Description
B03A Publication of a patent application or of a certificate of addition of invention [chapter 3.1 patent gazette]
B06W Patent application suspended after preliminary examination (for patents with searches from other patent authorities) chapter 6.23 patent gazette]