Files
nixos-config/memory-capture.patch
Harley 97c3003df0 hermes-webui: enable systemd service on port 8787 (localhost)
Serve the WebUI from the sealed uv2nix venv (passthru.hermesVenv) with
HERMES_WEBUI_PYTHON pinned so subprocess agent/gateway runs use the venv
python, not system python3. HERMES_WEBUI_AGENT_DIR points at the source
checkout for run_agent.py + hermes_cli. Localhost-only bind (sessions+memory).
2026-08-29 16:42:39 -04:00

18 lines
1.1 KiB
Diff

Workaround: force CUDA (nvenc) capture to use memory buffers instead of DMA-BUF.
Sunshine's pure-NVIDIA DMA-BUF path feeds the DMA-BUF frame to the software
sws_scale, which fails with "Couldn't scale frame: Invalid argument" for BGRA
frames. Using memory buffers works (the sws BGR0 path handles BGRA fine) and
still encodes with NVENC.
--- a/src/platform/linux/pipewire.cpp
+++ b/src/platform/linux/pipewire.cpp
@@ -313,7 +313,7 @@
// be imported into CUDA, so we fall back to memory buffers in that case.
bool use_dmabuf = n_dmabuf_infos > 0 && (mem_type == platf::mem_type_e::vaapi ||
mem_type == platf::mem_type_e::vulkan ||
- (mem_type == platf::mem_type_e::cuda && display_is_nvidia));
+ false);
if (use_dmabuf) {
for (int i = 0; i < n_dmabuf_infos; i++) {
auto format_param = build_format_parameter(&pod_builder, width, height, target_framerate, dmabuf_infos[i].format, dmabuf_infos[i].modifiers, dmabuf_infos[i].n_modifiers);
*** End Patch