Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Midi to guitar tab #4

Open
aminya opened this issue Oct 16, 2019 · 3 comments
Open

Midi to guitar tab #4

aminya opened this issue Oct 16, 2019 · 3 comments
Labels
enhancement New feature or request

Comments

@aminya
Copy link
Member

aminya commented Oct 16, 2019

Implementing a midi to guitar tab converter would be very nice and useful.

Doing a quick search, there are some repositories in other languages that do this.
https://github.com/search?q=midi+to+guitar+tab

Among those
https://github.com/ianbacus/midi-and-guitar-tabs/tree/master/tabber
and
https://github.com/vipul-sharma20/tayuya
seem interesting to start from, as they have a logic to decide among many possibilities.

There are also https://github.com/musescore/MuseScore/blob/ab87985c7f556591382e6dcaa7a29e652cd27f35/libmscore/stringdata.cpp
and
https://github.com/phiresky/tuxguitar/blob/master/TuxGuitar-midi-input/src/org/herac/tuxguitar/midiinput/MiProvider.java
and
https://rdrr.io/cran/tabr/

@Datseris
Copy link
Member

This is a great suggestion! In general higher-level functionality, including plotting of notes on a pianoroll like cubase, or printing them into stuff, is implemented in MusicManipulations.jl instead. So I think this should also be implemented there.

Unortunately I wont have time to do this, and as of now I am the only maintainer of JuliaMusic. That's why I added "Help Wanted".

@Datseris
Copy link
Member

BTW There may be an option to do this immediatelly with MuseScore via command line. (see musescore in the JuliaMusic documentation)

@aminya
Copy link
Member Author

aminya commented Oct 16, 2019

The actual midi to tab conversion and logic of deciding optimized fret positions is a very interesting topic. Here is an interesting article on it: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.648.3871&rep=rep1&type=pdf

Edit:
I created the MusicXML package!

https://github.com/aminya/MusicXML.jl

I don't know this package much yet, however, I think if we can get the data, printing it shouldn't be hard. Probably it is crucial to make a music XML file for the long run if we want to have full support for visualization.

  • I don't think it is hard to make a better Tab for Music XML. We can use MIDI generated by this package and convert it to the music XML (using Musescore or some other tool). Then either generate a simple XML object for tab manually or get help from one of the XML packages like EzXML

Other possible solutions:

https://musescore.org/en/handbook/3/command-line-options#MIDI_import_operations
I don't find any options for the tab here. I have contacted the developers regarding this
I am interested in developing if you invite me to JuliaMusic. I can help create a MusicXML package with writing feature which is compatible with MIDI.jl. However, first I need to get more familiar with MIDI.jl.

@aminya aminya transferred this issue from JuliaMusic/MIDI.jl Oct 24, 2019
@aminya aminya added the enhancement New feature or request label Nov 4, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants