Почему opencv video reading fps отличается от video encrypted fps?

#python #opencv #webcam #frame-rate

#python #opencv #Вебкам #частота кадров

Вопрос:

В OpenCV с Python, когда fps веб-камеры и видеофайла в каталоге одинаковы, почему видеофайл воспроизводится в ускоренной перемотке вперед, тогда как веб-камера продолжает показывать кадры с нормальной скоростью? Какую роль здесь играет функция cv2.waitKey()

Ответ №1:

Fps видеофайла означает, как он был зашифрован, сколько кадров содержится в секунду, как видно из названия. Например, при извлечении 1 секунды этого видео будет получено только такое количество кадров (изображений).

Соответствующий fps веб-камеры означает, сколько кадров эта камера может захватить за секунду. Если сохранить в видеофайл, это будет означать, сколько кадров содержится в каждом 1-секундном интервале.

Однако здесь есть третья (вероятно, скрытая для вас) концепция. Как быстро opencv может считывать видеофайлы. Обычно и для типичных разрешений на современном компьютере этот fps больше, чем фактическое видео. Итак, ваш компьютер, похоже, воспроизводит видео в режиме быстрой перемотки вперед, потому что он считывает (и отображает) кадры быстрее, чем fps видеофайла.

Теоретически, вы можете рассчитать задержку, которую вы должны импортировать в воспроизведение видео, чтобы заставить его отображаться с нормальной скоростью. Я не уверен, насколько легко вы можете это сделать (научным способом, а не методом проб и ошибок).

Надеюсь, это прояснит проблему.

Комментарии:

1. Правильно, понял. Спасибо!

2. @tery1315 если ответ охватывает, вы можете пометить его как решение проблемы, чтобы другие знали, что этот вопрос был решен / дан ответ и т.д.