Skip to main content
Topic: Tremolo.ms (2.2) (Read 31094 times) previous topic - next topic

Tremolo.ms (2.2)

This object implements a two-note tremolo, as described in various texts. It draws the tremolo markings, and will optionally play the notes in tremolo style.

To create a tremolo, you must first create two RestChords of the desired duration. For whole, half and quarter note tremolos, the rest duration should be half of the note's duration. For eighth tremolos, the note duration should be quarter and the rest duration sixteenth. Also, the rest portion of each RestChord should be marked as hidden. Once the notes are present, insert the object between the notes, and the marking will be drawn between the stems. If additional space is needed to accommodate a larger number of beams, increase the stem length of the notes.

The following parameters control the appearance and type of tremolo:

Number of Beams: Specifies the number of beams to be drawn between the notes, between 1 and 4. Default value is 3. The number of beams for a tremolo can also be modified by highlighting the object and pressing the + or - keys.
Half Note Beam Style: Specifies one of three styles for half-note tremolos, and is an integer with values of 1 to 3. It is ignored for other tremolo durations. Default value is 1.
Play Notes: Enables playback of the tremolo. Default value is checked. Note that the RestChords should be muted for proper playback.
Triplet Playback: Specifies that the playback notes should be in triplet rhythm. This will generally be used when the tremolo notes are dotted. Default value is unchecked.
Variance (%): Specifies a dynamic variance between the first and second chord. The specified value is a multiplier for the volume of the second note. This allows more realistic playback. The range of values is 50% to 200%, and the default setting is 100% (no variance).
Beam Angle Offset: Specifies a vertical (staff position) offset to the right side of the beams, for whole note tremolos only. The range of values is -10 to 10, and the default setting is 0. This allows the beam angle to be adjusted; by default, the angle will be that of the lowest noteheads.

For whole note tremolos, the vertical position of the beams may be altered by moving the object marker up and down on the staff. The beam angle can also be adjusted using the Beam Angle Offset parameter.

If the notes on either side of the object are not both RestChords, or if their stem directions are not the same, then the tremolo will not be drawn. If the two notes are of differing durations, the tremolo will be drawn in the style of the right-hand note.

The following sample clip will get you started. The screen shot demonstrates various types of tremolos, with the bottom staff indicating the actual notes that are played.

