Estou tentando transcodificar mp4 para o formato webm sem perdas. Eu tentei duas maneiras de fazer isso.
Para isso, extraí vídeo mp4 para sequências de imagens (png). Em seguida, converti a sequência de imagens (sem alterar nenhum quadro) em vídeo webm com um sinalizador sem perdas. Mas, quando extraí o vídeo webm para sequências de imagens e comparei com as imagens que extraí do vídeo mp4, percebi que os valores PSNR não eram infinitos. Ele muda entre cerca de 53-55 dB.
Por outro lado, transcodifiquei diretamente mp4 para webm com um sinalizador sem perdas. Em seguida, extraí sequências de imagens do formato mp4 e webm e comparei os valores PSNR. Desta vez percebi que os valores PSNR são infinitos.
A codificação de sequências de imagens para vídeo webm com sinalizador sem perdas não é realmente sem perdas. Isso é verdade ou estou fazendo algo errado?
Responder1
O vídeo MP4 usará alguma variante do espaço de cores YUV, assim como o VP9. PNG armazena pixels RGB. Portanto, seu pipeline MP4 -> PNG -> VP9 tem duas conversões de espaço de cores, ou seja, YUV -> RGB -> YUV. Essesconversõesnão são matematicamente isentos de perdas.