Cameron Gutman
|
4832d8007b
|
Print joystick haptic capabilities to log
|
2019-12-13 18:43:35 -08:00 |
|
Cameron Gutman
|
c8b887fe32
|
Use the new SDL_GameControllerRumble() API on SDL 2.0.9 to fix rumble on HIDAPI gamepads
|
2019-12-07 16:17:01 -08:00 |
|
Cameron Gutman
|
3a6bf4d20b
|
Disable arbitrary audio duration for libsoundio until further testing is done
|
2019-12-03 19:00:43 -08:00 |
|
Cameron Gutman
|
5e2f32e3eb
|
Force remote streaming mode if connecting through a VPN
|
2019-12-01 21:50:36 -08:00 |
|
Cameron Gutman
|
0ccee9d806
|
Support arbitrary audio duration in libsoundio renderer
|
2019-12-01 19:43:22 -08:00 |
|
Cameron Gutman
|
5700272dc4
|
Improve low bandwidth audio performance for SDL and SLAudio and fix RTSP issues with broken PMTUD
|
2019-11-30 22:24:28 -06:00 |
|
Cameron Gutman
|
7e5a3925b3
|
Fix typo in channel mapping
|
2019-11-17 14:35:37 -08:00 |
|
Cameron Gutman
|
1febe32e73
|
Fix 5.1 channel mapping on Steam Link
|
2019-11-17 12:22:57 -08:00 |
|
Cameron Gutman
|
de7b973239
|
Plumb presentation time from server into AVFrame.pts field
|
2019-11-11 18:03:47 -08:00 |
|
Cameron Gutman
|
c20daa8867
|
Add compatibility checks for HEVC Main10 in VT backend
|
2019-11-05 18:36:43 -08:00 |
|
Cameron Gutman
|
5e57a7d5c0
|
Prevent SDL renderer from trying to render 10-bit output
|
2019-11-05 17:29:21 -08:00 |
|
Cameron Gutman
|
7c8d27700e
|
Add 10-bit output support to VDPAU renderer
|
2019-11-05 17:09:44 -08:00 |
|
Cameron Gutman
|
f8621be5ee
|
Add an HEVC Main10 test frame
|
2019-11-05 17:08:25 -08:00 |
|
Cameron Gutman
|
ca26fa2dd0
|
Add basic HEVC Main10 support in DXVA2 renderer
|
2019-11-04 22:57:12 -08:00 |
|
Cameron Gutman
|
2f0a6db414
|
Add hacks for SDL+Mutter interaction bugs
|
2019-09-29 21:05:31 -07:00 |
|
Cameron Gutman
|
96ff51d598
|
Use SDL audio for platforms that libsoundio doesn't support
|
2019-09-22 12:03:53 -07:00 |
|
Cameron Gutman
|
dbf98ce3a6
|
Require keyframes even for software H.264 decoding
|
2019-08-07 22:38:31 -07:00 |
|
Cameron Gutman
|
5288041da5
|
Prevent us from consuming more than 4 samples per write callback to bound latency
|
2019-08-03 12:47:44 -07:00 |
|
Cameron Gutman
|
5db5a088ea
|
Fix NVDEC artifacts if the renderer is delayed for a bit
|
2019-08-01 20:25:58 -07:00 |
|
Cameron Gutman
|
7acf91883a
|
Rework audio renderer selection to fall back and treat ML_AUDIO as a hard selection
|
2019-07-26 12:50:45 -04:00 |
|
Cameron Gutman
|
bcbd1a5b4b
|
Fix subsystem print in VAAPI
|
2019-07-07 15:41:26 -07:00 |
|
Cameron Gutman
|
6468efd7e4
|
Add VAAPI DRM support
|
2019-07-07 15:32:38 -07:00 |
|
Cameron Gutman
|
ea8b905f02
|
Missed a call to SDL_SetRelativeMouseMode
|
2019-07-02 22:39:09 -07:00 |
|
Cameron Gutman
|
16b301236b
|
Add a mouse capture fallback if SDL_SetRelativeMouseMode() fails
|
2019-07-02 22:17:38 -07:00 |
|
Cameron Gutman
|
024af89be3
|
Add an option to disable the gamepad mouse button toggle
|
2019-06-29 18:24:59 -07:00 |
|
Cameron Gutman
|
0a5051f959
|
Add Discord Rich Presence integration for Windows
|
2019-06-29 17:40:30 -07:00 |
|
Cameron Gutman
|
82b6b60b31
|
Take advantage of SDL 2.0.10 bugfixes and new APIs. Fixes #133
|
2019-06-29 16:08:04 -07:00 |
|
Cameron Gutman
|
1c225ed04d
|
Use CUDA acceleration if other hwaccels are unavailable
|
2019-06-26 21:54:29 -07:00 |
|
Cameron Gutman
|
612b738968
|
Use the preferred sw_format when reading frames back
|
2019-06-26 21:25:41 -07:00 |
|
Cameron Gutman
|
87356ef594
|
Add CUDA acceleration support
|
2019-06-26 21:02:33 -07:00 |
|
Cameron Gutman
|
524cc97f51
|
Use borderless windowed mode when toggling to full-screen from an initially windowed stream. Fixes #248
|
2019-06-23 13:29:57 -07:00 |
|
Cameron Gutman
|
fc849fb51a
|
Switch back to SDL for audio on Linux. Fixes #245
|
2019-06-23 13:16:00 -07:00 |
|
Cameron Gutman
|
c88651939a
|
Re-add latency bounding on the SDL audio renderer
|
2019-06-23 13:14:55 -07:00 |
|
Cameron Gutman
|
01254f67f0
|
Allow audio renderers to specify capabilities
|
2019-06-23 12:49:37 -07:00 |
|
Cameron Gutman
|
4f74fd5354
|
Fix uninitialized variables and a race condition with CVDisplayLinkStart()
|
2019-05-21 09:09:16 -07:00 |
|
Cameron Gutman
|
2682829bd3
|
Fix Steam Link audio latency cap
|
2019-05-20 23:57:27 -07:00 |
|
Cameron Gutman
|
30cfa2607d
|
Hide mouse cursor after streaming on Steam Link
|
2019-05-19 17:43:46 -07:00 |
|
Cameron Gutman
|
4c17f32a2e
|
Fix extra non-working gamepad appearing to the host
|
2019-05-19 13:24:06 -07:00 |
|
Cameron Gutman
|
674220087f
|
Finish mouse emulation support with overlay and bugfixes
|
2019-05-19 13:10:42 -07:00 |
|
Cameron Gutman
|
fc8d5d5799
|
Add gamepad mouse emulation support
|
2019-05-19 12:17:23 -07:00 |
|
Cameron Gutman
|
97fb30cdf1
|
Fix a few bugs in CVDisplayLink integration in VTRenderer
|
2019-05-19 09:52:59 -07:00 |
|
Cameron Gutman
|
b3ee7a635f
|
Cap queued audio at 40 ms on Steam Link
|
2019-05-11 19:09:59 -07:00 |
|
Cameron Gutman
|
c2b12868bb
|
Move DisplayLinkVsyncSource back into VTRenderer to reduce latency
|
2019-05-11 18:33:12 -07:00 |
|
Cameron Gutman
|
bdbb03e16f
|
Request 20 ms audio frames on Steam Link to reduce CPU overhead
|
2019-05-04 15:46:11 -07:00 |
|
Cameron Gutman
|
53138d7c16
|
Name threads for easier debugging
|
2019-05-03 21:18:58 -07:00 |
|
Cameron Gutman
|
18d1d35104
|
Use QByteArray::reserve() rather than reallocating each time we must resize
|
2019-05-02 22:54:18 -07:00 |
|
Cameron Gutman
|
99d9de35de
|
Add NV21 pixel format support to SDL renderer
|
2019-05-02 22:51:28 -07:00 |
|
Cameron Gutman
|
e6a48481a5
|
Restore the bulk submission optimization for Steam Link
|
2019-05-01 22:31:52 -07:00 |
|
Cameron Gutman
|
21f2b1224a
|
Decode directly into the audio renderer's buffer to avoid a copy
|
2019-05-01 21:27:41 -07:00 |
|
Cameron Gutman
|
27708b9ecb
|
Disable HIDAPI for Xbox gamepads on macOS
|
2019-04-28 18:45:56 -07:00 |
|
Cameron Gutman
|
dfb006d264
|
More Steam Link performance optimizations
|
2019-04-28 15:57:57 -07:00 |
|
Cameron Gutman
|
4f00f62674
|
Batch controller axis events for reduced CPU usage on Steam Link
|
2019-04-28 15:16:04 -07:00 |
|
Cameron Gutman
|
4f2fe5c988
|
Reduce polling rate on SL due to CPU performance limitations
|
2019-04-28 13:04:58 -07:00 |
|
Cameron Gutman
|
2bf552f801
|
Batch audio frames on Steam Link to save CPU cycles
|
2019-04-28 12:55:04 -07:00 |
|
Cameron Gutman
|
477fa8fedf
|
Add logging callbacks for SLAudio and SLVideo
|
2019-04-28 11:01:54 -07:00 |
|
Cameron Gutman
|
4e936193c7
|
Request a test frame for MMAL decoder
|
2019-04-24 21:31:52 -07:00 |
|
Cameron Gutman
|
082e330f9d
|
Partially revert fa4c0e82bd because we'll need Qt initialized first to detect Wayland
|
2019-04-21 17:43:38 -07:00 |
|
Cameron Gutman
|
8878c4a136
|
Use VAAPI decoder for AMD on Wayland
|
2019-04-21 15:33:21 -07:00 |
|
Cameron Gutman
|
00926bac81
|
Fix build warning in SDL renderer
|
2019-04-21 11:09:11 -07:00 |
|
Cameron Gutman
|
dba479774b
|
Add DRM renderer for Rockchip devices
|
2019-04-21 05:22:37 +00:00 |
|
Cameron Gutman
|
5c8a1e632b
|
Add support for rendering NV12 hwframes with SDL
|
2019-04-19 22:16:06 -07:00 |
|
Cameron Gutman
|
d65e29111f
|
Fix some codec selection bugs
|
2019-04-19 20:57:21 -07:00 |
|
Cameron Gutman
|
1dfca525cf
|
Refactor renderer initialization to reduce duplication and inconsistency
|
2019-04-18 20:02:14 -07:00 |
|
Cameron Gutman
|
e51ad1a68a
|
Fix use-after-free due to stale m_FrontendRenderer pointer. Fixes #214
|
2019-04-18 19:26:13 -07:00 |
|
Cameron Gutman
|
9c76700f74
|
Add MMAL renderer for Raspberry Pi
|
2019-04-16 01:20:21 -07:00 |
|
Cameron Gutman
|
773b1af6f1
|
Minor refactoring in preparation for non-hwaccel decoder support
|
2019-04-15 21:56:01 -07:00 |
|
Cameron Gutman
|
b8b633a6cc
|
Use SDL to render on Wayland for VAAPI
|
2019-04-12 22:54:21 -07:00 |
|
Cameron Gutman
|
ada2270bd1
|
Reduce code duplication in renderers
|
2019-04-12 22:12:53 -07:00 |
|
Cameron Gutman
|
25e5175c54
|
Refactor parameter passing to decoders and split backend/decode-only and frontend renderers
|
2019-04-11 22:27:20 -07:00 |
|
Cameron Gutman
|
00a1948b73
|
Treat AV_CODEC_CAP_HARDWARE codecs as hardware accelerated too
|
2019-04-09 21:50:22 -07:00 |
|
Cameron Gutman
|
859a5a5e0c
|
Allow a renderer to opt-out of the render thread and use that for SDL on OGL
|
2019-04-09 21:46:14 -07:00 |
|
Cameron Gutman
|
6783cf57da
|
TTF_OpenFontRW retains the SDL_RWops on success, so we must keep the font data around to back it
|
2019-04-09 21:26:47 -07:00 |
|
Cameron Gutman
|
905a0cdac1
|
Make GFE-reported errors more clear
|
2019-04-07 12:21:05 -07:00 |
|
Cameron Gutman
|
7c3f09c70c
|
Update poor connection behavior
|
2019-04-06 12:25:35 -07:00 |
|
Cameron Gutman
|
54383b84ec
|
Fix random deadlocks on window resize with the software decoder due to processing window messages off the render thread
|
2019-04-03 20:44:50 -07:00 |
|
Cameron Gutman
|
2d7dcb495c
|
Remove CAPABILITY_DIRECT_SUBMIT for the video decoder because it can block for significant time periods when D3D9 is reconfiguring display settings (and holding the D3D global lock)
This can cause false reports of packet loss.
|
2019-03-29 23:38:23 -07:00 |
|
Cameron Gutman
|
50f47f1ed5
|
Fix handling of screen saver after fa4c0e82bd and reset background events hint for UI after streaming
|
2019-03-26 21:11:24 -07:00 |
|
Cameron Gutman
|
cabbba2448
|
Move status update overlay to bottom left for SDL
|
2019-03-23 21:14:21 -07:00 |
|
Cameron Gutman
|
c48ed7bb0d
|
Fix undefined variable usage after 2703efedef
|
2019-03-23 20:25:19 -07:00 |
|
Cameron Gutman
|
fa4c0e82bd
|
Only initialize the video subsystem once per launch
|
2019-03-23 17:46:42 -07:00 |
|
Cameron Gutman
|
c0bf8b9c25
|
Remove redundant initializtion of SDL video
|
2019-03-23 14:26:08 -07:00 |
|
Cameron Gutman
|
c313f1a20b
|
Embed our data files inside the binary with QRC
|
2019-03-23 10:45:44 -07:00 |
|
Cameron Gutman
|
b7116657d9
|
Add SLAudio renderer for Steam Link
|
2019-03-22 23:08:10 -07:00 |
|
Cameron Gutman
|
2bf3f1b94b
|
Refactor Steam Link support files
|
2019-03-22 22:51:08 -07:00 |
|
Cameron Gutman
|
e95ff989b1
|
Allow DXVA2 renderer blacklists to be bypassed
|
2019-03-21 20:44:30 -07:00 |
|
Cameron Gutman
|
018e8999e2
|
Add connection status overlay for the VT renderer
|
2019-03-18 20:56:53 -07:00 |
|
Cameron Gutman
|
f624a1817e
|
Add preference and tweak connection warning
|
2019-03-18 20:21:52 -07:00 |
|
Cameron Gutman
|
202a643e5a
|
Fix size of the status update overlay on DXVA2
|
2019-03-17 15:12:25 -07:00 |
|
Cameron Gutman
|
c75b9c9221
|
Add connection status overlay for DXVA2 and SDL
|
2019-03-17 15:08:21 -07:00 |
|
Cameron Gutman
|
052194714a
|
Adjust thread priorities based on recent refactoring
|
2019-03-17 00:45:31 -07:00 |
|
Cameron Gutman
|
bf5d43d0cf
|
Use SDL_HINT_OVERRIDE for critical hints
|
2019-03-17 00:18:15 -07:00 |
|
Cameron Gutman
|
f2ac570949
|
Rebuild SDL2 (5dc13016cf) with USE_D3D9EX
|
2019-03-16 23:52:40 -07:00 |
|
Konstantin Budnikov
|
e32bc1a0a3
|
SDL_HapticRumblePlay rumble for gamepad without SDL_HAPTIC_LEFTRIGHT support (#181)
|
2019-02-20 19:22:38 -08:00 |
|
Cameron Gutman
|
e5a8b49c93
|
Limit the number of queued frames in Pacer to prevent excessive memory consumption if the renderer gets blocked for a while
|
2019-02-18 12:13:45 -08:00 |
|
Cameron Gutman
|
2a12b018da
|
Fix special key combos on non-QWERTY latin keyboards
|
2019-02-17 13:07:54 -08:00 |
|
Cameron Gutman
|
80a40ac5f9
|
Increase frame drop threshold
|
2019-02-16 23:13:35 -08:00 |
|
Cameron Gutman
|
a1956350b1
|
Rename pacing drop to jitter drop to be less confusing for users
|
2019-02-16 23:04:25 -08:00 |
|
Cameron Gutman
|
2c09875556
|
Fix input handler cleanup on startup failure
|
2019-02-16 01:39:31 -08:00 |
|
Cameron Gutman
|
ab4127f940
|
Use presence of a frame after rendering rather than render time for frame dropping
|
2019-02-15 22:44:52 -08:00 |
|
Cameron Gutman
|
f03d12b677
|
Use a separate render thread even with a V-Sync source
|
2019-02-15 22:09:50 -08:00 |
|
Cameron Gutman
|
81c6202582
|
Rename renderFrameAtVsync() to renderFrame() in preparation for further refactoring
|
2019-02-15 21:07:02 -08:00 |
|
Cameron Gutman
|
6cab2bec61
|
Don't trust VT to tell us whether decode is supported
|
2019-02-15 19:10:21 -08:00 |
|
Cameron Gutman
|
c2268b45f6
|
Merge pull request #177 from konst2/master
Fix hotkeys for non-latin keyboard layouts
|
2019-02-15 18:57:24 -08:00 |
|
Cameron Gutman
|
38b8a59fe5
|
Adjust overlay color for more contrast
|
2019-02-15 18:53:40 -08:00 |
|
Cameron Gutman
|
b1799009b3
|
Use the Path class to lookup ModeSeven.ttf
|
2019-02-15 18:13:36 -08:00 |
|
Cameron Gutman
|
f8e693a060
|
Drop samples to account for lost time reinitializing audio. Fixes #176
|
2019-02-14 22:32:54 -08:00 |
|
Cameron Gutman
|
aba806bc32
|
Implement debug overlay for VideoToolbox renderer
|
2019-02-13 20:55:52 -08:00 |
|
Cameron Gutman
|
b1fb3f2391
|
Set FFmpeg log level at debug until first frame is rendered
|
2019-02-13 18:34:59 -08:00 |
|
konst2
|
041e901c61
|
Fix hotkeys for non-latin keyboard layouts
|
2019-02-13 19:56:44 +03:00 |
|
Cameron Gutman
|
f83853c2fb
|
OverlayManager now manages font size for the overlays
|
2019-02-12 22:36:56 -08:00 |
|
Cameron Gutman
|
b878d64460
|
Check rumble controller number is within the supported range
|
2019-02-12 22:05:55 -08:00 |
|
Cameron Gutman
|
5397e8ae1a
|
Don't use SDL_GameControllerGetPlayerIndex() because the indexes may be non-contiguous (and wrong) on XInput
|
2019-02-12 22:04:05 -08:00 |
|
Cameron Gutman
|
46bd8ad83d
|
Add debug overlay for SDL renderer
|
2019-02-12 21:55:15 -08:00 |
|
Cameron Gutman
|
5788fa7204
|
Make OverlayManager own the overlay color setting
|
2019-02-12 20:39:10 -08:00 |
|
Cameron Gutman
|
d077c6450f
|
Split SdlRenderer from renderer.h
|
2019-02-12 19:58:36 -08:00 |
|
Cameron Gutman
|
feb5e3bc78
|
Fix SDL_WasInit asserts firing due to lifetime management issues with SdlInputHandler
|
2019-02-12 19:30:02 -08:00 |
|
Cameron Gutman
|
6ed512e762
|
Provide a renderer callback when the overlay data changes
|
2019-02-12 18:43:38 -08:00 |
|
Cameron Gutman
|
947970e07b
|
Shortcut decoder initialization when only using it for capability testing
|
2019-02-12 18:42:53 -08:00 |
|
Cameron Gutman
|
df567b405a
|
Minor bugfixes to haptics
|
2019-02-11 21:55:56 -08:00 |
|
MINICOM\mrb11
|
7b0596d9df
|
Add controller rumble support.
|
2019-02-11 21:39:55 -08:00 |
|
Cameron Gutman
|
4b7200ae69
|
Don't display the connection terminated dialog for intended disconnects
|
2019-02-10 02:19:37 -08:00 |
|
Cameron Gutman
|
d2002b6a62
|
Fix SOPS issues causing 720p60 settings on non-standard resolutions and FPS values
|
2019-02-09 20:37:11 -08:00 |
|
Cameron Gutman
|
1fd099db70
|
Log when StretchRect() fails
|
2019-02-09 18:47:57 -08:00 |
|
Cameron Gutman
|
2986a40c5a
|
Fix some gamepads working for UI navigation but not in game
|
2019-01-29 22:01:05 -08:00 |
|
Cameron Gutman
|
8bb6d4d0d9
|
Fix VDPAU scaling on AMD cards. Fixes #171
|
2019-01-29 20:52:41 -08:00 |
|
Cameron Gutman
|
21aad643f3
|
Use 32 pixel alignment for HEVC to fix Intel green line issue
|
2019-01-28 21:26:27 -08:00 |
|
Cameron Gutman
|
8687448966
|
Use StretchRect() on Intel GPUs or if VideoProcessBlt() fails
|
2019-01-28 19:18:43 -08:00 |
|
Cameron Gutman
|
4471a858db
|
Fix miscounted pacer dropped frames in non-pacing mode
|
2019-01-22 21:21:29 -08:00 |
|
Cameron Gutman
|
22e712af5a
|
Add v-sync text to stats overlay
|
2019-01-22 20:55:58 -08:00 |
|
Cameron Gutman
|
9799b82d53
|
Improve long render time logic
|
2019-01-22 20:55:35 -08:00 |
|
Cameron Gutman
|
78915e0b99
|
Use a separate render thread when not using frame pacing
|
2019-01-22 20:31:31 -08:00 |
|
Cameron Gutman
|
a4edd9d202
|
Submit frame directly from the decoder thread to avoid interference from the main thread
|
2019-01-21 20:27:37 -08:00 |
|
Cameron Gutman
|
7747624c80
|
Revert "Wake up main thread immediately after new frame is pushed"
This reverts commit aab7191a44 .
|
2019-01-21 20:10:13 -08:00 |
|
Cameron Gutman
|
aab7191a44
|
Wake up main thread immediately after new frame is pushed
|
2019-01-21 18:57:14 -08:00 |
|
Cameron Gutman
|
1f972b1828
|
Require several consecutive long render times to drop a frame
|
2019-01-21 17:58:42 -08:00 |
|
Cameron Gutman
|
58b77cf589
|
Fix inaccurate pacer drop and network drop percentages and add total FPS stat
|
2019-01-21 17:43:15 -08:00 |
|
Cameron Gutman
|
c064f87889
|
Drop a frame if the rendering time exceeds the v-sync period
|
2019-01-20 19:59:29 -08:00 |
|
Cameron Gutman
|
d6b4c8e7da
|
Avoid blocking decoding operations during Present calls
|
2019-01-20 14:08:53 -08:00 |
|
Cameron Gutman
|
b19c4bfc5d
|
Add performance overlay for DXVA2 renderer
|
2019-01-19 23:05:56 -08:00 |
|
Cameron Gutman
|
067f5e33aa
|
Increase audio buffer on Linux to 25 ms. Fixes #147. Fixes #157.
|
2019-01-06 13:49:20 -08:00 |
|
Cameron Gutman
|
52ef84873e
|
Remove excess latency control logic from SDL renderer, since it doesn't appear to work very well anyway
|
2019-01-06 13:28:43 -08:00 |
|
Cameron Gutman
|
c21ba5c808
|
Allow the audio renderer to be overriden by the ML_AUDIO environment variable
|
2019-01-06 13:28:05 -08:00 |
|
Cameron Gutman
|
11c7131875
|
Replace forgotten clamp to frameCountMax removed by e75dce2543
|
2019-01-03 18:49:18 -08:00 |
|
Cameron Gutman
|
e75dce2543
|
Remove one-sample-per-callback write logic to fix crackling at 44.1 KHz. Fixes #152
|
2019-01-03 17:23:29 -08:00 |
|
Cameron Gutman
|
dcfd3d3e48
|
Add a debug print for V-sync
|
2018-12-25 22:19:23 -08:00 |
|
Cameron Gutman
|
ec2c15946a
|
Update audio buffering parameters based on local testing
|
2018-12-25 21:45:15 -08:00 |
|
Cameron Gutman
|
d1640e3bb8
|
Audio latency tweaks and fix for PulseAudio with A2DP
|
2018-12-25 17:54:18 -08:00 |
|
Cameron Gutman
|
8612e6726d
|
Remove accidentally enabled debug prints
|
2018-12-25 14:05:55 -08:00 |
|
Cameron Gutman
|
14cb2e1999
|
Remove latency drop logic and replace by single frame writes
|
2018-12-25 14:05:17 -08:00 |
|
Cameron Gutman
|
cfabaf334e
|
Add frame pacing toggle
|
2018-12-25 12:57:00 -08:00 |
|