Code: (nwc) [Select · Download]
!NoteWorthyComposer(2.749741)
|AddStaff|Name:"Staff"|Group:"Standard"
|StaffProperties|EndingBar:Section Close|Visible:Y|BoundaryTop:12|BoundaryBottom:12|Lines:5|Color:Default
|StaffProperties|Muted:N|Volume:127|StereoPan:64|Device:0|Channel:1
|StaffInstrument|Trans:0|DynVel:10,30,45,60,75,92,108,127
|Clef|Type:Treble
|TimeSig|Signature:4/4
|RestChord|Dur:8th|Opts:Stem=Down,ArticulationsOnStem,Muted,HideRest|Dur2:4th|Pos2:-2
|User|Tremolo.ms|Pos:-1|Beams:3|Style:1|Play:Y
|RestChord|Dur:8th|Opts:Stem=Down,ArticulationsOnStem,Muted,HideRest|Dur2:4th|Pos2:1
|RestChord|Dur:16th|Opts:Stem=Down,ArticulationsOnStem,Muted,HideRest|Dur2:4th|Pos2:1
|User|Tremolo.ms|Pos:-1|Beams:3|Style:1|Play:Y
|RestChord|Dur:16th|Opts:Stem=Down,ArticulationsOnStem,Muted,HideRest|Dur2:4th|Pos2:0
|RestChord|Dur:16th|Opts:Stem=Down,ArticulationsOnStem,Muted,HideRest|Dur2:4th|Pos2:-1
|User|Tremolo.ms|Pos:-1|Beams:3|Style:1|Play:Y
|RestChord|Dur:16th|Opts:Stem=Down,ArticulationsOnStem,Muted,HideRest|Dur2:4th|Pos2:-2
|Bar
|RestChord|Dur:4th|Opts:Stem=Up,Muted,HideRest|Dur2:Half|Pos2:5
|User|Tremolo.ms|Pos:-1|Beams:2|Style:2|Play:Y
|RestChord|Dur:4th|Opts:Stem=Up,Muted,HideRest|Dur2:Half|Pos2:3
|Bar
|RestChord|Dur:Half|Opts:Stem=Down,Muted,HideRest|Dur2:Whole|Pos2:-5
|User|Tremolo.ms|Pos:4.5|Beams:2|Style:1|Play:Y
|RestChord|Dur:Half|Opts:Stem=Down,Muted,HideRest|Dur2:Whole|Pos2:-3
|AddStaff|Name:"Staff-1"|Group:"Standard"
|StaffProperties|EndingBar:Section Close|Visible:Y|BoundaryTop:12|BoundaryBottom:12|Lines:5|Color:Default
|StaffProperties|Muted:N|Volume:127|StereoPan:64|Device:0|Channel:1
|StaffInstrument|Trans:0|DynVel:10,30,45,60,75,92,108,127
|Clef|Type:Treble
|TimeSig|Signature:4/4
|Note|Dur:32nd|Pos:-2|Opts:Stem=Up,Beam=First
|Note|Dur:32nd|Pos:1|Opts:Stem=Up,Beam
|Note|Dur:32nd|Pos:-2|Opts:Stem=Up,Beam
|Note|Dur:32nd|Pos:1|Opts:Stem=Up,Beam
|Note|Dur:32nd|Pos:-2|Opts:Stem=Up,Beam
|Note|Dur:32nd|Pos:1|Opts:Stem=Up,Beam
|Note|Dur:32nd|Pos:-2|Opts:Stem=Up,Beam
|Note|Dur:32nd|Pos:1|Opts:Stem=Up,Beam=End
|Note|Dur:32nd|Pos:1|Opts:Stem=Up,Beam=First
|Note|Dur:32nd|Pos:0|Opts:Stem=Up,Beam
|Note|Dur:32nd|Pos:1|Opts:Stem=Up,Beam
|Note|Dur:32nd|Pos:0|Opts:Stem=Up,Beam=End
|Note|Dur:32nd|Pos:-1|Opts:Stem=Up,Beam=First
|Note|Dur:32nd|Pos:-2|Opts:Stem=Up,Beam
|Note|Dur:32nd|Pos:-1|Opts:Stem=Up,Beam
|Note|Dur:32nd|Pos:-2|Opts:Stem=Up,Beam=End
|Bar
|Note|Dur:16th|Pos:5|Opts:Stem=Down,Beam=First
|Note|Dur:16th|Pos:3|Opts:Stem=Down,Beam
|Note|Dur:16th|Pos:5|Opts:Stem=Down,Beam
|Note|Dur:16th|Pos:3|Opts:Stem=Down,Beam
|Note|Dur:16th|Pos:5|Opts:Stem=Down,Beam
|Note|Dur:16th|Pos:3|Opts:Stem=Down,Beam
|Note|Dur:16th|Pos:5|Opts:Stem=Down,Beam
|Note|Dur:16th|Pos:3|Opts:Stem=Down,Beam=End
|Bar
|Note|Dur:16th|Pos:-5|Opts:Stem=Up,Beam=First
|Note|Dur:16th|Pos:-3|Opts:Stem=Up,Beam
|Note|Dur:16th|Pos:-5|Opts:Stem=Up,Beam
|Note|Dur:16th|Pos:-3|Opts:Stem=Up,Beam
|Note|Dur:16th|Pos:-5|Opts:Stem=Up,Beam
|Note|Dur:16th|Pos:-3|Opts:Stem=Up,Beam
|Note|Dur:16th|Pos:-5|Opts:Stem=Up,Beam
|Note|Dur:16th|Pos:-3|Opts:Stem=Up,Beam
|Note|Dur:16th|Pos:-5|Opts:Stem=Up,Beam
|Note|Dur:16th|Pos:-3|Opts:Stem=Up,Beam
|Note|Dur:16th|Pos:-5|Opts:Stem=Up,Beam
|Note|Dur:16th|Pos:-3|Opts:Stem=Up,Beam
|Note|Dur:16th|Pos:-5|Opts:Stem=Up,Beam
|Note|Dur:16th|Pos:-3|Opts:Stem=Up,Beam
|Note|Dur:16th|Pos:-5|Opts:Stem=Up,Beam
|Note|Dur:16th|Pos:-3|Opts:Stem=Up,Beam=End
!NoteWorthyComposer-End

