Cameron Gutman
|
683208ddc8
|
Return all available audio data after FEC block timer expires
|
2021-06-01 20:01:26 -05:00 |
|
Cameron Gutman
|
3dff15b8c4
|
Fix memory leak when switching between immediate and queued audio packets
|
2021-06-01 19:33:56 -05:00 |
|
Cameron Gutman
|
4aa82b0a9f
|
Fix Clang/GCC build
|
2021-06-01 18:39:19 -05:00 |
|
Cameron Gutman
|
89918324ce
|
Implement audio FEC recovery support
|
2021-06-01 18:31:56 -05:00 |
|
Cameron Gutman
|
122ce4a568
|
Enable SO_RCVTIMEO for RTP sockets on Windows
|
2021-05-25 20:38:30 -05:00 |
|
Cameron Gutman
|
d9ea208dea
|
Avoid unlock and immediate relock of mutex
|
2021-05-25 19:57:06 -05:00 |
|
Cameron Gutman
|
1376c62e5f
|
Remove declaration of old deleted function
|
2021-05-25 19:54:27 -05:00 |
|
Cameron Gutman
|
59484ea066
|
Reorder some internal structures to reduce padding
|
2021-05-25 19:54:03 -05:00 |
|
Cameron Gutman
|
46cea5011d
|
Use GetModuleHandle() for kernel32.dll, since it's guaranteed to be loaded already
|
2021-05-25 19:40:14 -05:00 |
|
Cameron Gutman
|
4723f8ba7c
|
Update ENet to avoid excessive retransmissions when RTT variance is 0
|
2021-05-16 15:37:40 -05:00 |
|
Cameron Gutman
|
d4e22bb4a6
|
Update ENet to fix inaccurate RTT values under 8 ms
|
2021-05-16 14:42:15 -05:00 |
|
Cameron Gutman
|
daee5db7bc
|
Use SleepEx() instead of WaitForSingleObjectEx() to implement PltSleepMs()
This was legacy cruft from back when Sleep() was forbidden in Metro apps in Win8.0.
|
2021-05-16 11:41:38 -05:00 |
|
Cameron Gutman
|
c057075eac
|
Set minRequiredFecPackets to better handle lossy links at low bitrates
|
2021-05-16 09:27:50 -05:00 |
|
Cameron Gutman
|
ed9301f3f8
|
Join the input thread without interrupting first
Otherwise we'll kill it before it finishes draining
|
2021-05-15 22:56:44 -05:00 |
|
Cameron Gutman
|
431e188b07
|
Allow the input queue to drain before terminating the thread
This ensures any final input messages (like key ups) make it to the host
|
2021-05-15 22:01:50 -05:00 |
|
Cameron Gutman
|
71c9ff0d91
|
Elide the wait if the queue head is already non-null
|
2021-05-15 21:31:45 -05:00 |
|
Cameron Gutman
|
edf1838708
|
Expose RTT information from ENet
|
2021-05-15 13:58:54 -05:00 |
|
Cameron Gutman
|
5feb3b6f90
|
Dynamically adjust wait time to hit the next RTO
|
2021-05-15 12:47:20 -05:00 |
|
Cameron Gutman
|
50c0648de2
|
Run a full enet_host_service() rather than just enet_host_flush() on send
|
2021-05-15 12:26:01 -05:00 |
|
Cameron Gutman
|
97216e1704
|
Wait for ENet socket readability rather than just sleeping 10 ms
|
2021-05-15 00:15:16 -05:00 |
|
Cameron Gutman
|
43eb36e17a
|
Simplify and improve graceful disconnect logic
|
2021-05-14 22:36:13 -05:00 |
|
Cameron Gutman
|
387ff48a65
|
Perform a graceful disconnection if the termination was locally initiated
|
2021-05-14 22:06:07 -05:00 |
|
Cameron Gutman
|
1b3c14a792
|
Increase maximum input queue size
|
2021-05-14 21:07:14 -05:00 |
|
Cameron Gutman
|
132833deeb
|
Limit RTO to 2x RTT and fix early peer timeout expiration
|
2021-05-14 20:44:19 -05:00 |
|
Cameron Gutman
|
a1a150c300
|
Refactor IDR/RFI requests to simplify code and fix race conditions
|
2021-05-14 20:41:20 -05:00 |
|
Cameron Gutman
|
cd62147cdf
|
Print a warning when the input queue reaches the maximum size
|
2021-05-14 20:36:25 -05:00 |
|
Cameron Gutman
|
7743899251
|
Optimize LBQ to avoid unnecessary syscalls
|
2021-05-14 18:42:01 -05:00 |
|
Cameron Gutman
|
5d09d43b08
|
Disable RFI at 4K until the problems are understood
|
2021-05-06 22:17:04 -05:00 |
|
Cameron Gutman
|
ccaca624f3
|
Attempt to fix audio latency issues on some PCs
|
2021-05-04 10:21:41 -05:00 |
|
Cameron Gutman
|
65047ac0e2
|
Switch to VS2019 build images for CI
Requires suppressing warning C5105 caused by Windows SDK headers
|
2021-04-29 17:59:38 -05:00 |
|
Cameron Gutman
|
b0737b882d
|
Adjust MSVC warning level
|
2021-04-29 17:51:20 -05:00 |
|
Mariotaku Lee
|
179970a0d5
|
Behavior changes to CMakeLists.txt
- Allows static library compilation
- Links to MBedTLS/OpenSSL based on build option
- Limits visibility of some defines and headers
|
2021-04-29 17:40:47 -05:00 |
|
Cameron Gutman
|
bc1b5a1b2f
|
Fix Linux build
|
2021-04-29 17:40:13 -05:00 |
|
Cameron Gutman
|
a000f9f8b8
|
Validate that claimed length doesn't exceed the actual length
|
2021-04-29 17:26:59 -05:00 |
|
Cameron Gutman
|
8f371343cd
|
Consolidate includes
|
2021-04-29 17:22:15 -05:00 |
|
Cameron Gutman
|
da68e64d9b
|
Fix various MSVC warnings
|
2021-04-29 17:21:12 -05:00 |
|
Cameron Gutman
|
77ed77b93b
|
Pull ENet changes from upstream
|
2021-04-29 09:44:32 -05:00 |
|
Cameron Gutman
|
252a50bb75
|
Disable WSAECONNRESET errors for UDP sockets on Windows
|
2021-04-28 20:37:20 -05:00 |
|
Cameron Gutman
|
7549243f40
|
Add the correct definition for ECONNREFUSED for Windows
|
2021-04-28 17:30:00 -05:00 |
|
Cameron Gutman
|
9c92c12fea
|
Prevent errno.h from including incompatible error codes with Winsock codes
|
2021-04-28 17:29:33 -05:00 |
|
Cameron Gutman
|
3ae03998a2
|
Add retry logic for RTSP handshake connection refused error
This can happen due to a race condition between GFE completing the launch request and starting to listen on TCP 48010
|
2021-04-28 17:08:27 -05:00 |
|
Cameron Gutman
|
068f7aa9d9
|
Allow connection interruption during the RTSP handshake
|
2021-04-28 17:06:04 -05:00 |
|
Cameron Gutman
|
bce9f82844
|
Fix strict aliasing violation (and save a byteswap on each packet)
|
2021-04-28 17:05:41 -05:00 |
|
Cameron Gutman
|
fe205d838d
|
Don't check for errors from sendto() in the ping threads
|
2021-04-28 17:04:44 -05:00 |
|
Cameron Gutman
|
83b1b17f87
|
Add specific logging for frames dropped completely
|
2021-04-27 17:39:00 -05:00 |
|
Cameron Gutman
|
c1befbe2a8
|
Improve audio resync logic to use initial receive time rather send time
|
2021-04-26 22:43:49 -05:00 |
|
Cameron Gutman
|
33c4e98152
|
Adjust initial audio resync drop time based on connection handshake latency
|
2021-04-26 21:39:36 -05:00 |
|
Cameron Gutman
|
7174caf5f1
|
Implement support for multi-FEC frames
|
2021-04-26 20:36:07 -05:00 |
|
Cameron Gutman
|
9a5dbcf31c
|
Create a second queue for completed FEC blocks
|
2021-04-26 20:26:16 -05:00 |
|
Cameron Gutman
|
b33e9fbcde
|
Fix list corruption on entry removal
|
2021-04-26 20:24:39 -05:00 |
|