How to get better on the drums using Julia (ANN: JuliaMusic + LOGO CONTEST!)

Hi All,

so I made a youtube video about how I use Julia to get better on the drums. You can find it here:

With this opportunity let me also announce the JuliaMusic organization, which now is working on Julia0.7 and has an online documentation here: Introduction · JuliaMusic

We have very good support for MIDI data and some other things like making random sequences of motifs (which I use in the video as well).

We are still logo-less. This can’t stay like this!!! I am therefore posting this as a LOGO CONTEST AS WELL!!! I hope the big guns like e.g. @cormullion participate… :wink:

Lastly, I am looking for a way to be able to print music score on staff directly from a command from Julia. Anybody has any ideas how I can achieve such a thing?

17 Likes

For printed scores, Lilypond is a great option.

3 Likes

Thanks David.

Yeah lilypond was one of my considerations, but I decided that in the end the by far best approach is something that takes MIDI files as inputs and spits out the score as output.

Lilypondwould require me to write a “translator” from the MIDI representation in Julia to this LaTeX style of Lilypond, and I think this extra step shouldn’t happen since MIDI already has the necessary musical information.

EDIT: The last part doesn’t have to happen: LilyPond Application Usage: 4.3.1 Invoking midi2ly

(You’re too nice to me, George!) The first idea that springs to mind is:

09

A bit plain and ordinary, but it seems logical.

Theme and variations (in color):

juliamusiccolorvariations-400

You might be looking for something a bit higher tech, I suppose.

If you turned your pendulum upside down, you could have a chaotic metronome… :wink:

7 Likes

This is super amazing actually and was also what I wanted to do by myself.

Only two requests: 1) white background, 2) put the characteristic 3 on top of the beam (as if it’s a triplet!)

lol :smiley:

I also think the white background would be nice.

Yes, you’re right, of course. I’m just like a kid playing with crayons… :slight_smile:

05

juliamusic

5 Likes

@dpsanders Using lilypond has some serious drawbacks but I’ve made it work directly through Julia!!!

Here is the snippet (requires master on MusicManipulations for now)

using MIDI, MusicManipulations

midi = readMIDIfile(testmidi())

cd("C:\\Users\\datseris\\Desktop")

run(`pwd`)

bass = getnotes(midi, 3)
grid = [0, 1//3, 2//3, 1]
grid = [0, 1//4, 2//4, 3//4, 1]

bass = quantize(bass, grid)

writeMIDIfile("test.mid", bass)

midi2ly = "C:\\Program Files (x86)\\LilyPond\\usr\\bin\\midi2ly.py"
isfile(midi2ly)


midiname = "test"
tolily = `python $(midi2ly) -x --allow-tuplet=8*1/3  $(midiname).mid -o $(midiname).ly`
run(tolily)

topng = `lilypond --format=png $(midiname).ly`
run(topng)

I can’t get the triplets to work. In their documentation they say

 -t, --allow-tuplet=DUR*NUM/DEN

    Allow tuplet durations DUR*NUM/DEN.

But they give absolutely no example or what DUR should be, like ticks or whatever. Do you have any ideas?

The other problem is that this relies on calling a veeeery old python 2.4 version code to do the conversion to lilypond format files. And this code is extremely complicated for me to convert… :frowning: I’ll look more into it during my holidays I guess. Anyone who is a good python user willing to move this code to Julia? Or at least Python 3 :smiley: :smiley: :smiley:

Perhaps removing the horizontal lines and the border could make this cleaner without (much) loss of meaning?

By horizontal lines you mean the staff lines?.. Because I think those are not only super cool but also pretty important :wink:

Yes, a good logo always involves compromising between an accurate, faithful representation of the intended concept, and the application of good visual design principles (good contrast, simple and recognizable shapes that work in color, grayscale or black and white, as well as from very large to very small sizes, etc.)

In this case I believe the staff lines may (and the border certainly does) stand on the dispensable side of the scale. But this is my humble layman opinion, of course :slight_smile:

Yes, agreed, it’s always better to refine and simplify one’s first attempts. It’s hard to stand out from a crowded field though… :slight_smile:

2 Likes

Well, it’s obvious from @cormullion’s sampling of note logos: if you want the JuliaMusic logo to stand out you just have to go with 64th notes! :wink:

1 Like

Have you looked at Musescore it allows midi file importing, I’m not an expert but it might be worthwile looking at it, it is free and available for most platforms.

Yeah I know it, in fact I use it in the video clip I posted! It is really good, veeeery good stuff. But the problem is that I have not found a way to run it from command line or something like that. So it is not possible to use it through Julia yet.

Hi George,

  I did see the start of your video after I sent in the message.

Have you seen this entry in the online handbook it may have
something useful:

Regards

Jeremy

or make it a 3 note chord

Hey Jeremy, I think a link may be missing from your message?

Hi George,

Sorry about that, it’s still on my reply but I’ll paste it again:

Hopefully it’s okay this time as it’s just plain text now.

  If this fails, open MuseScore then in "help" tab "Online Handbook" then  search for "command line" at the bottom select next and the click "command line options".

You can also download a pdf copy of the handbook, probably a good idea anyway, and go to page 232.

Hope it works this time.

Regards

Jeremy
1 Like

Hi George,
Just checking to see how you got on, and yet again the link has been removed from my email. So let’s give it another go.

Regards
Jeremy

1 Like