Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compression artifacts forming when left on the same scene for a while #117

Open
Richleeson opened this issue Mar 19, 2024 · 28 comments
Open

Comments

@Richleeson
Copy link

Describe the bug
When the game is held on one scene for a while, e.g in a conversation with an NPC or just not panning then slowly compression artifacts start to take over certain models on the screen. They seem to target specific models while leaving other areas untouched. If i transition to a difference scene or pan the camera away from that area and then back to it, the issue dissappears but then comes back again after sometime.

This seems to happen at all resoltions and famerates. HDR on or off, 5.1 sound on or off, VRR on or off. No setting seems to stop it from happening.

Does no happen when using moonlight on the nvidia shield at the same settings.

To Reproduce
Happens on any game. Open the game and just wait without moving around. Slowly the compression artifacts take over certain models on the screen.

Expected behavior
Not applicable

Screenshots or Videos
20240319_132322
20240315_215822

** Logs **
I dont see any entry that only occurs while the issue is happening

Guest Information:

  • Xbox Model: [Xbox Series X]
  • TV Resolution: [2160p,4K,HDR]

Host Information

  • Operating System: [Windows 11]
  • Host Software: [Sunshine 0.22.2]
  • Monitor Resolutions [2160p,4K,HDR]
@harun911
Copy link

I can confirm, that I also have this issue.

@adonnnnn
Copy link

adonnnnn commented Apr 5, 2024

I'm having this issue as well

@TheElixZammuto
Copy link
Owner

Can you check which version of Moonlight UWP are you running on your Xbox?

@harun911
Copy link

harun911 commented Apr 6, 2024

Can you check which version of Moonlight UWP are you running on your Xbox?

I'm running version 1.15.7.70

@SteliosMoch
Copy link

SteliosMoch commented Apr 9, 2024

I can confirm this as well, i have the exact same issue. Using Version 1.16.1.

@harun911
Copy link

harun911 commented Apr 9, 2024

@TheElixZammuto Any idea what might be causing this?

@j-scrizz
Copy link

j-scrizz commented Apr 9, 2024

Can confirm, am now also getting this issue.

@hirakkopk
Copy link

It happens to me too. I've also noticed that it happens when you stay in the same image for a long time (Cutscenes for example). Sometimes it's unbearable with so many artifacts.

Disconnecting and going back sometimes solves it temporarily, but disconnecting and going back during the game causes me a lot of latency and causes frames to queue up.

@adonnnnn
Copy link

Turning on ycc422 in the display settings seems to solve this problem

@harun911
Copy link

Turning on ycc422 in the display settings seems to solve this problem

It didn't solve anything for me. Still getting rainbow artifacts.

@jmyoung
Copy link

jmyoung commented May 8, 2024

Confirmed, I have the same issue. Causing the screen areas involved to change drastically corrects the issue. Sometimes an area that 'drags down' leaves behind artifacted streaks.

This happens using H265. Not sure if it happens with x264. Didn't happen with an earlier version of the app, but I also can't confirm what version it started in.

@jmyoung
Copy link

jmyoung commented May 9, 2024

Turning on ycc422 in the display settings seems to solve this problem

No effect here. Also tried turning on/off HDR. Updated Sunshine to the latest version, no effect. When I reconfigured Sunshine to force HEVC off, and then set up Moonlight to use x264, black screen on startup. So it looks like Moonlight can only use HEVC.

The issue doesn't manifest immediately, it usually takes a few minutes, but once it's started happening, it keeps happening. Settings I'm using are;

4k resolution, 60Hz. 60M stream rate. No frame loss (wired both ends). Not using HDR. Sunshine configured with defaults. Moonlight configured with defaults, using HEVC through NVENC. Source is 4k60, XBox is set to 4k60, output display is also 4k60, no colorspace conversion going on. Console is a Series X.

Also confirmed that when artefacts appear, they do not appear on the original source, so they only appear on the Moonlight output. Interestingly, they 'drag' around when HUD elements move slightly, probably because of the spatial stuff in the codec I imagine. But anything that causes a major change to the screen causes the problem to vanish briefly before it returns.

EDIT: Issue happens when Moonlight is set to 4k or 1080. When it does happen, disconnecting and reconnecting stream sometimes fixes it for a while.

@Tyrielwood
Copy link

Tyrielwood commented Jun 10, 2024

