Hi folks,

Things seem a little slow at the moment, so I thought I would toss this
out there and see what happens.

Tim Munro


==========================================================================
Crescendos and Decrescendos Using Expression-Controller Events

Crescendos and decrescendos over multiple notes can usually be
approximated by ramping the note velocities, but doing this over a single
note or part of a single note requires a different approach.

In the past I have resorted to calculating the position and magnitude of
individual volume- or expression-controller events and inserting them
manually, either with the event editor or by hacking the XML file
directly.  However, doing this a few times was enough to convince me
something better was needed.  The method presented here can define ramps
of expression-controller events easily and with precision.  I've been
using something like it for a couple of years now and think perhaps it's
time to see if this feature would be good for the project in general.

The code changes, consisting of four new files and a patch, are in the
tarball attached to this post.  Also attached is a "DontReadMe" file
containing instructions for using the newly installed feature.

The expression-ramp feature is currently accessible only through the
"Controllers" menu of the Notation Editor.  I have tried to keep it
compatible with the look and feel of the rest of Rosegarden, but I have
not integrated it too tightly with the existing controller/ruler
arrangement, as I did not want to step on the work anyone else might be
doing in that area.

Attachment: rosegarden_expression_ramp.tar.gz
Description: GNU Zip compressed data

Crescendos and Decrescendos Using Expression-Controller Events

This feature allows the user to define crescendos and decrescendos over single
notes or even parts of single notes, something that would be impossible using
velocity settings alone.

This feature is currently available in the Notation Editor.  In order to use
it, the user selects an event or a group of events and chooses the "Insert
Expression Ramp" item from the "Controllers" menu.

Actual controller values range from 0 to 127, but the dialog here presents them
in a range of -100 to 27.  This conforms to the number format presented by the
expression-controller ruler.  While not absolutely essential, opening the ruler
provides a helpful window on how the events are being laid out.

If the same beginning and ending value for a ramp is chosen, a single event is
generated.  This is useful for resetting the controller to zero on the next
event following a ramp that doesn't end at zero, as the system remembers and
continues to use the last controller setting it has encountered.

In addition to the beginning and ending values, the user has the choice of a
linear or a logarithmic ramp.  A logarithmic ramp provides a closer
approximation to the way the human ear perceives changes in sound level.

Also provided is the option of simply erasing any existing expression-
controller events within the selected range.

Expression-controller events exist independently of displayed notes and rests.
The note-selection process is just a way of obtaining absolute-time boundaries
for the ramps.  Once a ramp is defined, it continues to exist, regardless of
what is done to concurrent notes and rests.  This is particularly useful when
defining a ramp over only a part of a note.

In order to define a ramp over part of a note, the user would temporarily
replace that note with multiple events and define a ramp over one of them.
Once the ramp is in place, the multiple events are replaced with the original
note.

Velocity settings, volume-controller events, and expression-controller
events, working together, determine the loudness of an instrument's voice.

------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and 
their applications. This 200-page book is written by three acclaimed 
leaders in the field. The early access version is available now. 
Download your free book today! http://p.sf.net/sfu/neotech_d2d_may
_______________________________________________
Rosegarden-devel mailing list
[email protected] - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Reply via email to