musescore / musescore/MuseScore
Allow guitar string mapping with separate midi channels - make guitar tab accurate by specifying which string is played.
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 15.1k
- Forks
- 3.3k
- Avg merge
- 2d 2h
- Merged PRs (30d)
- 91
Description
Your idea
Midi files recorded via a midi guitar (e.g. yamaha ez-ag) or from guitar pro (?) assign notes to a particular channel based on which string is played. e.g. an 'A' played on the low E string is played on fret 5, whereas the same note played on the A string is played on fret 0 (open). The E string 'A' is recorded on midi channel 6, where as the A string 'A' is recorded on channel 5, to differentiate the strings. This means that all the information for correct finger accurate tablature is contained within the midi file.
Musescore currently has no way of using this information. Either the channels are imported separately and must be manually recombined, or all the channels are combined, and the correct fingering/string information is lost.
In the first case, combining six different staves is problematic and results in lost notes (musescore can only handle 4 voices). In the second case, Musecore guesses the tab from the actual note which often results in poor/impossible tablature and must be manually corrected.
It would be most helpful if we could assign a midi channel to each string on the tablature, and import midi files accordingly - either one string at a time, or in one go. As musescore seems to be 'notation first - tablature second' there may well be some issues in how the standard notation interprets the imported tab, but it shouldn't be insolvable e.g. have an option to ignore note overlaps so as to keep one voice on the standard notation.
screenshot showing midi guitar scale with notes on different strings assigned to different channels (colours)
desired formatting in musescore (manually entered)
importing the midi file to musescore 3 currently results in this
Problem to be solved
ability to import guitar midi files using correct string information
Prior art
No response
Additional context
No response
Checklist
- This request follows the guidelines for reporting issues
- I have verified that this feature request has not been logged before, by searching the issue tracker for similar requests
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the reported MIDI guitar import behavior described in the issue, comparing separate-channel and combined-channel imports with the attached examples. Trace the existing MIDI import path and tablature assignment behavior. Done means guitar MIDI channel assignments reliably preserve the intended string information without losing notes or producing unusable notation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- desktop
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100