Sunshine icon indicating copy to clipboard operation
Sunshine copied to clipboard

Poor Stream Quality on M1 Mac

Open FlyGuyGo opened this issue 1 year ago • 3 comments

Is there an existing issue for this?

  • [X] I have searched the existing issues

Is your issue described in the documentation?

  • [X] I have read the documentation

Is your issue present in the nightly release?

  • [X] This issue is present in the nightly release

Describe the Bug

When hosting a stream using an M1 Mac through Sunshine, I've noticed sub-optimal streaming quality despite setting Moonlight to 4k and using ethernet. When compared side-by-side with Parsec's output, Sunshine's stream lacks the sharpness compared to Parsec. Below I have attached a comparison with Parsec on the top and Sunshine/Moonlight on the bottom. Observe difference of clarity in text on the date and time. Example

Expected Behavior

Streaming through Sunshine should a sharp 1080p image especially when there is no motion on the screen, Moonlight is set to 1080p and ethernet is being used.

Additional Context

I have tried numerous different adjustments to the config settings but the issue persists. It also does not appear that HEVC is functioning with Sunshine so perhaps that could be a potential cause?

Host Operating System

macOS

Operating System Version

macOS Sonoma 14.1

Architecture

arm

Sunshine commit or version

0.21.0

Package

macOS - Portfile

GPU Type

Apple

GPU Model

M1 GPU

GPU Driver/Mesa Version

Metal 3

Capture Method (Linux Only)

N/A

Config

resolutions = [
    1920x1080
]
fps = [30,60,90,120]
encoder = videotoolbox
hevc_mode = 0 (Options 3 and 4 do not seem to activate HEVC as far as I can tell)
av1_mode = 1
vt_software = disabled

Apps

N/A

Relevant log output

[vt_software] -- [disabled]
[av1_mode] -- [1]
[hevc_mode] -- [0]
[encoder] -- [videotoolbox]
[fps] -- [[30,60,90,120]]
[resolutions] -- [[
    1920x1080
]]
[2023:11:01:02:15:35]: Info: Sunshine version: 0.21.0
[2023:11:01:02:15:35]: Info: Trying encoder [videotoolbox]
[2023:11:01:02:15:35]: Info: SDR color coding [Rec. 601]
[2023:11:01:02:15:35]: Info: Color depth: 8-bit
[2023:11:01:02:15:35]: Info: Color range: [JPEG]
[2023:11:01:02:15:35]: Warning: [h264_videotoolbox @ 0x12f707110] PrioritizeEncodingSpeedOverQuality property is not supported on this device. Ignoring.
[2023:11:01:02:15:35]: Info: [h264_videotoolbox @ 0x12f707110] This device does not support the AllowOpenGop option. Value ignored.
[2023:11:01:02:15:35]: Info: SDR color coding [Rec. 601]
[2023:11:01:02:15:35]: Info: Color depth: 8-bit
[2023:11:01:02:15:35]: Info: Color range: [JPEG]
[2023:11:01:02:15:35]: Info: SDR color coding [Rec. 709]
[2023:11:01:02:15:35]: Info: Color depth: 10-bit
[2023:11:01:02:15:35]: Info: Color range: [JPEG]
[2023:11:01:02:15:35]: Info: // Testing for available encoders, this may generate errors. You can safely ignore those errors. //
[2023:11:01:02:15:35]: Info: 
[2023:11:01:02:15:35]: Info: // Ignore any errors mentioned above, they are not relevant. //
[2023:11:01:02:15:35]: Info: 
[2023:11:01:02:15:35]: Info: Found H.264 encoder: h264_videotoolbox [videotoolbox]
[2023:11:01:02:15:35]: Info: Found HEVC encoder: hevc_videotoolbox [videotoolbox]
[2023:11:01:02:15:35]: Info: Configuration UI available at [https://localhost:47990]
dbus[952]: Dynamic session lookup supported but failed: launchd did not provide a socket path, verify that org.freedesktop.dbus-session.plist is loaded!
[2023:11:01:02:15:35]: Error: Failed to create client: Memory exhausted

(The dbus error did not used to appear but even then I was still experiencing this issue.)

FlyGuyGo avatar Nov 01 '23 06:11 FlyGuyGo

@FlyGuyGo i had this issue, but with a slightly different setup (windows host streaming to a m1 mac client, with the rendered video on the client being slightly blurry) — are your resolutions matching exactly between the host and client? making sure both were the same fixed the blurriness for me

onelightinthedark avatar Dec 07 '23 19:12 onelightinthedark

@FlyGuyGo i had this issue, but with a slightly different setup (windows host streaming to a m1 mac client, with the rendered video on the client being slightly blurry) — are your resolutions matching exactly between the host and client? making sure both were the same fixed the blurriness for me

To add on to this, if its a retina display the screen size is 2x the resolution listed in display settings

pearagit avatar Dec 26 '23 04:12 pearagit

It seems this issue hasn't had any activity in the past 90 days. If it's still something you'd like addressed, please let us know by leaving a comment. Otherwise, to help keep our backlog tidy, we'll be closing this issue in 10 days. Thanks!

LizardByte-bot avatar Mar 25 '24 10:03 LizardByte-bot

This issue was closed because it has been stalled for 10 days with no activity.

LizardByte-bot avatar Apr 05 '24 10:04 LizardByte-bot