Compare commits

...

18 Commits

Author SHA1 Message Date
Alexander Pavlov fe7ec74794
Merge pull request #20035 from alexpavlov96/gp_hammeron_chord_stable
gp-converter: not importing extra H/P text on chords
2023-11-16 02:09:29 +09:00
Alexander Pavlov 2eee279e9b gp-converter: not importing extra H/P text on chords 2023-11-16 02:08:40 +09:00
Alexander Pavlov 26cb3fa6ea
Merge pull request #19894 from alexpavlov96/fix_build
fixed build after cherry-picking commit
2023-11-01 13:38:57 +09:00
Alexander Pavlov ed23911dbd fixed build after cherry-picking commit 2023-11-01 13:37:12 +09:00
Alexander Pavlov 81a28b6359
Merge pull request #19892 from alexpavlov96/XTC-286_heavy_accent
gp-import: fixed duration of heavy accented note
2023-11-01 11:32:19 +09:00
Alexander Pavlov 2ef57ef9c9 gp-import: fixed duration of heavy accented note 2023-11-01 11:31:22 +09:00
Alexander Pavlov 39e4fbc0a9
Merge pull request #19886 from alexpavlov96/XTC-285_harmonic_ties
not layouting ties for harmonic notes on tab staff
2023-10-31 23:12:28 +09:00
Alexander Pavlov 863647655c not layouting ties for harmonic notes on tab staff 2023-10-31 23:11:13 +09:00
mikekirin a5a1b3606f
Added default value to _stretch to avoid divsion by zero (#19613) 2023-10-04 18:41:11 +02:00
mikekirin ef4254185b
Changed perc 3 lines staff props (#19583) 2023-10-02 13:23:13 +02:00
Alexander Pavlov 60e2e7c987
Merge pull request #19551 from alexpavlov96/accidental_fixes
Accidental fixes
2023-09-28 14:31:23 +03:00
Eism 753be2fca2 fixed #19374: Fixed the layout for accidentals in palette 2023-09-28 14:20:18 +03:00
Eism 16b004aae6 fixed #19501: Fixed the layout for accidental
see 81269faed5
2023-09-28 14:19:24 +03:00
mikekirin f1633fa75c
Added drum instrument for pitch 92 (#19543) 2023-09-28 12:54:38 +02:00
Alexander Pavlov 15396644fe
Merge pull request #19529 from alexpavlov96/XTC-226_crash_fix
check for nullptr in LD_CONDITION
2023-09-26 12:23:28 +03:00
Alexander Pavlov 48c04faa57 check for nullptr in LD_CONDITION 2023-09-26 12:18:50 +03:00
Alexander Pavlov 51b2063944
Merge pull request #19518 from alexpavlov96/XTC-216_letring_slide
midi-renderer: fixed slide/glissando sound with let ring
2023-09-25 16:56:05 +03:00
Alexander Pavlov 0f2b91c9c9 midi-renderer: fixed slide/glissando sound with let ring 2023-09-25 16:50:47 +03:00
241 changed files with 1877 additions and 264 deletions

View File

@ -79,6 +79,7 @@ using namespace mu::engraving;
namespace mu::engraving {
static PitchWheelSpecs wheelSpec;
static int LET_RING_MAX_TICKS = Constants::DIVISION * 16;
struct CollectNoteParams {
double velocityMultiplier = 1.;
@ -139,6 +140,19 @@ bool isGlissandoFor(const Note* note)
return false;
}
//---------------------------------------------------------
// Detects if a note is an end of a glissando
//---------------------------------------------------------
bool isGlissandoBack(const Note* note)
{
for (Spanner* spanner : note->spannerBack()) {
if (spanner->type() == ElementType::GLISSANDO) {
return true;
}
}
return false;
}
static void collectGlissando(int channel, MidiInstrumentEffect effect,
int onTime, int offTime,
int pitchDelta,
@ -325,6 +339,23 @@ static void collectBend(const PitchValues& playData, staff_idx_t staffIdx,
pitchWheelRenderer.addPitchWheelFunction(func, channel, staffIdx, effect);
}
static bool letRingShouldApply(const NoteEvent& event, const Note* note)
{
if (note->hasSlideFromNote()) {
return false;
}
if (isGlissandoBack(note)) {
return true;
}
if (event.slide() || isGlissandoFor(note)) {
return false;
}
return true;
}
//---------------------------------------------------------
// collectNote
//---------------------------------------------------------
@ -400,8 +431,11 @@ static void collectNote(EventsHolder& events, const Note* note, const CollectNot
off += tieLen;
}
if (noteParams.letRingNote) {
if (noteParams.letRingNote && letRingShouldApply(e, note)) {
off = std::max(off, noteParams.endLetRingTick);
if (off - on > LET_RING_MAX_TICKS) {
off = on + LET_RING_MAX_TICKS;
}
}
}

View File

@ -124,7 +124,7 @@ public:
std::vector<Sym> syms;
bool isValid() const { return !syms.empty(); }
bool isValid() const override { return EngravingItem::LayoutData::isValid() && !syms.empty(); }
};
DECLARE_LAYOUTDATA_METHODS(Accidental);

View File

@ -500,7 +500,7 @@ public:
//m_pos.reset();
}
bool isValid() const { return m_bbox.has_value(); }
virtual bool isValid() const { return m_bbox.has_value(); }
bool isSkipDraw() const { return m_isSkipDraw; }
void setIsSkipDraw(bool val) { m_isSkipDraw = val; }

View File

@ -3239,7 +3239,7 @@ void Measure::stretchToTargetWidth(double targetWidth)
double springConst = 1 / s.stretch();
double width = s.width(LD_ACCESS::BAD) - s.widthOffset();
double preTension = width * springConst;
springs.push_back(Spring(springConst, width, preTension, &s));
springs.emplace_back(springConst, width, preTension, &s);
}
}
Segment::stretchSegmentsToWidth(springs, targetWidth - width());

View File

@ -90,7 +90,7 @@ class Segment final : public EngravingItem
Fraction _tick; // { Fraction(0, 1) };
Fraction _ticks; // { Fraction(0, 1) };
Spatium _extraLeadingSpace;
double _stretch;
double _stretch = 1.;
double _widthOffset = 0.0; // part of the segment width that will not be stretched during system justification
Segment* _next = nullptr; // linked list of segments inside a measure

View File

@ -1191,7 +1191,7 @@ void StaffType::initStaffTypes()
StaffType(StaffGroup::STANDARD, u"stdNormal", mtrc("engraving", "Standard"), 5, 0, 1, true, true, false, true, true, true, false, engravingConfiguration()->defaultColor()),
StaffType(StaffGroup::PERCUSSION, u"perc1Line", mtrc("engraving", "Perc. 1 line"), 1, 0, 1, true, true, false, true, false, true, false, engravingConfiguration()->defaultColor()),
StaffType(StaffGroup::PERCUSSION, u"perc2Line", mtrc("engraving", "Perc. 2 lines"), 2, 0, 1, true, true, false, true, false, true, false, engravingConfiguration()->defaultColor()),
StaffType(StaffGroup::PERCUSSION, u"perc3Line", mtrc("engraving", "Perc. 3 lines"), 3, 0, 2, true, true, false, true, false, true, false, engravingConfiguration()->defaultColor()),
StaffType(StaffGroup::PERCUSSION, u"perc3Line", mtrc("engraving", "Perc. 3 lines"), 3, 0, 1, true, true, false, true, false, true, false, engravingConfiguration()->defaultColor()),
StaffType(StaffGroup::PERCUSSION, u"perc5Line", mtrc("engraving", "Perc. 5 lines"), 5, 0, 1, true, true, false, true, false, true, false, engravingConfiguration()->defaultColor()),
// group xml-name, human-readable-name lin stpOff dist clef bars stemless time invis color duration font size off genDur fret font size off duration symbol repeat thru minim style onLin rests stmDn stmThr upsDn sTFing nums bkTied

View File

@ -992,14 +992,25 @@ void SlurTieLayout::fixArticulations(Slur* item, PointF& pt, Chord* c, double up
// layout the first SpannerSegment of a slur
//---------------------------------------------------------
static bool tieSegmentShouldBeSkipped(Tie* item)
{
Note* startNote = item->startNote();
StaffType* st = item->staff()->staffType(startNote ? startNote->tick() : Fraction(0, 1));
if (!st || !st->isTabStaff()) {
return false;
}
return !st->showBackTied() || (startNote && startNote->harmonic());
}
TieSegment* SlurTieLayout::tieLayoutFor(Tie* item, System* system)
{
// do not layout ties in tablature if not showing back-tied fret marks
StaffType* st = item->staff()->staffType(item->startNote() ? item->startNote()->tick() : Fraction(0, 1));
if (st && st->isTabStaff() && !st->showBackTied()) {
if (tieSegmentShouldBeSkipped(item)) {
if (!item->segmentsEmpty()) {
item->eraseSpannerSegments();
}
return nullptr;
}
//
@ -1013,6 +1024,7 @@ TieSegment* SlurTieLayout::tieLayoutFor(Tie* item, System* system)
Chord* c1 = item->startNote()->chord();
item->setTick(c1->tick());
if (item->slurDirection() == DirectionV::AUTO) {
StaffType* st = item->staff()->staffType(item->startNote() ? item->startNote()->tick() : Fraction(0, 1));
bool simpleException = st && st->isSimpleTabStaff();
if (st && st->isSimpleTabStaff()) {
item->setUp(isUpVoice(c1->voice()));
@ -1073,11 +1085,11 @@ TieSegment* SlurTieLayout::tieLayoutFor(Tie* item, System* system)
TieSegment* SlurTieLayout::tieLayoutBack(Tie* item, System* system)
{
// do not layout ties in tablature if not showing back-tied fret marks
StaffType* st = item->staff()->staffType(item->startNote() ? item->startNote()->tick() : Fraction(0, 1));
if (st->isTabStaff() && !st->showBackTied()) {
if (tieSegmentShouldBeSkipped(item)) {
if (!item->segmentsEmpty()) {
item->eraseSpannerSegments();
}
return nullptr;
}

View File

@ -1925,10 +1925,10 @@ void TLayout::layout(const Fermata* item, Fermata::LayoutData* ldata, const Layo
const Segment* s = item->segment();
const EngravingItem* e = s->element(item->track());
LD_CONDITION(e->layoutData()->isSetBbox()); // e->shape()
LD_CONDITION(e->layoutData()->isSetPos());
if (e) {
LD_CONDITION(e->layoutData()->isSetBbox()); // e->shape()
LD_CONDITION(e->layoutData()->isSetPos());
if (e->isChord()) {
const Chord* chord = toChord(e);
x = chord->x() + chord->centerX();
@ -4266,7 +4266,10 @@ void TLayout::layoutRehearsalMark(const RehearsalMark* item, RehearsalMark::Layo
// align to a point just after the header
EngravingItem* e = header->element(item->track());
LD_CONDITION(e->layoutData()->isSetBbox());
if (e) {
LD_CONDITION(e->layoutData()->isSetBbox());
}
LD_CONDITION(header->layoutData()->isSetBbox());
double w = e ? e->layoutData()->bbox().width() : header->layoutData()->bbox().width();

View File

@ -267,7 +267,7 @@ compat::DummyElement* SingleLayout::Context::dummyParent() const
void SingleLayout::layout(Accidental* item, const Context&)
{
if (!item->layoutData()) {
if (!item->layoutData() || !item->layoutData()->isValid()) {
Accidental::LayoutData* ldata = item->mutLayoutData();
SymId symId = item->symId();
Accidental::LayoutData::Sym s(symId, 0.0, 0.0);

View File

@ -0,0 +1,339 @@
<?xml version="1.0" encoding="UTF-8"?>
<museScore version="4.10">
<programVersion>4.2.0</programVersion>
<programRevision></programRevision>
<Score>
<Division>480</Division>
<showInvisible>1</showInvisible>
<showUnprintable>1</showUnprintable>
<showFrames>1</showFrames>
<showMargins>0</showMargins>
<open>1</open>
<metaTag name="arranger"></metaTag>
<metaTag name="composer"></metaTag>
<metaTag name="copyright"></metaTag>
<metaTag name="creationDate">2023-09-19</metaTag>
<metaTag name="lyricist"></metaTag>
<metaTag name="movementNumber"></metaTag>
<metaTag name="movementTitle"></metaTag>
<metaTag name="originalFormat">gp</metaTag>
<metaTag name="platform">Apple Macintosh</metaTag>
<metaTag name="poet"></metaTag>
<metaTag name="source"></metaTag>
<metaTag name="translator"></metaTag>
<metaTag name="workNumber"></metaTag>
<metaTag name="workTitle"></metaTag>
<Part id="1">
<Staff id="1">
<linkedTo>2</linkedTo>
<StaffType group="pitched">
<name>stdNormal</name>
</StaffType>
</Staff>
<Staff id="2">
<linkedTo>1</linkedTo>
<StaffType group="tablature">
<name>tab6StrSimple</name>
<lines>6</lines>
<lineDistance>1.5</lineDistance>
<slashStyle>1</slashStyle>
<stemless>1</stemless>
<timesig>0</timesig>
<durations>0</durations>
<durationFontName>MuseScore Tab Modern</durationFontName>
<durationFontSize>15</durationFontSize>
<durationFontY>0</durationFontY>
<fretFontName>MuseScore Tab Sans</fretFontName>
<fretFontSize>9</fretFontSize>
<fretFontY>0</fretFontY>
<linesThrough>0</linesThrough>
<minimStyle>0</minimStyle>
<onLines>1</onLines>
<showRests>0</showRests>
<stemsDown>1</stemsDown>
<stemsThrough>0</stemsThrough>
<upsideDown>0</upsideDown>
<useNumbers>1</useNumbers>
</StaffType>
</Staff>
<trackName>Nylon Guitar</trackName>
<Instrument id="cavaquinho">
<longName>Nylon Guitar</longName>
<shortName>n.guit.</shortName>
<trackName></trackName>
<transposeDiatonic>-7</transposeDiatonic>
<transposeChromatic>-12</transposeChromatic>
<instrumentId>pluck.guitar</instrumentId>
<singleNoteDynamics>0</singleNoteDynamics>
<StringData>
<frets>24</frets>
<string>52</string>
<string>57</string>
<string>62</string>
<string>67</string>
<string>71</string>
<string>76</string>
</StringData>
<Articulation name="staccatissimo">
<velocity>100</velocity>
<gateTime>30</gateTime>
</Articulation>
<Articulation name="staccato">
<velocity>100</velocity>
<gateTime>50</gateTime>
</Articulation>
<Articulation name="portato">
<velocity>100</velocity>
<gateTime>67</gateTime>
</Articulation>
<Articulation name="tenuto">
<velocity>100</velocity>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="accent">
<velocity>120</velocity>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>
<gateTime>100</gateTime>
</Articulation>
<Channel>
<program value="24"/>
<controller ctrl="7" value="95"/>
<synti>Fluid</synti>
</Channel>
</Instrument>
</Part>
<Staff id="1">
<Measure>
<voice>
<KeySig>
<linkedMain/>
<concertKey>0</concertKey>
</KeySig>
<TimeSig>
<sigN>4</sigN>
<sigD>4</sigD>
</TimeSig>
<Dynamic>
<subtype>mf</subtype>
<velocity>80</velocity>
</Dynamic>
<Tempo>
<tempo>2</tempo>
<text><sym>metNoteQuarterUp</sym> = 120</text>
</Tempo>
<Spanner type="LetRing">
<LetRing>
<linkedMain/>
</LetRing>
<next>
<location>
<fractions>3/4</fractions>
</location>
</next>
</Spanner>
<Chord>
<linkedMain/>
<durationType>quarter</durationType>
<Spanner type="Slur">
<Slur>
<linkedMain/>
</Slur>
<next>
<location>
<fractions>1/4</fractions>
</location>
</next>
</Spanner>
<Note>
<linkedMain/>
<pitch>69</pitch>
<tpc>17</tpc>
<fret>10</fret>
<string>1</string>
<Spanner type="Glissando">
<Glissando>
<linkedMain/>
<diagonal>1</diagonal>
<anchor>3</anchor>
</Glissando>
<next>
<location>
<fractions>1/4</fractions>
</location>
</next>
</Spanner>
</Note>
</Chord>
<Chord>
<linkedMain/>
<durationType>quarter</durationType>
<Spanner type="Slur">
<prev>
<location>
<fractions>-1/4</fractions>
</location>
</prev>
</Spanner>
<Note>
<linkedMain/>
<Accidental>
<subtype>accidentalSharp</subtype>
</Accidental>
<pitch>66</pitch>
<tpc>20</tpc>
<fret>7</fret>
<string>1</string>
<Spanner type="Glissando">
<prev>
<location>
<fractions>-1/4</fractions>
</location>
</prev>
</Spanner>
</Note>
</Chord>
<Chord>
<linkedMain/>
<durationType>quarter</durationType>
<Note>
<linkedMain/>
<pitch>60</pitch>
<tpc>14</tpc>
<fret>5</fret>
<string>2</string>
</Note>
</Chord>
<Spanner type="LetRing">
<prev>
<location>
<fractions>-3/4</fractions>
</location>
</prev>
</Spanner>
<Rest>
<linkedMain/>
<durationType>quarter</durationType>
</Rest>
</voice>
</Measure>
</Staff>
<Staff id="2">
<Measure>
<voice>
<KeySig>
<linked>
</linked>
<concertKey>0</concertKey>
</KeySig>
<Spanner type="LetRing">
<LetRing>
<linked>
</linked>
</LetRing>
<next>
<location>
<fractions>3/4</fractions>
</location>
</next>
</Spanner>
<Chord>
<linked>
</linked>
<durationType>quarter</durationType>
<Spanner type="Slur">
<Slur>
<linked>
</linked>
</Slur>
<next>
<location>
<fractions>1/4</fractions>
</location>
</next>
</Spanner>
<Note>
<linked>
</linked>
<pitch>69</pitch>
<tpc>17</tpc>
<fret>10</fret>
<string>1</string>
<Spanner type="Glissando">
<Glissando>
<linked>
</linked>
<diagonal>1</diagonal>
<anchor>3</anchor>
</Glissando>
<next>
<location>
<fractions>1/4</fractions>
</location>
</next>
</Spanner>
</Note>
</Chord>
<Chord>
<linked>
</linked>
<durationType>quarter</durationType>
<Spanner type="Slur">
<prev>
<location>
<fractions>-1/4</fractions>
</location>
</prev>
</Spanner>
<Note>
<linked>
</linked>
<pitch>66</pitch>
<tpc>20</tpc>
<fret>7</fret>
<string>1</string>
<Spanner type="Glissando">
<prev>
<location>
<fractions>-1/4</fractions>
</location>
</prev>
</Spanner>
</Note>
</Chord>
<Chord>
<linked>
</linked>
<durationType>quarter</durationType>
<Note>
<linked>
</linked>
<pitch>60</pitch>
<tpc>14</tpc>
<fret>5</fret>
<string>2</string>
</Note>
</Chord>
<Spanner type="LetRing">
<prev>
<location>
<fractions>-3/4</fractions>
</location>
</prev>
</Spanner>
<Rest>
<linked>
</linked>
<durationType>quarter</durationType>
</Rest>
</voice>
</Measure>
</Staff>
</Score>
</museScore>

View File

@ -0,0 +1,581 @@
<?xml version="1.0" encoding="UTF-8"?>
<museScore version="4.10">
<programVersion>4.2.0</programVersion>
<programRevision></programRevision>
<Score>
<Division>480</Division>
<showInvisible>1</showInvisible>
<showUnprintable>1</showUnprintable>
<showFrames>1</showFrames>
<showMargins>0</showMargins>
<open>1</open>
<metaTag name="arranger"></metaTag>
<metaTag name="composer"></metaTag>
<metaTag name="copyright"></metaTag>
<metaTag name="creationDate">2023-09-19</metaTag>
<metaTag name="lyricist"></metaTag>
<metaTag name="movementNumber"></metaTag>
<metaTag name="movementTitle"></metaTag>
<metaTag name="originalFormat">gp</metaTag>
<metaTag name="platform">Apple Macintosh</metaTag>
<metaTag name="poet"></metaTag>
<metaTag name="source"></metaTag>
<metaTag name="translator"></metaTag>
<metaTag name="workNumber"></metaTag>
<metaTag name="workTitle"></metaTag>
<Part id="1">
<Staff id="1">
<linkedTo>2</linkedTo>
<StaffType group="pitched">
<name>stdNormal</name>
</StaffType>
</Staff>
<Staff id="2">
<linkedTo>1</linkedTo>
<StaffType group="tablature">
<name>tab6StrSimple</name>
<lines>6</lines>
<lineDistance>1.5</lineDistance>
<slashStyle>1</slashStyle>
<stemless>1</stemless>
<timesig>0</timesig>
<durations>0</durations>
<durationFontName>MuseScore Tab Modern</durationFontName>
<durationFontSize>15</durationFontSize>
<durationFontY>0</durationFontY>
<fretFontName>MuseScore Tab Sans</fretFontName>
<fretFontSize>9</fretFontSize>
<fretFontY>0</fretFontY>
<linesThrough>0</linesThrough>
<minimStyle>0</minimStyle>
<onLines>1</onLines>
<showRests>0</showRests>
<stemsDown>1</stemsDown>
<stemsThrough>0</stemsThrough>
<upsideDown>0</upsideDown>
<useNumbers>1</useNumbers>
</StaffType>
</Staff>
<trackName>Electric Guitar</trackName>
<Instrument id="electric-guitar">
<longName>Electric Guitar</longName>
<shortName>od.guit.</shortName>
<trackName></trackName>
<transposeDiatonic>-7</transposeDiatonic>
<transposeChromatic>-12</transposeChromatic>
<instrumentId>pluck.guitar.electric</instrumentId>
<singleNoteDynamics>0</singleNoteDynamics>
<StringData>
<frets>24</frets>
<string>52</string>
<string>57</string>
<string>62</string>
<string>67</string>
<string>71</string>
<string>76</string>
</StringData>
<Articulation name="staccatissimo">
<velocity>100</velocity>
<gateTime>30</gateTime>
</Articulation>
<Articulation name="staccato">
<velocity>100</velocity>
<gateTime>50</gateTime>
</Articulation>
<Articulation name="portato">
<velocity>100</velocity>
<gateTime>67</gateTime>
</Articulation>
<Articulation name="tenuto">
<velocity>100</velocity>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="accent">
<velocity>120</velocity>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>
<gateTime>100</gateTime>
</Articulation>
<Channel>
<program value="29"/>
<controller ctrl="7" value="101"/>
<synti>Fluid</synti>
<midiPort>0</midiPort>
<midiChannel>2</midiChannel>
</Channel>
</Instrument>
</Part>
<Staff id="1">
<Measure>
<voice>
<KeySig>
<linkedMain/>
<concertKey>0</concertKey>
</KeySig>
<TimeSig>
<sigN>4</sigN>
<sigD>4</sigD>
</TimeSig>
<Dynamic>
<subtype>mf</subtype>
<velocity>80</velocity>
</Dynamic>
<Tempo>
<tempo>2.5</tempo>
<text><sym>metNoteQuarterUp</sym> = 150</text>
</Tempo>
<Spanner type="LetRing">
<LetRing>
<linkedMain/>
</LetRing>
<next>
<location>
<measures>5</measures>
<fractions>1/1</fractions>
</location>
</next>
</Spanner>
<Chord>
<linkedMain/>
<durationType>whole</durationType>
<Note>
<linkedMain/>
<Spanner type="Tie">
<Tie>
<linkedMain/>
</Tie>
<next>
<location>
<measures>1</measures>
</location>
</next>
</Spanner>
<pitch>69</pitch>
<tpc>17</tpc>
<fret>10</fret>
<string>1</string>
</Note>
</Chord>
<BarLine>
<linkedMain/>
</BarLine>
</voice>
</Measure>
<Measure>
<voice>
<Chord>
<linkedMain/>
<durationType>whole</durationType>
<Note>
<linkedMain/>
<Spanner type="Tie">
<Tie>
<linkedMain/>
</Tie>
<next>
<location>
<measures>1</measures>
</location>
</next>
</Spanner>
<Spanner type="Tie">
<prev>
<location>
<measures>-1</measures>
</location>
</prev>
</Spanner>
<pitch>69</pitch>
<tpc>17</tpc>
<fret>10</fret>
<string>1</string>
</Note>
</Chord>
<BarLine>
<linkedMain/>
</BarLine>
</voice>
</Measure>
<Measure>
<voice>
<Chord>
<linkedMain/>
<durationType>whole</durationType>
<Note>
<linkedMain/>
<Spanner type="Tie">
<Tie>
<linkedMain/>
</Tie>
<next>
<location>
<measures>1</measures>
</location>
</next>
</Spanner>
<Spanner type="Tie">
<prev>
<location>
<measures>-1</measures>
</location>
</prev>
</Spanner>
<pitch>69</pitch>
<tpc>17</tpc>
<fret>10</fret>
<string>1</string>
</Note>
</Chord>
<BarLine>
<linkedMain/>
</BarLine>
</voice>
</Measure>
<Measure>
<voice>
<Chord>
<linkedMain/>
<durationType>whole</durationType>
<Note>
<linkedMain/>
<Spanner type="Tie">
<Tie>
<linkedMain/>
</Tie>
<next>
<location>
<measures>1</measures>
</location>
</next>
</Spanner>
<Spanner type="Tie">
<prev>
<location>
<measures>-1</measures>
</location>
</prev>
</Spanner>
<pitch>69</pitch>
<tpc>17</tpc>
<fret>10</fret>
<string>1</string>
</Note>
</Chord>
<BarLine>
<linkedMain/>
</BarLine>
</voice>
</Measure>
<Measure>
<voice>
<Chord>
<linkedMain/>
<durationType>whole</durationType>
<Note>
<linkedMain/>
<Spanner type="Tie">
<Tie>
<linkedMain/>
</Tie>
<next>
<location>
<measures>1</measures>
</location>
</next>
</Spanner>
<Spanner type="Tie">
<prev>
<location>
<measures>-1</measures>
</location>
</prev>
</Spanner>
<pitch>69</pitch>
<tpc>17</tpc>
<fret>10</fret>
<string>1</string>
</Note>
</Chord>
<BarLine>
<linkedMain/>
</BarLine>
</voice>
</Measure>
<Measure>
<voice>
<Chord>
<linkedMain/>
<durationType>whole</durationType>
<Note>
<linkedMain/>
<Spanner type="Tie">
<prev>
<location>
<measures>-1</measures>
</location>
</prev>
</Spanner>
<pitch>69</pitch>
<tpc>17</tpc>
<fret>10</fret>
<string>1</string>
</Note>
</Chord>
<Spanner type="LetRing">
<prev>
<location>
<measures>-5</measures>
<fractions>-1/1</fractions>
</location>
</prev>
</Spanner>
</voice>
</Measure>
</Staff>
<Staff id="2">
<Measure>
<voice>
<KeySig>
<linked>
</linked>
<concertKey>0</concertKey>
</KeySig>
<Spanner type="LetRing">
<LetRing>
<linked>
</linked>
</LetRing>
<next>
<location>
<measures>5</measures>
<fractions>1/1</fractions>
</location>
</next>
</Spanner>
<Chord>
<linked>
</linked>
<durationType>whole</durationType>
<Note>
<linked>
</linked>
<Spanner type="Tie">
<Tie>
<linked>
</linked>
</Tie>
<next>
<location>
<measures>1</measures>
</location>
</next>
</Spanner>
<pitch>69</pitch>
<tpc>17</tpc>
<fret>10</fret>
<string>1</string>
</Note>
</Chord>
<BarLine>
<linked>
</linked>
</BarLine>
</voice>
</Measure>
<Measure>
<voice>
<Chord>
<linked>
</linked>
<durationType>whole</durationType>
<Note>
<linked>
</linked>
<Spanner type="Tie">
<Tie>
<linked>
</linked>
</Tie>
<next>
<location>
<measures>1</measures>
</location>
</next>
</Spanner>
<Spanner type="Tie">
<prev>
<location>
<measures>-1</measures>
</location>
</prev>
</Spanner>
<pitch>69</pitch>
<tpc>17</tpc>
<fret>10</fret>
<string>1</string>
</Note>
</Chord>
<BarLine>
<linked>
</linked>
</BarLine>
</voice>
</Measure>
<Measure>
<voice>
<Chord>
<linked>
</linked>
<durationType>whole</durationType>
<Note>
<linked>
</linked>
<Spanner type="Tie">
<Tie>
<linked>
</linked>
</Tie>
<next>
<location>
<measures>1</measures>
</location>
</next>
</Spanner>
<Spanner type="Tie">
<prev>
<location>
<measures>-1</measures>
</location>
</prev>
</Spanner>
<pitch>69</pitch>
<tpc>17</tpc>
<fret>10</fret>
<string>1</string>
</Note>
</Chord>
<BarLine>
<linked>
</linked>
</BarLine>
</voice>
</Measure>
<Measure>
<voice>
<Chord>
<linked>
</linked>
<durationType>whole</durationType>
<Note>
<linked>
</linked>
<Spanner type="Tie">
<Tie>
<linked>
</linked>
</Tie>
<next>
<location>
<measures>1</measures>
</location>
</next>
</Spanner>
<Spanner type="Tie">
<prev>
<location>
<measures>-1</measures>
</location>
</prev>
</Spanner>
<pitch>69</pitch>
<tpc>17</tpc>
<fret>10</fret>
<string>1</string>
</Note>
</Chord>
<BarLine>
<linked>
</linked>
</BarLine>
</voice>
</Measure>
<Measure>
<voice>
<Chord>
<linked>
</linked>
<durationType>whole</durationType>
<Note>
<linked>
</linked>
<Spanner type="Tie">
<Tie>
<linked>
</linked>
</Tie>
<next>
<location>
<measures>1</measures>
</location>
</next>
</Spanner>
<Spanner type="Tie">
<prev>
<location>
<measures>-1</measures>
</location>
</prev>
</Spanner>
<pitch>69</pitch>
<tpc>17</tpc>
<fret>10</fret>
<string>1</string>
</Note>
</Chord>
<BarLine>
<linked>
</linked>
</BarLine>
</voice>
</Measure>
<Measure>
<voice>
<Chord>
<linked>
</linked>
<durationType>whole</durationType>
<Note>
<linked>
</linked>
<Spanner type="Tie">
<prev>
<location>
<measures>-1</measures>
</location>
</prev>
</Spanner>
<pitch>69</pitch>
<tpc>17</tpc>
<fret>10</fret>
<string>1</string>
</Note>
</Chord>
<Spanner type="LetRing">
<prev>
<location>
<measures>-5</measures>
<fractions>-1/1</fractions>
</location>
</prev>
</Spanner>
</voice>
</Measure>
</Staff>
</Score>
</museScore>

View File

@ -0,0 +1,273 @@
<?xml version="1.0" encoding="UTF-8"?>
<museScore version="4.10">
<programVersion>4.2.0</programVersion>
<programRevision></programRevision>
<Score>
<Division>480</Division>
<showInvisible>1</showInvisible>
<showUnprintable>1</showUnprintable>
<showFrames>1</showFrames>
<showMargins>0</showMargins>
<open>1</open>
<metaTag name="arranger"></metaTag>
<metaTag name="composer"></metaTag>
<metaTag name="copyright"></metaTag>
<metaTag name="creationDate">2023-09-19</metaTag>
<metaTag name="lyricist"></metaTag>
<metaTag name="movementNumber"></metaTag>
<metaTag name="movementTitle"></metaTag>
<metaTag name="originalFormat">gp</metaTag>
<metaTag name="platform">Apple Macintosh</metaTag>
<metaTag name="poet"></metaTag>
<metaTag name="source"></metaTag>
<metaTag name="translator"></metaTag>
<metaTag name="workNumber"></metaTag>
<metaTag name="workTitle"></metaTag>
<Part id="1">
<Staff id="1">
<linkedTo>2</linkedTo>
<StaffType group="pitched">
<name>stdNormal</name>
</StaffType>
</Staff>
<Staff id="2">
<linkedTo>1</linkedTo>
<StaffType group="tablature">
<name>tab6StrSimple</name>
<lines>6</lines>
<lineDistance>1.5</lineDistance>
<slashStyle>1</slashStyle>
<stemless>1</stemless>
<timesig>0</timesig>
<durations>0</durations>
<durationFontName>MuseScore Tab Modern</durationFontName>
<durationFontSize>15</durationFontSize>
<durationFontY>0</durationFontY>
<fretFontName>MuseScore Tab Sans</fretFontName>
<fretFontSize>9</fretFontSize>
<fretFontY>0</fretFontY>
<linesThrough>0</linesThrough>
<minimStyle>0</minimStyle>
<onLines>1</onLines>
<showRests>0</showRests>
<stemsDown>1</stemsDown>
<stemsThrough>0</stemsThrough>
<upsideDown>0</upsideDown>
<useNumbers>1</useNumbers>
</StaffType>
</Staff>
<trackName>Nylon Guitar</trackName>
<Instrument id="cavaquinho">
<longName>Nylon Guitar</longName>
<shortName>n.guit.</shortName>
<trackName></trackName>
<transposeDiatonic>-7</transposeDiatonic>
<transposeChromatic>-12</transposeChromatic>
<instrumentId>pluck.guitar</instrumentId>
<singleNoteDynamics>0</singleNoteDynamics>
<StringData>
<frets>24</frets>
<string>52</string>
<string>57</string>
<string>62</string>
<string>67</string>
<string>71</string>
<string>76</string>
</StringData>
<Articulation name="staccatissimo">
<velocity>100</velocity>
<gateTime>30</gateTime>
</Articulation>
<Articulation name="staccato">
<velocity>100</velocity>
<gateTime>50</gateTime>
</Articulation>
<Articulation name="portato">
<velocity>100</velocity>
<gateTime>67</gateTime>
</Articulation>
<Articulation name="tenuto">
<velocity>100</velocity>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="accent">
<velocity>120</velocity>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>
<gateTime>100</gateTime>
</Articulation>
<Channel>
<program value="24"/>
<controller ctrl="7" value="95"/>
<synti>Fluid</synti>
</Channel>
</Instrument>
</Part>
<Staff id="1">
<Measure>
<voice>
<KeySig>
<linkedMain/>
<concertKey>0</concertKey>
</KeySig>
<TimeSig>
<sigN>4</sigN>
<sigD>4</sigD>
</TimeSig>
<Tempo>
<tempo>2</tempo>
<text><sym>metNoteQuarterUp</sym> = 120</text>
</Tempo>
<Rest>
<linkedMain/>
<durationType>quarter</durationType>
</Rest>
<Dynamic>
<subtype>mf</subtype>
<velocity>80</velocity>
</Dynamic>
<Spanner type="LetRing">
<LetRing>
<linkedMain/>
</LetRing>
<next>
<location>
<fractions>3/4</fractions>
</location>
</next>
</Spanner>
<Chord>
<linkedMain/>
<durationType>quarter</durationType>
<Note>
<linkedMain/>
<pitch>69</pitch>
<tpc>17</tpc>
<fret>10</fret>
<string>1</string>
<ChordLine>
<subtype>3</subtype>
<straight>1</straight>
<linkedMain/>
</ChordLine>
</Note>
</Chord>
<Chord>
<linkedMain/>
<durationType>quarter</durationType>
<Note>
<linkedMain/>
<pitch>67</pitch>
<tpc>15</tpc>
<fret>3</fret>
<string>0</string>
</Note>
</Chord>
<Chord>
<linkedMain/>
<durationType>quarter</durationType>
<Note>
<linkedMain/>
<pitch>62</pitch>
<tpc>16</tpc>
<fret>7</fret>
<string>2</string>
</Note>
</Chord>
<Spanner type="LetRing">
<prev>
<location>
<fractions>-3/4</fractions>
</location>
</prev>
</Spanner>
</voice>
</Measure>
</Staff>
<Staff id="2">
<Measure>
<voice>
<KeySig>
<linked>
</linked>
<concertKey>0</concertKey>
</KeySig>
<Rest>
<linked>
</linked>
<durationType>quarter</durationType>
</Rest>
<Spanner type="LetRing">
<LetRing>
<linked>
</linked>
</LetRing>
<next>
<location>
<fractions>3/4</fractions>
</location>
</next>
</Spanner>
<Chord>
<linked>
</linked>
<durationType>quarter</durationType>
<Note>
<linked>
</linked>
<pitch>69</pitch>
<tpc>17</tpc>
<fret>10</fret>
<string>1</string>
<ChordLine>
<subtype>3</subtype>
<straight>1</straight>
<linked>
</linked>
</ChordLine>
</Note>
</Chord>
<Chord>
<linked>
</linked>
<durationType>quarter</durationType>
<Note>
<linked>
</linked>
<pitch>67</pitch>
<tpc>15</tpc>
<fret>3</fret>
<string>0</string>
</Note>
</Chord>
<Chord>
<linked>
</linked>
<durationType>quarter</durationType>
<Note>
<linked>
</linked>
<pitch>62</pitch>
<tpc>16</tpc>
<fret>7</fret>
<string>2</string>
</Note>
</Chord>
<Spanner type="LetRing">
<prev>
<location>
<fractions>-3/4</fractions>
</location>
</prev>
</Spanner>
</voice>
</Measure>
</Staff>
</Score>
</museScore>

View File

@ -0,0 +1,273 @@
<?xml version="1.0" encoding="UTF-8"?>
<museScore version="4.10">
<programVersion>4.2.0</programVersion>
<programRevision></programRevision>
<Score>
<Division>480</Division>
<showInvisible>1</showInvisible>
<showUnprintable>1</showUnprintable>
<showFrames>1</showFrames>
<showMargins>0</showMargins>
<open>1</open>
<metaTag name="arranger"></metaTag>
<metaTag name="composer"></metaTag>
<metaTag name="copyright"></metaTag>
<metaTag name="creationDate">2023-09-19</metaTag>
<metaTag name="lyricist"></metaTag>
<metaTag name="movementNumber"></metaTag>
<metaTag name="movementTitle"></metaTag>
<metaTag name="originalFormat">gp</metaTag>
<metaTag name="platform">Apple Macintosh</metaTag>
<metaTag name="poet"></metaTag>
<metaTag name="source"></metaTag>
<metaTag name="translator"></metaTag>
<metaTag name="workNumber"></metaTag>
<metaTag name="workTitle"></metaTag>
<Part id="1">
<Staff id="1">
<linkedTo>2</linkedTo>
<StaffType group="pitched">
<name>stdNormal</name>
</StaffType>
</Staff>
<Staff id="2">
<linkedTo>1</linkedTo>
<StaffType group="tablature">
<name>tab6StrSimple</name>
<lines>6</lines>
<lineDistance>1.5</lineDistance>
<slashStyle>1</slashStyle>
<stemless>1</stemless>
<timesig>0</timesig>
<durations>0</durations>
<durationFontName>MuseScore Tab Modern</durationFontName>
<durationFontSize>15</durationFontSize>
<durationFontY>0</durationFontY>
<fretFontName>MuseScore Tab Sans</fretFontName>
<fretFontSize>9</fretFontSize>
<fretFontY>0</fretFontY>
<linesThrough>0</linesThrough>
<minimStyle>0</minimStyle>
<onLines>1</onLines>
<showRests>0</showRests>
<stemsDown>1</stemsDown>
<stemsThrough>0</stemsThrough>
<upsideDown>0</upsideDown>
<useNumbers>1</useNumbers>
</StaffType>
</Staff>
<trackName>Nylon Guitar</trackName>
<Instrument id="cavaquinho">
<longName>Nylon Guitar</longName>
<shortName>n.guit.</shortName>
<trackName></trackName>
<transposeDiatonic>-7</transposeDiatonic>
<transposeChromatic>-12</transposeChromatic>
<instrumentId>pluck.guitar</instrumentId>
<singleNoteDynamics>0</singleNoteDynamics>
<StringData>
<frets>24</frets>
<string>52</string>
<string>57</string>
<string>62</string>
<string>67</string>
<string>71</string>
<string>76</string>
</StringData>
<Articulation name="staccatissimo">
<velocity>100</velocity>
<gateTime>30</gateTime>
</Articulation>
<Articulation name="staccato">
<velocity>100</velocity>
<gateTime>50</gateTime>
</Articulation>
<Articulation name="portato">
<velocity>100</velocity>
<gateTime>67</gateTime>
</Articulation>
<Articulation name="tenuto">
<velocity>100</velocity>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="accent">
<velocity>120</velocity>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>
<gateTime>100</gateTime>
</Articulation>
<Channel>
<program value="24"/>
<controller ctrl="7" value="95"/>
<synti>Fluid</synti>
</Channel>
</Instrument>
</Part>
<Staff id="1">
<Measure>
<voice>
<KeySig>
<linkedMain/>
<concertKey>0</concertKey>
</KeySig>
<TimeSig>
<sigN>4</sigN>
<sigD>4</sigD>
</TimeSig>
<Dynamic>
<subtype>mf</subtype>
<velocity>80</velocity>
</Dynamic>
<Tempo>
<tempo>1</tempo>
<text><sym>metNoteQuarterUp</sym> = 60</text>
</Tempo>
<Spanner type="LetRing">
<LetRing>
<linkedMain/>
</LetRing>
<next>
<location>
<fractions>3/4</fractions>
</location>
</next>
</Spanner>
<Chord>
<linkedMain/>
<durationType>quarter</durationType>
<Note>
<linkedMain/>
<pitch>69</pitch>
<tpc>17</tpc>
<fret>10</fret>
<string>1</string>
<ChordLine>
<subtype>1</subtype>
<straight>1</straight>
<linkedMain/>
</ChordLine>
</Note>
</Chord>
<Chord>
<linkedMain/>
<durationType>quarter</durationType>
<Note>
<linkedMain/>
<pitch>52</pitch>
<tpc>18</tpc>
<fret>2</fret>
<string>3</string>
</Note>
</Chord>
<Chord>
<linkedMain/>
<durationType>quarter</durationType>
<Note>
<linkedMain/>
<pitch>50</pitch>
<tpc>16</tpc>
<fret>5</fret>
<string>4</string>
</Note>
</Chord>
<Spanner type="LetRing">
<prev>
<location>
<fractions>-3/4</fractions>
</location>
</prev>
</Spanner>
<Rest>
<linkedMain/>
<durationType>quarter</durationType>
</Rest>
</voice>
</Measure>
</Staff>
<Staff id="2">
<Measure>
<voice>
<KeySig>
<linked>
</linked>
<concertKey>0</concertKey>
</KeySig>
<Spanner type="LetRing">
<LetRing>
<linked>
</linked>
</LetRing>
<next>
<location>
<fractions>3/4</fractions>
</location>
</next>
</Spanner>
<Chord>
<linked>
</linked>
<durationType>quarter</durationType>
<Note>
<linked>
</linked>
<pitch>69</pitch>
<tpc>17</tpc>
<fret>10</fret>
<string>1</string>
<ChordLine>
<subtype>1</subtype>
<straight>1</straight>
<linked>
</linked>
</ChordLine>
</Note>
</Chord>
<Chord>
<linked>
</linked>
<durationType>quarter</durationType>
<Note>
<linked>
</linked>
<pitch>52</pitch>
<tpc>18</tpc>
<fret>2</fret>
<string>3</string>
</Note>
</Chord>
<Chord>
<linked>
</linked>
<durationType>quarter</durationType>
<Note>
<linked>
</linked>
<pitch>50</pitch>
<tpc>16</tpc>
<fret>5</fret>
<string>4</string>
</Note>
</Chord>
<Spanner type="LetRing">
<prev>
<location>
<fractions>-3/4</fractions>
</location>
</prev>
</Spanner>
<Rest>
<linked>
</linked>
<durationType>quarter</durationType>
</Rest>
</voice>
</Measure>
</Staff>
</Score>
</museScore>

View File

@ -569,6 +569,75 @@ TEST_F(MidiRenderer_Tests, letRingRepeat)
checkEventInterval(events, 6720, 7680, 64, defVol, false, DEFAULT_CHANNEL + 1);
}
TEST_F(MidiRenderer_Tests, letRingLong)
{
constexpr int defVol = 80; // mf
EventsHolder events = getNoteOnEvents(renderMidiEvents(u"letring_long.mscx", true, true));
EXPECT_EQ(events[DEFAULT_CHANNEL].size(), 2);
checkEventInterval(events, 0, 7680, 69, defVol, false, DEFAULT_CHANNEL);
}
TEST_F(MidiRenderer_Tests, slideInLetRing)
{
constexpr int defVol = 80; // mf
EventsHolder events = getNoteOnEvents(renderMidiEvents(u"slide_in_letring.mscx", true, true));
EXPECT_EQ(events.size(), 4);
EXPECT_EQ(events[DEFAULT_CHANNEL].size(), 2);
EXPECT_EQ(events[DEFAULT_CHANNEL + 1].size(), 6);
EXPECT_EQ(events[DEFAULT_CHANNEL + 2].size(), 2);
EXPECT_EQ(events[DEFAULT_CHANNEL + 3].size(), 2);
checkEventInterval(events, 420, 438, 72, defVol, true, DEFAULT_CHANNEL + 1);
checkEventInterval(events, 440, 458, 71, defVol, true, DEFAULT_CHANNEL + 1);
checkEventInterval(events, 460, 478, 70, defVol, true, DEFAULT_CHANNEL + 1);
checkEventInterval(events, 480, 1920, 69, defVol, false, DEFAULT_CHANNEL);
checkEventInterval(events, 960, 1920, 67, defVol, false, DEFAULT_CHANNEL + 2);
checkEventInterval(events, 1440, 1920, 62, defVol, false, DEFAULT_CHANNEL + 3);
}
TEST_F(MidiRenderer_Tests, slideOutLetRing)
{
constexpr int defVol = 80; // mf
EventsHolder events = getNoteOnEvents(renderMidiEvents(u"slide_out_letring.mscx", true, true));
EXPECT_EQ(events.size(), 4);
EXPECT_EQ(events[DEFAULT_CHANNEL].size(), 2);
EXPECT_EQ(events[DEFAULT_CHANNEL + 1].size(), 6);
EXPECT_EQ(events[DEFAULT_CHANNEL + 2].size(), 2);
EXPECT_EQ(events[DEFAULT_CHANNEL + 3].size(), 2);
checkEventInterval(events, 0, 419, 69, defVol, false, DEFAULT_CHANNEL);
checkEventInterval(events, 420, 438, 68, defVol, true, DEFAULT_CHANNEL + 1);
checkEventInterval(events, 439, 457, 67, defVol, true, DEFAULT_CHANNEL + 1);
checkEventInterval(events, 459, 477, 66, defVol, true, DEFAULT_CHANNEL + 1);
checkEventInterval(events, 480, 1440, 52, defVol, false, DEFAULT_CHANNEL + 2);
checkEventInterval(events, 960, 1440, 50, defVol, false, DEFAULT_CHANNEL + 3);
}
TEST_F(MidiRenderer_Tests, glissandoLetRing)
{
constexpr int defVol = 80; // mf
EventsHolder events = getNoteOnEvents(renderMidiEvents(u"glissando_letring.mscx", true, true));
EXPECT_EQ(events.size(), 3);
EXPECT_EQ(events[DEFAULT_CHANNEL].size(), 2);
EXPECT_EQ(events[DEFAULT_CHANNEL + 1].size(), 6);
EXPECT_EQ(events[DEFAULT_CHANNEL + 2].size(), 2);
checkEventInterval(events, 0, 320, 69, defVol, false, DEFAULT_CHANNEL);
checkEventInterval(events, 321, 399, 68, defVol, true, DEFAULT_CHANNEL + 1);
checkEventInterval(events, 400, 478, 67, defVol, true, DEFAULT_CHANNEL + 1);
checkEventInterval(events, 480, 1440, 66, defVol, true, DEFAULT_CHANNEL + 1);
checkEventInterval(events, 960, 1440, 60, defVol, false, DEFAULT_CHANNEL + 2);
}
TEST_F(MidiRenderer_Tests, slideToTiedNote)
{
constexpr int defVol = 96; // f

View File

@ -1287,6 +1287,7 @@ void GPConverter::addContinuousSlideHammerOn()
};
std::unordered_map<Note*, Slur*> legatoSlides;
std::unordered_set<Chord*> hammerOnInChord;
for (const auto& slide : _slideHammerOnMap) {
Note* startNote = slide.first;
Note* endNote = searchEndNote(startNote);
@ -1339,7 +1340,12 @@ void GPConverter::addContinuousSlideHammerOn()
// TODO-gp: implement for editing too. Now works just for import.
if (slide.second == SlideHammerOn::HammerOn) {
Measure* measure = startNote->chord()->measure();
Chord* startChord = startNote->chord();
if (hammerOnInChord.find(startChord) != hammerOnInChord.end()) {
continue;
}
Measure* measure = startChord->measure();
auto midTick = (startTick + endTick) / 2;
Segment* segment = measure->getSegment(SegmentType::ChordRest, midTick);
@ -1349,6 +1355,7 @@ void GPConverter::addContinuousSlideHammerOn()
staffText->setPlainText(hammerText);
staffText->setTrack(track);
segment->add(staffText);
hammerOnInChord.insert(startChord);
}
}
}

View File

@ -384,6 +384,7 @@ void GuitarPro::initGuitarProDrumset()
gpDrumset->drum(87) = DrumInstrument(TConv::userName(DrumNum(87)), NoteHeadGroup::HEAD_NORMAL, 3, DirectionV::UP);
gpDrumset->drum(91) = DrumInstrument(TConv::userName(DrumNum(91)), NoteHeadGroup::HEAD_DIAMOND, 3, DirectionV::UP);
gpDrumset->drum(92) = DrumInstrument(TConv::userName(DrumNum(46)), NoteHeadGroup::HEAD_CROSS, -1, DirectionV::UP);
gpDrumset->drum(93) = DrumInstrument(TConv::userName(DrumNum(93)), NoteHeadGroup::HEAD_CROSS, 0, DirectionV::UP);
//Additional clutch presets (midi by default can't play this)
@ -3354,7 +3355,7 @@ static Err importScore(MasterScore* score, mu::io::IODevice* io, bool experiment
MidiArticulation(u"portato", u"", 100, 67),
MidiArticulation(u"tenuto", u"", 100, 100),
MidiArticulation(u"accent", u"", 120, 100),
MidiArticulation(u"marcato", u"", 144, 67),
MidiArticulation(u"marcato", u"", 144, 100),
MidiArticulation(u"sforzato", u"", 169, 100),
};

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -466,6 +466,13 @@
<name>Snare (Rim shot)</name>
<stem>1</stem>
</Drum>
<Drum pitch="92">
<head>cross</head>
<line>-1</line>
<voice>0</voice>
<name>Open Hi-Hat</name>
<stem>1</stem>
</Drum>
<Drum pitch="93">
<head>cross</head>
<line>0</line>
@ -519,7 +526,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -465,6 +465,13 @@
<name>Snare (Rim shot)</name>
<stem>1</stem>
</Drum>
<Drum pitch="92">
<head>cross</head>
<line>-1</line>
<voice>0</voice>
<name>Open Hi-Hat</name>
<stem>1</stem>
</Drum>
<Drum pitch="93">
<head>cross</head>
<line>0</line>
@ -518,7 +525,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>
@ -123,7 +123,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -61,7 +61,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -61,7 +61,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -60,7 +60,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -61,7 +61,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -61,7 +61,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -61,7 +61,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -61,7 +61,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -61,7 +61,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -60,7 +60,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -61,7 +61,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -61,7 +61,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -61,7 +61,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -69,7 +69,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -69,7 +69,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -61,7 +61,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -61,7 +61,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -60,7 +60,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -61,7 +61,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -61,7 +61,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -60,7 +60,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -60,7 +60,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>
@ -123,7 +123,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -61,7 +61,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>
@ -120,7 +120,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>
@ -123,7 +123,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -61,7 +61,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -61,7 +61,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -61,7 +61,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -61,7 +61,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -64,7 +64,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -62,7 +62,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -62,7 +62,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -64,7 +64,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>
@ -123,7 +123,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>
@ -123,7 +123,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -58,7 +58,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

View File

@ -63,7 +63,7 @@
</Articulation>
<Articulation name="marcato">
<velocity>144</velocity>
<gateTime>67</gateTime>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>169</velocity>

Some files were not shown because too many files have changed in this diff Show More