Skip to main content

Messages

This section allows you to view all Messages made by this member. Note that you can only see Messages made in areas you currently have access to.

Messages - Randy Williams

201
General Discussion / Re: Forte-piano dynamic variance
There is interest. I'm interested to know how to go about fiddling with note velocities, volume settings and expression settings without knowing what these values are when the tool receives its input from NWC.
PROPOSAL

Note velocities: I'd need to increase the note velocity a bit, over and above what the dynamic of record stipulated.  I could simply add an accent to the following note, which I think automatically increases the note velocity by 40%.  But then the accent would be visible, which we wouldn't want.  Worst case, the script would watch dynamics go by, to know what the last one was.  Of course it would have to assume the default dynamic velocities were not customized, as these staff properties would not be available to a script even as it operated on the entire staff.  I'm not sure I'd want to handle custom note velocities for individual dynamics either, even though those would be available.  So a hidden dynamic with a custom note velocity would do the trick.

Volume settings: I wouldn't mess with volume.  I think it's best reserved for a global "mixer" level for that staff.

Expression settings: I think a 64th note's worth of falloff would be acceptable, regardless of length of the "sfp" note.  The expression would drop from 127 to a number calculated to get a "piano" [again assuming standard dynamics] even though the velocity had been increased.  The "piano" would hold until a 64th note's worth short of the duration of the "sfp" note.  Then the expression would be ramped back up to 127.  This ramp-up would occur during the natural note-off period that separates one note from the next.

I'd assume nobody would put an "sfp" within a cresc/decresc, or on a split-duration chord, or on a 32nd or 64th note, or any other weird case, on first pass.
202
General Discussion / Re: Forte-piano dynamic variance
My bad!  I'd always added "cresc", "decresc", and "dim" to NWC songs to mimic the sheet music in terms of printout, but I always added my own MPC for playback, thinking those dynamic variances were "text only".  Now I see these are indeed implemented, so long as you give it a "target" dynamic to shoot for (which perhaps I hadn't done before, like at the end of a song, perhaps leading me to believe they weren't respected).  For example, if you just specify a crescendo and later a decrescendo, without a "peak" dynamic level in between (common in music I've seen), NWC doesn't attempt any cresc/decresc I think (and rightly so in this case).  So now I see a hidden "peak" dynamic in between (and a hidden "restore" dynamic afterward) is all that's needed to fix this!

I still think "rfz" and "sfz" aren't implemented - am I wrong there too?  The "rfz" would be particularly troubling to implement, as how does one specify how long the "fz" phrase is?
203
General Discussion / Re: Forte-piano dynamic variance
IMHO, we'd want to first ask that the current list of dynamic variances (cresc. = crescendo, decresc. = decrescendo, dim. = diminuendo, rfz = rinforzando, sfz = sforzando) be expanded to include sfp = sforzando piano.  I think the alternate fp notation for sforzando piano looks too much like a forte + piano, when it really is a sforzando + piano.

Once you have the new dynamic variance, you can tackle the issue that currently none of the dynamic variances are respected during playback.  I personally would like to see crescendo and decrescendo implemented first, before moving on to any of the others.  It would be cleaner in the music (yet perhaps harder to program) to allow these to linearly apply up to the next dynamic (edit: or dynamic variance, which would leave absolute values open to interpretation unfortunately), without needing a "hairpin" to span potentially many measures.

Until NWC directly supports a given dynamic variance, it should be possible to write a user tool to add/update the appropriate MPC (or whatever needed) immediately after the dynamic variance, to simulate it as best possible.  I might be willing to write such a tool, if there is interest.
206
General Discussion / Re: Keep accidental on tied grace on main note when audit accidentals
Hi Warren - I threw this script together, so no guarantees - If you want to try it out, and if it's close to what you're looking for, I'd be happy to make some minor fixes as needed - HTH - Randy

