60 Commits

Author SHA1 Message Date
Cameron Gutman
edf1838708 Expose RTT information from ENet 2021-05-15 13:58:54 -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
3abd3af4b2 Convert 'supportsHevc' and 'enableHdr' fields to bool type 2021-04-21 23:32:43 -05:00
Cameron Gutman
6dca9c6754 Add special termination error code for protected content 2021-04-09 11:53:03 -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
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
cca2ba9aab Add LiStringifyPortFlags() helper function 2020-12-23 13:42:28 -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
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
453c722fa8 Add LiGetPortFlagsFromTerminationErrorCode() 2020-08-06 21:43:18 -07:00
Cameron Gutman
84f2421fbf Add support for client-side connectivity testing 2020-07-19 14:39:42 -07:00
Cameron Gutman
c8faf3539b Replace version check with note for LiSendMousePosition() 2020-05-03 15:56:39 -07:00
Cameron Gutman
b46e06fcf1 Terminate the connection if video isn't received for 10 seconds 2020-05-01 19:25:24 -07:00
Cameron Gutman
247b1fe0e3 Provide reference dimensions for mouse position data 2020-04-11 20:51:17 -07:00
Cameron Gutman
bbbf4336cc Add additional documentation for LiSendMousePositionEvent() 2020-04-11 15:59:12 -07:00
Cameron Gutman
ef7de27727 Add absolute mouse motion support 2020-04-11 15:40:50 -07:00
Cameron Gutman
85de16b41b Add 7.1 surround sound support 2020-04-03 00:11:41 -07:00
Cameron Gutman
99f22fa7e9 Undeprecate AUDIO_CONFIGURATION values and add a new macro for converting AUDIO_CONFIGURATION into launch/resume parameters 2020-04-02 18:41:32 -07:00
Cameron Gutman
607aaca93f Replace AUDIO_CONFIGURATION constants with MAKE_AUDIO_CONFIGURATION() macro 2020-03-31 21:33:34 -07:00
Cameron Gutman
67390dfb94 Remove deprecated listener callbacks 2020-02-24 23:57:06 -08:00
Cameron Gutman
2fc278da00 Change errorCode to int for consistency between 32-bit and 64-bit platforms
Unfortunately this requires updating all client code that uses these callbacks.
2020-02-24 23:01:22 -08:00
Cameron Gutman
cfeb0ffd90 Add MODIFIER_META constant 2020-01-15 17:48:36 -08:00
Cameron Gutman
e60a7ef75f Add color space and color range options 2019-12-14 14:32:47 -08:00
Cameron Gutman
c1a26618d4 Increase audio packet duration for low bandwidth connections 2019-11-30 21:59:34 -06: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
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
c87d4a755e Add a workaround to get low bandwidth stereo working again and a cap flag to never request HQ audio 2019-04-25 01:03:27 -07:00
Cameron Gutman
71a69204e9 Add a connection status callback to notify when the connection becomes lossy 2019-03-17 01:37:09 -07:00
Cameron Gutman
4a7d28038d Deprecate connection listener message callbacks 2019-03-17 01:34:04 -07:00
Cameron Gutman
8755529b1a Add support for high-resolution scroll events 2019-02-26 18:48:13 -08:00
Cameron Gutman
a016474acc Update documentation in Limelight.h 2019-02-10 02:59:07 -08:00
Cameron Gutman
fa86e76978 Implement gamepad rumble support 2019-02-08 19:13:53 -08:00
Cameron Gutman
639ff18dbb Allow automatic detection of remote streaming 2018-11-21 20:52:50 -08:00
Cameron Gutman
0eed722635 Add a simple STUN function for resolving external WAN addresses 2018-10-26 19:20:40 -07:00
Cameron Gutman
558ba488e8 Add X1 and X2 mouse buttons which are now apparently working 2018-10-03 17:54:24 -07:00
Cameron Gutman
487a62f58c Fix MSVC build issues 2018-09-25 00:56:43 -07:00
Cameron Gutman
dd7820f100 Add LiGetMillis() for clients to use for latency calculation 2018-09-25 00:47:22 -07:00
Cameron Gutman
718d6a4b28 Correctly declare the OPUS_MULTISTREAM_CONFIGURATION as const for AudioRendererInit functions 2018-09-13 06:18:14 -07:00
Cameron Gutman
bf737dc959 Plumb clientRefreshRateX100 for modern GFE versions 2018-02-03 21:56:52 -08:00
Cameron Gutman
26fe1cb22c Separate H.265 video format for SDR and HDR formats 2017-11-25 12:12:38 -08:00
Cameron Gutman
1c386a8987 Fix race condition that could result in loss of NALUs in an IDR frame
Unfortunately, this was a design flaw in the way we handled IDR frames
NALUs. Because we split them all up and handled them as separate
"frames" in the system, some of them could be discarded due to a
video decode unit overflow, for example, and cause the decoder to get
confused due to receiving an SPS without a following PPS.

To address this, NALUs in the IDR frame are always delivered together
as one frame. The SPS, PPS, and VPS are now in separate buffers in
the IDR frame's buffer list and tagged as such with the new buffer
type field. The IDR frames themselves have a new frame type field
which marks them as special frames that clients may need to process
in a special way.

This will likely be a breaking change for your clients!
2017-11-18 14:00:25 -08:00
Cameron Gutman
a135ceaa9a Add support for HDR streaming 2017-10-11 23:21:43 -07:00
Cameron Gutman
c0596ad1df Add the ability for clients to reduce bitrate when HEVC is used 2017-09-25 21:36:23 -07:00
Cameron Gutman
05c0fd68e3 Merge pull request #31 from irtimmer/audio_context
Add audio context and flags
2017-06-11 13:25:09 -07:00
Iwan Timmer
10e0acba4a Use application callback instead of standard error stream for logging 2017-06-11 18:02:39 +02:00
Cameron Gutman
99cfae7acc Add receive time to decode unit 2017-06-10 16:08:52 -07:00