Phil Taylor writes:
| John Chambers wrote:
| >I'd wonder whether the transposeplay= clause is the best (i.e.,
| >clearest to your typical non-computer-geek musician) way to give a
| >pitch. I suspect that most would have to try a number of times to get
| >it right, and we'd have confusion similar to what currently happens
| >when people try to describe clefs as "transposition". Another scheme
| >that was proposed was to give the pitch of a specific note, as:
| > A=880
| > A=220
| > _B=440
|
| Well, I thought about that, but the trouble is that it looks like a
| tuning command, and inevitably users will expect to be able to enter
| A=443.8 and expect to get exactly that.
Yeah; that's what I'd expect. So what's the problem?
The goal that I was thinking about is: Suppose I've laboriously typed
in the ABC for Mozart's clarinet quintet in A. It has header lines
defining the voices and keys:
V:1 name="Clarinet in A" clef=treble
V:2 name="Violin I" clef=treble
...
V:1
K:C
...
V:2
K:A
This comes out on screen and paper just right, with the clarinet part
in C and the string parts in A. So I feed it to an ABC player, and I
get cacophony. I need to explain to it that voice 1 sounds a minor
third higher than the default A=440. Saying C=440 is so obvious that
it seems hardly worth mentioning. But suppose the notation uses
something like "transpose=+3". If the past is any guide, what I'd
expect to happen is that this would make it sound fine, but the
notation I see on screen or paper would also be transposed up a minor
third, for an Eb clarinet. Not quite what I had in mind!
What is needed is an unambiguous way of saying "Show this exactly as
I wrote it, but play V:1 a minor third higher than written." The
C=440 notation seems to say this, for the reason you said: It looks
like a tuning rather than a transposition. This is exactly what I
want. Programmers working on formatter code would be more likely to
ignore this, because frequency isn't relevant to printed music. But
they aren't likely to ignore something called "transpose", because
this is a constant headache for people working on printed music, and
they'd expect to have to implement it.
One problem is that "transpose" means very different things to
different people. It would be best if we could avoid it in most
circumstances, and use notation that unambiguously says what we want.
| ... Not that a tuning command
| isn't useful under some circumstances. (BarFly already has one:
| you can put tune=n in the V: header field where n is in units of
| 1/256 semitones. It's useful to slightly de-tune intruments which
| are playing in unison so you can hear them as separate instruments.)
But it's not useful to me with current technology. I have several
electronic tuners. If I pick up that A clarinet and play a C, I know
that it will tell me I'm playing and A. It may also tell me that I'm
playing at 443. Very few musicians would have any clue about how to
convert this to units of 1/256 semitones. It's true that the tuners
have dials that are obviously calibrated in some fraction of a tone,
but they never have a scale, so you don't know what to type in. All
you can do is guess, listen, and guess again until it's close enough.
But if the player program implements C=443, I can play one note to my
tuner, and immediately type in the tuning for the A clarinet part. I
can add A=443 to the other parts, and everything will sound fine.
(Well, OK; I'd probably type A=435 for the viola part. ;-)
To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html