Edit - I purposefully didn't check for ties - I'd think you'd want a repeated accidental whether tied or not, on the logic that the grace accidental was perhaps too small to be seen.
208
General Discussion / Re: Moving Notes
Building on Warren's response:  You can select the note(s) to move by one of two methods.  You can left click (and hold) at one end of the note(s), and then drag to the other end.  Or you can left click (and release) at one end of the note(s), and then shift-cursor to the other end.  The colors you have for the normal and selected backgrounds (and notes) is customizable, and could be anything in your case.  When you move the note(s) up or down, you won't hear any playback though, even if moving a single note (I think).  If you buy the full version of NWC, and then get the latest Beta version (free), there is a mini piano keyboard on the screen, which can be used to enter (and hence hear) the notes that you "play" (click on).
209
General Discussion / Re: What is the best way to convert a .nwc file to a ps file?
 I don't use Ubuntu or LaTeX, but I did have occasion to want a single document that had several different NWC songs (10 of them) combined with text in between.  I found it easiest to use Microsoft Word for the document.  For each song, I just pulled it up in NWC, generated a print preview, and then copied to clipboard.  Then I just pasted it into Word, and used Word's internal picture cropping to shrink the bottom margin (and cut off empty space).  With all text and songs in place, I just printed to a PDF file (using PDFCreator) directly from Word.  I recommend PDFCreator highly, but make sure to get no higher than version 0.9.6 (they apparently became a little too intrusive in higher versions).  HTH
210
Tips & Tricks / Re: [NWC2] How to cleanly extend the last system.
Having said you don't need to change the Ending Bar to Open (Hidden), now that I've (belatedly) tried it, I see that it is cleaner in edit (and view) mode to do so, even as it makes no difference for the printout.  Someone looking at this final example might wonder how the "Ending Bar" was suddenly editable (to set force system break for example)!  It is not at all clear that a "fake" ending bar has been added and the "real" one has been hidden.
211
Tips & Tricks / Re: [NWC2] How to cleanly extend the last system.
Ah, thanks Rick, I see it now.  You actually don't need to bother changing the Ending Bar to Open (Hidden), since it will not display or print anyway, due to the last "measure" being empty.  The key is that the final barline (with force system break) can be set to a Section Close style (assuming you have the "standard" Ending Bar, which is also Section Close style).  I'd never noticed before that the standard Ending Bar could be replicated elsewhere in a piece via a decorated barline style!  (Or that one could change the style of the Ending Bar itself!)  So the NW Online example probably should have showed this instead:
212
User Tools / Re: Multibar rests
I haven't ever used this tool myself, but I took a quick look at the PHP source.  It appears to me that you can just change the 1 line "$Txtpos = 1" to read "$Txtpos = 3".  Instead of inserting the MBR text before the first object (which is the first rest), it should then insert it before the third object (which is the second rest - the second object is the first bar).  I think this will do what you are asking, but I haven't tried it myself.
213
Tips & Tricks / Re: [NWC2] How to cleanly extend the last system.
Sorry to reply to an old topic, but has anyone figured out a better way to cleanly extend the last system and still get the ending bar displayed/printed?  If there is more than one staff, it is trivial to add an extra bar (with force system break) to only the first staff, and the other staff(s) will still bring out the ending bar.  But if I have only a single staff (just like the NW Online example above!), you can't get the clean extension in this way without losing the ending bar.  Right now, I am adding a dummy staff, with nothing but hidden whole rests and hidden bars, just to get the ending bar.  See the modified NW Online example attached.  Anything better out there?
214
User Tools / Re: How do I make a script to effect only certain notes?
Quote
Handbell music appears to be quite complex.
Yes it is.  I was hoping to find other handbell players via this thread, to discuss using NWC to notate handbell music, and to control it on playback.

