Commit Graph

43 Commits

Author SHA1 Message Date
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 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 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 29d2cc6d5b Improve MbedTLS implementation of AES-CBC 2021-04-22 17:08:35 -05:00
Cameron Gutman d7549cd953 Use array initializers compatible with MSVC 2021-04-22 00:32:41 -05:00
Cameron Gutman db81f1e512 Add support for audio stream encryption
Clients must opt-in using the new encryptionFlags field
2021-04-22 00:20:17 -05:00
Cameron Gutman 3979dbd082 Allow compilation on OSes without IPv6 support 2021-04-17 23:40:36 -05:00
Cameron Gutman 4304e597d8 Add byteswapping macros for big-endian systems 2021-04-17 21:43:13 -05:00
Cameron Gutman 31433fc5ee Minor cleanup and bugfix 2021-04-09 13:47:24 -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 3fddfc5557 Fix Clang warnings 2020-12-05 23:20:02 -06:00
Cameron Gutman 5f9f7ce407 Code cleanup: use stdbool.h 2020-11-30 20:38:13 -06:00
Cameron Gutman 1b022a0d05 Terminate the connection if we can't receive a key frame in 10 seconds 2020-08-29 21:00:05 -07:00
Cameron Gutman ae00c09cb6 Restore the 500 ms ping logic to prevent warnings in the server-side logs 2020-08-08 23:16:55 -07:00
Cameron Gutman f596e80575 Improve logging of video/audio delay and errors 2020-05-01 20:23:44 -07:00
Cameron Gutman 9ffdc79b6f Add log messages to troubleshoot problems with missing video/audio 2020-04-29 20:17:55 -07:00
Cameron Gutman fb60ae6a4d Parse Opus parameters from RTSP DESCRIBE response 2020-03-31 20:52:38 -07:00
Cameron Gutman 6b42954b47 Add LiGetPendingAudioDuration() function 2019-11-30 21:31:50 -06:00
Cameron Gutman f4dad9ae8b Add presentation timestamp to video frame metadata 2019-11-10 18:07:11 -08:00
Cameron Gutman a9780361a3 Fix high-quality surround sound breaking audio when streaming over the Internet or IPv6 2019-08-04 15:05:40 -07:00
Cameron Gutman dffe51e885 Add LiGetPendingVideoFrames() and LiGetPendingAudioFrames() 2019-05-07 20:25:26 -07:00
Cameron Gutman 59481c085a Add support for requesting 20 ms audio frames for slow Opus decoders 2019-05-04 15:33:48 -07:00
Cameron Gutman 31aa893acd Name our threads on Linux 2019-05-03 18:54:40 -07:00
Cameron Gutman d6971983aa Use an interruptible sleep to allow our threads to exit sooner 2019-04-06 15:26:59 -07:00
Cameron Gutman 40fa4ef3c8 Reduce NAT keepalive packet rate after connection is established 2019-03-24 12:54:41 -07:00
Cameron Gutman aa9610847e Ensure termination error code is propagated properly 2019-02-09 21:30:16 -08:00
Cameron Gutman f884003066 Avoid accumulating audio latency from audio captured by the host before we're ready to play it 2019-01-06 13:24:36 -08:00
Cameron Gutman 610c00bf2d Only start the audio UDP ping thread when we are ready to accept samples 2019-01-03 19:59:53 -08:00
Cameron Gutman b9290449b4 Fix queue state error (and subsequent assert) when the queue advances after a constraint violation upon reception of a packet behind the new lowest entry 2018-08-29 08:24:58 -07:00
Cameron Gutman 6e7965f013 Use SO_RCVTIMEO to avoid the overhead of an extra syscall per packet 2018-07-16 00:46:40 -07:00
Cameron Gutman b528ef7921 Fix uninitialized variable warning when using an invalid audio configuration 2018-05-28 10:46:42 -07:00
Cameron Gutman c1b954da1f Fix channel mapping error in 5.1 high quality mode 2018-05-27 20:03:08 -07:00
Cameron Gutman a8b01d6c29 Enable high quality surround sound when the video bitrate is over 15 Mbps 2018-05-27 18:45:09 -07:00
Cameron Gutman cde117df06 Allocate enough buffer space for high quality audio packets from GFE 3.12 2018-01-09 19:46:19 -08:00
Iwan Timmer d3fe286eb7 Add audio context and flags 2017-05-28 15:34:56 +02:00
Cameron Gutman 86447399a9 Add start and stop callbacks for audio and video renderers 2017-05-21 12:50:53 -07:00
Cameron Gutman 2d7bf5be82 Fix state cleanup if LiStartConnection() fails 2017-05-18 09:52:50 -07:00
Unknownforce 5791274cc5 Update AudioStream.c 2016-04-26 15:17:35 -05:00
Cameron Gutman 48a5d63045 Reorganize the folder structure and delete the Xcode build files 2016-03-31 07:22:03 -04:00