Cameron Gutman
c98289a9e7
Use DMA_BUF_IOCTL_SYNC to synchronize swframe copies
2023-09-09 12:19:40 -05:00
Cameron Gutman
3094185cd6
Also skip SDL_RENDERER_PRESENTVSYNC on Wayland
2023-09-09 10:41:33 -05:00
Cameron Gutman
aaff04167b
Only skip SDL_RENDERER_PRESENTVSYNC on Windows
...
macOS can still tear when using the Metal renderer backend.
2023-09-09 08:00:13 -05:00
Cameron Gutman
21bba02e6f
Allow render thread usage with Metal
2023-09-09 07:45:42 -05:00
Cameron Gutman
f60e724167
Default to indirect rendering on Apple Silicon
...
Hopefully the UMA makes the performance impact of reimporting frames negligible
until we can get a proper Metal renderer to replace AVSampleBufferDisplayLayer.
2023-09-09 07:44:11 -05:00
Cameron Gutman
7551e90899
Adjust AV1 surface alignment to match FFmpeg behavior
2023-09-08 23:13:29 -05:00
Cameron Gutman
47d1eff45d
Don't rasterize layers in fullscreen
...
The original artifacting bug didn't manifest in fullscreen anyway.
2023-09-08 19:53:01 -05:00
Cameron Gutman
78ea79b95a
Quiet new -Wswitch warnings
2023-09-05 22:51:08 -05:00
Cameron Gutman
acbe503c12
Fix NVIDIA VAAPI X11 deprioritization check to actually check for X11
2023-09-05 20:46:43 -05:00
Cameron Gutman
0261c41574
Revert "Prefer nvidia-vaapi-driver over VDPAU for AV1"
...
libvdpau 1.5 has supported this for a while and we'll fall
back to VAAPI if VDPAU doesn't work.
This reverts commit 42960b7bf1
.
2023-09-05 20:39:28 -05:00
Cameron Gutman
c8182dfab3
Use BT.709 for DrmRenderer
2023-09-05 19:28:22 -05:00
Cameron Gutman
9ed40b5d9f
Add chroma siting metadata to EGL exported frames
2023-09-05 18:30:01 -05:00
Cameron Gutman
626fba4a8f
Fix DXVA2 chroma subsampling assuming interlaced content
2023-08-19 18:09:07 -05:00
Cameron Gutman
1a2f1ed620
Enable AV1 RFI on all decoders capable of HEVC RFI
2023-08-13 16:41:48 -05:00
Cameron Gutman
50255dd896
Set Colorspace connector property when streaming HDR
2023-08-09 23:02:43 -05:00
Cameron Gutman
7404e5fce2
Prefer D3D11VA for FSE V-Sync off
2023-08-03 19:41:35 -05:00
Cameron Gutman
dc5414bd0d
Force immediate destruction of the D3D11 swapchain
...
Possible fix for #959
2023-08-03 19:18:07 -05:00
Cameron Gutman
d147d36867
Fix leaking /dev/dri fds on each vaInitialize() failure
2023-08-01 22:53:22 -05:00
Cameron Gutman
7763ec3c5c
Fix mapping frames on RPi with 64-bit kernel and 32-bit userland
2023-08-01 22:01:34 -05:00
Cameron Gutman
42960b7bf1
Prefer nvidia-vaapi-driver over VDPAU for AV1
2023-07-16 16:54:13 -05:00
Cameron Gutman
abc391f32a
Improve AV1 support
2023-07-16 15:38:58 -05:00
Casey Korver
ea06ec0133
Correct spelling mistakes found with Codespell
2023-07-09 13:21:18 -05:00
Cameron Gutman
a81c6a1c5e
Initial work on AV1 support
2023-07-03 00:45:36 -05:00
Cameron Gutman
fb39ad896e
Add h264_omx and hevc_omx decoders used by the Vision Five 2
2023-04-02 17:17:25 -05:00
Cameron Gutman
a3d1e9a117
Allow negotation of 36 and 48 bit deep color modes
2023-03-27 01:02:50 -05:00
Cameron Gutman
755c7c9895
Set max BPC property when streaming in 10-bit color modes
2023-03-27 00:44:02 -05:00
Cameron Gutman
f16b5cd337
Expose glslow config option
2023-03-26 20:27:03 -05:00
Cameron Gutman
21cda8141d
Always request AV_PIX_FMT_DRM_PRIME to ensure we get it if available
2023-03-26 19:59:12 -05:00
Cameron Gutman
90f26dfa45
Support direct KMSDRM output for platforms with slow GL implementations
2023-03-26 19:46:22 -05:00
Cameron Gutman
ba507d8046
Move hw->sw frame mapping into a separate class
2023-03-26 14:41:02 -05:00
Cameron Gutman
4cd030582d
Allow matching primary planes for direct rendering
2023-03-26 13:28:26 -05:00
Cameron Gutman
a0365c8e1c
Evaluate D3D9 quirks before calling CreateDeviceEx()
2023-03-17 00:53:47 -05:00
Cameron Gutman
38156c9f7f
Default to D3D11VA on multi-GPU systems
2023-03-13 22:56:28 -05:00
Cameron Gutman
5baa8c680a
Add upstreamed NV15 format used by Rockchip devices
2023-03-11 11:44:36 -06:00
Cameron Gutman
5de29928cd
Plumb HDR metadata for VideoToolbox
2023-02-02 19:16:18 -06:00
Cameron Gutman
b3cfdbb835
Fix DRM renderer build
2023-01-17 21:45:02 -06:00
Cameron Gutman
8a0142bd0f
Plumb HDR metadata and horizontal scrolling with Sunshine
2023-01-16 21:51:18 -06:00
Cameron Gutman
68c6d6c932
Attempt to fix build with SDL 2.26 on systems with old GL headers
2022-11-21 20:32:10 -06:00
Cameron Gutman
b9709d0825
Fix build without SDL_VIDEO_DRIVER_WAYLAND
2022-11-14 21:11:26 -06:00
Cameron Gutman
cae666b834
Wake pacing queue waiters when Pacer is being destroyed
2022-11-12 15:55:36 -06:00
Cameron Gutman
5970ca49e9
Don't use swap interval on Wayland
2022-11-12 15:45:54 -06:00
Cameron Gutman
6ae6218043
Refactor Pacer to handle both blocking and non-blocking VsyncSources
2022-11-12 15:08:50 -06:00
Cameron Gutman
8e3e19a7f7
Removed unused NullThreadedVsyncSource
2022-11-12 14:30:38 -06:00
Cameron Gutman
e3d51fd7f7
Implement a Wayland Vsync source using frame callbacks
2022-11-12 13:03:42 -06:00
Cameron Gutman
a6fccf93d1
Use a separate texture for rendering to avoid blending in the alignment padding
...
Fixes #885
2022-10-26 21:48:55 -05:00
Cameron Gutman
17848c097c
Don't switch between GLX and EGL if EGL worked
2022-10-16 22:57:08 -05:00
Cameron Gutman
8465a27a97
Deprioritize VAAPI for Gallium and Nvidia drivers and work around RFI latency bug
2022-10-16 21:51:10 -05:00
Cameron Gutman
7717749b72
Reduce max queued frames to avoid exhausting the decoder buffer pool
2022-10-15 14:34:42 -05:00
Cameron Gutman
9e4337babf
Revert "Increase the number of decoder surfaces for DXVA2/D3D11VA"
...
This reverts commit 02c781b8f4
.
2022-10-15 14:32:12 -05:00
Cameron Gutman
125738f13d
Cancel overlay update callbacks before destroying VTRenderer
2022-10-14 22:49:33 -05:00