I'm actually having the same issue since forever, but I didn't know how to explain it, but here we are.
I'm using the same settings

Guest Information:

Xbox Model: [Xbox Series X]
TV Resolution: [2160p,4K,HDR]
Host Information

Operating System: [Windows 11]
Host Software: [Sunshine 0.22.2]
Monitor Resolutions [2160p,4K,HDR]

And After a while it will take over the entire screen making it unusable. Weirdly enough I found it happening more often with more demanding games. Hell blade 2 in particular, during cutscenes. Just for info I'm using a 4090, so I don't think it's up to the headroom, but I noticed kicking it much later when at 1080 compared to 4k.

Disabling the HDR didn't help either.

PS: I'm noticing that it happens more often with unreal engine games.

@TheElixZammuto
Copy link
Owner

Hi everyone and sorry for the late response, to be fair I still wasn't be able to pinpoint the issue.

Does anything improve/changes if running this modified version of Sunshine? https://github.com/TheElixZammuto/Sunshine-1/actions/runs/9980350592

I also think the issue is only affecting Nvidia RTX 3xxx and 4xxx graphics card, am I right?

@harun911
Copy link

harun911 commented Jul 17, 2024

Hi everyone and sorry for the late response, to be fair I still wasn't be able to pinpoint the issue.

Does anything improve/changes if running this modified version of Sunshine? https://github.com/TheElixZammuto/Sunshine-1/actions/runs/9980350592

I also think the issue is only affecting Nvidia RTX 3xxx and 4xxx graphics card, am I right?

Would this point you in the right direction, what might be causing it?:
https://ideas.moonlight-stream.org/posts/187/enable-hevc-main10-for-sdr-content

And to answer your second question, I had colorbanding issues with my previous graphics card using your client aswell, my previous graphics card was Gigabyte GTX 1080 Ti

@Tyrielwood
Copy link

Hi everyone and sorry for the late response, to be fair I still wasn't be able to pinpoint the issue.

Does anything improve/changes if running this modified version of Sunshine? https://github.com/TheElixZammuto/Sunshine-1/actions/runs/9980350592

I also think the issue is only affecting Nvidia RTX 3xxx and 4xxx graphics card, am I right?

Reading the latest comments I tried to change the Color depth from 10bit to 8bit, and so far I wasn't able to reproduce the problem.
I'll keep you guys update if I get it again.

The setting would be in General --> TV & Display options --> Video Fidelity & overscan
It's not idea for picture quality, but at least it's possible to play more reliably, maybe it will help to pinpoint the issue!

@jmyoung
Copy link

jmyoung commented Jul 20, 2024

Does anything improve/changes if running this modified version of Sunshine? https://github.com/TheElixZammuto/Sunshine-1/actions/runs/9980350592

I also think the issue is only affecting Nvidia RTX 3xxx and 4xxx graphics card, am I right?

Thanks for the followup. I'll try that version for a few days and see what the result is. I do indeed have an RTX 3080 card.

@Tyrielwood
Copy link

Hi everyone and sorry for the late response, to be fair I still wasn't be able to pinpoint the issue.
Does anything improve/changes if running this modified version of Sunshine? https://github.com/TheElixZammuto/Sunshine-1/actions/runs/9980350592
I also think the issue is only affecting Nvidia RTX 3xxx and 4xxx graphics card, am I right?

Reading the latest comments I tried to change the Color depth from 10bit to 8bit, and so far I wasn't able to reproduce the problem. I'll keep you guys update if I get it again.

The setting would be in General --> TV & Display options --> Video Fidelity & overscan It's not idea for picture quality, but at least it's possible to play more reliably, maybe it will help to pinpoint the issue!

Update to this. It didn't solve the problem, but it made it less likely to happen at least,
Today it happened watching a YouTube video on the browser of all things... And a restart was needed to get back to normality

@BradyBrenot
Copy link
Contributor

BradyBrenot commented Aug 6, 2024

I'll note that I regularly use other Moonlight clients with HEVC enabled and this is the only one that exhibits this bug. I've spent hours streaming with an Nvidia Shield and a Pixel 6 Pro. I also use a Logitech G Cloud but I don't think I have HEVC on for that (no HDR capability).

I'm figuring out how to get this building locally so if I have time I can poke at this and the occasional crashes I'm getting.

