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
Histórico do problema:
Seja para verificar algumas telas, congelamentos e problemas de mosaico na linha, ou para desenvolver uma função adaptativa de taxa de bits, ou para otimizar o JitterBuffer do player cliente, a cooperação do transmissor do codificador é necessária. Precisamos fazer uma compensação na velocidade de codificação, largura de banda da rede e qualidade de vídeo e, em seguida, escolher um esquema de ajuste de controle de código que seja mais adequado para a cena. Ao mesmo tempo, a codificação ROI atualmente popular e a aprendizagem adaptativa de cenas de codificação estão relacionadas a essa parte do conteúdo. Este artigo apresenta os esquemas de controle de taxa de bits de codificadores de vídeo comuns. Codificadores específicos podem ser diferentes na implementação e no uso, e análises e entendimentos adicionais são necessários ao chamar APIs e ler o código-fonte.
conhecimento prévio:
No processo de codificação de vídeo, há uma etapa importante: a quantização, que é um processo de compactação com perdas. A quantização basicamente determina a taxa de bits do vídeo, e a taxa de bits do vídeo determina a qualidade do vídeo até certo ponto. Quanto maior o valor de quantização QP, maior a granularidade da quantização, maior a taxa de compressão, menor a taxa de bits e menor a qualidade do vídeo. Parece que o mosaico é maior, a imagem não é delicada e está desfocada. Pelo contrário, a taxa de compressão é baixa, a taxa de bits é grande, a qualidade é alta, a imagem é delicada e os detalhes são ricos.
Portanto, é muito importante escolher uma solução de controle de código de vídeo adequada para a cena. O ajuste da taxa de bits de saída de vídeo é, na verdade, um equilíbrio entre a velocidade de codificação do vídeo, largura de banda da rede e qualidade do vídeo. Às vezes a largura de banda da rede é muito limitada, é necessário dar prioridade ao esquema de controle de código que dá prioridade à taxa de bits. Alguns possuem altos requisitos de qualidade de vídeo. Se você deseja vídeo de alta definição, deve escolher o modelo de qualidade em primeiro lugar.
No geral, a escolha do esquema de controle da taxa de codificação de vídeo pode ser obtida ponderando os cinco fatores a seguir:
1. A estabilidade da qualidade visual conduz à qualidade visual subjetiva, como clareza, fluência, detalhes, etc. Isso está relacionado ao princípio visual do olho humano. Escolha o modelo com a percepção de qualidade ativa mais alta do olho humano;
2. A taxa de bits de saída em tempo real é equivalente ao número de bits de saída por quadro. O fator de largura de banda da rede deve ser considerado. Com o desenvolvimento da Internet móvel, a influência das redes wi-fi e sem fio também deve ser considerada;
3. O tamanho do arquivo de saída de vídeo é controlável, o que favorece a transmissão e o armazenamento, dependendo do tamanho do espaço do sistema;
4. Velocidade de codificação. Diferentes modelos de controle de código também afetam a velocidade de codificação. Para cenários de baixa latência e em tempo real, deve-se considerar diferentes esquemas de controle de código, que têm diferentes complexidades computacionais e o atraso de codificação resultante também terá um impacto;
5. Para dispositivos móveis, diferentes métodos de codificação são necessários para os requisitos de consumo de energia, porque diferentes modelos afetarão a complexidade de codificação e decodificação, e o consumo de energia necessário para codificação e reprodução em dispositivos móveis é diferente;
Introdução da taxa de bits:
O seguinte apresenta diferentes modelos de controle de taxa e cenários aplicáveis:
CQP: QP fixo, o método de controle de taxa mais simples. Cada quadro de imagem é codificado de acordo com um QP específico. A quantidade de dados codificados em cada quadro é desconhecida. Não é um modelo de prioridade nem um modelo de qualidade em primeiro lugar. Mas é o modelo mais simples de implementar;
Cenários aplicáveis: Este método geralmente não é recomendado, porque este método não considera a complexidade do conteúdo codificado e processa cada quadro com a mesma taxa de compressão. A qualidade do vídeo e a taxa de bits não são fixas. Pessoalmente, acho que existem apenas cenas muito simples, como cenas estáticas em que a quantidade de movimento é pequena, e você pode experimentar. Quando você encontra cenas complexas, a taxa de bits flutua muito. Ou pode ser usado na pesquisa ou verificação de algoritmos.
Características:
· A taxa de bits instantânea irá flutuar com a complexidade da cena;
· A velocidade de codificação é rápida, a regulagem é a mais fácil e o valor QP de cada frame é o mesmo;
· O modo CQP é compatível com x264 e x265, mas não com libvpx;
· O intervalo QP em H.264 é [0, 51]. Quanto maior o valor de QP, maior será o tamanho da etapa de quantização e menor será a qualidade do vídeo codificado. QP de 0 significa codificação sem perdas;
CRF: (Fator de taxa constante) fator de taxa constante. Considere uma certa "qualidade visual" como destino de saída. Esse objetivo é alcançado reduzindo a qualidade dos quadros que consomem a taxa de bits, mas são difíceis de detectar a olho nu (movimento de alta velocidade ou textura rica) e melhora a taxa de bits desses quadros estáticos.
Características: QP muda entre quadros, QP muda de macroblocos dentro de um quadro, a taxa de bits de saída é desconhecida e a qualidade visual de cada saída de quadro é basicamente constante. Este método é equivalente ao modo de qualidade fixa + o método de limitar a taxa de bits de pico.
Cenários aplicáveis: Adequado para ocasiões com certos requisitos de qualidade de vídeo. O valor CRF pode ser simplesmente entendido como um valor de saída fixo esperado para a qualidade de vídeo. Espera-se que haja um valor estável independentemente de estar em uma cena de movimento complexa ou em uma situação estática simples. A qualidade subjetiva de vídeo pode escolher este modo, que é um modelo de prioridade de qualidade de vídeo. A qualidade do vídeo pode ser simplesmente entendida como a clareza do vídeo, a delicadeza dos pixels e a suavidade do vídeo.
Características:
· Semelhante ao QP constante, mas a busca da qualidade percebida subjetivamente é constante, a taxa de bits instantânea também irá flutuar com a complexidade da cena, e os valores de QP entre os quadros de vídeo ou entre os macroblocos internos são diferentes;
· Para cenas de movimento rápido ou detalhadas, a distorção de quantização será aumentada apropriadamente (porque o olho humano não é sensível), enquanto para áreas estáticas ou planas, a distorção de quantização será reduzida;
· CRF é o método de controle de taxa padrão para x264 e x265, e também pode ser usado para libvpx;
· Quanto maior for o valor de CRF, maior será a taxa de compressão do vídeo, mas menor será a qualidade do vídeo. O intervalo de valores CRF de cada codec é geralmente [0-51], mas o valor padrão geral é 23 para x264 e 28 para x265 biblioteca;
· Se você não tiver certeza de qual CRF usar, comece com o valor padrão e altere-o com base em sua impressão subjetiva da saída. Se a qualidade não for boa o suficiente, o CRF é inferior. Se o arquivo for muito grande, escolha um CRF mais alto. Alterar ± 6 resultará em uma alteração de cerca de metade / duas vezes o tamanho da taxa de código e ± 1 resultará em uma alteração de cerca de 10% da taxa de código.
CBR: (Constant Bit Rate) taxa de bits constante, a taxa de bits permanece basicamente constante dentro de um determinado intervalo de tempo, que pertence ao modelo de prioridade de taxa de bits.
Cenários aplicáveis: geralmente não é recomendado usar este método. Embora a taxa de bits de saída esteja sempre em um valor estável, a qualidade é instável e a largura de banda da rede não pode ser totalmente utilizada porque este modelo não considera a complexidade do conteúdo de vídeo. O conteúdo do quadro de vídeo é tratado de maneira uniforme. No entanto, alguns softwares de codificação suportam apenas qualidade fixa ou taxa de bits fixa e, às vezes, precisam ser usados. Ao usar, defina a largura de banda o maior possível dentro da faixa de largura de banda permitida para evitar que a qualidade do vídeo seja baixa em cenas de esportes complexas. Se a configuração não for razoável, não ficará clara nas cenas de esportes.
Características:
· A taxa de bits é estável, mas a qualidade é instável e a utilização efetiva da largura de banda não é alta. Especialmente quando o valor é definido de forma irracional, a imagem fica muito borrada em cenas de esportes complexas, o que afeta muito a experiência de visualização;
· Mas a taxa de bits do vídeo de saída é basicamente estável, o que é conveniente para calcular o tamanho do volume do vídeo;
VBR: (Taxa de bits variável) taxa de bits variável, cenas simples alocam QP relativamente grande, baixa taxa de compressão e alta qualidade. Cenas complexas são atribuídas a QPs menores. É obtida uma qualidade visual basicamente estável, porque o olho humano é inerentemente insensível a cenas complexas e a desvantagem é que a taxa de bits de saída é incontrolável.
Existem dois modos de controle: modo de prioridade de qualidade e modo de codificação secundária 2PASS.
Modo de prioridade de qualidade:
Independentemente do tamanho do arquivo de vídeo de saída, a taxa de bits é alocada de acordo com a complexidade do conteúdo do vídeo, para que a qualidade de reprodução do vídeo seja a melhor.
Método de codificação secundário 2PASS:
A primeira codificação detecta as partes simples e complexas do conteúdo do vídeo e, ao mesmo tempo, determina a proporção simples e complexa. A segunda passagem de codificação manterá a taxa de bits média do vídeo inalterada, com mais bits alocados para áreas complexas e menos bits alocados para áreas simples. Embora este tipo de codificação seja muito bom, mas a velocidade não vai acompanhar.
Cenários aplicáveis: o VBR é adequado para cenários que não são muito limitados em largura de banda e velocidade de codificação, mas têm altos requisitos de qualidade. Especialmente em cenas esportivas complexas, ele pode manter uma definição relativamente alta e uma qualidade de saída estável, o que é adequado para sistemas sob demanda, gravação ou armazenamento que não são sensíveis a atrasos.
Características:
· A taxa de código é instável e a qualidade é basicamente estável e muito alta;
· A velocidade de codificação é geralmente lenta, sistemas sob demanda, download e armazenamento podem ser usados primeiro, não adequados para sistemas de transmissão ao vivo de baixa latência;
· Este modelo não leva em consideração a largura de banda do vídeo de saída. Para qualidade, ele ocupa a taxa de bits necessária e não considera a velocidade de codificação;
ABR: (Taxa de bits média) Taxa de bits de destino média constante, bits baixos são alocados para cenas simples e bits suficientes para cenas complexas, de modo que um número limitado de bits pode ser alocado razoavelmente em cenas diferentes, que é semelhante ao VBR. Ao mesmo tempo, a taxa de bits média está próxima da taxa de bits de destino definida dentro de um determinado período de tempo, de modo que o tamanho do arquivo de saída pode ser controlado, que é semelhante ao CBR. Pode ser considerado um meio-termo entre o CBR e o VBR, que é a escolha da maioria das pessoas. Especialmente no caso de requisitos de qualidade e largura de banda de vídeo, este modo pode ser selecionado primeiro. Geralmente, a velocidade é duas a três vezes maior que a do VBR, mas a qualidade dos arquivos de vídeo do mesmo volume é muito melhor do que a do CBR.
Cenários aplicáveis: ABR é mais usado em sistemas de transmissão ao vivo e de baixa latência. Por ser codificado apenas uma vez, é rápido, levando em consideração a qualidade do vídeo e a largura de banda. Este modo também pode ser selecionado quando a velocidade de transcodificação é necessária. A maioria dos vídeos na estação B escolheu este modo.
Características:
· A qualidade geral do vídeo é controlável e a taxa de bits e a velocidade do vídeo são levadas em consideração ao mesmo tempo. É uma solução de compromisso e, na verdade, é mais usada;
· O processo de uso geralmente requer que o chamador defina a taxa de bits mínima, máxima e média. Esses valores devem ser definidos o mais razoáveis possível;
Para
Vários esquemas de controle de taxa de código são apresentados acima. Codificadores diferentes têm nomes e títulos diferentes, e os detalhes podem ser diferentes. Mas basicamente isso é obtido afetando o tamanho do QP e, em seguida, afetando ainda mais a granularidade do processo de quantificação. Para uso específico, você precisa consultar mais a implementação do codificador específico.
Geralmente, ABR é o preferido e um equilíbrio satisfatório pode ser alcançado em termos de velocidade, taxa de bits e qualidade. Outros VBR, CBR e CRF têm seus próprios cenários e precisam ser usados condicionalmente quando são usados.
Pensamentos conclusivos:
A solução de controle de código de vídeo apresentada hoje é a base de muitas tecnologias de camada superior. Entre eles, a tecnologia adaptativa de taxa de bits, ajustando dinamicamente os parâmetros de codificação de acordo com a cena, e a codificação da região de interesse RIO são todas baseadas na seleção e refinamento do esquema de controle de codificação no processo de codificação, que por sua vez afeta o grau de quantização e granularidade de quantização da codificação. No final, um equilíbrio satisfatório é alcançado entre qualidade de vídeo, velocidade e largura de banda. Ao mesmo tempo, esses modelos são mutuamente exclusivos em diferentes bibliotecas de codificação, como x264 ou x265. Às vezes, a taxa de código se torna inválida devido a configurações de parâmetro inadequadas e os parâmetros definidos não funcionam. Isso também requer atenção especial.
Em segundo lugar, depois de se familiarizar com este conteúdo, também é muito útil solucionar alguns problemas online. Ajuste claramente os efeitos colaterais do ajuste da taxa de quadros, resolução e outros parâmetros. Você também pode deixar uma mensagem em segundo plano para compartilhar o conteúdo relevante de seu projeto real
|
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