Re: Tremolo.ms (version 0.9)

Reply #1
The Tremolo.ms user object has been updated, with the following changes:

  • Help text is added
  • Minor rendering adjustments

Please refer to the parent post for a description of the available parameters and a sample clip.

As always, feedback and suggestions are greatly appreciated.

Mike

Re: Tremolo.ms (version 0.95)

Reply #2
Mike, have you given any thought to making a "trill" object? It seems as though it could just be a specialized tremolo object with a different symbol and with the tremolo limited to a half- or whole-step.

Re: Tremolo.ms (version 0.95)

Reply #3
Mike, have you given any thought to making a "trill" object? It seems as though it could just be a specialized tremolo object with a different symbol and with the tremolo limited to a half- or whole-step.
Funny you should mention this. A little while ago I made a prototype object that does just the drawing part.  If you have some experience in the different types of trills, I would appreciate your expertise, if you are interested. I've noticed that there are a number of ornaments available (accidental symbols and the like) and would want to implement the options that are of most use.

Thanks,
Mike

EDIT : Please make any further replies to this thread. Thanks!

Re: Tremolo.ms (version 1.0)

Reply #4
How can i remove the "flags" from the stems since I can't beam the rest chords?

Code: (nwc) [Select · Download]
!NoteWorthyComposerClip(2.75,Single)
|RestChord|Dur:16th|Opts:Stem=Down,ArticulationsOnStem,HideRest|Dur2:8th|Pos2:1
|User|Tremolo.ms|Pos:1
|RestChord|Dur:16th|Opts:Stem=Down,ArticulationsOnStem,HideRest|Dur2:8th|Pos2:-1
|RestChord|Dur:16th,DblDotted|Opts:Stem=Down,ArticulationsOnStem,HideRest|Dur2:8th,Dotted|Pos2:#-3
|User|Tremolo.ms|Pos:1
|RestChord|Dur:16th,DblDotted|Opts:Stem=Down,ArticulationsOnStem,HideRest|Dur2:8th,Dotted|Pos2:#-5
!NoteWorthyComposerClip-End

Re: Tremolo.ms (version 1.0)

Reply #5
How can i remove the "flags" from the stems since I can't beam the rest chords?
Code: (nwc) [Select · Download]
!NoteWorthyComposerClip(2.75,Single)
|RestChord|Dur:16th|Opts:Stem=Down,ArticulationsOnStem,HideRest|Dur2:4th|Pos2:1
|User|Tremolo.ms|Pos:1
|RestChord|Dur:16th|Opts:Stem=Down,ArticulationsOnStem,HideRest|Dur2:4th|Pos2:-1
|RestChord|Dur:16th,DblDotted|Opts:Stem=Down,ArticulationsOnStem,HideRest|Dur2:4th,Dotted|Pos2:#-3
|User|Tremolo.ms|Pos:1
|RestChord|Dur:16th,DblDotted|Opts:Stem=Down,ArticulationsOnStem,HideRest|Dur2:4th,Dotted|Pos2:#-5
!NoteWorthyComposerClip-End
Registered user since 1996

Re: Tremolo.ms (version 1.0)

Reply #6
The timing is established by the rests!
I forgot that.
Thank you.

Re: Tremolo.ms (version 1.0)

Reply #7
The timing is established by the rests!
I forgot that.
Thank you.
Rick answered before I saw your post; as you (re)discovered, eighth note tremolos use a quarter note as the base note, so there are no pesky flags to get in the way when the object draws the beams.

If you use the Make Tremolo.ms.lua user tool, it does some of this for you.

Thanks,
Mike

Re: Tremolo.ms (version 1.0)

Reply #8
you (re)discovered, eighth note tremolos use a quarter note as the base note, so there are no pesky flags to get in the way when the object draws the beams.
This is one of the quirks I don't like of objects,
It goes along with the need to mute the "official" notes in an arpeggio but not the subsequent tied chords…
I regularly forget something.

So, kudos for Mike for the good work and for having demonstrated that many thing are indeed possible, but for such common tasks I would have hoped for something much more immediate and user friendly.
After all, the user friendlyness is one of the strength of NWC.

