[abcusers] something that ought to work...

2004-04-15 Thread Jack Campin

Warning, message is this wide 
-|

I sometimes find I'd like to either transcribe the melody notes from
a bagpipe score before adding the gracenotes, or extract a version of
the tune with the gracenotes removed.  One way to do that would be to
put the melody and gracenotes in different voices and merge them for
playback or printing.  Like this (with the added oddity that I've
assigned the melody and gracenotes to dfferent instruments, neither
of them the bagpipe):

X:1
T:The Little Cascade
S:MacLennan's collection
C:G.S. MacLennan
V:1   midi program 1 11 transpose -12
V:2 merge midi program 1 46
M:C|
L:1/8
Q:1/2=104
K:E Hp
V:1  Be```eg  ge```Bg  | gf`eBgB```eg   |[1  Be```eg 
ge```Bg  | fd```Ad  fagf :|
V:2   {d}xx{A}xx   {a}xx{g}xx  |  {a}xx{gef}xx {a}xx{g}xx   |[1   {a}xx{A}xx  
{a}xx{g}xx  |{afg}xx{e}xx   {g} :|
%
V:1  [2  Be```eg 
ge```Bg  | fagf f2e3/|:\
g/|  fB```gf  eg```Bg  | fBag g2fg |
V:2  [2   {a}xx{A}xx  
{a}xx{g}xx  |  {a}{gfg}x2{eA}x3/|:\
x/| {afg}xx{a}xx   {g}xx{a}xx  |{afg}  {a}x2{fe}xx |
%
V:1  fB```gf 
eg```Bg  | fagf f2e3/:|\
g/|: G2   Be  Be```ge  | g2   fg  eg```Be   |
V:2 {afg}xx{a}xx  
{g}xx{a}xx  |  {a}{gfg}x2{eA}x3/:|\
x/|:{aGd}x2{d}xx   {g}xx{a}xx  | {gf}x2{a}xx   {a}xx{a}xx   |
%
V:1  [1  G2   Be  Be```ge  | fd```Ad  fagf :|[2  G2   Be 
ge```Bg  | fagf f2e3/||
V:2  [1 {gGd}x2{d}xx   {g}xx{a}xx  |{gfg}xx{e}xx   {g} :|[2 {gGd}x2{d}xx  
{a}xx{g}xx  |  {a}{gfg}x2{eA}x3/||
%
V:1 f/|  g```efg  efg```e  | f```def  def```d   |g```efg 
efg```e  | fag```f  f2e3/:|
V:2 x/|  x{a}xxx   {a}xxx{a}x  | x{g}xxx   {g}xxx{g}x   |x{a}xxx  
{a}xxx{a}x  | xxx{a}x {gfg}x2{eA}x3/:|
%
V:1 g/|  Be```gf  e2 fd| Be```df  ed```B```A|   Be```gf  
e2 fd| Be```df  f2e3/:|
V:2 x/|   {a}xx{a}xx {GdG}x2  {g}xx|  {g}xx{g}xx {gef}xx{g}x{d}x|{d}xx{a}xx 
{GdG}x2  {g}xx|  {g}xx{g}xx {gfg}x2{eA}x3/:|
%
V:1 g/|  Gd```Be  df e2| gfge Bega  |[1 Gd```Be  
df e2|
V:2 x/|   {a}xx{g}xx   {g}xx{gef}x2|  {a}  {g}  |[1 xx{g}xx   
{g}xx{gef}x2|
%
V:1
 Be```df  f2e3/:|\
 [2  gfge fd```ed  | Be```df  f2e2 |]
V:2
  {g}xx{g}xx {gfg}x2{eA}x3/:|\
 [2  {ga}  {g}xx{g}xx  |  {g}xx{g}xx {gfg}x2{eA}x2 |]

In practice, BarFly can play that okay, but display hits one of the
spots where there's a red warning triangle on the roadway and Phil
can be seen standing by it with a shovel.  Does any program get it
right?

-
Jack Campin: 11 Third Street, Newtongrange, Midlothian EH22 4PU; 0131 6604760
http://www.purr.demon.co.uk/jack * food intolerance data  recipes,
Mac logic fonts, Scots traditional music files, and my CD-ROM Embro, Embro.
-- off-list mail to j-c rather than abc at this site, please --


To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html


Re: [abcusers] ANOUNCEMENT

2004-04-15 Thread Richard Robinson
On Wed, Apr 14, 2004 at 02:23:43PM -0700, Toby Rider wrote:
   Sometime in the next few weeks, I will be upgrading the mailserver
 software from Majordomo to Mailman. This change will be transparent to all
 users, but will allow me to better control the user lists as well as keep
 up with the never-ending battle to prevent spammers from squeezing
 messages onto the lists.

That'll be nice. Thanks. Just at the moment, the only spam I'm receiving
is via the abc list.

-- 
Richard Robinson
The whole plan hinged upon the natural curiosity of potatoes - S. Lem

To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html


Re: [abcusers] something that ought to work...

2004-04-15 Thread Neil Jennings
If you make a couple of small changes, my program HARMONY can deal with it

a) Put [ and ] around the v:1 and v:2 in the body (But not in the header)
b) remove Hp from the key signature - Harmony does not support pipes key 
signatures
c) replace the back quotes by upright quotes - maybe HARMONY got this 
wrong? please let me know.
I was working from the abc v2 draft, which does seem to leave a lot out.
d) remove the word merge (What does it do?)

