Как получить фактическую информацию о времени видео, записанного с переменной частотой кадров?

Как получить фактическую информацию о времени видео, записанного с переменной частотой кадров? Файл в формате.avi.

Когда я пытаюсь получить начальную частоту кадров и использовать ее для получения времени, я получаю неверную информацию о времени.

Есть ли разница в частоте кадров из-за методов сжатия видео? Если так, то как убрать вариант с видео.

1 ответ

AVI является контейнером с фиксированной частотой кадров, вы можете прочитать скорость из заголовка файла (например, см. AVIFILEINFO::dwRateдля деталей). Если некоторые кадры отброшены и на самом деле отсутствуют в файле - это кадры нулевой длины. Единственный способ прочитать эту информацию - это прочитать раздел индекса файла или выполнить потоковую передачу через файл и проверить кадры нулевой длины и ненулевой длины.

Другие вопросы по тегам