Falcosc / enable-loudness-equalisation

automatically adds and enables loudness equalisation to any playback device
GNU General Public License v3.0
43 stars 9 forks source link

Enhancements available in win10 but not 11 #13

Closed ethano8225 closed 10 months ago

ethano8225 commented 11 months ago

Hello, previously I was able to use loudness EQ in the enhancements tab like normal (shown here, win 10). When using the headset on win11, seemingly using the same 'default drivers' (although they are updated, win10 shown above, vs win11 here) it gives me no enhancements tab. I can manually add the registry strings (the main 3 and the hex/binary to enable loudness EQ) which shows the enhancements tab, just with no options underneath. i dont know why Gdrive detects reg folders as audio, but here is my Win10 Render folder, I went through and found both of the hyperX 'folders' here Here is my win11 Render folder, and you can find both the hyperx folders AND 2 folders for airpod Pros which HAD support for loudness EQ until a few days ago (it disappeared randomly, im not exactly sure what triggered it). I might try to just import the old win10 hyperX 'folders' into both of the new HyperX 'folders', as even if it bricks my system, as frankly enough idc anymore (this system is a brick to me without Loudness EQ). If you reached this point, I want to thank you for taking the time reading this, as this has driven me crazy. Have a great rest of your day :) ALSO - I know this isnt a specific problem with your software, but I figure you are by far the best person I could talk to, to get help on this issue.

ethano8225 commented 11 months ago

I would also like to say 2 more things- on windows10, the enhancements tab shows up despite the fact that I have hyperX ngenuity installed, but on win11 whether I have ngenuity installed or not, it doesnt show up. If I install it, it actually shows completely different customization settings - on win10, it shows 7.1 surround sound, and on win11, it shows DTS X spacial bullsh*t (that I dont want) and an equalizer (like for individual frequencies). I can provide screenshots if wanted.

Falcosc commented 11 months ago

You can't find the reason for the behavior of the software/drivers because most of them are closed source or impossible to find the sources.

So it's all trial and error. I lost my settings as well, for me, it was re-detection of my monitor and random Windows updates. That's why I scripted the whole thing. Now you just have to find out which settings are needed to get what you need.

Stuff like FORM_FACTOR and FULL_RANGE_SPEAKERS settings got only discovered while searching through the web. Some people told to set some unknown things to as fix and with some research I found the meaning and did prove it by setting values from known secondary audio devices.

So nothing new for you, just the information that there isn't any hidden thing where I can point your research. In this Repo you will just find stuff I stumbled over. A collection of 100s of contributions to get a nice automation for my issues :)

If you set stuff which your driver does disagree with, it could happen that your settings get purged on reboot. Take a look here: https://github.com/Falcosc/enable-bass-boost I found my cause and excluded them with my flag -noFakeProperties which makes it impossible to access the settings UI, but most features can be activated without UI access.

ethano8225 commented 11 months ago

Thank you for the quick response, and for sharing these solutions publicly! I've noticed a few similarities with drivers that support Loudness EQ across win10 and 11 (for ex. the "DeviceState" always being set to 0x00000004 with no other keys in that same spot), so in the next few days I'm going to be messing with practically all of the keys that I can to make this work. If I find a solution, I will add an update to this post saying what I did to make it work. Also, I have noticed that 2 of the main keys (for premix- and postmixeffectclsid) occasionally have different numbers added to them. So instead of {...},1 for premix and {...},2 for postmix, both of my computers had {...},5 {...},6 set as default. What does this mean/does it mean anything? I guess I'll figure it out lol Anyways thanks again, me and many others appreciate the work you've done here!!

Falcosc commented 11 months ago

Keys could be different across driver versions. So I already assumed that some of them will be incorrect across windows versions. In the worst case, you will even find differences across driver version.

There is only one reason I can be imaging why they are sometimes working across drivers from multiple vendors: driver developers did copy from each other. So likely there are just some examples out there how you develop your audio driver and that's how everything is so similar. But in the end, it is just a configuration, and could be different for every piece of software version.

ethano8225 commented 11 months ago

