Directshow видео рендеринга в двух окнах - PullRequest
0 голосов
/ 07 июня 2019

Я использую проигрыватель DirectShow, который отображается на панели с помощью C ++ Builder.Я хочу дублировать то, что играет, на второй монитор.Поддерживает ли directshow какие-либо события, чтобы сказать, когда кадр был визуализирован рендерером?

Я использую стандартный пример проигрывателя Microsoft, который выбирает первый доступный рендерер, который будет работать для AVI-файла EVR, VRM9 thisиграет и делает хорошо.Я хотел бы скопировать визуализированные изображения по мере их обновления (максимум 50 кадров в секунду или 60 кадров в секунду) и поместить их на второй экран, на котором нет всех других связанных кнопок и панелей.

1 Ответ

1 голос
/ 17 июня 2019

Вам необходимо настроить EVR или VMR9 для использования режима рендеринга без окон и реализовать Custom Presenter для EVR , который будет отвечать за рендеринг каждого полученного кадра (текстуры).Затем вы сможете визуализировать эту текстуру в отдельных окнах.

Здесь приведена ссылка на реализацию Custom Presenter для VMR9 , но IMO EVR лучше использовать, особенно вВыиграй 7 и выше.

...