-
Notifications
You must be signed in to change notification settings - Fork 9
[Question] Full measure 'info' and system break with every new <mDiv>? #43
Comments
From #52:
Ah, I see -- |
How would you render a multiple mdivs? Is there any VexFlow-related logic in there? If not, maybe Converter shouldn't deal with it. I'm just wondering myself. |
I was thinking of cases where you have parts of distinct musical pieces or movements on a single canvas, like at http://music-encoding.org/documentation/samples in the Vivaldi "Example of encoding multiple mdivs II". I have to admit I haven't been aware of the fact that rendering multiple |
I think at some point we will have to face scalability, especially in terms of canvas size. I have the suspicion that rendering several movements of a piece on a single canvas at one go will not be a real world scenario. Of course, a smaller fragment could still include the transition between movements, in which case an integrated mdiv handling could be a better solution... Or a middle layer that sits between our MeiDoc and the Converter. |
Converter.js
contains the (Boolean)pendingSectionBreak
object property; when it's true, full 'info' (key and clef signatures, meter) is added to the first measure of a new system, see https://github.com/TEI-Music-SIG/MEItoVexFlow/blob/master/src/Converter.js#L473-L478. This property is initially true and gets set to false every time full info is added to the first measure in a system. As a result, the first system in an MEI file has full info, all following systems don't.My question is: How should setting
pendingSectionBreak
true be triggered from the MEI code? Despite the name, I don't think<section>
is suitable to do this automatically, as an MEI section doesn't necessarily indicate the change of a musical section in the sense of a musical movement.<mDiv>
might be suitable; I think in many cases you would expect a new mDiv to start in a new system an have the full 'info'. To be on the safe side, you could trigger an mei2vf section break with every new mDiv by default, but add a general config option to turn this behavior on/off.The text was updated successfully, but these errors were encountered: