Как получить кодировщик GUID, если у меня есть указатель на IMFTransform? - PullRequest
1 голос
/ 01 октября 2019

У меня есть указатель на IMFTransform * pEncoder. Как я могу получить кодировщик GUID из этого указателя, если IMFTransform :: GetAttributes возвращает E_NOTIMPL?

1 Ответ

1 голос
/ 01 октября 2019

Преобразования Media Foundation не должны раскрывать их CLSID, они даже не должны иметь их вообще. Они даже не должны быть инстанцируемыми через CoCreateInstance. Более того, даже для стандартных кодировщиков Media Foundation предлагает перечисление и объекты активации, а не прямое создание экземпляров из CLSID.

Если у вас есть указатель интерфейса MFT кодировщика, лучше всего проверить атрибуты, а также запросить один из них. из известных IPersistXxx интерфейсов - есть шанс, но не гарантия, что вы можете захватить CLSID.

...