Alright so after relooking at everything again, I realized that during my transition of win10 to win11 I got a "replacement" for my headset (under warranty), received an ever so slightly different product, and I guess it has different drivers. The thing is, when I connect this "new" headset to my win10 pc, it detects the device as the OLD device with the old settings. Like it has the 7.1 surround sound with the loudness EQ enhancement available, instead of DTS:X which is what this new headset (supposedly) has... WTF is this HyperX.

I think my next step will be try to install win10 on this laptop, and use the old headset's USB to add the drivers. That's the only hope I really have left, as when I tried to completely delete the "new headsets" drivers/dlls on win11, many of the drivers stayed in the system folders (despite me deleting them 'permanently')

ethano8225 commented 11 months ago

HALLELUJAH I GOT IT WORKING!! Thank you for your help my good sir! I created a youtube video that explained my process and also made a stupid reddit post in hopes this solution gets out to more people. I know you 'just did research' to find this solution, but without that, I would still be contemplating installing windows 10 on a windows 11-'only' laptop. FYI - My keys were different, for ex {d04e05a6-...},1 was {d04e05a6-...},5 with a different corresponding value (look at the reddit post if you don't get what i mean 👍 ) edit: yet, the value that enabled the enhancements tab was the same every time (aka {d04e05a6-...},3 , and it has the same corresponding 586... value)

Falcosc commented 11 months ago

You did add PKEY_FX_ModeEffectClsid and PKEY_FX_ModeEffectClsid these are pointing to the actual driver classes which will be more likely to be different.

Did you need to create them? You can maybe check the inf files if you are not sure which line you did actually overwrite and which were missing. But on Intel it is defined in the inf but the device detection process from intel does have conditions which don't add these classes for some devices. So you either have to remember or remove the folder to see how a new one looks like,

PKEY_SYSFX_UiClsid is usually equal, since this is used for the Windows UI

{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},3 PKEY_SYSFX_UiClsid  {5860E1C5-F95C-4a7a-8EC8-8AEF24F379A1}
{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},5 PKEY_FX_StreamEffectClsid {C9453E73-8C5C-4463-9984-AF8BAB2F5447}
{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},6 PKEY_FX_ModeEffectClsid {13AB3EBD-137E-4903-9D89-60BE8277FD17}

And these are my drivers, and they didn't need these lines since they were already present in the inf and always get put into registry

C:\Windows\INF\hdaudio.inf (maybe is included in windows installation)
INF file for installing the Microsoft UAA Function Driver for High Definition Audio
FX_STREAM_CLSID  = "{62dc1a93-ae24-464c-a43e-452f824c4250}"  (PKEY_FX_StreamEffectClsid)
FX_MODE_CLSID    = "{637c490d-eee3-4c0a-973f-371958802da2}" (PKEY_FX_ModeEffectClsid)

C:\Windows\INF\oem60.inf (varies on installation order)
INF file for installing the Conexant Function Driver for High Definition Audio Device)
SRS3_SYSFX_SFX_CLSID  = "{1B917FE2-47D1-425D-A26E-AFCDBDA7A2E8}" (PKEY_FX_StreamEffectClsid)
SRS3_SYSFX_MFX_CLSID  = "{5B98E1AC-A670-4311-B4F8-DC25E30CFBFF}" (PKEY_FX_ModeEffectClsid)

\Render\{DEVICE}\Properties\{a8b865dd-2e3d-4094-ad97-e593a70c75d6},5 does tell which inf is used

Since intel driver Intel(R) Display Audio does not need PKEY_FX_StreamEffectClsid or PKEY_FX_ModeEffectClsid to get Microsoft loudness equalization working, it is using the post and pre effect classes instead of the stream classes, I wonder if your driver does not use Pre and Post fx or if it does not like the windows classes.

Falcosc commented 11 months ago

Since mircosoft driver uses the the classes like my intel driver, what happens if you use the microsoft ones in 5 and 6

FX_STREAM_CLSID  = "{62dc1a93-ae24-464c-a43e-452f824c4250}"  (PKEY_FX_StreamEffectClsid)
FX_MODE_CLSID    = "{637c490d-eee3-4c0a-973f-371958802da2}" (PKEY_FX_ModeEffectClsid)

