As we've not mentioned anything about our project since we first posted we
thought we should give an update on the work thus far, to see what comments
or suggestions anyone may have at this point. To refresh your memories - we
are creating an aid to help professional musicians practise microtonal music
real-time.  This means adding microtonal accidentals and a running chart of
'pitch-error'.
*Original thread dated 14-7-2004

I think I'm right in saying that the whole composition is converted into midi
before playing, so the only real-time information regarding notes, as they
are played, are the midi events. Accessing the accidental property of the
event in the composition would mean something along the lines of tracking the
transport time and the pitch of the note so that the composition could be
searched, and the information retrieved. - Correct me if I'm mistaken here ;).

It seems simpler to include the accidental properties in the
midi events. So we are considering hijacking one of the midi control
parameters to specify microtonal inflection. It then becomes the tracker's
responsibility to convert from midi note number + accidental number to pitch
according to the tuning system and key and also keeps the pitch bend free
for ... bending the pitch.

This, of course, would require a way of ensuring that control events are
placed around microtonal notes. The simplest way would be to scan the
composition before playing, in RosegardenGUIApp::slotPlay()  perhaps?
This is a rather dirty way to do it, alternative suggestions are welcome. 

Concerning the notation symbols ...
The feta-rosegarden font already contains symbols for semi & triple-semi
sharps/flats. Luckily, these are the only symbols we require for our specific
tuning system. We could be persuaded to work on other accidentals, however,
because we already have what we need, it is not necessarily a priority.

The new accidentals have been placed in the Accidentals namespace rather than
implemented as a 'special event' (..docs/data_structs/units.txt)
In Pitch::rawPitchToDisplayPitch() the extra accidentals are user-specified
(like double sharps/flats) ie. the method does not change the displayed
accidental or staff height when a microtonal is encountered.

Regards,
Dougie

[EMAIL PROTECTED]
http://cmt.gla.ac.uk/


-------------------------------------------------------
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 24. Go here: http://sf.net/ppc_contest.php
_______________________________________________
Rosegarden-devel mailing list
[EMAIL PROTECTED] - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Reply via email to