есть много вопросов относительно opencv + H.264, но ни один из них не дал подробного объяснения.
Я использую openh264 (openh264-1.4.0-win32msvc.dll) вместе с opencv 3.1 (настраиваемая сборка с cmake с включенным ffmpeg) в Visual Studio я хотел сохранить видео, поступающее с веб-камеры, в формате mp4 со сжатием H.264
VideoWriter write = VideoWriter ("D: /movie.mp4", CV_FOURCC ('H', '2', '6', '4'), 10.0, cv :: Size (192, 144), true);
перед использованием openh264 в окне консоли я увидел предупреждающее сообщение «Не удалось загрузить библиотеку openh264: openh264-1.4.0-win32msvc.dll, пожалуйста, проверьте свою среду и / или загрузите отсюда: https://github.com/cisco/openh264/Release" (также видео не было сохранено)
поэтому я загрузил dll и теперь храню в папке с моим программным файлом (exe), когда я запускаю программу, я вижу другую ошибку "[OpenH264] this = 0x0DE312C0, предупреждение: bEnabledFrameSkip = 0, битрейт невозможно контролировать для RC_QUALITY_MODE и RC_TIMESTAMP_MODE без включения пропуска кадра "(теперь видео сохраняется, но размер очень высокий! скорость передачи данных составляет около 1200 Кбит / с)
для меня единственная цель использования h264 - уменьшить размер файла ... я думаю, что мне, возможно, придется самому собрать openh264 с некоторыми изменениями, чтобы удалить эту ошибку, может ли кто-нибудь посоветовать мне, как? или подскажите, есть ли способ как-то снизить битрейт с помощью кода?
PS: Я попытался дать -1 вместо CV_FOURCC (), в моей системе появилось окно «установленные кодеки», я не смог найти h264, x264 или h264vfw, хотя я установил различные пакеты кодеков и h264 из здесь
С уважением