audiveris
audiveris copied to clipboard
provide "Selection of elements to be recognized" (proposal)
I'd like to propose some general settings that allow to reduce false recognition of certain elements in a score:
- detect lyrics (on/off) (instrument scores normally have no lyrics)
- lyrics: amount of verses (preset: 1)
- lyrics: detect lyrics above staff, too (on/off) (esp. for 2 voices in a staff)
- nr. of voices per staff (preset: 1)
- note heads: detect small heads
- detect articulations (on/off)
- detect fingering digits (on/off)
- detect chord names (on/off)
A comment concerning the item "nr. of voices": It should be available individually per staff. If it is set to 1, it tries to set all notes to one voice. But in case that the notation needs 2 voices (because there is e.g. a quarter and an half note at the same tick), the program extends to 2 voices anyway. So normally e.g. piano scores can be analysed with setting "1" for nr. of voices.
If a value higher than 2 is selected then simply put notes of each chord to the voices: top note -> voice1, next -> voice2,...
@Bacchushlg I am implementing these "selection switches" with a hierarchy of scopes: (default, book, sheet, staff?).
However, I don't really know how to address your items 2 (lyrics: amount of verses) and 4 (nr. of voices per staff). Hence, I propose to postpone these 2 items until we have more time to think about them.
I'm continuing with the other items, (plus OCR languages and binarization parameters)
Fine. The features concerning single staffs should probably be postponed in the moment, I assume...
Just to clarify the 2 referenced items:
- lyrics (amount of verses): if there are 2 lines of text, they are exported as 2 verses. Unfortunately sometimes there is only one "real" verse, but the programm detects 2 (or even more) because they are not properly aligned.
- nr. of voices per staff: This applies to the notes and shall help to avoid additional voices be generated in the rhythm analysis. But by the time passed I think that what we really need here is a possibility to re-arrange the rhythm by the user. There are really sometime scores where it is almost impossible to detect the correct rhythm automatically - but it would help to let the user correct it manually...
So: I'm just happy that you include those items from the list that can be "simple" included in the moment.
Done via commit fa887f5e574adaee7f9df87a98574277c3771f5b
Note these switches govern only the automatic processing by the OMR engine. A user is always allowed to manually assign any shape (regardless of these processing switches).
For clarity, I have slighty modified the semantics of 2 switches:
- lyrics: are lyrics supported (but not above the staff)
- lyricsAboveStaff: are lyrics supported, even above the staff
Can we close this issue?
I think there is missing a final detail: the lyrics is detected and properly assigned to the voice. What is missing is the flag that the lyrics line shall appear above the score. In MuseScore the flag is "below" or "above" for lyrics
We already have this:
Is this different?
Yes, I have activated this flag. The detection is fine.
What is missing is the handling in the export: when opening the mxl file with MuseScore, I get two lines below, not one above and one below:
I don't fully trust Musescore layout. Could you check with Finale?
Have you checked the .mxl file itself? I don't have an immediate example with lyrics above, but here is one with lyrics below (see the placement attribute):
<lyric number="1" default-y="-76" placement="below">
<syllabic>single</syllabic>
<text>chooka</text>
</lyric>
It seems that MuseScore has a problem with properly importing the placement. I have exported the - corrected - score (with lyrics above) to mxl and re-imported... ...and voila: the lyrics are back in placement below.
So forget about this - it's a MuseScore problem.