2016-02-23 3 views
3

OpenCV 2.4 VideoWritercouldn't save video files larger than 2GB, since it only accepts .avi files, Мне интересно, если это все еще имеет место в OpenCV 3.0 или если он может сохранять другие видеофайлы, которые не имеют этих ограничений.У OpenCV 3.0 все еще есть ограничения на размер VideoWriter?

Я попытался найти любую документацию, указывающую на ограничение в 2 ГБ или примечание к выпуску, в котором говорится, что он способен обрабатывать большие файлы, но я не могу их найти.

ответ

3

Даже несмотря на то OpenCV 3.0-beta documentation состояний иначе, OpenCV 3,0-х VideoWriter кажется обрабатывать другие форматы файлов, такие как mkv, как показано на this issue.

Я адаптировал код из вышеуказанной проблемы, чтобы создать видеоролик 4GB mkv (4096 кадров случайного 2048x2048).

То, чтобы быть в курсе, что размер изображения должен быть передан как width затем height в VideoWriter тогда как NumPy array должен быть инициализирован с height затем width. VideoWriter не будет работать иначе.

Вам также потребуется недавний источник OpenCV 3.0 для обработки несжатых потоков.

+0

Они просто не удалили старую документацию, это тот же старый текст из 2.4, если я правильно помню. Я сомневаюсь, что сейчас я могу сохранить видео размером более 2 ГБ или нет. – mFeinstein

+0

'6.6G test_xvid.mkv', и он отлично выглядит в mplayer (2048x2048 случайных пикселей от numpy) – pistache

+0

Интересно! Жаль, что они не обновляют примеры и документы ... Мне придется ждать больше, я думаю, мой источник видео не квадрат. – mFeinstein

1

Это не ограничение OpenCV. Размер файла AVI не может превышать 2 ГБ из-за ограничений формата (размер знака 4-байтного размера имеет максимальное значение 2,147,483,647).
Можно ли упаковать видео в другой контейнер с OpenCV (mkv и т. Д.)?

the RIFF header has the following form:
'RIFF' FileSize FileType (данные)
где 'RIFF' является буквальным FourCC-код 'RIFF',
FileSize является значением 4-байтовое давая размер данных в файле,
и fileType - это FOURCC, который идентифицирует конкретный тип файла.

+1

Да, я отредактирую свой вопрос, чтобы быть более ясным об этом .... Я хочу сказать, что OpenCV использует только .avi, а .avi имеет ограничение в 2 ГБ, поэтому это дает OpenCV ограничение по наследству ... Поэтому вопрос должен быть, если OpenCV 3.0 принимает другие форматы или все еще просто .avi – mFeinstein

Смежные вопросы