Cameron Gutman
|
ed2c4e716b
|
Update enet submodule with Vita support
|
2016-10-05 16:45:07 -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 |
|
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 |
|
Cameron Gutman
|
3966d7ca82
|
Add ENet to Xcode project
|
2016-03-04 03:05:28 -05:00 |
|
Cameron Gutman
|
b3337d3304
|
Add ENet as a submodule
|
2016-03-04 03:04:08 -05:00 |
|
Cameron Gutman
|
ff6a70288b
|
Fix an incorrect assertion
|
2016-03-04 03:00:02 -05:00 |
|
Cameron Gutman
|
ef3c33c5b0
|
Fix warnings compiling in Xcode
|
2016-03-04 02:59:44 -05:00 |
|
Cameron Gutman
|
0a80deccde
|
Implement control and input streams over ENet for GFE 2.11
|
2016-03-04 02:30:10 -05:00 |
|
Cameron Gutman
|
31ce0f5c87
|
Implement RTSP over ENet for GFE 2.11
|
2016-03-04 00:40:12 -05:00 |
|
Cameron Gutman
|
c44cdffdd5
|
Fix compilation errors on Windows
|
2016-03-02 13:46:03 -05:00 |
|
Cameron Gutman
|
51e5b89018
|
Add H.265 video support
|
2016-03-02 06:25:19 -05:00 |
|
Cameron Gutman
|
fbd58c60ea
|
Disable dynamic resolution switching on Gen 5 servers
|
2016-02-28 14:19:03 -05:00 |
|
Cameron Gutman
|
e1473d7a2d
|
Fix mouse move packets on Gen 5 servers
|
2016-02-19 12:00:15 -05:00 |
|
Cameron Gutman
|
88edbd8dc1
|
Merge pull request #14 from irtimmer/gen5
Add support for Generation 5 servers (GFE 2.10.2+)
|
2016-02-19 11:45:33 -05:00 |
|
Cameron Gutman
|
40478fc19b
|
Fix the bug causing the 4th controller to be unrecognized
|
2016-02-19 01:53:44 -05:00 |
|
Cameron Gutman
|
a8d98284a7
|
When a decoder requests an IDR frame, don't submit another frame until the IDR frame arrives
|
2016-02-18 13:23:03 -05:00 |
|
Cameron Gutman
|
c9d332089f
|
Fix build with headers that only typedef fd_set without defining a struct fd_set type
|
2016-02-18 00:14:03 -05:00 |
|
Cameron Gutman
|
c680a76289
|
Simplify thread management since we don't need thread alerts to cancel anymore
|
2016-02-16 19:58:56 -05:00 |
|
Cameron Gutman
|
00283a7267
|
Fix a race condition where PltCloseThread was called before the thread was inserted into the list
|
2016-02-16 19:35:54 -05:00 |
|
Cameron Gutman
|
ca870694ba
|
Fix uninitialized variable warning
|
2016-02-16 10:56:24 -05:00 |
|
Cameron Gutman
|
1bb1e47e8a
|
FIONBIO is not supported under NaCl so only use non-blocking connect if available
|
2016-02-16 10:54:24 -05:00 |
|
Cameron Gutman
|
1662ce1ee8
|
Add timeouts for connect operations
|
2016-02-16 10:15:01 -05:00 |
|
Cameron Gutman
|
42af179770
|
Add a 10 second read timeout to the RTSP connection
|
2016-02-16 09:31:33 -05:00 |
|
Cameron Gutman
|
8b6ca3d89b
|
Remove unsafe cancellation code from events
|
2016-02-16 09:17:59 -05:00 |
|
Cameron Gutman
|
ac52faa6c2
|
Fix failure to restart after calling LiStopConnection
|
2016-02-16 09:04:21 -05:00 |
|
Cameron Gutman
|
9e592ad3c6
|
Simplify some Darwin-specific code paths
|
2016-02-16 08:59:54 -05:00 |
|
Cameron Gutman
|
5de8f4c98c
|
Fix UDP thread terminations
|
2016-02-15 18:46:14 -05:00 |
|
Cameron Gutman
|
ceb9504ade
|
Fix another double free
|
2016-02-15 18:11:12 -05:00 |
|
Cameron Gutman
|
167d344e39
|
Add a shutdown function for UDP sockets
|
2016-02-15 17:45:29 -05:00 |
|
Cameron Gutman
|
e5a6297d30
|
Kill TCP sockets in 2 stages to fix a race condition during socket closure
|
2016-02-15 17:26:34 -05:00 |
|
Cameron Gutman
|
c18e334cd4
|
Fix control stream shutdown
|
2016-02-15 17:12:27 -05:00 |
|
Cameron Gutman
|
343eeccaa9
|
Fix double-free of packet buffer
|
2016-02-15 17:11:42 -05:00 |
|
Cameron Gutman
|
67b70e9cbd
|
Implement queue shutdown
|
2016-02-15 17:00:31 -05:00 |
|
Cameron Gutman
|
cb43494cd0
|
Fix buffer leak when the audio receive thread dies
|
2016-02-15 16:19:40 -05:00 |
|
Cameron Gutman
|
a933886537
|
Fix build on Windows
|
2016-02-15 16:05:59 -05:00 |
|
Cameron Gutman
|
d7f40ec39b
|
Begin work to remove use of thread cancellation for NaCl
|
2016-02-15 15:58:42 -05:00 |
|
Cameron Gutman
|
b2be459ff3
|
Don't call sigaction() when building for NaCl
|
2016-02-15 12:51:37 -05:00 |
|
Cameron Gutman
|
cbbe251f50
|
Code within extern "C" should not be indented
|
2016-02-15 12:50:18 -05:00 |
|
Cameron Gutman
|
21ec3f0270
|
Build fixes for NaCl SDK
|
2016-02-12 21:17:08 -05:00 |
|
Cameron Gutman
|
dfdfe4f0f6
|
Fix inconsistent whitespace
|
2016-02-06 23:46:47 -05:00 |
|
Cameron Gutman
|
349d1baa53
|
We might as well just keep the bitrate constant rather than doing all the complex logic to decide on a minimum. The dynamic scaling behavior is awful anyway.
|
2015-10-27 00:20:23 -07:00 |
|
Cameron Gutman
|
81ecd32e83
|
Add a comment about the mapping array order
|
2015-10-25 18:53:49 -07:00 |
|
Cameron Gutman
|
b1f861ccfd
|
Fix RTSP handshake issues with GFE 2.7 due to the addition of many new SDP attributes
|
2015-10-25 13:25:32 -07:00 |
|
Cameron Gutman
|
a13e68b042
|
Add support for 5.1 surround sound with GFE 2.7
|
2015-10-25 13:08:20 -07:00 |
|
Cameron Gutman
|
1b3b57ed2f
|
Update Xcode project file
|
2015-09-28 19:21:59 -07:00 |
|
Cameron Gutman
|
81f8e5427a
|
Request 1 slice per frame when not using slicing
|
2015-08-17 23:02:04 -07:00 |
|
Cameron Gutman
|
19849a1ac5
|
Use a macro for specifying the slices per frame capability to allow for configurable slicing
|
2015-08-16 12:11:10 -07:00 |
|
Cameron Gutman
|
2d35d7262f
|
Merge pull request #12 from irtimmer/disableSlicing
Place slicing behind a flag as not all video decoders support it.
|
2015-08-16 11:40:41 -07:00 |
|
Cameron Gutman
|
a97e7c962a
|
Add a better description to the new remote streaming field and rename to it be more clear about what it means
|
2015-08-16 10:23:48 -07:00 |
|
Cameron Gutman
|
cc8eae2c41
|
Merge pull request #13 from irtimmer/remoteOptimizations
Add SDP optimizations for remote connections
|
2015-08-16 10:07:58 -07:00 |
|
Cameron Gutman
|
ad7d0ef218
|
Add helper functions to zero callback and configuration structures for better source compatibility with future versions
|
2015-08-15 10:06:00 -07:00 |
|
Cameron Gutman
|
7500382c26
|
Make the audio receive buffer 6400 bytes. At 1200 bytes, audio on my Pi 2 was constantly hiccupping because there wasn't enough of a cushion to allow time for decoding to happen in many cases.
|
2015-08-12 00:19:07 -07:00 |
|
Cameron Gutman
|
4855b5a83d
|
Remove a useless log message
|
2015-08-12 00:09:17 -07:00 |
|
Cameron Gutman
|
47104f93c2
|
Revert the encoding bitrate hack
|
2015-08-12 00:05:42 -07:00 |
|
Cameron Gutman
|
425e9f0484
|
Fix an RTP queue bug that can cause extended packet delays when the last packet ages out of the queue
|
2015-08-11 22:49:49 -07:00 |
|
Cameron Gutman
|
a083e0b46d
|
Fix reference frame invalidation bugs
|
2015-08-11 21:34:28 -07:00 |
|
Cameron Gutman
|
71f923f062
|
Guard reference frame invalidation behind a video renderer capability flag and do some refactoring and bugfixes to the new code
|
2015-08-11 19:57:06 -07:00 |
|
Cameron Gutman
|
beb7ccb456
|
Merge branch 'invalidateFrames' of https://github.com/irtimmer/moonlight-common-c
|
2015-08-11 19:24:11 -07:00 |
|
Cameron Gutman
|
0f2897b1f8
|
Fix typo in define
|
2015-08-11 19:21:04 -07:00 |
|
Cameron Gutman
|
2504f3b7ce
|
Initialize lastSeq when initializing the audio stream
|
2015-08-11 19:20:10 -07:00 |
|
Cameron Gutman
|
4f8595b527
|
Fix compilation warnings
|
2015-08-11 19:18:13 -07:00 |
|
Cameron Gutman
|
c421740ded
|
Merge pull request #10 from irtimmer/bufferSize
Reduce audio receive buffer size
|
2015-08-11 19:14:06 -07:00 |
|
Cameron Gutman
|
bc57d54e54
|
Merge pull request #9 from irtimmer/combineReceiveDecodeThread
Combine receive and decode thread
|
2015-08-11 19:12:14 -07:00 |
|
Cameron Gutman
|
de37896c22
|
Merge pull request #8 from irtimmer/fixFirstPacketDrop
Fix skipping first video packet
|
2015-08-11 08:38:21 -07:00 |
|
Cameron Gutman
|
b79ee8ca46
|
Use the IDR frame request packet on Gen 4 servers. This solves the issue of IDR frames breaking after 0xFFFFF frames (4.85 hours at 60 FPS)
|
2015-08-04 23:43:10 -07:00 |
|
Cameron Gutman
|
b9597d696a
|
Run the client's connectionTerminated() callback on a separate thread to avoid deadlocking if LiStopConnection() is invoked from the callback
|
2015-08-04 23:38:38 -07:00 |
|
Cameron Gutman
|
a41c064cab
|
Fix for the fix :/
|
2015-07-31 00:14:22 -07:00 |
|
Cameron Gutman
|
f95f152439
|
Fix a bug that could cause the cleanup() callback to be erroneously invoked without a prior call to setup() or init()
|
2015-07-31 00:05:22 -07:00 |
|
Cameron Gutman
|
89c49a76cb
|
Remove vcxproj
|
2015-07-29 16:48:10 -07:00 |
|
Cameron Gutman
|
d67071cf0e
|
Implement a new safer Limelog for Windows
|
2015-07-20 19:11:56 -05:00 |
|