Re: Tremolo.ms (version 1.0)

Reply #9
This is one of the quirks I don't like of objects,
It goes along with the need to mute the "official" notes in an arpeggio but not the subsequent tied chords…
I regularly forget something.
If the current objects have a shortcoming, it is that they can't change the properties of notes or other elements in a score; they can only add drawing and playback. Hence, things need to be muted or made invisible in order for the object to do its work.

Perhaps the next generation of objects will have a way to "tell" a NWC note/chord to be mute, or hide its beams/stems/noteheads so the user doesn't need to make those changes. I am looking forward to seeing what the next version brings.

Mike

Re: Tremolo.ms (version 1.0)

Reply #10
I discovered that the dynamic variances are ignored by tremolo object.
Don't worry, I know a workaround.
That's just for your information.

Re: Tremolo.ms (version 1.0)

Reply #11
I discovered that the dynamic variances are ignored by tremolo object.
Don't worry, I know a workaround.
That's just for your information.
Thanks for mentioning this. There is actually an enhancement to Tremolo and TremoloSingle that I have been considering that might be related to this. If you would post an example of what you observed, along with your workaround, it will confirm whether we are thinking about the same issue.

Thanks,
Mike

Re: Tremolo.ms (version 1.0)

Reply #12
That's it, Mike:
Code: (nwc) [Select · Download]
!NoteWorthyComposerClip(2.75,Single)
|Dynamic|Style:pp|Pos:-10|Wide:Y
|Dynamic|Style:ff|Pos:-10|Wide:Y|Visibility:Never
|MPC|Controller:exp|Style:Linear Sweep|TimeRes:Quarter|SweepRes:10|Pt1:0,26|Pt2:4,127|Pos:8|Wide:Y
|RestChord|Dur:Half|Opts:Stem=Up,Crescendo,Muted,HideRest|Dur2:Whole|Pos2:8,10
|User|Tremolo.ms|Pos:0|Beams:2
|RestChord|Dur:Half|Opts:Stem=Up,Crescendo,Muted,HideRest|Dur2:Whole|Pos2:6
|Bar
|Dynamic|Style:ff|Pos:-9.5
|Chord|Dur:Whole|Pos:6,8,10
!NoteWorthyComposerClip-End

Re: Tremolo.ms (version 1.0)

Reply #13
 Changing the channel volume via the dynamic works too.


Code: (nwc) [Select · Download]
!NoteWorthyComposerClip(2.75,Single)
|Dynamic|Style:pp|Opts:Volume=30|Pos:-10|Wide:Y
|RestChord|Dur:Half|Opts:Stem=Up,Crescendo,Muted,HideRest|Dur2:Whole|Pos2:8,10
|User|Tremolo.ms|Pos:0|Beams:2
|RestChord|Dur:Half|Opts:Stem=Up,Crescendo,Muted,HideRest|Dur2:Whole|Pos2:6
|Bar
|Dynamic|Style:ff|Opts:Volume=108|Pos:-9.5
|Chord|Dur:Whole|Pos:6,8,10
!NoteWorthyComposerClip-End
Rich.

Re: Tremolo.ms (version 1.0)

Reply #14
Yes, right. But usually I prefer to leave the volume untouched (using expression instead) so at the end I can do a fine mixing with the staff volume parameter.

No slur and wrong duration

Reply #15
I don't understand why the tremolo object can't be slurred.
Code: (nwc) [Select · Download]
!NoteWorthyComposerClip(2.751,Single)
|RestChord|Dur:4th|Opts:Stem=Up,Muted,HideRest|Dur2:Half,Dotted,Slur|Pos2:b5,8
|User|Tremolo.ms|Pos:0|Beams:1|TripletPlayback:Y|Style:2
|RestChord|Dur:4th,Slur|Opts:Stem=Up,Muted,HideRest|Dur2:Half,Dotted,Slur|Pos2:4
|Note|Dur:8th,Slur|Pos:3|Opts:Stem=Down,Beam=First
|Note|Dur:8th|Pos:1|Opts:Stem=Down,Beam=End
|Bar
!NoteWorthyComposerClip-End
Furthermore, the tremolo duration is 2/4 while it should be 3/4 (the dot is ignored).
N.B. I made the tremolo using the embedded user tool.

