Good point, everybody makes mistakes from time to time! Well, at least it's not often...
![Sly :sly:](./images/smilies/do.gif)
Yep, so it looks like you're entirely in the NirSoft boat then.
![Confused :confused:](./images/smilies/bn.gif)
Good point, everybody makes mistakes from time to time! Well, at least it's not often...
If you're talking about the RMS (aka signal, not device volume) levels, make two measures like that, each with its own ID.sl23 wrote: ↑June 22nd, 2024, 2:44 pm Back to my problem...
How to separate the two inputs so I can measure each from separate bar meters?Code: Select all
[mMicdbLevel] Measure=Plugin Plugin=AudioLevel Port=Input ID=[mDeviceID]
Code: Select all
[mMicdbLevel]
Measure=Plugin
Plugin=AudioLevel
Port=Input
ID={0.0.1.00000000}.{7fb35683-1fea-4fa1-be4a-a3e49b15aeeb}
RMSAttack=50
RMSDecay=300
RMSGain=10
[mLinedbLevel]
Measure=Plugin
Plugin=AudioLevel
Port=Input
ID={0.0.1.00000000}.{0633eb3a-04b7-4232-bc8f-5a95f6d9a8f5}
RMSAttack=50
RMSDecay=300
RMSGain=10
Code: Select all
[mDeviceID]
Measure=Plugin
Plugin=AudioLevel
Parent=mMicdbLevel
Type=DeviceID
;RegExpSubstitute=1
;Substitute="{.*}\.":""
IfMatch="#Mic#"
IfMatchAction=[!UpdateMeter *][!Redraw]
IfNotMatchAction=[!WriteKeyValue Variable MicID "mDeviceID"][!Update][!Redraw]
Code: Select all
[mMicdbLevel]
Measure=Plugin
Plugin=AudioLevel
Port=Input
;ID=#MicID#
ID={0.0.1.00000000}.{7fb35683-1fea-4fa1-be4a-a3e49b15aeeb}
RMSAttack=50
RMSDecay=300
RMSGain=10
[mDeviceID]
Measure=Plugin
Plugin=AudioLevel
Parent=mMicdbLevel
Type=DeviceID
;RegExpSubstitute=1
;Substitute="{.*}\.":""
IfMatch=#MicID#
IfMatchAction=
IfNotMatchAction=[!SetVariable MicID [mDeviceID]] [!WriteKeyValue Variables MicID [mDeviceID]][!Update][!Redraw]
Here's a sample code - well, basically a skin in itself - that should do most of what you need, instead of asking a couple of questions at every step:
Code: Select all
[Variables]
MicID={0.0.1.00000000}.{1ef40053-eec3-46f1-9bfe-7e1f209407af}
MicZap=0
MicVol=0
MicAdd=0
Update=50
UpdateDivider=40
[Rainmeter]
Update=#Update#
AccurateText=1
DynamicWindowSize=1
BackgroundMode=2
SolidColor=0,0,0,255
---Measures---
[GetMicInfo]
Measure=Calc
UpdateDivider=#UpdateDivider#
OnUpdateAction=[!CommandMeasure GetMicZap "Run"][!CommandMeasure GetMicVol "Run"]
[GetMicZap]
Measure=Plugin
Plugin=RunCommand
Program=#@#Addons\svcl.exe
Parameter=/stdout /getmute "#MicID#"
State=Hide
OutputType=ANSI
Timeout=10000
UpdateDivider=-1
RegExpSubstitute=1
Substitute="(?:\s+|[.]\d+)":""
FinishAction=[!SetOption MicZap Formula [GetMicZap]][!UpdateMeasure MicZap]
DynamicVariables=1
[GetMicVol]
Measure=Plugin
Plugin=RunCommand
Program=#@#Addons\svcl.exe
Parameter=/stdout /getpercent "#MicID#"
State=Hide
OutputType=ANSI
Timeout=10000
UpdateDivider=-1
RegExpSubstitute=1
Substitute="(?:\s+|[.]\d+)":""
FinishAction=[!SetOption MicVol Formula [GetMicVol]][!UpdateMeasure MicVol]
DynamicVariables=1
[SetMicZap]
Measure=Plugin
Plugin=RunCommand
Program=#@#Addons\svcl.exe
Parameter=/stdout /switch "#MicID#"
State=Hide
OutputType=ANSI
Timeout=10000
UpdateDivider=-1
RegExpSubstitute=1
Substitute="(?:\s+|[.]\d+)":""
FinishAction=[!SetOption MicZap Formula #MicZap#][!UpdateMeasure MicZap]
DynamicVariables=1
[SetMicVol]
Measure=Plugin
Plugin=RunCommand
Program=#@#Addons\svcl.exe
Parameter=/stdout /setvolume "#MicID#" #MicVol#
State=Hide
OutputType=ANSI
Timeout=10000
UpdateDivider=-1
RegExpSubstitute=1
Substitute="(?:\s+|[.]\d+)":""
FinishAction=[!SetOption MicVol Formula #MicVol#][!UpdateMeasure MicVol]
DynamicVariables=1
[AddMicVol]
Measure=Plugin
Plugin=RunCommand
Program=#@#Addons\svcl.exe
Parameter=/stdout /changevolume "#MicID#" #MicAdd#
State=Hide
OutputType=ANSI
Timeout=10000
UpdateDivider=-1
RegExpSubstitute=1
Substitute="(?:\s+|[.]\d+)":""
FinishAction=[!SetOption MicVol Formula (Clamp(#MicVol#+#MicAdd#,0,100))][!UpdateMeasure MicVol]
DynamicVariables=1
[MicZap]
Measure=Calc
Formula=0
MinValue=0
MaxValue=1
OnUpdateAction=[!SetVariable MicZap [MicZap:]]
RegExpSubstitute=1
Substitute="^0$":"[\x2713]","^1$":"[\x2717]"
DynamicVariables=1
[MicVol]
Measure=Calc
Formula=0
MinValue=0
MaxValue=100
OnUpdateAction=[!SetVariable MicVol [MicVol:]]
DynamicVariables=1
[MicRms]
Measure=Plugin
Plugin=AudioLevel
Port=Input
ID=#MicID#
RMSGain=5
MinValue=0
MaxValue=1
---Meters---
[MicVolVal]
Meter=String
X=0
Y=0
FontFace=Consolas
FontSize=10
FontColor=255,255,255,255
SolidColor=0,0,0,128
AntiAlias=1
MeasureName=MicVol
Text=[MicZap] Microphone Volume = %1%
DynamicVariables=1
[MicVolBar]
Meter=Bar
X=0r
Y=0R
W=200
H=20
SolidColor=128,128,128,255
BarColor=0,255,0,255
BarOrientation=Horizontal
MeasureName=MicVol
LeftMouseUpAction=[!SetVariable MicVol $MouseX:%$][!UpdateMeasure SetMicVol][!CommandMeasure SetMicVol "Run"]
MiddleMouseUpAction=[!SetVariable MicZap (1-#MicZap#)][!UpdateMeasure SetMicZap][!CommandMeasure SetMicZap "Run"]
MouseScrollUpAction=[!SetVariable MicAdd 5][!UpdateMeasure AddMicVol][!CommandMeasure AddMicVol "Run"]
MouseScrollDownAction=[!SetVariable MicAdd -5][!UpdateMeasure AddMicVol][!CommandMeasure AddMicVol "Run"]
DynamicVariables=1
[MicRmsVal]
Meter=String
X=0r
Y=0R
FontFace=Consolas
FontSize=10
FontColor=255,255,255,255
SolidColor=0,0,0,128
AntiAlias=1
Percentual=1
MeasureName=MicRms
Text=[MicZap] Microphone Signal = %1%
DynamicVariables=1
[MicRmsBar]
Meter=Bar
X=0r
Y=0R
W=200
H=20
SolidColor=128,128,128,255
BarColor=0,255,0,255
BarOrientation=Horizontal
MeasureName=MicRms
Nah, I don't care about that, you do. I sticked to the essentials, based on your last code. The rest is up to you.