Windows Media Player Control (winforms) - захватить текущий кадр в виде растрового изображения?

Я использую элемент управления Windows Media Player в приложении winforms, я хотел бы периодически захватывать воспроизводимый кадр в растровое изображение и сохранять его локально. Отображает ли WMP текущий воспроизводимый кадр? Конечно, библиотека WMP должна отображать текущий кадр, но я искал его повсюду безрезультатно ... пожалуйста, помогите.

p.s. Я ищу более элегантный подход, чем хак-метод захвата экрана и его обрезки.


person Mikos    schedule 12.04.2011    source источник
comment
Теперь они могут намеренно выставить это как способ навязать DRM. Если бы вы могли захватить кадр, вы могли бы постоянно продвигать видео по 1 кадру за раз и захватывать все кадры, эффективно копируя видео. Вот как некоторые оригинальные копировальные устройства DVD работали с использованием фреймграбберов. Аудио может быть захвачено путем записи выхода звуковой карты. Как вы понимаете, у этих старых копировальных аппаратов было много проблем с несинхронизацией аудио и видео.   -  person Kibbee    schedule 12.04.2011
comment
Есть ли способ извлечь рамку? Видео, над которым я работаю, не имеет DRM.   -  person Mikos    schedule 13.04.2011
comment
Я не уверен, поскольку не использовал его, я просто давал небольшой урок истории и объяснял, почему они могут просто явно не включать эту функцию. Даже снимок экрана иногда дает странные результаты при воспроизведении видео в зависимости от типа видеокарты, драйвера и используемого метода рендеринга.   -  person Kibbee    schedule 13.04.2011
comment
Хорошо спасибо. Должен быть способ получить рамку...   -  person Mikos    schedule 13.04.2011


Ответы (1)


http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/994554ec-219e-4090-9ddf-befd51bd4912

Ответ заключается в использовании DrawingVisual, DrawingConext и RenderTargetBitmap. Некоторое обсуждение этого выше.

person Sugrue    schedule 04.10.2011