Cameron Gutman
4304e597d8
Add byteswapping macros for big-endian systems
2021-04-17 21:43:13 -05:00
Cameron Gutman
efaeade7a6
Small cleanup and bugfix
2021-04-17 20:24:43 -05:00
Cameron Gutman
98d7ceecf7
Add native MbedTLS crypto backend
2021-04-17 19:00:26 -05:00
Cameron Gutman
d62ee951a0
Refactor OpenSSL usage into a platform-specific file to allow other crypto backends
2021-04-17 17:47:53 -05:00
Cameron Gutman
5782246b30
Add hack to prevent video glitching on GFE 3.22 when packets per frame exceed 120
2021-04-09 19:30:38 -05:00
Cameron Gutman
31433fc5ee
Minor cleanup and bugfix
2021-04-09 13:47:24 -05:00
Cameron Gutman
83431e557d
Fix leak on each GFE 3.22 input packet
2021-04-09 13:47:00 -05:00
Cameron Gutman
0a00163f0b
Fix audio stream init error check
2021-04-09 13:00:35 -05:00
Cameron Gutman
cb11b76682
Fix GCC/Clang warning
2021-04-09 12:20:02 -05:00
Cameron Gutman
6dca9c6754
Add special termination error code for protected content
2021-04-09 11:53:03 -05:00
Cameron Gutman
9841a6e34d
Fix parsing of termination message from GFE 3.22
2021-04-09 11:41:59 -05:00
Cameron Gutman
731d52d020
Return a packet length from the decryption process
2021-04-09 10:40:28 -05:00
Cameron Gutman
12f0f3d6d7
Add encrypted control stream support for GFE 3.22
...
Receive-side not yet fully working
2021-04-09 10:25:24 -05:00
Cameron Gutman
f0dbee171b
Consider UDP 48000 as part of RTSP for connection testing
...
GFE 3.22 requires UDP 48000 communication to complete RTSP handshake
2021-04-09 08:39:28 -05:00
Cameron Gutman
d0c3513504
Reorder audio initialization and RTSP handshake to avoid RTSP PLAY failure on GFE 3.22
2021-04-09 08:39:28 -05:00
Cameron Gutman
2c13835f32
Increase first-start audio drop for upcoming GFE 3.22 changes
2021-04-09 08:39:28 -05:00
Cameron Gutman
c0c200e72c
Fix APP_VERSION_AT_LEAST macro definition
2021-04-09 07:51:05 -05:00
Cameron Gutman
9b194cc700
Adjust RTSP requests to conform to GFE 3.22 changes
2021-04-09 07:46:14 -05:00
Cameron Gutman
9a706fd78c
Temporarily switch to control protocol 9 on GFE 3.22
2021-04-09 07:45:17 -05:00
Cameron Gutman
415d97aa4d
Pass through input for full control stream encryption on GFE 3.22
2021-04-09 07:44:31 -05:00
Cameron Gutman
a51cc972d3
Add APP_VERSION_AT_LEAST() macro for cleaner GFE version checks
2021-04-09 07:26:24 -05:00
Cameron Gutman
b528867466
Change NAL type parsing to match the spec and add AUD removal for H.264
2021-03-29 19:27:19 -05:00
Cameron Gutman
8b1fbc770e
Discard AUD NALs prepended to incoming frames
2021-03-28 10:34:01 -05:00
Cameron Gutman
a64af8d8cf
Fix unused variable warning on NaCl
2021-01-09 20:08:22 -06:00
Cameron Gutman
021fe902d9
Update ENet submodule to upstream 1.3.17 release
2021-01-09 18:46:13 -06:00
Cameron Gutman
fd950b6452
Allow applications to reliably calculate decode unit queue delay
2020-12-31 16:08:00 -06:00
Cameron Gutman
3aa2463856
Add a special error code for early termination
2020-12-24 11:21:47 -06:00
Cameron Gutman
97ca7b099f
Report frames to the control stream code before FEC reconstruction
2020-12-24 11:08:31 -06:00
Cameron Gutman
cca2ba9aab
Add LiStringifyPortFlags() helper function
2020-12-23 13:42:28 -06:00
Cameron Gutman
ce546b12b0
Fix undefined behavior due to shifting an int by 31
2020-12-06 00:44:33 -06:00
Cameron Gutman
6dd3f9e7bc
Treat GCC/Clang warnings as errors
2020-12-05 23:46:10 -06:00
Cameron Gutman
941ffef2ca
Fix final GCC sign warnings
2020-12-05 23:45:49 -06:00
Cameron Gutman
8dc304bcd3
Fix more warnings
2020-12-05 23:30:25 -06:00
Cameron Gutman
3fddfc5557
Fix Clang warnings
2020-12-05 23:20:02 -06:00
Cameron Gutman
ac6630ef59
Add AppVeyor CI builds
2020-12-05 20:12:14 -06:00
Cameron Gutman
0ead0df2a1
Remove usage of long types for LP64 and LLP64 consistency
2020-12-05 16:51:03 -06:00
Cameron Gutman
333382ae74
Use stdint types for ByteBuffer
2020-11-30 22:03:24 -06:00
Cameron Gutman
4b4162c1a1
Fix redefinition warning for errno.h constants on Windows
2020-11-30 20:44:46 -06:00
Cameron Gutman
5f9f7ce407
Code cleanup: use stdbool.h
2020-11-30 20:38:13 -06:00
Cameron Gutman
e9ee868da4
Don't enable QoS for IPv6/NAT64 either
2020-10-31 17:08:29 -05:00
Cameron Gutman
dbf81dcb63
Don't enable QoS for remote IPv4 streams
...
Some broken routers/CPE will drop all QoS tagged packets
2020-10-28 20:35:45 -05:00
Cameron Gutman
edf08d0a60
Merge pull request #51 from d3m3vilurr/fix-vita-compile
...
vita: Restore select call on the VITA system
2020-10-22 21:39:53 -05:00
Sunguk Lee
6195007bf3
Add missing poll header parts of the VITA
2020-10-23 11:29:02 +09:00
Cameron Gutman
f15582a090
Update pollSockets() fallback for Vita compatibility
2020-10-22 17:20:07 -05:00
Cameron Gutman
4f42188c1f
Test for UDP MTU issues
2020-10-10 13:03:05 -05:00
Cameron Gutman
327917683a
Fix platform cleanup on resolveHostName() failure
2020-10-10 12:51:31 -05:00
Cameron Gutman
dbedf938d4
Don't require linking to wlanapi.dll
...
This is not always available on Windows Server
2020-09-08 18:26:36 -07:00
Cameron Gutman
128c1503f2
Don't perform the connection test in resolveHostName() for single addresses unless required
2020-09-06 17:11:14 -07:00
Cameron Gutman
6ca0b93809
Ignore ICMP Port Unreachable messages on our UDP sockets
...
These messages can falsely indicate failure in cases where the UDP socket
for audio or video hasn't opened yet when we start to send our PING packets.
It is also problematic when sending STUN requests to multiple IP addresses.
If one returns an ICMP Port Unreachable, it can cause us to fail the entire set
of requests even when other IP addresses do respond.
2020-09-06 14:04:57 -07:00
Cameron Gutman
7b024c967e
Try TCP 47989 and TCP 48010 as fallbacks if 47984 doesn't work
2020-09-06 11:55:25 -07:00