Musescore 3 internal audio structure

Updated 1 year ago

    Hierarchy

    • Score(Full or excerpts(aka File>Parts))
      • Parts
        • Instruments
          • Channels

    Example 3 parts score

    Horn in F parts[0] .longName
    +Horn in F p.instruments[0] .longName
    ++open p.i.channel[0] .name, .mute, .volume etc
    ++mute p.i.channel[1]
    Piano parts[1]
    +Piano p.instruments[0]
    ++normal p.i.channel[0]
    Violin parts[2]
    +Violin p.instruments[0]
    ++Vln. arco p.i.channel[0]
    ++Vln. pizzicato p.i.channel[1]
    ++Vln. tremolo p.i.channel[2]

    ways to get Part

    element(eg Note/Chord/Segment) .staff.part
    curScore.parts
    score.excerpts[].parts see this post

    part.midichannel vesus instrument.channel

    To mute an instrument without affecting others, use the instrument.channel.mute
    TLDR
    Musescore 3 use one IAC port in MIDI Output. Not to be confused with the Port in Mixer, that Port works internally. See this post
    part.midichannel refers to one of 16 MIDI Output channels, these channels are not exclusive to one sound patch, different MIDI patches may be used in same channel using MIDI BANK SELECT internally when using >16 sounds. if you know src plz add link
    instrument.channel refers to internal channel and one sound, same as defined in instruments.xml, eg buildin violin has 3 channels: arco, pizz, tremolo.

    most properties of Part and Instrument are read only eg cannot set longName

    if you know how to set longName or why disabled plz add