Tool for converting sheet music to IFR notation

Hi everyone, @jessevoostrum that looks fantastic!

Unfortunately, I don’t understand how to handle the files downloaded from your github page. I have downloaded all the folders, have installed the latest version of python.
Then I open python and try to file, enter the commands you have given in your explanation, but python isn’t happy😂 and gives a bunch of error messages.

Should I move your folders inside the python folders, what am I doing wrong?
If anybody has an answer, your help would be much appreciated​:pray::wink:

@Olivvier Did you also add matplotlib & music21 using pip? I had to do web search to find out how to do that…

Hi all,
I am currently working on a web application to convert the sheets online, so that people don’t have to do any installations themselves. It is still under development but for the people who would already like to give it a try you can do so here:
it is important to note that only files with the extension .musicxml can be uploaded. if it is not yet in this format you can do so with e.g. musescore.
Please let me know if you run into any problems using the website.

PS @DavidW is there a way to edit my first message to incorporate this information, and maybe also my contact details and donation link? I actually created a new email address to contact me:

1 Like

@jessevoostrum I’ve made an “Edit To Add” addition to the top post to mention this development with a link direct to this post. How’s that?

1 Like

Hi, thanks for the reply, no i didn’t. I must confess that I did everything in “survival mode” , I didn’t really understand what was doing and hoped for the best😂. I’ll try that out!

By the way, do you know if the “melody path” visualisation has been implemented in the current version?

hi @Olivvier,
did you see my earlier comment on the existence of a web application for converting sheets? for people without programming knowledge, I would recommend first giving this a try. I plan to make this soon more advanced so that there is also optionality for the melody paths, etc.

In case you still would like to try to run the code yourself, I have updated the instruction on github, which hopefully make the installation process easier. Let me know how it goes.

Thank you! there is actually more edits I would like to make, since for example now it is also not necessary any more to download the github repository, since I now created a pypi package called integerbook and can simply use the script.
PS is there also a way of contacting you directly, (like a private message or email) so that I don’t have to clutter the conversation with questions about the forum itself.

See PM (that I’m about to write…)

Thank you very much for your response, I will try it out.
I look forward to try to do the installation of the program when I’ll be back at my place after the holidays.

Happy Easter to you

Hi Jesse,

thanks again for your excellent work with your tool for converting sheet music to ifr notation!
I’m currently using the IFR notation to teach melodies/improv/comping to my guitar students with huge results (not to mention that I am learning a lot too with that approach!)
Just to let you know, I have tried your web application, managed to create musicxml files properly with Musescore to get a good IFR lead sheet, that’s perfect!

On the python side, on the other hand, I keep trying to make it work, but even if I did some C++ programming back in the day, it’s really cumbersome for me, so I will have to investigate further to find out how it works (I’m not asking you to explain me further, don’t get me wrong, it’s my job to find out :wink: ).

I really hope to find how to work out the melody paths in order to implement that into the lead sheets.

By the way, I have one question: how does your tool handle upper extensions of the chords in the melody paths, does it include the added note, i.e. CMaj9 = 1 3 5 7 2’ (or 1 2 3 5 7)?

1 Like

update on webapp

I have just updated the webapp so that custom settings can be chosen for conversion (including melody paths, etc. ). Also my personal collection of musicxml files can now be used for conversion with custom settings.

update on melody paths / plotting chord tones

I have now made the plotting the chord tones so that the when there is no melody printed the lowest and the highest note is both the “1”. When the melody is printed the lowest and highest chord tone are simply determined by the lowest and highest melody tone.

By the way, I have one question: how does your tool handle upper extensions of the chords in the melody paths, does it include the added note, i.e. CMaj9 = 1 3 5 7 2’ (or 1 2 3 5 7)?

@Olivvier in both cases the ninth will be printed as (1, 2, 3, 5, 7)

1 Like

Hi @jessevoostrum, thank you for your response.

I’ve checked the updated online tool out and just wanted to give you some feedback. All functions seem to work, except for the “Show Chord notes”, which never seem to appear whatever the selections are.

With the following setting, (where I get the closest to what I look for):


The output looks like this:

I’ve noticed that:

  • if I click on “bass line: no” it shows me some additional unwanted vertical lines
  • if I click on “lyrics: yes/no” it shows the lyrics in both cases
  • if I click on “chord progression: yes/no” it shows only the chord progression notes in red, without melody in both cases

Hi @Olivvier, thanks a lot for the feedback. There was indeed some unexpected behaviour in the program. All the points you mentioned should be fixed now.

Hooray, thank you @jessevoostrum, it works perfectly fine now!

I hope that it’s possible to keep it accessible… forever :joy:! If not, if one day you plan to do a standalone *.exe file, i wouldn’t mind to pay some money for it.

Have a nice day

1 Like

Dear Jesse (and all)
I tried the new configuration and I am unable to use this as the server is down. I second Olivvier…a stand-alone would be perfect…and of course we will help supporting this great effort

1 Like

Hi all,
If I am correct, the website should be working again.

There seemed to be some kind of error with memory usage on the server, which was hard to trace. I now increased the size of the server the application is running on. I am not sure if this is a permanent fix or just temporary, so please let me know as soon as you experience any problems, then I will look into them.

FYI: for now I will focus my efforts on creating a useful web application and do not plan to make a standalone version of it in the foreseeable future. I however do also not plan to take down the website so hopefully that is an acceptable compromise :slight_smile:

1 Like

@jessevoostrum I wonder if that was the cause of some issues I had trying to run the app a week or two ago with ‘Jesu Joy of Man’s Desiring’? I could run a chart for a simple selection of options, but adding more would cause a long runtime followed by a server error. Using the same options with a simpler tune was okay. Perhaps the server was just running out of resources with Jesu Joy?

Perhaps you could test with that tune?

Thank you for the suggestion. I was also trying to follow similar trails before, but then I noticed that even whilst trying the exact same song with the exact same settings, I would sometimes get an error and sometimes not. It is still not entirely clear to me how this can happen but increasing the memory at least seemed to have solved it for now, and hopefully for good.

Hi all,
In the background I am still working on improving the web application. The website is no longer available under the old link I sent, but instead can be found here:

and here:

hopefully soon, I will write an update with the improvements and new functionality I implemented.


1 Like

This thread is continued here: