Cameron Gutman
|
4e7b1e3c37
|
Merge pull request #60 from GaryOderNichts/wiiu-platform
Wii U platform support
|
2021-06-04 21:53:58 -05:00 |
|
GaryOderNichts
|
e5b39af6a5
|
some Wii U changes
|
2021-06-05 01:59:58 +02:00 |
|
GaryOderNichts
|
0c66a50e2d
|
Wii U platform support
|
2021-06-04 21:36:54 +02:00 |
|
Cameron Gutman
|
509a17dbc3
|
Perform PLC for each lost packet in the FEC block
|
2021-06-03 21:03:46 -05:00 |
|
Cameron Gutman
|
a8aed6b344
|
Avoid spurious audio data loss warning on connection start
|
2021-06-03 21:02:27 -05:00 |
|
Cameron Gutman
|
ef33aaa3c8
|
Fix queued packet leak when audio packet queue overflows
|
2021-06-02 22:05:45 -05:00 |
|
Cameron Gutman
|
e9fd544ff4
|
Fix FEC queue state assert firing on shutdown
|
2021-06-02 20:11:20 -05:00 |
|
Cameron Gutman
|
e3d4f4e91f
|
Validate the Opus data in debug builds
|
2021-06-02 20:10:46 -05:00 |
|
Cameron Gutman
|
ab51acb712
|
Only data shards should be eligible for immediate consumption
|
2021-06-02 19:50:22 -05:00 |
|
Cameron Gutman
|
d0adb044cf
|
Fix bugs discovered by FEC state validation logic
|
2021-06-02 19:36:57 -05:00 |
|
Cameron Gutman
|
565b170e00
|
Add FEC state validation in debug builds
|
2021-06-02 19:36:31 -05:00 |
|
Cameron Gutman
|
9361c325bb
|
Rename RtpFecQueue to RtpVideoQueue to match RtpAudioQueue
|
2021-06-01 22:57:26 -05:00 |
|
Cameron Gutman
|
08e4a47fc2
|
Add FEC validation mode for audio FEC
|
2021-06-01 22:43:43 -05:00 |
|
Cameron Gutman
|
dd3675db63
|
Fix mishandling of a completely missing FEC block
|
2021-06-01 21:31:48 -05:00 |
|
Cameron Gutman
|
da7db59414
|
Fix freeing FEC block after wrapping seqnum with in-order FEC block
|
2021-06-01 21:16:18 -05:00 |
|
Cameron Gutman
|
fde6b05618
|
Fix incorrect assert on sequence number wrap
|
2021-06-01 21:14:25 -05:00 |
|
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 |
|