Maybe it works, but only for loudness? Could be that your classes are just extensing the microsoft ones to get the microsoft features + HyperX features

If it would work, I would add 5 and 6 to the repo, but only overwrite if not existing. Then everybody could have at least Microsoft features.

@etan8225 Could you share your HyperX ini file?

And if

{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},5 = "{62dc1a93-ae24-464c-a43e-452f824c4250}"
{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},6 = "{637c490d-eee3-4c0a-973f-371958802da2}"

Does not work

What about hyperX classes in pre and post fx?

{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},1 {C9453E73-8C5C-4463-9984-AF8BAB2F5447}
{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},2 {13AB3EBD-137E-4903-9D89-60BE8277FD17}
remove 5
remove 6
ethano8225 commented 11 months ago

Well to start I will happily upload the inf files, along with some other reg folders outlined below, I didn't add anything to the inf files / make any modifications myself. Matter of fact, when i try to find "sysfx", "fx",.. or anything like it, I can't seem to find anything of interest in oem286.inf (like the setting was never meant to be enable-able).

A couple of weird things I feel like I should mention: I only realized my airpods had enhancements because they were glitching. Usually when they connect they don't have any enhancements, but OCCASIONALLY when disabling the "headset" feature (keeping "headphones" enabled), the enhancements tab would pop up while showing "2 - (name)'s Airpods Pro" instead of just "(name)'s Airpods Pro" in the control panel. Because of that, I searched through the Render folder, and found like 8 different folders for the Airpods. I decided to steal from the one that had the most-similar looking FxProperties folder when comparing it to my Win10 HyperX FxProperties folder (that still works with loudness EQ). I then just singled out the 3 lonely {d04e05...} keys(strings?) in that folder, and essentially copy and pasted those, and it worked. I can only assume it worked because both use Intel's driver, even though one is a bluetooth and the other is a USB driver.

Also, I notice there are 2 entirely different installations of HyperX in my Render folder. One shows "DTS audio effects on hyperx relay headset" and the other doesnt have that entry AT ALL, like in the spot where "Microsoft Home Theater Audio Effects" would be. The non-working one uses the WDMA setup for usb's (wdma_usb.inf), and the one that works uses Intel's smart sound tech for usbs (oem286.inf). I also included the 'working' and 'non-working' reg file for those specific folders (and hdaudio.inf, since you asked). I would link you my HyperX ini file as well, but I'm still learning a lot about computers so I'm not so sure where that is stored. If you point it out to me, I'll happily add it to the drive folder so you can take a look. * I ADDED {d04e05...},5 AND ,6 to the broken folder AFTER it stopped being used, as i didn't know which folder was the "correct" one at the time. Other modifications I was doing to that folder may include flipping random bits (hex 1 to hex 0) and i even manually ported some binary data from my win10 hyperX installation in hopes that it was going to enable Loudness EQ. This actually made my device detect the USB completely differently, and it told me the "supported drivers" were completely different than the ones available before. That's when I uninstalled the device and reinstalled it, and it came back with the "working.reg" configuration

I'll test the alternate strings very soon and provide an update. BUT "if it aint broke, dont fix it", so I'll be handling this part with much more care than I was before.

final comment: the broken hyperX folder also has multiple entries in a {d3993a3f-...},5 string that the working one does not. You can see that for yourself in the reg files I sent, its almost like that could offload where those effects are handled (or something?)

Falcosc commented 11 months ago

It's just about finding out if the well known class IDs work for all drivers and it was just an issue about pre-fx/post-fx VS fx-stream/fx-mode Or if some drivers don't work with the known class Ids.

Your reg files confirms that hyperX is using the oem286 inf. On your host it is a Intel® Smart Sound Technology for USB Audio

The oem286 inf doesn't know anything about your Bluetooth driver classes and the microsoft driver classes. That would mean that the fx classes follow a universal interface and any class would be supported. Conclusions can be made if we know what works: Microsoft Classes in 5 and 6 Or Bluetooth Classes in 1 and 2

Your Bluetooth inf should know the strings C9453E73-8C5C-4463-9984-AF8BAB2F5447 and 13AB3EBD-137E-4903-9D89-60BE8277FD17 since you copied them out of your Bluetooth audio config.

