Какая польза от переопределения статических методов. Вы не можете вызвать статические методы через экземпляр.
MyClass.static1()
MySubClass.static1() // If you overrode, you have to call it through MySubClass anyway.
EDIT: Похоже, что через неудачный надзор в дизайне языка вы можете вызвать статические методы через экземпляр. Как правило, никто этого не делает. Мой плохой.
Экземпляры MFT [по крайней мере на стадии создания экземпляров] не зависят от устройства. Если в вашей системе два видеоадаптера с поддержкой NVENC, кодировщик MFT будет одинаковым с одинаковым CLSID.
Вы указываете графический процессор для использования с помощью сообщения MFT_MESSAGE_SET_D3D_MANAGER
, который содержит обертку устройства D3D и зависит от конкретного графического процессора. Здесь вы выбираете графический процессор для кодера.
Кроме того, FYI NVIDIA H.264 Encoder MFT определенно не может корректно работать с чем-либо, кроме основного видеоадаптера (включая, но не ограничиваясь этим этот ), если не везде, по крайней мере в большом количестве системы там. Насколько я понимаю, это ошибка Nvidia, которую они должны исправить в своей реализации MFT.