Cameron Gutman e8113f0e66 Use the spare field in the encrypted video header as the frame number
This allows us to skip decrypting extra FEC shards after a frame was reassembled.
2024-01-24 18:36:37 -06:00
2023-09-12 21:46:46 -05:00
2021-04-29 17:40:47 -05:00
2020-12-05 23:20:02 -06:00
2016-03-06 15:29:02 -08:00
2017-05-10 10:13:06 -07:00
2018-12-03 21:37:11 -08:00

Moonlight Streaming Core Library

Moonlight-common-c contains the core GameStream client code shared between Moonlight clients, including Moonlight PC, Moonlight Android, Moonlight iOS, and Moonlight Chrome.

If you are implementing your own Moonlight game streaming client that can use a C library, you probably want the code here.

Note to Developers

Moonlight-common-c requires the specific version of ENet that is bundled as a submodule. This version has changes required for IPv6 compatibility and retransmission reliability, among other things. These are breaking API/ABI changes which make Moonlight-common-c incompatible with other versions of the ENet library. Attempting to runtime link to another libenet library will cause your client to crash when connecting to recent versions of GeForce Experience.

Description
Core implementation of Nvidia's GameStream protocol
Readme 1.9 MiB
Languages
C 99.4%
CMake 0.6%