Quote
In any case, developing User Tools requires data. Several "before" and "after" scores would need to be produced for testing. A tool (or nwctxt utility) would need to know what bells were at each station that it was producing a "part score" for. This would argue for close cooperation between someone intimately familiar with bell choirs and someone who can script NoteWort
With my "highlight notes" tool, I just open a copy of the score, and run the user tool on each staff, with a command line like this for example:  "C4 E4 A5 B5 Ab5 Bb5".  (This was the set of bells I had in a recent piece.)  I can easily repeat that particular user tool invocation on each staff (up to 4 needed, with layering on treble/bass) without reentering the bell set.  The I print it out, undo all the user tools, and I'm ready to repeat with a different bell set.  IMHO, this is far simpler and far "safer" then trying to use globalmod!

Quote
With only a 2 colour requirement how this would work is much clearer - thanks for the extra info.  It certainly means a lot of scores to prepare though - I imagine most players usually prepare their own copies with a highlighter or the like.
Yes, preparing a copy with 2 highlighters is the norm for children.  I was just trying to automate this.

Quote
From the sound of things you have quite a number of tools you've produced for yourself - care to share?  I try to encourage others to contribute their user tools as it helps to expand the usefulness of NWC for all of us.
I'm happy to share - I was just trying to see if there was any interest (and feedback) from other handbell players, before I took the time to "productize" them.
215
User Tools / Re: How do I make a script to effect only certain notes?
Hi Lawrie,

I truly only meant "battle" in a playful sense, hence the smiley face.  I've just seen many a spirited "conversation" started in this forum between 2 posters, once one replied by name to the other, quoting him and responding item by item.  :-)

I also did not mean to put down globalmod (or any other script).  I was just hoping to carve out my own little niche, of scripts dedicated to the specific situations that handbell players run into.

Quote
On the other hand, surely if the key signature specifies a certain sharp or flat then you would define the appropriate GlobalMod command to suit?  Notes with accidentals would remain black and be easy to spot.
An interesting (true-life) case comes to mind.  One piece had F# in the key signature for the first and last third, and Fnat in the middle.  There were then some Fnat accidentals in the first and last third, and some F# accidentals in the middle.  And one child was playing the F bell while a different child was playing the F# bell.  Good luck with globalmod here!

Quote
One thing I am curious about - we only have 7 highlight colours to choose from - is this enough?  After all, we have 12 tones and those in multiple octaves.  I confess I've never had anything to do with music for handbells so I am talking through my hat a bit here.
You actually need only 2 colors, one for each hand.  You make separate notations to yourself to swap bells for a hand, where necessary.  So one or more bells (notes) would be one color, and one or more would be the other color, with all other notes being the default color.  (In case you didn't realize, each handbell player often has his own copy of the score, color-coded for just the notes he's playing.  Advanced players might not need any highlighting, working off a plain score, and sometimes 2 players work off one copy, aiding in page turns.  Children pretty much always need some sort of highlighting to pick out their notes from a very cluttered score copy.)

More info, in case interested:  Handbell choirs typically span anywhere from 2 to 5 octaves, but not all semitones in that range occur in a given piece by any means.  A piece must be carved up, with each player taking a subset of bells that can be played - it's hard to play more than 2 bells at any one instant.  Sharing a bell during a piece is possible, but rare.  When handling more than 2 bells (other than simple key changes), bell changes often must be carefully choreographed.  For these and many other reasons, playing handbells is not so simple as ringing a bell!
216
User Tools / Re: How do I make a script to effect only certain notes?
Hi Lawrie - I've watched you do battle with others on this forum, and now it's my turn I guess.  :-)

Quote
Chords could ONLY be handled by layering - NWC in incapable of colouring individual notes within a chord.
I believe this is exactly what I explained in both my previous posts.

