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.