[GH-ISSUE #481] Audio consistently ~500ms behind video on both tvOS and macOS Moonlight clients #291

Open
opened 2026-10-15 12:59:23 +00:00 by bsakaguchi · 4 comments
Owner

Originally created by @martinzilak on GitHub (Aug 18, 2026).
Original GitHub issue: https://github.com/games-on-whales/wolf/issues/481

Bug description

Audio arrives roughly half a second after the video it belongs to. The offset is
constant: same at the start of a session and 30 minutes in, and it doesn't reset
on reconnect.

It's not game specific. In Steam Big Picture the navigation sounds arrive well
after the highlight has already moved. In Crash Bandicoot N. Sane Trilogy I can
break two crates before hearing the first one break.

Video and input both feel fine, it's only audio that's late.

Steps to reproduce

  1. Start a streaming session via Moonlight (tested with the Steam app)
  2. Trigger any short sound, e.g. navigate the Steam Big Picture UI
  3. Audio plays approximately 500ms after the corresponding video frame (measured with a stopwatch, lapping on
    controller button press and again when the sound starts, averaged over 10 tries)

Environment

  • Wolf version/image tag: ghcr.io/games-on-whales/wolf:stable
  • GPU: AMD Radeon RX 9070 XT (Navi 48, renderD129) used for encoding, Intel Core Ultra 5 235 iGPU also present but not exposed to Wolf
  • Host OS: Unraid 7.2.5
  • Moonlight client version: 9.0.2 on Apple TV 4K (3rd gen, wired ethernet), 6.1.0 on macOS
  • Deployment method: Docker Compose, via the games-on-whales Unraid plugin

Following the advice in #297, I pass only the AMD render and card nodes rather than
all of /dev/dri, so Wolf sees a single GPU. Video works correctly this way,
including zero copy. Audio delay is identical before and after that change.

Notes

Both clients show the same delay, which is why I don't think this is client side.
I originally assumed it was the Apple TV, since there are similar reports against
TV clients:

Those are all Sunshine hosts and all resolve to something specific to the TV
client, with other clients against the same host being fine. Mine looks different:
the macOS client behaves identically against the same host, and the delay doesn't
grow over time.

Moonlight stats during a session:

Video stream: 3840x2160 59.94 FPS, codec HEVC
Frames dropped by your network connection: 0.00%
Average network latency: 1ms, variance 0ms

Things I tried that made no difference:

  • PULSE_LATENCY_MSEC=30 in the app container env
  • Bypassing the soundbar and using the TV speakers directly
  • Removing and re-pairing the client

The TV is in game mode with audio post-processing options turned off. Nothing else on it
has audio sync problems: the Apple TV's own apps are fine, and so are the Switch
and PS5 on the same TV.

The [gstreamer.audio] section of my config.toml. I've only ever edited the
[[profiles]] section, so this is whatever Wolf wrote on first run:

default_audio_params = 'queue max-size-buffers=3 leaky=downstream ! audiorate ! audioconvert'
default_opus_encoder = 'opusenc bitrate={bitrate} bitrate-type=cbr frame-size={packet_duration} bandwidth=fullband audio-type=restricted-lowdelay max-payload-size=1400'
default_sink = '''queue ! rtpmoonlightpay_audio name=moonlight_pay packet_duration={packet_duration} encrypt={encrypt} aes_key="{aes_key}" aes_iv="{aes_iv}" !
appsink name=wolf_udp_sink'''
default_source = 'interpipesrc name=interpipesrc_{}_audio listen-to={session_id}_audio is-live=true stream-sync=restart-ts max-bytes=0 max-buffers=3 block=false'

I haven't touched any of it, and I don't know enough about the audio path to say
where half a second could be coming from.

Wolf Logs

Click to expand logs
[2026-08-18 11:25:23] 
[2026-08-18 11:25:23] [ /etc/cont-init.d/10-setup_user.sh: executing... ]
[2026-08-18 11:25:23] **** Configure default user ****
[2026-08-18 11:25:23] Container running as root. Nothing to do.
[2026-08-18 11:25:23] DONE
[2026-08-18 11:25:23] 
[2026-08-18 11:25:23] [ /etc/cont-init.d/15-setup_devices.sh: executing... ]
[2026-08-18 11:25:23] **** Configure devices ****
[2026-08-18 11:25:23] Exec device groups
[2026-08-18 11:25:23] Adding user 'root' to groups: gow-gid-71
[2026-08-18 11:25:23] DONE
[2026-08-18 11:25:23] 
[2026-08-18 11:25:23] [ /etc/cont-init.d/30-nvidia.sh: executing... ]
[2026-08-18 11:25:23] 
[2026-08-18 11:25:23] [ /etc/cont-init.d/init-gamescope.sh: executing... ]
[2026-08-18 11:25:23] Launching the container's startup script as user 'root'
2026-08-18 11:25:23,582 INFO Set uid to user 0 succeeded
2026-08-18 11:25:23,584 INFO RPC interface 'supervisor' initialized
2026-08-18 11:25:23,584 CRIT Server 'unix_http_server' running without any HTTP authentication checking
2026-08-18 11:25:23,584 INFO supervisord started with pid 1
2026-08-18 11:25:24,587 INFO spawned: 'pulseaudio' with pid 181
2026-08-18 11:25:24,588 INFO spawned: 'wolf' with pid 182
[wolf] waiting for PulseAudio socket /tmp/sockets/pulse-socket
0:00:00.048278414   185 0x55deb9ef8f20 WARN                 default ges-meta-container.c:238:_set_value:<GESAsset@0x55deb9ef87f0> Could not set value on item: format-version
0:00:00.048294905   185 0x55deb9ef8f20 WARN                 default ges-meta-container.c:238:_set_value:<GESAsset@0x55deb9ef9160> Could not set value on item: format-version
0:00:00.048300821   185 0x55deb9ef8f20 WARN                 default ges-meta-container.c:238:_set_value:<GESAsset@0x55deb9ef99d0> Could not set value on item: format-version
0:00:00.048470461   185 0x55deb9ef8f20 WARN               structure gststructure.c:3378:priv_gst_structure_parse_fields: Failed to find delimiter, r=mimetype
0:00:00.057913680   185 0x55deb9ef8f20 WARN             msdkcontext gstmsdkcontext.c:178:gst_msdk_context_use_vaapi: Couldn't find a drm device node to open
0:00:00.060673365   185 0x55deb9ef8f20 WARN              cudaloader gstcudaloader.cpp:358:gst_cuda_load_library_once_func: Could not open library libcuda.so.1, libcuda.so.1: cannot open shared object file: No such file or directory
0:00:00.069719543   185 0x55deb9ef8f20 WARN               vadisplay gstvadisplay_drm.c:143:gst_va_display_drm_create_va_display:<vadisplaydrm0> Failed to open /dev/dri/renderD128: Operation not permitted
amdgpu: os_same_file_description couldn't determine if two DRM fds reference the same file description.
If they do, bad things may happen!
0:00:00.136457048   185 0x55deb9ef8f20 WARN               vadisplay gstvadisplay_drm.c:143:gst_va_display_drm_create_va_display:<vadisplaydrm2> Failed to open /dev/dri/renderD128: Operation not permitted
0:00:00.154380096   185 0x55deb9ef8f20 WARN                vafilter gstvafilter.c:1787:gst_va_filter_has_compose:<vafilter0> VPP does not support alpha blending
0:00:00.175731271   185 0x55deb9ef8f20 WARN              vaapiblend gstvaapiblend.c:184:gst_vaapi_blend_initialize:<vaapiblend0> VPP does not support global alpha blending
0:00:00.191822078   185 0x55deb9ef8f20 WARN      GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so" failed to initialise
0:00:00.192108556   185 0x55deb9ef8f20 WARN      GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so" failed to initialise
0:00:00.197663719   182 0x5596a2c904d0 WARN            GST_REGISTRY gstregistry.c:457:gst_registry_add_plugin:<registry0> Not replacing plugin because new one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so) is blacklisted but for a different location than existing one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so)
0:00:00.201341687   185 0x55deb9ef8f20 WARN      GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so" failed to initialise
0:00:00.201363513   185 0x55deb9ef8f20 WARN      GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so" failed to initialise
0:00:00.204514695   182 0x5596a2c904d0 WARN            GST_REGISTRY gstregistry.c:457:gst_registry_add_plugin:<registry0> Not replacing plugin because new one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so) is blacklisted but for a different location than existing one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so)
10:25:25.030048518 INFO  | Gstreamer version: 1.26.7-0
0:00:00.216331055   182 0x5596a2c904d0 WARN              cudaloader gstcudaloader.cpp:358:gst_cuda_load_library_once_func: Could not open library libcuda.so.1, libcuda.so.1: cannot open shared object file: No such file or directory
10:25:25.030602135 DEBUG | XDG_RUNTIME_DIR=/tmp/sockets
10:25:25.030615922 INFO  | Reading config file from: /mnt/user/appdata/gow/cfg/config.toml
10:25:25.036774782 DEBUG | /dev/dri/renderD129 vendor: Advanced Micro Devices, Inc. [AMD/ATI]
10:25:25.036812902 DEBUG | Skipping NVIDIA encoder, not a NVIDIA GPU (1)
0:00:00.224370450   182 0x5596a2c904d0 WARN               vadisplay gstvadisplay_drm.c:143:gst_va_display_drm_create_va_display:<vadisplaydrm0> Failed to open /dev/dri/renderD128: Operation not permitted
amdgpu: os_same_file_description couldn't determine if two DRM fds reference the same file description.
If they do, bad things may happen!
0:00:00.244006346   182 0x5596a2c904d0 WARN                vafilter gstvafilter.c:1787:gst_va_filter_has_compose:<vafilter0> VPP does not support alpha blending
10:25:25.067632735 DEBUG | Checking if varenderD129h264enc is available
0:00:00.253419624   182 0x5596a2c904d0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:713:gst_element_factory_make_with_properties: no such element factory "varenderD129h264enc"!
10:25:25.067687443 INFO  | Using h264 encoder: va
10:25:25.067705760 DEBUG | Skipping NVIDIA encoder, not a NVIDIA GPU (1)
10:25:25.071302822 DEBUG | Checking if varenderD129h265enc is available
0:00:00.257072087   182 0x5596a2c904d0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:713:gst_element_factory_make_with_properties: no such element factory "varenderD129h265enc"!
10:25:25.071337968 INFO  | Using h265 encoder: va
10:25:25.071353407 DEBUG | Skipping NVIDIA encoder, not a NVIDIA GPU (1)
10:25:25.074595150 DEBUG | Checking if varenderD129av1enc is available
0:00:00.260366295   182 0x5596a2c904d0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:713:gst_element_factory_make_with_properties: no such element factory "varenderD129av1enc"!
10:25:25.074631428 INFO  | Using av1 encoder: va
10:25:25.074695590 DEBUG | Required DMA formats for vapostproc: ["NV12", "YV12", "YU12", "P010", "P012", "R8  ", "YUYV", "YU24", "AB24", "AR24", "XB24", "XR24", "AR30"]
10:25:25.074719686 INFO  | Using zero copy pipeline on AMD (/dev/dri/renderD129)
10:25:25.088609483 DEBUG | Loading server certificates from disk: /mnt/user/appdata/gow/cfg/cert.pem /mnt/user/appdata/gow/cfg/key.pem
10:25:25.092509007 DEBUG | We are running as container ID 5d4ebc99c0039be7fa2c5204c6ff7834209c416c09e2c04dd2971f7180b034fb
10:25:25.092544905 INFO  | Detected mounted /mnt/user/appdata/gow in the host as /mnt/user/appdata/gow
10:25:25.092557000 INFO  | Detected mounted /tmp/sockets in the host as /var/lib/docker/volumes/gow_wolf-socket/_data
10:25:25.092649351 INFO  | [RTP] Starting RTP ping server on ports 48100 and 48200
10:25:25.092692249 INFO  | RTSP server started on port: 48010
10:25:25.092715729 INFO  | HTTP server listening on port: 47989 
10:25:25.092733110 INFO  | Starting mDNS service
10:25:25.092743962 INFO  | Control server started on port: 47999
10:25:25.092755507 INFO  | Starting Wolf API server on /tmp/sockets/wolf.sock
10:25:25.092985992 DEBUG | [PULSE] Connecting...
10:25:25.093294523 DEBUG | [PULSE] Pulse connection ready
10:25:25.093334878 DEBUG | [PULSE_ROUTER] Enabled PulseAudio subscription (sink-input + sink)
10:25:25.093342891 INFO  | [PULSE_ROUTER] Setup complete (handlers registered, PA subscribed)
10:25:25.093932940 INFO  | HTTPS server listening on port: 47984 
2026-08-18 11:25:26,094 INFO success: pulseaudio entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2026-08-18 11:25:26,094 INFO success: wolf entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
10:25:29.144541903 DEBUG | [API] Received request: GET /api/v1/events - 
10:26:15.318481396 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo
10:26:15.330985126 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:26:15.338613025 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:26:15.339695331 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo
10:26:15.351999548 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/applist
10:26:15.354014145 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo
10:26:15.358281743 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:26:15.368736877 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:26:15.524161800 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo
10:26:17.419546948 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo
10:26:17.455658348 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:26:19.479575734 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo
10:26:19.516867441 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:26:21.533367480 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo
10:26:21.571166763 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:26:23.583188489 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo
10:26:23.619083843 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:26:25.414932461 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:26:25.432625423 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/launch
10:26:25.432709039 DEBUG | Host app state folder: /mnt/user/appdata/gow/2789025376806411523/10_Mroz, creating paths
10:26:25.433711377 DEBUG | [STREAM_SESSION] Create wayland compositor
10:26:25.433750226 DEBUG | [STREAM_SESSION] Create virtual audio sink
10:26:25.434020236 DEBUG | [GSTREAMER] Starting video producer: waylanddisplaysrc name=wolf_wayland_source render_node=/dev/dri/renderD129 ! video/x-raw(memory:DMABuf), drm-format={NV12,YV12,YU12,P012,YUYV,YU24,AB24,AR24,XB24,XR24}, width=3840, height=2160, framerate=60/1 ! 
interpipesink sync=true async=false name=2789025376806411523_video max-buffers=1
10:26:25.434058614 DEBUG | [GSTREAMER] Starting audio producer: pulsesrc device="virtual_sink_2789025376806411523.monitor" server="/tmp/sockets/pulse-socket" ! audio/x-raw, channels=2, channel-mask=(bitmask)0x3, rate=48000 ! queue leaky=downstream max-size-buffers=3 ! interpipesink name="2789025376806411523_audio" sync=true async=false max-buffers=3
10:26:25.435273833 DEBUG | [PULSE] Created virtual sink: 3
10:26:25.436443992 DEBUG | [PULSE_ROUTER] Sink appeared name='virtual_sink_2789025376806411523' idx=1 -> session='2789025376806411523'
10:26:25.436520597 DEBUG | [PULSE_ROUTER] Sink appeared name='virtual_sink_2789025376806411523' idx=1 -> session='2789025376806411523'
10:26:25.440349809 DEBUG | Setting up waylanddisplaysrc
10:26:25.444295390 DEBUG | [RTSP] found session by matching payload: 119.129.78.62
10:26:25.444307718 DEBUG | [RTSP] received command OPTIONS
10:26:25.448551728 DEBUG | [RTSP] found session by matching payload: 119.129.78.62
10:26:25.448562593 DEBUG | [RTSP] received command DESCRIBE
10:26:25.452703872 DEBUG | [RTSP] found session by matching payload: 119.129.78.62
10:26:25.452714520 DEBUG | [RTSP] received command SETUP
10:26:25.456995412 DEBUG | [RTSP] found session by matching payload: 119.129.78.62
10:26:25.457007388 DEBUG | [RTSP] received command SETUP
10:26:25.461526548 DEBUG | [RTSP] found session by matching payload: 119.129.78.62
10:26:25.461545591 DEBUG | [RTSP] received command SETUP
2026-08-18T10:26:25.464479Z  WARN smithay::backend::drm::device::fd: Unable to become drm master, assuming unprivileged mode
10:26:25.468300713 DEBUG | [RTSP] found session by matching payload: 119.129.78.62
10:26:25.468314744 DEBUG | [RTSP] received command ANNOUNCE
10:26:25.468363407 DEBUG | [RTSP] Moonlight requested video format HEVC
10:26:25.468367793 DEBUG | [RTSP] Adjusted video bitrate to 79308 Kbps
0:01:00.667595701   182 0x14af0001b760 WARN                basesink gstbasesink.c:1248:gst_base_sink_query_latency:<2789025376806411523_video> warning: Pipeline construction is invalid, please add queues.
0:01:00.667604798   182 0x14af0001b760 WARN                basesink gstbasesink.c:1248:gst_base_sink_query_latency:<2789025376806411523_video> warning: Not enough buffering available for  the processing deadline of 0:00:00.020000000, add enough queues to buffer  0:00:00.020000000 additional data. Shortening processing latency to 0:00:00.000000000.
10:26:25.481946425 DEBUG | Wayland source message: WAYLAND_DISPLAY = wayland-3
10:26:25.481960008 INFO  | Wayland display ready, listening on: wayland-3
10:26:25.482194568 DEBUG | [STREAM_SESSION] Start runner
10:26:25.482831250 DEBUG | /proc/driver/nvidia/gpus/0000:04:00.0/information doesn't exists, this might be normal if the GPU is not Nvidia
10:26:25.483557897 DEBUG | [RTSP] found session by matching payload: 119.129.78.62
10:26:25.483568503 DEBUG | [RTSP] received command PLAY
10:26:25.484803695 DEBUG | [ENET] connected client: 192.168.1.72:32730
10:26:25.485521522 DEBUG | Starting video pipeline: 
interpipesrc name=interpipesrc_2789025376806411523_video listen-to=2789025376806411523_video is-live=true stream-sync=restart-ts max-bytes=0 max-buffers=1 leaky-type=downstream !
vapostproc add-borders=true !
video/x-raw(memory:VAMemory), format=NV12, width=3840, height=2160, pixel-aspect-ratio=1/1 !
vah265enc aud=false b-frames=0 ref-frames=1 num-slices=1 bitrate=79308 cpb-size=1321 min-qp=20 key-int-max=1024 rate-control=cbr target-usage=6 !
h265parse !
video/x-h265, profile=main, stream-format=byte-stream !
queue ! rtpmoonlightpay_video name=moonlight_pay payload_size=1392 fec_percentage=20 min_required_fec_packets=2 !
appsink sync=false max-buffers=1 drop=true name=wolf_udp_sink

