Sunguk Lee ba27e97698 Add vita environment (#22)
* vita: initial port

* vita: implement events, enable input thread

* vita: gethostbyname

* vita: Enable audio

* vita: Fix thread crash on discoonect process

* vita: Handle cannot create thread

* vita: now use newlib's socket apis

* vita: Refactoring for moonlight-stream/moonlight-common-c

* Fix review things

https://github.com/moonlight-stream/moonlight-common-c/pull/22#pullrequestreview-2436093

- vita may not support IPv6; so add LC_ASSERT them.
- define inet_ntop to sceNetInetNtop
- guard about failure of sceKernelCreateMutex or sceKernelCreateCond
- remove meanless macros

https://github.com/moonlight-stream/moonlight-common-c/pull/22#pullrequestreview-2444677

- !*mutex to *mutex
- remove useless LC_ASSERT then change to use inet_ntop
  in vita system not defined `sockaddr_in6`, so just use `sockaddr_in` instead this.

https://github.com/moonlight-stream/moonlight-common-c/pull/22#pullrequestreview-2445642

- define sin6_addr
2016-10-05 16:43:33 -07:00
2016-10-05 16:43:33 -07:00
2016-03-06 15:29:02 -08:00

#Moonlight

Moonlight-common-c contains common C code between Moonlight clients, including Moonlight Chrome and Moonlight iOS.

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

It implements the actual GameStream protocol.

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 2.1 MiB
Languages
C 99.4%
CMake 0.6%