kevinshroff / KSMRD-Modded-Realtek-Audio-Drivers

KSMRD Modded Realtek drivers. Disables vendor post-processing (i.e. Waves MaxxAudio, SRS Audio, etc.) on all supported Realtek Audio devices.
126 stars 9 forks source link

Built-in laptop microphone missing / Reversing possible? #21

Open Coldblackice opened 5 years ago

Coldblackice commented 5 years ago

Just installed the latest modded KSMRD drivers, however, the built-in microphone on my 9570 is no longer appearing/working. Did it get removed along with the MaxxAudio tumor? Is there a way to use the built-in mic with these drivers?

Also, I noticed that the mic input stuttering happens when I'm closer to the mic (and thus louder) compared to when I was leaning back in my chair, further away (so my voice input was quieter to the other person).

My hypothesis is that it's possibly due to either signal processing from the driver to try and level mic input/volume/acoustics, OR, perhaps when the driver detects a much louder or intense volume (or highly contrasting input), it scrambles for some more CPU to handle the extra processing it deems necessary, but because the MaxxAudio cruft is poorly optimized or coded, it's handling of this process is clunky, resulting in interruptions in the processing->signal-passing-along where it was asking the CPU for more processing time, or opening up bigger buffers to handle the processing/caching/whatever.

But my best guess would be the driver trying to do leveling on the input, but when voice input is quieter or further away, because it's a softer or more steady sound, it decides it doesn't have to do any leveling and so the stutters and warbles don't happen.

Could this be the case?

If so -- and assuming the built-in mic can't be used with the modded drivers -- would it be possible to get around the stuttering by tweaking the mic input processing of the driver, whether through an app or perhaps even registry tweaks? Like if there was a way to tell the driver to not bother applying any leveling or processing on mic input no matter how loud or jarring or dynamic it thinks the input is.

If not possible via the app or anything user-facing, I would think it'd be possible from a reverse-engineering standpoint, reversing the driver to "flip a switch" that prevents the driver from doing any processing or leveling on mic input. OR, reversing to force a flag or bit that makes the driver see all mic input as a constant, smooth, steady volume, so it never bothers putting its hands into the dough.

Thoughts?