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

WPF not working on Intel Iris graphics card #31

Closed
Melo-Professional opened this issue Nov 30, 2022 · 20 comments
Closed

WPF not working on Intel Iris graphics card #31

Melo-Professional opened this issue Nov 30, 2022 · 20 comments
Labels
bug Something isn't working Internal bug Related to used framework, user's OS or hardware

Comments

@Melo-Professional
Copy link

Melo-Professional commented Nov 30, 2022

I'll be posting here as reference and information to whom is facing issues trying to open VMFOSD Voicemeeter Fancy OSD.
It seems WPF (which VMFOSD relies on) using DirectX9 cannot run applications using new generations (11th / 12th gen) of Intel processors with Iris GPU (which does not support DX9 natively).
When you try to open VMFOSD through Intel GPU nothing happens.

Here are some usefull information about:
https://community.intel.com/t5/Graphics/3D-rendering-issue-on-12th-gen-Intel-Core-i3/m-p/1407118/highlight/true#M109118
https://community.intel.com/t5/Graphics/Graphics-failure-with-WPF-3D-content-and-Iris-XE/td-p/1415196
microsoft/D3D9On12#52
dotnet/wpf#7076

@A-tG
Copy link
Owner

A-tG commented Nov 30, 2022

Does program not starting at all? Or it just UI is not displayed? If program is able to run I suggest to change RenderMode = Default to RenderMode = SoftwareOnly under [Program] section in
PROGRAM_FOLDER/config/config.ini

@Melo-Professional
Copy link
Author

Does program not starting at all? Or it just UI is not displayed? If program is able to run I suggest to change RenderMode = Default to RenderMode = SoftwareOnly under [Program] section in PROGRAM_FOLDER/config/config.ini

It doesn't start. It just gets killed. Even using RenderMode to SoftwareOnly.

@A-tG
Copy link
Owner

A-tG commented Dec 1, 2022

Try to disable hardware acceleration globally https://learn.microsoft.com/en-us/dotnet/desktop/wpf/graphics-multimedia/graphics-rendering-registry-settings?view=netframeworkdesktop-4.8#disable-hardware-acceleration-option
The problem is that the RenderMode is changed at runtime. If It doesn't even start I'm not sure If I can make any workarounds. If disabling hardware acceleration helps, then maybe I can make the program use SoftwareOnly in the beginning of runtime and then switch to correct mode according to config.
Have you tried both VoicemeeterFancyOsd.exe and VoicemeeterFancyOsdHost.exe?

@Melo-Professional
Copy link
Author

Try to disable hardware acceleration globally https://learn.microsoft.com/en-us/dotnet/desktop/wpf/graphics-multimedia/graphics-rendering-registry-settings?view=netframeworkdesktop-4.8#disable-hardware-acceleration-option The problem is that the RenderMode is changed at runtime. If It doesn't even start I'm not sure If I can make any workarounds. If disabling hardware acceleration helps, then maybe I can make the program use SoftwareOnly in the beginning of runtime and then switch to correct mode according to config. Have you tried both VoicemeeterFancyOsd.exe and VoicemeeterFancyOsdHost.exe?

I did try the register to disable hardware acceleration. Doesn't work.
I have tried both .exe... still nothing.

It only works IF I do this:
1 - Windows Settings / System / Display / Graphics / add VoicemeeterFancyOsd.exe and VoicemeeterFancyOsdHost.exe to use NVIDIA RTX 3050;
2 - Windows Settings / System / Display / disable the notebook internal display (which is handled by Intel Iris);
3 - Windows Settings / System / Display / use external display from HDMI port (which uses NVIDIA RTX 3050).

But I need both display monitors for my daily use...

@Melo-Professional
Copy link
Author

Maybe you could try this at code level:
https://community.intel.com/t5/Graphics/Graphics-failure-with-WPF-3D-content-and-Iris-XE/m-p/1417581/highlight/true#M110056

"...
Until a permanent solution from Intel or Microsoft arrives, I can suggest the following workarounds:

Solution in code:
Enter the following setting in the xaml code of your Window:
RenderOptions.EdgeMode="Aliased"
..."

