microsoft / MixedReality-WebRTC

MixedReality-WebRTC is a collection of components to help mixed reality app developers integrate audio and video real-time communication into their application and improve their collaborative experience
https://microsoft.github.io/MixedReality-WebRTC/
MIT License
913 stars 283 forks source link

Hardware encoding support? (Nvidia / AMD) #787

Open ZeoWorks opened 3 years ago

ZeoWorks commented 3 years ago

Hello! I've looked everywhere and couldn't find any information regarding what hardware encoders MixedReality-WebRTC supports. Does this support both the nvidia nvenc codec and AMD's AMF codec? Thanks.

spacecheeserocks commented 3 years ago

I haven't seen this documented anywhere, but from my own usage, the UWP library does appear to use nvenc to process H264 video (just from inspecting loaded libraries/call stacks). I'm not sure about AMD since I have never debugged the library with an AMD GPU.

The UWP library appears to use MediaFoundation to handle video streams, which in turn, appears to use hardware encoding/decoding where available.

I don't know if any hardware encoding or decoding is performed when using VP8.