BitByteBit Posted March 18, 2011 Share Posted March 18, 2011 Seen this one requested a lot and I thought I'd have a crack at it. Turns out it wasn't so hard! Only thing is, I've never made a UDF before. So rather than post it in the Example Scripts forum only for it to need 100 changes, I thought I'd run it by the "pros" first. Attached is what I've got so far, can you help me improve it? Example usage: expandcollapse popup#include<_W7Sound.au3> ;Open the Volume Mixer. _OpenVolControl(1) ;Example 1, Working with the master volume. $OldMaster = _GetMasterVolume() For $i = 0 To 100 Step 20 _SetMasterVolume($i) ConsoleWrite(_GetMasterVolume() & @CRLF) Next Sleep(840) _SetMasterVolume($OldMaster) ;Example 2, working with a specific program. $Sys = _GetVolume('System Sounds') _SetVolume('System Sounds', 50) Sleep(840) _SetVolume('System Sounds', $Sys) ;Example 3, working with all. $aProgs = _EnumerateAudioPrograms() For $i = 2 To $aProgs[0][0] _SetVolume($aProgs[$i][2], 50) ;Set new volume. ConsoleWrite($aProgs[$i][0] & ' - ' & _GetVolume($aProgs[$i][2]) & @CRLF) Next Sleep(840) For $i = 2 To $aProgs[0][0] _SetVolume($aProgs[$i][2], $aProgs[$i][4]) ;Reset to original. ConsoleWrite($aProgs[$i][0] & ' - ' & _GetVolume($aProgs[$i][2]) & @CRLF) Next ;Close the Volume Mixer. _OpenVolControl(0) Thanks, BitByteBit_W7Sound.au3 Link to comment Share on other sites More sharing options...
guinness Posted March 18, 2011 Share Posted March 18, 2011 (edited) I haven't tested the UDF yet and everything looks clear and concise with the UDF structure. Maybe have a look at this >> http://www.autoitscript.com/autoit3/udfs/UDF_Standards.htm for a few extra tips! Edited March 18, 2011 by guinness UDF List: _AdapterConnections() • _AlwaysRun() • _AppMon() • _AppMonEx() • _ArrayFilter/_ArrayReduce • _BinaryBin() • _CheckMsgBox() • _CmdLineRaw() • _ContextMenu() • _ConvertLHWebColor()/_ConvertSHWebColor() • _DesktopDimensions() • _DisplayPassword() • _DotNet_Load()/_DotNet_Unload() • _Fibonacci() • _FileCompare() • _FileCompareContents() • _FileNameByHandle() • _FilePrefix/SRE() • _FindInFile() • _GetBackgroundColor()/_SetBackgroundColor() • _GetConrolID() • _GetCtrlClass() • _GetDirectoryFormat() • _GetDriveMediaType() • _GetFilename()/_GetFilenameExt() • _GetHardwareID() • _GetIP() • _GetIP_Country() • _GetOSLanguage() • _GetSavedSource() • _GetStringSize() • _GetSystemPaths() • _GetURLImage() • _GIFImage() • _GoogleWeather() • _GUICtrlCreateGroup() • _GUICtrlListBox_CreateArray() • _GUICtrlListView_CreateArray() • _GUICtrlListView_SaveCSV() • _GUICtrlListView_SaveHTML() • _GUICtrlListView_SaveTxt() • _GUICtrlListView_SaveXML() • _GUICtrlMenu_Recent() • _GUICtrlMenu_SetItemImage() • _GUICtrlTreeView_CreateArray() • _GUIDisable() • _GUIImageList_SetIconFromHandle() • _GUIRegisterMsg() • _GUISetIcon() • _Icon_Clear()/_Icon_Set() • _IdleTime() • _InetGet() • _InetGetGUI() • _InetGetProgress() • _IPDetails() • _IsFileOlder() • _IsGUID() • _IsHex() • _IsPalindrome() • _IsRegKey() • _IsStringRegExp() • _IsSystemDrive() • _IsUPX() • _IsValidType() • _IsWebColor() • _Language() • _Log() • _MicrosoftInternetConnectivity() • _MSDNDataType() • _PathFull/GetRelative/Split() • _PathSplitEx() • _PrintFromArray() • _ProgressSetMarquee() • _ReDim() • _RockPaperScissors()/_RockPaperScissorsLizardSpock() • _ScrollingCredits • _SelfDelete() • _SelfRename() • _SelfUpdate() • _SendTo() • _ShellAll() • _ShellFile() • _ShellFolder() • _SingletonHWID() • _SingletonPID() • _Startup() • _StringCompact() • _StringIsValid() • _StringRegExpMetaCharacters() • _StringReplaceWholeWord() • _StringStripChars() • _Temperature() • _TrialPeriod() • _UKToUSDate()/_USToUKDate() • _WinAPI_Create_CTL_CODE() • _WinAPI_CreateGUID() • _WMIDateStringToDate()/_DateToWMIDateString() • Au3 script parsing • AutoIt Search • AutoIt3 Portable • AutoIt3WrapperToPragma • AutoItWinGetTitle()/AutoItWinSetTitle() • Coding • DirToHTML5 • FileInstallr • FileReadLastChars() • GeoIP database • GUI - Only Close Button • GUI Examples • GUICtrlDeleteImage() • GUICtrlGetBkColor() • GUICtrlGetStyle() • GUIEvents • GUIGetBkColor() • Int_Parse() & Int_TryParse() • IsISBN() • LockFile() • Mapping CtrlIDs • OOP in AutoIt • ParseHeadersToSciTE() • PasswordValid • PasteBin • Posts Per Day • PreExpand • Protect Globals • Queue() • Resource Update • ResourcesEx • SciTE Jump • Settings INI • SHELLHOOK • Shunting-Yard • Signature Creator • Stack() • Stopwatch() • StringAddLF()/StringStripLF() • StringEOLToCRLF() • VSCROLL • WM_COPYDATA • More Examples... Updated: 22/04/2018 Link to comment Share on other sites More sharing options...
dexto Posted January 13, 2012 Share Posted January 13, 2012 Thank you. Link to comment Share on other sites More sharing options...
shmuelw1 Posted October 6, 2014 Share Posted October 6, 2014 Thanks for the UDF. Can you add a function for testing whether the system volume is muted? Testing for _GetMasterVolume = 0 does not work. Mute apparently doesn't affect the volume level. Link to comment Share on other sites More sharing options...
Seminko Posted March 5, 2016 Share Posted March 5, 2016 $array = _EnumerateAudioPrograms() _ArrayDisplay($array) This only returns the Master Volume, no other apps are shown. Ideas? Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now