10:26:25.486482305 DEBUG | Setting up wolf_udp_sink
10:26:25.486544709 DEBUG | Received NEED_CONTEXT for type gst.va.display.handle
10:26:25.487712246 DEBUG | /dev/dri/renderD129 vendor: Advanced Micro Devices, Inc. [AMD/ATI]
10:26:25.487755900 DEBUG | [DOCKER] Using fake-udev, creating /mnt/user/appdata/gow/2789025376806411523/10_Mroz/udev/data
0:01:00.676487503   182 0x14aee0001510 WARN               vaencoder gstvaencoder.c:750:gst_va_encoder_get_prediction_direction:<vaencoder3> Driver does not support query prediction direction
0:01:00.676496256   182 0x14aee0001510 WARN               vaencoder gstvaencoder.c:839:gst_va_encoder_has_trellis:<vaencoder3> Driver does not support trellis
10:26:25.492732991 DEBUG | /dev/dri/renderD129 vendor: Advanced Micro Devices, Inc. [AMD/ATI]
10:26:25.492801099 DEBUG | [DOCKER] Setting DeviceCgroupRules for hidraw:244 and input:13
10:26:25.492845616 DEBUG | [DOCKER] Container options: {"HostConfig":{"IpcMode":"host","CapAdd":["SYS_ADMIN","SYS_NICE","SYS_PTRACE","NET_RAW","MKNOD","NET_ADMIN"],"SecurityOpt":["seccomp=unconfined","apparmor=unconfined"],"Ulimits":[{"Name":"nofile","Hard":10240,"Soft":10240}],"Privileged":false,"DeviceCgroupRules":["c 244:* rwm","c 13:* rwm"]}}
0:01:00.691754387   182 0x14aee0001510 WARN                 basesrc gstbasesrc.c:4255:gst_base_src_push_segment:<interpipesrc_2789025376806411523_video> segment format mismatched, ignore
10:26:25.547267651 INFO  | Creating PS joypad for controller 0
10:26:25.591734686 INFO  | [DOCKER] Starting container: /WolfSteam_2789025376806411523
10:26:25.591789411 DEBUG | [DOCKER] Starting container: {
 id: e5134a74147e56980bedfd313431b4bdddd6a6ec33f3759b0d36b17079c09f0f
 name: /WolfSteam_2789025376806411523
 image: ghcr.io/games-on-whales/steam:edge
 status: 0
 ports: []
 mounts: [/mnt/games:/games:rw, /var/lib/docker/volumes/gow_wolf-socket/_data/pulse-socket:/tmp/sockets/pulse-socket:rw, /var/lib/docker/volumes/gow_wolf-socket/_data/wayland-3:/tmp/sockets/wayland-3:rw, /mnt/user/appdata/gow/2789025376806411523/10_Mroz:/home/retro:rw, /mnt/user/appdata/gow/fake-udev:/usr/bin/fake-udev:rw, /mnt/user/appdata/gow/2789025376806411523/10_Mroz/udev:/run/udev:rw, /dev/input:/dev/input:rw]
 devices: [/dev/uinput:/dev/uinput:mrw, /dev/dri/card1:/dev/dri/card1:mrw, /dev/dri/renderD129:/dev/dri/renderD129:mrw]
 env: ["RUN_GAMESCOPE=1", "PULSE_LATENCY_MSEC=30", "GAMESCOPE_WIDTH=3840", "GAMESCOPE_HEIGHT=2160", "GAMESCOPE_REFRESH=60", "PROTON_FSR4_UPGRADE=1", "MANGOHUD_CONFIGFILE=/games/MangoHud.conf", "GOW_REQUIRED_DEVICES=/dev/uinput /dev/input/* /dev/dri/*", "GAMESCOPE_REFRESH=60", "PUID=99", "WAYLAND_DISPLAY=wayland-3", "GAMESCOPE_HEIGHT=2160", "PGID=100", "PULSE_SERVER=/tmp/sockets/pulse-socket", "WOLF_VIDEO_BUFFER_CAPS=video/x-raw(memory:DMABuf), drm-format={NV12,YV12,YU12,P012,YUYV,YU24,AB24,AR24,XB24,XR24}", "PULSE_SOURCE=virtual_sink_2789025376806411523.monitor", "PULSE_SINK=virtual_sink_2789025376806411523", "WOLF_SESSION_ID=2789025376806411523", "XDG_RUNTIME_DIR=/tmp/sockets", "GAMESCOPE_WIDTH=3840", "PATH=/usr/games/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "UMASK=000", "UNAME=retro", "HOME=/home/retro", "TZ=Europe/London", "DEBIAN_FRONTEND=noninteractive", "NEEDRESTART_SUSPEND=1", "GAMESCOPE_VERSION=3.16.22", "BUILD_ARCHITECTURE=amd64", "DEB_BUILD_OPTIONS=noddebs"]
}
10:26:25.592395275 DEBUG | [PULSE_ROUTER] Map add host='e5134a74147e' -> session='2789025376806411523' (container_id='e5134a74147e56980bedfd313431b4bdddd6a6ec33f3759b0d36b17079c09f0f')
10:26:25.597689680 INFO  | Requesting gyroscope events for controller 0
10:26:25.597725870 DEBUG | [INPUT] Sending PlugDeviceEvent for joypad 0 of type: 1
10:26:25.597842314 DEBUG | 2789025376806411523 received hot-plug device event
10:26:25.597871559 DEBUG | [DOCKER] Plugging device from queue in session: 2789025376806411523
10:26:25.597887837 DEBUG | [DOCKER] Writing hwdb file: /mnt/user/appdata/gow/2789025376806411523/10_Mroz/udev/data/c13:79
10:26:25.598411967 DEBUG | [DOCKER] Writing hwdb file: /mnt/user/appdata/gow/2789025376806411523/10_Mroz/udev/data/c13:0
10:26:25.598744854 DEBUG | [DOCKER] Executing command: mkdir -p /dev/input && mknod /dev/input/event15 c 13 79 && chmod 777 /dev/input/event15 && fake-udev -m LklOUFVUX0NMQVNTPWpveXN0aWNrAEFDVElPTj1hZGQAQ1VSUkVOVF9UQUdTPTpzZWF0OnVhY2Nlc3M6AERFVk5BTUU9L2Rldi9pbnB1dC9ldmVudDE1AERFVlBBVEg9L2RldmljZXMvdmlydHVhbC9taXNjL3VoaWQvMDAwNTowNTRDOjBDRTYuMDAyNC9pbnB1dC9pbnB1dDQ4L2V2ZW50MTUASURfSU5QVVQ9MQBJRF9JTlBVVF9KT1lTVElDSz0xAElEX1NFUklBTD1ub3NlcmlhbABNQUpPUj0xMwBNSU5PUj03OQBTRVFOVU09NwBTVUJTWVNURU09aW5wdXQAVEFHUz06c2VhdDp1YWNjZXNzOgBVTklRPWNmOjRiOmRjOjZlOjlkOjUzAFVTRUNfSU5JVElBTElaRUQ9MTc4NzA0ODc4NQA=
10:26:25.617611946 WARN  | Docker exec failed (1), 'mknod: /dev/input/event15: File exists

10:26:25.617661240 DEBUG | [DOCKER] Executing command: mkdir -p /dev/input && mknod /dev/input/js0 c 13 0 && chmod 777 /dev/input/js0 && fake-udev -m LklOUFVUX0NMQVNTPWpveXN0aWNrAEFDVElPTj1hZGQAQ1VSUkVOVF9UQUdTPTpzZWF0OnVhY2Nlc3M6AERFVk5BTUU9L2Rldi9pbnB1dC9qczAAREVWUEFUSD0vZGV2aWNlcy92aXJ0dWFsL21pc2MvdWhpZC8wMDA1OjA1NEM6MENFNi4wMDI0L2lucHV0L2lucHV0NDgvanMwAElEX0lOUFVUPTEASURfSU5QVVRfSk9ZU1RJQ0s9MQBJRF9TRVJJQUw9bm9zZXJpYWwATUFKT1I9MTMATUlOT1I9MABTRVFOVU09NwBTVUJTWVNURU09aW5wdXQAVEFHUz06c2VhdDp1YWNjZXNzOgBVTklRPWNmOjRiOmRjOjZlOjlkOjUzAFVTRUNfSU5JVElBTElaRUQ9MTc4NzA0ODc4NQA=
10:26:25.632670360 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo
10:26:25.637815120 WARN  | Docker exec failed (1), #mknod: /dev/input/js0: File exists

10:26:25.637865821 DEBUG | [DOCKER] Executing command: mkdir -p /dev/input && mknod /dev/hidraw9 c 244 9 && chmod 777 /dev/hidraw9 && fake-udev -m QUNUSU9OPWFkZABDVVJSRU5UX1RBR1M9OnNlYXQ6dWFjY2VzczoAREVWTkFNRT0vZGV2L2hpZHJhdzkAREVWUEFUSD0vZGV2aWNlcy92aXJ0dWFsL21pc2MvdWhpZC8wMDA1OjA1NEM6MENFNi4wMDI0L2hpZHJhdy9oaWRyYXc5AElEX0lOUFVUPTEASURfU0VSSUFMPW5vc2VyaWFsAE1BSk9SPTI0NABNSU5PUj05AFNFUU5VTT03AFNVQlNZU1RFTT1oaWRyYXcAVEFHUz06c2VhdDp1YWNjZXNzOgBVU0VDX0lOSVRJQUxJWkVEPTE3ODcwNDg3ODUA
10:26:25.655841719 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:26:25.985721092 DEBUG | Starting audio pipeline: 
interpipesrc name=interpipesrc_2789025376806411523_audio listen-to=2789025376806411523_audio is-live=true stream-sync=restart-ts max-bytes=0 max-buffers=3 block=false !
queue max-size-buffers=3 leaky=downstream ! audiorate ! audioconvert !
opusenc bitrate=96000 bitrate-type=cbr frame-size=5 bandwidth=fullband audio-type=restricted-lowdelay max-payload-size=1400 !
queue ! rtpmoonlightpay_audio name=moonlight_pay packet_duration=5 encrypt=true aes_key="94156E00E2887249332BEE106DA80643" aes_iv="1615328017" !
appsink name=wolf_udp_sink
10:26:25.986722671 DEBUG | Setting up wolf_udp_sink
0:01:02.621481901   182 0x14aee0001ed0 WARN                 basesrc gstbasesrc.c:4255:gst_base_src_push_segment:<interpipesrc_2789025376806411523_audio> segment format mismatched, ignore
10:26:27.527991616 DEBUG | [GSTREAMER] Forcing IDR
10:26:45.556014064 DEBUG | [PULSE_ROUTER] Sink appeared name='virtual_sink_2789025376806411523' idx=1 -> session='2789025376806411523'
10:27:01.640554208 DEBUG | [PULSE_ROUTER] Sink appeared name='virtual_sink_2789025376806411523' idx=1 -> session='2789025376806411523'
10:27:10.259888032 DEBUG | [PULSE_ROUTER] Sink appeared name='virtual_sink_2789025376806411523' idx=1 -> session='2789025376806411523'
10:27:10.261598150 DEBUG | [PULSE_ROUTER] Sink appeared name='virtual_sink_2789025376806411523' idx=1 -> session='2789025376806411523'
10:27:10.262428292 DEBUG | [PULSE_ROUTER] Sink appeared name='virtual_sink_2789025376806411523' idx=1 -> session='2789025376806411523'
10:28:09.941193817 WARN  | [GSTREAMER] Size of frame too large, 346 packets is bigger than the max (255); skipping FEC
10:28:09.941704777 WARN  | [GSTREAMER] Size of frame too large, 346 packets is bigger than the max (255); skipping FEC
10:28:09.942008223 WARN  | [GSTREAMER] Size of frame too large, 346 packets is bigger than the max (255); skipping FEC
10:30:13.136170555 DEBUG | [PULSE_ROUTER] Sink appeared name='virtual_sink_2789025376806411523' idx=1 -> session='2789025376806411523'
10:30:18.839056473 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo
10:30:18.849178972 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:30:18.854683629 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:30:18.855479867 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo
10:30:18.866361479 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/applist
10:30:18.868983438 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo
10:30:18.874030179 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:30:18.887054769 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:30:18.985164671 DEBUG | [ENET] disconnected client: 192.168.1.72:32730
10:30:18.985191388 DEBUG | [GSTREAMER] Pausing pipeline: 2789025376806411523
10:30:18.985205459 DEBUG | [GSTREAMER] Pausing pipeline: 2789025376806411523
10:30:18.998216040 INFO  | [GSTREAMER] Pipeline reached End Of Stream
10:30:19.030843550 INFO  | [GSTREAMER] Pipeline reached End Of Stream
10:30:19.231841655 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo
10:30:20.948730383 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo
10:30:20.974658684 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:30:22.056031487 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/cancel
10:30:22.179555839 DEBUG | [GSTREAMER] Stopping video producer: 2789025376806411523
10:30:22.180667403 DEBUG | [GSTREAMER] Stopping audio producer: 2789025376806411523
10:30:22.180880533 INFO  | [GSTREAMER] Pipeline reached End Of Stream
10:30:22.186542490 DEBUG | [ENET] Client not found for session: 2789025376806411523
10:30:22.186544463 INFO  | [GSTREAMER] Pipeline reached End Of Stream
0:04:57.372365990   182 0x14aed8001ee0 WARN                audiosrc gstaudiosrc.c:227:audioringbuffer_thread_func:<pulsesrc0> error reading data -1 (reason: Success), skipping segment
10:30:22.214772020 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:30:22.223194492 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo
10:30:22.243370240 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:30:22.485219388 DEBUG | [DOCKER] Container logs: 
[2026-08-18 11:26:25] 
J[2026-08-18 11:26:25] [ /etc/cont-init.d/10-setup_user.sh: executing... ]
7[2026-08-18 11:26:25] **** Configure default user ****
H[2026-08-18 11:26:25] Setting default user uid=99(retro) gid=100(retro)
Uuseradd warning: retro's uid 99 outside of the UID_MIN 1000 and UID_MAX 60000 range.
Auseradd: warning: the home directory /home/retro already exists.
;useradd: Not copying any file from skel directory into it.
+[2026-08-18 11:26:25] Setting umask to 000
>[2026-08-18 11:26:25] Ensure retro home directory is writable
9[2026-08-18 11:26:25] Ensure XDG_RUNTIME_DIR is writable
[2026-08-18 11:26:25] DONE
[2026-08-18 11:26:25] 
M[2026-08-18 11:26:25] [ /etc/cont-init.d/15-setup_devices.sh: executing... ]
2[2026-08-18 11:26:25] **** Configure devices ****
)[2026-08-18 11:26:25] Exec device groups
P[2026-08-18 11:26:25] Adding user 'retro' to groups: gow-gid-71,gow-gid-18,root
[2026-08-18 11:26:25] DONE
[2026-08-18 11:26:25] 
F[2026-08-18 11:26:25] [ /etc/cont-init.d/30-nvidia.sh: executing... ]
[2026-08-18 11:26:25] 
K[2026-08-18 11:26:25] [ /etc/cont-init.d/init-gamescope.sh: executing... ]
[2026-08-18 11:26:25] 
L[2026-08-18 11:26:25] [ /etc/cont-init.d/system-services.sh: executing... ]
+[2026-08-18 11:26:25] *** DBus started ***
,[2026-08-18 11:26:25] *** Bluez started ***
'bluetoothd[290]: Bluetooth daemon 5.79
Tbluetoothd[290]: src/adapter.c:adapter_init() Failed to access management interface
Jbluetoothd[290]: src/main.c:main() Adapter handling initialization failed
5[2026-08-18 11:26:25] *** NetworkManager started ***
5[2026-08-18 11:26:25] *** D-Bus Watchdog started ***
3[2026-08-18 11:26:25] *** Decky Loader started ***
[[2026-08-18 11:26:25] [steamos-dbus-watchdog] Starting D-Bus watcher for Steam shutdown...
O[2026-08-18 11:26:25] Launching the container's startup script as user 'retro'
'[2026-08-18 11:26:25] Steam startup.sh
IClaimed global gamescope stats session at "/tmp/sockets/gamescope-stats"
F[gamescope] [Info]  console: gamescope version 
GNo CAP_SYS_NICE, falling back to regular-priority compute and threads.
Performance will be affected.
j[gamescope] [Info]  scriptmgr: Loading scripts from: '/usr/share/gamescope/scripts'
w[gamescope] [Info]  scriptmgr: Loading scripts from: '/usr/share/gamescope/scripts/00-gamescope'
~[gamescope] [Info]  scriptmgr: Loading scripts from: '/usr/share/gamescope/scripts/00-gamescope/common'
�[gamescope] [Info]  scriptmgr: Running script file '/usr/share/gamescope/scripts/00-gamescope/common/inspect.lua' (id: 0)
�[gamescope] [Info]  scriptmgr: Running script file '/usr/share/gamescope/scripts/00-gamescope/common/modegen.lua' (id: 1)
�[gamescope] [Info]  scriptmgr: Running script file '/usr/share/gamescope/scripts/00-gamescope/common/util.lua' (id: 2)
�[gamescope] [Info]  scriptmgr: Loading scripts from: '/usr/share/gamescope/scripts/00-gamescope/displays'
�[gamescope] [Info]  scriptmgr: Running script file '/usr/share/gamescope/scripts/00-gamescope/displays/asus.rogally.lcd.lua' (id: 3)
�[gamescope] [Info]  scriptmgr: Running script file '/usr/share/gamescope/scripts/00-gamescope/displays/deckhd.steamdeck.deckhd-lcd.lua' (id: 4)
�[gamescope] [Info]  scriptmgr: Running script file '/usr/share/gamescope/scripts/00-gamescope/displays/valve.steamdeck.lcd.lua' (id: 5)
�[gamescope] [Info]  scriptmgr: Running script file '/usr/share/gamescope/scripts/00-gamescope/displays/valve.steamdeck.oled.lua' (id: 6)
d[gamescope] [Info]  scriptmgr: Loading scripts from: '/etc/gamescope/scripts'
g[gamescope] [Warn]  scriptmgr: Directory '/etc/gamescope/scripts' does not exist
s[gamescope] [Info]  scriptmgr: Loading scripts from: '/home/retro/.config/gamescope/scripts'
v[gamescope] [Warn]  scriptmgr: Directory '/home/retro/.config/gamescope/scripts' does not exist
:Couldn't open plugin directory: No such file or directory
1No plugins found, falling back on no decorations
RATTENTION: default value of option vk_khr_present_wait overridden by environment.
RATTENTION: default value of option vk_khr_present_wait overridden by environment.
RATTENTION: default value of option vk_khr_present_wait overridden by environment.
RATTENTION: default value of option vk_khr_present_wait overridden by environment.
KWARNING: radv is not a conformant Vulkan implementation, testing use only.
�[gamescope] [Info]  vulkan: selecting physical device 'AMD Radeon Graphics (RADV GFX1201)': queue family 1 (general queue family 0)
`[gamescope] [Info]  vulkan: physical device supports DRM format modifiers
n[gamescope] [Info]  wlserver: [backend/headless/backend.c:67] Creating headless backend
I[gamescope] [Info]  xdg_backend: Seat name: seat-0
\[gamescope] [Info]  vulkan: supported DRM formats for sampling usage:
F[gamescope] [Info]  vulkan:   AR24 (0x34325241)
F[gamescope] [Info]  vulkan:   XR24 (0x34325258)
F[gamescope] [Info]  vulkan:   AB24 (0x34324241)
F[gamescope] [Info]  vulkan:   XB24 (0x34324258)
F[gamescope] [Info]  vulkan:   RG16 (0x36314752)
F[gamescope] [Info]  vulkan:   AB4H (0x48344241)
F[gamescope] [Info]  vulkan:   XB4H (0x48344258)
F[gamescope] [Info]  vulkan:   AB30 (0x30334241)
F[gamescope] [Info]  vulkan:   XB30 (0x30334258)
F[gamescope] [Info]  vulkan:   AR30 (0x30335241)
F[gamescope] [Info]  vulkan:   XR30 (0x30335258)
W[gamescope] [Info]  wlserver: Using explicit sync when available
h[gamescope] [Info]  wlserver: Running compositor on wayland display 'gamescope-0'
n[gamescope] [Info]  wlserver: [backend/headless/backend.c:17] Starting headless backend
h[gamescope] [Info]  wlserver: Successfully initialized libei for input emulation!
�[gamescope] [Info]  wlserver: [xwayland/sockets.c:119] Created /tmp/.X11-unix ourselves -- other users will be unable to create X11 UNIX sockets of their own
d[gamescope] [Info]  wlserver: [xwayland/server.c:107] Starting Xwayland on :0
�[W][60008.592011] pw.conf      | [          conf.c: 1214 try_load_conf()] can't load config client.conf: No such file or directory
�[E][60008.592016] pw.conf      | [          conf.c: 1243 pw_conf_load_conf_for_context()] can't load config client.conf: No such file or directory
J[gamescope] [Error] pipewire: pw_context_new failed
EWarning: failed to setup PipeWire, screen capture won't be available
c[gamescope] [Info]  xwm: Embedded, no cursor set. Using left_ptr by default.
A[gamescope] [Info]  vblank: Using timerfd.
S[gamescope] [Info]  edid: Patching res 800x1280 -> 3840x2160
?/opt/gow/startup-app.sh: line 128: mangoapp: command not found
4steam.sh[395]: Running Steam on ubuntu 25.04 64-bit
6steam.sh[395]: STEAM_RUNTIME is enabled automatically
5setup.sh[443]: Steam runtime environment up-to-date!
,[main][INFO]: Starting Decky version v3.2.3
:[loader][INFO]: plugin_path: /home/retro/homebrew/plugins
A[loader][INFO]: import plugins from /home/retro/homebrew/plugins
#[loader][INFO]: Hot reload enabled
�dbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Activating service name='org.freedesktop.portal.Desktop' requested by ':1.0' (uid=99 pid=517 comm="/home/retro/.steam/ubuntu12_32/steam -srt-logger-o")
�dbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Activating service name='org.freedesktop.impl.portal.PermissionStore' requested by ':1.1' (uid=99 pid=533 comm="/usr/libexec/xdg-desktop-portal")
�dbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Successfully activated service 'org.freedesktop.impl.portal.PermissionStore'
�dbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Activating service name='org.freedesktop.portal.Documents' requested by ':1.1' (uid=99 pid=533 comm="/usr/libexec/xdg-desktop-portal")
udbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Successfully activated service 'org.freedesktop.portal.Documents'
>fusermount3: fuse device not found, try 'modprobe fuse' first
;error: fuse init failed: Can't mount path /tmp/sockets/doc

�(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.127: Choosing gtk.portal for org.freedesktop.impl.portal.Lockdown as a last-resort fallback
�dbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Activating service name='org.freedesktop.impl.portal.desktop.gtk' requested by ':1.1' (uid=99 pid=533 comm="/usr/libexec/xdg-desktop-portal")
�dbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Activating service name='org.a11y.Bus' requested by ':1.4' (uid=99 pid=554 comm="/usr/libexec/xdg-desktop-portal-gtk")
adbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Successfully activated service 'org.a11y.Bus'
�dbus-daemon[569]: Activating service name='org.a11y.atspi.Registry' requested by ':1.0' (uid=99 pid=554 comm="/usr/libexec/xdg-desktop-portal-gtk")
MSpiRegistry daemon is running with well-known name - org.a11y.atspi.Registry
Kdbus-daemon[569]: Successfully activated service 'org.a11y.atspi.Registry'
|dbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Successfully activated service 'org.freedesktop.impl.portal.desktop.gtk'

�(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.215: Failed to load RealtimeKit property: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.RealtimeKit1 was not provided by any .service files

�(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.215: Failed to load RealtimeKit property: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.RealtimeKit1 was not provided by any .service files

�(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.215: Failed to load RealtimeKit property: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.RealtimeKit1 was not provided by any .service files

�(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.215: Choosing gtk.portal for org.freedesktop.impl.portal.Settings as a last-resort fallback

�(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.216: Choosing gtk.portal for org.freedesktop.impl.portal.FileChooser as a last-resort fallback

�(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.216: Choosing gtk.portal for org.freedesktop.impl.portal.AppChooser as a last-resort fallback

�(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.216: Choosing gtk.portal for org.freedesktop.impl.portal.Print as a last-resort fallback

�(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.216: Choosing gtk.portal for org.freedesktop.impl.portal.Notification as a last-resort fallback

�(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.216: Choosing gtk.portal for org.freedesktop.impl.portal.Inhibit as a last-resort fallback

�(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.217: Choosing gtk.portal for org.freedesktop.impl.portal.Access as a last-resort fallback
�[W][60019.861884] pw.conf      | [          conf.c: 1214 try_load_conf()] can't load config client.conf: No such file or directory
�[E][60019.861887] pw.conf      | [          conf.c: 1243 pw_conf_load_conf_for_context()] can't load config client.conf: No such file or directory

�(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.217: Failed connect to PipeWire: Couldn't create PipeWire context

�(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.217: Choosing gtk.portal for org.freedesktop.impl.portal.Account as a last-resort fallback

�(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.217: Choosing gtk.portal for org.freedesktop.impl.portal.Email as a last-resort fallback

�(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.218: Choosing gtk.portal for org.freedesktop.impl.portal.DynamicLauncher as a last-resort fallback
sdbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Successfully activated service 'org.freedesktop.portal.Desktop'
�dbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Activating service name='org.freedesktop.portal.IBus' requested by ':1.8' (uid=99 pid=688 comm="/home/retro/.steam/ubuntu12_32/../ubuntu12_64/gldr")
pdbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Successfully activated service 'org.freedesktop.portal.IBus'
1The XKEYBOARD keymap compiler (xkbcomp) reports:
?> Warning:          Unsupported maximum keycode 708, clipping.
;>                   X11 cannot support keycodes above 255.
H> Warning:          Could not resolve keysym XF86KbdInputAssistPrevgrou
H> Warning:          Could not resolve keysym XF86KbdInputAssistNextgrou
2Errors from xkbcomp are not fatal to the X server
4[updater][INFO]: Updated remote version information
�[wsrouter][WARNING]: Dropping message as there is no connected socket: {'type': 3, 'event': 'loader/notify_updates', 'args': ()}

10:30:22.485284908 DEBUG | [DOCKER] Stopping container: /WolfSteam_2789025376806411523
10:30:22.485335750 DEBUG | [PULSE_ROUTER] Removed mappings host='e5134a74147e' session='2789025376806411523'
10:30:22.616102271 INFO  | Stopped container: /WolfSteam_2789025376806411523
10:30:22.620270295 DEBUG | [STREAM_SESSION] Remove virtual audio sink
10:30:22.620571284 DEBUG | [PULSE] Removed virtual sink, status: 1
10:30:22.620654749 DEBUG | [ENET] Client not found for session: 2789025376806411523
10:30:24.259705071 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo
10:30:24.292686299 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:30:26.307417384 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo
10:30:26.337425099 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:30:28.353676871 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo
10:30:28.385714322 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:30:30.398705662 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo
10:30:30.426094081 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:30:32.436907544 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo
10:30:32.470320481 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:30:34.486093011 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo
10:30:34.517709886 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo
10:30:36.529894571 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo
10:30:36.562555243 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo

Question

Is ~500ms expected on this path, or is something about my setup causing it? If
there's a way to measure where the delay accumulates (sink, capture, encode) I'm
happy to run whatever would be useful. Everything else about the setup works well.

Originally created by @martinzilak on GitHub (Aug 18, 2026). Original GitHub issue: https://github.com/games-on-whales/wolf/issues/481 ## Bug description Audio arrives roughly half a second after the video it belongs to. The offset is constant: same at the start of a session and 30 minutes in, and it doesn't reset on reconnect. It's not game specific. In Steam Big Picture the navigation sounds arrive well after the highlight has already moved. In Crash Bandicoot N. Sane Trilogy I can break two crates before hearing the first one break. Video and input both feel fine, it's only audio that's late. ## Steps to reproduce 1. Start a streaming session via Moonlight (tested with the Steam app) 2. Trigger any short sound, e.g. navigate the Steam Big Picture UI 3. Audio plays approximately 500ms after the corresponding video frame (measured with a stopwatch, lapping on controller button press and again when the sound starts, averaged over 10 tries) ## Environment - **Wolf version/image tag:** `ghcr.io/games-on-whales/wolf:stable` - **GPU:** AMD Radeon RX 9070 XT (Navi 48, `renderD129`) used for encoding, Intel Core Ultra 5 235 iGPU also present but not exposed to Wolf - **Host OS:** Unraid 7.2.5 - **Moonlight client version:** 9.0.2 on Apple TV 4K (3rd gen, wired ethernet), 6.1.0 on macOS - **Deployment method:** Docker Compose, via the games-on-whales Unraid plugin Following the advice in #297, I pass only the AMD render and card nodes rather than all of `/dev/dri`, so Wolf sees a single GPU. Video works correctly this way, including zero copy. Audio delay is identical before and after that change. ## Notes Both clients show the same delay, which is why I don't think this is client side. I originally assumed it was the Apple TV, since there are similar reports against TV clients: - [moonlight-android#1563](https://github.com/moonlight-stream/moonlight-android/issues/1563) (Sony Bravia, ~1s, video in sync) - [moonlight-android#1423](https://github.com/moonlight-stream/moonlight-android/issues/1423) (Android TV 14 / Google Streamer, 0.5-1s) - [moonlight-tv#516](https://github.com/mariotaku/moonlight-tv/issues/516) (webOS LG C2, delay grows over a session) Those are all Sunshine hosts and all resolve to something specific to the TV client, with other clients against the same host being fine. Mine looks different: the macOS client behaves identically against the same host, and the delay doesn't grow over time. Moonlight stats during a session: ``` Video stream: 3840x2160 59.94 FPS, codec HEVC Frames dropped by your network connection: 0.00% Average network latency: 1ms, variance 0ms ``` Things I tried that made no difference: - `PULSE_LATENCY_MSEC=30` in the app container env - Bypassing the soundbar and using the TV speakers directly - Removing and re-pairing the client The TV is in game mode with audio post-processing options turned off. Nothing else on it has audio sync problems: the Apple TV's own apps are fine, and so are the Switch and PS5 on the same TV. The `[gstreamer.audio]` section of my `config.toml`. I've only ever edited the `[[profiles]]` section, so this is whatever Wolf wrote on first run: ```toml default_audio_params = 'queue max-size-buffers=3 leaky=downstream ! audiorate ! audioconvert' default_opus_encoder = 'opusenc bitrate={bitrate} bitrate-type=cbr frame-size={packet_duration} bandwidth=fullband audio-type=restricted-lowdelay max-payload-size=1400' default_sink = '''queue ! rtpmoonlightpay_audio name=moonlight_pay packet_duration={packet_duration} encrypt={encrypt} aes_key="{aes_key}" aes_iv="{aes_iv}" ! appsink name=wolf_udp_sink''' default_source = 'interpipesrc name=interpipesrc_{}_audio listen-to={session_id}_audio is-live=true stream-sync=restart-ts max-bytes=0 max-buffers=3 block=false' ``` I haven't touched any of it, and I don't know enough about the audio path to say where half a second could be coming from. ## Wolf Logs <details> <summary>Click to expand logs</summary> ``` [2026-08-18 11:25:23] [2026-08-18 11:25:23] [ /etc/cont-init.d/10-setup_user.sh: executing... ] [2026-08-18 11:25:23] **** Configure default user **** [2026-08-18 11:25:23] Container running as root. Nothing to do. [2026-08-18 11:25:23] DONE [2026-08-18 11:25:23] [2026-08-18 11:25:23] [ /etc/cont-init.d/15-setup_devices.sh: executing... ] [2026-08-18 11:25:23] **** Configure devices **** [2026-08-18 11:25:23] Exec device groups [2026-08-18 11:25:23] Adding user 'root' to groups: gow-gid-71 [2026-08-18 11:25:23] DONE [2026-08-18 11:25:23] [2026-08-18 11:25:23] [ /etc/cont-init.d/30-nvidia.sh: executing... ] [2026-08-18 11:25:23] [2026-08-18 11:25:23] [ /etc/cont-init.d/init-gamescope.sh: executing... ] [2026-08-18 11:25:23] Launching the container's startup script as user 'root' 2026-08-18 11:25:23,582 INFO Set uid to user 0 succeeded 2026-08-18 11:25:23,584 INFO RPC interface 'supervisor' initialized 2026-08-18 11:25:23,584 CRIT Server 'unix_http_server' running without any HTTP authentication checking 2026-08-18 11:25:23,584 INFO supervisord started with pid 1 2026-08-18 11:25:24,587 INFO spawned: 'pulseaudio' with pid 181 2026-08-18 11:25:24,588 INFO spawned: 'wolf' with pid 182 [wolf] waiting for PulseAudio socket /tmp/sockets/pulse-socket 0:00:00.048278414 185 0x55deb9ef8f20 WARN default ges-meta-container.c:238:_set_value:<GESAsset@0x55deb9ef87f0> Could not set value on item: format-version 0:00:00.048294905 185 0x55deb9ef8f20 WARN default ges-meta-container.c:238:_set_value:<GESAsset@0x55deb9ef9160> Could not set value on item: format-version 0:00:00.048300821 185 0x55deb9ef8f20 WARN default ges-meta-container.c:238:_set_value:<GESAsset@0x55deb9ef99d0> Could not set value on item: format-version 0:00:00.048470461 185 0x55deb9ef8f20 WARN structure gststructure.c:3378:priv_gst_structure_parse_fields: Failed to find delimiter, r=mimetype 0:00:00.057913680 185 0x55deb9ef8f20 WARN msdkcontext gstmsdkcontext.c:178:gst_msdk_context_use_vaapi: Couldn't find a drm device node to open 0:00:00.060673365 185 0x55deb9ef8f20 WARN cudaloader gstcudaloader.cpp:358:gst_cuda_load_library_once_func: Could not open library libcuda.so.1, libcuda.so.1: cannot open shared object file: No such file or directory 0:00:00.069719543 185 0x55deb9ef8f20 WARN vadisplay gstvadisplay_drm.c:143:gst_va_display_drm_create_va_display:<vadisplaydrm0> Failed to open /dev/dri/renderD128: Operation not permitted amdgpu: os_same_file_description couldn't determine if two DRM fds reference the same file description. If they do, bad things may happen! 0:00:00.136457048 185 0x55deb9ef8f20 WARN vadisplay gstvadisplay_drm.c:143:gst_va_display_drm_create_va_display:<vadisplaydrm2> Failed to open /dev/dri/renderD128: Operation not permitted 0:00:00.154380096 185 0x55deb9ef8f20 WARN vafilter gstvafilter.c:1787:gst_va_filter_has_compose:<vafilter0> VPP does not support alpha blending 0:00:00.175731271 185 0x55deb9ef8f20 WARN vaapiblend gstvaapiblend.c:184:gst_vaapi_blend_initialize:<vaapiblend0> VPP does not support global alpha blending 0:00:00.191822078 185 0x55deb9ef8f20 WARN GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so" failed to initialise 0:00:00.192108556 185 0x55deb9ef8f20 WARN GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so" failed to initialise 0:00:00.197663719 182 0x5596a2c904d0 WARN GST_REGISTRY gstregistry.c:457:gst_registry_add_plugin:<registry0> Not replacing plugin because new one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so) is blacklisted but for a different location than existing one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so) 0:00:00.201341687 185 0x55deb9ef8f20 WARN GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so" failed to initialise 0:00:00.201363513 185 0x55deb9ef8f20 WARN GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so" failed to initialise 0:00:00.204514695 182 0x5596a2c904d0 WARN GST_REGISTRY gstregistry.c:457:gst_registry_add_plugin:<registry0> Not replacing plugin because new one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so) is blacklisted but for a different location than existing one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so) 10:25:25.030048518 INFO | Gstreamer version: 1.26.7-0 0:00:00.216331055 182 0x5596a2c904d0 WARN cudaloader gstcudaloader.cpp:358:gst_cuda_load_library_once_func: Could not open library libcuda.so.1, libcuda.so.1: cannot open shared object file: No such file or directory 10:25:25.030602135 DEBUG | XDG_RUNTIME_DIR=/tmp/sockets 10:25:25.030615922 INFO | Reading config file from: /mnt/user/appdata/gow/cfg/config.toml 10:25:25.036774782 DEBUG | /dev/dri/renderD129 vendor: Advanced Micro Devices, Inc. [AMD/ATI] 10:25:25.036812902 DEBUG | Skipping NVIDIA encoder, not a NVIDIA GPU (1) 0:00:00.224370450 182 0x5596a2c904d0 WARN vadisplay gstvadisplay_drm.c:143:gst_va_display_drm_create_va_display:<vadisplaydrm0> Failed to open /dev/dri/renderD128: Operation not permitted amdgpu: os_same_file_description couldn't determine if two DRM fds reference the same file description. If they do, bad things may happen! 0:00:00.244006346 182 0x5596a2c904d0 WARN vafilter gstvafilter.c:1787:gst_va_filter_has_compose:<vafilter0> VPP does not support alpha blending 10:25:25.067632735 DEBUG | Checking if varenderD129h264enc is available 0:00:00.253419624 182 0x5596a2c904d0 WARN GST_ELEMENT_FACTORY gstelementfactory.c:713:gst_element_factory_make_with_properties: no such element factory "varenderD129h264enc"! 10:25:25.067687443 INFO | Using h264 encoder: va 10:25:25.067705760 DEBUG | Skipping NVIDIA encoder, not a NVIDIA GPU (1) 10:25:25.071302822 DEBUG | Checking if varenderD129h265enc is available 0:00:00.257072087 182 0x5596a2c904d0 WARN GST_ELEMENT_FACTORY gstelementfactory.c:713:gst_element_factory_make_with_properties: no such element factory "varenderD129h265enc"! 10:25:25.071337968 INFO | Using h265 encoder: va 10:25:25.071353407 DEBUG | Skipping NVIDIA encoder, not a NVIDIA GPU (1) 10:25:25.074595150 DEBUG | Checking if varenderD129av1enc is available 0:00:00.260366295 182 0x5596a2c904d0 WARN GST_ELEMENT_FACTORY gstelementfactory.c:713:gst_element_factory_make_with_properties: no such element factory "varenderD129av1enc"! 10:25:25.074631428 INFO | Using av1 encoder: va 10:25:25.074695590 DEBUG | Required DMA formats for vapostproc: ["NV12", "YV12", "YU12", "P010", "P012", "R8 ", "YUYV", "YU24", "AB24", "AR24", "XB24", "XR24", "AR30"] 10:25:25.074719686 INFO | Using zero copy pipeline on AMD (/dev/dri/renderD129) 10:25:25.088609483 DEBUG | Loading server certificates from disk: /mnt/user/appdata/gow/cfg/cert.pem /mnt/user/appdata/gow/cfg/key.pem 10:25:25.092509007 DEBUG | We are running as container ID 5d4ebc99c0039be7fa2c5204c6ff7834209c416c09e2c04dd2971f7180b034fb 10:25:25.092544905 INFO | Detected mounted /mnt/user/appdata/gow in the host as /mnt/user/appdata/gow 10:25:25.092557000 INFO | Detected mounted /tmp/sockets in the host as /var/lib/docker/volumes/gow_wolf-socket/_data 10:25:25.092649351 INFO | [RTP] Starting RTP ping server on ports 48100 and 48200 10:25:25.092692249 INFO | RTSP server started on port: 48010 10:25:25.092715729 INFO | HTTP server listening on port: 47989 10:25:25.092733110 INFO | Starting mDNS service 10:25:25.092743962 INFO | Control server started on port: 47999 10:25:25.092755507 INFO | Starting Wolf API server on /tmp/sockets/wolf.sock 10:25:25.092985992 DEBUG | [PULSE] Connecting... 10:25:25.093294523 DEBUG | [PULSE] Pulse connection ready 10:25:25.093334878 DEBUG | [PULSE_ROUTER] Enabled PulseAudio subscription (sink-input + sink) 10:25:25.093342891 INFO | [PULSE_ROUTER] Setup complete (handlers registered, PA subscribed) 10:25:25.093932940 INFO | HTTPS server listening on port: 47984 2026-08-18 11:25:26,094 INFO success: pulseaudio entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2026-08-18 11:25:26,094 INFO success: wolf entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 10:25:29.144541903 DEBUG | [API] Received request: GET /api/v1/events - 10:26:15.318481396 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo 10:26:15.330985126 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:26:15.338613025 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:26:15.339695331 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo 10:26:15.351999548 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/applist 10:26:15.354014145 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo 10:26:15.358281743 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:26:15.368736877 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:26:15.524161800 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo 10:26:17.419546948 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo 10:26:17.455658348 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:26:19.479575734 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo 10:26:19.516867441 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:26:21.533367480 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo 10:26:21.571166763 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:26:23.583188489 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo 10:26:23.619083843 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:26:25.414932461 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:26:25.432625423 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/launch 10:26:25.432709039 DEBUG | Host app state folder: /mnt/user/appdata/gow/2789025376806411523/10_Mroz, creating paths 10:26:25.433711377 DEBUG | [STREAM_SESSION] Create wayland compositor 10:26:25.433750226 DEBUG | [STREAM_SESSION] Create virtual audio sink 10:26:25.434020236 DEBUG | [GSTREAMER] Starting video producer: waylanddisplaysrc name=wolf_wayland_source render_node=/dev/dri/renderD129 ! video/x-raw(memory:DMABuf), drm-format={NV12,YV12,YU12,P012,YUYV,YU24,AB24,AR24,XB24,XR24}, width=3840, height=2160, framerate=60/1 ! interpipesink sync=true async=false name=2789025376806411523_video max-buffers=1 10:26:25.434058614 DEBUG | [GSTREAMER] Starting audio producer: pulsesrc device="virtual_sink_2789025376806411523.monitor" server="/tmp/sockets/pulse-socket" ! audio/x-raw, channels=2, channel-mask=(bitmask)0x3, rate=48000 ! queue leaky=downstream max-size-buffers=3 ! interpipesink name="2789025376806411523_audio" sync=true async=false max-buffers=3 10:26:25.435273833 DEBUG | [PULSE] Created virtual sink: 3 10:26:25.436443992 DEBUG | [PULSE_ROUTER] Sink appeared name='virtual_sink_2789025376806411523' idx=1 -> session='2789025376806411523' 10:26:25.436520597 DEBUG | [PULSE_ROUTER] Sink appeared name='virtual_sink_2789025376806411523' idx=1 -> session='2789025376806411523' 10:26:25.440349809 DEBUG | Setting up waylanddisplaysrc 10:26:25.444295390 DEBUG | [RTSP] found session by matching payload: 119.129.78.62 10:26:25.444307718 DEBUG | [RTSP] received command OPTIONS 10:26:25.448551728 DEBUG | [RTSP] found session by matching payload: 119.129.78.62 10:26:25.448562593 DEBUG | [RTSP] received command DESCRIBE 10:26:25.452703872 DEBUG | [RTSP] found session by matching payload: 119.129.78.62 10:26:25.452714520 DEBUG | [RTSP] received command SETUP 10:26:25.456995412 DEBUG | [RTSP] found session by matching payload: 119.129.78.62 10:26:25.457007388 DEBUG | [RTSP] received command SETUP 10:26:25.461526548 DEBUG | [RTSP] found session by matching payload: 119.129.78.62 10:26:25.461545591 DEBUG | [RTSP] received command SETUP 2026-08-18T10:26:25.464479Z WARN smithay::backend::drm::device::fd: Unable to become drm master, assuming unprivileged mode 10:26:25.468300713 DEBUG | [RTSP] found session by matching payload: 119.129.78.62 10:26:25.468314744 DEBUG | [RTSP] received command ANNOUNCE 10:26:25.468363407 DEBUG | [RTSP] Moonlight requested video format HEVC 10:26:25.468367793 DEBUG | [RTSP] Adjusted video bitrate to 79308 Kbps 0:01:00.667595701 182 0x14af0001b760 WARN basesink gstbasesink.c:1248:gst_base_sink_query_latency:<2789025376806411523_video> warning: Pipeline construction is invalid, please add queues. 0:01:00.667604798 182 0x14af0001b760 WARN basesink gstbasesink.c:1248:gst_base_sink_query_latency:<2789025376806411523_video> warning: Not enough buffering available for the processing deadline of 0:00:00.020000000, add enough queues to buffer 0:00:00.020000000 additional data. Shortening processing latency to 0:00:00.000000000. 10:26:25.481946425 DEBUG | Wayland source message: WAYLAND_DISPLAY = wayland-3 10:26:25.481960008 INFO | Wayland display ready, listening on: wayland-3 10:26:25.482194568 DEBUG | [STREAM_SESSION] Start runner 10:26:25.482831250 DEBUG | /proc/driver/nvidia/gpus/0000:04:00.0/information doesn't exists, this might be normal if the GPU is not Nvidia 10:26:25.483557897 DEBUG | [RTSP] found session by matching payload: 119.129.78.62 10:26:25.483568503 DEBUG | [RTSP] received command PLAY 10:26:25.484803695 DEBUG | [ENET] connected client: 192.168.1.72:32730 10:26:25.485521522 DEBUG | Starting video pipeline: interpipesrc name=interpipesrc_2789025376806411523_video listen-to=2789025376806411523_video is-live=true stream-sync=restart-ts max-bytes=0 max-buffers=1 leaky-type=downstream ! vapostproc add-borders=true ! video/x-raw(memory:VAMemory), format=NV12, width=3840, height=2160, pixel-aspect-ratio=1/1 ! vah265enc aud=false b-frames=0 ref-frames=1 num-slices=1 bitrate=79308 cpb-size=1321 min-qp=20 key-int-max=1024 rate-control=cbr target-usage=6 ! h265parse ! video/x-h265, profile=main, stream-format=byte-stream ! queue ! rtpmoonlightpay_video name=moonlight_pay payload_size=1392 fec_percentage=20 min_required_fec_packets=2 ! appsink sync=false max-buffers=1 drop=true name=wolf_udp_sink 10:26:25.486482305 DEBUG | Setting up wolf_udp_sink 10:26:25.486544709 DEBUG | Received NEED_CONTEXT for type gst.va.display.handle 10:26:25.487712246 DEBUG | /dev/dri/renderD129 vendor: Advanced Micro Devices, Inc. [AMD/ATI] 10:26:25.487755900 DEBUG | [DOCKER] Using fake-udev, creating /mnt/user/appdata/gow/2789025376806411523/10_Mroz/udev/data 0:01:00.676487503 182 0x14aee0001510 WARN vaencoder gstvaencoder.c:750:gst_va_encoder_get_prediction_direction:<vaencoder3> Driver does not support query prediction direction 0:01:00.676496256 182 0x14aee0001510 WARN vaencoder gstvaencoder.c:839:gst_va_encoder_has_trellis:<vaencoder3> Driver does not support trellis 10:26:25.492732991 DEBUG | /dev/dri/renderD129 vendor: Advanced Micro Devices, Inc. [AMD/ATI] 10:26:25.492801099 DEBUG | [DOCKER] Setting DeviceCgroupRules for hidraw:244 and input:13 10:26:25.492845616 DEBUG | [DOCKER] Container options: {"HostConfig":{"IpcMode":"host","CapAdd":["SYS_ADMIN","SYS_NICE","SYS_PTRACE","NET_RAW","MKNOD","NET_ADMIN"],"SecurityOpt":["seccomp=unconfined","apparmor=unconfined"],"Ulimits":[{"Name":"nofile","Hard":10240,"Soft":10240}],"Privileged":false,"DeviceCgroupRules":["c 244:* rwm","c 13:* rwm"]}} 0:01:00.691754387 182 0x14aee0001510 WARN basesrc gstbasesrc.c:4255:gst_base_src_push_segment:<interpipesrc_2789025376806411523_video> segment format mismatched, ignore 10:26:25.547267651 INFO | Creating PS joypad for controller 0 10:26:25.591734686 INFO | [DOCKER] Starting container: /WolfSteam_2789025376806411523 10:26:25.591789411 DEBUG | [DOCKER] Starting container: { id: e5134a74147e56980bedfd313431b4bdddd6a6ec33f3759b0d36b17079c09f0f name: /WolfSteam_2789025376806411523 image: ghcr.io/games-on-whales/steam:edge status: 0 ports: [] mounts: [/mnt/games:/games:rw, /var/lib/docker/volumes/gow_wolf-socket/_data/pulse-socket:/tmp/sockets/pulse-socket:rw, /var/lib/docker/volumes/gow_wolf-socket/_data/wayland-3:/tmp/sockets/wayland-3:rw, /mnt/user/appdata/gow/2789025376806411523/10_Mroz:/home/retro:rw, /mnt/user/appdata/gow/fake-udev:/usr/bin/fake-udev:rw, /mnt/user/appdata/gow/2789025376806411523/10_Mroz/udev:/run/udev:rw, /dev/input:/dev/input:rw] devices: [/dev/uinput:/dev/uinput:mrw, /dev/dri/card1:/dev/dri/card1:mrw, /dev/dri/renderD129:/dev/dri/renderD129:mrw] env: ["RUN_GAMESCOPE=1", "PULSE_LATENCY_MSEC=30", "GAMESCOPE_WIDTH=3840", "GAMESCOPE_HEIGHT=2160", "GAMESCOPE_REFRESH=60", "PROTON_FSR4_UPGRADE=1", "MANGOHUD_CONFIGFILE=/games/MangoHud.conf", "GOW_REQUIRED_DEVICES=/dev/uinput /dev/input/* /dev/dri/*", "GAMESCOPE_REFRESH=60", "PUID=99", "WAYLAND_DISPLAY=wayland-3", "GAMESCOPE_HEIGHT=2160", "PGID=100", "PULSE_SERVER=/tmp/sockets/pulse-socket", "WOLF_VIDEO_BUFFER_CAPS=video/x-raw(memory:DMABuf), drm-format={NV12,YV12,YU12,P012,YUYV,YU24,AB24,AR24,XB24,XR24}", "PULSE_SOURCE=virtual_sink_2789025376806411523.monitor", "PULSE_SINK=virtual_sink_2789025376806411523", "WOLF_SESSION_ID=2789025376806411523", "XDG_RUNTIME_DIR=/tmp/sockets", "GAMESCOPE_WIDTH=3840", "PATH=/usr/games/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "UMASK=000", "UNAME=retro", "HOME=/home/retro", "TZ=Europe/London", "DEBIAN_FRONTEND=noninteractive", "NEEDRESTART_SUSPEND=1", "GAMESCOPE_VERSION=3.16.22", "BUILD_ARCHITECTURE=amd64", "DEB_BUILD_OPTIONS=noddebs"] } 10:26:25.592395275 DEBUG | [PULSE_ROUTER] Map add host='e5134a74147e' -> session='2789025376806411523' (container_id='e5134a74147e56980bedfd313431b4bdddd6a6ec33f3759b0d36b17079c09f0f') 10:26:25.597689680 INFO | Requesting gyroscope events for controller 0 10:26:25.597725870 DEBUG | [INPUT] Sending PlugDeviceEvent for joypad 0 of type: 1 10:26:25.597842314 DEBUG | 2789025376806411523 received hot-plug device event 10:26:25.597871559 DEBUG | [DOCKER] Plugging device from queue in session: 2789025376806411523 10:26:25.597887837 DEBUG | [DOCKER] Writing hwdb file: /mnt/user/appdata/gow/2789025376806411523/10_Mroz/udev/data/c13:79 10:26:25.598411967 DEBUG | [DOCKER] Writing hwdb file: /mnt/user/appdata/gow/2789025376806411523/10_Mroz/udev/data/c13:0 10:26:25.598744854 DEBUG | [DOCKER] Executing command: mkdir -p /dev/input && mknod /dev/input/event15 c 13 79 && chmod 777 /dev/input/event15 && fake-udev -m LklOUFVUX0NMQVNTPWpveXN0aWNrAEFDVElPTj1hZGQAQ1VSUkVOVF9UQUdTPTpzZWF0OnVhY2Nlc3M6AERFVk5BTUU9L2Rldi9pbnB1dC9ldmVudDE1AERFVlBBVEg9L2RldmljZXMvdmlydHVhbC9taXNjL3VoaWQvMDAwNTowNTRDOjBDRTYuMDAyNC9pbnB1dC9pbnB1dDQ4L2V2ZW50MTUASURfSU5QVVQ9MQBJRF9JTlBVVF9KT1lTVElDSz0xAElEX1NFUklBTD1ub3NlcmlhbABNQUpPUj0xMwBNSU5PUj03OQBTRVFOVU09NwBTVUJTWVNURU09aW5wdXQAVEFHUz06c2VhdDp1YWNjZXNzOgBVTklRPWNmOjRiOmRjOjZlOjlkOjUzAFVTRUNfSU5JVElBTElaRUQ9MTc4NzA0ODc4NQA= 10:26:25.617611946 WARN | Docker exec failed (1), 'mknod: /dev/input/event15: File exists 10:26:25.617661240 DEBUG | [DOCKER] Executing command: mkdir -p /dev/input && mknod /dev/input/js0 c 13 0 && chmod 777 /dev/input/js0 && fake-udev -m LklOUFVUX0NMQVNTPWpveXN0aWNrAEFDVElPTj1hZGQAQ1VSUkVOVF9UQUdTPTpzZWF0OnVhY2Nlc3M6AERFVk5BTUU9L2Rldi9pbnB1dC9qczAAREVWUEFUSD0vZGV2aWNlcy92aXJ0dWFsL21pc2MvdWhpZC8wMDA1OjA1NEM6MENFNi4wMDI0L2lucHV0L2lucHV0NDgvanMwAElEX0lOUFVUPTEASURfSU5QVVRfSk9ZU1RJQ0s9MQBJRF9TRVJJQUw9bm9zZXJpYWwATUFKT1I9MTMATUlOT1I9MABTRVFOVU09NwBTVUJTWVNURU09aW5wdXQAVEFHUz06c2VhdDp1YWNjZXNzOgBVTklRPWNmOjRiOmRjOjZlOjlkOjUzAFVTRUNfSU5JVElBTElaRUQ9MTc4NzA0ODc4NQA= 10:26:25.632670360 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo 10:26:25.637815120 WARN | Docker exec failed (1), #mknod: /dev/input/js0: File exists 10:26:25.637865821 DEBUG | [DOCKER] Executing command: mkdir -p /dev/input && mknod /dev/hidraw9 c 244 9 && chmod 777 /dev/hidraw9 && fake-udev -m QUNUSU9OPWFkZABDVVJSRU5UX1RBR1M9OnNlYXQ6dWFjY2VzczoAREVWTkFNRT0vZGV2L2hpZHJhdzkAREVWUEFUSD0vZGV2aWNlcy92aXJ0dWFsL21pc2MvdWhpZC8wMDA1OjA1NEM6MENFNi4wMDI0L2hpZHJhdy9oaWRyYXc5AElEX0lOUFVUPTEASURfU0VSSUFMPW5vc2VyaWFsAE1BSk9SPTI0NABNSU5PUj05AFNFUU5VTT03AFNVQlNZU1RFTT1oaWRyYXcAVEFHUz06c2VhdDp1YWNjZXNzOgBVU0VDX0lOSVRJQUxJWkVEPTE3ODcwNDg3ODUA 10:26:25.655841719 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:26:25.985721092 DEBUG | Starting audio pipeline: interpipesrc name=interpipesrc_2789025376806411523_audio listen-to=2789025376806411523_audio is-live=true stream-sync=restart-ts max-bytes=0 max-buffers=3 block=false ! queue max-size-buffers=3 leaky=downstream ! audiorate ! audioconvert ! opusenc bitrate=96000 bitrate-type=cbr frame-size=5 bandwidth=fullband audio-type=restricted-lowdelay max-payload-size=1400 ! queue ! rtpmoonlightpay_audio name=moonlight_pay packet_duration=5 encrypt=true aes_key="94156E00E2887249332BEE106DA80643" aes_iv="1615328017" ! appsink name=wolf_udp_sink 10:26:25.986722671 DEBUG | Setting up wolf_udp_sink 0:01:02.621481901 182 0x14aee0001ed0 WARN basesrc gstbasesrc.c:4255:gst_base_src_push_segment:<interpipesrc_2789025376806411523_audio> segment format mismatched, ignore 10:26:27.527991616 DEBUG | [GSTREAMER] Forcing IDR 10:26:45.556014064 DEBUG | [PULSE_ROUTER] Sink appeared name='virtual_sink_2789025376806411523' idx=1 -> session='2789025376806411523' 10:27:01.640554208 DEBUG | [PULSE_ROUTER] Sink appeared name='virtual_sink_2789025376806411523' idx=1 -> session='2789025376806411523' 10:27:10.259888032 DEBUG | [PULSE_ROUTER] Sink appeared name='virtual_sink_2789025376806411523' idx=1 -> session='2789025376806411523' 10:27:10.261598150 DEBUG | [PULSE_ROUTER] Sink appeared name='virtual_sink_2789025376806411523' idx=1 -> session='2789025376806411523' 10:27:10.262428292 DEBUG | [PULSE_ROUTER] Sink appeared name='virtual_sink_2789025376806411523' idx=1 -> session='2789025376806411523' 10:28:09.941193817 WARN | [GSTREAMER] Size of frame too large, 346 packets is bigger than the max (255); skipping FEC 10:28:09.941704777 WARN | [GSTREAMER] Size of frame too large, 346 packets is bigger than the max (255); skipping FEC 10:28:09.942008223 WARN | [GSTREAMER] Size of frame too large, 346 packets is bigger than the max (255); skipping FEC 10:30:13.136170555 DEBUG | [PULSE_ROUTER] Sink appeared name='virtual_sink_2789025376806411523' idx=1 -> session='2789025376806411523' 10:30:18.839056473 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo 10:30:18.849178972 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:30:18.854683629 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:30:18.855479867 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo 10:30:18.866361479 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/applist 10:30:18.868983438 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo 10:30:18.874030179 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:30:18.887054769 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:30:18.985164671 DEBUG | [ENET] disconnected client: 192.168.1.72:32730 10:30:18.985191388 DEBUG | [GSTREAMER] Pausing pipeline: 2789025376806411523 10:30:18.985205459 DEBUG | [GSTREAMER] Pausing pipeline: 2789025376806411523 10:30:18.998216040 INFO | [GSTREAMER] Pipeline reached End Of Stream 10:30:19.030843550 INFO | [GSTREAMER] Pipeline reached End Of Stream 10:30:19.231841655 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo 10:30:20.948730383 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo 10:30:20.974658684 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:30:22.056031487 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/cancel 10:30:22.179555839 DEBUG | [GSTREAMER] Stopping video producer: 2789025376806411523 10:30:22.180667403 DEBUG | [GSTREAMER] Stopping audio producer: 2789025376806411523 10:30:22.180880533 INFO | [GSTREAMER] Pipeline reached End Of Stream 10:30:22.186542490 DEBUG | [ENET] Client not found for session: 2789025376806411523 10:30:22.186544463 INFO | [GSTREAMER] Pipeline reached End Of Stream 0:04:57.372365990 182 0x14aed8001ee0 WARN audiosrc gstaudiosrc.c:227:audioringbuffer_thread_func:<pulsesrc0> error reading data -1 (reason: Success), skipping segment 10:30:22.214772020 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:30:22.223194492 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo 10:30:22.243370240 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:30:22.485219388 DEBUG | [DOCKER] Container logs: [2026-08-18 11:26:25] J[2026-08-18 11:26:25] [ /etc/cont-init.d/10-setup_user.sh: executing... ] 7[2026-08-18 11:26:25] **** Configure default user **** H[2026-08-18 11:26:25] Setting default user uid=99(retro) gid=100(retro) Uuseradd warning: retro's uid 99 outside of the UID_MIN 1000 and UID_MAX 60000 range. Auseradd: warning: the home directory /home/retro already exists. ;useradd: Not copying any file from skel directory into it. +[2026-08-18 11:26:25] Setting umask to 000 >[2026-08-18 11:26:25] Ensure retro home directory is writable 9[2026-08-18 11:26:25] Ensure XDG_RUNTIME_DIR is writable [2026-08-18 11:26:25] DONE [2026-08-18 11:26:25] M[2026-08-18 11:26:25] [ /etc/cont-init.d/15-setup_devices.sh: executing... ] 2[2026-08-18 11:26:25] **** Configure devices **** )[2026-08-18 11:26:25] Exec device groups P[2026-08-18 11:26:25] Adding user 'retro' to groups: gow-gid-71,gow-gid-18,root [2026-08-18 11:26:25] DONE [2026-08-18 11:26:25] F[2026-08-18 11:26:25] [ /etc/cont-init.d/30-nvidia.sh: executing... ] [2026-08-18 11:26:25] K[2026-08-18 11:26:25] [ /etc/cont-init.d/init-gamescope.sh: executing... ] [2026-08-18 11:26:25] L[2026-08-18 11:26:25] [ /etc/cont-init.d/system-services.sh: executing... ] +[2026-08-18 11:26:25] *** DBus started *** ,[2026-08-18 11:26:25] *** Bluez started *** 'bluetoothd[290]: Bluetooth daemon 5.79 Tbluetoothd[290]: src/adapter.c:adapter_init() Failed to access management interface Jbluetoothd[290]: src/main.c:main() Adapter handling initialization failed 5[2026-08-18 11:26:25] *** NetworkManager started *** 5[2026-08-18 11:26:25] *** D-Bus Watchdog started *** 3[2026-08-18 11:26:25] *** Decky Loader started *** [[2026-08-18 11:26:25] [steamos-dbus-watchdog] Starting D-Bus watcher for Steam shutdown... O[2026-08-18 11:26:25] Launching the container's startup script as user 'retro' '[2026-08-18 11:26:25] Steam startup.sh IClaimed global gamescope stats session at "/tmp/sockets/gamescope-stats" F[gamescope] [Info] console: gamescope version GNo CAP_SYS_NICE, falling back to regular-priority compute and threads. Performance will be affected. j[gamescope] [Info] scriptmgr: Loading scripts from: '/usr/share/gamescope/scripts' w[gamescope] [Info] scriptmgr: Loading scripts from: '/usr/share/gamescope/scripts/00-gamescope' ~[gamescope] [Info] scriptmgr: Loading scripts from: '/usr/share/gamescope/scripts/00-gamescope/common' �[gamescope] [Info] scriptmgr: Running script file '/usr/share/gamescope/scripts/00-gamescope/common/inspect.lua' (id: 0) �[gamescope] [Info] scriptmgr: Running script file '/usr/share/gamescope/scripts/00-gamescope/common/modegen.lua' (id: 1) �[gamescope] [Info] scriptmgr: Running script file '/usr/share/gamescope/scripts/00-gamescope/common/util.lua' (id: 2) �[gamescope] [Info] scriptmgr: Loading scripts from: '/usr/share/gamescope/scripts/00-gamescope/displays' �[gamescope] [Info] scriptmgr: Running script file '/usr/share/gamescope/scripts/00-gamescope/displays/asus.rogally.lcd.lua' (id: 3) �[gamescope] [Info] scriptmgr: Running script file '/usr/share/gamescope/scripts/00-gamescope/displays/deckhd.steamdeck.deckhd-lcd.lua' (id: 4) �[gamescope] [Info] scriptmgr: Running script file '/usr/share/gamescope/scripts/00-gamescope/displays/valve.steamdeck.lcd.lua' (id: 5) �[gamescope] [Info] scriptmgr: Running script file '/usr/share/gamescope/scripts/00-gamescope/displays/valve.steamdeck.oled.lua' (id: 6) d[gamescope] [Info] scriptmgr: Loading scripts from: '/etc/gamescope/scripts' g[gamescope] [Warn] scriptmgr: Directory '/etc/gamescope/scripts' does not exist s[gamescope] [Info] scriptmgr: Loading scripts from: '/home/retro/.config/gamescope/scripts' v[gamescope] [Warn] scriptmgr: Directory '/home/retro/.config/gamescope/scripts' does not exist :Couldn't open plugin directory: No such file or directory 1No plugins found, falling back on no decorations RATTENTION: default value of option vk_khr_present_wait overridden by environment. RATTENTION: default value of option vk_khr_present_wait overridden by environment. RATTENTION: default value of option vk_khr_present_wait overridden by environment. RATTENTION: default value of option vk_khr_present_wait overridden by environment. KWARNING: radv is not a conformant Vulkan implementation, testing use only. �[gamescope] [Info] vulkan: selecting physical device 'AMD Radeon Graphics (RADV GFX1201)': queue family 1 (general queue family 0) `[gamescope] [Info] vulkan: physical device supports DRM format modifiers n[gamescope] [Info] wlserver: [backend/headless/backend.c:67] Creating headless backend I[gamescope] [Info] xdg_backend: Seat name: seat-0 \[gamescope] [Info] vulkan: supported DRM formats for sampling usage: F[gamescope] [Info] vulkan: AR24 (0x34325241) F[gamescope] [Info] vulkan: XR24 (0x34325258) F[gamescope] [Info] vulkan: AB24 (0x34324241) F[gamescope] [Info] vulkan: XB24 (0x34324258) F[gamescope] [Info] vulkan: RG16 (0x36314752) F[gamescope] [Info] vulkan: AB4H (0x48344241) F[gamescope] [Info] vulkan: XB4H (0x48344258) F[gamescope] [Info] vulkan: AB30 (0x30334241) F[gamescope] [Info] vulkan: XB30 (0x30334258) F[gamescope] [Info] vulkan: AR30 (0x30335241) F[gamescope] [Info] vulkan: XR30 (0x30335258) W[gamescope] [Info] wlserver: Using explicit sync when available h[gamescope] [Info] wlserver: Running compositor on wayland display 'gamescope-0' n[gamescope] [Info] wlserver: [backend/headless/backend.c:17] Starting headless backend h[gamescope] [Info] wlserver: Successfully initialized libei for input emulation! �[gamescope] [Info] wlserver: [xwayland/sockets.c:119] Created /tmp/.X11-unix ourselves -- other users will be unable to create X11 UNIX sockets of their own d[gamescope] [Info] wlserver: [xwayland/server.c:107] Starting Xwayland on :0 �[W][60008.592011] pw.conf | [ conf.c: 1214 try_load_conf()] can't load config client.conf: No such file or directory �[E][60008.592016] pw.conf | [ conf.c: 1243 pw_conf_load_conf_for_context()] can't load config client.conf: No such file or directory J[gamescope] [Error] pipewire: pw_context_new failed EWarning: failed to setup PipeWire, screen capture won't be available c[gamescope] [Info] xwm: Embedded, no cursor set. Using left_ptr by default. A[gamescope] [Info] vblank: Using timerfd. S[gamescope] [Info] edid: Patching res 800x1280 -> 3840x2160 ?/opt/gow/startup-app.sh: line 128: mangoapp: command not found 4steam.sh[395]: Running Steam on ubuntu 25.04 64-bit 6steam.sh[395]: STEAM_RUNTIME is enabled automatically 5setup.sh[443]: Steam runtime environment up-to-date! ,[main][INFO]: Starting Decky version v3.2.3 :[loader][INFO]: plugin_path: /home/retro/homebrew/plugins A[loader][INFO]: import plugins from /home/retro/homebrew/plugins #[loader][INFO]: Hot reload enabled �dbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Activating service name='org.freedesktop.portal.Desktop' requested by ':1.0' (uid=99 pid=517 comm="/home/retro/.steam/ubuntu12_32/steam -srt-logger-o") �dbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Activating service name='org.freedesktop.impl.portal.PermissionStore' requested by ':1.1' (uid=99 pid=533 comm="/usr/libexec/xdg-desktop-portal") �dbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Successfully activated service 'org.freedesktop.impl.portal.PermissionStore' �dbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Activating service name='org.freedesktop.portal.Documents' requested by ':1.1' (uid=99 pid=533 comm="/usr/libexec/xdg-desktop-portal") udbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Successfully activated service 'org.freedesktop.portal.Documents' >fusermount3: fuse device not found, try 'modprobe fuse' first ;error: fuse init failed: Can't mount path /tmp/sockets/doc �(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.127: Choosing gtk.portal for org.freedesktop.impl.portal.Lockdown as a last-resort fallback �dbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Activating service name='org.freedesktop.impl.portal.desktop.gtk' requested by ':1.1' (uid=99 pid=533 comm="/usr/libexec/xdg-desktop-portal") �dbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Activating service name='org.a11y.Bus' requested by ':1.4' (uid=99 pid=554 comm="/usr/libexec/xdg-desktop-portal-gtk") adbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Successfully activated service 'org.a11y.Bus' �dbus-daemon[569]: Activating service name='org.a11y.atspi.Registry' requested by ':1.0' (uid=99 pid=554 comm="/usr/libexec/xdg-desktop-portal-gtk") MSpiRegistry daemon is running with well-known name - org.a11y.atspi.Registry Kdbus-daemon[569]: Successfully activated service 'org.a11y.atspi.Registry' |dbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Successfully activated service 'org.freedesktop.impl.portal.desktop.gtk' �(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.215: Failed to load RealtimeKit property: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.RealtimeKit1 was not provided by any .service files �(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.215: Failed to load RealtimeKit property: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.RealtimeKit1 was not provided by any .service files �(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.215: Failed to load RealtimeKit property: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.RealtimeKit1 was not provided by any .service files �(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.215: Choosing gtk.portal for org.freedesktop.impl.portal.Settings as a last-resort fallback �(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.216: Choosing gtk.portal for org.freedesktop.impl.portal.FileChooser as a last-resort fallback �(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.216: Choosing gtk.portal for org.freedesktop.impl.portal.AppChooser as a last-resort fallback �(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.216: Choosing gtk.portal for org.freedesktop.impl.portal.Print as a last-resort fallback �(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.216: Choosing gtk.portal for org.freedesktop.impl.portal.Notification as a last-resort fallback �(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.216: Choosing gtk.portal for org.freedesktop.impl.portal.Inhibit as a last-resort fallback �(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.217: Choosing gtk.portal for org.freedesktop.impl.portal.Access as a last-resort fallback �[W][60019.861884] pw.conf | [ conf.c: 1214 try_load_conf()] can't load config client.conf: No such file or directory �[E][60019.861887] pw.conf | [ conf.c: 1243 pw_conf_load_conf_for_context()] can't load config client.conf: No such file or directory �(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.217: Failed connect to PipeWire: Couldn't create PipeWire context �(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.217: Choosing gtk.portal for org.freedesktop.impl.portal.Account as a last-resort fallback �(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.217: Choosing gtk.portal for org.freedesktop.impl.portal.Email as a last-resort fallback �(/usr/libexec/xdg-desktop-portal:533): xdg-desktop-portal-WARNING **: 11:26:37.218: Choosing gtk.portal for org.freedesktop.impl.portal.DynamicLauncher as a last-resort fallback sdbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Successfully activated service 'org.freedesktop.portal.Desktop' �dbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Activating service name='org.freedesktop.portal.IBus' requested by ':1.8' (uid=99 pid=688 comm="/home/retro/.steam/ubuntu12_32/../ubuntu12_64/gldr") pdbus-daemon[393]: [session uid=99 pid=393 pidfd=5] Successfully activated service 'org.freedesktop.portal.IBus' 1The XKEYBOARD keymap compiler (xkbcomp) reports: ?> Warning: Unsupported maximum keycode 708, clipping. ;> X11 cannot support keycodes above 255. H> Warning: Could not resolve keysym XF86KbdInputAssistPrevgrou H> Warning: Could not resolve keysym XF86KbdInputAssistNextgrou 2Errors from xkbcomp are not fatal to the X server 4[updater][INFO]: Updated remote version information �[wsrouter][WARNING]: Dropping message as there is no connected socket: {'type': 3, 'event': 'loader/notify_updates', 'args': ()} 10:30:22.485284908 DEBUG | [DOCKER] Stopping container: /WolfSteam_2789025376806411523 10:30:22.485335750 DEBUG | [PULSE_ROUTER] Removed mappings host='e5134a74147e' session='2789025376806411523' 10:30:22.616102271 INFO | Stopped container: /WolfSteam_2789025376806411523 10:30:22.620270295 DEBUG | [STREAM_SESSION] Remove virtual audio sink 10:30:22.620571284 DEBUG | [PULSE] Removed virtual sink, status: 1 10:30:22.620654749 DEBUG | [ENET] Client not found for session: 2789025376806411523 10:30:24.259705071 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo 10:30:24.292686299 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:30:26.307417384 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo 10:30:26.337425099 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:30:28.353676871 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo 10:30:28.385714322 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:30:30.398705662 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo 10:30:30.426094081 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:30:32.436907544 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo 10:30:32.470320481 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:30:34.486093011 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo 10:30:34.517709886 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo 10:30:36.529894571 DEBUG | 192.168.1.72 [GET] HTTP://192.168.1.192/serverinfo 10:30:36.562555243 DEBUG | 192.168.1.72 [GET] HTTPS://192.168.1.192/serverinfo ``` </details> ## Question Is ~500ms expected on this path, or is something about my setup causing it? If there's a way to measure where the delay accumulates (sink, capture, encode) I'm happy to run whatever would be useful. Everything else about the setup works well.
Author
Owner

@JBailes commented on GitHub (Aug 18, 2026):

I've had this happen before, specifically, on a LG TV client.

It says you are using HEVC, but it happened for me with the AV1 codec. Are you sure about the codec?

<!-- gh-comment-id:5327464415 --> @JBailes commented on GitHub (Aug 18, 2026): I've had this happen before, specifically, on a LG TV client. It says you are using HEVC, but it happened for me with the AV1 codec. Are you sure about the codec?
Author
Owner

@martinzilak commented on GitHub (Aug 18, 2026):

I've had this happen before, specifically, on a LG TV client.

It says you are using HEVC, but it happened for me with the AV1 codec. Are you sure about the codec?

Both clients have the codec set to Auto and both negotiate HEVC (confirmed in the Wolf log). The Apple TV streams 4K60 at 100 Mbps, the Mac 1080p60 at 50 Mbps, and the audio delay is the same on both.

TV:

12:18:38.012127234 DEBUG | [RTSP] Moonlight requested video format HEVC
12:18:38.012131962 DEBUG | [RTSP] Adjusted video bitrate to 79308 Kbps

Mac:

11:32:55.929838749 DEBUG | [RTSP] Moonlight requested video format HEVC
11:32:55.929843385 DEBUG | [RTSP] Adjusted video bitrate to 39308 Kbps
<!-- gh-comment-id:5328302521 --> @martinzilak commented on GitHub (Aug 18, 2026): > I've had this happen before, specifically, on a LG TV client. > > It says you are using HEVC, but it happened for me with the AV1 codec. Are you sure about the codec? Both clients have the codec set to Auto and both negotiate HEVC (confirmed in the Wolf log). The Apple TV streams 4K60 at 100 Mbps, the Mac 1080p60 at 50 Mbps, and the audio delay is the same on both. TV: ``` 12:18:38.012127234 DEBUG | [RTSP] Moonlight requested video format HEVC 12:18:38.012131962 DEBUG | [RTSP] Adjusted video bitrate to 79308 Kbps ``` Mac: ``` 11:32:55.929838749 DEBUG | [RTSP] Moonlight requested video format HEVC 11:32:55.929843385 DEBUG | [RTSP] Adjusted video bitrate to 39308 Kbps ```
Author
Owner

@JBailes commented on GitHub (Aug 18, 2026):

Hmm. Does Moonlight stats (onscreen measurement) result in any strange behaviors?

Is there anything else that stands out to you? 500ms audio delay consistently should not be happening the way things are written.

<!-- gh-comment-id:5328382746 --> @JBailes commented on GitHub (Aug 18, 2026): Hmm. Does Moonlight stats (onscreen measurement) result in any strange behaviors? Is there anything else that stands out to you? 500ms audio delay consistently should not be happening the way things are written.
Author
Owner

@martinzilak commented on GitHub (Aug 18, 2026):

Hmm. Does Moonlight stats (onscreen measurement) result in any strange behaviors?

Is there anything else that stands out to you? 500ms audio delay consistently should not be happening the way things are written.

Not at all, to me the stats look pretty much perfect.

EDIT: Also overall the experience is very smooth, I was pleasantly surprised how playable it is since this is my first experience with remote play.

Image Image
<!-- gh-comment-id:5328480634 --> @martinzilak commented on GitHub (Aug 18, 2026): > Hmm. Does Moonlight stats (onscreen measurement) result in any strange behaviors? > > Is there anything else that stands out to you? 500ms audio delay consistently should not be happening the way things are written. Not at all, to me the stats look pretty much perfect. **EDIT:** Also overall the experience is very smooth, I was pleasantly surprised how playable it is since this is my first experience with remote play. <img width="7680" height="3240" alt="Image" src="https://github.com/user-attachments/assets/f4ccc96e-ffac-463e-a44c-0821fa9f6797" /> <img width="4032" height="3024" alt="Image" src="https://github.com/user-attachments/assets/9cefc760-0844-4e55-af6b-a4665daaf3ab" />
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
games-on-whales/wolf#291
No description provided.