sl23 wrote: ↑June 22nd, 2024, 1:08 pm
So I'm looking for this: {0.0.1.00000000}.{7fb35683-1fea-4fa1-be4a-a3e49b15aeeb} for Microphone (USB Audio)?
Is it better to use a variable to specify?
Yes, this is the ID / DeviceID used by AudioLevel, and the item ID used by SoundVolumeView.exe / svcl.exe - they are the same since it comes from Windows itself, so it can be used as a common ground for potential comparisons (if you're thinking of it, that is). If you want to compare, it's better to use a measure and not a variable, since a measure's string value can be automatically escaped for regex tests, via the :EscapeRegExp parameter - I already said that one reply ago.
Also, quick question: why do you even use the NirSoft sound tools for getting the audio levels? That can be done by the AudioLevel plugin (except you'll need to refresh the skin when the audio input changes), the only thing not covered by the AudioLevel plugin is setting levels, switching the audio input, and possibly identifying which audio input is "active" / "connected" (this one is slightly tricky, at least for my devices), that's the only thing the NirSoft sound tools can truly contribute in such a case.
I did think of using that ID originally, but I thought about keeping the skin from growing too large! I would've needed more measures to display the Friandly name. It's already got a ton of stuff in it! Oh, actually, I could've just used a substitute of "ID":"Mic" duh!
Oh, are saying I don't even need the Nirsoft apps? I didn't think you could set that info using AudioLevel, hence why we ended up with Powershell to get it in the first place? I am using AudioLevel for getting the info already. Oh, no, I'm not! lol I thought it was required for both. So I only need NirSoft to change the volume settings/mute state?
I don't need to change devices.
Last edited by sl23 on June 22nd, 2024, 1:40 pm, edited 1 time in total.
sl23 wrote: ↑June 22nd, 2024, 1:32 pmOh, are saying I don't even need the Nirsoft apps? I didn't think you could set that info using AudioLevel, hence why we ended up with Powershell to get it in the first place? I am using AudioLevel for getting the info already.
Yeah, that was my point: AudioLevel to GET stuff, NirSoft to SET stuff. But you're already getting stuff using NirSoft (e.g. /getpercent, /getmute), which can easily be done by AudioLevel. That's what I was trying to say. Just use NirSoft for manually setting the mic level or switching the audio input via mouse actions, and you escape half of the problems. You only have to deal with the other half, of course.
OMG! I didn't know that was possible. I mean, I know about getting the db level for a VU meter/FFT display obviously, though, I just checked and I can't believe I went down the complete wrong route with that one!
After checking the AudioLevel docs, I don't see how to get that info. How do you get the system input volume info or mute status using AudioLevel?
EG, everything in red is used for level meters, everything in blue is used for getting device info:
Type Required
Specifies the type of data to retrieve from the parent measure.
RMS : The current RMS level (0.0 to 1.0) corresponding to the specified Channel.
Peak : The current Peak level (0.0 to 1.0) corresponding to the specified Channel.
FFT : The current FFT level (0.0 to 1.0) corresponding to the specified FFTIdx option.
FFTFreq : The frequency in Hz corresponding to the specified FFTIdx option.
Band : The current FFT level (0.0 to 1.0) value corresponding to the specified BandIdx option.
BandFreq : The frequency in Hz corresponding to the specified BandIdx option. Format : A string describing the audio format of the device connected to with the parent ID option.
DeviceStatus : Status (0 or 1) of the device connected to with the parent ID option.
DeviceName : A string with the name of the device connected to with the parent ID option.
DeviceID : A string with the Windows ID of the device connected to with the parent ID option.
DeviceList : A string with a list of all available device IDs for the specified Port This can be used to identify a desired device ID for use in the parent ID option.
I don't see anything on that page that allows getting volumepercent/mute data?
sl23 wrote: ↑June 22nd, 2024, 1:45 pm
OMG! I didn't know that was possible. I mean, I know about getting the db level for a VU meter/FFT display obviously, though, I just checked and I can't believe I went down the complete wrong route with that one!
After checking the AudioLevel docs, I don't see how to get that info. How do you get the system input volume info or mute status using AudioLevel?
EG, everything in red is used for level meters, everything in blue is used for getting device info:
I don't see anything on that page that allows getting volumepercent/mute data?
If you read what RMS, Peak, FFT, and Band mean on that page, you'll realize which one you need. It's all written there, if you make the logical connections. Hint: you already used it like a ton of times, obviously without even knowing what it was.
sl23 wrote: ↑June 22nd, 2024, 1:45 pmI don't see anything on that page that allows getting volumepercent/mute data?
My bad, what I meant was the volume of the "signal", not the volume of the device. So basically RMS, but of course this doesn't represent the volume at which the mic device is set at, but how loud you yell into the mic. Sorry for the created confusion.