Как использовать внутрипроцессный IMFTransform с WinRT MediaPlayer :: AddVideoEffect через activatableClassId - PullRequest
1 голос
/ 08 июля 2020

WinRT Windows :: Media :: Playback :: MediaPlayer поддерживает добавление видео и аудио эффектов (как и IMFMediaEngine ), однако я не могу найти способ использовать существующие IMFTransform, которые я уже использую с IMFMediaEngineEx :: InsertVideoEffect () in MediaPlayer :: AddVideoEffect ()

MediaPlayer :: AddVideoEffect () принимает только строку для "activatableClassId", тогда как IMFMediaEngineEx :: InsertVideoEffect () позволяет мне напрямую передавать указатель на мой локальный IMFTransform. Я не хочу регистрировать DLL в системе, чтобы класс можно было активировать, я просто хочу, чтобы IMFTransform регистрировался локально в процессе, чтобы его можно было обнаружить с помощью classId.

Я искал в Интернете, но информации очень мало. Все, что я нашел, это поток Microsoft , старая статья, показывающая CGreyScale MFT с использованием WRL, и этот полезный репозиторий , который использует appxmanifest для регистрации классов (а не то, что Я хочу это сделать. Единственное, что я смог найти, это RoRegisterActivationFactories (), но информации об этом очень мало, поэтому я не уверен.

Кто-нибудь знает, как это сделать?

Спасибо,

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...