How does sunshine capture and stream the desktop

Viewed 318

I am looking to understand the Sunshine project by Loki which works with moonlight to stream a desktop with very low latency based on Nvidia's GameStream.

I looked at the source code on GitHub, but couldn't figure out how the screen is captured and the stream is converted to an RTSP packet. I think they use ffmpeg to capture the screen.

I did find the RTSP packet definition here

Could someone explain how this works? I am trying to understand this on a low level, since I want to implement a similar program as part of a project later(probably in C++ itself).

I don't have much experience here, but am looking to get my hands dirty! :)

Hope my question is clear and any help to understand this or other resources I could take a look at would be greatly appreciated.

0 Answers
Related