Skip to content

[Issue]: weird drawing stuttering issue (NOT WIFI ISSUE, input stuttering and dragging not stream stuttering) #536

@EniEni123

Description

@EniEni123

Describe the bug

(crossposted from sunshine repo, as i think it's likely it's a client issue)
setup: linux mint cinammon x11 laptop (gtx 1650 gpu, intel 11th gen cpu with integrated gpu too, host, sunshine), samsung tab s11 ultra (MediaTek Dimensity 9400+ chipset, a 3nm octa-core processor, client with moonlight/artemis), ethernet connection on very fast network (100+ mbps download, 20+ upload, maybe 30 or so)
video preview of the issue in both moonlight and artemis fork: (in screenshots slot)
the first video is on moonlight, the 2nd is on artemis. i also tried showing in the video how moving my touchpad mouse (on the host) while the stuttering is happening is smooth, meaning the stutter seems to be an input stutter from the client, not dropped frames or streaming stutter. the artemis video also shows a performance overlay, if that helps.
it seems to happen after a few seconds of drawing, then stops, then after a few seconds it starts again (but is not at exact intervals). sometimes it's more frequent, sometimes it isn't. usually starts with few stutters then progressively gets worse i believe.
here's also a video showing an nvidia-smi dmon terminal to show my performance (Nvidia NVENC with NvFBC):

(it failed to upload to github for some reason, here it is on imgur: (in the screenshots spot))

at this point i believe it's a bug. i would appreciate suggestions, though I'm not hopeful i could fix it from my side at this point. i hope this is fixed since sunshine and artemis are the closest we have on linux to something like superdisplay for drawing with an android tablet.

(note: touch input is smooth and does not have this issue. only stylus input does. im using the prepackaged samsung s pen (the new version without bluetooth.))

Steps to reproduce

android s11 tab ultra, draw with stylus. i have no other devices with styluses to test it with so idk if it's just my tablet specifically.

Affected games

TVPaint and Krita, presumably all drawing apps.

Other Moonlight clients

None

Moonlight adjusted settings

Yes

Moonlight adjusted settings (please complete the following information)

