Foi publicado o lançamento da biblioteca SVT-AV1 1.5 (Scalable Video Technology AV1) com implementações do codificador e decodificador do formato de codificação de vídeo AV1, para aceleração do qual são utilizados os meios de computação paralela de hardware presentes nas modernas CPUs Intel. O projeto foi criado pela Intel em parceria com a Netflix com o objetivo de atingir um nível de desempenho adequado para transcodificação de vídeo on-the-fly e uso em serviços de vídeo sob demanda (VOD). Atualmente, o desenvolvimento está sendo realizado sob os auspícios da Open Media Alliance (AOMedia), que supervisiona o desenvolvimento do formato de codificação de vídeo AV1. Anteriormente, o projeto foi desenvolvido no âmbito do projeto OpenVisualCloud, que também desenvolve os codificadores SVT-HEVC e SVT-VP9. O código é distribuído sob a licença BSD.
Para usar o SVT-AV1, é necessário um processador x86_64 com suporte para instruções AVX2. A codificação de fluxos AV10 de 1 bits com qualidade 4K requer 48 GB de RAM, 1080p - 16 GB, 720p - 8 GB, 480p - 4 GB. Devido à complexidade dos algoritmos utilizados no AV1, a codificação deste formato requer significativamente mais recursos do que outros formatos, o que não permite o uso do codificador AV1 padrão para transcodificação em tempo real. Por exemplo, o codificador de estoque do projeto AV1 requer 5721, 5869 e 658 vezes mais cálculos em comparação com os codificadores x264 (perfil "principal"), x264 (perfil "alto") e libvpx-vp9.
Entre as mudanças na nova versão do SVT-AV1:
- Os compromissos de qualidade/velocidade foram otimizados, como resultado dos presets M1-M5 serem acelerados em 15-30% e os presets M6-M13 em 1-3%.
- Adicionada uma nova predefinição de MR (--preset -1) que é considerada como fornecendo qualidade de referência.
- A operação dos presets M8-M13 no modo de codificação de baixa latência foi otimizada.
- Adicionado suporte para seleção dinâmica de estruturas hierárquicas de previsão de alterações "miniGOP" (Grupo de Imagens) para configurações de acesso aleatório, habilitadas por padrão em predefinições até M9 inclusive. Também é possível especificar um tamanho inicial menor do miniGOP para acelerar o pré-carregamento.
- É fornecida a capacidade de alterar os fatores de escala lambda na linha de comando.
- O plugin para gstreamer foi reescrito.
- Adicionada a capacidade de pular um certo número de quadros antes de iniciar a codificação.
- Foi realizada uma limpeza significativa de variáveis não utilizadas e funções estáticas, e os comentários no código foram reformatados. O tamanho dos nomes das variáveis foi reduzido para facilitar a leitura do código.
Fonte: opennet.ru