jwebmeister / tacspeak

Tacspeak - Fast, lightweight, modular speech recognition for gaming
GNU Affero General Public License v3.0
42 stars 2 forks source link

Microphone Detection #12

Closed Houuseno2 closed 6 months ago

Houuseno2 commented 6 months ago

I previously discussed my issue on the nexus mods forums with you and upon running the program with --print_mic_list it does not display any devices and simply shows the same thing as before. I disabled the exclusive mode as well. My log file is also empty. I ran the program on a different computer on the same files with the same microphone and settings and it gave me a list of about 30 devices. The microphone showed up as MME on that computer. I'm considering reinstalling windows perhaps? There aren't any files I care about on here.

jwebmeister commented 6 months ago

Right, this is a hard one to figure out, and I can’t do more than guess what the issue is.

What I think it might be, is your microphone, on your system, is being trying to be connected to via an interface called Kernel Streaming or KS. It’s used for low latency applications, but it also locks other applications out from accessing the device.

That last point might sound like it’s causing the issue, but I suspect it’s simpler in that the packaged libraries that Tacspeak use, don’t include what they need to connect to an audio device via this KS interface.

So how is this fixed? Not sure, but check if you have competing software accessing the microphone at the same time that might be “forcing” it into KS interface, e.g. streaming software, DAW devices, some audio mixers, VST plugins, maybe shadowplay? Try reinstalling drivers for your microphone and/or interface if you’re using one, specifically if it’s a USB device.

One more thing to ask though, what is the sampling rate, bit, channel in windows sound settings (advanced section of device properties)?

Houuseno2 commented 6 months ago

Its 1 channel 16 bit 48000hz or 1 channel 16 bit 44100hz. I'm having a look now if there are any other applications that may be using it. The microphone I have doesn't have any drivers but perhaps there is a windows one? It's an ATR4750-USB but it works on other computers with tacspeak. Would a reinstall of windows be likely to fix anything?

Houuseno2 commented 6 months ago

Problem solved. I wrote up a program that kills anything trying to use the microphone the second it tries to start. You were right about the KS thing. Thanks for you help man works awesome :)

jwebmeister commented 6 months ago

Awesome :) Looking into it a bit more I think I'm wrong about the library Tacspeak uses not supporting KS (it should be included), but it shouldn't support ASIO.