Codificação de vídeo: quanto aumenta o tamanho do arquivo de vídeo com fps?

6

Dado que os próximos blockbusters de, e. Peter Jackson (The Hobbit) e James Cameron (Avatar 2) serão filmados com uma taxa de quadros de 48 fps (ou até mais) - ou seja, mais do que os habituais 24 fps - eu estava pensando: Quanto o tamanho do arquivo do vídeo codificado aumenta com o fps ?

Com o aumento de fps, a diferença quadro a quadro torna-se menor e menor . Então, suponho que o tamanho do arquivo cresça menos que linear. Isso é verdade? Existe uma regra geral? Ou alguém tem tamanhos de arquivo de exemplo do mesmo vídeo codificado em 24, 48, 60 e 96 fps (com um codec de vídeo moderno)?

(Pergunta secundária: Quanto aumenta o tamanho do arquivo de vídeo com tamanhos de imagem além de Full HD - por exemplo, de Full HD para 4k?)

    
por knweiss 14.05.2011 / 21:10

3 respostas

4

A única coisa que afeta o tamanho do arquivo é a taxa de bits. Você pode fazer 1fps ou 120fps, e se sua taxa de bits for 1000Mbs, o tamanho do arquivo será exatamente o mesmo. Por definição, a taxa de bits define o tamanho do arquivo. Sinta-se à vontade para testar - tire um vídeo e imprima em 10 dimensões diferentes e 10 fps diferentes, e você terá arquivos idênticos (ou com diferença insignificante).

Esta é uma simplificação, no entanto, se você quiser discutir o tamanho do arquivo versus a qualidade, então é uma discussão totalmente diferente.

    
por 14.05.2011 / 23:55
3

Vou tentar a abordagem teórica. Eu adoraria ver alguns exemplos do mundo real que provariam ou refutariam minha teoria. Boa pergunta! Se você tiver algum comentário ou encontrar algumas falhas, sinta-se à vontade para comentar.

Para qualquer codificador atual (vamos usar o exemplo MPEG-4 / AVC / h.264), a taxa de quadros não importa tanto quanto você pensa. Vamos supor que não há controle de taxa e cada imagem é codificada com o mesmo QP de base (parâmetro de quantização).

Você está certo com o seguinte: A diferença de movimento (como definido em % 5B1% 5D.pdf "> ITU-R P.910 , boa leitura) entre dois quadros de um vídeo de 48 fps será menor do que para o mesmo vídeo em 24 fps. Isso se deve ao fato de que os quadros não diferem tanto um do outro. Note que todo o movimento temporal não aumenta. No final, um objeto se move do ponto A para B, então seu vetor de movimento terá o mesmo comprimento, não importa quantos quadros por segundo.

Como o codificador procura a diferença entre dois (ou mais) quadros e codifica apenas os valores residuais, isso significa que terá que codificar menos residual por imagem. Em média, isso será metade do residual. Então você está certo com isso. (Não devemos esquecer que apenas metade do residual não significa metade dos dados necessários para armazená-lo. Depende da codificação algorítmica implementada.)

Então, novamente, você tem o dobro de imagens por segundo, o que significa que - em média - as informações codificadas dobra novamente.

Para resumir, nada muda muito nesse lado. O codificador fará o seu melhor trabalho para codificar todo o movimento no vídeo, que em resumo é o mesmo (apenas em passos menores, se você sabe o que quero dizer). A única sobrecarga que temos que adicionar é a sobrecarga de pequenos resíduos que não podem ser codificados aritmeticamente de uma maneira eficiente.

O acima só se aplica a imagens B ou P, que dependem de outras. No entanto, temos que inserir uma imagem intra-codificada de vez em quando, o que não depende de nenhuma outra imagem. Se esta taxa de imagens intra-codificadas não aumentar, poderemos assumir um crescimento linear no tamanho do arquivo, talvez um pouco mais.

No entanto, se você diminuir a distância de imagens intra-codificadas para compensar possíveis erros de perda de pacotes ou bitstream, você terá mais sobrecarga e, portanto, o aumento será mais que linear , não muito , mas provavelmente perceptível.

    
por 14.05.2011 / 23:24
0

Isso realmente depende do tipo de codificação. Se você capturar o vídeo no formato RAW, então sim: mais imagens exigem mais armazenamento de forma linear.

Se você codificar as imagens capturadas diretamente em algum formato compactado, tudo dependerá de como esse codec funciona.

Em relação ao tamanho dos arquivos, isso é determinado por bitrate × duration . Portanto, a taxa de quadros não está diretamente envolvida. Para alcançar a mesma qualidade , como a do mesmo vídeo codificado em uma taxa de quadros mais baixa, você provavelmente terá que aumentar a taxa de bits, embora. Por quanto - mais uma vez - depende do codec que você está usando.

    
por 03.01.2015 / 03:15