Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Oct 02 10:42
    JanVeb commented #1239
  • Oct 02 10:41
    JanVeb commented #1239
  • Oct 01 12:45
    sschmidTU commented #1239
  • Oct 01 12:45
    sschmidTU commented #1239
  • Oct 01 12:44
    sschmidTU commented #1239
  • Oct 01 12:43
    sschmidTU commented #1239
  • Oct 01 12:43
    sschmidTU commented #1239
  • Oct 01 12:40
    JanVeb commented #1239
  • Oct 01 12:39
    JanVeb commented #1239
  • Oct 01 09:53
    sschmidTU commented #1246
  • Oct 01 09:53
    sschmidTU commented #1246
  • Oct 01 09:51
    sschmidTU edited #1246
  • Oct 01 09:43
    rvilarl closed #1246
  • Oct 01 09:43
    rvilarl commented #1246
  • Oct 01 09:30
    sschmidTU commented #1246
  • Oct 01 09:27
    rvilarl commented #1246
  • Oct 01 08:59
    sschmidTU commented #1246
  • Oct 01 08:59
    sschmidTU commented #1246
  • Oct 01 08:48
    rvilarl commented #1246
  • Oct 01 06:58
    rvilarl opened #1246
rvilarl
@rvilarl
Please ignore the last comment I was using 1.2.93 with native vexflow. I will post this issue in vexflow.
By the way the fix #971 makes the Prelude in E Minor from Chopin look much better, thank you!
Simon
@sschmidTU
yes, that was bugging me as well, glad to hear, my pleasure :)
rvilarl
@rvilarl
Hi Simon, I have made a pull request with the multiple cursors. First time I do that with Github, hopefully fine. If you like the proposal I will look into fixing the testing.
rvilarl
@rvilarl
I have fixed the testing and eslint issues :)
Simon
@sschmidTU
nice! will take a look at it asap.
rvilarl
@rvilarl
Hi, is the lack of pedal marks a matter of priority or a matter of complexity
Simon
@sschmidTU
it's probably rather priority. I just saw that Vexflow does support pedal marks, even in 1.2.93, for some reason i wasn't sure about that.
But yes, pedal marks would be great to implement, and probably not too difficult.
The only big problem might be avoiding collisions with other elements, since it crowds the score even more. So we might need to improve our positioning / collision detection system to avoid those.
rvilarl
@rvilarl
Where should I find the pedals within OpenSheetMusicDisplay class?
Simon
@sschmidTU
there are no pedals / pedal marks in OSMD yet
rvilarl
@rvilarl
So they are not even read from MusicXML files? It is not only a problem of rendering, right?
Simon
@sschmidTU
yes, we don't need to read them if we don't render them. but reading them would be very easy.
rvilarl
@rvilarl
Hi Simon, I am sure that it is easy, but a hint on a similar change would help me. I had been debuging MusicSheetReader and I got to the specific direction "pedal" but I do not have a clue where to place the information within OpenSheetMusicDisplay, and this is just reading.
phamconganh
@phamconganh
@sschmidTU how to getNoteHeadBeginX and getNoteHeadEndX and getBoundingBox or other position properties
as in vexflow, we can get all of them inside note, but osmd can't get them
phamconganh
@phamconganh
image.png
@sschmidTU can i get Size and Position of VerticalGraphicStaffEntryContainer and each of its childrent
Simon
@sschmidTU
@phamconganh you can get graphicalnote.PositionAndShape.AbsolutePosition.x and PositionAndShape.Size.
@rvilarl not enough information, not sure what you're doing or trying to do.
Simon
@sschmidTU
the xml reading code for pedals should probably be in InstrumentReader, similar to octave-shift maybe.
Simon
@sschmidTU
or similar to expressions (forte etc), though the expressions code is a bit complex
phamconganh
@phamconganh
@sschmidTU can we check the left-hand note or right-hand note in a vertical staff entry in the piano score?
phamconganh
@phamconganh
image.png
@sschmidTU can you export some class like in line 2 and 3 in the next release for ts?
Simon
@sschmidTU
i'll add the MusicParts classes to the exports, next osmd release coming very soon anyways.
Regarding your first question, you can check (graphicalStaffEntry.)sourceStaffEntry.parentStaff.id or parentStaff.parentInstrument.nameLabel.text.
Simon
@sschmidTU
@phamconganh the exports are now added in osmd 0.9.5, just released :)
phamconganh
@phamconganh
@sschmidTU I get all visiable piano voice entries in iterator.CurrentVoiceEntries by method CurrentVisibleVoiceEntries, but it return the first voice entry. So I rewrite to get all voice entries in instrument piano. But I can't get any properties to check left hand or right hand voice.
Simon
@sschmidTU
@phamconganh have you tried voiceEntry.ParentSourceStaffEntry.ParentStaff.Id?
phamconganh
@phamconganh
@sschmidTU you mean id 1 for the right hand and id 2 for the left hand?
Simon
@sschmidTU
for example
phamconganh
@phamconganh
image.png
in a staffEntry, I get this. The first id = 1, and the second id = 2
image.png
Hallvord R. M. Steen
@hallvors
Hi, I attempted to upgrade OSMD to 0.9.5 and I'm seeing some unexpected behaviour that I think is new (but I'm not 100% certain). I think I happened to be on 0.8.7 before.
I'm trying to render MXML data to SVG with OSMD, go through the DOM and add some data-* attributes to some of the SVG elements, and then immediately serialise with .outerHTML. The bug I'm struggling with is that sometimes the data-* attributes are present in the output - and sometimes they are NOT. There's some race condition involved, probably, but I can't tell what is causing it..
The render() call is entirely synchronous, right? It is not having side-effects that show up later? Because it seems a bit like OSMD somehow does another render() pass or something, and re-creates the SVG elements without my custom attributes. But how can it possibly do that when this is all one long sync thread? This problem is weird :/
Simon
@sschmidTU
yeah there sometimes seem to be weird conditions where render seems to be called multiple times. are you using a similar index.js as in our demo? have you tried deactivating / not using autoResize?
and yes render is synchronous
not sure what the relevant changes from 0.8.7 onwards could be
Hallvord R. M. Steen
@hallvors
I re-tested with 0.8.7 and it happened there too, apparently I just haven't tested enough to see it before. The IDs of the vf-stavenote elements change, so it's definitely a re-render. I'll try turning autoResize off - thanks for that tip :)
Seems to work better without autoResize! Maybe JSDOM isn't as synchronous as it should be? :)
Thanks A LOT (again) for that tip. No idea how much time I would have spent debugging this otherwise..
phamconganh
@phamconganh
@sschmidTU in the sheet which has multiple instruments, can't we show one instrument system and hide other instruments? It would be great if we learn the single instrument and in the playback options we can turn on or turn off other instruments' sounds (as a member of the symphony).
Simon
@sschmidTU

hallvors, glad that seems to be the solution!

@phamconganh yes you can. osmd.sheet.Instruments[1].Visible = false before render.

Hallvord R. M. Steen
@hallvors
How is the better cursor implementation doing? I have been trying to implement one and it mostly works..mostly :)
Hallvord R. M. Steen
@hallvors

I sometimes see this:

TypeError: this.vfnote is undefined
    getSVGGElement opensheetmusicdisplay.min.js:1

when calling ... graphicalVoiceEntries[l].notes[m].getSVGGElement() - is this expected?

Hallvord R. M. Steen
@hallvors
This seems to happen on collapsed multi-measure pauses ^.
Simon
@sschmidTU
what do you mean, better cursor implementation? if you mean multiple cursors, that's still an open PR
hmm never seen that before
oh yeah
multi-measures don't have notes, so avoid checking cursor notes there