loki-47-6F-64 / sunshine

Host for Moonlight Streaming Client
GNU General Public License v3.0
1.77k stars 152 forks source link

Sunshine exiting with Error "Debug: Source format [DXGI_FORMAT_B8G8R8A8_UNORM]" #24

Open Spamm00r opened 4 years ago

Spamm00r commented 4 years ago

Hi,

sunshine gives this error and closes immediately when trying to run on Intel(R) HD Graphics 630:

`C:\Temp\MediCenter\Sunshine.Stream>sunshine.exe sunshine.conf [min_log_level] -- [verbose] [sunshine_name] -- Sunshine: Warning: Couldn't setup connection to ViGEm for gamepad support [E0000001]

Device Description : Intel(R) HD Graphics 630 Device Vendor ID : 0x00008086 Device Device ID : 0x00005912 Device Video Mem : 128 MiB Device Sys Mem : 0 MiB Share Sys Mem : 8118 MiB Feature Level : 0x0000C100 Capture size : 1920x1080 2020:05:05:07:11:45: Debug: Source format [DXGI_FORMAT_B8G8R8A8_UNORM]`

If a GTX GPU is present, it runs just fine though.

A few days ago, sunshine also ran fine on the Intel(R) HD Graphics 630 only, but now it gives this error and wont start.

What is causing sunshine not to start on Intel(R) HD Graphics 630 anymore?

loki-47-6F-64 commented 4 years ago

If you run sunshine with the following:

sunshine.exe sunshine.conf encoder=software

Does it still crash?

Spamm00r commented 4 years ago

No!

With that switch it start using:

ing cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2 2020:05:05:12:45:41: Debug: Source format [DXGI_FORMAT_B8G8R8A8_UNORM] [libx264 @ 0000000008a1b400] profile High, level 4.2, 4:2:0, 8-bit [libx264 @ 0000000008a1b400] frame I:1 Avg QP: 6.04 size: 1188 [libx264 @ 0000000008a1b400] mb I I16..4: 100.0% 0.0% 0.0% [libx264 @ 0000000008a1b400] 8x8 transform intra:0.0% [libx264 @ 0000000008a1b400] coded y,uvDC,uvAC intra: 0.0% 0.0% 0.0% [libx264 @ 0000000008a1b400] i16 v,h,dc,p: 99% 0% 1% 0% [libx264 @ 0000000008a1b400] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 0% 0% 100% 0% 0% 0% 0% 0% 0% [libx264 @ 0000000008a1b400] i8c dc,h,v,p: 100% 0% 0% 0% [libx264 @ 0000000008a1b400] kb/s:570.24

Device Description : Intel(R) HD Graphics 630 Device Vendor ID : 0x00008086 Device Device ID : 0x00005912 Device Video Mem : 128 MiB Device Sys Mem : 0 MiB Share Sys Mem : 8118 MiB Feature Level : 0x0000C100 Capture size : 1920x1080 x[22020:05:05:12:45:41]: Debug: Source format [DXGI_FORMAT_B8G8R8A8_UNORM]6 4 [error]: high profile doesn't support a bit depth of 10 [libx264 @ 0000000008a1b400] Error setting profile high. [libx264 @ 0000000008a1b400] Possible profiles: baseline main high high10 high422 high444 2020:05:05:12:45:41: Error: Could not send a frame for encoding: Invalid argument 2020:05:05:12:45:41: Info: Found encoder software: [libx264]

Spamm00r commented 4 years ago

WHy is this error occuring and why is it not using hardware accelerated Intel Quick Sync?

loki-47-6F-64 commented 4 years ago

Sunshine only support NVidia Encoder and software encoding.

I would need to do some testing to see where it goes wrong precisely, however I suspect it has something to do with the following:

It sees that NVidia drivers are installed, it proceeds to attempt to use them, however, since no NVidia card is available, Sunshine crashes.

When you set the encoder to software, it skips testing for nvenc, which is why it doesn't crash. The only encoders supported are "software" and "nvenc"

Any encoder needs different parameters to function correctly. Which is why any encoder needs to be explicitly supported by Sunshine before it works.

Spamm00r commented 4 years ago

OK. makes sense.

I just disabled the Nvidia GPU to test how it performs with internal GPU only.

This time it gave that error.

But I'm sure, that I tested it the same way some days before and sunshine started on software without any issues, eventhough NVIDIA drivers were present but the Device disabled. Sunshine just used libx264 instead.

loki-47-6F-64 commented 4 years ago

Did you make any changes to either Sunshine or the system? (Such as updating Sunshine?)

Spamm00r commented 4 years ago

No. I build it once maybe an week ago. And then didn't touch it.

loki-47-6F-64 commented 4 years ago

Sunshine doesn't store any state other than what devices are paired.

If something's different from the last time it was run with that particular setup, then it is not likely to be Sunshine.

It's definitely a bug if it crashes, though.