Я работаю над приложением UWP на C++, используя библиотеку Microsoft Media Foundation. Мое приложение предназначено для создания виртуальной камеры, которая может использовать видеофайл в качестве источника видео.
Создание виртуальной камеры:
winrt::check_hresult(MFCreateVirtualCamera(
MFVirtualCameraType_SoftwareCameraSource,
MFVirtualCameraLifetime_Session,
MFVirtualCameraAccess_CurrentUser,
cameraName,
L"{7B89B92E-FE71-42D0-8A41-E137D06EA184}",
nullptr,
0,
pVirtualCamera.put()
));
< /code>
Я получаю ошибку «класс, не зарегистрированный», когда пытаюсь запустить виртуальную камеру, созданную выше. Я понимаю, что это из -за вышеупомянутого CLSID, не зарегистрированного в реестре. Итак, как и где именно в реестре я зарегистрирует свой CLSID? Получите так: < /p>
winrt::com_ptr pMediaSource;
pVirtualCamera->GetMediaSource(pMediaSource.put());
< /code>
Итак, как мне заменить его новым MediaSource, который использует видеофайл в качестве фактического источника? Кроме того, пожалуйста, упомяните, что я что -то упускаю, и есть совершенно другой способ сделать это.
Подробнее здесь: https://stackoverflow.com/questions/777 ... ere-should