Re: No slur and wrong duration

Reply #16
I don't understand why the tremolo object can't be slurred.
...
Furthermore, the tremolo duration is 2/4 while it should be 3/4 (the dot is ignored).
N.B. I made the tremolo using the embedded user tool.
The current embedded tool does not make the rest portion dotted when the note is dotted; perhaps I need to change it. In the meanwhile, you can select the notes and press the . key three times to get the correct playback duration. Also be aware that the tool will set the "Triplet Playback" checkbox when the source notes are dotted (this is per feedback from @Richard Woodroffe during development of the object). It also appears that when the embedded tool converts the chords into rest chords, it does not preserve the slur property, so that it has to be reapplied. I will also look into this.

Re: No slur and wrong duration

Reply #17
The beta version of Tremolo.ms (in the Backstage forum) has been updated to version 2.0b. Its embedded user tool will now properly set the dotted duration of the rest portions, and will preserve slurs from the original notes. (Note that the actual object drawing and playback code has not changed)

Re: Tremolo.ms (version 1.0)

Reply #18
Mike,
I already added the dots to the rests; I was just informing you of the problem.

Quote
It also appears that when the embedded tool converts the chords into rest chords, it does not preserve the slur property, so that it has to be reapplied.
The fix wasn't so easy: it was simply not possible to slur the tremolo. I don't know why.

Anyway, forget it: the new beta seems ok.
Thank you a lot, Mike.

Re: Tremolo.ms (version 1.0)

Reply #19
it was simply not possible to slur the tremolo. I don't know why.
Code: (nwc) [Select · Download]
|RestChord|Dur:4th|Opts:Stem=Up,Muted,HideRest|Dur2:Half,Dotted,Slur|Pos2:b5,8
Something (perhaps a User Tool) managed to create a Dur: without a slur and a Dur2: with a slur. This confuses the GUI which shows a slur but won't let you remove it. Or fix it.
Registered user since 1996

Re: Tremolo.ms (version 1.0)

Reply #20
Code: (nwc) [Select · Download]
|RestChord|Dur:4th|Opts:Stem=Up,Muted,HideRest|Dur2:Half,Dotted,Slur|Pos2:b5,8
Something (perhaps a User Tool) managed to create a Dur: without a slur and a Dur2: with a slur. This confuses the GUI which shows a slur but won't let you remove it. Or fix it.
That is exactly what happened (and what needed to be fixed in the embedded tool).

Re: Tremolo.ms (version 1.0)

Reply #21
So the problem is not only solved but also fully understood: Good.
Thanks Mike and Rick.

Re: Tremolo.ms (version 2.0b)

Reply #22
The Tremolo.ms user object has been updated, with the following changes:

  • An embedded user tool has been added, which allows tremolo markings to be added for selected notes.

Please refer to the parent post for a description of the available parameters and a sample clip.


Re: Tremolo.ms (2.0c)

Reply #23
The Tremolo.ms user object has been updated, with the following changes:

  • The embedded user tool has been updated, to no longer set TripletPlayback automatically for dotted notes.

Please note that no changes have been made to the actual Tremolo.ms drawing/playback operation.

Please refer to the parent post for a description of the available parameters and a sample clip.


Re: Tremolo.ms (2.0c)

Reply #25
Well, I succeeded in implementing whole note tremolos today. I'm not sure why my position looked different from the sample clip, and if it matters if the lines are a bit higher or lower. What's the thinking on this? Also, I had first hidden the rests, which then meant my notes were also hidden. I didn't know until now that there was an option to hide rests in the rest chord.

I see on Wikipedia that they are showing bass note tremolo lines as parallel to the notes, half way between them. Is this the normal notation? Is the plug-in able to do this instead of angled lines?

https://en.wikipedia.org/wiki/Tremolo#Notation

My use of tremolos to this point has been bass clef octave whole note trem. for piano accompaniments. I think this will work very well. Thank you for developing this tool!

Re: Tremolo.ms (2.0c)

Reply #26
For whole note tremolos, the position of the beams will be different depending on whether the rest chords have the rests on the top or bottom. You can flip the direction by highlighting the rest chord and pressing Shift+Up or Shift+Down. Also, note that both rest chords must be in the same direction in order for the tremolo to be drawn.