Edit: Some testing: Sunshine logs are the same as those that show up when I use an Android client with HEVC and HDR enabled to stream (Color range is different but I changed that to match and saw no change.) Bug seems more likely to happen in HDR/4k/while a game is playing, doesn't seem to happen on the desktop at 1440.

BradyBrenot added a commit to BradyBrenot/moonlight-xbox that referenced this issue Aug 8, 2024
To mitigate TheElixZammuto#117 (Compression artifacts forming when left on the same scene for a while), request an IDR frame from the host every 1000 packets. This seems to reset the decoder well enough to completely avoid slow corruption problem, but shouldn't add too much extra bandwidth.

Unless I'm missing something, Sunshine never sends I or IDR frames after initially establishing the stream unless it's specifically asked to by the client.
@ryaneford
Copy link

Sorry just adding that this seems to still be an issue. Can you confirm this doesn't happen on dev mode or am I misremembering?

@harun911
Copy link

harun911 commented Sep 5, 2024

@TheElixZammuto Any chance of merging BradyBrenot's changes so we can just regular mainline sunshine?

@tcamargo
Copy link

tcamargo commented Sep 12, 2024

Hi @TheElixZammuto !

I'm able to quickly reproduce the problem in the opening sequence of God of War.

WhatsApp Image 2024-09-12 at 17 29 42_7364a775
Sorry for the poor picture.

Does anything improve/changes if running this modified version of Sunshine? https://github.com/TheElixZammuto/Sunshine-1/actions/runs/9980350592

I also think the issue is only affecting Nvidia RTX 3xxx and 4xxx graphics card, am I right?

That change seems to fix it!

Guest Information:
Xbox Model: [Xbox Series X]
TV Resolution: [2160p,4K,HDR]

Host Information
Operating System: [Windows 11]
Host Software: [Sunshine 0.23.1] and [0.0.0.3bf5fc8.dirty]
Monitor Resolutions [2160p,4K,HDR]

@Uberrr
Copy link

Uberrr commented Sep 15, 2024

When using this version of Sunshine, is it safe to update it? Or should I just keep it as is

@Lohengrim
Copy link

Hi everyone and sorry for the late response, to be fair I still wasn't be able to pinpoint the issue.

Does anything improve/changes if running this modified version of Sunshine? https://github.com/TheElixZammuto/Sunshine-1/actions/runs/9980350592

I also think the issue is only affecting Nvidia RTX 3xxx and 4xxx graphics card, am I right?

AMD 6750 XT here and same artifacts if the image is static for some time.
I'm yet to check that modified sunshine ver.

@bytehow
Copy link

bytehow commented Sep 24, 2024

@TheElixZammuto

Does anything improve/changes if running this modified version of Sunshine? https://github.com/TheElixZammuto/Sunshine-1/actions/runs/9980350592

I also think the issue is only affecting Nvidia RTX 3xxx and 4xxx graphics card, am I right?

After running this build for about 2.5 hours, I didn't experience a single artifact!! I think this fixed it for me :)

Guest Information
Xbox Model: [Xbox Series X]
TV Resolution: [2160p,4K,HDR]
Code: HEVC
Bitrate: Maxed out on the bit rate slider
Framerate: 120 fps

Host Information
Operating System: [Windows 11]
Host Software: [0.0.0.3bf5fc8.dirty]
Monitor Resolutions [2160p,4K,HDR]
GPU: NVidia 3080 Ti FE

Both console and host are hardwired over GbE

@SteliosMoch
Copy link

Will this fix be implemented on the official version of sunshine?

@theBeaz
Copy link

theBeaz commented Oct 12, 2024

Just checking in to say that this is the same visual artifacting I saw when I reported this a long time ago: #89

I swear this had been working perfectly for a while... just came back to stream Diablo 4 and the issue pops up extremely quickly. Doesn't happen with any other Moonlight client.

@theBeaz
Copy link

theBeaz commented Oct 12, 2024

Hi everyone and sorry for the late response, to be fair I still wasn't be able to pinpoint the issue.

Does anything improve/changes if running this modified version of Sunshine? https://github.com/TheElixZammuto/Sunshine-1/actions/runs/9980350592

I also think the issue is only affecting Nvidia RTX 3xxx and 4xxx graphics card, am I right?

I believe something is broken with this? Looks like it is failing to build.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests