FMUSER Transmitir vídeo e áudio sem fio mais fácil!
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> Afrikaans
sq.fmuser.org -> albanês
ar.fmuser.org -> árabe
hy.fmuser.org -> armênio
az.fmuser.org -> Azerbaijão
eu.fmuser.org -> Basco
be.fmuser.org -> bielorrusso
bg.fmuser.org -> búlgaro
ca.fmuser.org -> catalão
zh-CN.fmuser.org -> Chinês (simplificado)
zh-TW.fmuser.org -> chinês (tradicional)
hr.fmuser.org -> croata
cs.fmuser.org -> checo
da.fmuser.org -> dinamarquês
nl.fmuser.org -> holandês
et.fmuser.org -> estoniano
tl.fmuser.org -> filipino
fi.fmuser.org -> finlandês
fr.fmuser.org -> francês
gl.fmuser.org -> galego
ka.fmuser.org -> georgiano
de.fmuser.org -> alemão
el.fmuser.org -> grego
ht.fmuser.org -> crioulo haitiano
iw.fmuser.org -> hebraico
hi.fmuser.org -> Hindi
hu.fmuser.org -> húngaro
is.fmuser.org -> islandês
id.fmuser.org -> indonésio
ga.fmuser.org -> irlandês
it.fmuser.org -> italiano
ja.fmuser.org -> Japonês
ko.fmuser.org -> coreano
lv.fmuser.org -> letão
lt.fmuser.org -> Lituano
mk.fmuser.org -> macedônio
ms.fmuser.org -> malaio
mt.fmuser.org -> maltês
no.fmuser.org - norueguês
fa.fmuser.org -> persa
pl.fmuser.org -> polonês
pt.fmuser.org -> português
ro.fmuser.org -> romeno
ru.fmuser.org -> russo
sr.fmuser.org -> Sérvio
sk.fmuser.org -> Eslovaco
sl.fmuser.org -> esloveno
es.fmuser.org -> espanhol
sw.fmuser.org -> Swahili
sv.fmuser.org -> sueco
th.fmuser.org -> Tailandês
tr.fmuser.org -> turco
uk.fmuser.org -> ucraniano
ur.fmuser.org -> Urdu
vi.fmuser.org -> vietnamita
cy.fmuser.org -> Galês
yi.fmuser.org -> iídiche
OSD (On Screen Display) é um tipo de tecnologia de exibição de tela usada para exibir caracteres, gráficos e imagens no terminal de exibição.
A memória de vídeo, também conhecida como buffer de quadros, é usada para armazenar os dados de renderização processados ou prestes a serem extraídos pelo chip gráfico. Como a memória do computador, a memória de vídeo é um componente usado para armazenar informações gráficas a serem processadas. A imagem que vemos na tela é composta de pixels individuais, e cada pixel usa dados de 4-32 ou mesmo 64 bits para controlar seu brilho e cor. Esses dados devem ser salvos na memória de vídeo. Em seguida, ele é atribuído pelo chip do display e pela CPU e, finalmente, o resultado da operação é convertido em gráficos e enviado ao display.
1. Cálculo da memória de vídeo:
largura * altura * PIXEL_SIZE (profundidade de bits)
8 bits 16 bits 32 bits
U32 * p = (U32 *) GetMemoryAddr ();
p [y * largura + x] = 0xffff0000;
Por exemplo, a resolução é 1280 * 720, o modo de imagem é ARGB8888 e o buffer de memória de vídeo é 1280 * 720 * 4. Se for ARGB1555, 1280 * 720 * 2, 4 e 2 representam a profundidade de bits, que é o número de bytes
A resolução é 1280 * 720 e o modo de imagem é ARGB8888. Em uma tela, existem 1280 pixels em uma linha e 720 pixels em uma coluna. Um pixel é controlado por 4 bytes de dados.
2. O processo de realização é: o conteúdo da memória de vídeo corresponde aos pixels no terminal de exibição um a um. Essa correspondência um a um é geralmente definida por registradores e, em seguida, implementada pelo hardware. O funcionamento do conteúdo da memória altera os pixels da tela, de forma que a exibição de uma interface específica pode ser realizada. Na verdade, este também é o método para exibição digital geral. Por exemplo: 320 * 240 pixels monocromáticos (1 bit) OSD requer 40 * 240 bytes de espaço de armazenamento para corresponder a ele; O OSD de 320 * 240 pixels de 16 cores (4 bits) requer 160 * 240 bytes de espaço de armazenamento para corresponder a ele
Agora é possível alterar os pixels do OSD modificando o conteúdo da unidade de armazenamento, mas ainda há uma questão fundamental como operar de acordo com as necessidades, ou seja, como definir um determinado pixel para uma cor especificada. A seguir, apresentaremos o conceito de amostras.
O conteúdo dos quatro bits inferiores em um Byte corresponde a um pixel um a um e seu valor é "3", então a cor representada pelo número "3" é determinada pela paleta de cores e, em seguida, pela tela OSD é direcionado para definir o pixel para a cor especificada. Similarmente,
A relação correspondente entre esta paleta de cores e a tela OSD física é geralmente definida pelo registro, que é garantido pelo hardware. Para um ambiente de exibição específico, esta paleta de cores é geralmente fixa
Atualmente, existem dois métodos principais de implementação de OSD: sobreposição e síntese entre o gerador de OSD externo e o processador de vídeo; o processador de vídeo suporta OSD internamente e sobrepõe diretamente as informações do OSD dentro do buffer de vídeo.
1. O princípio de realização da síntese de superposição entre o gerador OSD externo e o processador de vídeo é: um gerador de caracteres e buffer de exibição embutido no MCU, usando o sinal Fast-Blank para alternar a tela da TV e o conteúdo do OSD, Criar caracteres OSD e outro conteúdo sobreposto na tela de exibição final, no OSD e no processo de sobreposição da tela de exibição, ajustando a proporção entre os dois, pode-se obter o efeito de OSD semitransparente (Mistura). Ao mesmo tempo, recodificando os sinais vermelho, verde e azul no sinal OSD, diferentes efeitos de cor OSD podem ser obtidos.
2. Outro método de implementação é oferecer suporte ao OSD dentro do processador de vídeo e sobrepor diretamente as informações do OSD dentro do buffer de vídeo. Este tipo de processamento de vídeo geralmente possui uma memória externa ou uma pequena quantidade de buffers de linha internos, bem como um gerador de OSD. A síntese e o controle do OSD são concluídos diretamente no buffer de vídeo e também possui as funções de translucidez e controle de cores mencionadas acima. OSD tem dois tipos: Font-Based e Bit-Map.
OSD de caracteres: para salvar o cache de exibição, as soluções iniciais e de baixo custo usam um gerador de OSD de caracteres. O princípio é dividir o conteúdo da tela no OSD em blocos de acordo com um formato específico (12 × 18, 12 × 16, etc.), como números 0-9, letras az, brilho comumente usado, símbolos de contraste, etc. , e esses conteúdos são solidificados em ROM ou Flash, apenas o número do índice correspondente é armazenado no cache de exibição, tal estrutura de "dicionário" pode ser bastante reduzida Mostre a necessidade de armazenamento em cache. Ao mesmo tempo, para fornecer controle sobre a cor e outros atributos de cada personagem, geralmente há um buffer de atributos do mesmo tamanho que o buffer de exibição e seus atributos (cor de primeiro plano, cor de fundo, tremulação, etc.) são eficazes para cada pixel em todo o personagem. A fim de compensar a lacuna de não ser capaz de especificar a cor de cada pixel desta forma, o projetista do gerador OSD fornece uma solução para apresentar caracteres multicoloridos combinando vários buffers de exibição. O princípio é que cada buffer de exibição determina um esquema de cores. Quando dois ou mais buffers de exibição são mesclados, caracteres multicoloridos com mais de duas cores podem ser "montados". A vantagem do OSD de caracteres é que ele pode usar menos buffer de exibição dentro do OSD, e o MCU só precisa especificar o índice do conteúdo de exibição para exibir as informações OSD correspondentes, que podem ser implementadas em um MCU de velocidade relativamente baixa. Mas é precisamente por causa do acima
As informações do display e o método de codificação de cores não são intuitivos o suficiente, o que trará alguns problemas para o desenvolvimento do firmware do OSD do personagem. Normalmente monitores LCD, TVs de tela plana de baixo custo e TVs tradicionais CRT usam esse tipo de OSD, e ainda ocupam a posição dominante no mercado. Em comparação com o OSD de caracteres, o princípio de processamento do OSD de bitmap é mais intuitivo e simples: ao alterar cada pixel em uma área específica do conteúdo da exibição final, as informações do OSD são diretamente sobrepostas na tela de exibição final,
Seu controle pixel a pixel pode garantir recursos de desempenho suficientes e multicoloridos. O gerador de bitmap OSD geralmente é construído no processador de vídeo e compartilha seu buffer de exibição principal. Existem também geradores de bitmap OSD profissionais independentes do processador de vídeo, como o MAX4455 da Maxim. Normalmente, este tipo de chip requer um SDRAM externo como buffer de exibição. O efeito de exibição do OSD de bitmap pode, teoricamente, ser muito perfeito. Ele pode fornecer vários objetos com um efeito tridimensional semelhante ao do Windows, como botões sombreados, gráficos e texto coloridos, etc. A desvantagem é que ele deve ter cache de exibição OSD suficiente e os requisitos de velocidade para MCU por pixel a pixel processamento de pixels. Este tipo de OSD é geralmente usado em TVs de tela plana de grande porte e monitores profissionais. Com o desenvolvimento contínuo da tecnologia e o declínio contínuo do custo da memória, os OSDs futuros devem ser todos mapeados em bitmap.
O desenho osd geralmente usa um mecanismo de cache de buffer duplo
Um buffer é o que podemos ver e o outro é invisível. Ao desenhar, primeiro processe os dados no buffer que não podem ser vistos. Ao desenhar, copie os dados deste buffer para ver.
|
Digite o e-mail para obter uma surpresa
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> Afrikaans
sq.fmuser.org -> albanês
ar.fmuser.org -> árabe
hy.fmuser.org -> armênio
az.fmuser.org -> Azerbaijão
eu.fmuser.org -> Basco
be.fmuser.org -> bielorrusso
bg.fmuser.org -> búlgaro
ca.fmuser.org -> catalão
zh-CN.fmuser.org -> Chinês (simplificado)
zh-TW.fmuser.org -> chinês (tradicional)
hr.fmuser.org -> croata
cs.fmuser.org -> checo
da.fmuser.org -> dinamarquês
nl.fmuser.org -> holandês
et.fmuser.org -> estoniano
tl.fmuser.org -> filipino
fi.fmuser.org -> finlandês
fr.fmuser.org -> francês
gl.fmuser.org -> galego
ka.fmuser.org -> georgiano
de.fmuser.org -> alemão
el.fmuser.org -> grego
ht.fmuser.org -> crioulo haitiano
iw.fmuser.org -> hebraico
hi.fmuser.org -> Hindi
hu.fmuser.org -> húngaro
is.fmuser.org -> islandês
id.fmuser.org -> indonésio
ga.fmuser.org -> irlandês
it.fmuser.org -> italiano
ja.fmuser.org -> Japonês
ko.fmuser.org -> coreano
lv.fmuser.org -> letão
lt.fmuser.org -> Lituano
mk.fmuser.org -> macedônio
ms.fmuser.org -> malaio
mt.fmuser.org -> maltês
no.fmuser.org - norueguês
fa.fmuser.org -> persa
pl.fmuser.org -> polonês
pt.fmuser.org -> português
ro.fmuser.org -> romeno
ru.fmuser.org -> russo
sr.fmuser.org -> Sérvio
sk.fmuser.org -> Eslovaco
sl.fmuser.org -> esloveno
es.fmuser.org -> espanhol
sw.fmuser.org -> Swahili
sv.fmuser.org -> sueco
th.fmuser.org -> Tailandês
tr.fmuser.org -> turco
uk.fmuser.org -> ucraniano
ur.fmuser.org -> Urdu
vi.fmuser.org -> vietnamita
cy.fmuser.org -> Galês
yi.fmuser.org -> iídiche
FMUSER Transmitir vídeo e áudio sem fio mais fácil!
Contato
Endereço:
No.305 Sala HuiLan Edifício No.273 Huanpu Road Guangzhou China 510620
Categorias
Newsletter