Quote
I beg to differ - the POS's are different (C, C#, Cb, Cnat, Cbb and Cx)
My point here was that globalmod ignores the key signature, and ignores recurring accidentals within a bar.  If you use globalmod to mark all where pos==-6, you can get upwards of 5 different bells marked (Cbb [Bb], Cb [B ], C, C#, Cx [D]).  If you specify the particular C (e.g. pos==#-6), you'll get only the C sharps that are explicitly marked.  So you should have argued that one could "force accidentals" before the globalmod, and then "audit accidentals" afterward.  In between, up to 3 different globalmod commands would be needed, and all of this must be done on each staff (I typically need 4 staffs, 2 layered for each of treble/bass clefs, for handbells).

Quote
the new getNoteMidiPitch interface is not in the current release version of the starter kit, only the beta version.
This is why I was not offering my scripts yet, just gauging interest.  I actually have versions of my scripts that work without the new beta release, which I'd coded up before convincing Eric to add base support for this.

Quote
The original problem was for children, how complex is that music likely to be?
Just this morning I watched my sons (ages 13 and 9) and 5 other children play "Cradle Songs" at church - this song featured running eighth notes, multiple key changes, accidentals galore, and upwards of 8 bells playing simultaneously in chords. 
217
User Tools / Re: How do I make a script to effect only certain notes?
In handbell music, there are generally far more "chords" (and "rest-chords") than "notes".  While globalmod can change the color of isolated notes, it cannot possibly change the color of individiual notes within chords (and rest-chords).  The only attributes that NWC stores on a per-note basis within a chord are: accidental, pos (staff line), notehead, and tie.  Another problem with globalmod is that it will mark all C's (for example), even though some may be sharped or flatted (which are different bells).  In handbells, we don't care about the staff position, we just care about the final pitch.  A person with the "C#/Db" bell will want any B##, C#, or Db highlighted, even though these are all different positions in the staff (and yes, with key changes you may have to play that bell for two different staff positions).

My scripts all use the new getNoteMidiPitch interface, to ensure they give all notes for a particular bell, and no others.
218
User Tools / Re: How do I make a script to effect only certain notes?
I too have been working recently with childrens (and adults) bell choir music at church.  I have been dabbling with a number of scripts, both to be run on "clips" via user tools and to be run on entire "nwc" files via command line.

One of my scripts is designed to "highlight" one or more notes, specified as a list of bell names on the command line.  Unfortunately, NWC is currently quite limited in what it can do to individual notes of a chord.  The color and visibility options for example apply to the entire chord, and cannot apply to any subset of it.  My current approach is to "highlight" the given notes by leaving them alone, and change all other notes to "x" noteheads.  This allows the desired bell notes to stand out, while leaving a "shadow" of the other notes to help follow what is going on overall in the group.

Another approach I am exploring is to operate on an entire NWC file, and have the script generate a whole new staff with just the desired notes in it.  This would allow changing the note colors for example, and layering could be used to try to superimpose the colored notes back on the original score.  This approach could also be used during playback, to hear just the desired notes (perhaps with a "metronome" to fill in the gaps), or the desired notes loud and the other notes soft, or just the other notes (to possibly practise with).

I am also exploring a script to remove "optional" bells from a score that is for more octaves than the choir can support.  Optional bells would include bells outside a specified range, as well as bells within parenthesis or brackets (which I am working on how to add).
I also have a script to generate statistics on how many times each bell is rung in a piece (which also indicates the set of bells needed), and what range of measures each bell occurs in.

I have many other ideas for using NWC for handbells - does any of this interest you?  I was thinking about starting up a NWC forum thread just for handbells.  Anyone out there interested?

[One other note - there is a script out there called "parts" which can remove all notes but one.  This is problematic for handbells, as a single bell player will often have two or more notes to play at once, and even with just one handbell, you'd want to highlight up to three different notes (e.g. C#, Db, B##)]
219
General Discussion / Re: !NoteWorthyComposerClip(2.0,Single) copy and paste error?
If I understand the problem correctly, I'm not having that problem with NWC, but have had it with other applications.  Instead of trying to grab text from left-to-right (or top-to-bottom), it sometimes works better to grab it right-to-left (or bottom-to-top), since it gives you a bigger starting target point (and sometimes a bigger ending target point as well).
220
User Tools / Possible additions to nwc2clips.inc
To my knowledge, nobody has written a set of PHP include files to help with processing entire NWCTXT files, similar to the set that does exist to help with processing "clips" (the User Tools suite).  Perhaps instead of writing a new suite, the existing one can become a superset for both?  I haven't worked out all the details yet for other files, but I thought I'd throw out these possible additions to just nwc2clips.inc, to start a discussion.

In function NWC2ClassifyOptTag, before the final return:
Code: [Select · Download]
if ($ObjType == "SongInfo") return NWC2OPT_TEXT;
if (($ObjType == "Font") && ($Tag == "Typeface")) return NWC2OPT_TEXT;
if (($ObjType == "AddStaff") && ($Tag == "Group")) return NWC2OPT_TEXT;
I expect there are other song/staff option tags that are possibly needed here too.

Global constants, alongside the comparable "clip" constants:
Code: [Select · Download]
define("NWC2_STARTSONG","!NoteWorthyComposer");
define("NWC2_ENDSONG","!NoteWorthyComposer-End");
221
General Discussion / Re: Staff lines missing when print
Quote
A special problem exists for ink-jet printers: clogged jets. They happen, and can wipe out an entire staff line. One clogged jet will make a staff line look different than others. I suspect that many of the problems reported in this forum are due to clogged jets, yet the poster seldom specifies the printer in his post. I doubt that the droput problem even exists with mature drivers on laser printers.
My printer is an HP Officejet J6450.  And I know what a clogged jet problem looks like.  :-)  My problem (and I suspect the original poster's problem too) featured an extrememly clean printout, with perfect clefs/noteheads/accidentals/keysigs/timesigs/dynamics/text/etc, with no sign whatsoever of a "white line" through any graphic where the clef line was intersecting with it.  It is very clearly a printer driver problem, which seems to be most easily fixed by tweaking the scaling.  (My computer uses Windows XP, so it's not that "immature".  And I can fax you the printout if you like :-) )
222
General Discussion / Re: Working with *.nwctxt files
Quote
IMO, it would be useful to add:

•NWC Text File (forced accidentals)

Many of the uses of nwtxt involve converting the Pos: and Pos2: fields into absolute pitches. This is merely difficult for simple songs but, for songs with complex flows that also have clef and key changes, it is nearly impossible.
Several observations:
  • Many of the observations/recommendations in this thread apply to the user tools (for part or all of a single staff) as well as to entire nwctxt files.
  • Very cool - forcing accidentals (manually) before exporting nwctxt (or running a user tool) avoids having to watch for (and remember) key changes going by, and having to remember accidentals through to the next bar (both of which I'd already taken the time to code for :-( )
  • Still no alternative to watching for clefs going by, when you want to know the actual note represented by the pos.
  • Good point about complex flows - I just realized that my code is watching for clef/key changes in static order, rather than dynamic order.
223
General Discussion / Re: Staff lines missing when print
I had a similar problem.  At first it loked like I was just missing all (horizontal) staff lines after the first printed staff.  But then I noticed the (vertical) note lines were missing too.  So basically all horizontal or vertical lines were missing (or clipped) after an inch or so down the page.  The problem seemed to go away when I upgraded to NWC 2.0.  But it just came back again, this time with an inch or so band at the top of the page *and* a couple-inch band in the middle of the page where the horizontal/vertical lines made it into print.  Outside of these bands, the staff lines and note lines disappear, even in mid-staff and mid-note.  Again, all the non-horizontal and non-vertical stuff prints fine, and everything looks fine in print preview.

I happened to change the staff size (Page Setup, Fonts, Change.., Staff Size) to scale the music better on the page, and the problem seemed to go away.  You might try this, and see if it helps.