У нас есть требование, чтобы пользователи могли записывать видео нашего 3D-приложения. Я уже могу взять отдельные отрендеренные кадры, поэтому этот вопрос конкретно о том, как записать кадры в видеофайл.
Я не думаю, что запись каждого фрейма в виде отдельного файла и последующей обработки - приемлемый вариант.
Я могу посмотреть варианты записи в простой видеофайл для последующей оптимизации / кодирования или записи непосредственно в разумно кодированный формат.
FFmpeg был предложен в другом посте, но он выглядит немного пугающим для меня. Это лучший вариант, если не то, что можно предложить? Мы можем работать с LGPL, но не с полной лицензией GPL.
Мы работаем в Windows (Win32, а не MFC) в C ++. Пример / псевдокод с вашей рекомендуемой библиотекой очень ценится ... в основном после того, как сделать 3 функции:
startRecording()
выполняет необходимую инициализацию
recordFrame()
берет указатель на данные кадра и кодирует его, в идеале с данными синхронизации
endRecording()
завершает работу с видеофайлом, выключает систему видео и т. Д.