Since you already know that Bluetooth classes in 5 and 6 works fine, we are almost done.

ethano8225 commented 11 months ago

Ok so, clearly you have much more understanding in this topic than I do, but I understand the 'test' you are talking about. When I changed {d04e05a6-...},5 to {d04e05a6-...},1 and {d04e05a6-},6 to {d04e05a6-...},2 , keeping the same "bluetooth classes", it still worked (shown here). and the only reason i said 'i dont want to fix it if it aint broken' is because i have no idea how these audio drivers were installed. For some reason when the last audio drivers were installed, intel audio was not available when "compatibility check" was enabled. Same thing currently when I try to change the intel drivers, the generic usb audio supposedly "isnt compatible". i have no idea what that actually means, but im happy that i got here lol

Falcosc commented 11 months ago

What about

{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},5 = "{62dc1a93-ae24-464c-a43e-452f824c4250}"
{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},6 = "{637c490d-eee3-4c0a-973f-371958802da2}"
remove 1
remove 2

and final one, the version from the script:

{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},1 = "{62dc1a93-ae24-464c-a43e-452f824c4250}"
{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},2 = "{637c490d-eee3-4c0a-973f-371958802da2}"
remove 5
remove 6

By the way, UI will never disappear, you actually have to enable and disable loudness to hear the difference to make sure it actually works

ethano8225 commented 11 months ago

Ooh. That last comment actually made me re-test everything, and it made me realize I hadn't properly tested the Loudness EQ in the first place. I think simply seeing the option actually appear for once made me too giddy and I jumped to a conclusion, my apologies.

BUT, I think I have found the real culprit. When I reinstalled the Intel Smart Sound BUS drivers as a "high definition audio device", as was recommended here for a different reason, a different INF file appeared. oem61.inf, and if you look at that shortened version (modified carefully to remove unnecessary lines obviously used by other headsets, ~200 lines total), you'll see what I mean. I also added some lines earlier, like 'this is the problem' as I wasn't planning on removing all of the other headphones sh**. Anyways, some examples:

DTS_SFX_CLSID = "{8B778F49-83A0-4EE9-896A-ED52903EDF1F}" DTS_MFX_CLSID = "{AD1F2B64-646D-43DB-9F29-08324E9A94E8}" PKEY_DTS_APO4X_KEY = "{7A8B74C8-FA66-4460-8542-D6119C59E9D4}" PKEY_DTS_CONFIG_FILE = "{7A8B74C8-FA66-4460-8542-D6119C59E9D4},2" PKEY_FX_Association = "{D04E05A6-594B-4FB6-A80D-01AF5EED7D1D},0" PKEY_CompositeFX_StreamEffectClsid = "{D04E05A6-594B-4fb6-A80D-01AF5EED7D1D},13" PKEY_CompositeFX_ModeEffectClsid = "{D04E05A6-594B-4fb6-A80D-01AF5EED7D1D},14" PKEY_SFX_ProcessingModes_Supported_For_Streaming = "{D3993A3F-99C2-4402-B5EC-A92A0367664B},5" PKEY_MFX_ProcessingModes_Supported_For_Streaming = "{D3993A3F-99C2-4402-B5EC-A92A0367664B},6"

Does any of this look promising? Would it be (even theoretically) possible to edit this inf file to support effects? Again, I appreciate your help! edit: i just also realized, this file doesnt even exist on my windows 10 machine. On win10, the device is set up without an oem file, only wdma_usb.inf ... Not gonna lie im tempted to try removing it and then completely reinstalling the device.

Falcosc commented 11 months ago

It is just a config file, removing things there will not help much.

It just defines how the registry will be written based on the logic in the drivers. So I only use the inf file to check which class Ids where known during the driver development.

Did any of the pre-fx/post-fx VS fx-stream/fx-mode settings work? Either with windows class Ids or with bluetooth class ids?

TestA

{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},5 = "{62dc1a93-ae24-464c-a43e-452f824c4250}"
{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},6 = "{637c490d-eee3-4c0a-973f-371958802da2}"
remove 1
remove 2

TestB

{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},1 = "{62dc1a93-ae24-464c-a43e-452f824c4250}"
{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},2 = "{637c490d-eee3-4c0a-973f-371958802da2}"
remove 5
remove 6

TestC

{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},5 = "{C9453E73-8C5C-4463-9984-AF8BAB2F5447}"
{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},6 = "{13AB3EBD-137E-4903-9D89-60BE8277FD17}"
remove 1
remove 2

TestD

{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},1 = "{C9453E73-8C5C-4463-9984-AF8BAB2F5447}"
{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},2 = "{13AB3EBD-137E-4903-9D89-60BE8277FD17}"
remove 5
remove 6

If none of them work, you would need to switch the driver until you find one which works with the known good combination:

{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},1 = "{62dc1a93-ae24-464c-a43e-452f824c4250}"
{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},2 = "{637c490d-eee3-4c0a-973f-371958802da2}"
remove 5
remove 6

To test you only need to restart audio service, like you see in the powershell script.

ethano8225 commented 11 months ago

OMFG what a joke of an OS. I figured win11 was the issue at heart, so after trying other things (explained @ bottom paragraph) I installed win10, and would you look at that! The "known strings" work as long as the first two are set to {d..},5 and {d..},6 , exactly how my headphones were set up on my old device.

I also had to delete 2 extra strings from {d3993a3f-99c2-4402-b5ec-a92a0367664b},6 leaving the value {C18E2F7E-933D-4965-B7D1-1EEF228D2AF3} as that is how it was on my old device. I will leave this open for tonight just in case the problem comes back, but since my headphones aren't being setup by an "oem.inf" anymore, i think all is well!

And yes, I have actually tested this time. I can tell the gain is actually being increased, gunshots are greatly reduced, and I can hear footsteps like normal. Again, thank you for all the help. I will check if any of the other bluetooth strings are still on this device, and if they are, I will test them tomorrow if its necessary (i dont think the options will disappear like on win11, so it may be unnecessary)

Some of the things I did to try to prevent that oem from being used / prevent the dts service from being ran: search the entire windows folder and delete everything related to oem61 (.inf, .PNF, and .sys? in another folder) then uninstall all devices related to hyperx headphones, restart, install the usb. still saw "oem61.inf" being used search windows folder for things related to dts, filtering out "dtsh" files and anything else that wasn't related to dolby, and deleting the dolby files. after a restart, the system was very unhappy, very long boot time and glitches. Somehow, the DTS/Dolby service was still f*ing running. not saying i couldn't have deleted something unrelated, but I was very cautious as to not mess up the system, so im suspecting it was just built into the OS when installing win10, i did a full reinstall and now everything's working as expected. I had already done this once for win11 as the laptop came with a ton of bloatware, and yet that fixed nothing. There was even a separate audio service called "DolbyAPO" in the device manager with/without the headphones installed, so i think its pre-installed with win11 in some way that blocks windows enhancements

Falcosc commented 11 months ago

Which of the 4 combinations of settings did work on windows 10 and which not?

You did only test this right?

{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},5 = "{C9453E73-8C5C-4463-9984-AF8BAB2F5447}"
{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},6 = "{13AB3EBD-137E-4903-9D89-60BE8277FD17}"
remove 1
remove 2

Please tell me which of the 4 versions mentioned here https://github.com/Falcosc/enable-loudness-equalisation/issues/13#issuecomment-1679477603 works on windows 10

Did you test all 4 on windows 11? Or did you only test one of them on windows 11?

Win10 Win11
TestA ? ?
TestB ? ?
TestC OK ?
TestD ? ?
ethano8225 commented 11 months ago

None of the combinations actually worked in win11 AFAIK. The first time I added the strings

{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},1 = "{62dc1a93-ae24-464c-a43e-452f824c4250}"
{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},2 = "{637c490d-eee3-4c0a-973f-371958802da2}"

with the universal {d04},3 value {586..} as well, the setting showed up. Since the setting "just worked" in win10, I assumed that it would also "just work" on win11. ALSO, the enhancements tab had showed up before but without the Loudness EQ options, so when I finally saw them for the first time I assumed it was going to work. When you made the comment about "the setting never disappearing", I realized my major mistake and tested if the setting actually applied, and it did NOT. I then tried all of the other values in "Test A, C and D". Even though the loudness eq option was there for EVERY iteration, none of the values actually work in practice.

