sandin Posted May 7, 2009 Share Posted May 7, 2009 (edited) I've started making this program ages ago, and I dun have the time to finish it. It's a music scripting program with MIDI keyboard feature. Means you can compose your own MIDI music.In this stage the following things needs to be fixed:-right click menu on the list with Add above, Add bellow, Edit, Remove item in it-updating list item's location on item's removal, item's starting time, etc...-making the "hold keys" option easier (click on item in the list with more than 1 index makes the hit down/up select those keys)-instant update on the edit/add item window (like when you change octave for example, all related items should change, like index, etc...)-making Save and SaveAS separate (SaveAs is only one working for now)-make (PC) keyboard hotkeys for the keys in the application-maybe rewrite the whole script (since the one is messy, and hard to read if you see it for the first time)Btw, this script wouldn't have happened if there weren't midi udf by eynstyneto start, click RECORD button, and click on to any keyboard key in the program, you can check the "Instant record" checkbox, in that case you skip the "add" window, and adding the key instantly. Program can detect how long have you been holding your key, and will set that time as default (which you can change). To edit item -> double click on item in the list. To remove item click DELETE on your keyboard when you select any of the item in the list. Hold Down and Release buttons are holding desired key/tone until the Release function releases it (see the example script in the zip).feel free to develope it, since I dun have the timeedit: few more examples added (rename to *.PSC file, or you can open like TXT)midi_keyboard_snd.zipexample2.PSC.txtexample3.PSC.txt Edited May 8, 2009 by sandin Some cool glass and image menu | WinLIRC remote controler | Happy Holidays to all... | Bounce the sun, a game in which you must save the sun from falling by bouncing it back into the sky | Hook Leadtek WinFast TV Card Remote Control Msges | GDI+ sliding toolbar | MIDI Keyboard (early alpha stage, with lots of bugs to fix) | Alt+Tab replacement | CPU Benchmark with pretty GUI | Ini Editor - Edit/Create your ini files with great ease | Window Manager (take total control of your windows) Pretty GUI! | Pop-Up window from a button | Box slider for toolbar | Display sound volume on desktop | Switch hotkeys with mouse scroll Link to comment Share on other sites More sharing options...
CodyBarrett Posted May 7, 2009 Share Posted May 7, 2009 WHOA!.. i haven't tested it.. but that looks sweet [size="1"][font="Tahoma"][COMPLETED]-----[FAILED]-----[ONGOING]VolumeControl|Binary Converter|CPU Usage| Mouse Wrap |WinHide|Word Scrammbler|LOCKER|SCREEN FREEZE|Decisions Decisions|Version UDF|Recast Desktop Mask|TCP Multiclient EXAMPLE|BTCP|LANCR|UDP serverless|AIOCR|OECR|Recast Messenger|AU3C|Tik-Tak-Toe|Snakes & Ladders|BattleShips|TRON|SNAKE_____________________[u]I love the Helpfile it is my best friend.[/u][/font][/size] Link to comment Share on other sites More sharing options...
WideBoyDixon Posted May 8, 2009 Share Posted May 8, 2009 (edited) There's no doubt about it, sandin is king of the AutoIt GUI! It's such a good start that someone *should* develop from here.WBD Edited May 8, 2009 by WideBoyDixon [center]Wide by name, Wide by nature and Wide by girth[u]Scripts[/u]{Hot Folders} {Screen Calipers} {Screen Crosshairs} {Cross-Process Subclassing} {GDI+ Clock} {ASCII Art Signatures}{Another GDI+ Clock} {Desktop Goldfish} {Game of Life} {3D Pie Chart} {Stock Tracker}[u]UDFs[/u]{_FileReplaceText} {_ArrayCompare} {_ToBase}~ My Scripts On Google Code ~[/center] Link to comment Share on other sites More sharing options...
sandin Posted May 8, 2009 Author Share Posted May 8, 2009 tnx bro where's paulie? I'm sure he would be interested in things like this one. Some cool glass and image menu | WinLIRC remote controler | Happy Holidays to all... | Bounce the sun, a game in which you must save the sun from falling by bouncing it back into the sky | Hook Leadtek WinFast TV Card Remote Control Msges | GDI+ sliding toolbar | MIDI Keyboard (early alpha stage, with lots of bugs to fix) | Alt+Tab replacement | CPU Benchmark with pretty GUI | Ini Editor - Edit/Create your ini files with great ease | Window Manager (take total control of your windows) Pretty GUI! | Pop-Up window from a button | Box slider for toolbar | Display sound volume on desktop | Switch hotkeys with mouse scroll Link to comment Share on other sites More sharing options...
BrettF Posted May 8, 2009 Share Posted May 8, 2009 Wow awesome! Vist my blog!UDFs: Opens The Default Mail Client | _LoginBox | Convert Reg to AU3 | BASS.au3 (BASS.dll) (Includes various BASS Libraries) | MultiLang.au3 (Multi-Language GUIs!)Example Scripts: Computer Info Telnet Server | "Secure" HTTP Server (Based on Manadar's Server)Software: AAMP- Advanced AutoIt Media Player | WorldCam | AYTU - Youtube Uploader Tutorials: Learning to Script with AutoIt V3Projects (Hardware + AutoIt): ArduinoUseful Links: AutoIt 1-2-3 | The AutoIt Downloads Section: | SciTE4AutoIt3 Full Version! Link to comment Share on other sites More sharing options...
sandin Posted May 8, 2009 Author Share Posted May 8, 2009 tnx BrettFI added another example in the 1st post Some cool glass and image menu | WinLIRC remote controler | Happy Holidays to all... | Bounce the sun, a game in which you must save the sun from falling by bouncing it back into the sky | Hook Leadtek WinFast TV Card Remote Control Msges | GDI+ sliding toolbar | MIDI Keyboard (early alpha stage, with lots of bugs to fix) | Alt+Tab replacement | CPU Benchmark with pretty GUI | Ini Editor - Edit/Create your ini files with great ease | Window Manager (take total control of your windows) Pretty GUI! | Pop-Up window from a button | Box slider for toolbar | Display sound volume on desktop | Switch hotkeys with mouse scroll Link to comment Share on other sites More sharing options...
Toady Posted May 8, 2009 Share Posted May 8, 2009 This is an awesome script, looks like a lot of time went in to it. 5/5! www.itoady.com A* (A-star) Searching Algorithm - A.I. Artificial Intelligence bot path finding Link to comment Share on other sites More sharing options...
Yashied Posted May 8, 2009 Share Posted May 8, 2009 Powerfully done.5+ My UDFs: iKey | FTP Uploader | Battery Checker | Boot Manager | Font Viewer | UDF Keyword Manager | Run Dialog Replacement | USBProtect | 3D Axis | Calculator | Sleep | iSwitcher | TM | NetHelper | File Types Manager | Control Viewer | SynFolders | DLL Helper Animated Tray Icons UDF Library | Hotkeys UDF Library | Hotkeys Input Control UDF Library | Caret Shape UDF Library | Context Help UDF Library | Most Recently Used List UDF Library | Icons UDF Library | FTP UDF Library | Script Communications UDF Library | Color Chooser UDF Library | Color Picker Control UDF Library | IPHelper (Vista/7) UDF Library | WinAPI Extended UDF Library | WinAPIVhd UDF Library | Icon Chooser UDF Library | Copy UDF Library | Restart UDF Library | Event Log UDF Library | NotifyBox UDF Library | Pop-up Windows UDF Library | TVExplorer UDF Library | GuiHotKey UDF Library | GuiSysLink UDF Library | Package UDF Library | Skin UDF Library | AITray UDF Library | RDC UDF Library Appropriate path | Button text color | Gaussian random numbers | Header's styles (Vista/7) | ICON resource enumeration | Menu & INI | Tabbed string size | Tab's skin | Pop-up circular menu | Progress Bar without animation (Vista/7) | Registry export | Registry path jumping | Unique hardware ID | Windows alignment More... Link to comment Share on other sites More sharing options...
UEZ Posted May 8, 2009 Share Posted May 8, 2009 I have no talent for creating music but wonderful GUI and nice program anyway! Well done! UEZ Please don't send me any personal message and ask for support! I will not reply! Selection of finest graphical examples at Codepen.io The own fart smells best! ✌Her 'sikim hıyar' diyene bir avuç tuz alıp koşma!¯\_(ツ)_/¯ ٩(●̮̮̃•̃)۶ ٩(-̮̮̃-̃)۶ૐ Link to comment Share on other sites More sharing options...
lordicast Posted May 11, 2009 Share Posted May 11, 2009 Very Great! [Cheeky]Comment[/Cheeky] Link to comment Share on other sites More sharing options...
torels Posted May 11, 2009 Share Posted May 11, 2009 Absolutely Wonderful Some Projects:[list][*]ZIP UDF using no external files[*]iPod Music Transfer [*]iTunes UDF - fully integrate iTunes with au3[*]iTunes info (taskbar player hover)[*]Instant Run - run scripts without saving them before :)[*]Get Tube - YouTube Downloader[*]Lyric Finder 2 - Find Lyrics to any of your song[*]DeskBox - A Desktop Extension Tool[/list]indifference will ruin the world, but in the end... WHO CARES :P---------------http://torels.altervista.org Link to comment Share on other sites More sharing options...
Szhlopp Posted May 11, 2009 Share Posted May 11, 2009 Wow... just, wow. RegEx/RegExRep Tester!Nerd Olympics - Community App!Login UDFMemory UDF - "Game.exe+753EC" - CE pointer to AU3Password Manager W/ SourceDataFiler - Include files in your au3!--- Was I helpful? Click the little green '+' Link to comment Share on other sites More sharing options...
Yuraj Posted May 11, 2009 Share Posted May 11, 2009 (edited) Great! I Like It! Edited May 11, 2009 by Yuraj ShellExecute("http://www.yuraj.ucoz.com")ProcessClose(@AutoItPID) Link to comment Share on other sites More sharing options...
Will66 Posted July 27, 2009 Share Posted July 27, 2009 Well done sandin,thats fantastic work. Thankyou!I too have been interested in midi for a while, alas i dabble in a few scripting languages but am not a master of autoit.I've put this together to play midi notes directly from the keyboard. It has the abilty to play multiple notes at once but i've found it difficult to make it s responsive as it should be to user input.Instrument can be set from the menu.There are some things about the WindowEvents and dll calls i don't really understand fully to know where i've gone wrong. Its eating up CPU, and perhaps those who are more familiar with autoit can help make it better and offer some input on where i've gone wrong.requires MidiUdfexpandcollapse popup#include <SendMessage.au3> ;#include <misc.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <Array.au3> #include <Midiudf.au3> Opt("GUIOnEventMode", 1) ; OnEvent mode Global $Q = 2890 ;20 Global $W = 2990 ;20 Global $E = "2A90" ;20 Global $R = "2B90" ;20 Global $T = "2C90" ;20 Global $Y = "2D90" ;20 Global $U = "2E90" ;20 Global $I = "2F90" ;20 Global $O = "3090" ;20 Global $P = "3190" ;20 Global $A = "3290" ;21 Global $S = "3390" ;20 Global $D = "3490" ;20 Global $F = "3590" ;20 Global $G = "3690" ;20 Global $H = "3790" ;20 Global $J = "3890" ;20 Global $K = "3990" ;20 Global $L = "3A90" ;20 Global $Z = "3B90" ;20 Global $X = "3C90" ;20 Global $C = "3D90" ;20 Global $V = "3E90" ;20 Global $B = "3F90" ;20 Global $N = "4090" ;20 Global $M = "4190" ;20 Global $instrument_String="Grand Piano|Bright Piano|Electric Grand Piano|Honky-Tonk Piano|Electric piano|Electric Piano|" & _ "Harpsichord|Clavinet|Celesta|Glockenspiel|Music Box|Vibraphone|Marimba|Xylophone|Tubular bells|Dulcimer|Drawbar Organ|" & _ "Percussive Organ|Rock Organ|Church Organ|Reed Organ|Accordion|Harmonica|Tango Accordion|Nylon String Guitar|Steel String Guitar|" & _ "Jazz Guitar|Clean Electric Guitar|Muted Electric Guitar|Overdrive Guitar|Distortion Guitar|Guitar Harmonics|Accoustic Bass|" & _ "Fingered Bass|Picked Bass|Fretless Bass|Slap Bass 1|Slap Bass 2|Synth Bass 1|Synth Bass 2|Violin|Viola|Cello|Contrabass|" & _ "Tremolo Strings|Pizzicato Strings|Orchestral Harp|Timpani|String Ensemble 1|String Ensemble 2|Synth Strings 1|" & _ "Synth Strings 2|Choir ahh|Choir oohh|Synth Voice|Orchestral Hit|Trumpet|Trombone|Tuba|Muted Trumpet|French Horn|" & _ "Brass Section|Synth Brass 1|Synth Brass 2|Soprano Sax|Alto Sax|Tenor Sax|Baritone Sax|Oboe|English Horn|Bassoon|" & _ "Clarinet|Piccolo|Flute|Recorder|Pan flute|Blown Bottle|Shakuhachi|Whistle|Ocarina|Square Wave|Sawtooth Wave|Caliope|" & _ "Chiff|Charang|Voice|Fifths|Bass & Lead|New Age|Warm|PolySynth|Choir|Bowed|Metallic|Halo|Sweep|FX: Rain|FX: Soundtrack|" & _ "FX: Crystal|FX: Atmosphere|FX: Brightness|FX: Goblins|FX: Echo Drops|FX: Star Theme|Sitar|Banjo|Shamisen|Koto|Kalimba|" & _ "Bagpipe|Fiddle|Shanai|Tinkle bell|Agogo|Steel Drums|Woodblock|Taiko Drum|Melodic Tom|Synth Drum|Reverse Cymbal|" & _ "Guitar Fret Noise|Breath Noise|Seashore|Bird Tweet|Telephone Ring|Helicopter|Applause|Gunshot" Global $instrument_Array= StringSplit($instrument_String,"|") ;Global Const $WM_KEYDOWN = 0x0100 ;Global Const $WM_KEYUP = 0x0101 Dim $iKeyIndex="" Global $sKeyName,$fileitem $Gui = GUICreate("Key Name Demo (Esc to exit)", 400, 50) GUISetOnEvent($GUI_EVENT_CLOSE, "Quit") $instr_Menu=GUICtrlCreateMenu("&Instrument") GUICtrlSetOnEvent(-1, "_instChanged") for $zz = 1 to $instrument_Array[0] $men1=GUICtrlCreateMenuItem($instrument_Array[$zz],$instr_Menu,-1,1) GUICtrlSetOnEvent(-1, "_instChanged") if $zz=1 then GUICtrlSetState(-1, $GUI_CHECKED) Next GUISetState(@SW_SHOW, $Gui) GUIRegisterMsg($WM_NCLBUTTONUP, "WindowEvents") GUIRegisterMsg($WM_KEYDOWN, "WindowEvents") GUIRegisterMsg($WM_KEYUP, "WindowEvents") HotKeySet("{Esc}", "Quit"); Esc to Exit Dim $Open = _MidiOutOpen() SetInstrument($Open,0);piano While 1 _SendMessage($Gui, $WM_SYSCOMMAND, 0xF012, 0) $sKeyName = "" ;sleep(100) WEnd Func _instChanged() $ind=GUICtrlRead(@GUI_CtrlId,1) if StringLen($ind>0) Then for $zz = 1 to $instrument_Array[0] if $ind=$instrument_Array[$zz] Then SetInstrument($Open,$zz-1) ;MsgBox(0,"",$ind & ":" & $zz-1) ExitLoop EndIf Next EndIf EndFunc Func NoteOn($Handle, $NoteIdx) If IsDeclared ( $NoteIdx ) Then $NoteIdx = Eval($NoteIdx) _MidiOutShortMsg($Handle, "0x0040" & $NoteIdx) EndIf EndFunc Func NoteOff($Handle, $NoteIdx) If IsDeclared ( $NoteIdx ) Then $NoteIdx = Eval($NoteIdx) _MidiOutShortMsg($Handle, "0x0000" & $NoteIdx) EndIf Endfunc Func Play($Handle, $Notes, $Duration); Can play Single notes or use arrays for chords If Isarray($Notes) Then For $i in $Notes If $i > 87 then Return 0 $i-=1 _MidiOutShortMsg($Handle, $Notes[$i]) Next Sleep($Duration) For $i in $Notes $i-=1 _MidiOutShortMsg($Handle, $Notes[$i]) Next Else _MidiOutShortMsg($Handle, $Notes) Sleep($Duration) _MidiOutShortMsg($Handle, $Notes) EndIf EndFunc Func SetInstrument($Handle, $Instrument) _MidiOutShortMsg($Handle,256 * $Instrument + 192) EndFunc Func Quit() Exit EndFunc ;==>Quit Func OnAutoItExit() _MidiOutClose($Open) GUIDelete($Gui) EndFunc ;==>OnAutoItExit Func WindowEvents($hWnd, $Msg, $wParam, $lParam) Switch $Msg Case $WM_KEYUP $aRet = DllCall('user32.dll', 'int', 'GetKeyNameText', 'int', $lParam, 'str', "", 'int', 256) $sKeyName = $aRet[2] $iKeyIndex=StringReplace($iKeyIndex,$sKeyName,"") NoteOff($Open, $sKeyName) ;ConsoleWrite($iKeyIndex & @CRLF) ;ConsoleWrite("keyUp: " & $sKeyName & @CRLF) Case $WM_KEYDOWN $aRet = DllCall('user32.dll', 'int', 'GetKeyNameText', 'int', $lParam, 'str', "", 'int', 256) $sKeyName = $aRet[2] if Not StringInStr($iKeyIndex,$sKeyName) Then $iKeyIndex = $iKeyIndex & $sKeyName NoteOn($Open, $sKeyName) EndIf ;ConsoleWrite("keyDn: " & $sKeyName & @CRLF) EndSwitch EndFunc ;==>WindowEvents Link to comment Share on other sites More sharing options...
Josbe Posted July 27, 2009 Share Posted July 27, 2009 Well done! >_ AUTOIT > AutoIt docs / Beta folder - AutoIt latest beta Link to comment Share on other sites More sharing options...
kisstom Posted May 30, 2015 Share Posted May 30, 2015 Hi,i try to test but i got error messages : Line 273, error: cannot assign values to constantsAny idea? Link to comment Share on other sites More sharing options...
water Posted May 30, 2015 Share Posted May 30, 2015 This thread is about 6 years old. AutoIt has changed a lot in this time.This is clearly a bug but without seeing line 273 we can't tell what happened. My UDFs and Tutorials: Spoiler UDFs: Active Directory (NEW 2024-07-28 - Version 1.6.3.0) - Download - General Help & Support - Example Scripts - Wiki ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki Task Scheduler (2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs: Excel - Example Scripts - Wiki Word - Wiki Tutorials: ADO - Wiki WebDriver - Wiki 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