C# Streaming screen over Network

2.2k views Asked by At

I'm looking for a framework/toolkit/component or a way, to stream the screen or a specific window/control (Wpf) over the Network. Here are some specifications:

  • stream the screen or a specific window/control (Wpf) over local network
  • consistently good stream
  • it should be performant
  • only the video, no audio etc. needed
  • no height fps needed
  • no specification, how to play the video (Browser, vlc, ...)
  • the cursor should not flicker (mostly result of the screenshots)
  • easy to handle
  • It should not cost 4000$ for streaming a screen ...

There are a lot of similar questions like this one, but they are nearly 10 years old. Most of them are answered with: Take screenshots, but this let flicker the cursor and costs cpu and I think there are better ways today.

What's already done

  • I have already tested a self-implemented variant with screenshots described here with an mjpeg over http.
  • I have also tried a variant with vlc.dotnet, but it seems, that it takes also screenshots and isn't very performant.
  • I have also searched for payed versions like FlashBack and zdsoft.
  • I have also a looked on NVIDIAs ShadowPlay and Shield Stream.

The question

Is there any framework/toolkit/component that streams/shares a desktop or a part of it performantly over a local Network? Is there any other modern way to do that? It would be like Microsoft Teams Desktop sharing.

I'm new to this, so I hope you can help me to get this.

1

There are 1 answers

0
RCP161 On BEST ANSWER

I ended up it with a VNC Nuget like @bradbury9 has proposed. It has best performance.