When I switched over to win10, I set

{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},5 = "{62dc1a93-ae24-464c-a43e-452f824c4250}"
{d04e05a6-594b-4fb6-a80d-01af5eed7d1d},6 = "{637c490d-eee3-4c0a-973f-371958802da2}"

As that is how my headphones are set up on my old win 10 machine, I also deleted 2 extra values from that {d339..},6 as stated before. Even though that is just a setting for "PKEY_MFX_ProcessingModes_Supported_For_Streaming", it seemed like there was some type of "movie mode" and "communication mode" set up, but I didn't need 'em and I wasn't sure if it was effecting the enhancements so I deleted the extra strings. Also, these extra strings were not present in any other sound device on my system, all the other ones just had a single {C18..} value associated with it, so I figured goodbye & good riddance. After many restarts, installing updated software, even downloading the new realtek audio drivers, the setting is still there and it actually works. I figure I'll upload my current working win10 reg, here.

If I can find those other "bluetooth" strings on this system, I will try them out, but I'm not entirely sure they are still here after reinstalling everything.

Falcosc commented 11 months ago

Like this? 

Win10 Win11
TestA yes no
TestB ? no
TestC ? no
TestD ? no

Did you test all 4 versions on win 11?

The test result will tell me which entries would make sense in the script.

ethano8225 commented 11 months ago

Yes, currently that is how the "working chart" would look like, at least for my machine. I think there is a couple of major takeaways from this though, as during this I have done quite a bit of research in how audio drivers are set up (although, this may not be applicable to every scenario as there are clearly many ways a device could be set up)

From this github: (i realized i messed this part up. but this github has a LOT of good, condensed info. In particular, use Find to search for "The most important properties are those that control which sAPOs are used". it also says "If any SFX, MFX or EFX are present, then LFX and GFX are ignored". AKA, If {d04..},5 ,6 OR ,7 is present, ,1 and ,2 are completely ignored.

Last note, I checked for the other CLSId's {C9453E73..} and {13AB3EBD...} and yet they are not on my system anymore. Just the normal ones from microsoft. Regardless, I'm somewhat curious if I can "change" the FX mode from S/M-FX to L/G-FX, AKA, if i can change ,5 and ,6 to ,1 and ,2 with no problems..? If so, can your script assume the user has ,5 and ,6 (and ,7?), delete those, and replace them with ,1 and ,2? I'll happily test that soon.

Edit: holy shit im confident i just realized why none of them worked on my old installation. Usually,

PKEY_FX_StreamEffectClsid    = "{D04E05A6-594B-4fb6-A80D-01AF5EED7D1D},5"
PKEY_FX_ModeEffectClsid     = "{D04E05A6-594B-4fb6-A80D-01AF5EED7D1D},6"

in custom installations according to this for stream, and this for mode(look at the inf examples). When I relooked at the oem61.inf file, it has

PKEY_CompositeFX_StreamEffectClsid   = "{D04E05A6-594B-4fb6-A80D-01AF5EED7D1D},13"
PKEY_CompositeFX_ModeEffectClsid     = "{D04E05A6-594B-4fb6-A80D-01AF5EED7D1D},14"

If i set those to the windows "known good" numbers, i'd put money on the fact that it wouldve worked. Especially since stream was set to DTS_SFX_CLSID (and {FC6D7D4E-5D4B-4CF6-AC04-7A585769B45F} for some reason, i cant find that in the inf), and Mode was set to {FD278210-3175-4909-B46A-DF2CA8C20D46} which i also can't find in the inf, but it doesnt even matter since that would've overridden the effects on the headset. Well, atleast I learned something!

Falcosc commented 10 months ago

My Notebook audio jack also uses StreamEffectClsid and ModeEffectClsid. So it wasn't a one time thing. It's pretty common that intel drivers use Pre and PostMixEffect class ids while other drivers often use StreamEffectClsid and ModeEffectClsid