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 |
|
Cameron Gutman
|
c054536fab
|
Count Pacer delay in frame stats
|
2018-12-25 12:09:45 -08:00 |
|
Cameron Gutman
|
de3928cb4d
|
Reduce FPs on the unmapped gamepad dialog
|
2018-12-25 11:41:48 -08:00 |
|
Cameron Gutman
|
c6383f042c
|
Pin server cert to host during pairing
|
2018-12-21 18:08:07 -08:00 |
|
Cameron Gutman
|
8a5e3cdb76
|
Fix returning to app page when start fails
|
2018-12-05 22:17:26 -08:00 |
|
Cameron Gutman
|
c40174034c
|
Don't kill the app on the host when the session terminates unexpectedly
|
2018-12-05 20:17:00 -08:00 |
|
Cameron Gutman
|
5029c855f0
|
Simplify app quitting implementation a bit
|
2018-12-05 19:49:06 -08:00 |
|
Janne Hakonen
|
0ab07303c9
|
Add quit cli command and app quit option after stream session. Fixes #92 (#138)
* Add quit cli command and app quit option after stream session. Fixes #92
* Code review fixes.
|
2018-12-05 18:45:28 -08:00 |
|
Cameron Gutman
|
b97758ef46
|
Switch to libsoundio on Linux now that PA works reliably after d1fe752028
|
2018-11-28 00:13:04 -08:00 |
|
Cameron Gutman
|
d1fe752028
|
Fix busy looping in libsoundio audio renderer when no audio is playing
|
2018-11-27 23:43:31 -08:00 |
|
Cameron Gutman
|
065a6caee5
|
Use automatic remote streaming detection
|
2018-11-21 20:55:25 -08:00 |
|
Cameron Gutman
|
bf05088d70
|
Remove checks that rely on display modes because they can be inaccurate on machines when the monitor is off
|
2018-11-20 22:02:43 -08:00 |
|
Cameron Gutman
|
688c4a90d9
|
Use the raw display bounds not the usable display bounds for full-screen calculations
|
2018-11-18 23:10:30 -08:00 |
|
Cameron Gutman
|
d847b71c86
|
Fix host virtual gamepads being reconnected during stream startup and causing issues with multiple controllers. Fixes #108
|
2018-11-18 12:05:17 -08:00 |
|
Cameron Gutman
|
dfcc1ff899
|
Also print gamepad mapping on gamepad attach
|
2018-11-17 17:23:20 -08:00 |
|
Cameron Gutman
|
65562937f3
|
Print gamepad GUID string in logs
|
2018-11-17 17:10:52 -08:00 |
|
Cameron Gutman
|
25f70e570e
|
Add timer-based input batching for GFE 3.16
|
2018-11-15 20:52:07 -08:00 |
|
Cameron Gutman
|
789e52af57
|
Use SDL_GameControllerGetPlayerIndex() as a hint for picking player indexes
|
2018-11-03 13:04:34 -07:00 |
|
Cameron Gutman
|
76e5794203
|
Remove SetThreadExecutionState() call now that SDL_DisableScreenSaver() works on Windows
|
2018-11-03 12:44:14 -07:00 |
|
Cameron Gutman
|
e1fab22d98
|
Fix accidental removal of decoder deletion in previous commit
|
2018-10-31 18:49:37 -07:00 |
|
Cameron Gutman
|
cb5e58d465
|
Fix use-after-free caught by debug build of SDL2
|
2018-10-31 18:20:39 -07:00 |
|
Cameron Gutman
|
d5a1189053
|
Avoid VAAPI on AMD drivers due to a bad memory leak
|
2018-10-14 20:37:13 -07:00 |
|
Cameron Gutman
|
fd63aad3b8
|
Only avoid HEVC on GFE 3.10 and lower on macOS
|
2018-10-14 11:28:52 -07:00 |
|
Cameron Gutman
|
36f468a599
|
Fix window icon disappearing when toggling out of full-screen mode on Windows
|
2018-10-12 20:34:58 -07:00 |
|
Cameron Gutman
|
dfae69834a
|
Fix misleading debug print
|
2018-10-12 20:02:54 -07:00 |
|
Cameron Gutman
|
4f84843b00
|
Fixup H.264 SPS for VideoToolbox compatibility. Fixes #98
|
2018-10-12 17:59:53 -07:00 |
|
Cameron Gutman
|
1fc63a6529
|
Exclude libsoundio from Linux build
|
2018-10-06 18:24:34 -07:00 |
|
Cameron Gutman
|
e182445593
|
libsoundio audio renderer for Windows and Mac (#97)
|
2018-10-05 19:22:57 -07:00 |
|
Cameron Gutman
|
6661ca17c2
|
Fix keys being stuck after Moonlight loses focus or is quit via OS shortcut (Alt+Tab/Alt+F4)
|
2018-10-03 18:27:12 -07:00 |
|
Cameron Gutman
|
1b4e75f49e
|
Add support for sending X1 and X2 mouse buttons. Fixes #91
|
2018-10-03 17:56:42 -07:00 |
|
Cameron Gutman
|
9075f309ad
|
Disable annoying stream stats prints
|
2018-10-02 20:12:53 -07:00 |
|
Cameron Gutman
|
18d97e9f73
|
Fix errant touch events on macOS
|
2018-10-02 20:11:13 -07:00 |
|
Cameron Gutman
|
bccd118abb
|
Finish removal of auto audio option and rename the remaining options
|
2018-10-02 15:30:22 -07:00 |
|
Cameron Gutman
|
3dc049ee5f
|
Remove automatic audio configuration permanently due to brokenness and allow renderers to request reinitialization on demand
|
2018-10-02 01:21:42 -07:00 |
|
Cameron Gutman
|
a614a693e5
|
Revert "Fix surround sound channel mapping on ALSA" since it can be handled inside PortAudio
|
2018-10-02 01:09:13 -07:00 |
|
Cameron Gutman
|
8dddcd04d5
|
Remove IAudioRenderer::testAudio() and just use IAudioRenderer::prepareForPlayback() instead
|
2018-10-01 19:49:08 -07:00 |
|
Cameron Gutman
|
209b4a1b02
|
Fix surround sound channel mapping on ALSA
|
2018-10-01 18:46:16 -07:00 |
|
Cameron Gutman
|
c239d0814b
|
Move audio renderer destruction back off the main thread now that we're using atexit(SDL_Quit)
|
2018-09-30 18:09:12 -07:00 |
|
Cameron Gutman
|
f7789a1e4a
|
Add Select+Start+L1+R1 quit combo
|
2018-09-30 14:38:54 -07:00 |
|
Cameron Gutman
|
9fb0bffd61
|
Finish touch input support
|
2018-09-30 01:03:26 -07:00 |
|
Cameron Gutman
|
4a452a2467
|
Touch input WIP
|
2018-09-29 22:43:28 -07:00 |
|
Cameron Gutman
|
396d65b003
|
Fix typo in previous commit
|
2018-09-29 22:24:26 -07:00 |
|
Cameron Gutman
|
fa52e7c1b7
|
Fix audio device error with PA renderer (and constify some methods)
|
2018-09-29 22:19:41 -07:00 |
|
Cameron Gutman
|
6758d6c43e
|
Create MappingManager class to handle gamepad mappings (currently only saving custom mappings)
|
2018-09-29 20:33:45 -07:00 |
|
Cameron Gutman
|
4ad27670ec
|
Provide detection and help for unmapped gamepads. Fixes #70
|
2018-09-29 19:14:52 -07:00 |
|
Cameron Gutman
|
1ad072236d
|
Avoid calling Pa_IsStreamStopped() on each audio frame
|
2018-09-29 16:52:40 -07:00 |
|
Cameron Gutman
|
200b1c5095
|
Rename hpp -> h
|
2018-09-29 16:18:46 -07:00 |
|
Janne Hakonen
|
d14cfb577b
|
Add command line parameters. Fixes #30 (#89)
* Add command line parameters. Fixes #30
* Fixed compile errors
* Fixed code review findings
* Fixed code review findings, take 2
|
2018-09-29 14:06:55 -07:00 |
|
Cameron Gutman
|
4620fa5001
|
Retry serverinfo query for adding a PC if the request fails with ServiceUnavailableError. Fixes #88
|
2018-09-29 03:01:49 -07:00 |
|
Cameron Gutman
|
a0249b4337
|
Add video stats for performance overlay
|
2018-09-25 00:47:59 -07:00 |
|
Cameron Gutman
|
f2e40889b2
|
Performance tweaks to PortAudio renderer
|
2018-09-22 21:00:44 -07:00 |
|
Cameron Gutman
|
896b247bc0
|
Remove H.264 high performance preference and enable HEVC split encode
|
2018-09-22 20:27:02 -07:00 |
|
Cameron Gutman
|
605d52f160
|
Don't block in audio/video renderer callbacks while the renderer is being destroyed
|
2018-09-22 20:03:41 -07:00 |
|
Cameron Gutman
|
afb2b465a8
|
Avoid using direct submit for video decoding because FFmpeg can delay for a fairly significant period of time within avcodec_send_packet() and avcodec_receive_frame(), even for software decoding. This is particularly apparent when streaming well above hardware capabilities and leads to packet loss.
|
2018-09-22 19:30:13 -07:00 |
|
Cameron Gutman
|
b1de66d878
|
Directly use the AVBufferSampleDisplayLayer as the rendering view's layer to increase efficiency
|
2018-09-22 18:34:15 -07:00 |
|
Cameron Gutman
|
71b625081a
|
Switch to PortAudio for audio playback
|
2018-09-22 17:39:12 -07:00 |
|
Cameron Gutman
|
2cd4851601
|
Improve PortAudio channel autodetection algorithm to workaround PulseAudio issues
|
2018-09-22 16:51:45 -07:00 |
|
Cameron Gutman
|
14ec0259df
|
Switch back from Qt Multimedia to SDL for audio configuration detection. Qt is also broken, but just broken in a way that always reports stereo
|
2018-09-22 16:20:00 -07:00 |
|
Cameron Gutman
|
9f0617f6ee
|
Gracefully fall back to stereo audio if 5.1 doesn't work
|
2018-09-22 16:04:36 -07:00 |
|
Cameron Gutman
|
2c960059ee
|
Add PoC PortAudio audio renderer
|
2018-09-21 23:30:47 -07:00 |
|
Cameron Gutman
|
af9fb0e091
|
Fix GetVideoProcessorCaps() failure handling
|
2018-09-21 17:29:53 -07:00 |
|
Cameron Gutman
|
f96911e1ba
|
Use DXVA2_VideoProcProgressiveDevice since we don't need any fancy image processing or deinterlacing
|
2018-09-21 17:07:28 -07:00 |
|
Cameron Gutman
|
8a0089eb81
|
Print driver information in VDPAU and VAAPI renderers
|
2018-09-20 21:23:16 -07:00 |
|
Cameron Gutman
|
f4408473e6
|
Fix broken Alt+Tab behavior. Fixes #72
|
2018-09-16 11:21:15 -07:00 |
|
Cameron Gutman
|
04376ca047
|
Fix Clang format string signness mismatch warnings
|
2018-09-15 16:00:36 -07:00 |
|
Cameron Gutman
|
a2eece0f5c
|
Log audio buffer size
|
2018-09-15 13:27:57 -07:00 |
|
Cameron Gutman
|
a03279df3b
|
Fix errant mouse button event being sent on mouse capture
|
2018-09-14 22:09:45 -07:00 |
|
Cameron Gutman
|
bef6c2b665
|
Fix the underflow caused by the underflow fix :(
|
2018-09-14 21:03:06 -07:00 |
|
Cameron Gutman
|
8002c65693
|
Block Intel drivers earlier than 4836 from using HEVC due to artifacting issues. Fixes #32
|
2018-09-14 20:20:47 -07:00 |
|
Cameron Gutman
|
72afa55897
|
Add tip text to the StreamSegue telling users about the quit shortcut. Fixes #77
|
2018-09-14 19:11:06 -07:00 |
|
Cameron Gutman
|
eed9fca10c
|
Mass conversion of isNull() -> isEmpty()
|
2018-09-14 18:36:15 -07:00 |
|
Cameron Gutman
|
25d97e187a
|
Fix large mouse input delay on GFE 3.14.0 and earlier. Fixes #68
|
2018-09-14 18:35:28 -07:00 |
|
Cameron Gutman
|
7ca2ca8045
|
Print the GPU driver version on Windows
|
2018-09-13 14:54:30 -07:00 |
|
Cameron Gutman
|
7bc43c226d
|
Fix underflow in audio drop code
|
2018-09-13 14:09:03 -07:00 |
|
Cameron Gutman
|
da4697794d
|
Increase buffer size for glitch-free playback on macOS
|
2018-09-13 13:02:21 -07:00 |
|
Cameron Gutman
|
879c524658
|
Revert "Process Qt events in the SDL loop" to fix input issues on Windows and Mac
This reverts commit c8e00195ed .
|
2018-09-13 12:14:56 -07:00 |
|
Cameron Gutman
|
e3a8f010c3
|
Fixes for experimental Qt audio renderer
|
2018-09-13 12:00:51 -07:00 |
|
Cameron Gutman
|
f2f8f92172
|
Add gamepad mapping DB from https://github.com/gabomdq/SDL_GameControllerDB
|
2018-09-13 11:58:32 -07:00 |
|
Cameron Gutman
|
6e06174db6
|
Add experimental Qt audio renderer
|
2018-09-13 08:17:26 -07:00 |
|
Cameron Gutman
|
c8e00195ed
|
Process Qt events in the SDL loop
|
2018-09-13 08:03:06 -07:00 |
|
Cameron Gutman
|
64bc189010
|
Fixes to SDL audio renderer and autodetection support
|
2018-09-13 07:46:01 -07:00 |
|
Cameron Gutman
|
12496e4432
|
Refactor audio rendering into a separate class
|
2018-09-13 06:23:06 -07:00 |
|
Cameron Gutman
|
9e2fd67487
|
Add option to enable mouse acceleration for remote desktop usage
|
2018-09-09 13:21:11 -07:00 |
|
Cameron Gutman
|
9dcd856099
|
Blacklist Kepler GPUs for HEVC due to hybrid decode support present in some drivers
|
2018-09-09 10:48:01 -07:00 |
|
Cameron Gutman
|
cfbcc4093c
|
Reduce UI jank when transitioning to the stream segue
|
2018-09-09 10:17:32 -07:00 |
|
Cameron Gutman
|
4712080a1b
|
Fix centering of streaming window and size after toggling full-screen on Windows
|
2018-09-08 16:01:35 -07:00 |
|
Cameron Gutman
|
93c683be3a
|
Allow renderers that force V-sync on to run without it when streaming higher than the display refresh rate
|
2018-09-08 15:27:21 -07:00 |
|
Cameron Gutman
|
c9a7c15f98
|
Improve unsupported FPS options and performance
|
2018-09-08 15:09:46 -07:00 |
|
Cameron Gutman
|
64a08f0533
|
Allow higher than display refresh rate streaming with unsupported FPS option
|
2018-09-08 14:34:11 -07:00 |
|
Cameron Gutman
|
52c6455ca5
|
Avoid sending a click event on focus gain on Linux
|
2018-09-08 14:05:42 -07:00 |
|
Cameron Gutman
|
238681d72f
|
Merge pull request #67 from jhakonen/capture-on-activated-window
Capture mouse cursor when clicking inactive window
|
2018-09-08 14:01:27 -07:00 |
|
Janne Hakonen
|
300b53f28c
|
Capture mouse cursor when clicking inactive window
|
2018-09-08 16:39:20 +03:00 |
|
Janne Hakonen
|
3dabb1c891
|
Fixed < key in keyboard not working
|
2018-09-08 14:16:27 +03:00 |
|
Cameron Gutman
|
6a2b717ff1
|
Run in native resolution on Retina displays when streaming above scaled resolution
|
2018-09-07 01:12:18 -07:00 |
|
Cameron Gutman
|
475a39cb73
|
Recreate the decoder when moving to a new display to allow Pacer to get the new refresh rate
|
2018-09-06 19:42:53 -07:00 |
|
Cameron Gutman
|
4dba74e2f9
|
Fix handling of undefined and non-matching refresh rate
|
2018-09-06 19:16:59 -07:00 |
|
Cameron Gutman
|
587d783955
|
Use SDL_WINDOWPOS_CENTERED_DISPLAY() to fix incorrect positioning on multi-display system on macOS
|
2018-09-06 18:53:00 -07:00 |
|
Cameron Gutman
|
5da156b433
|
Prefer H.264 for higher decoding performance in very high load situations
|
2018-09-05 18:57:40 -07:00 |
|
Cameron Gutman
|
0d68faf40c
|
Remove unused parameter
|
2018-09-05 15:45:36 -07:00 |
|
Cameron Gutman
|
856318f947
|
Start the SDL window on the same display as the Qt UI was displayed on
|
2018-09-05 15:15:53 -07:00 |
|
Cameron Gutman
|
9a71b4c237
|
Improve mouse batching to only batch if the last event was less than 1 millisecond ago
|
2018-09-04 00:09:35 -07:00 |
|
Cameron Gutman
|
9aa487418f
|
Force V-Sync enabled for DXVA2 windowed with DWM composition enabled
|
2018-09-03 23:34:15 -07:00 |
|
Cameron Gutman
|
203b2fcaca
|
Batch mouse move events for high DPI mice
|
2018-09-04 00:37:21 -04:00 |
|
Cameron Gutman
|
dae21f2638
|
Detect native panel resolution on Retina displays. Fixes #59
|
2018-09-04 00:21:37 -04:00 |
|
Cameron Gutman
|
af6e99cbac
|
Select the highest full-screen refresh rate that our stream FPS evenly divides
|
2018-09-03 22:54:41 -04:00 |
|