Processing HarmonicTable 01

UPDATE: This is no longer the latest version, I fixed some bugs for Mac users and reposted. To get the latest version click here.

Since I don’t have a touchscreen to test this with, I’m releasing the 01 version with mouse functionality, along with a few GUI functions to change the midi out port and the starting note number. At some point I’ll get a tablet and add the touchscreen functionality, or if someone has a tablet I can pass the source code on and they can test/implement that functionality.

harmonictable011

There are two tabs at the top, one for the main table screen, and one for setup. The basic setup options at this time are midi ports and starting note values.

This was built using the Processing libraries, along with the ControlP5 library and Ruin & Wesen’s rwmidi library for midi functionality.

This is an executable jar, meaning if you have java installed on your machine (version 6), you should be able to double-click it and you’re off and running. I have only tested this on Windows and Linux, so if there are any Mac users out there, please let me know if there are any problems.

Download HarmonicTable 01

If you have any questions or comments, leave them in the section below.

  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • email
  • StumbleUpon
  • Ping.fm
  • Twitter
This entry was posted in Harmonic Table and tagged , , . Bookmark the permalink.

9 Responses to Processing HarmonicTable 01

  1. Keith says:

    I was attempting to run your JAR on Mac OS X 10.5.5 and got the following error-

    1/7/09 4:10:08 PM [0x0-0x91091].com.apple.JarLauncher[9290] Exception in thread “main”
    1/7/09 4:10:08 PM [0x0-0x91091].com.apple.JarLauncher[9290] java.lang.UnsupportedClassVersionError: Bad version number in .class file
    1/7/09 4:10:08 PM [0x0-0x91091].com.apple.JarLauncher[9290] at java.lang.ClassLoader.defineClass1(Native Method)
    1/7/09 4:10:08 PM [0x0-0x91091].com.apple.JarLauncher[9290] at java.lang.ClassLoader.defineClass(ClassLoader.java:675)
    1/7/09 4:10:08 PM [0x0-0x91091].com.apple.JarLauncher[9290] at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
    1/7/09 4:10:08 PM [0x0-0x91091].com.apple.JarLauncher[9290] at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
    1/7/09 4:10:08 PM [0x0-0x91091].com.apple.JarLauncher[9290] at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
    1/7/09 4:10:08 PM [0x0-0x91091].com.apple.JarLauncher[9290] at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
    1/7/09 4:10:08 PM [0x0-0x91091].com.apple.JarLauncher[9290] at java.security.AccessController.doPrivileged(Native Method)
    1/7/09 4:10:08 PM [0x0-0x91091].com.apple.JarLauncher[9290] at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    1/7/09 4:10:08 PM [0x0-0x91091].com.apple.JarLauncher[9290] at java.lang.ClassLoader.loadClass(ClassLoader.java:316)
    1/7/09 4:10:08 PM [0x0-0x91091].com.apple.JarLauncher[9290] at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:280)
    1/7/09 4:10:08 PM [0x0-0x91091].com.apple.JarLauncher[9290] at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
    1/7/09 4:10:08 PM [0x0-0x91091].com.apple.JarLauncher[9290] at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:374)

  2. Patrick says:

    works on OS X 10.5.6, just make sure that Jave SE 6 (64bit) is your preferred java in the java preference pane.

    One thing I noticed though, if you hold your mouse button down, you cannot arpeggiate notes that have already been triggered…in other words, you cannot start at A, go to D, then G and back to D without having to release and click again.

    Thanks

  3. Vcon says:

    Using mac os x.5, I get: The Java JAR file “harmonictable.jar” could not be launched.

  4. Grant,

    With 1.6 installed on my MacBook Pro, it would not run from the regular jar launcher (that is it wouldn’t launch by double clicking it through the finder) as the Mac installs 1.6 but still defaults to 1.5 (which is lame). This doesn’t work under 1.5

    If I open up the console (terminal) and navigate to my download directory, I can type in the following command to run the app:

    /System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Commands/java -jar ./harmonictable.jar

    This method works fine. :)

    It seems to work fine with the following caveats:

    (1) The real-time sequencer does not work (I can’t get any sound). I do get sound with the Java Sound Synthesizer though.

    (2) I have no idea what this is supposed to do other than play notes, so I don’t know if I’m using it correctly. :)

    Thanks!

  5. gmuller says:

    To all Mac users, I’ll try to get this tested properly in your environment and see what I can do!

    @Keith and vcon: This is probably a problem with your java version on the Mac…see the Posts from Michael and Patrick and see if they help – just make sure that Jave SE 6 (64bit) is your preferred java in the java preference pane.

    @Patrick, you’ve pointed out a bug it looks like! I think its an intentional one, but I need to create two modes…one so that it will not arpeggiate notes and one so that it will, I’ll just make it an option on the setup screen. I did this so that chords would sound if I played them in little rings with the mouse, and would not duplicate notes when dragging.

    @Michael Riecken – You might look at Patrick’s post to see if thats an easier way to start it. I use a lot of the Java 6 features, so its not compatible with java 5. I’ll see what I can do about the Real Time sequencer. All this does is play notes…so you ARE using it correctly.

  6. gmuller says:

    Ok Mac people, I released a new version that should fix all the stuff you mentioned. You can find it here:

    http://www.grantmuller.com/processing-harmonictable-02/

    As usual let me know if there is something wrong

  7. Pingback: Geometría armónica | the dimeBag

  8. Hello Grant,
    tested V02 on mac os 10.4.11, routing the notes to a midi track in live, via the IAC driver. It works perfectly, had some fun drawing patterns with a graphic table.
    I add a really small issue when I opened midi game of life at the same time, that I was using with its IAC driver. Probably a conflict, since I add to quit both apps to make one work properly.
    You have designed a really beautiful piece of software… making c-thru’s device kind of even more desirable.
    I was thinking : could you design a V03 with the ability to draw shape moves on the table, re-play the patterns, including some cellular automation ? (I’m a dreamer).
    Thanx so much to share you work.

    • gmuller says:

      I think I might need to put an exception wrapper around opening midi ports (probably a conflict with the other program). I will look into that.

      Those are REALLY great suggestions for stuff to add! I am going to release a version 03 next week with a chord mode feature and some performance fixes. The chord mode feature will let you play chord when you hit a key (probably allow the user to select from 9-18 chord shapes, minor, major, diminished, etc).

      I will look at the pattern memory feature for version 04, along with the automata feature. Thanks for the suggestions!

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>