i have spent over a week tinkering and trying to fix it. some (but not all, too many to list and i forget a lot) things i have tried:
-creating a virtual display with the same framerate and resolution as the tablet
-lowering and increasing bitrate
-changing minimum target framerate in sunshine UI
-using nvidia gtx 1650 gpu exclusively and intel integrated GPU exclusively and using them together (nvidia on-demand)
-tried all codecs
-tried all capture methods and encoders (Nvidia with NvFBC, KMS, x11 (wlroots does not work), software encoding and va-api)
-turning off any power saving feature on my android tablet
-setting my tablet's refresh rate (in it's settings, not in moonlight only) down to 60hz instead of the default 120hz (didn't help at all)
-changing mint's desktop environment (Cinammon by default, tried KDE, same issue)
-changing frame pacing settings
-changing video resolution and frame rate both high, low and matching
-turning off touch and only keeping stylus input
-multiple drawing software
-toggling "high resolution scrolling support" and "native pen and touch support"
-trying an artemis fork specifically designed to help with mediatek devices' decoding speed (no effect on the issue)
-sunshine appimage and .deb
-changing nvidia driver (570 and 580 both have this issue)
etc

Moonlight default settings

Yes

Gamepad-related connection issue

No

Gamepad-related input issue

Yes

Gamepad-related streaming issue

Yes

Android version

Android 16

Device model

Samsung tab s11 ultra

Server PC OS version

Linux mint 22.3

Server PC GeForce Experience version

No response

Server PC Nvidia GPU driver version

Nvidia open 590

Server PC antivirus and firewall software

No response

Screenshots

https://github.com/user-attachments/assets/42cc0be4-3b43-4a5d-a723-3b173ef1c43f
https://github.com/user-attachments/assets/a62cc6fd-1190-4c76-9db6-9885eae40802
https://imgur.com/a/XGgg9lZ
(excuse the bad drawing, i was drawing as fast as possible to show off the issue quickly)

Relevant log output

the entire log: (idk what is considered relevant)

[2026-03-12 23:55:34.003]: Info: Sunshine version: 2025.924.154138 commit: 86188d47a7463b0f73b35de18a628353adeaa20e
[2026-03-12 23:55:34.004]: Info: Package Publisher: LizardByte
[2026-03-12 23:55:34.004]: Info: Publisher Website: https://app.lizardbyte.dev
[2026-03-12 23:55:34.004]: Info: Get support: https://app.lizardbyte.dev/support
[2026-03-12 23:55:34.004]: Info: config: 'address_family' = both
[2026-03-12 23:55:34.004]: Info: config: 'capture' = nvfbc
[2026-03-12 23:55:34.004]: Info: config: 'stream_audio' = disabled
[2026-03-12 23:55:34.004]: Info: config: 'encoder' = nvenc
[2026-03-12 23:55:34.004]: Info: config: 'fec_percentage' = 0
[2026-03-12 23:55:34.004]: Info: config: 'nvenc_twopass' = disabled
[2026-03-12 23:55:34.004]: Info: config: 'min_threads' = 4
[2026-03-12 23:55:34.004]: Info: config: 'minimum_fps_target' = 60
[2026-03-12 23:55:34.004]: Info: config: 'output_name' = 0
[2026-03-12 23:55:34.220]: Info: Found [1] outputs
[2026-03-12 23:55:34.220]: Info: Virtual Desktop: 1920x1080
[2026-03-12 23:55:34.220]: Info: XrandR: available
[2026-03-12 23:55:34.220]: Info: -- Output --
[2026-03-12 23:55:34.220]: Info:   Resolution: 1920x1080
[2026-03-12 23:55:34.220]: Info:   Offset: 0x0
[2026-03-12 23:55:34.248]: Error: Couldn't release NvFBC context from current thread: 
[2026-03-12 23:55:34.255]: Info: Trying encoder [nvenc]
[2026-03-12 23:55:34.255]: Info: Screencasting with NvFBC
[2026-03-12 23:55:34.354]: Info: Creating encoder [h264_nvenc]
[2026-03-12 23:55:34.354]: Info: Color coding: SDR (Rec. 601)
[2026-03-12 23:55:34.354]: Info: Color depth: 8-bit
[2026-03-12 23:55:34.354]: Info: Color range: JPEG
[2026-03-12 23:55:34.474]: Info: Streaming bitrate is 1000000
[2026-03-12 23:55:34.481]: Warning: [h264_nvenc @ 0x64656ad91f00] Multiple reference frames are not supported by the device
[2026-03-12 23:55:34.482]: Error: [h264_nvenc @ 0x64656ad91f00] Provided device doesn't support required NVENC features
[2026-03-12 23:55:34.815]: Error: Could not open codec [h264_nvenc]: Function not implemented
[2026-03-12 23:55:34.815]: Info: Creating encoder [h264_nvenc]
[2026-03-12 23:55:34.815]: Info: Color coding: SDR (Rec. 601)
[2026-03-12 23:55:34.815]: Info: Color depth: 8-bit
[2026-03-12 23:55:34.815]: Info: Color range: JPEG
[2026-03-12 23:55:34.933]: Info: Streaming bitrate is 1000000
[2026-03-12 23:55:35.196]: Info: Creating encoder [hevc_nvenc]
[2026-03-12 23:55:35.197]: Info: Color coding: SDR (Rec. 601)
[2026-03-12 23:55:35.197]: Info: Color depth: 8-bit
[2026-03-12 23:55:35.197]: Info: Color range: JPEG
[2026-03-12 23:55:35.197]: Info: Streaming bitrate is 1000000
[2026-03-12 23:55:35.202]: Warning: [hevc_nvenc @ 0x64656ad91f00] Multiple reference frames are not supported by the device
[2026-03-12 23:55:35.202]: Error: [hevc_nvenc @ 0x64656ad91f00] Provided device doesn't support required NVENC features
[2026-03-12 23:55:35.453]: Error: Could not open codec [hevc_nvenc]: Function not implemented
[2026-03-12 23:55:35.453]: Info: Creating encoder [hevc_nvenc]
[2026-03-12 23:55:35.453]: Info: Color coding: SDR (Rec. 601)
[2026-03-12 23:55:35.453]: Info: Color depth: 8-bit
[2026-03-12 23:55:35.453]: Info: Color range: JPEG
[2026-03-12 23:55:35.453]: Info: Streaming bitrate is 1000000
[2026-03-12 23:55:35.714]: Info: Creating encoder [av1_nvenc]
[2026-03-12 23:55:35.714]: Info: Color coding: SDR (Rec. 601)
[2026-03-12 23:55:35.714]: Info: Color depth: 8-bit
[2026-03-12 23:55:35.714]: Info: Color range: JPEG
[2026-03-12 23:55:35.714]: Info: Streaming bitrate is 1000000
[2026-03-12 23:55:35.720]: Warning: [av1_nvenc @ 0x64656ad91f00] Codec not supported
[2026-03-12 23:55:35.720]: Error: [av1_nvenc @ 0x64656ad91f00] Provided device doesn't support required NVENC features
[2026-03-12 23:55:35.970]: Error: Could not open codec [av1_nvenc]: Function not implemented
[2026-03-12 23:55:35.970]: Info: Creating encoder [av1_nvenc]
[2026-03-12 23:55:35.970]: Info: Color coding: SDR (Rec. 601)
[2026-03-12 23:55:35.970]: Info: Color depth: 8-bit
[2026-03-12 23:55:35.970]: Info: Color range: JPEG
[2026-03-12 23:55:35.970]: Info: Streaming bitrate is 1000000
[2026-03-12 23:55:35.976]: Warning: [av1_nvenc @ 0x64656ad91f00] Codec not supported
[2026-03-12 23:55:35.976]: Error: [av1_nvenc @ 0x64656ad91f00] Provided device doesn't support required NVENC features
[2026-03-12 23:55:36.227]: Error: Could not open codec [av1_nvenc]: Function not implemented
[2026-03-12 23:55:36.251]: Error: Couldn't release NvFBC context from current thread: 
[2026-03-12 23:55:36.251]: Info: Screencasting with NvFBC
[2026-03-12 23:55:36.344]: Info: Creating encoder [hevc_nvenc]
[2026-03-12 23:55:36.344]: Info: Color coding: SDR (Rec. 709)
[2026-03-12 23:55:36.344]: Info: Color depth: 10-bit
[2026-03-12 23:55:36.344]: Info: Color range: JPEG
[2026-03-12 23:55:36.344]: Info: Streaming bitrate is 1000000
[2026-03-12 23:55:36.360]: Error: cuda::cuda_t doesn't support any format other than AV_PIX_FMT_NV12
[2026-03-12 23:55:36.631]: Error: Couldn't release NvFBC context from current thread: 
[2026-03-12 23:55:36.631]: Info: // Testing for available encoders, this may generate errors. You can safely ignore those errors. //
[2026-03-12 23:55:36.631]: Info: 
[2026-03-12 23:55:36.631]: Info: // Ignore any errors mentioned above, they are not relevant. //
[2026-03-12 23:55:36.631]: Info: 
[2026-03-12 23:55:36.631]: Info: Found H.264 encoder: h264_nvenc [nvenc]
[2026-03-12 23:55:36.631]: Info: Found HEVC encoder: hevc_nvenc [nvenc]
[2026-03-12 23:55:36.632]: Info: Starting system tray
[2026-03-12 23:55:36.633]: Info: Adding avahi service msz53-IdeaPad-Gaming-3-15IHU6
[2026-03-12 23:55:36.636]: Info: Configuration UI available at [https://localhost:47990]
[2026-03-12 23:55:36.654]: Info: System tray created
[2026-03-12 23:55:36.655]: Info: Starting main loop
[2026-03-12 23:55:37.572]: Info: Avahi service msz53-IdeaPad-Gaming-3-15IHU6 successfully established.
[2026-03-12 23:55:37.629]: Info: Web UI: [127.0.0.1] -- not authorized
[2026-03-12 23:55:40.321]: Info: Trying encoder [nvenc]
[2026-03-12 23:55:40.321]: Info: Screencasting with NvFBC
[2026-03-12 23:55:40.453]: Info: Creating encoder [h264_nvenc]
[2026-03-12 23:55:40.453]: Info: Color coding: SDR (Rec. 601)
[2026-03-12 23:55:40.454]: Info: Color depth: 8-bit
[2026-03-12 23:55:40.454]: Info: Color range: JPEG
[2026-03-12 23:55:40.454]: Info: Streaming bitrate is 1000000
[2026-03-12 23:55:40.462]: Warning: [h264_nvenc @ 0x79538046e6c0] Multiple reference frames are not supported by the device
[2026-03-12 23:55:40.462]: Error: [h264_nvenc @ 0x79538046e6c0] Provided device doesn't support required NVENC features
[2026-03-12 23:55:40.713]: Error: Could not open codec [h264_nvenc]: Function not implemented
[2026-03-12 23:55:40.713]: Info: Creating encoder [h264_nvenc]
[2026-03-12 23:55:40.713]: Info: Color coding: SDR (Rec. 601)
[2026-03-12 23:55:40.713]: Info: Color depth: 8-bit
[2026-03-12 23:55:40.713]: Info: Color range: JPEG
[2026-03-12 23:55:40.713]: Info: Streaming bitrate is 1000000
[2026-03-12 23:55:40.975]: Info: Creating encoder [hevc_nvenc]
[2026-03-12 23:55:40.975]: Info: Color coding: SDR (Rec. 601)
[2026-03-12 23:55:40.975]: Info: Color depth: 8-bit
[2026-03-12 23:55:40.975]: Info: Color range: JPEG
[2026-03-12 23:55:40.975]: Info: Streaming bitrate is 1000000
[2026-03-12 23:55:40.981]: Warning: [hevc_nvenc @ 0x79538046e6c0] Multiple reference frames are not supported by the device
[2026-03-12 23:55:40.981]: Error: [hevc_nvenc @ 0x79538046e6c0] Provided device doesn't support required NVENC features
[2026-03-12 23:55:41.232]: Error: Could not open codec [hevc_nvenc]: Function not implemented
[2026-03-12 23:55:41.232]: Info: Creating encoder [hevc_nvenc]
[2026-03-12 23:55:41.232]: Info: Color coding: SDR (Rec. 601)
[2026-03-12 23:55:41.232]: Info: Color depth: 8-bit
[2026-03-12 23:55:41.232]: Info: Color range: JPEG
[2026-03-12 23:55:41.232]: Info: Streaming bitrate is 1000000
[2026-03-12 23:55:41.494]: Info: Creating encoder [av1_nvenc]
[2026-03-12 23:55:41.494]: Info: Color coding: SDR (Rec. 601)
[2026-03-12 23:55:41.494]: Info: Color depth: 8-bit
[2026-03-12 23:55:41.494]: Info: Color range: JPEG
[2026-03-12 23:55:41.494]: Info: Streaming bitrate is 1000000
[2026-03-12 23:55:41.503]: Warning: [av1_nvenc @ 0x79538046e6c0] Codec not supported
[2026-03-12 23:55:41.503]: Error: [av1_nvenc @ 0x79538046e6c0] Provided device doesn't support required NVENC features
[2026-03-12 23:55:41.754]: Error: Could not open codec [av1_nvenc]: Function not implemented
[2026-03-12 23:55:41.754]: Info: Creating encoder [av1_nvenc]
[2026-03-12 23:55:41.754]: Info: Color coding: SDR (Rec. 601)
[2026-03-12 23:55:41.754]: Info: Color depth: 8-bit
[2026-03-12 23:55:41.754]: Info: Color range: JPEG
[2026-03-12 23:55:41.754]: Info: Streaming bitrate is 1000000
[2026-03-12 23:55:41.760]: Warning: [av1_nvenc @ 0x79538046e6c0] Codec not supported
[2026-03-12 23:55:41.760]: Error: [av1_nvenc @ 0x79538046e6c0] Provided device doesn't support required NVENC features
[2026-03-12 23:55:42.011]: Error: Could not open codec [av1_nvenc]: Function not implemented
[2026-03-12 23:55:42.036]: Error: Couldn't release NvFBC context from current thread: 
[2026-03-12 23:55:42.036]: Info: Screencasting with NvFBC
[2026-03-12 23:55:42.137]: Info: Creating encoder [hevc_nvenc]
[2026-03-12 23:55:42.137]: Info: Color coding: SDR (Rec. 709)
[2026-03-12 23:55:42.137]: Info: Color depth: 10-bit
[2026-03-12 23:55:42.137]: Info: Color range: JPEG
[2026-03-12 23:55:42.138]: Info: Streaming bitrate is 1000000
[2026-03-12 23:55:42.154]: Error: cuda::cuda_t doesn't support any format other than AV_PIX_FMT_NV12
[2026-03-12 23:55:42.425]: Error: Couldn't release NvFBC context from current thread: 
[2026-03-12 23:55:42.425]: Info: // Testing for available encoders, this may generate errors. You can safely ignore those errors. //
[2026-03-12 23:55:42.425]: Info: 
[2026-03-12 23:55:42.425]: Info: // Ignore any errors mentioned above, they are not relevant. //
[2026-03-12 23:55:42.425]: Info: 
[2026-03-12 23:55:42.425]: Info: Found H.264 encoder: h264_nvenc [nvenc]
[2026-03-12 23:55:42.425]: Info: Found HEVC encoder: hevc_nvenc [nvenc]
[2026-03-12 23:55:42.425]: Info: Executing [Desktop]
[2026-03-12 23:55:42.545]: Info: New streaming session started [active sessions: 1]
[2026-03-12 23:55:42.574]: Info: CLIENT CONNECTED
[2026-03-12 23:55:42.751]: Info: Found [1] outputs
[2026-03-12 23:55:42.751]: Info: Virtual Desktop: 1920x1080
[2026-03-12 23:55:42.751]: Info: XrandR: available
[2026-03-12 23:55:42.751]: Info: -- Output --
[2026-03-12 23:55:42.751]: Info:   Resolution: 1920x1080
[2026-03-12 23:55:42.751]: Info:   Offset: 0x0
[2026-03-12 23:55:42.779]: Error: Couldn't release NvFBC context from current thread: 
[2026-03-12 23:55:42.779]: Info: Screencasting with NvFBC
[2026-03-12 23:55:42.885]: Info: Creating encoder [hevc_nvenc]
[2026-03-12 23:55:42.885]: Info: Color coding: SDR (Rec. 709)
[2026-03-12 23:55:42.885]: Info: Color depth: 8-bit
[2026-03-12 23:55:42.885]: Info: Color range: MPEG
[2026-03-12 23:55:42.886]: Info: Streaming bitrate is 14988000
[2026-03-12 23:55:42.913]: Info: Minimum FPS target set to ~30fps (33.3333ms)

Additional context

i believe it's an issue with how the clients send the stylus input data to the host, as touch input and other inputs are all smooth and don't have this issue. could be because of the high refresh rate of the stylus input, though im not a programmer.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions