home | tune search | software | learn abc | discuss | about | blog | Starbound/LOTRO | contact |
[abc standard: home | current | route-map | updating | proposals]
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
abc:standard:v2.1:proposals:clefs_voice_parameters:dave:v4 [2012/08/25 23:37] dave [13.3.5.1 pitch=concert] |
abc:standard:v2.1:proposals:clefs_voice_parameters:dave:v4 [2012/08/25 23:42] dave |
||
---|---|---|---|
Line 4: | Line 4: | ||
**Changes from v3:** | **Changes from v3:** | ||
- | transpose has been changed to instrument to make it compare with Chris's proposal | + | * 'transpose' has been changed to 'instrument' to make it compare with Chris's proposal |
- | shift has been changed to pitch to make it less like a verb! | + | * 'shift' has been changed to 'pitch' to make it less like a verb! |
---- | ---- | ||
Line 538: | Line 538: | ||
===== My objectives here: ===== | ===== My objectives here: ===== | ||
- | 1) Conciseness, legacy, and sustainability. In fulfilling the objectives below I am tryuing to do it by introducing the //minimum// number of new keywords and with //minimal// changes to the old ones. | + | 1) Conciseness, legacy, and sustainability. In fulfilling the objectives below I am trying to do it by introducing the //minimum// number of new keywords and with //minimal// changes to the old ones. |
2) abc2.1 knows about transposition intervals only as a number of semitones. If abc is to be able to handle transposing instruments better, it needs to be able to handle transpositions better. This proposal details a method of defining detailed transpositions in such a way that anything other than the semitone count will never be needed for transpositions through major, minor and perfect intervals. | 2) abc2.1 knows about transposition intervals only as a number of semitones. If abc is to be able to handle transposing instruments better, it needs to be able to handle transpositions better. This proposal details a method of defining detailed transpositions in such a way that anything other than the semitone count will never be needed for transpositions through major, minor and perfect intervals. | ||
- | The result is a very simple extension of the ''transpose='' syntax, (which will almost never be needed) by defining intervals as <semitones>:<steps>. [MusicXML fans will see that it owes much to the definitions of transpositions in that format.] Intervals specified by <semitones> only are defined preceisely. The note-name synonym (where Bb = -2 = -2:-1) is introduced by popular demand to make transposing instrument definitions completely trasparent. | + | The result is a very simple extension of the ''transpose='' syntax, (which will almost never be needed) by defining intervals as <semitones>:<steps>. [MusicXML fans will see that it owes much to the definitions of transpositions in that format.] Intervals specified by <semitones> only are defined preceisely. The note-name synonym (where Bb = -2 = -2:-1) is introduced to enable instrument transpositions to be coded in natural language. |
3) abc2.1 only allows you to write abc code at the instrument's written pitch. This means you can't copy and paste a flute part, and make it a Bb clarinet part. Being able to do that would be useful. It also means you can't type in your abc at concert pitch for transposing instruments and see the harmonies in a nice simple fashion. It would be nice to be able to do that too. | 3) abc2.1 only allows you to write abc code at the instrument's written pitch. This means you can't copy and paste a flute part, and make it a Bb clarinet part. Being able to do that would be useful. It also means you can't type in your abc at concert pitch for transposing instruments and see the harmonies in a nice simple fashion. It would be nice to be able to do that too. | ||
Line 548: | Line 548: | ||
Actually you can do it in abc2.1 for the special case of octave transposing instruments - eg with a +8 and then octave=-1. | Actually you can do it in abc2.1 for the special case of octave transposing instruments - eg with a +8 and then octave=-1. | ||
- | The objectives here are achieved by the introduction of a single new keyword 'pitch' which is precisely analogous to the octave keyword but allows an 'abc-pitch' through any interval, not just a number of octaves. | + | The objectives here are achieved by the introduction of a single new keyword 'pitch' which is precisely analogous to the 'octave' keyword but allows an 'abc pitch renormalisation' through any interval, not just a number of octaves. |
- | The existence of ''pitch'' allows, as a special case, abc for transposing instruments to be encoded at concert pitch. The special value pitch=concert is introduced to make this more intuitive. People have discussed 'high level' and 'low level' keywords in the past. This proposal makes no such distinction apart from in ''pitch=concert'' where the actual value of the ''pitch'' depends on the accompanying instrument transposition. (In particular interval definitions are alternative syntaxes with precisely define equivalece; thy can be used interchangeably according to taste.) | + | The existence of ''pitch'' allows, as a special case, abc for transposing instruments to be encoded at concert pitch. The special value pitch=concert is introduced to make this more intuitive. People have discussed 'high level' and 'low level' keywords in the past. This proposal makes no such distinction apart from in ''pitch=concert'' where the actual value of the ''pitch'' depends on the accompanying instrument transposition. (In particular interval definitions are alternative syntaxes with precisely defined equivalence; thy can be used interchangeably according to taste.) |
- | 4)abc2.1 can only represent 'written pitch' scores. A method is needed to write concert pitch scores. My instruction to write a concert pitch score "I:concert_pitch" is identical to Alex's "I:concert_score" but renamed for a reason. I have also taken on board Alex's "I:clef_concert" with the same meaning (having grilled him mercilessly about it), and I wanted to use the ..._concert keyword suffix in the same way for I:score_concert which allows a different assignment of voices to staves when producing a concert pitch score. I renamed I:concert_score to try to avoid confusion. | + | 4)abc2.1 can only output 'written pitch' scores. A method is needed to write concert pitch scores. My instruction to write a concert pitch score "I:concert_pitch" is identical to Alex's "I:concert_score" but renamed for a reason. I have also taken on board Alex's "I:clef_concert" with the same meaning (having grilled him mercilessly about it), and I wanted to use the ..._concert keyword suffix in the same way for I:score_concert which allows a different assignment of voices to staves when producing a concert pitch score. I renamed I:concert_score to try to avoid confusion. |
- | Importantly, everything in (2) and (3) here is aimed at producing the dots at the instrument's written pitch (even though the abc-code can be at other pitches). (4) is extra stuff which is unneeded (unused) in that case but allows production of concert pitch dots. I think this was ALex's motivation too. | + | Importantly, everything in (2) and (3) here is aimed at producing the dots at the instrument's written pitch (even though the abc-code can be at other pitches). (4) is extra stuff which is unneeded (unused) in that case but allows production of concert pitch dots. I think this was Alex's motivation too. |