Summary (MPD)
Muitos streaming de produtores usam codificação de taxa de bits constante (CBR) como uma taxa de bits técnica de controle, em uma tentativa para se criar o fluxo mais eficiente para a entrega, ou para cumprir com a percepção de que a Apple requisitos para HTTP Live Streaming (HLS). No entanto, o CBR oferece a menor qualidade geral de todas as técnicas de controle de taxa de dados e introduz o potencial para problemas dramáticos de qualidade transitória como os mostrados na Figura 1.
Figura 1. Comparação da codificação CBR vs. VBR (carregue na imagem para ver o tamanho completo).
uma pesquisa recente indica que muitos produtores mudaram para codificação de bitrate variável (VBR) e estão ignorando as recomendações da Apple acima mencionadas. Testing reveals that 110% constraied VBR avoids the transient quality issues caused by CBR encoding. Os produtores que ainda utilizam CBR devem considerar a possibilidade de mudar para VBR restringido, a fim de evitar estes problemas transitórios de qualidade e melhorar a qualidade global do vídeo.
Segmento 1: o controlo da taxa de dados é uma das opções de codificação mais fundamentais seleccionadas para cada ficheiro comprimido
sempre que codificar um ficheiro para a distribuição de streaming, poderá escolher uma taxa de dados e uma técnica de controlo da taxa de dados. Isto é mostrado na Figura 2, do codificador de mídia Adobe.
Figura 2. Técnicas de controle de Bitrate disponíveis no codificador de mídia Adobe.as duas técnicas mais comuns são::
* codificação constante de taxa de dados (CBR), onde a mesma taxa de dados é aplicada a todo o arquivo, independentemente da complexidade da cena. Com CBR, você define a taxa de dados alvo (Figura 2), mas não o máximo, porque a taxa de dados não deve variar significativamente, embora normalmente o faça em algum grau limitado, como mostrado na Figura 3.
A Figura 3 mostra um ficheiro codificado com CBR. Como você pode ver na legenda à direita, a taxa de dados média é 4936 kbps, enquanto o pico é 5557 kbps. A linha wavy azul é a taxa de dados flutuantes, que varia minimamente ao longo da duração do arquivo. As colunas individuais são o tamanho de cada grupo codificado de imagens dentro do arquivo, com um servidor de chaves a cada três segundos neste arquivo 29.97 fps.
Figura 3. Um ficheiro codificado pelo CBR no Visualizador de taxa de dados.
Note que CBR nunca é uma linha plana completa; uma variabilidade de cerca de 5-10% é normal.
* codificação de taxa de dados variável (VBR), onde a mesma taxa global de dados alvo é cumprida, mas a taxa de dados é variada ao longo da duração do arquivo para corresponder à complexidade da cena. Com VBR, você define o alvo e o máximo (Figura 2), e em algumas aplicações, o mínimo também. Quando você define um máximo, a codificação VBR é considerada restrita, e VBR é muitas vezes descrita pela percentagem da restrição. Na Figura 2, a taxa de dados máxima é de 2,4 Mbps, ou 200% da taxa de dados-alvo de 1,2 Mbps. Esta técnica seria chamada de 200% de VBR Restrito.
A Figura 4 mostra o mesmo ficheiro da Figura 3 codificado utilizando 200% de VBR limitado à mesma taxa de dados-alvo de 5000 kbps. A taxa de bits média é aproximadamente a mesma (4988 kbps vs. 4936 kbps), mas a taxa de bits de pico é 9301 kbps, não completamente 200% mas no ballpark. A linha de dados azul ondulado varia muito mais significativamente do que na Figura 3, com baixas taxas no início, e picos ao longo.
Figura 4. O mesmo ficheiro codificado com 200% de VBR Restrito.
• muitos produtores padrão para CBR para alguns ou todos os seus codificação. Nos primeiros dias de streaming, as conexões foram tão restritas que CBR foi recomendado para evitar picos de taxa de dados que poderiam parar a reprodução suave. Na Apple Technote TN2224, a Apple afirma ” variabilidade da taxa de bits – não deve exceder 10% do bitrato-alvo.”Mais ameaçador, o Validador de fluxo de mídia da Apple, uma ferramenta usada para testar fluxos de HLS, cria um aviso se qualquer bitrate de segmento de fluxo varia a partir da bitrate-alvo em mais de 10%. Não surpreendentemente, em uma pesquisa recente do centro de aprendizagem Streaming, 11 dos 16 entrevistados indicaram que eles ainda estavam usando codificação CBR para alguns de seus fluxos (Figura 5). É certo que o número de inquiridos é demasiado reduzido para ser estatisticamente significativo, embora as respostas sejam válidas para fins informativos.
Figura 5. Onze dos 16 entrevistados ainda estavam usando CBR em alguns de seus fluxos, bem como outras técnicas.
Como pode ver na Figura 5, existem outras técnicas de controle de taxa de dados, incluindo Fator de taxa constante (CRF) e CRF nivelada. No entanto, uma vez que eles são melhor utilizados em instâncias muito limitadas (principalmente conteúdo sintético como screencams e vídeos PowerPoint com áudio), eles não estão incluídos nesta discussão.
Segmento 2. A tabela 1 mostra os resultados de um conjunto de comparações de qualidade executadas para o próximo livro de Jan Ozer, a codificação pelos números, que está prevista para o verão de 2016. Estes testes envolveram arquivos codificados para resolução 720p a 2 Mbps usando FFmpeg, com pontuações VQM medidos pela ferramenta de medição de qualidade de vídeo da Universidade de Moscou (Vqmt). Com VQM, as pontuações mais baixas são melhores, e na tabela, as pontuações a vermelho são as piores, as pontuações a verde são as melhores.
Tabela 1. Comparação de qualidade PSNR para diferentes técnicas de controlo de taxa de dados.Nota As colunas delta de qualidade do Quadro 1. O primeiro mostra a diferença de qualidade total entre o arquivo de menor e mais alta qualidade do grupo. O segundo mostra a diferença de qualidade entre os clipes codificados usando 110% e 200% VBR Restrito. Como você verá, os produtores podem evitar questões transitórias de qualidade e permanecer dentro das recomendações da Apple, usando 110% VBR constrangido. No entanto, os produtores que procuram o arquivo de maior qualidade possível, e não preocupados com as recomendações da Apple, devem usar 200% VBR restringido.
em todos os casos de teste, o CBR de 2 passagens forneceu a pior qualidade, e em cinco de seis, o VBR de 200% restringido entregou a mais alta qualidade. A única exceção foi o clipe da cabeça falante, onde 1 passe CBR entregou a mais alta qualidade. Este resultado parece ser uma anomalia; em testes similares realizados em três movimentos baixos, clipes de cabeça falante, os resultados foram consistentes com todos os outros arquivos da Tabela 1. A maior variabilidade foi observada no clipe Big Buck Bunny, que mostrou um diferencial de qualidade de 14,54% entre os clipes de qualidade mais baixa e mais alta (coluna Delta de qualidade Total).
O diferencial de qualidade global é relativamente pequeno na maioria dos outros clipes. Na verdade, provavelmente nem é observável durante a reprodução normal. No entanto, em alguns casos, arquivos CBR podem exibir um problema mais grave; as gotas transitórias de qualidade mostradas na Figura 1.
Segment 3: as questões de qualidade transitória do CBR são muito mais concernentes a
quando você está codificando clipes desafiadores para parâmetros agressivos, a codificação do CBR pode causar problemas graves e transitórios de qualidade como os mostrados na Figura 1. A figura 6 é a tela de visualização de resultados da ferramenta Vqmt da Universidade de Moscou, que mostra as pontuações VQM (melhores pontuações inferiores) para dois arquivos. O arquivo em vermelho foi codificado usando 110% VBR restrito, enquanto o arquivo em azul é CBR. Os picos de dados em círculo mostram quadros, ou grupos de quadros, onde a qualidade do arquivo CBR sofreu dramaticamente em comparação com o arquivo VBR com 110% de restrições. O pior destes diferenciais é mostrado na Figura 1.
Figura 6. Os picos da taxa de dados na figura inferior mostram quadros, ou grupos de quadros, onde a qualidade do CBR é dramaticamente pior do que 110% limitada.
O que é interessante é que a taxa de bits de pico para o arquivo CBR realmente excede a do arquivo VBR. Você pode ver isso na Figura 7, que mostra Visualizador de taxa de dados analisando o arquivo CBR (no topo) e o arquivo VBR. Os painéis laterais à direita mostram as taxas de bits médias e de pico para ambos os ficheiros. A média é quase idêntica, enquanto a taxa de pico para o arquivo CBR é de 2623 kbps em comparação com 2539 kbps para o arquivo VBR com 110% de restrições (mas veja a nota 5 abaixo). Se a sua preocupação é a eficiência de streaming, atendendo as recomendações de variabilidade de 110% da Apple, ou ambas, VBR restringido atinge um resultado superior, ao mesmo tempo que proporciona uma qualidade geral superior e evitando as quedas de qualidade transitórias vistas no arquivo CBR.
Figura 7. Visualizador de taxa de dados a analisar o ficheiro CBR no topo e o ficheiro VBR a 110% no fundo.
pode assistir a um pequeno vídeo ilustrando e explicando estas questões imediatamente abaixo.
Este vídeo ilustra os problemas transitórios de qualidade por vezes vistos com o vídeo CBR. Melhor visto em ecrã completo (carregue no ícone no canto inferior direito dentro da janela de reprodução).talvez não surpreendentemente, os resultados do nosso inquérito revelaram que a restrição percentual mais comum utilizada pelos inquiridos era de 110% do objectivo, embora admitamos que, tal como com os resultados do inquérito em geral, o número de inquiridos é demasiado pequeno para ser estatisticamente significativo.
Figura 8. 110% do objectivo era a restrição mais comum.
Segmento 4: Muitos produtores ignoram a recomendação de variabilidade de 110% da Apple
Figura 9 mostra alguns dos resultados mais interessantes do inquérito. Ou seja, daqueles que produzem arquivos HLS, a maioria dos produtores ignoram inteiramente a recomendação da Apple. Curiosamente, a única pergunta demográfica feita na pesquisa foi o número de arquivos de vídeo produzidos a cada semana. Dez respondentes indicaram que estavam produzindo mais de 100 arquivos por semana; deste grupo, Cinco seguiram religiosamente a recomendação da Apple, cinco a ignoraram completamente.
Figura 9. A maioria dos produtores ignora a recomendação da Apple.
uma pergunta de acompanhamento interessante teria sido se os respondentes que ignoraram a restrição estavam distribuindo para dispositivos iOS através de um aplicativo. Infelizmente, não fizemos essa pergunta, deixando em aberto a preocupação de que a Apple rejeite aplicativos quando o vídeo jogado pelo aplicativo não atende a exigência de variabilidade de 110%.segmento 5: conclusões Em todos os testes, o CBR forneceu a menor qualidade global de todas as alternativas bitrate.2. Em todos os ensaios, com excepção de um, o VBR confinado forneceu a qualidade mais elevada
3. Com imagens desafiadoras e parâmetros de codificação agressivos, o vídeo codificado pelo CBR pode exibir quedas de qualidade transitórias, às vezes dramáticas.4. A produção de VBR com 110% de restrições parece evitar estas questões de qualidade sem introduzir uma variabilidade significativa da taxa de dados.5. Na maioria dos casos, a codificação com 200% de restrições VBR oferece a máxima qualidade.6. Muitos produtores estão ignorando a recomendação da Apple para produzir arquivos HLS com uma variabilidade máxima de 110% do fluxo.segmento 6: recomendações
1. Os produtores que estão actualmente a utilizar CBR para alguns, ou para todos os seus codificadores, devem considerar a possibilidade de mudar para VBR Restrito.110% VBR restringido deve evitar problemas transitórios de qualidade.
• 200% VBR Restrito irá fornecer a melhor qualidade absoluta.2. Os produtores que distribuem vídeo HLS através de um aplicativo devem provavelmente escolher 110% restringido VBR para evitar problemas de aprovação do App Store ao enviar inicialmente ou ao enviar atualizações. Os envios para o ambiente de trabalho baseado no navegador e para a reprodução móvel (por exemplo, sem aplicação) devem considerar o VBR com 200% de restrições.3. Estes resultados irão variar de acordo com o codec e a ferramenta de codificação. Como descrito abaixo, Nós produzimos todos os arquivos para estes testes em FFmpeg usando o codec x264. Temos observado os problemas transitórios de qualidade com arquivos CBR em outras ferramentas de codificação baseadas no x264, mas eles podem não aparecer em todas as ferramentas de codificação.4. Qualquer grande alteração de codificação, como as recomendadas aqui, não deve ser implementada sem testes para garantir a qualidade e jogabilidade.Apêndice I: como testamos
Aqui está uma breve descrição dos procedimentos utilizados para estes testes.1. Nós produzimos todos os arquivos usando FFmpeg em uma estação de trabalho HP Z840 executando Windows 7 Profissional com 64 GB de RAM.2. Os parâmetros gerais de codificação eram keyframes a cada 3 segundos e a predefinição veryslow.3. Nós produzimos arquivos CBR usando a mesma bitrate alvo, bitrate max, e uma configuração de buffer de um segundo de vídeo. Para 4 mbps metas, a seqüência foi:
-b:v 4000k
-maxrate 4000k
-bufsize 4000k
4. Nós produzimos arquivos VBR restritos ajustando a configuração da taxa máxima, e usando um valor de buffer de 1 segundo. Para 4 mbps alvo com 110% restrita CBR, a seqüência foi:
-b:v 4000k
-maxrate 4400k
-bufsize 4000k
tanto Para CBR e VBR, a codificação com um buffer maior melhoria de qualidade do stream, mas ele também aumentou o fluxo de variabilidade.5. Nós produzimos os arquivos CBR analisados nas figuras 6 e 7, e no vídeo, usando CBR 1-pass, o que aumentou a qualidade do arquivo em comparação com 2-pass (Ver Tabela 1), mas também aumentou a variabilidade do arquivo. A codificação com CBR 1-pass também produziu arquivos bem abaixo do alvo, então tivemos que codificar várias vezes a taxas cada vez mais altas para atender a taxa de dados alvo. Usando codificação CBR 2-pass fornece arquivos de qualidade ligeiramente inferior, mas também maior precisão da taxa de dados e reduzida variabilidade de fluxo.6. Verificámos que a taxa de dados alvo de todos os ficheiros estava dentro de 5% do alvo.7. Nós produzimos todas as pontuações de qualidade incluídas acima usando a Ferramenta de medição de qualidade de vídeo da Universidade de Moscou.