Cameron Gutman
|
9f41e98e3f
|
Remove RPi hacks that are not necessary on SDL 2.0.11
|
2020-02-24 19:55:22 -08:00 |
|
Cameron Gutman
|
a44ed0b047
|
Allow initial destination position to be used as an offset with scaleSourceToDestinationSurface()
|
2020-02-24 18:01:30 -08:00 |
|
Cameron Gutman
|
979de190dc
|
Cap resolution options at 1080p on Steam Link and Raspberry Pi due to hardware limitations
|
2020-02-23 00:43:43 -08:00 |
|
Cameron Gutman
|
46bcbda972
|
MMAL is always full-screen
|
2020-02-23 00:25:01 -08:00 |
|
Cameron Gutman
|
43bdc353fb
|
Fix 720p streaming on MMAL
|
2020-02-23 00:22:44 -08:00 |
|
Cameron Gutman
|
e790b0761e
|
Add another RPi hack to fix mouse capture in full-screen in LXDE
|
2020-02-09 12:00:30 -08:00 |
|
Cameron Gutman
|
57a1c5eb76
|
Disable the window mode options for always full-screen renderers
|
2020-02-09 11:35:05 -08:00 |
|
Cameron Gutman
|
5b7e2521cc
|
Ignore unbind and full-screen key combos on EGLFS
|
2020-02-09 10:20:41 -08:00 |
|
Cameron Gutman
|
fced653c1c
|
Add a hack to avoid PulseAudio on RPi
|
2020-02-08 23:35:42 -08:00 |
|
Cameron Gutman
|
77386f8dfc
|
Reduce buffering for MMAL to avoid requiring 128 MB VRAM split
|
2020-02-08 17:56:30 -08:00 |
|
Cameron Gutman
|
529fdf0341
|
Add decoder options dictionary to prepareDecoderContext()
|
2020-02-08 17:47:26 -08:00 |
|
Cameron Gutman
|
4794f44a6d
|
Charge decoders for time spent holding on to frames
|
2020-01-26 20:15:11 -08:00 |
|
Cameron Gutman
|
f0119b1231
|
Add support for the out-of-tree Jetson FFmpeg NVMPI decoders
https://github.com/jocover/jetson-ffmpeg
|
2020-01-26 19:16:03 -08:00 |
|
Cameron Gutman
|
4c579aa826
|
Provide another frame if avcodec_receive_frame() returns EAGAIN
|
2020-01-26 15:36:22 -08:00 |
|
Cameron Gutman
|
b9463b3c0e
|
Allow NV12 and NV21 to be selected for non-hwaccel decoders using the SDL renderer
|
2020-01-26 15:02:29 -08:00 |
|
Cameron Gutman
|
cede6ce8a9
|
Add H264_DECODER_HINT and HEVC_DECODER_HINT envvars to specify a decoder manually
|
2020-01-26 14:40:48 -08:00 |
|
Cameron Gutman
|
956e6e3638
|
Avoid slicing for hardware decoders that use SDL as the renderer
|
2020-01-26 14:13:42 -08:00 |
|
Cameron Gutman
|
58313ad8fc
|
Allow default mouse polling interval to be overridden by setting MOUSE_POLLING_INTERVAL
|
2020-01-21 19:15:17 -08:00 |
|
Cameron Gutman
|
7aff148e9f
|
Add --packet-size command-line option
|
2020-01-21 19:10:10 -08:00 |
|
Cameron Gutman
|
91be6c8028
|
Only hide Qt's mouse cursor on EGLFS
|
2020-01-15 18:23:02 -08:00 |
|
Cameron Gutman
|
2e0bd2ec28
|
Invoke avcodec_receive_frame() during decoder testing
|
2020-01-15 18:09:59 -08:00 |
|
Cameron Gutman
|
a0151fbc04
|
Fix memory leak if 10-bit color is not supported
|
2020-01-15 17:56:11 -08:00 |
|
Cameron Gutman
|
d853782fea
|
Add support for the Meta/Super/Windows key on macOS and Linux
|
2020-01-15 17:54:57 -08:00 |
|
Cameron Gutman
|
c6638a7154
|
Add support for 10-bit output in full-screen with DXVA2
|
2020-01-14 17:12:55 -08:00 |
|
Cameron Gutman
|
4abebe3aec
|
Hide the Qt cursor when streaming
|
2020-01-11 02:06:08 -08:00 |
|
Cameron Gutman
|
5aed8f928a
|
Add V4L2M2M support using SDL renderer
Note: This requires FFmpeg master to work, since it depends on:
https://github.com/FFmpeg/FFmpeg/commit/d61cf1b1ebc2477749d7d7825a072400ed24af9
|
2020-01-10 20:52:16 -08:00 |
|
Cameron Gutman
|
1313c7b3bf
|
Enable HDR as an experimental option
|
2019-12-30 18:05:43 -06:00 |
|
Cameron Gutman
|
e1603f0808
|
Explicitly use Rec 601 for VDPAU
|
2019-12-16 18:02:28 -08:00 |
|
Cameron Gutman
|
d4c2350d63
|
Fix DXVA2 rendering with the wrong colorspace on AMD GPUs
|
2019-12-15 13:29:19 -08:00 |
|
Cameron Gutman
|
5e5470ae12
|
Specify video transfer matrix for SLVideo
|
2019-12-15 11:27:47 -08:00 |
|
Cameron Gutman
|
6230a99360
|
Fix colorspace conversion with SDL as frontend renderer
|
2019-12-14 17:17:29 -08:00 |
|
Cameron Gutman
|
801adb6af7
|
Add colorspace support to VAAPI renderer
|
2019-12-14 16:58:04 -08:00 |
|
Cameron Gutman
|
8b9b96f422
|
Only enable slicing when CPU decoding
|
2019-12-14 15:34:48 -08:00 |
|
Cameron Gutman
|
160684f23e
|
Allow decoders to choose a desired colorspace
|
2019-12-14 15:25:56 -08:00 |
|
Cameron Gutman
|
88930a9de4
|
Optimize decoder capability checking
|
2019-12-14 15:20:44 -08:00 |
|
Cameron Gutman
|
af6b8c9b88
|
Update common-c with colorspace configuration support
|
2019-12-14 14:40:02 -08:00 |
|
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 |
|