Jump to content

Recommended Posts

Hi all, last night I was playing with >MIDI UDF by Ascend4nt, and thought about making a game to learn the notes on the fretboard of the guitar (in the final I did not the game) but I made a guitar tablature tester. (Maybe I I add the game later.) 
  • Play notes. 
  • Play notes.  while MouseDown+MouseMove
  • Play Tabs.
  • Change Speed. 
  • Highlight Note.
The tab file are into the tabs folder (see the file format if you want add more tabs)
It does not supports sound effects as (slide,bend,pull off) Only clean notes.
Update Version 0.1.3 (02/03/2014Latest version!
Version 0.1.3 (02/03/2014)
Changed: _PlayTab Funcion rewritten
Added: Play/Stop while Tab is sounding
Added: Change Timing while Tab is sounding
Added: Number Fret marks
Added: Some tabs

Update Version 0.1.2 (18/02/2014) Older version!

Version 0.1.2 (18/02/2014)
Fixed: Notes up 9 fret Doesn't Sound
Fixed: Notes Highlighting
Added: English Notation
Added: Some tabs
Changed: GUI Look
Changed: Code Structure
Well I hope You understand it was a hard  fight vs Google traslate. (sorry for my English)
suggestions, criticism, comments, help are wellcome.
Edited by Danyfirex
Link to post
Share on other sites

Thank you @czardas. I was Thinking in other method to do the timing part. I'll try to improve it, and add the English notation. ( wow I think You play the guitar) I'll will use this software to learn to play the guitar. as soon I can I'll Update something.


Link to post
Share on other sites
  • 2 weeks later...

I am impressed, one that you created this in one day and of the implementation.  This would be a great training tool for young guitarist.  I came across your script while looking for autoit3 sound creation tools.  I want to work on ear training.  Your script shows that I can do that, thanks.

Thanks  jmosley708. My principal Idea was that. A software to ear training. But this came out. Maybe I add some ear training. o Make a new one.


Link to post
Share on other sites
Link to post
Share on other sites

For ear training you need to start with diatonic intervals within the octave. The two notes should be played separately and later at the same time. Then extend the range to cover two octaves. Next you should start to include the four standard triads along with their inversions (chords with three notes). For four note chords, add sevenths. Chords should eventually be presented as short sequences (normally 2 or 3 chords in a standard cadence).

Later add ninths, elevenths and thirteenths. There are a number of other possible combinations eg 6/9 and suspended fourths or seconds. Altered intervals normally occur in dominant chords.

The above list is not exhaustive, and the number of possible combinations is staggering. I suggest you try to solve one or two simpler problems and leave the more advanced stuff until you are ready for it. An ear trainer is perhaps one of the most difficult and complicated programming problems I have ever attempted myself. There are some reasonable apps out there, but what I have seen falls short of my expectations.

Link to post
Share on other sites
  • 5 months later...

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By edubensa
      Hi! Can someone help me with this? I upgraded from SciTe Edit Lite to full version. Now every time I edit a script it opens on a new SciTe tab, but I want it opens on a new window like before the upgrade. Can someone help me with that? Thanks!!
    • By AntS
      Help! The mouse clicks I'm sending to a control on a dialog box produce no response.
      The dialog box in question handles advanced display properties. The tab page my script interacts with is created by Trident Microsystems. It allows the user to enhance or attenuate the screen's RGB values. (See image.) My script automates the process of changing these in order to adjust the screen's hue or, when the red, green and blue values are all the same, the brightness.
      Producing a script to change the brightness has been quite straightforward. I use ControlClick() to send a mouse click to one of the trackbars on the right of the tab page. By default, they're linked and so move as one. The difficulty I'm having however is in automating the process when the desired red, green and blue values aren't the same as each other.
      Ordinarily, there are three ways of doing this: 
      (1) clear the Link check box to unlink the three trackbars then either click on each trackbar or drag their sliders,
      (2) clear the Link tick-box then for each colour, click on the corresponding trackbar slider (to select it) then click on a point on the graph, and
      (3) click on the Load button to open an Open dialog box and load a preset (stored as a .gam file).
      However, when ControlClick() is used to clear the Link check box or to push the Load button, nothing happens. Making the dialog box the active window makes no difference.
      The AutoIt Window Info tool indicates that the Reload a Bitmap, Save, Load and Reset buttons, the Link check box and the graph are all the same control. (See other images.) In fact, it there are only four controls on the page: the tab page, which is an instance of a SysTabControl32 class, and the three trackbars, each of which is an instance of the TridentTrackBar class. (Am unsure whether the SysTabControl32 class is a Windows or third-party control.)
      What's the solution?
      Note that the MouseClick() function—as opposed to ControlClick()—does work, but having AutoIt commandeer the screen pointer isn't an acceptable solution.
      For the sake of completeness, here's the relevant code fragment for the Link check box. 
      ;unlink trackbars WinActivate("(Multiple Monitors)") ControlClick("(Multiple Monitors)", "", 12320, "left", 1, 211, 252)  

    • By JAPP
      This is just a small script I wrote several years ago that I use to quickly set up the output of my master Yamaha keyboard. I have several different types and pieces of hardware that I occasionally send MIDI output to - depending on what I'm playing with at the time. It is a simple program  (I'm not a programmer) that needs more comments. Just thought I'd post it on the forum on the off chance someone was interested in taking a look. My many thanks to all those who have taken the time to post their work/code/ideas and observations for both MIDI and programming in general . Without it I would never have gotten this far.
    • By Cengokill
      Hi everyone,
      I have created a ListView that is in a tab, and I want to display an image in that tab, with the ListView on top.
      However, the image still appears on top of my ListView.
      If I remove the tabs everything works. 
      I looked at the autoit documentation and the <GuiListView.au3> documentation , I can't figure out how to display a background image, and put on top a ListView, inside a tab. 😥
      Here is the code:
      Opt("GUIOnEventMode", 1) $Form1 = GUICreate($Titre, 700, 627, $Form1Width, $Form1Height); main window $tabulation = GUICtrlCreateTab(148,0,700,580); creating tabs $tab1=GUICtrlCreateTabItem("Tab 1"); first tab GUICtrlSetState(-1, $GUI_SHOW); this tab is selected by default $Pic1 = GUICtrlCreatePic("image.jpg", 0, 30, 700, 627) GUICtrlSetState(-1, $GUI_DISABLE). $idListview = GUICtrlCreateListView("list 1|list 2|list 3", 200, 50, 390, 200) GUISetState(@SW_SHOW) While 1     Sleep(100) WEnd Thank you in advance.

    • By Blois
      Hi Guis,
      I need to create keyboard shortcut to navigate the tabs and activate them, but I could not use the code below:
      #include <TabConstants.au3> #include <WindowsConstants.au3> #include <GuiTab.au3> #include <GUIConstantsEx.au3> HotKeySet("^{TAB}", "_TabRight") HotKeySet("^+{TAB}", "_TabLeft") $gui = GUICreate("test",450, 300) $Tab1 = GUICtrlCreateTab(20, 24, 425, 201) $TabSheet1 = GUICtrlCreateTabItem("Tabsheet 1") $lbContagemGrupos2 = GUICtrlCreateLabel("aaaa", 50, 50) GUICtrlSetColor(-1, 0x0000FF) GUICtrlCreateTabItem("") $TabSheet2 = GUICtrlCreateTabItem(" ") $TabSheet3 = GUICtrlCreateTabItem(" ") GUISetState() While 1 Switch GUIGetMsg() Case $GUI_EVENT_CLOSE ExitLoop EndSwitch WEnd Func _TabRight() $CurPos = _GUICtrlTab_GetCurSel($Tab1) _GUICtrlTab_SetCurSel($Tab1, $CurPos + 1) $tab = "$TabSheet" & $CurPos GUICtrlSetState($TabSheet1 + $CurPos, $GUI_SHOW) Return EndFunc Func _TabLeft() $CurPos = _GUICtrlTab_GetCurSel($Tab1) _GUICtrlTab_SetCurSel($Tab1, $CurPos - 1) $tab = "$TabSheet" & $CurPos GUICtrlSetState($TabSheet1 + $CurPos, $GUI_SHOW) Return EndFunc Exit  
      can you help me?
  • Create New...