Como posso saber se um vídeo tem uma taxa de quadros variável?

Como posso saber se um vídeo tem uma taxa de quadros variável?

Como posso saber se um vídeo tem uma taxa de quadros variável? Não preciso fazer isso programaticamente, só não quero instalar algum programa com centenas de megabytes; por exemplo, se eu pudesse fazer isso com o VLC Media Player, seria perfeito.

Responder1

O FFmpeg possui um filtro vfrdet para essa finalidade.

ffmpeg -i in -vf vfrdet -an -f null -

No log, você verá uma leitura do formulário,

[Parsed_vfrdet_0 @ 0000000003d8fec0] VFR:0.833333 (50/10) min: 23 max: 291)

Um valor diferente de zero para VFR indica um fluxo VFR. O primeiro valor entre colchetes é o número de quadros com duração diferente da duração esperada implícita na taxa de quadros detectada do fluxo. O segundo valor é o número de frames com a duração esperada. O valor VFR é a razão entre o primeiro número e a soma de ambos.

Algumas advertências: um valor muito baixo ou muito alto indica alguns quadros errantes com duração fora do padrão, geralmente o primeiro e/ou último quadro. Estes podem ser considerados CFR para a maioria dos propósitos. Um valor em torno de 0,50 indica que o fluxo tem uma taxa de quadros e/ou base de tempo para a qual a duração do quadro nocional não pode ser expressa exatamente na base de tempo do fluxo, portanto, o aplicativo que gerou o arquivo oscilou a duração, por exemplo, se um fluxo tiver um fps de 6 e uma base de tempo de 1/100, então os carimbos de data e hora ideais seriam 0, 16,667, 33,334, 50,000, 66,667, 83,333, 100,000 para o primeiro segundo de vídeo, mas os carimbos de data e hora são inteiros, então o muxer pode armazenar 0, 16, 34, 50, 67, 83, 100. Isso pode aparecer como um fluxo com valor VFR de 0,5

Responder2

Basta usar ffprobe

ffprobe -v quiet -print_format json -show_streams input

E verifique o avg_frame_rateparâmetro do stream de vídeo desejado. Se o valor deste parâmetro for uma fração como esta

"avg_frame_rate": "1205285219/50270287"

com um denominador diferente de 1, o arquivo de vídeo terá uma taxa de quadros variável.

Se o valor for assim

"avg_frame_rate": "25/1"

certifique-se de que o stream tenha uma taxa de quadros constante.

Responder3

Pode-se usarInformações de mídia(5 MB, plataforma cruzada, tem versão portátil no Windows, grátis) para saber se um vídeo tem taxa de quadros variável:

insira a descrição da imagem aqui

informação relacionada