Script Updated:
Now you can change Master Volume AND Wave Volume, both showing OSD.
Also, hotkeys section is moved to top of script to allow easy customisation to newbies.
;_________________________________________________ ;_______Volume OSD Script - Rajat_______________ ;_________________________________________________ ;_________________________________________________ ;_______User Settings_____________________________ ;Make customisation only in this area ;change characters for empty & full bar here Full = | Empty = - ;set bar position here (relative to desktop) setenv, PosX, 350 setenv, PosY, 510 ;Customise Hotkeys here HotKey, #Up, VolUp HotKey, #Down, VolDn HotKey, ^#Up, wVolUp HotKey, ^#Down, wVolDn ;___________________________________________ ;_____Auto Execute Section__________________ ; DON'T CHANGE ANYTHING HERE!! ; (unless u know what u're doing) SetFormat, float, 0.0 SetTimer, splashoff, 1000 CoordMode, ToolTip, Screen SoundGet, currsnd1 ;Building Empty Bar Loop, 25 EmptyBar = %EmptyBar%%Empty% Exit Display: IfNotEqual, Type, W, SoundGet, currsnd IfEqual, Type, W, SoundGet, currsnd, Wave if currsnd1 <> %currsnd% { IfNotEqual, Type, W, ToolTip, %currsnd%`% %curr%, %PosX%, %PosY% IfEqual, Type, W, ToolTip, * %currsnd%`% %curr%, %PosX%, %PosY% currsnd1 = %currsnd% } Type = setenv, presstime, %A_MDay%%A_hour%%A_Min%%A_Sec% envadd, presstime, 2 SetTimer, SplashOff, On return Splashoff: setenv, presstime2, %A_MDay%%A_hour%%A_Min%%A_Sec% ifgreaterorequal, presstime2, %presstime% { ToolTip SetTimer, SplashOff, off } return ;___________________________________________ ;_____Hotkey Customisation Section__________ ; User defined hotkeys here wVolUp: Type = W VolUp: #MaxHotkeysPerInterval 50 IfNotEqual, Type, W { SoundSet, +4 SoundGet, currsnd } IfEqual, Type, W { SoundSet, +4, Wave SoundGet, currsnd, Wave } mark=0 curr=%EmptyBar% loopup: mark += 4 iflessorequal,mark, %currsnd%,StringReplace, curr, curr,%Empty%,%Full% iflessorequal,mark, %currsnd%, goto, loopup gosub, display return wVolDn: Type = W VolDn: #MaxHotkeysPerInterval 50 IfNotEqual, Type, W { SoundSet, -4 SoundGet, currsnd } IfEqual, Type, W { SoundSet, -4, Wave SoundGet, currsnd, Wave } mark=0 curr=%EmptyBar% loopdown: mark += 4 iflessorequal,mark, %currsnd%,StringReplace, curr, curr,%Empty%,%Full% iflessorequal,mark, %currsnd%, goto, loopdown gosub, display return ;___________________________________________