It would not be difficult to add an offset parameter that would allow the angle of the beams for whole note tremolos to be adjusted. Currently, they are drawn at the same angle as the noteheads.

Thanks for the suggestions and kind words.

Re: Tremolo.ms (2.1)

Reply #27
The Tremolo.ms user object has been updated, with the following changes:

  • A new parameter has been added which allows the angle of whole note tremolo beams to be adjusted.

Please refer to the parent post for a description of the available parameters and a sample clip.


Re: Tremolo.ms (2.1)

Reply #28
Woah! That was fast!

Re: Tremolo.ms (2.1)

Reply #29
Apparently a little too fast - I should have tested more thoroughly. Please resync your plugin, there was a small typo I missed that could break some other tremolo durations.

Re: Tremolo.ms (2.1)

Reply #30
Would it be possible to incorporate a 'beam gap' feature like the one in beam.hmm? 32nd tremolos look very heavy with a beam gap of one, when the actual spacing should a half. It's a pity that NW doesn't yet do this anyway!

Re: Tremolo.ms (2.1)

Reply #31
I'm not visualizing what you are looking for. Can you provide a score snippet that shows an example or two?

Re: Tremolo.ms (2.1)

Reply #32
Code: (nwc) [Select · Download]
!NoteWorthyComposerClip(2.751,Single)
|Clef|Type:Treble
|Key|Signature:F#|Tonic:G
|TimeSig|Signature:2/4
|RestChord|Dur:4th|Opts:Stem=Down,StemLength=9,Muted,HideRest|Dur2:Half|Pos2:-6
|User|Tremolo.ms|Pos:0|Style:3
|RestChord|Dur:4th|Opts:Stem=Down,StemLength=8.5,Muted,HideRest|Dur2:Half|Pos2:-5
|Bar
|Note|Dur:32nd|Pos:-6|Opts:Stem=Up,Beam=First
|Note|Dur:32nd|Pos:-5|Opts:Stem=Up,Beam
|Note|Dur:32nd|Pos:-6|Opts:Stem=Up,Beam
|Note|Dur:32nd|Pos:-5|Opts:Stem=Up,Beam
|Note|Dur:32nd|Pos:-6|Opts:Stem=Up,Beam
|Note|Dur:32nd|Pos:-5|Opts:Stem=Up,Beam
|Note|Dur:32nd|Pos:-6|Opts:Stem=Up,Beam
|Note|Dur:32nd|Pos:-5|Opts:Stem=Up,Beam=End
|User|Beam.hmm|Pos:6.5|Span:8|BeamGap:0.5|FinalStemLength:5.5
|Note|Dur:32nd|Pos:-6|Opts:StemLength=0
|Note|Dur:32nd|Pos:-5|Opts:StemLength=0
|Note|Dur:32nd|Pos:-6|Opts:StemLength=0
|Note|Dur:32nd|Pos:-5|Opts:StemLength=0
|Note|Dur:32nd|Pos:-6|Opts:StemLength=0
|Note|Dur:32nd|Pos:-5|Opts:StemLength=0
|Note|Dur:32nd|Pos:-6|Opts:StemLength=0
|Note|Dur:32nd|Pos:-5|Opts:StemLength=0
!NoteWorthyComposerClip-End

NW's beam spacing is too wide – it should be half a space (Behind Bars p17) but we can now use 'Beam.hmm' to get the right effect (second group of 32nds). As an aside, to my eye the beams are slightly too thick and marginally too high (pos 6.4 works better).

Single note tremolos should follow this spacing but with thinner strokes (BB p221) but two note tremolos have the ordinary beam thickness and spacing (BB p225).

Re: Tremolo.ms (2.1)

Reply #33
I thought that I had implemented the same beam spacing for tremolos as NWC did for regular beams, but I now see that I did not. It is fairly easy to change this. If you don't mind tweaking code, the spacing you desire (as specified by Behind Bars) can be done by changing the line 121 of Tremolo.ms.nwcuser.lua from:
Code: (lua) [Select · Download]
local beamHeight, beamSpacing, beamOffset = .8, 1.8, .6
to:
Code: (lua) [Select · Download]
local beamHeight, beamSpacing, beamOffset = 1, 1.5, .6
It would be nice if there was an easy method of specifying global "configuration" settings that would apply to all instances of a plugin. so that an additional parameter would not be needed for this under normal conditions.