I have try the others suggestions from there.

@Melo-Professional
Copy link
Author

@A-tG
Copy link
Owner

A-tG commented Dec 1, 2022

VoicemeeterFancyOsd-x64-1.0.0.2 iGPU-workaround.zip
This is version with "Aliased" EdgeMode. If it works I will need to implement option in main branch.

@Melo-Professional
Copy link
Author

Melo-Professional commented Dec 1, 2022

VoicemeeterFancyOsd-x64-1.0.0.2 iGPU-workaround.zip This is version with "Aliased" option. If it works I will need to implement option in main branch.

Didn't work....
I'd trying both .exe, try change config rendermode to softwareonly, even try to turn off windows defender.
Still nothing...
Anyway, thanks for that, I really,really appreciate it.

@A-tG A-tG added bug Something isn't working Internal bug Related to used framework, user's OS or hardware labels Dec 1, 2022
@A-tG
Copy link
Owner

A-tG commented Dec 3, 2022

This version should display several dialogs windows while program initialization:

@Melo-Professional
Copy link
Author

Hey buddy, thanks for keep trying.
Running this version, this is what I got:

Program start
WPF thread start
WPF startup

After that, the program is killed, vanished, disapears.

@A-tG
Copy link
Owner

A-tG commented Dec 3, 2022

VoicemeeterFancyOsd-x64-1.0.0.2 DEBUG2.zip
There a gonna be other dialogs now. Try to check both normal exe and *Host.exe

@Melo-Professional
Copy link
Author

VoicemeeterFancyOsd-x64-1.0.0.2 DEBUG2.zip There a gonna be other dialogs now. Try to check both normal exe and *Host.exe

This is what I got:
WPF startup
DPI helper init
Tray icon init

And it's gone.
Did try both exe files as usual.

@A-tG
Copy link
Owner

A-tG commented Dec 3, 2022

This is very unexpected. If there is problem with Tray Icon it will be hard to fix because it relies on 3rd party dll.
VoicemeeterFancyOsd-x64-1.0.0.2 DEBUG3.zip
Try this, most likely there will be no tray icon and you will need to kill the program manually

@Melo-Professional
Copy link
Author

This is very unexpected. If there is problem with Tray Icon it will be hard to fix because it relies on 3rd party dll. VoicemeeterFancyOsd-x64-1.0.0.2 DEBUG3.zip Try this, most likely there will be no tray icon and you will need to kill the program manually

Cool.
Yep, no trayicon.
I didn't need to force close the program from Task Manager.

This is what appears:
Tray icon init
TrayIcon InitializeComponent

and the process is over.

@A-tG
Copy link
Owner

A-tG commented Dec 7, 2022

The best way now is to debug the program yourself. I'm sure that something broken in "Hardcodet NotifyIcon" - the library I use to manage tray icon and it's context menu. This way at least there will be more info in Visual Studio why program is crashing and I will be able to report it to the library's developers.

Another way: is to check other apps that are using same library, write hardware specs and the OS version - report bug with less useful info.

@A-tG
Copy link
Owner

A-tG commented Dec 7, 2022

VoicemeeterFancyOsd-x64-1.0.0.2 replaced tray lib.zip
I found replacement for Tray icon library, check if this version working.

@Melo-Professional
Copy link
Author

VoicemeeterFancyOsd-x64-1.0.0.2 replaced tray lib.zip I found replacement for Tray icon library, check if this version working.

Sorry for late response.
I did run this one, both .exe, nothing shows, nothing seems to happen...
Thanks for keep trying, you are great!

@Squall-Leonhart
Copy link

use the Arc/Iris Xe driver instead of the DCH driver.

@GottZ
Copy link

GottZ commented Apr 26, 2023

can't reproduce. it works fine for me out of the box. i5-1135G7 here.

@Melo-Professional
Copy link
Author

Hey @A-tG is working now with current version. Also I did what you say here: #34 (comment)
I'm very happy to be able to use it again, after so many months!
Thanks dude

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working Internal bug Related to used framework, user's OS or hardware
Projects
None yet
Development

No branches or pull requests

4 participants