V:1   midi program 1 11 transpose -12
V:2  midi program 1 46
M:C|
L:1/8
Q:1/2=104
K:E Hp
[V:1]  Be'''eg  ge'''Bg  | gf`eBgBeg   |[1 
 Be'''eg ge'''Bg  | fd'''Ad  fagf :|
[V:2]   {d}xx{A}xx   {a}xx{g}xx  |  {a}xx{gef}xx 
{a}xx{g}xx   |[1   {a}xx{A}xx  {a}xx{g}xx  |{afg}xx{e}xx   {g} :|




Neil Jennings







At 06:01 PM 4/15/04, you wrote:

Warning, message is this wide 
-|

I sometimes find I'd like to either transcribe the melody notes from
a bagpipe score before adding the gracenotes, or extract a version of
the tune with the gracenotes removed.  One way to do that would be to
put the melody and gracenotes in different voices and merge them for
playback or printing.  Like this (with the added oddity that I've
assigned the melody and gracenotes to dfferent instruments, neither
of them the bagpipe):
X:1
T:The Little Cascade
S:MacLennan's collection
C:G.S. MacLennan
V:1   midi program 1 11 transpose -12
V:2 merge midi program 1 46
M:C|
L:1/8
Q:1/2=104
K:E Hp
V:1  Be```eg  ge```Bg  | gf`eBgB```eg   |[1 
Be```eg ge```Bg  | fd```Ad  fagf :|
V:2   {d}xx{A}xx   {a}xx{g}xx  |  {a}xx{gef}xx 
{a}xx{g}xx   |[1   {a}xx{A}xx  {a}xx{g}xx  |{afg}xx{e}xx   {g} :|
%
V:1  [2 
Be```eg ge```Bg  | fagf f2e3/|:\
g/|  fB```gf  eg```Bg  | fBag g2fg |
V:2  [2 
{a}xx{A}xx  {a}xx{g}xx  |  {a}{gfg}x2{eA}x3/|:\
x/| {afg}xx{a}xx   {g}xx{a}xx  |{afg}  {a}x2{fe}xx |
%
V:1 
fB```gf eg```Bg  | fagf f2e3/:|\
g/|: G2   Be  Be```ge  | g2   fg  eg```Be   |
V:2 
{afg}xx{a}xx  {g}xx{a}xx  |  {a}{gfg}x2{eA}x3/:|\
x/|:{aGd}x2{d}xx   {g}xx{a}xx  | {gf}x2{a}xx   {a}xx{a}xx   |
%
V:1  [1  G2   Be  Be```ge  | fd```Ad  fagf :|[2 
G2   Be ge```Bg  | fagf f2e3/||
V:2  [1 {gGd}x2{d}xx   {g}xx{a}xx  |{gfg}xx{e}xx   {g} :|[2 
{gGd}x2{d}xx  {a}xx{g}xx  |  {a}{gfg}x2{eA}x3/||
%
V:1 
f/|  g```efg  efg```e  | f```def  def```d   | 
g```efg efg```e  | fag```f  f2e3/:|
V:2 
x/|  x{a}xxx   {a}xxx{a}x  | x{g}xxx   {g}xxx{g}x   | 
x{a}xxx  {a}xxx{a}x  | xxx{a}x {gfg}x2{eA}x3/:|
%
V:1 
g/|  Be```gf  e2 fd| Be```df  ed```B```A| 
Be```gf  e2 fd| Be```df  f2e3/:|
V:2 x/|   {a}xx{a}xx {GdG}x2  {g}xx|  {g}xx{g}xx 
{gef}xx{g}x{d}x|{d}xx{a}xx {GdG}x2  {g}xx|  {g}xx{g}xx {gfg}x2{eA}x3/:|
%
V:1 
g/|  Gd```Be  df e2| gfge Bega  |[1 
Gd```Be  df e2|
V:2 
x/|   {a}xx{g}xx   {g}xx{gef}x2|  {a}  {g}  |[1 
xx{g}xx   {g}xx{gef}x2|
%
V:1 
Be```df  f2e3/:|\
 [2  gfge fd```ed  | Be```df  f2e2 |]
V:2 
{g}xx{g}xx {gfg}x2{eA}x3/:|\
 [2  {ga}  {g}xx{g}xx  |  {g}xx{g}xx {gfg}x2{eA}x2 |]

In practice, BarFly can play that okay, but display hits one of the
spots where there's a red warning triangle on the roadway and Phil
can be seen standing by it with a shovel.  Does any program get it
right?
-
Jack Campin: 11 Third Street, Newtongrange, Midlothian EH22 4PU; 0131 6604760
http://www.purr.demon.co.uk/jack * food intolerance data  recipes,
Mac logic fonts, Scots traditional music files, and my CD-ROM Embro, Embro.
-- off-list mail to j-c rather than abc at this site, please --
To subscribe/unsubscribe, point your browser to: 
http://www.tullochgorm.com/lists.html
To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html


Re: [abcusers] something that ought to work...

2004-04-15 Thread Phil Taylor
On 15 Apr 2004, at 18:54, Neil Jennings wrote:

If you make a couple of small changes, my program HARMONY can deal 
with it

a) Put [ and ] around the v:1 and v:2 in the body (But not in the 
header)
OK either way in BarFly, but the way Neil suggests is the way you 
should have
done it, as the other way is deprecated, and may not be supported in 
future.

b) remove Hp from the key signature - Harmony does not support pipes 
key signatures
BarFly does support pipes signatures, but you can't have both, so E 
Hp is wrong
(they're different keys anyway).

c) replace the back quotes by upright quotes - maybe HARMONY got this 
wrong? please let me know.
I was working from the abc v2 draft, which does seem to leave a lot 
out.
Back quotes are just text spacers and should have no effect on the 
interpretation of the abc.
Upright quote (ascii apostrophe) shifts the pitch of a note up by an 
octave.

d) remove the word merge (What does it do?)
It means draw the second voice on the same staff as the first.

Phil Taylor

To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html


[abcusers] Clef specification in 2.0

2004-04-15 Thread Steven Bennett
Hi all!

I've been working (ever so slowly) on my ABC parser, and one item which came
up was the specification of the clef field as listed in 2.0 spec.  (Note
that this message is 2.0 specific -- I'm aware there are other issues in
what various pre-2.0 programs did that may be relevant, but that's another
discussion...)  It's mostly fairly clear, except for one area which I see as
a potentially serious parsing problem.

Specifically, it mentions that clef= may be omitted, but then later it
says that More clef names may be allowed in the future, therefore unknown
names should be ignored.

What bothers me is that means you could have pretty much any space delimited
word mixed into a Key or Voice line, and not know if it meant a clef or
something else.  I'd like to see it changed so that clef= is required for
any clef name *except* for treble, bass, tenor, alto, and perc.

Note I didn't specify none in that list -- that's because none by itself
can be specified as the key signature, making K:none be ambiguous - does
it mean a key signature of none, or no clef?  (This was what originally
triggered my examination of this part of the spec...)  So I think none
requires the clef= to be unambiguous.

Given the added concept that the clef data may include pretty much anything
in the form propertyname=value, I suggest we might change section 6 to
read something like this:




6. Clef Properties

Any number of Clef Properties may be provided in any combination in K: and
V: fields, separated by whitespace.  All clef properties are strings which
follow the normal property syntax:

propertyname=value

...where propertyname and value may be any strings not containing
whitespace.  The standard clef properties include:

clef=clef name[line number][+8 | -8]
- Specifies the clef for the current staff.  clef name May be
treble, alto, tenor, bass, perc or none. perc selects the
drum clef.  Other names (that do not contain digits or the '+'/'-'
characters) may be used as well -- if your program does not
recognize the clef name, it should use the default (treble) clef.

As a special case, the treble, alto, tenor, bass, and perc
clef names can be used as abbreviations for clef=treble, clef=alto,
clef=tenor, clef=bass, and clef=perc, respectively.  The none
clef name may NOT be used in this fashion.

line number, if specified, indicates on which staff line the base clef
is written. Defaults are: treble: 2; alto: 3; tenor: 4; bass: 4.  This
is useful when notating other common clefs.  For example:

clef=bass3  -- for the baritone clef
clef=alto2  -- for the mezzosoprano clef
clef=alto1  -- for the soprano clef

+8 | -8  - draws '8' either above or below the staff. The player will
transpose the notes one octave higher or lower.

middle=pitch
- is an alternate way to define the line number of the clef. The pitch
indicates what note is displayed on the 3rd line of the staff. Defaults
are: treble: B; alto: C; tenor: A,; bass: D,; none: B.  middle= may be
abbreviated as m=.  This specifier can be handy when working in the
bass clef. Setting K: clef=bass middle=d will save you from adding comma
specifiers to the notes.

transpose=semitones
- When playing, transpose the current voice by the indicated amount of
semitones. This does not affect the printed score. Default is 0.
transpose= may be abbreviated as t=.  The transpose specifier is
useful for e.g. a Bb clarinet, for which the music is written in the key
of C, although the instrument plays it in the key of Bb:

[V:Clarinet] [K:C transpose=-2]

stafflines=lines
- The number of lines in the staff. Default is 5.

Note that although this standard supports the drum clef, there is currently
no support for special percussion notes.

Applications may introduce their own properties.  Their property name should
start with the name of the application, followed a colon, followed by the
name of the specifier.

For example:
V:p1 clef=perc stafflines=3 m=C  mozart:noteC=snare-drum
 
Applications which encounter a property they do not recognize should ignore
it.

===


The other area I'd like some clarification of related to clef properties is
in the K: line.  First, where can clef properties can occur?  Is it possible
to have clef properties *before* a key signature, ie.:

K:clef=treble Dm

...or must the key come first, if it's present?  If the key can come second,
is it possible to have properties before *and* after, ie.:

K:clef=treble C transpose=-2

IMHO, I'd prefer limiting it so that the key would always come first if
present.


Finally, what key should be used if the first (and perhaps only) K: line in
a tune doesn't contain a key, only clef properties?  Or should we require
that the first K: line must have a key (or none) specified?

Thanks,
--Steve Bennett

To subscribe/unsubscribe, point your browser