FFmpeg отключает Window Desktop Manager в моем приложении

Я визуализирую видео с помощью DirectShow и FFmpeg в своем приложении. FFmpeg используется только для декодирования кадров MPEG4 / Part2 (настраиваемый фильтр декодера). Мое приложение не воспроизводит звук (только видео).

Когда я блокирую свой компьютер (Win7 Pro 64bit) с помощью Win + L, а затем разблокирую его, Windows выдает мне следующее сообщение:

Цветовая схема изменена

Следующая программа выполнила действие, требующее от Windows временного изменения цветовой схемы на Windows 7 Basic.

... имя приложения, издатель, идентификатор ...

Windows автоматически изменит цветовую схему обратно на Windows Aero, когда эта программа или другие программы, выполняющие аналогичные действия, больше не работают.

У меня есть возможность использовать другой настраиваемый фильтр-декодер, который был разработан без FFmpeg, и с его помощью Windows не показывает мне такие сообщения.

Я запустил средство устранения неполадок Aero, которое обнаружило, что диспетчер окон рабочего стола отключен.

Мой главный вопрос: Почему появляется это сообщение после разблокировки?

P.S. Я использую декодер ffmpeg mpeg4, sws_scale от RGB24 до YUV420p. FFmpeg собирался только с декодером / кодировщиком mpeg4, все остальное было отключено.


person Sergey    schedule 03.04.2015    source источник
comment
Эта проблема не относится к FFmpeg (надеюсь), проблема появляется, даже если я отключу связанный с FFmpeg код и библиотеки. Эта проблема относится к рендерингу видео, используемому в графе фильтра DirectShow. Я использую CLSID_VideoRenderer, но проблема не возникает с FFmpeg и CLSID_MixingVideoRender9 / CLSID_EnhancedVideoRenderer.   -  person Sergey    schedule 06.04.2015


Ответы (1)


Проблема была вызвана предоставлением отрицательной высоты (растровое изображение сверху вниз) в bitmapinfoheader при согласовании типов мультимедиа. Я изменил высоту на положительную (растровое изображение снизу вверх) в моем декодере, и цветовая схема Windows 7 больше не затрагивается.

person Sergey    schedule 07.04.2015