Cameron Gutman
b9a6fb1fe5
Add workaround for AVSampleBufferDisplayLayer colorspace and artifacting issues
...
Fixes #493
2022-01-15 14:44:08 -06:00
Cameron Gutman
4b6194e15e
Add chroma location buffer attachment
2022-01-15 12:17:31 -06:00
Cameron Gutman
e1b3f90f8b
Add workaround for duplicate size changed events on Wayland
2022-01-14 23:36:21 -06:00
Cameron Gutman
31eddd8da0
Remove superfluous colorspace check
2022-01-13 01:19:17 -06:00
Cameron Gutman
abf2a14ee6
Handle colorspace changes in SDL renderer
2022-01-13 01:16:09 -06:00
Cameron Gutman
08175de069
Fix incorrect colorspace in MMAL renderer
2022-01-09 17:04:38 -06:00
Cameron Gutman
808933cd70
Use DT files to get status of FKMS and rpivid
2022-01-09 16:44:20 -06:00
Cameron Gutman
384dd2adab
Prefer a render node in indirect rendering mode
2022-01-08 18:39:12 -06:00
lyashenko.v
1046d264d8
Fixed not working frame pacing on macOS
2022-01-06 23:23:00 -06:00
Cameron Gutman
5612e9864e
Fix handling of some validation scenarios
...
- HEVC forced with no host or client hw support
- H.264 forced with no client hw support
- Client has hw HEVC only and host only supports H.264
- Client has no hw decode at all
2022-01-06 23:15:19 -06:00
Cameron Gutman
8302187dee
Remove superfluous availability checks
2022-01-06 23:05:18 -06:00
Cameron Gutman
77d07c7c4d
Fix incorrect error message when only HEVC decode is available but HEVC encode is not
2022-01-06 22:08:43 -06:00
Cameron Gutman
b2265080fd
Allow HEVC decoders to satisfy hardware decoding check if H.264 is unavailable
2022-01-06 22:07:31 -06:00
Cameron Gutman
0d70bd9ac0
Add (untested) VAAPI support for CCS planes on Tiger Lake
...
See https://github.com/intel/media-driver/issues/1210
2022-01-05 21:09:08 -06:00
Cameron Gutman
8f63d59b81
Correct comment to avoid confusion
2022-01-04 22:00:46 -06:00
Cameron Gutman
0395c0cc95
Revert "Revert "Don't attempt to use direct rendering without DRM master""
...
The correct fix was 154b5b6ded
.
This reverts commit 8219dbef6f
.
2022-01-04 21:59:02 -06:00
Cameron Gutman
72065412a3
Don't allow copyback rendering on RPi by default
2022-01-04 20:35:17 -06:00
Cameron Gutman
67c801c4e7
Use av_frame_copy_props() to copy metadata
2022-01-02 17:38:58 -06:00
Cameron Gutman
f7c8ad4c5a
Fail render frame test for unsupported pixel formats
2022-01-02 15:03:49 -06:00
Cameron Gutman
61092b34de
Properly handle mismatched pitch between frame and texture
2022-01-02 14:35:14 -06:00
Cameron Gutman
1e9e96fb8c
Small code cleanup for hwframe code
2022-01-02 13:58:37 -06:00
Cameron Gutman
17d1ced07c
Add support for mapping hwframes
2022-01-02 13:41:36 -06:00
Cameron Gutman
a26ced04ff
Add support for negotiating non-default transfer formats for hwframes
2022-01-01 22:15:43 -06:00
Cameron Gutman
154b5b6ded
Fix fallback to SDL read-back for DRM contexts when !HAVE_EGL
2022-01-01 20:44:29 -06:00
Cameron Gutman
8219dbef6f
Revert "Don't attempt to use direct rendering without DRM master"
...
We support indirect rendering via SDL, even if EGL is unavailable.
This reverts commit 6145913068
.
2022-01-01 20:37:04 -06:00
Cameron Gutman
3da724e76a
Fix and enhance the Full KMS check
2021-12-28 17:13:54 -06:00
Cameron Gutman
1616d237ae
Avoid h264_v4l2m2m by default on RPi builds
2021-12-28 16:28:04 -06:00
Cameron Gutman
d8acf24af0
Don't use SdlRenderer with MMAL
2021-12-19 20:58:50 -06:00
Cameron Gutman
97412b3c79
Display warnings about Full KMS mode and HEVC on the Pi 4
2021-12-19 20:33:48 -06:00
Cameron Gutman
6145913068
Don't attempt to use direct rendering without DRM master
2021-12-19 20:32:15 -06:00
Cameron Gutman
e56bb6785f
Change display mode when using KMSDRM backend
2021-12-18 21:07:35 -06:00
Cameron Gutman
00d3530f64
Don't try VDPAU on XWayland by default
2021-12-15 20:49:12 -06:00
Cameron Gutman
1e6ca18193
Fix error checking in decode test
2021-12-15 17:33:28 -06:00
Cameron Gutman
5a32992497
Try to learn if decoders support retrying avcodec_receive_frame()
2021-12-14 20:41:27 -06:00
Cameron Gutman
36e0468a99
Optimize CUDA GL interop and provide fallback
2021-12-13 21:41:00 -06:00
Cameron Gutman
9999ded933
Quiet down log spam for asynchronous decoders
2021-12-11 18:37:39 -06:00
Cameron Gutman
80128e8293
Properly support asynchronous decoders that return multiple frames at a time
2021-12-11 18:15:49 -06:00
Cameron Gutman
0870dd15a8
Fix improper null termination when stripping clipboard text
2021-12-10 02:04:19 -06:00
Cameron Gutman
54cfc46500
Fix VDPAU on X11
2021-12-06 20:42:51 -06:00
Cameron Gutman
c09559ade5
Don't try to initialize VDPAU on Wayland
2021-12-06 19:38:28 -06:00
Cameron Gutman
3e9aea1f7a
Optimize CUDA support to avoid roundtrip to CPU memory
2021-12-06 18:23:40 -06:00
Cameron Gutman
97a09e0571
Send UTF-8 clipboard text directly rather than emulating keystrokes
2021-12-03 11:32:58 +03:00
Cameron Gutman
c7121516c1
Remove workaround for window occlusion issue fixed in SDL 2.0.18
2021-11-29 23:13:50 +03:00
Cameron Gutman
56a5fbf63b
Fix get_buffer2() thread-safety warning with FFmpeg 4.4
2021-11-29 19:45:28 +03:00
Cameron Gutman
3fe6e18609
Use SDL_GameControllerHasRumble() on SDL 2.0.18
2021-11-27 17:06:02 +03:00
Cameron Gutman
47f3f30d83
Add high resolution scrolling support with SDL 2.0.18
2021-11-27 06:59:16 +03:00
Cameron Gutman
085a904970
Fix false warning when building without libva-x11 or libva-wayland
2021-11-25 17:52:54 +03:00
Cameron Gutman
0fa7723f51
Fix build without libva-x11
2021-11-25 17:51:08 +03:00
Cameron Gutman
4de3aa96b6
Add YUV colorspace and color range attributes to EGLImage
2021-11-19 01:15:33 -06:00
Cameron Gutman
1193943228
Re-add comment on color_range comparison
2021-11-19 00:56:46 -06:00
Cameron Gutman
2959faca0c
Fix colorspace transitions in EGLRenderer
2021-11-19 00:54:59 -06:00
Cameron Gutman
d0df4fa3a0
Fix handling of HDR colorspace transitions in VT renderer
2021-11-19 00:28:15 -06:00
liyu
0a301dd2f9
enables H265 HDR option and adds PQ transforeFunction to render HDR stream on macOS 10.13+
2021-11-18 23:42:44 -06:00
Cameron Gutman
43e3679297
Revert "Disable the EGL render thread on Wayland"
...
This reverts commit dcc567ebda
.
2021-11-15 21:33:28 -06:00
Cameron Gutman
0455063854
Fix driver version check for Intel's updated version schema in 100 and newer drivers
...
Fixes #673
2021-11-13 20:44:10 -06:00
Cameron Gutman
d2c9f058f8
Add names to session threads
2021-10-24 16:22:49 -05:00
Cameron Gutman
4873862d16
Use SDL_WaitEventTimeout() on SDL 2.0.16
2021-08-15 15:16:51 -05:00
Cameron Gutman
425efe3d72
Switch to SDL audio backend by default on Windows and macOS
2021-08-15 14:58:29 -05:00
Cameron Gutman
666dc13c01
Use SDL's new support for keyboard grab on macOS
2021-08-15 14:54:26 -05:00
Cameron Gutman
dcc567ebda
Disable the EGL render thread on Wayland
2021-07-31 17:24:18 -05:00
Cameron Gutman
8159e07427
Ensure our GL context is always current
2021-07-28 20:31:22 -05:00
Cameron Gutman
fa3f822cf1
Rework handling of addresses to allow alternate HTTP ports
2021-07-02 23:34:54 -05:00
Cameron Gutman
5afab126b3
Refactor NvPairingManager, NvComputer, and NvHTTP to reduce passing of addresses
2021-07-02 17:14:48 -05:00
Cameron Gutman
bee8378795
Pass RTSP session URL to moonlight-common-c for dynamic ports
2021-07-02 01:51:08 -05:00
Cameron Gutman
8048938158
Fix Linux build
2021-06-12 16:12:46 -05:00
Cameron Gutman
3689c7f982
Don't enable input capture if the window can't be foregrounded
2021-06-12 13:59:13 -05:00
Cameron Gutman
56119eebae
Adapt to constification of AVCodec in FFmpeg master
2021-05-24 23:27:31 -05:00
Cameron Gutman
c17c8e2a2c
Remove receive time from performance overlay
...
It is largely superseded by network latency
2021-05-22 13:59:14 -05:00
Cameron Gutman
e45a60f2ed
Save RTT in VIDEO_STATS so it can be logged on disconnect
2021-05-22 13:57:12 -05:00
Cameron Gutman
581c9438ca
Add network latency to stats overlay
2021-05-15 14:40:31 -05:00
Cameron Gutman
8fcef63890
Don't waste time performing extra decoder initializations for EGL when it's not supported
2021-04-30 20:52:09 -05:00
Cameron Gutman
2fbb320539
Refuse to stream if Moonlight is known incompatible with the host GFE version
2021-04-30 20:05:49 -05:00
Cameron Gutman
b50e5ed7e6
Fix keyboard grab on X11
...
Fixes #584
2021-04-30 18:17:15 -05:00
Cameron Gutman
26c82ca72c
Don't enable vsync on test decoders
2021-04-30 18:12:56 -05:00
Cameron Gutman
e62a268aac
Avoid audio encryption on Steam Link for performance reasons
2021-04-23 19:49:03 -05:00
Cameron Gutman
140a9e5191
Enable audio stream encryption
2021-04-23 18:55:10 -05:00
Cameron Gutman
02e3f0e71b
Add missing declaration
2021-03-22 23:32:00 -05:00
Cameron Gutman
74bf981f3d
Ensure hwframe read-back works in SDL renderer
2021-03-22 23:15:14 -05:00
Cameron Gutman
32f0678692
Only pass modifiers array if DRM_MODE_FB_MODIFIERS is set
2021-03-22 22:52:06 -05:00
Cameron Gutman
e74753bec1
Allow fallback from EGL to direct on EGLImage export failure
2021-03-22 22:51:29 -05:00
Cameron Gutman
4a8c9ad17f
Add support for 4-plane frames
2021-03-22 00:46:04 -05:00
Cameron Gutman
0c6c882f50
Fix attribute buffer overflow for fully planar YUV formats
2021-03-22 00:14:06 -05:00
Cameron Gutman
579f25c1ba
Add missing EGL_DMA_BUF_PLANE2 definitions
2021-03-22 00:02:03 -05:00
Cameron Gutman
d5eb5c8816
Fix build with EGL 1.4 headers
2021-03-21 23:59:35 -05:00
Cameron Gutman
26d04b5f9c
Render DRM-PRIME frames as opaque images
...
We can't always assume they are NV12. Even if they _are_ NV12,
they may have DRM format modifiers that are incompatible with
simply assuming linear Y and UV buffers (such as tiling).
2021-03-21 23:23:12 -05:00
Cameron Gutman
a0b9684504
Continue refactoring for non-NV12 support in EGLRenderer
2021-03-21 21:43:57 -05:00
Cameron Gutman
402b6d1f0c
Begin refactoring for non-NV12 support in EGLRenderer
2021-03-21 19:20:52 -05:00
Cameron Gutman
e87a5fa354
Pass DRM format modifiers to FB creation
2021-03-21 17:54:10 -05:00
Cameron Gutman
98672c8e44
Allow remote desktop mouse mode in embedded mode
...
It can be easier to control the mouse on the desktop that way
2021-03-13 16:58:58 -06:00
Cameron Gutman
d6b314f573
Add option to build for embedded environments
2021-03-13 15:20:58 -06:00
Cameron Gutman
955da6be30
Enable Gallium VAAPI driver on VAAPI 1.x
2021-03-13 14:37:13 -06:00
Cameron Gutman
783a57ef89
Use separate thread for streaming on X11 and Wayland
2021-03-07 12:15:42 -06:00
Cameron Gutman
d33ccce683
Hold a reference to the underlying DMA-BUFs until the next frame
2021-03-07 12:01:25 -06:00
Cameron Gutman
d722bf10b9
Don't use glFinish() with KMSDRM backend
2021-03-07 11:23:31 -06:00
Cameron Gutman
96f79688dd
Use av_packet_alloc() instead of av_init_packet()
...
sizeof(AVPacket) may be deprecated from ABI in the near future
2021-03-05 17:47:04 -06:00
Cameron Gutman
1ebb5fefb1
Address Clazy warnings
2021-03-02 18:14:15 -06:00
Cameron Gutman
164b3edd41
Fix viewport size on High DPI Wayland systems
...
Fixes #533
2021-03-01 22:47:14 -06:00
Cameron Gutman
b2aea9f8f0
Revert change to only fire special combos on key up
2021-02-28 15:06:46 -06:00
jmt-gh
6be7301e69
Stats overlay controller combo ( #495 )
...
* Update gamepad.cpp
add gamepad combo to toggle stats overlay
* typo fixes
2021-02-27 17:03:52 -06:00
Cameron Gutman
87a7d2e45c
Add setting to only capture system keys in full-screen
2021-02-27 16:47:38 -06:00