Фонд Windows Media использует необработанное изображение для кодирования видео

Я работаю над проектом, который требует от меня записи веб-камеры, микрофона и экрана. У меня есть запись с веб-камеры, звук находится в стадии разработки, и я наткнулся на оболочка CMonitor (в который я внес некоторые незначительные изменения), чтобы получить RGB-изображения рабочего стола на указанном мониторе (если есть несколько мониторов).

Как мне передать необработанные кадры RGB в Windows Media Foundation для кодирования в видеофайл? Моя текущая кодировка видео использует слегка измененную версию этот образец msdn, если его легче изменить, чем написать новый обработчик класса.

Или, возможно, есть какой-то способ записи экрана, о котором я не знаю (что возможно, я не настолько хорош в программировании win32)?


person OzBarry    schedule 16.10.2012    source источник


Ответы (2)


В примерах Windows SDK нашел PushSource, который делает это.

person OzBarry    schedule 22.10.2012
comment
Это от DirectShow, не Media Foundation, верно? - person Roman R.; 22.10.2012
comment
Да, я выбросил материал из медиафонда, возможно, стоило упомянуть об этом. - person OzBarry; 22.10.2012

Проверьте API дублирования рабочего стола для захвата рабочего стола. Media Foundation предлагает два решения для кодирования: MF Sink Writer для простого кодирования и Media Session для более гибкого управления медиаконвейером. Сначала прочтите эту страницу обзора.

person Ivellios    schedule 26.07.2016