Re: Tremolo.ms (2.1)

Reply #34
That works very nicely – thanks for the prompt response. And yes, it would indeed be a good thing to be able to store your own preferences.

Re: Tremolo.ms (2.1)

Reply #35
Eeks, Mike, is there a way to do this without tweaking code? I don't even know where I would start. Sometimes getting the computer up and running is enough of a challenge. :)

Dot ignored

Reply #36
Re-reading this thread seems that the problem of the dotted notes was solved.
Apparently, somewhere somehow the patch has been lost because the problem is still present.
Mike, could you please take a look?
Thanks

Re: Tremolo.ms (2.1)

Reply #37
Let me say it better: the notes are ok (dotted), the rests are not.

Re: Tremolo.ms (2.1)

Reply #38
Let me say it better: the notes are ok (dotted), the rests are not.
Can you give me an example score snippet that has the issue you are describing? It is hard to fix something when I can't see it :)

Re: Tremolo.ms (2.1)

Reply #39
Of course!
Code: (nwc) [Select · Download]
!NoteWorthyComposerClip(2.751,Single)
|RestChord|Dur:8th|Opts:Stem=Down,Muted,HideRest|Dur2:4th,Dotted|Pos2:0
|User|Tremolo.ms|Pos:0|TripletPlayback:Y
|RestChord|Dur:8th|Opts:Stem=Down,Muted,HideRest|Dur2:4th,Dotted|Pos2:-2
!NoteWorthyComposerClip-End

Re: Tremolo.ms (2.1)

Reply #40
Hm - I just tried it, and it worked - see the attached image: Left measure shows the initial notes; when I mark both of them and then run the Tremolo plugin's user tool, I get what ist een in the next measure: Both the notes and the rests are dotted.

H.M.

Re: Tremolo.ms (2.1)

Reply #41
I get the same result. Flurmy, are you having a problem with the Tremolo.ms auto user tool, or is it something else you're experiencing?

Re: Tremolo.ms (2.1)

Reply #42
Got it!
when I mark both of them and then run the Tremolo plugin's user tool
I'm not running "Tremolo.ms.nwcuser.lua". (As Harald wrote, it works fine.)
I go to .automatic, then "Make tremolo.ms"!
This runs "Make Tremolo.ms.lua" that's old and bugged.

Probably it's obsolete, but it remained in my tool list.
I suppose the same for "Make TremoloSingle.ms.lua", "Convert Text to ChordPlay.nw.lua" and "Convert Text to ChordPlay.nw.lua".
In practice, almost all that went into "AutoUserTools".

Re: Tremolo.ms (2.1)

Reply #43
Those old standalone user tools were written before NWC was updated to allow built-in user tools. I consider those older tools obsolete, but of course I can't delete them from peoples' computers :)


Re: Tremolo.ms (2.1)

Reply #45
A special case to be managed:
Code: (nwc) [Select · Download]
!NoteWorthyComposerClip(2.751,Single)
|RestChord|Dur:Half|Opts:Stem=Up,Muted,HideRest|Dur2:Whole|Pos2:-7,-6,-3
|User|Tremolo.ms|Pos:0|TripletPlayback:Y|Variance:150
|RestChord|Dur:Half|Opts:Stem=Up,Muted,HideRest|Dur2:Whole|Pos2:-10
!NoteWorthyComposerClip-End

Re: Tremolo.ms (2.1)

Reply #46
Try changing line 137 from:
Code: (lua) [Select · Download]
x1s = x1s or x1+1.3
to:
Code: (lua) [Select · Download]
x1s = x1s or priorNote:xyRight() 
I am still testing to make sure it doesn't break anything.

Re: Tremolo.ms (2.1)

Reply #47
Very good solution!

Re: Tremolo.ms (2.2)

Reply #48
The Tremolo.ms user object has been updated, with the following changes:

  • A bug has been fixed which caused incorrect beam placement for offset whole notes for the first chord.

Please refer to the parent post for a description of the available parameters and a sample clip.