Cameron Gutman
8a2b24e57a
Fix frame queue corruption when trying to skip a frame with no buffers
2017-05-07 20:39:36 -07:00
Cameron Gutman
1439d53619
Remove unused function
2017-05-07 13:17:32 -07:00
Cameron Gutman
998650e53a
Merge pull request #26 from d3m3vilurr/fix-build-openssl-1.0.x
...
Remove defines of EVP_CIPHER_CTX_new and EVP_CIPHER_CTX_free
2017-05-06 16:08:45 -07:00
Cameron Gutman
1eed2a65cb
Merge pull request #28 from d3m3vilurr/fix-crash-on-vita
...
vita: Increate thread stack size
2017-05-06 16:05:06 -07:00
Cameron Gutman
e7f8fd165e
Fix unintentionally crashing the streamer when requesting FEC with packets sizes over 1024
2017-05-06 16:01:35 -07:00
Cameron Gutman
ff4dbbb26d
Fix compilation errors, warnings, and cosmetic stuff
2017-05-06 15:43:43 -07:00
Sunguk Lee
5ab67fb864
vita: Increate thread stack size
...
readsolomon require large stack memory for the [decode][1]
lazy calucation: 0x105f9
- dataDecodeMatrix: 255 * 255
- subShards: 255 * 4
- outputs: 255 * 4
Fixes #27
[1]: https://github.com/moonlight-stream/moonlight-common-c/blob/9bf8d36/reedsolomon/rs.c#L500-L502
2017-05-05 18:53:16 +09:00
Sunguk Lee
a24e29c9ad
Remove defines of EVP_CIPHER_CTX_new and EVP_CIPHER_CTX_free
...
These functions defined since 0.9.8b
2017-05-05 16:26:57 +09:00
Iwan Timmer
9bf8d361a1
Forward Error Correction ( #24 )
...
* Preperation for FEC by adding new queue which buffers whole frames
* Add code for creating recovered RTP packet
* Add checks before repair missing packets
* Initial implementation for single FEC packet
* Implement FEC for multiple packets
2017-05-04 21:22:30 -07:00
Iwan Timmer
dbb7cee399
Compatibility fix for OpenSSL 1.1 ( #25 )
...
* Compatibility fix for OpenSSL 1.1
* Don't allocate new cipher context for every input packet
* Readd support for OpenSSL 1.0
2017-05-04 21:20:03 -07:00
Cameron Gutman
8d2dccf4ca
Correctly transmit the number of controllers attached to the client
2017-02-04 20:09:34 -08:00
Cameron Gutman
f1adbc1e6b
Apparently we're back to 8 byte first frame headers on GFE 3.2
2016-12-13 20:24:34 -08:00
Cameron Gutman
de915efaaf
Wiggle the mouse at connection start to wake the display up
2016-12-13 20:23:32 -08:00
Cameron Gutman
bd825776b3
Add support for GFE 3.0.7
2016-10-05 17:31:19 -07:00
Cameron Gutman
f57bd745b4
API update to provide enough information to support GFE 3.0.7
2016-10-05 17:23:59 -07:00
Cameron Gutman
ed2c4e716b
Update enet submodule with Vita support
2016-10-05 16:45:07 -07:00
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
Cameron Gutman
293c6a7274
Fix IDR frame requests on Gen 3 servers
2016-09-24 13:07:30 -07:00
Cameron Gutman
86ade5204e
Change message API to use const char *
2016-06-09 12:17:48 -05:00
Cameron Gutman
2103b62386
Cancel the pending IDR frame request if we got a spurious IDR frame after a stream discontinuity
2016-05-26 17:38:03 -05:00
Cameron Gutman
69c8881187
Update ENet submodule to include the MTU fix for LTE streaming
2016-05-21 18:32:39 -05:00
Cameron Gutman
dddcba217b
Try progressively lower receive buffer sizes until one is accepted
2016-05-08 12:10:04 -04:00
Cameron Gutman
41983369fb
Remove unused member of RTP reorder queue
2016-05-08 12:06:51 -04:00
Cameron Gutman
7e5e2cebe2
Increase recv buffer of video stream from 64K to 512K for improved 4K performance
2016-05-06 14:44:16 -04:00
Cameron Gutman
f69ab5dd5e
Merge pull request #20 from Unknownforce351/patch-1
...
Increase RTP RECV BUFFER size
2016-04-27 11:12:17 -04:00
Cameron Gutman
a5b5ed8d2b
Return the oldest packet instead of removing it upon RTP queue constraint violation
2016-04-27 02:22:14 -04:00
Cameron Gutman
be78c36fa1
Fix an overzealous compiler warning
2016-04-27 02:16:42 -04:00
Cameron Gutman
013a93bc32
Fix uninitialized memory usage in the RTP reorder queue causing assertion failures
2016-04-27 02:16:18 -04:00
Unknownforce
5791274cc5
Update AudioStream.c
2016-04-26 15:17:35 -05:00
Cameron Gutman
8846493eb4
Fix unsafe modification of the peer variable during shutdown
2016-04-18 16:36:45 -04:00
Cameron Gutman
597199ed92
Stop trying to disconnect the peer when aborting RTSP handshake. It's unsafe without additional synchronization.
2016-04-18 16:29:28 -04:00
Cameron Gutman
d5e0950ec6
Wrap enet_host_service() to hide the logic required to make retransmissions work
2016-04-18 16:27:50 -04:00
Cameron Gutman
33deb0fe1a
Allow ENet to directly use the resolved address rather than doing DNS resolution itself
2016-04-02 14:08:06 -04:00
Cameron Gutman
4055fb6d77
Always try to resolve a hostname to IPv4 first
2016-04-02 14:06:43 -04:00
Cameron Gutman
61aaca31d4
Update ENet submodule
2016-03-31 11:25:50 -04:00
Cameron Gutman
d408372c34
Switch to OpenSSL for input encryption with support for Gen 7 servers
2016-03-31 11:14:10 -04:00
Cameron Gutman
48a5d63045
Reorganize the folder structure and delete the Xcode build files
2016-03-31 07:22:03 -04:00
Cameron Gutman
b7c7c98c45
Fix RTSP and control stream for Gen 7 servers
2016-03-29 22:21:18 -04:00
Cameron Gutman
58329dd0b2
Update common-c submodule to fix build without NO_MSGAPI
2016-03-27 22:48:51 -04:00
Cameron Gutman
3c94da1beb
Fix a memory leak on OOS audio packets with a direct-submit audio player
2016-03-27 20:29:33 -04:00
Cameron Gutman
ec4fc23cd7
Update to ENet compatible with PNaCl
2016-03-11 00:29:42 -08:00
Cameron Gutman
5d89f671e4
Add a note about the bundled enet submodule
2016-03-09 21:20:48 -08:00
Cameron Gutman
04b00f9e8a
Fix the RTSP payload timeout being too aggressive
2016-03-08 13:13:25 -08:00
Cameron Gutman
5a92f72012
Update the ENet API to support IPv6
2016-03-07 14:33:35 -08:00
Cameron Gutman
c03692c908
Additional error handling
2016-03-07 13:15:37 -08:00
Cameron Gutman
daf3b992cc
Update to the modified ENet API
2016-03-06 15:36:46 -08:00
Cameron Gutman
9d3fed1620
Change to our modified ENet fork
2016-03-06 15:29:02 -08:00
Cameron Gutman
f91010b6e4
Fail message sending if the peer returned an error
2016-03-06 15:27:05 -08:00
Cameron Gutman
eb9c881174
Set peer timeout to 10 seconds rather than the default 30 seconds
2016-03-06 15:24:36 -08:00
Cameron Gutman
c42cae333d
Send a best-effort disconnect event to let GFE know that we're gone. This increases reconnect reliability.
2016-03-04 03:19:19 -05:00