Re: transpose notes to new key?

2008-06-17 Thread Peter Chubb
>>>>> "Mark" == Mark  <[EMAIL PROTECTED]> writes:

Mark> hi all ..warning noob.  transpose notes to a new key?


Just transposing a chord is easy.

\transpose c' d { \key c \major c^"major triad" e g }

But switching between modes is harder.  You probably have to define
the snippets you want for each mode with no key sig, then transpose.

So:

majorTriad={ \key c \major c e g}
minorTriad={\key c \minor c es g}
Lydian={\key c \major c e gis bes]

Then transpose.

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Better Midi!!!

2008-06-18 Thread Peter Chubb


Hi folks,
Thanks to Lilypond and a lot of work from the team here, the
UNSW/NICTA robot clarinet won first prize in the Artemis Orchestra
competition.

See
http://www.nicta.com.au/research/research_themes2/embedded_systems/artemis
for details.

The `articulate' script that adds phrasing and trills to the Midi
output will be available as soon as I get permission to post it,
likewise the Rimsky-Korsakov `Flight of the Bumblebee' (which will go
to Mutopia).

A few technical details on the robot:
 -- it has a gumstix running Linux, that does Lilypond and some
control loops, which talk to ...
 -- a robostix that controls fifteen solenoids, an air pressure
modulator, a fake tongue and some fake lips to operate the reed.

The clarinet itself is an unmodified Yamaha student model, albeit with
a plastic reed.

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: broken octaves

2008-07-27 Thread Peter Chubb
>>>>> "Jay" == Jay Anderson <[EMAIL PROTECTED]> writes:


Jay> I never followed up with him about how he's noting key change
Jay> events.  He might be processing a whole score at once to get this
Jay> extra information.

I am.

It *should* be gettable from the current context, but I don't know
how.

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: A new melody with existing chords

2008-07-31 Thread Peter Chubb
> "Thermo" == Thermo  <[EMAIL PROTECTED]> writes:

Thermo> I have a one page lyrics, melody and chords lilypond format
Thermo> file.

Thermo> Now I would like to add a flute melody over the same chords on
Thermo> a new page, then add a guitar melody over the same chord
Thermo> structure. So it is basically one page for the words one for
Thermo> the flute one for the guitar.

Create a new \score block for each arrangement you want to have, with
a \pageBreak at the end.

So:

\score {
<<
\context Staff \flutepart
\context ChordNames { 
\set chordChanges = ##t
\guitarChords \pageBreak
}
>>
}

\score {
<<
\context Staff \guitarPart
\context ChordNames { 
\set chordChanges = ##t
\guitarChord \pageBreak
}
>>
}

\score {
<<
\context ChordNames {
\set chordChanges = ##t
\guitarChords
}
\context Staff \context Voice = "one" {
\autoBeamOff
\verseMelody
}
\context Lyrics \lyricsto "one" \verseWords
>>
}


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Better Midi!

2008-08-05 Thread Peter Chubb

Hi Folks,
I now have permission to release the articulation code
to improve MIDI output for lilypond.  I've attached it as a
tar.bz2 file here.  The code is copyright 2008 NICTA (my employer),
but released under GPL version 2.

The simple way to use it is to use the lilywrap script in the tarball:
  $ lilywrap inputfile.ly
  $ timidity inputfile.midi

Long version of how to use it:

  \include "articulate.ly"
  
  Insert \unfoldRepeats \articulate into the appropriate places.

Short Example:

\include "articulate.ly"
\score {
\unfoldRepeats \articulate <<
\context Staff { 
\set Staff.midiInstrument="clarinet"
\relative c' {
\time 4/4 \tempo 4=100
c4-. c4( d e |
 f\trill) g\turn a b |
 c1-- 
}
}
>>
\midi {}
}

What it does:
 * Any note not under a slur or phrasing mark, and not marked with an
   explicit articulation, is shortened by ac:normalFactor (default
   7/8)
 * Any note marked staccato is shortened by ac:staccatoFactor (default
   1/2)
 * Any note marked tenuto gets its full value.
 * Appogiaturas are made to take half the value of the note following,
   without taking dots into account (so in \appoggiatura c8 d2. the c
   will take the time of a crotchet)
 * Trills and turns are expanded.  The algorithm tries to choose notes
   within the time of the current tempo that lead to each twiddle
   being around 1/8 seconds; this can be adjusted with the
   ac:maxTwiddleTime variable.
 * rall, poco rall and a tempo are observed.  It'd be fairly trivial
   to make accel. and stringendo work too.

There's a TODO list a mile long; unfortunately I'm no longer being
paid to work on this, but I'm happy to coordinate the attempts of
others to work on it.  Also, my scheme coding is appallingly bad (this
is the first serious work I've done in scheme) so there're probably
major improvements that can be made.



articulate.tar.bz2
Description: Binary data


--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Better Midi!

2008-08-07 Thread Peter Chubb
> "Trevor" == Trevor Daniels <[EMAIL PROTECTED]> writes:

Trevor> Hi Peter

Trevor> Just tried your articulate.ly.  Looks really promising!  A
Trevor> couple of early comments.  It may be obvious, but \articulate
Trevor> should only be used in a \score block with just \midi {} - it
Trevor> mucks up the printed output if used with \layout { }.  And
Trevor> dynamics in the midi score block must be applied to all voices
Trevor> to be effective.

Peter> Yes, it does muck up the printed code.
Peter> I'm not sure about the dynamics issue.  There are lots of pieces I
Peter> have where the dynamics for each voice are independent --- so for
Peter> example, the voice is marked `sempre forte' while the piano part is
Peter> `decrescendo' then `pp' in Bizet's Toreador's song.

Oh, I know what you mean now.  It's a `feature' of Lilypond's midi
output: volume control is done with global control events that set the
master volume, instead of using velocity (at the start of each note)
and aftertouch (during each note).  Thus midi volume is global,
instead of per-voice.

Peter C


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Questions relating to hymnals

2008-08-20 Thread Peter Chubb
> "Carl" == Carl Peterson <[EMAIL PROTECTED]> writes:

Carl> I'm working on a hymnal, and I have some questions
Carl> about some things I need to do for it, layout-wise.

Carl> 1) How can I number the hymns (i.e., number each score). I can't
Carl> use strict page numbering, since multiple hymns may be on a
Carl> single page (and there are multi-page hymns). I also want the
Carl> system to number the scores dynamically, so that I can
Carl> re-arrange the hymns to allow for spacing and other
Carl> considerations.

You probably want to use Lilyoond-book, and write some LaTeX to do the
actual numbering.  Putting each hymn into its own Figure environment
would do the trick in a crude way, but customising a document class,
maybe based on the memoir class, is IMHO the best way to get the
effects you want.

Carl> 2) If I have verses with different rhythms (e.g., one verse has
Carl> only one syllable at a quarter note, but another verse has two
Carl> syllables in the same time period) and the rhythm of the verse
Carl> with more syllables is indicated using tied notes (so that the
Carl> rhythm of the other verse is preserved musically), how would I
Carl> go about inputing the lyrics so that the verse with more
Carl> syllables had its syllables in the right positions?

The best way is to tie the syllables in the lyrics of the verses where
you have more than one to a foot.
Thus:

  a b_c d

^^^ b_c is treated as two syllables in the printed output, but is
associated with a single note.  The underscore is replaced with space
on output.


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: a script / tool for transposing a lilypond staff / source file by a given interval and output result as a new file

2008-09-07 Thread Peter Chubb
>>>>> "Reinhold" == Reinhold Kainhofer <[EMAIL PROTECTED]> writes:

Reinhold> -BEGIN PGP SIGNED MESSAGE- Hash: SHA1


Reinhold> That, and you should add \transposition
Reinhold> displayPitchOfYourNote to the beginning of your original
Reinhold> score in some strange display pitch. This tells lilypond the
Reinhold> actual concert pitch of that part, so that quoting the
Reinhold> instrument in other voices displays the correct pitches
Reinhold> there, too, and the MIDI output uses the correct sounding
Reinhold> pitch. See
Reinhold> 
http://kainhofer.com/~lilypond/Documentation/user/lilypond/Displaying-pitches.html#Instrument-transpositions


Actually, the MIDI output won't necessarily be correct.  Using
\transpositon seems to freeze the pitch so \transpose does
nothing to the MIDI, but does affect the printed output.

I've reported this a couple of times to the bugs list, but been
ignored.

Try this:
 \score {
\transpose c' bes
<<
\relative c' { c1 }
\relative c' { \transposition bes d1 }
>>
\midi{}
  }

You should get a unison, but instead get a major second in the MIDI
output.

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: emacs question

2008-09-10 Thread Peter Chubb
> "andersvi" == andersvi  <[EMAIL PROTECTED]> writes:

andersvi> (buffer-file-name) returns a string without
andersvi> backquote-escaping the whitespaces.

andersvi> Heres a replacement (try evalling this somewhere in emacs
andersvi> after 'lilypond-mode is loaded).  Please test before
andersvi> including anywhere.

You should use shell-quote-argument, which is already in (x)emacs.

Peter C


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: any accompanyment software taking lilypond as input files?

2008-09-10 Thread Peter Chubb
> "Daryna" == Daryna Baikadamova <[EMAIL PROTECTED]> writes:


Daryna> Are there any
Daryna> accompaniment systems / plugins (open or proprietory) taking
Daryna> lilypond files as input?

I just generate Midi without the clarinet part and play along with
it.  Tricky part is that a Midi sequencer has no soul .. so there's no
possibility for rubato

Peter C


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Transposing help.

2008-10-26 Thread Peter Chubb
>>>>> "Seth" == Seth Merkley <[EMAIL PROTECTED]> writes:

Seth> I've recently been trying to transpose a piece of music I got
Seth> from mutopia here:
Seth> http://www.mutopiaproject.org/cgibin/piece-info.cgi?id=645
Seth> http://www.mutopiaproject.org/cgibin/piece-info.cgi?id=645 I

To transpose the score, put the \transpose directive before the
\unfoldRepeats directive in each \score{} block.

And as was said in a different message, you need to convert the source
to a more recent Lily.

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: lilypond print jobs consistently disappear to dev null

2008-11-16 Thread Peter Chubb
>>>>> "Federico" == Federico Grau <[EMAIL PROTECTED]> writes:

Federico> Hello, My lilypond print jobs consistently disappear to dev
Federico> null when I try to print them with a free software tool such
Federico> as kpdf or gpdf?!  My printer is a pretty standard laser
Federico> printer, (HP Lasterjet 4 with PS support) connected via
Federico> parallel cable to a CUPS server.  Most of the time it works

Try just using lp from the command line:
 lp xxx.pdf

I have the same problem from XPDF, and tracked it down to a bad
interaction between CUPS and XPDF's output.

Federico> # failed print output from kpdf
Federico> http://casagrau.org/~donfede/lily/lily_print_bad.ps

There's a permissions error on this one.
--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Explicit durations in Lyrics behaving strangely

2008-12-15 Thread Peter Chubb

Hi,
I'm trying to use the Adeste Fideles tune from
Mutopia http://www.mutopiaproject.org/cgibin/piece-info.cgi?id=367 
I ran convert-ly on it.  It uses explicit durations on the lyrics.  I see
many warnings: 

adeste.ly:94:18: warning: Lyric syllable does not have note. Use \lyricsto or 
associatedVoice.
A4 -- des2 -- 
  te,4 fi -- del2 -- es,

The output looks OK.  Why does Lily care about associated voice, if
all lyrics have explicit durations?

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
A university is a non-profit organisation only in the sense that it
spends everything it gets  ... Luca Turin.


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Better Midi, anyone?

2008-03-10 Thread Peter Chubb


Hi folks,
The artemis orchestra competition has specified Lilypond as
its input format (see
https://www.artemisia-association.org/artemis_orchestra ) for robotic
instruments.  We're trying to put together an entry (our robotic
violinist was entered last year, with some success;
(http://www.nicta.com.au/news/previous_releases3/2007_media_releases/syo_violinist_performs_with_award-winning_robofiddler
)

Anyway, to the point.  We want to use MIDI as an intermediate language
for controlling the robot, but Lilypond's midi output ignores most of
the input.  For example, articulation (staccato, tenuto, accents and
slurs), dynamics (I can't work out how to get a smooth crescendo on a
single note), and ornaments (trills, mordents, turns etc., are not
expanded).

Before I start working on any of this, is anyone else doing anything
in the area?  Most of it may be doable by scheme scripts inserted into
the source file before calling Lilypond.

Harder stuff is interpreting the purely textual annotations.  For
example, `poco rall', `molto rit.', `a tempo', 'Tempo I',  'estinto',
'sotto voce', or (some of my favourites, from a piece by Messaien)
`perdu', or `comme oiseaux'.
It'd be possible to translate some of these into metronome markings or
\ or similar; others, I have no idea about.


Non-notated repeats are also going to be hard (`dal segno al coda',
`dal segno al fine')
--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Better Midi, anyone?

2008-03-10 Thread Peter Chubb
>>>>> "Graham" == Graham Percival <[EMAIL PROTECTED]> writes:


Graham> The above points are possibly with a macro: instead of simply
Graham> moltorit = \markup{ \italics molto rit }

The point is that for the Artemis competition we have to start with
unmodified Lilypond input.  So we have to recognise, say
c'^"rit." or c'^"rall" etc., and convert to \tempo 4=60 or
whatever.

I think I can do that.

The hard dynamics one is that at present to notate a smooth
crescendo/decrescendo on a single note you have to do something like:

<< { c'1 } \\
   {s16\pp \< s4. \! s16 \ff \s16 \> s4. \! s16 \pp } >>

because there's no appropriate language construct.

That creates a new voice, and attaches the dynamics to it instead
of to the note.  To produce good midi output, you need to change this
to something like,

{ c16 \pp \< ~ c16 ~ c16 ~ c16 ~ c16 ~ c16 ~ c16 \! ~ c16 \ff ~ c16 \>
~ c16 ~ c16 ~ c16 ~ c16 ~ c16 ~ c16 \! ~ c16 \pp }

and even that doesn't give as smooth a transition as one would like.
Any ideas?

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


partcombine problem

2008-03-23 Thread Peter Chubb

Hi,
I want to use partcombine to merge in the tune for a song with
its piano accompaniment.  But it's not working the way I expect.

Here's a snippet:

---
\version "2.11.41"
\score{
\context Staff 
\partcombine 
\context Voice=tune \relative c' {s4. s8 b8. d16 }
\context Voice=accomp \relative c'{ s4.   a8 8. d16 }
}
---

I see the warning message, `too many clashing notecolumns', and the
augmentation dot on the b is repeated --- as if the \partcombine did
nothing.  In other places in the music (not in this snippet), the
beams are repeated, so a beam of quavers look like semiquavers.

I want the tune in a separate named voice so I can use \lyricsto.
I could put it on a separate stave, but that would make the music
spread over two pages.


Any ideas?

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: partcombine problem

2008-03-23 Thread Peter Chubb
>>>>> "Trevor" == Trevor Daniels <[EMAIL PROTECTED]> writes:

Trevor> Hi Peter Forget \partcombine.  Chapter 3.2 in the Learning
Trevor> Manual might help.  You just need to put the two voices in
Trevor> parallel, like this:

 \version "2.11.41" 
\score{ \context Staff << \context Voice=tune { \voiceOne \relative c' 
{s4. s8 b8. d16 } }
 \context Voice=accomp { \voiceTwo \relative c'{ s4.  a8 8. d16 } }
>>
}

That doesn't do what I want, as the \voiceTwo means that all the
accompaniment stems go down, and notes in tune and accompaniment have
two stems, one up and one down.

For this particular example, where there are no timing differences, I
want the result to look *exactly* the same as:

 \version "2.11.41" 
 \score{ 
\context Staff << 
   \context Voice=accomp {  \relative c'{ s4.  a8 8. d16 } }
>>
}

but with a voice (called `tune') that I can attach lyrics to, with
mostly the same timing, and mostly doubling the top line in the
accompaniment.

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Em2 chord

2008-04-02 Thread Peter Chubb
>>>>> "Michael" == Michael Watts <[EMAIL PROTECTED]> writes:

Michael> e2:m Now, if only there were a manual..

That's a minim-length e:m chord.  He wants an E-minor chord with
suspended second.  At present, there's a BUG: e:m2 displays as e:sus2,
and loses the flat 3rd.  The chord should be  (but that
sounds awful; you'ld usually play  or 
or just  etc., depending on context)

Michael> On Thu, Apr 3, 2008 at 10:55 AM, Zoltan Kota
Michael> <[EMAIL PROTECTED]> wrote:

Michael> Hi,
   
Michael> I would like to type Em2 chord in chordmode. How can I do
Michael> that? e:m2 doesn't work.  Zoltan

Michael> ___
Michael> lilypond-user mailing list lilypond-user@gnu.org
Michael> http://lists.gnu.org/mailman/listinfo/lilypond-user



--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Em2 chord

2008-04-02 Thread Peter Chubb
>>>>> "Peter" == Peter Chubb <[EMAIL PROTECTED]> writes:

>>>>> "Michael" == Michael Watts <[EMAIL PROTECTED]> writes:

Michael> e2:m Now, if only there were a manual..
   
Zoltan> I would like to type Em2 chord in chordmode. How can I do
Zoltan> that? e:m2 doesn't work.  Zoltan

Try 
e:2.3-
to get the flattened 3rd.

But I suspect you really want and would play either e:2 or e:m9

Peter C


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: constructing a jazz piece

2008-04-09 Thread Peter Chubb
>>>>> "Stan" == Stan Mulder <[EMAIL PROTECTED]> writes:

Stan> David Bobroff  centrum.is> writes:
>> What I do is to put road-map stuff (key changes, time changes,
>> repeats, segnos etc.) in a 'global' block.  Then I combine that
>> with parts for the individual part scores, and with the top staff
>> in the main score.

Stan> David,

Stan> Is there an example somewhere?

The main problem with this approach is that the musical output is
incorrect -- `chording' the global section with the individual parts
makes the output *look* right without acutally *being* right.

Try, e.g., 

global= { \time 4/4 \key es \major \repeat volta 2 {
s1*2 } }

notes =\relative c' { es4 f es f | es f es f }
\score {
\unfoldRepeats \context Staff << \global \notes >>
\midi{}
\layout{}
}



--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


How to generate notes in a scale

2008-04-18 Thread Peter Chubb

Hi,
I'm currently trying to get improved MIDI output.  I have a
scheme function that processes articulations like staccato, tenuto,
etc., working now.  But for turns and trills, I need to generate the
notes around a note in the current key.

Has anyone written a scheme function to do this yet?  for
example, given e return fis (if the current key is g), or given e return f (if
the current key is c)?  I'm a bit stuck, as I can't even work out how 
to get at the current key within a music-function.
--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: How to generate notes in a scale

2008-04-20 Thread Peter Chubb
OK, here's how I did it in the end.  Is there a better way???

#(define ac:current-key (make-music
  'KeyChangeEvent
  'tonic
  (ly:make-pitch -1 0 0)
  'pitch-alist
  (list (cons 0 0)
(cons 1 0)
(cons 2 0)
(cons 3 0)
(cons 4 0)
(cons 5 0)
(cons 6 0

#(define (ac:up note)
"Given a NoteEvent, replace its pitch with the next one 
 up in the current scale.
 Doesn't cope too well with melodic minors"
  (let* ((pitch (ly:music-property note 'pitch))
 (notename (ly:pitch-notename pitch))
 (new-notename (if (eq? notename 6) 0 (+ 1 notename)))
 (alterations (ly:music-property ac:current-key 'pitch-alist))
 (new-alteration (cdr (assq new-notename alterations)))
 (new-octave (if (eq? new-notename 0) (+ 1 (ly:pitch-octave pitch))
  (ly:pitch-octave pitch)))
   )
   (set! 
(ly:music-property note 'pitch)
(ly:make-pitch new-octave new-notename new-alteration

(ac:down is analogous to ac:up)

Whenever I see a KeyChangeEvent in the rest of the program I update
ac:current-key.

Is there a better way?  Does Lilypond keep track of the current key
signature for me?

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: How to generate notes in a scale

2008-04-21 Thread Peter Chubb
 factor ac:tenutoFactor))
   ((string= articname "mordent")
(set! actions (list 'mordent)))
   ((string= articname "prall")
(set! actions (list 'trill)))
   ((string= articname "trill")
(set! actions (list 'trill)))
   ((string= articname "turn")
(set! actions (list 'turn)))
 )))
((SlurEvent)
 (let ((direction (ly:music-property e 'span-direction)))
  (set! ac:inSlur (eq? direction -1
((PhrasingSlurEvent) 
 (let ((direction (ly:music-property e 'span-direction)))
  (set! ac:inPhrasingSlur (eq? direction -1)
   (if (null? tail)
(cond 
 ((null? actions)
  (if ac:inSlur (cons 'articulation  '(1 . 1))
   (cons 'articulation  factor)))
  (else actions))
(ac:getactions:elements tail actions

#(define (ac:getactions music)
   (let* ((es (ly:music-property music 'elements)))
(ac:getactions:elements es '(

#(define (ac:setduration music duration)
  (if 
   (or (eq? (ly:music-property music 'name) 'NoteEvent)
(eq? (ly:music-property music 'name) 'RestEvent))
   (set! (ly:music-property music 'duration) duration)))

#(define (ac:articulate-chord music)
  (begin
   (cond 
((eq? 'EventChord (ly:music-property music 'name))
 (let ((actions (ac:getactions music)))
  (case (car actions)
   ((articulation)
(map
 (lambda (x) (ac:articulate-one-note x (cdr actions)))
 (ly:music-property music 'elements))
(let*
 ((num (car (cdr actions)))
  (denom (cdr (cdr actions)))
  (mult (ly:duration-factor ac:currentDuration))
  (newnum (* (- denom num) (car mult)))
  (newdenom (* (cdr mult) denom))
  (len (ly:duration-log ac:currentDuration))
  (dots (ly:duration-dot-count ac:currentDuration)))
 (if (not (eq? num denom))
  (make-music 'SequentialMusic 'elements 
   (list music 
   (make-music 'EventChord 'elements 
(list
 (make-music 'RestEvent 'duration (ly:make-duration len dots newnum 
newdenom))
  music)))
   ((trill) music)
   ((turn)
(let*
 ((dur (ly:music-property
(car (ly:music-property music 'elements)) 'duration))
  (factor (ly:duration-factor dur))
  (newdur (ly:make-duration (+ (ly:duration-log dur) 2)
   (ly:duration-dot-count dur) (car factor)(cdr factor
 (begin
  (map (lambda (y) (ac:setduration y newdur)) 
   (ly:music-property music 'elements))
  (let* ((above (ly:music-deep-copy music))
 (below (ly:music-deep-copy music))
 (newmusic (make-music 'SequentialMusic 'elements (list above 
music below music
   (begin
(map (lambda (y) (ac:down y))
 (filter 
  (lambda (z) (eq? 'NoteEvent (ly:music-property z 'name)))
  (ly:music-property below 'elements)))
(map (lambda (y) (ac:up y))
 (filter 
  (lambda (z) (eq? 'NoteEvent (ly:music-property z 'name)))
  (ly:music-property above 'elements)))
newmusic)
 )))
((eq? 'KeyChangeEvent (ly:music-property music 'name))
 (set! ac:current-key music)
 music
   )
(else  music))
 ))


   
articulate = #(define-music-function (parser location music)
   (ly:music?)
   "Adjust times of note to add tenuto, staccato and 
normal articulations.
"
   (music-map ac:articulate-chord music)
   )


Usage
lots-of-music=\relative c'' { ... }

\include "articulate.ly"

\score {
\unfoldRepeats \articulate lots-of-music
\midi{}
}

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia



___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Looking inside markup

2008-04-23 Thread Peter Chubb

On my quest for better MIDI, I'm trying to deal with alterations on a
turn.  How do I look `inside' a markup sequence?

What I've tried is:
  (let* ((t (ly:music-property e 'text)))
   (cond 
((equal? t (markup #:line (#:flat)))
  (set! alteration -1/2))
((equal? t (markup #:line (#:sharp)))
  (set! alteration 1/2

but this never matches.

The music looks something like:
d^\markup{\flat}^\turn^\markup{\sharp}




--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


How to stack scripts and textscripts?

2008-04-27 Thread Peter Chubb

Hi,
I'm trying to set a turn symbol with a natural sign over it
and a flat sign under it.  I tried:
c''^\markup{\natural}^\turn^\markup{\flat}
but the natural and flat signs always turn up next to each other,
and the turn is above both.  Any ideas?  Playing with script-priority
moves both accidentals, not just one, even with \once.

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Looking inside markup

2008-04-28 Thread Peter Chubb
>>>>> "Peter" == Peter Chubb <[EMAIL PROTECTED]> writes:

Peter> On my quest for better MIDI, I'm trying to deal with
Peter> alterations on a turn.  How do I look `inside' a markup
Peter> sequence?

Peter> What I've tried is: 
(let* ((t (ly:music-property e 'text)))
  (cond 
((equal? t (markup #:line (#:flat))) 
  (set! alteration  -1/2)) 
((equal? t (markup #:line (#:sharp))) 
  (set! alteration 1/2

Peter> but this never matches.

Turns out that the markup function adds an extra #:line -- so I need
to use (markup #:flat) which generates (markup #:line (#:flat))
--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Looking inside markup

2008-04-28 Thread Peter Chubb
>>>>> "Peter" == Peter Chubb <[EMAIL PROTECTED]> writes:

Peter> On my quest for better MIDI, I'm trying to deal with
Peter> alterations on a turn.  How do I look `inside' a markup
Peter> sequence?

Peter> What I've tried is: 
Peter> (let* ((t (ly:music-property e 'text)))
Peter>   (cond 
Peter>  ((equal? t (markup #:line (#:flat))) 
Peter>   (set! alteration -1/2)) 
Peter>  ((equal? t (markup #:line (#:sharp))) 
Peter>   (set! alteration 1/2

Peter> but this never matches.

Turns out that the scheme function (markup ...) always adds an 
extra #:line  so what I should try to match against is (markup #:flat)
Then it works.
--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Programming questions

2008-04-28 Thread Peter Chubb
>>>>> "Jay" == Jay Anderson <[EMAIL PROTECTED]> writes:

Jay> A couple of weeks ago I recall reading about someone trying to
Jay> get midi trills working. The key needed to be understood so that
Jay> it could figure out the correct note to trill to. I can't find
Jay> the thread to see if it was resolved. Are there some functions
Jay> out there for doing this?

That was me.  I'm still trying to work things out in a general way,
but have a hack that works `well enough' for my current purpose.
Basically, I rely on noting keychange events, and assuming the
starting key is c major.  The current key is in ac:current-key



#(define (ac:up note)
  (let* ((pitch (ly:music-property note 'pitch))
 (notename (ly:pitch-notename pitch))
 (new-notename (if (eq? notename 6) 0 (+ 1 notename)))
 (alterations (ly:music-property ac:current-key 'pitch-alist))
 (new-alteration (cdr (assq new-notename alterations)))
 (new-octave (if (eq? new-notename 0) (+ 1 (ly:pitch-octave pitch))
  (ly:pitch-octave pitch)))
   )
   (set! (ly:music-property note 'pitch)(ly:make-pitch new-octave new-notename 
new-alteration



Jay> In a few functions I've written they either work correctly inside
Jay> a \relative section or correctly outside but not both. Is there a
Jay> standard way to make them work in both? 

Not that I know of.

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
A university is a non-profit organisation only in the sense that it
spends everything it gets  ... Luca Turin.


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


What's a moment?

2008-04-29 Thread Peter Chubb
Hi,
Reading the scheme code and the documentation, I'm struggling
with the concept of a moment in Lilypond.  The documentation says it's
a rational number that represents a moment in musical time.
Therefore there should be a way to add a duration to a moment to get
another moment.  But there doesn't seem to be.  Likewise, there *are*
functions for adding, subtracting, multiplying and dividing moments.
Which makes no sense if a moment is a point in time.

So what *is* a moment?  What do the numerator and denominator
represent?  Beats?  Bar numbers?  Milliseconds from the start of the
piece?  Inquiring minds want to know.


--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
A university is a non-profit organisation only in the sense that it
spends everything it gets  ... Luca Turin.


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: What's a moment?

2008-04-30 Thread Peter Chubb
>>>>> "Mats" == Mats Bengtsson <[EMAIL PROTECTED]> writes:

Mats> A quarter note is represented as 1/4, a dotted half note as 3/4,
Mats> ...  Obviously it makes sense to add and subtract moments, but
Mats> since they internally are represented as rational numbers, you
Mats> also get multiplication and division for free.

So you're saying a lilypond  moment is a duration of musical time, not an
instant in musical time?   Is there a function to translate from
lilypond moment to lilypond duration and back?


--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
A university is a non-profit organisation only in the sense that it
spends everything it gets  ... Luca Turin.


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: third down, diatonically

2008-05-01 Thread Peter Chubb
>>>>> "Stefan" == Stefan Thomas <[EMAIL PROTECTED]> writes:

Stefan> Dear Lilypond-users, I
Stefan> would like to transpose this melody diatonically one third
Stefan> down:

I think you need something like the code I've been working on for
trills and turns.  See the code in
http://www.nabble.com/Programming-questions-td16953318.html for
diatonically up one tone, it's easy enough to adjust for down a third.
--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
A university is a non-profit organisation only in the sense that it
spends everything it gets  ... Luca Turin.


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Moving a hairpin horizontally

2008-05-12 Thread Peter Chubb
>>>>> "kieren" == kieren macmillan <[EMAIL PROTECTED]> writes:

kieren> Mats,
>> I would have though that \override Hairpin #'bound-padding = #2.0
>> should do the job, but it seems that it only affect the right end,
>> not the left end.  Of course, you could then use a combination of
>> X-offset and bound-padding to get what you want, but I'm not
>> convinced that this is the expected behaviour.

kieren> Agreed.

kieren> On a not-too-distantly related note, I again put up a
kieren> sponsorship offer for the ability to control padding of such
kieren> items BY NOTE DURATION. For example, I would love to have a
kieren> Hairpin on a whole note start at the half-note position and be
kieren> 3/8s long (i.e., stop 1/8 before the end of the whole note) by
kieren> saying

You make this look right now, e.g., by
<< c1 \\ {s2\< s4. \! s8} >>


but the MIDI output doesn't sound right.   I'm trying to get the MIDI
output right, so have to explicitly do things like:
\pp c64 ~ \< c64 ~ c64 ~ c64 ~ c64 ~ c64 ~\!\sf c64 ~ \> c64 ~ c64
~ c64 ~ c64 ~ c64 ~ c64 ~ c64 ~c64 ~ c64 ~ c64\! \pp


--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
A university is a non-profit organisation only in the sense that it
spends everything it gets  ... Luca Turin.


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Changing font in Lilypond...

2005-09-21 Thread Peter Chubb

How do I get Lily to use a more sensible font for PDF output?  Because
I don't have New Centiury Schoolbok installed on my system, lyrics
come out in Courier (and look awful).  The documentation just says
`the default font is set by Pango/font' which helps me not at all...

-- 
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
The technical we do immediately,  the political takes *forever*


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Can't chord lyrics?

2004-08-09 Thread Peter Chubb


I can't seem to put lyrics into chords ... 

There's an example of what I'm trying to do at the end of the mail.

Lilypond 2.2.3 gives lots of `Junking event; 'LyricEvent', throws away
the words `another part' but labels the central section as stanza 2.

I've tried to put the two parallel sections into different Lyrics
contexts, but then it's hard to get them all in between the two staves.
(in other words, I haven't been able to work out how to do it, short
of splitting the tune into three Voice contexts, and then aligning
each part of the lyrics in turn.)
--
\version "2.2"

words=\lyrics {
a start part 
<< 
{
\set stanza = "1."  % THIS DISAPPEARS
a mid -- dle part   % THIS IS VISIBLE
}
{
\set stanza = "2."  % THIS IS VISIBLE
a noth -- er part   % THIS DISAPPEARS
}
   >>
and an end bit
}

tune = \notes\relative c' {
c4 d e2
\repeat volta 2 {
f4 e8 e d2
}
c8 c b4 c2
}

accomp = \notes \relative c {
c4 g c c |
\repeat volta 2 {
g g g g |
}
c4 g c2
}

\score {
\context ChoirStaff <<
\context Staff = Top \context Voice=w \tune
\lyricsto w \new Lyrics \words
    \context Staff = bottom \notes {\clef "F" \accomp}
>>
\paper{}
}

--
Peter Chubb


___
lilypond-user mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Can't chord lyrics?

2004-08-11 Thread Peter Chubb
> "Mats" == Mats Bengtsson <[EMAIL PROTECTED]> writes:

Mats> Your example doesn't work, since both lines of lyrics and both
Mats> settings of the stanza property are done in one and the same
Mats> Lyrics context. 

That's what I thought, but couldn;t coe up with the right magic to get
it to work -- so thanks for the example!

Peter C


___
lilypond-user mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: two bugs (?)

2002-07-22 Thread Peter Chubb

> "Mats" == Mats Bengtsson <[EMAIL PROTECTED]> writes:

>> On Wed, 2002-07-10 at 11:02, Mats Bengtsson wrote: > > <<< > >
>> warning: couldn't find any font satisfying > > (#f italic medium
>> roman -1)
>> > > 
Mats> No, no! The order is correct (maybe you could say it's wrong in
Mats> the error printout). What was missing was just a few more
Mats> entries.  The attached patch fixes the problem.

I think there are still some missing (1.5.68):

(#f upright medium music -2)warning: couldn't find any font satisfying

I'm using paper11.ly.

PeterC

___
Lilypond-user mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/lilypond-user



Re: \transpose and \transposition combination error(?)

2009-02-23 Thread Peter Chubb
>>>>> "Trevor" == Trevor Daniels  writes:

Trevor> Hmm.  Not sure it's a bug.  The \transpose command transposes

I think it is (and I reported it as one some time ago).

The point of \transposition is to notate a Staff at a different pitch
from its sounding pitch.  When you combine this with other staves,
with different transpositions, the whole thing shoul dthen be
transposable.

I want to do this for vocal music, to match the capabilities of the
singer we have.  The accompaniment is for clarinet and piano, notated
with \transposition bes and plain; I want to transpose the lot down
afterwards by a tone ... 

I've just about given up using \transposition now.  Instead I notate
clarinet parts as

Clar=\transpose c' bes \relative c' { ... }

and then transpose the part up again in the \score block for MIDI
output.

It's a pain.

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
A university is a non-profit organisation only in the sense that it
spends everything it gets  ... Luca Turin.


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: \transpose and \transposition combination error(?)

2009-02-24 Thread Peter Chubb
>>>>> "Trevor" == Trevor Daniels  writes:


Trevor> Producing the correct pitch in MIDI for transposing
Trevor> instruments being notated at pitch is certainly the principal
Trevor> use of \transposition.  It's other use is to transpose cues
Trevor> into the correct pitch when they appear in other parts.  So if
Trevor> you don't need either MIDI or cues \transposition can be
Trevor> ignored.

I also use it when entering music from an already transposed score.  I
make too many mistakes if I try to transpose in my head (particularly
in keys like aes-minor, clarinet notated in bes-minor, lots of accidentals)

Peter C
--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: LilyPond 2.12 and emacs on Ubuntu

2009-03-04 Thread Peter Chubb
>>>>> "David" == David Stocker  writes:

David> If your LilyPond installation resides in /usr/local/ then that
David> should be correct.

David> Ralph Palmer wrote:
>> Getting close, I think - " So, the first line should actually read:
>> 
>> (setq load-path (append (list
>> ("/usr/local/lilypond/usr/share/emacs/site-lisp")) load-path))
>> 
>> if "/usr/local/lilypond/usr/share/emacs/site-lisp" is the
>> (apparently appropriate) result of a $locate on /emacs/site-lisp?

Might be better to do:
(setq load-path (append '("/usr/local/lilypond/usr/share/emacs/site-lisp/") 
load-path))
^ note the quote here


--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
A university is a non-profit organisation only in the sense that it
spends everything it gets  ... Luca Turin.


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Command switch based on Lily version?

2009-03-22 Thread Peter Chubb

I embed Lily in a shell script for that kind of thing (I'm running on
Unix):

Something like this which is meant to make MIDI only output:

---
#!/bin/sh
LILY=/usr/local/bin/lilypond

LILYVERSION=`$LILY | sed -n 's/^GNU Lilypond \([12]\.[0-9]*\.[0-9]*\).*$/\1/p'`

case "$LILYVERSION" in
2.10.*)
   # This doesn't seem to work
   midionly=--no-print
   ;;
2.1[12].*)
   # This works, but Lily still seems to do lots of the typesetting.
   midionly=-dno-print-pages
   ;;
*)
   # Your mileage may vary
   midionly=--midi
   ;;
esac

exec $LILY $midionly "$@"

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
A university is a non-profit organisation only in the sense that it
spends everything it gets  ... Luca Turin.


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Command switch based on Lily version?

2009-03-22 Thread Peter Chubb
>>>>> "Peter" == Peter Chubb  writes:

Peter> I embed Lily in a shell script for that kind of thing (I'm
Peter> running on Unix):

(I've just noticed you're using Windows ... you'll need to ask someone
who's a Windows expert as to how to script it, as you won't
necessarily have the Bourne shell available).
--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
A university is a non-profit organisation only in the sense that it
spends everything it gets  ... Luca Turin.


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Bug? Lines disappear with rhythmic staff

2009-03-27 Thread Peter Chubb

I'm using the current 2.12.2 version of lilypond.  The attached file
yields,
   programming error: vertical alignment called before line-breaking
and no lines on the staff.

If I remove the \bar "|." the output is correct.

\version "2.12.2"
recscore=  \context StaffGroup <<
\context RhythmicStaff = "tambour" {
  \override NoteHead   #'style = #'cross
  \stemUp
f4 f8 f8 
}
\context Staff = "recA" {
  \clef "G^8"
  a''2
  \bar "|."
}
>>


\score {
\recscore
 \layout {
\context{ \RhythmicStaff
  \remove "Time_signature_engraver"
  \remove "Staff_symbol_engraver"
  \remove "Clef_engraver"
% \remove "Bar_engraver"
  \consists "Instrument_name_engraver"
  \override BarLine #'transparent = ##t
}
\context{ \Staff
  \remove "Time_signature_engraver"
}

  }
}

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
A university is a non-profit organisation only in the sense that it
spends everything it gets  ... Luca Turin.


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Bug? Lines disappear with rhythmic staff

2009-03-28 Thread Peter Chubb
>>>>> "M" == M Watts  writes:

M> Peter Chubb wrote:
>> I'm using the current 2.12.2 version of lilypond.  The attached
>> file yields, programming error: vertical alignment called before
>> line-breaking and no lines on the staff.
>> 
>> If I remove the \bar "|." the output is correct.


M> For me, with 2.12.2 on Fedora 10, running your example yields tiny
M> staff lines before the clef, but nothing after, and no StaffGroup
M> bracket.

That's right.  I want no lines on the stave for the RhythmicStaff, but
I do want lines for the Staff context, and no StaffGroup bracket.

M> You seem to have removed the Staff_symbol_engraver from the
M> RythmicStaff context -- I left the \bar "|." in, and commented out
M> the line

M> % \remove "Staff_symbol_engraver"

M> , then all worked fine.

Why does removing Staff_symbol_engraver from RhythmicStaff affect what
happens to Staff???

And in any case it doesn't `work fine' -- you get a line on the
RhythmicStaff.  I want just the crossed notes.

To see an image of what *should* happen, see 

http://www.mutopiaproject.org/ftp/ArbeauT/Orch/belle/belle-preview.png

I'm trying to update this piece to current LilyPond.  convert-ly on
its own is insufficient:
 -- can't use TeX escapes for accents and en and em dashes
 -- it mucks up the addlyrics, so I had to change to a \lyricsto with
a specific named Voice
 -- and the problem I'm having with removing the staff lines for the
RhythmicStaff context.  As I said, what I want to see is what you get
if you remove \bar "|." in the minimal example --- as you can see in
the mutopia PNG.

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: music expression explanation

2009-04-24 Thread Peter Chubb
>>>>> "Graham" == Graham Percival  writes:

Graham> On Wed, Apr 22, 2009 at 04:10:37PM +0200, Simon Bailey wrote:
>> Graham Percival wrote:
>>> If you have an idea for a general clarification that the syntax is
>>> "pitch duration other", then I'm all for it.  If it's a simple
>>> "you need to put the ' before the duration", then I'd probably
>>> reject it as being insufficiently general.
>> 
>> my first idea was something along the lines of your refusal. :) i
>> do have some other ideas about how to explain the syntax, but they
>> depend on where you want to put it in the docs.
Graham> ...
>> where would you put it in 3.1.?

Graham> Hmm.  I was initially thinking of 3.1.2, but that subsection
Graham> (actually, the entire section) is really talking about
Graham> *macroscopic* style.  I mean, it refers back to the definition
Graham> of a (compound) "music expression".

Graham> With that in mind, perhaps 2.3.1 is the best place: add 2-3
Graham> sentences and an articulation (or dynamic, or something) to
Graham> the first paragraph+example.


I'd really appreciate an appendix or something that gives Lily syntax
as BNF, or as a syntax diagram.   The syntax is very complex, and I've
been caught out a number of times by things not being as I expected
them to be from the NR --- not that the NR was wrong, but that the way
elements are combined wasn't explicit.

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
A university is a non-profit organisation only in the sense that it
spends everything it gets  ... Luca Turin.


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: relative mode occasionally gets forgotten?

2009-05-18 Thread Peter Chubb
>>>>> "Jonathan" == Jonathan Kulp  writes:

Jonathan> Carl, I'm working on your suggestions and have come across a
Jonathan> problem.

>> \relative c' { \chordmode { c \relative c'' { c }}
>> 

Jonathan> This last example won't compile.  (It was missing the last
Jonathan> curly brace but I added it.) Here's the terminal output:


\relative can't be used inside \chordmode I think.  \relative
introduces a sequence of note-names; \chordmode introduces a sequence
of chord names.
--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: transposing etc

2009-05-21 Thread Peter Chubb
>>>>> "Jonathan" == Jonathan Kulp  writes:

Jonathan> Bill Mooney wrote:
>> the ' \key ' entry is moved from the 'global' definition to each of
>> the partMusic definitions the ' \transpose ' entry is added to each
>> ' \new voice ' immediately before the ' \partMusic ' in the \score
>> section.  (I hope this is clear enough) It seems necessary to do it
>> this way as Lilypond seems to follow a process method where a later
>> instruction overrides an earlier one - I think?!?  Firstly, is the
>> ensemble template appropriate if one wishes to enable subsequent
>> transposing?  Secondly, is the method I've outline above the best
>> way to do it?
>> 
Jonathan> Hi Bill,

Jonathan> I'm not sure I understand exactly where your \transpose
Jonathan> command is placed--I'd have to see your source files.  If I
Jonathan> want to transpose an entire part, I put the transpose
Jonathan> command in the \score block right before the command to
Jonathan> include the notes.  Here's one from one of my scores:

Me neither --- did you want to trnspose the entire score (got good
basses, but weak sopranos perhaps?) or just one of the parts (entering
in C but it's a bflat instrument or something?

>> As an aside - could readers comment on how they arrange their
>> workflow when transcribing scores from hand written originals
>> (which is what I am cureently doing) - do you enter all the notes
>> first to check the accuracy of note entry, then add articulations,
>> markups etc later, or do you enter each note with its ties, slurs,
>> markups, etc as you proceed through the piece? Any comments would
>> be gratefully received.  Many thanks Bill

Jonathan> The first thing I do is write one or two bars in every part
Jonathan> to make sure the score compiles properly, get the instrument
Jonathan> names the way I want them, and so forth.  Then I start
Jonathan> entering notes for individual voices, usually finishing one
Jonathan> full score page in all voices before moving on to the next
Jonathan> page.  I try to take care of all of the articulations,
Jonathan> dynamics, slurs, etc. as I go along, since I find it faster
Jonathan> to do it that way than to go back through and find the right
Jonathan> spot to put them.  I also comment every line with bar
Jonathan> numbers to be able to find my place quickly.  I also make a
Jonathan> habit of archiving the whole bunch of source files after
Jonathan> each day's work and backing it up somewhere besides the
Jonathan> machine I'm working on.

Interesting.  I tend to enter one part at a time, with a \score that
includes only that part.  I start with the tune (usually either the
soprano or tenor part --- I'm *mostly* involved with vocal music),
then proof-listen using the MIDI output.  Then the bass part, then the
alto and tenor, then the accompaniment starting with the continuo and
ending with any guitar chords.  If I'm rushed, I'll just enter tune,
bass and chords --- the people I sing/play with can fill in at a pinch.

I put one bar per line (for complex bars,
maybe more than one line per bar), commented every five lines with a
bar number.  I use a revision control system with a remote central
repository for all my music.  Tweakss necessary fro good outpput with
a particular vesion of Lilypond go on a branch, as convert-ly doesn't
usually cope with scheme very well.


--
Dr Peter Chubb  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
All things shall perish from under the sky/Music alone shall live, never to die


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: emacs lilypond-mode

2009-05-22 Thread Peter Chubb
>>>>> "Thomas" == Thomas   writes:

Thomas> Hallo, I'm new to emacs and lilypond, but I managed to set up
Thomas> lilypond mode successfully.

Oh Good.  Now when you edit a file with a .ly extension, do you see
`(LilyPond)' in the status line?  

Then you can do: \C-Hm (control-H m) to describe the mode.

--
Dr Peter Chubb  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
All things shall perish from under the sky/Music alone shall live, never to die


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: transposing etc

2009-05-24 Thread Peter Chubb
>>>>> "Bill" == Bill Mooney  writes:

Bill> My question about transposing did indeed relate to the usage of 
Bill> transposing an entire piece, after it had been encoded earlier - perhaps 
Bill> obtained from another source altogether. 

For this kind of thing, get everything working, then in your \score
block do, e.g,. to put the whole piece up a tone:

\score {
\transpose bes c' <<
...
>>


\layout{ ... }
\midi{...}
}

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Chords and relative notes

2009-05-27 Thread Peter Chubb
>>>>> "Brandon" == Brandon Olivares  writes:

Brandon> Hi, Sorry for the stupid question, but I'm confused about
Brandon> something.

Brandon> If you have a chord, followed by either another note or chord
Brandon> that uses ' or , to change the octave, is it relative to the
Brandon> last note of the chord, or to the first?

The first.

See the Notation Reference, section 1.1.1, `Relative Octave Entry'
which says:

  If the preceding item is a chord, the first note of the chord is
  used as the reference point for the octave placement of a following
  note or chord. Inside chords, the next note is always relative to
  the preceding one.


--
Dr Peter Chubb  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
   Kernel Engineering Group (KEG): Where Systems Brew.


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Better MIDI

2009-06-01 Thread Peter Chubb

Hi,

  I've put up a page on how to get more realistic sounding MIDI output
  from current LilyPond, along with the scripts and scheme code used, at
  http://www.nicta.com.au/people/chubbp/articulate

  It has before-and-after MIDI samples to listen to, and a full
  description of what the script does and how to use it.

  Is there any way that the scheme code can be distributed with
  LilyPond?  It's fairly useful now, but could do with going over by
  some real experts for improvement. In particular I'd like to get rid
  of the double pass over all the notes (first to find out what to do
  then to do it), and the hacked up communication between the two
  passes.  I'd also like to do something about trills and turns with
  alterations, and do a better calculation for trill duration.

--
Dr Peter Chubb  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
   Kernel Engineering Group (KEG): Where Systems Brew.


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Better MIDI

2009-06-02 Thread Peter Chubb
>>>>> "Peter" == Peter Chubb  writes:

Peter> Hi,

Peter>   I've put up a page on how to get more realistic sounding MIDI
Peter> output from current LilyPond, along with the scripts and scheme
Peter> code used, at http://www.nicta.com.au/people/chubbp/articulate

And I've now fixed the permissions on the download link there.  Sorry
for the bother before.

--
Dr Peter Chubb  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
   Kernel Engineering Group (KEG): Where Systems Brew.


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Better MIDI

2009-06-02 Thread Peter Chubb
>>>>> "Hans" == Hans Aberg  writes:

Hans> On 2 Jun 2009, at 01:29, Peter Chubb wrote:
>> I've put up a page on how to get more realistic sounding MIDI
>> output from current LilyPond, along with the scripts and scheme
>> code used, at http://www.nicta.com.au/people/chubbp/articulate

Hans> (Isn't there a timing problem at the second triplet?)

There is --- it's to do the gruppetto at the end of the trill, that
seems to interfere with the first note of the triplet in the MIDI
output.  It's not something I can fix with articulate.

Hans> If it is possible to do it, it might be great to be able to do
Hans> the timing on per note and note-group basis - for interpretation
Hans> and also generating feedback on what values to choose.

Not sure what you mean here --- can you elaborate?

Hans> Also, the typesetting program has a cool feature where notes
Hans> written with equal time can be swinged. - Some guys on the
Hans> Usenet newsgroup rec.music.theory found this feature great for
Hans> experimenting with.

actually, LilyPond can't do this yet.  I wish it could.


>> ...I'd also like to do something about trills and turns with
>> alterations, and do a better calculation for trill duration.

Hans> One problem with those is that in LilyPond code one does not
Hans> write them in the diatonic note system, as the other notes, but
Hans> only graphically.

Indeed.  The same is true for most of the other marks that
`articulate' deals with.  Unfortunately there are no standard ways of
marking that there's a `flat' symbol above the ornament symbol and a
`natural' below; there are several ways depending on context.

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Better MIDI

2009-06-02 Thread Peter Chubb
>>>>> "hhpmusic" == hhpmusic   writes:


>> And I've now fixed the permissions on the download link there.
>> Sorry for the bother before.

hhpmusic> Thank you very much, but I still can't access the "here"
hhpmusic> link. The web can't find the page, even though I
hhpmusic> registered. How to get the file?

Try shift-reload , you're probably still getting a cached version of
the page.

Peter C

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: MIDI and transposing instruments

2009-06-04 Thread Peter Chubb
>>>>> "bernie" == bernie arai  writes:

bernie> i'm trying my hand at finally using the midi output of
bernie> lilypond to audition my scores (instead of relying on my
bernie> horrid piano playing).  after a bit of messing around, and a
bernie> while looking through the docs, i'm a bit stumped as to what
bernie> to try next.  i've defined instruments for example:

bernie>  tenorsax = \transpose c d' \relative c { % tenor notes
bernie> (in concert pitch) }

Move the transpose to the printed version only.

What I do when the parts are in sounding pitch is:

tenorSax=\relative c' {\set Staff.midiInstrument = "tenor sax"
 ... }

\score {
% for printing
\context Staff = sax { \set Staff.instrumentName = "Tenor"
\clef "G"
\transpose c d' \tenorSax
}
}

\score {
% for sounding
\unfoldRepeats <<
\context Staff = sax { \tenorSax }
>>
\midi {
}
}

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: MIDI and transposing instruments

2009-06-05 Thread Peter Chubb
>>>>> "Francisco" == Francisco Vila  writes:

Francisco> 2009/6/5 bernie arai :
>> i'm trying my hand at finally using the midi output of lilypond to
>> audition my scores (instead of relying on my horrid piano playing).
>> after a bit of messing around, and a while looking through the
>> docs, i'm a bit stumped as to what to try next.  i've defined
>> instruments for example:
>> 
>>     tenorsax = \transpose c d' \relative c { % tenor notes (in
>> concert pitch) }

Francisco> Please use \transposition for this.

Francisco> 
http://lilypond.org/doc/v2.12/Documentation/user/lilypond/Displaying-pitches#Instrument-transpositions


\transposition doesn't sit well with MIDI output if you're going to do
further transpositions.  

Try:
\version "2.11.62'
clarinet = \transpose bes c' { \transposition bes bes1 }
flute = { bes1 }

\score {
\transpose c d' <<
\new Staff \clarinet
    \new Staff \flute
>>
\midi {}
\layout{}
}

You'll hear a discord instead of the unison you expect.

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: MIDI export: \partial measure and volta repeats

2009-06-17 Thread Peter Chubb
>>>>> "Federico" == Federico Bruni  writes:

Federico> Hi, I'm trying to export a lilypond score to MIDI (then I
Federico> want to import it in TuxGuitar).  I have 2 problems:


Federico> 1. the score starts with a partial measure, but the MIDI
Federico> can't understand that...so when I import it in TuxGuitar,
Federico> the notes are not placed correctly in the bars.  There's any
Federico> cool workaround?

MIDI should understand this. But:...

Federico> I know TuxGuitar does not support partial measure.. Maybe I
Federico> should write a score tailored for the midi output (beside
Federico> the one for the PDF output) and substitute \partial with
Federico> some rests.



Federico> 2. the repeats and alternatives are not displayed
Federico> correctly. I've read about this workaround:
Federico> 
http://lilypond.org/doc/v2.13/Documentation/user/lilypond/Repeats-in-MIDI#Repeats-in-MIDI

\unfoldRepeats will still work.

Do like this:

\score {
\unfoldRepeats <<
\context Staff << 
what you had before
>>
\midi {
}
}

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Adjusting initial LH barline

2009-06-28 Thread Peter Chubb
Hi,
I'm trying to update Arbeau's Pavane at Mutopia.org.  I've
got it almost ready, except for two things.

The drum part in the original is on a separate staff above the
system containing words and tunes.  There is *no* connecting
line between the main system and the rhythmic staff.

How do I do this?  I've tried removing System_start_delimiter,
but still see part of the line.  

Here's a small extract from my current effort; I want to get
rid of the thin line that tries to connect the ChoirStaff with
the RhythmicStaff.


\version "2.12.2"
recscore =
\context StaffGroup \with {
  \remove "System_start_delimiter_engraver"
  \remove "Span_bar_engraver" 
} <<
  \context RhythmicStaff = "tambour" {
\override NoteHead   #'style = #'cross
\stemUp
f4 f8 f8 
  }
  \context ChoirStaff <<
\context Staff = "descant" {
  \clef "G^8"
  a''2
  \bar "|."
}
\context Staff = "treble" {
  \clef "G"
  a'2
  \bar "|."
}
  >>
>>

\score {
  \recscore
  \layout {
\context {
  \RhythmicStaff
  \override Clef #'stencil = ##f
  \override TimeSignature #'stencil = ##f
  \override StaffSymbol #'stencil = ##f
  \override BarLine #'transparent = ##t
}
indent = 0.0\mm
  }
}


--
Dr Peter Chubb  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
All things shall perish from under the sky/Music alone shall live, never to die


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Avoid indenting the first bar

2009-07-16 Thread Peter Chubb
>>>>> "Tom" == Tom Weissmann  writes:

>> - what does the symbol in quotation marks mean mean (visualise it
>> rotated clockwise by about 30 degrees) ":||:"?

Tom> It could be a kind of simile mark, which would make sense because
Tom> it marks a repetition of the words and a near repetition of the
Tom> music.  However, the only simile marks I can find live inside the
Tom> stave, not above it as this one does.

It *is* a simile mark  It normally goes where the associated part goes
-- so in hymns, which are often set as short-staff (two voices per
stave), it'll go above the upper staff for the soprano part, below the
lower staff for the bass part, etc.

This is because it's fairly common for one part to repeat some words,
while the other parts do not. 

--
Dr Peter Chubb  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
All things shall perish from under the sky/Music alone shall live, never to die


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Using dynamics in lyrics

2009-08-05 Thread Peter Chubb

Hi,
I'm doing an arrangement of a song, where the different
stanzas in different parts have different dynamics.  I know I can mark
an entire stanza as forte, piano etc., using the trick int he
snippets repository, but how do I do it in the middle of a verse?  
I've tried adding New_dynamic_engraver to the Lyrics context, and that
sort-of works, but the resulting dynamic marks often collide with
the text --- particularly crescendo/diminuendo spanners.

Is there a simple way to do this, or do I have to play with tweaks to
move the dynamic marks around?

Here's an example:

--
\version "2.12.0"
vA=\lyrics { \set stanza = #"1. "
 "" \p  \cresc This4 verse gets loud -- er \f \dim then soft -- er \p
}
vB=\lyrics { \set stanza = #"2. "
 "" \p \dim This4 verse gets soft -- er \pp \cresc then loud -- er \f
}

\score {
  << 
\context Lyrics = vOne \vA
\context Lyrics = vTwo \vB
  >>
  \layout {
\context {
      \Lyrics
  \consists "New_dynamic_engraver"
  }
  }
}


--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Lilypond Speed

2009-08-31 Thread Peter Chubb
>>>>> "Nick" == Nick Payne  writes:

Nick> As I have just had a rather powerful evaluation server to play
Nick> around with for a few days while I tested our various Windows
Nick> and Linux server builds on it, I thought I'd also take the
Nick> opportunity to compare the build speed of a reasonably
Nick> substantial score. I used Reinhold's setting of Reubke's sonata
Nick> on the 94th psalm. I tested on three machines, all running the
Nick> same version of Lilypond:

Nick> 1. Dell GX620 workstation, Pentium D dual-core 3.0GHz CPU,
Nick>1Gb RAM, Ubuntu 9.04 x86: 10min 11sec 
Nick> 2. Dell GX745 workstation, Pentium D dual-core 3.4GHz CPU,
Nick>2Gb RAM, WinXP SP3: 9min 22sec 
Nick> 3. PowerEdge R710 server, dual quad-core Xeon 5560 2.8GHz CPUs,
Nick>24Gb RAM, Debian 5 amd64: 4min 4sec


I think you'll find the main difference is in size of L2/L3 cache,
and amount of RAM.  Lily (like many object-oriented programs) tends to
have quite a deep stack, and to use lots of memory --- which it
visits in what looks to the processor like random orders --- so small
caches generate lots of cache misses, which slows things down.  If you
run out of RAM and have to swap, things get even worse.

Xeon 5560: 256k L2, 8M L3 cache (which is almost as fast as the Pentium D's L2 
cache)
Pentium D: 1M L2 cache, no L3 cache.
--
Dr Peter Chubb  www.nicta.com.aupeter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Lilypond Speed

2009-08-31 Thread Peter Chubb
>>>>> "Han-Wen" == Han-Wen Nienhuys  writes:

Han-Wen> On Mon, Aug 31, 2009 at 8:03 PM, Peter
Han-Wen> Chubb wrote:

>> I think you'll find the main difference is in size of L2/L3 cache,
>> and amount of RAM.  Lily (like many object-oriented programs) tends
>> to have quite a deep stack, and to use lots of memory --- which it
>> visits in what looks to the processor like random orders --- so
>> small caches generate lots of cache misses, which slows things
>> down.  If you run out of RAM and have to swap, things get even
>> worse.

Han-Wen> More importantly: LilyPond is single-threaded, so the number
Han-Wen> of cores is irrelevant.

That doesn't explain why going from the Core Duo to the Xeon
dropped the time from 11 minutes to 4 minutes.  The reason, as I said,
is the increased cache size.

--
Dr Peter Chubb  www.nicta.com.aupeter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Lilypond - chord progression

2009-09-01 Thread Peter Chubb
>>>>> "Christian" == Christian Henning  writes:


Christian> I added the duration for the two c:m but the second c:m is
Christian> still not showing. Mhmm, weird.

If you set chordChanges, then chords are printed only when they
change.  You have two c-minors in a row, so the second will not be
printed --- it's the same chord. 

--
Dr Peter Chubb  www.nicta.com.aupeter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Articulate midi script

2009-09-05 Thread Peter Chubb
>>>>> "Grammostola" == Grammostola Rosea  writes:

Grammostola> Grammostola Rosea wrote:
>> Hi,
>> 
>> I was wondering if the acticulate midi script is already in
>> Lilypond?

Not yet.

>> 
>> http://www.nicta.com.au/people/chubbp/articulate
>> 
>> 
>> I put articulate.ly in my lilypondfiles folder and the script in
>> /usr/local/bin
>> 
>> But I got this message:
>> 
>> d...@debian:~/lilypondfiles$ lilywrap lilywraptest.ly
>> /usr/local/lilypond/usr/bin/lilypond: unrecognized option: `--midi'
>> 

Looks like the code in lilywrap.sh that tries to work out what
arguments to give Lilypond to generate just midi is broken.  I'll try
to fix it today or tomorrow, and get a new version up.

Peter C

--
Dr Peter Chubb  www.nicta.com.aupeter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Articulate midi script

2009-09-06 Thread Peter Chubb
>>>>> "Grammostola" == Grammostola Rosea  writes:


Grammostola> But I got this message:

Grammostola> d...@debian:~/lilypondfiles$ lilywrap lilywraptest.ly
Grammostola> /usr/local/lilypond/usr/bin/lilypond: unrecognized
Grammostola> option: `--midi'


Here's an updated lilywrap script.

You don't actually have to use lilywrap: all it does is insert
 \include "articulate.ly"
 near the top of the file, and insert

\unfoldRepeats \articulate

around the main part of the score.  In fact, in the general case,
you're better off adding it all by hand --- especially if there is
anything between the \score{ and the first bit of real music.



lilywrap
Description: Binary data

--
Dr Peter Chubb  www.nicta.com.aupeter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Articulate midi script

2009-09-06 Thread Peter Chubb
>>>>> "Grammostola" == Grammostola Rosea  writes:

Grammostola> Peter Chubb wrote:
Grammostola> When using lilywrap I get:

Grammostola>  lilywrap dynamics.ly /usr/local/bin/lilywrap: 23: Syntax
Grammostola> error: "(" unexpected

Hmmm.  Are you using a non-standard /bin/sh ??? It sounds like you're
using one that isn't POSIX-compliant, and doesn't understand the
`function' keyword, or doesn't understand shell functions.

You probably have dash installed as the system shell.  Here's an
updated verion of the script that will work with Dash, and will
*still* work on POSIX compliant shells, but will no longer work with
the traditional Korn shell.



lilywrap
Description: Binary data



--
Dr Peter Chubb  www.nicta.com.aupeter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Articulate midi script

2009-09-06 Thread Peter Chubb
>>>>> "Peter" == Peter Chubb  writes:


Peter> You probably have dash installed as the system shell.  Here's
Peter> an updated verion of the script that will work with Dash, and
Peter> will *still* work on POSIX compliant shells, but will no longer
Peter> work with the traditional Korn shell.

Arrrgh.  A bug.  Fixed below.



lilywrap
Description: Binary data
--
Dr Peter Chubb  www.nicta.com.aupeter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Thoughts on Midge (was: Re: [midi] Re: Articulate midi script)

2009-09-06 Thread Peter Chubb
>>>>> "Grammostola" == Grammostola Rosea  writes:

Grammostola> David Raleigh Arnold wrote:
>>> 
>> Again, why not get in touch with the developer(s) of midge? The
>> syntax is completely different, but it is *text-based* and GNU.  It
>> is dedicated to midi, not notation.  Why not find a way to use
>> their work, at worst by means of a translation script?  Regards,
>> daveA
>> 

I had a look at midge.  The main thing it adds that Lilypond doesn't
have, is much greater control over individual notes.  You can add
bends (so presumably could implement a portamento or glissando,
although it appears to be limited to 4 semitones, which is too small
for most of the music I deal with); you can control attack and decay,
and effects such as reverb. chorus and pan.

Musical stuff (articulations, ornaments, dynamics, tempo variations
such as rit. or stringendo, etc., etc) has to be interpreted and
written explicitly in expanded form into the midge source.

While midge could be used as an intermediate format for MIDI output, I
can't see at present what it would gain for us --- the level of
abstraction over a standard binary MIDI file is very small.

--
Dr Peter Chubbwww.nicta.com.au  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
From Imagination to Impact   Imagining the (ICT) Future


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Thoughts on Midge (was: Re: [midi] Re: Articulate midi script)

2009-09-06 Thread Peter Chubb
>>>>> "Grammostola" == Grammostola Rosea  writes:

Grammostola> David Raleigh Arnold wrote:
>>> 
>> Again, why not get in touch with the developer(s) of midge? The
>> syntax is completely different, but it is *text-based* and GNU.  It
>> is dedicated to midi, not notation.  Why not find a way to use
>> their work, at worst by means of a translation script?  Regards,
>> daveA
>> 

I had a look at midge.  The main thing it adds that Lilypond doesn't
have, is much greater control over individual notes.  You can add
bends (so presumably could implement a portamento or glissando,
although it appears to be limited to 4 semitones, which is too small
for most of the music I deal with); you can control attack and decay,
and effects such as reverb. chorus and pan.

Musical stuff (articulations, ornaments, dynamics, tempo variations
such as rit. or stringendo, etc., etc) has to be interpreted and
written explicitly in expanded form into the midge source.

While midge could be used as an intermediate format for MIDI output, I
can't see at present what it would gain for us --- the level of
abstraction over a standard binary MIDI file is very small.  And the
hard bits would still be hard: understanding the textual annotations
that composers put into their scores, and interpreting them.

--
Dr Peter Chubbwww.nicta.com.au  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
From Imagination to Impact   Imagining the (ICT) Future


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: mugshots for web page? [WAS: The LilyPond Report, again!]

2009-09-07 Thread Peter Chubb
>>>>> "Anthony" == Anthony W Youngman  writes:

Anthony> In message <1252345554.16636.3.ca...@heerbeest>, Jan
Anthony> Nieuwenhuizen  writes
>> Or what about stealing a creative idea from
>> 
>> http://www.fotosearch.com/photos-images/anonymous.html
>> 
>> such as the profile.
>> 
>> Greetings, Jan.

Anthony> I'd just use the picture of me by E. H. Shepard, except I
Anthony> haven't done anything to get me a place on that list. I can't
Anthony> think of anything for you, though, unless you can find a
Anthony> picture of your place on the Round Table? That might be a
Anthony> good one.

Unfortunately, E.H. Shepherd is still in copyright.
--
Dr Peter Chubbwww.nicta.com.au  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
From Imagination to Impact   Imagining the (ICT) Future


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Can't compile Mutopia file

2009-09-24 Thread Peter Chubb
>>>>> "M. Ramos" == M. Ramos   writes:

M. Ramos> Can't compile the file below, mysteriouos commands: 

The file looks to be for quite an old version of LilyPond.

To fix, look in the `extra information' fields in the Mutopia website
for the piece, and find out which lilypond version it is for.  Then
add a line

\version "x.y.z"
(where x.y.z is the version it is for) and run convert-ly on the
result.  Then try again with LilyPond.

--
Dr Peter Chubb  www.nicta.com.aupeter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: [midi] [articulate] \stopTrillSpan, \staccatissimo, and \appoggiatura

2009-09-30 Thread Peter Chubb
>>>>> "Iain" == Iain Nicol  writes:

Iain> Hi, I've playing about with Peter Chubb's `Articulate' for
Iain> improved MIDI output.  (Thanks, Peter: I wrote a less ambitious
Iain> file a bit back---and then accidentally deleted it.)

Iain> Anyway, I've got a few suggested changes, with patches.  The
Iain> patches are against the copy of articulate linked to from
Iain> <http://www.nicta.com.au/people/chubbp/articulate>; the patches
Iain> should apply with `patch < file.diff' in the same directory as
Iain> articulate.ly.

Oh, Thanks!!!  I'll review it later when I have a moment.

Iain> 1. Trills.  I'm not sure about this(!), but my interpretation of
Iain> the fragment c\startTrillSpan d e\stopTrillSpan is that it's
Iain> similar to c\trill d\trill e In contrast, articulate thinks it's
Iain> similar to c\trill d\trill e\trill

I don't know what it's supposed to do, so I'll bow to superior experience.


Iain> 2. Staccatissimo.  I've got a simple patch to add
Iain> \staccatissimo.  Nothing fancy: it's implemented just like the
Iain> \staccato, only it takes a quarter of the note's value by
Iain> default, not a half.

Good Oh.

Iain> 3. Appoggiatura.  Unfortunately, articulate's \appoggiatura
Iain> doesn't quite work.  For example, \include "articulate.ly"
Iain> \articulate {\appoggiatura d8 c4} doesn't give quaver to both
Iain> the d and the c.  Instead, it halves the written length of each
Iain> of the two notes; it's like you'd written d16 c8.

Hmm  It should make it d8 c8 -- in Baroque and other early music
(which is my main area of interest), an appogiatura starts at the
start of the main note, and takes half its value.  Maybe you want an
acciaccatura? 



Iain> To test this, look at or listen to the output of the following
Iain> file.  We want the crotchets of both voices to sound together,
Iain> but they don't.  \include "articulate.ly" \score { <<
Iain> \articulate \relative c' {\appoggiatura d8 c4 c c c} \relative
Iain> e' {e4 e e e }
>>> 
Iain>   \midi{} \layout{} } The attached patch fixes this.

Iain> (Finally, I noticed there's been a heated discussion on -devel
Iain> recently about licensing.  I know my patches are really small,
Iain> possibly---probably?---not big enough to be copyrightable.  I
Iain> also know that articulate.ly is licensed as GPL v2 only...
Iain> However, for the sake of being unambiguous: I consider my
Iain> patches to be GPL v2 or later.)

Hmmm.  I wrote the license clauses after taking legal advice; as an
add-on to LilyPond, it has to have the same licence, viz. GPL 2.

I'm happy to relicense when LilyPond does.

--
Dr Peter Chubb  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
All things shall perish from under the sky/Music alone shall live, never to die


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Funny partcombine behaviour

2009-10-22 Thread Peter Chubb

I'm trying to combine some parts, and see funny behaviour.  

This input (lily 2.12.2):
-
\version "2.12.0"

accomp=\relative c' {
  4. r8 r2
}

voice= \relative c'' {
  g4. r8 r2
}

\score {
  \context Staff {
\partcombine \voice \accomp
  }
}
---
produces this:

<>

The idea is to merge a vocal line into a piano accompaniment.  The
pianist can choose to play the top note, or not, as s/he feels is most
appropriate.  (actually, most of my pianist friends treat the written
accompaniment  as a guideline, rather than something to play verbatim)

More complex examples sometimes merge the note-heads, but add extra dots.

I've solved my problem at the moment by explicitly notating the
tune (where it doesn't follow the top line of the accompaniment exactly) in the 
piano
part, and putting the tune into a Devnull context for the lyrics to
match to.  But is there a neater way to get what I want?

--
Dr Peter Chubb  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
All things shall perish from under the sky/Music alone shall live, never to die
___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: chord names in piano staff

2009-11-11 Thread Peter Chubb
>>>>> "henrik" == henrik pantle  writes:

henrik> hi, i wonder where to find the solution for my problem.  i
henrik> guess a lot of others do too.

henrik> i want the chord names above the piano staff:

You need to add a score block thus:

guitarChords = \chordmode { ...}
upper = \relative { ... }
lower = \relative { ... }

\score {
   <<
\context ChordNames \guitarChords
\context GrandStaff <<
\context Staff = upper \upper
\context Staff = lower \lower
>>
   >>
}


--
Dr Peter Chubb  www.nicta.com.aupeter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: anybody know apache? (dir structure of docs)

2009-11-12 Thread Peter Chubb
>>>>> "Graham" == Graham Percival  writes:

Graham> Anybody want to save me a half an hour of maintenance, and a
Graham> few hours of sanity?  Look this up.  (alternately, if you
Graham> already know apache, just answer the question)

Yes you can do it.

In fact there is more than one way.

If you want /foo/ to always be the same as /xyz/bah/ you can do it
with an alias.

Alias /foo /var/www/xyz/bah/
   ^ note full path name on server.

If you want the browser to redirect and reload from a different URL,
you can do:
Redirect /foo http://x.y.z/xyz/bah




Graham> On Mon, Nov 09, 2009 at 12:31:31PM -0200, Han-Wen Nienhuys
Graham> wrote:
>> On Mon, Nov 9, 2009 at 9:54 AM, Jan Nieuwenhuizen 
>> wrote:
>> 
>> > The technical reasons for using web/ and doc/v2.xx are: >  -
>> easier rsyncing, moving, verifying >  - clean namespace --
>> currently we have quite some other >    things at the root.  it's
>> easy to get collisions, we >    need to really think this through
>> very well before >    going forward with this
>> 
>> Can't we have the directory structure internally with /web/ ,
>> /download/ what have you, and use some serverside URL rewriting to
>> make translate
>> 
>> /foo/
>> 
>> into
>> 
>> /web/foo/
>> 
>> ? Does apache have mechanisms for rewriting the serving path
>> without rewriting the URL that appears in browser window?

Graham> I would like this.  I'd like that a lot.  We could keep the
Graham> simpler build structure, but still have simpler urls.

Graham> Cheers, - Graham


Graham> ___ lilypond-user
Graham> mailing list lilypond-user@gnu.org
Graham> http://lists.gnu.org/mailman/listinfo/lilypond-user

--
Dr Peter Chubb  www.nicta.com.aupeter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Switching music for PDF and Midi

2009-11-14 Thread Peter Chubb
> "Akira" == Akira   writes:

Akira> What I want to say is just on this picture. Please see this
Akira> picture:
Akira> 
http://lh6.ggpht.com/_Rub71FvXx30/Sv1NLn_iKgI/ADc/I-Amwi5RrK8/differentmusicpdfmidi.JPG

Akira> I'm typesetting a piece that includes trills, but a problem
Akira> occurred: trill spanners does not work in midi.  So I have to
Akira> switch different notations like:

An alternative is to use my `articulate' script that attempts to
rewrite trill and trillspanners to do the `right thing'.  It's a
little limited (it doesn't obey sharp of flat notations, and always
starts on  the upper note, according to baroque practice, and it
sometimes gets the time for each twiddle wrong) but it's a start.

http://www.nicta.com.au/people/chubbp/articulate

I'll be putting a new version up soon.


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: score runs off the page

2009-12-18 Thread Peter Chubb

With 2.12.2, the overture compiles (with some warnings), and looks OK
on a4 paper, except for the last page, where bar numbers are printed for
non-existant staves.  Also the copyright notice on the first page
collides with the music.

With 2.13.9, the 'cello parts run off the bottom of the first page,
and on the second and third pages the systems are expanded to fill the
page instead of taking their natural height.  The problem with bar
numbers from bar 40 is still there.  I've found the problem for the
bar numbers: on line 357 of overture.ly you've typed 111 instead of 11
for the number of rests.

Putting an explicit \break after bar 6 gives a nice page turn (almost
all parts have rests) and fixes the spacing problem on A4 paper.

Here're the changes I made:

--- overture.ly~2009-12-11 22:00:06.0 +1100
+++ overture.ly 2009-12-19 11:59:15.0 +1100
@@ -25,7 +25,7 @@
   marks = {
 \set markFormatter = #format-mark-box-numbers
 \tempo \allegro 4=120
-s2.*6 | s1*5/4*2 |
+s2.*6 \break | s1*5/4*2 |
 \mark \default s1*9/8*3 | s1*5/4*4 |
 \tag #'score { s2. s2^\rit | \mark \default s1*9/8*3^\atempo | }
 \tag #'midi { s2 s8 \tempo 4=116 s \tempo 4=112 s \tempo 4=106 s \tempo 
4=98 s \tempo 4=90 s | \tempo 4=100 s \tempo 4=120 s1 | s1*9/8*2 | }
@@ -354,7 +354,7 @@
 8-.->\!\sf r r4 r8 4\mf\< ~ 8-.\!\sf r4 |
 r \mf\< ~ 8-.\!\sf r r2 |
 R1*5/4^\fermataMarkup \bar "||"
-R1*5/4*111 |
+R1*5/4*11 |
   }
 
   tuba = \relative c, {


--
Dr Peter Chubb  www.nicta.com.aupeter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


New Articulate script available for better midi output

2010-01-19 Thread Peter Chubb

Hi Folks,
   There's a new version of the `articulate' script available at
http://www.nicta.com.au/people/chubbp/articulate

Changes are:
-- fix bad synchronisation after breathing, explicit line
break and fingering events
-- add staccatissimo
-- fix duration of trillspanners

Thanks to all the people who gave feedback/bugreports/patches  (there
were three people who sent staccatissimo patches!)

For those who don't know yet, `articulate' is a bunch of scheme code
that rewrites lily input to make it sound right in the midi output;
basically shortening notes to mark out phrase and slur ends, staccato
and staccatissimo, and realising trills, turns and some tempo
markings.

You use it by:

\include "articulate.ly"
\score {
   \unfoldRepeats \articulate <>
   \midi{}
}

(or there's a convenience script called `lilywrap' in the tarball that
makes exactly these additions to a lilypond file and invokes lilypond
for you).

Peter C

The direct download link is
http://www.nicta.com.au/__data/assets/file/0009/21888/articulate-1.3.tar.gz 

--
Dr Peter Chubb  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
All things shall perish from under the sky/Music alone shall live, never to die


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Alternatives in the *middle* of a volta

2010-02-14 Thread Peter Chubb

Hi,
I'm trying to set some music that could logically be expressed
like this:

\repeat volta 3 {
\firstPart
\alternative {{
\firstMiddle \bar "||"
}{
\finalEnd ^"Fine" \bar "||
}}
\secondPart
}

So the music looks like:


+--+++
| vv1,2|| v 3|
Fine
|: music    | music|| end|| music ... |  :|


Lilypnd 2.12.2 doesn't like \alternative in the middle of a repeated
section.

Is there a sane way to do this? 


--
Dr Peter Chubb  www.nicta.com.aupeter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Alternatives in the *middle* of a volta

2010-02-14 Thread Peter Chubb
>>>>> "Tim" == Tim McNamara  writes:

Tim> On Feb 14, 2010, at 2:54 AM, Peter Chubb wrote:

>> Is there a sane way to do this?


Tim> Thinking as a player, I'd rather see this as a coda

It's only one bar in the middle.  I'd like to
get it onto one page --- the only obvious to me alternative would mean
repeating the verse music after the repeat, so you'd have:

  |: verse ... | normal_ending || chorus ... :| verse ... | final_ending ||

 ^^^_same as^^

instead of my preferred:


  +++---+
  | vv1,2  || v 3   |
Fine
|: verse  |  normalend || finalend  || chorus ... |  :| 

I prefer the latter as a musician because:
-- it's shorter (no need for a page turn)
-- it's obvious how many times to play the various parts
-- it's really easy to skip over one bar in the middle.
-- it shows the structure of the music better.  In *this* case
the main difference is that the first note of the chorus comes at the
end of `normalend'; finalend is just a semibreve in the voice parts,
and an arpeggio in the accompaniments.

--
Dr Peter Chubb  www.nicta.com.aupeter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: lilypond tool and MidiInput

2010-02-14 Thread Peter Chubb
>>>>> "Trevor" == Trevor Daniels  writes:

Trevor> Graham Percival wrote Sunday, February 14, 2010 10:49 PM


Trevor> Peter's original announcement, with articulate.ly and some
Trevor> instructions for its use is at
Trevor> http://lists.gnu.org/archive/html/lilypond-user/2008-08/msg00108.html

I try to keep it up to date at
http://www.nicta.com.au/people/chubbp/articulate --- people have been
sending me bug reports, which I've been trying to address as I have
time, and the result keeps getting better.

As add-on scheme/lilypond code it doesn't really quite fit into the
current LilyPond codebase anywhere that's obvious.  Any chance of
adding a `contrib' directory so things like this could be distributed
with LilyPond?  Or if not that, then a `loosely related work' section
to the webpage?

--
Dr Peter Chubbwww.nicta.com.au  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
From Imagination to Impact   Imagining the (ICT) Future


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: dynamic and midi velocity

2010-02-17 Thread Peter Chubb
>>>>> "miquel" == miquel parera  writes:


miquel> I want translate the dynamics of one note (\, \ff etc) to
miquel> midi velocity values (0-127) I'ts possible?

Lilypond uses a separate volume channel, rather than velocity, to
control MIDI dynamics.  There's a perl script `ConvertToVeolcity.perl'
that can convert the midi output and add velocity info to each note.

--
Dr Peter Chubb  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
All things shall perish from under the sky/Music alone shall live, never to die


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: lilypond tool and MidiInput

2010-02-18 Thread Peter Chubb
>>>>> "Graham" == Graham Percival  writes:

Graham> Thanks, modified and pushed.  For the record, I wasn't
Graham> expecting (or fishing for) an actual patch; the page I was
Graham> trying to point people at was:
Graham> 
http://lilypond.org/doc/v2.13/Documentation/contributor/documentation-suggestions

Graham> (in particular, the "small additions" section)


I'm more used to generating patches. :-)


Peter C
--
Dr Peter Chubb  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
All things shall perish from under the sky/Music alone shall live, never to die


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: dynamic and midi velocity

2010-02-18 Thread Peter Chubb

I had a quick look at what it would take to generate notes with
different velocities instead of just CC 7 events.  It's harder than it
should be: dynamic events always come after the notes they affect, so
I couldn't see an obvious/easy way to get the current dynamics while
processing a note, nor is it obvious to me how to get at notes in the
same voice as a dynamic indication at the same timestep.

Nor is it obvioous to me how to tell which voices dynamic indications
should be applied to.  Sometimes they should be for several (e.g.,
centered piano dynamics), sometimes just to the voice they are
attached to.  And there's still the issue of handling what instruments
are capable of, and adjusting expression accordingly.

There are three classes of instruments I can think of:
  1.  Instruments that play at a fixed volume no matter what you do:
  -- harpsichord, most organ stops, recorder, etc.
  2.  Instruments where the volume is determined at the start of a
  note, but you can't change it afterwards:
  -- piano, clavichord, most percussion, plucked strings, etc.
  3.  Instruments that can change volume anywhere -- most woodwinds and brass,
  swell stops on the organ, etc.

So I'm leaving it in the `too hard' basket for now.

Peter C

--
Dr Peter Chubb  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
All things shall perish from under the sky/Music alone shall live, never to die


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: lilypond tool and MidiInput

2010-02-19 Thread Peter Chubb
>>>>> "Graham" == Graham Percival  writes:

Graham> On Mon, Feb 15, 2010 at 12:37 AM, Peter Chubb
Graham>  wrote:
>>>>>>> "Trevor" == Trevor Daniels  writes:
>> 
Trevor> Peter's original announcement, with articulate.ly and some
Trevor> instructions for its use is at
Trevor> http://lists.gnu.org/archive/html/lilypond-user/2008-08/msg00108.html

Graham> Yes, so it would be nice if somebody could send a "small
Graham> documentation suggestion" according to...

Graham> huh.  lilypond.org seems to be down at the moment, so I'll
Graham> just describe it: on the new webpage, click on Community, then
Graham> Development, then "documentation suggestions".

Here's a patch.  Feel free to edit for style :-)

Signed-off-by: Peter Chubb 

---
 Documentation/usage/external.itely |   20 +++-
 1 file changed, 19 insertions(+), 1 deletion(-)

Index: lilypond/Documentation/usage/external.itely
===
--- lilypond.orig/Documentation/usage/external.itely2010-02-17 
12:44:00.551158469 +1100
+++ lilypond/Documentation/usage/external.itely 2010-02-17 13:13:15.338160699 
+1100
@@ -592,6 +592,24 @@
 @node MIDI articulation
 @subsection MIDI articulation
 
-TODO stub for info about Dr. Peter Chubb's @file{articulate.ly}
+LilyPond can be used to produce MIDI output, for `proof-hearing' what
+has been written.  However, only dynamics, explicit tempo markings,
+and the notes and durations themselves are produced in the output.
+
+At
+...@uref{http://@/www@/.nicta@/.com@/.au/@/people/@/chubbp/@/articulate}
+is one attempt to get more of the information in the score into the
+MIDI.  It works by shortening notes not under slurs, to `articulate'
+the notes.  The amount of shortening depends on any
+articulation markings attached to a note: staccato halves the note
+value, tenuto gives a note its full duration, and so on.
+
+The script also realises trills and turns, and could be extended to
+expand other ornaments such as mordents.
+
+Its main limitation is that it can only affect things it knows about:
+anything that is merely textual markup (instead of a note property) is
+still ignored.
+
 
 


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Lyrics across multi-voice sections

2010-02-28 Thread Peter Chubb
>>>>> "Alberto" == Alberto Simões  writes:

Alberto> Hello I have a music where in some places the voice splits,
Alberto> like:

Alberto> << { g2 ~ g8 } \\ { s8 e8[ dis d] cis } >>

Alberto> I was trying to make lyrics align with the top voice of these
Alberto> splits.  I tried to use:

You need to tell LilyPond which voice is which.

The \\ construct creates two new voices, neither of which is aligned
with your lyrics.  What you probably want is something like this:

 \context Voice = tune { a b c <<
  \context Voice = tune { \voiceOne g2 ~ g8 }
  \context Voice = alternate { \voiceTwo  s8 e8[ dis d] cis } 
  >> \oneVoice a b c
 }
 \lyricsto tune \theWords



Grahame, this is such a FAQ thaqt we either need to add a section to
the LM in `voices and vocals', or modify the `I'm hearing voices'
section, or add an explicit `implicit voice instantiation with vocals'
section.  Or some other solution?

If you tell me which you'd prefer I'll try to whip yup a patch this week.
--
Dr Peter Chubb  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
All things shall perish from under the sky/Music alone shall live, never to die


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: dynamic and midi velocity

2010-03-03 Thread Peter Chubb
> "bachelet" == bachelet   writes:

bachelet> any luck finding this script, I'd like to use it, too


It was in this mailing list, at
http://www.mail-archive.com/bug-lilyp...@gnu.org/msg03960.html 

Peter C


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: articulate and tie playback above 2.13.8

2010-03-16 Thread Peter Chubb
>>>>> "GBK" == GBK   writes:

GBK> Hello, I find the problem concerning ties playback since
GBK> 2.13.8. When I use articulate script, the ties are broken in
GBK> midi. Please try yourself to find where the bug is.

Are the ties broken when you don't use articulate.ly?

I don't have such a recent version of Lilypond yet (I'm still using
the Debian-supplied 2.12.3 most of the time) and I don't see the
problem.  I may have time to work on it next week :=)  Most likely the
format of the scheme music has changed a little, and the articulate
script no longer parses it correctly, so tries to shorten the first
note that's tied.

Peter C
--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: articulate and tie playback above 2.13.8

2010-03-17 Thread Peter Chubb

Hi,
  Please try the attached fixed script -- I think it'll work now.



articulate.ly
Description: Binary data
___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Tempo markings and tempo dynamics

2010-03-29 Thread Peter Chubb
>>>>> "Reinhold" == Reinhold Kainhofer  writes:

Reinhold> -BEGIN PGP SIGNED MESSAGE- Hash: SHA1

Reinhold> Am Montag, 29. März 2010 22:10:25 schrieb Kieren MacMillan:
>> Hi Phil,
>> 
>> > I checked and found that I create the "rall" marking as a
>> \markup, as > suggested in the documentation.
>> 

Thecurrent version of the articulte script understands \markup "a
tempo" and rall etc., to change the MIDI tempo.

See http://www.nicta.com.au/people/chubbp/articulate for the script.

I haven't updated it to understand the \tempo "rall" etc., commands, yet.
--
Dr Peter Chubb  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
All things shall perish from under the sky/Music alone shall live, never to die


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Accidental not properly notated in score

2010-05-05 Thread Peter Chubb
>>>>> "Patrick" == Patrick Karl  writes:

Patrick> Can anyone explain why the 2nd d-sharp is not notated in the
Patrick> music in the following snippet:

Patrick> \version "2.12.2"
Patrick> \relative g'' { \partial 4 r4 r2. dis4 e2.
Patrick>\repeat volta 2 { \partial 4 c8 dis e2.  } }

The \repeat volta N {} construct doesn't actually create a new bar.
So the second d-sharp is in the same bar as the first, so Lilypond
doesn't notate it.

As  player, I find it easier if repeats start and end at bar
boundaries, so maybe:

 \relative g'' {
   \partial 4 r4 |
   r2. dis4 |
   e2. c8 dis |
   \repeat volta 2 {
 e2. 
   } \alternative {
 {
   c8 dis | 
 }{
   r4 | 
 }
   }
}

--
Dr Peter Chubb  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
All things shall perish from under the sky/Music alone shall live, never to die


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


\autochange and rests

2010-05-15 Thread Peter Chubb

Hi,
   I have a simple piece that I'm trying to arrange for my daughter
   who's a beginner pianist.  I can write it out all on the treble
   clef, but then there are a few low A notes below the staff that
   need leger lines.  Using \autochange
   splits it nicely, but it looks wrong -- how can I get \autochange
   to fill in the gaps in the staves with rests?
   (some people may recognise the tune).

This is with \autochange:
   \version "2.12.3"
   \score {
 \context PianoStaff {
\autochange \relative c' { 
  \key a \minor \time 2/2 a2 a4 a | 
  e4 e e2 
}
 }
   }

This is what I want, but automatically:
   \version "2.12.3"
   \score {
 \context PianoStaff <<
   \context Staff = RH  \relative c' {
 \time 2/2
 \key a \minor
 R1 | 
 e4 e e2 |
   }
   \context Staff = LH  \relative c' {
 \clef "F"
 \time 2/2
 \key a \minor
     a2 a4 a | 
 R1 |
   }
 >>
   }
--
Dr Peter Chubb  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
All things shall perish from under the sky/Music alone shall live, never to die

___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: noobie question. percussion instruments

2010-05-16 Thread Peter Chubb
>>>>> "Roberto" == Roberto Morales  writes:

Roberto> Hi Xavier Thanks for your observation in my mistyping, but I
Roberto> still got the same mistake and compilation still looks clean


Roberto> #(define platillos '( (chinesecymbal triangle AFICS #f -3 )
Roberto> (crashcymbal default #f 1) ) )

There are some non-printing characters in there -- a control-B and a
control-A --- they may be perturbing your results.



--
Dr Peter Chubb  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
All things shall perish from under the sky/Music alone shall live, never to die

___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Hide staff on printout but retain midi

2010-05-27 Thread Peter Chubb
> "northofscotland" == northofscotland   writes:

northofscotland> I am typesetting a mediaeval trouvere song and want
northofscotland> to add a drone to the midi but hide the somewhat
northofscotland> redundant music in the printout.  Is there a simple
northofscotland> way to do this, please?  -- View this message in
northofscotland> context:

The simplest way is to use two score blocks, one for MIDI and one for
printout.

PeterC

___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: new website 24-hour test

2010-06-29 Thread Peter Chubb
>>>>> "Graham" == Graham Percival  writes:

Graham> We’re testing our new website! For the next 24 hours, the new
Graham> website will be the default website; after that, we will
Graham> switch back to the old website while we examine feedback and
Graham> make improvements to the new website.

Mostly looks good in Opera.

But shouldn't the copyright now be 2010 for the new version of NR,
website, etc?

After you get into the NR or the LM, there seem to be no easy link to get
back to the main pages.  You have to hit `back to documentation index'
(http://lilypond.org/doc/v2.12/Documentation/index.html) 
then `lilypond,.org' to get back to the front page.  Is this
deliberate?  Also the Documentation Index doesn't appear to have the
same style as the rest of the web frontmatter.  Maybe it'd be better
to scrap that page, and instead point `documentatioon index' at
http://lilypond.org/manuals.html 

--
Dr Peter Chubb  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
All things shall perish from under the sky/Music alone shall live, never to die

___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: please help a newbie with partial measures

2010-08-16 Thread Peter Chubb
>>>>> "Phil" == Phil Holmes  writes:

Phil> Rose, Here's a very simple version of some music laid out as
Phil> hymns frequently seem to be.  I think you should be able to use
Phil> this to modify what you've already done.

You don't need the  partials except at the start.

See some of the hymns I've typeset at mutopiaproject.org.

For example:
http://www.mutopiaproject.org/cgibin/piece-info.cgi?id=195

But basically, a \bar "||" just causes a double barline to be typeset
without changing Lilypond's idea of the current moment in the bar.

Peter C
--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia

___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Confusion about beaming

2010-09-06 Thread Peter Chubb
>>>>> "Marc" == Marc Schonbrun  writes:

Marc> Hello, I was wondering about why the decision was made in the
Marc> input syntax parser to view beaming groups as follows:


Marc> \relative { c8 d [e f g a b c] }

Marc> The above snippet beams from the d through to the final c. At
Marc> first glance, it would appear that the brackets are encasing the
Marc> e through c, and those notes would end up beamed together, but,
Marc> alas, this is not the case.

LilyPond used to do treat brackets (for beaming) and parentheses (for
slurs and grouping) as grouping operators.  It was decided at one
point to change as much of the syntax as possible to be postfix -- so
`[' isn't a grouping symbol outside the start of a group, but a
`start-beam' operator attached to the note it follows.  Likewise (
isn't a grouping symbol but a 'start-slur' operator attached to the
note it follows.  If these symbols are treated as paired grouping operators,
it's difficult to handle nesting properly --- beams, slurs and phrase
marks are all independent groups.

This leaves { and } the only real grouping symbols, and they have to
nest strictly.  But slurs, phrasemarks and beams can span groups, and
each other.



--
Dr Peter Chubb  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
All things shall perish from under the sky/Music alone shall live, never to die

___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Suppressing chords in MIDI output

2010-09-21 Thread Peter Chubb
>>>>> "Christopher" == Christopher Meredith  writes:

Christopher> I use chordmode to print the chords above the piano
Christopher> music, but when rendering the MIDI file, I would prefer
Christopher> the chords to not be played.  Is there a way to have only
Christopher> the voices (and not the chords) output to MIDI?

It's generally best to have a separate score block for MIDI output, so
you can unroll repeats and so on --- just leave the chords out of
that score.

accomp=\chords {c4 f g2:7}
tune=\relative c'' { c4 c b a}
\score {
   <<
   \context Chords \accomp
   \context Staff {\key c \major \time 4/4 \tune}
   >>
   \layout{}
}
\score  {
   \unfoldRepeats <<
   \context Staff {\key c \major \time 4/4 \tune}
   >>
   \midi {}
}

--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia

___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Intersystem marks?

2010-10-07 Thread Peter Chubb

A number of my early scores have a short double slanted line between
systems.  This is helpful to separate systems on a closely spaced
page.

How can I get Lilypond to do something similar?  I'm not sure what
the mark is  called, but have had a look in the learning manual and
notation references in the likely places, and can't find it.
--
Dr Peter Chubb  http://www.gelato.unsw.edu.au  peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia

___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Intersystem marks?

2010-10-07 Thread Peter Chubb
> "Marek" == Marek Klein  writes:

Marek> (quoted-printable)>] Hi Peter,


Marek> I have found it:
Marek> http://lilypond.org/doc/v2.13/Documentation/notation-big-page#
Marek> separating-systems

Thankyou, that's just what I was looking for.

Peter C

___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: MIDI and Volta repeats in parallel music

2014-11-23 Thread Peter Chubb
> "Michael" == Michael Ellis  writes:

Michael> On Sun, Nov 23, 2014 at 4:46 PM, 
Michael> wrote:
>> What's more, is there a reason to have the structure in a different
>> voice?

Michael> Good question. For me, it's mostly about the DRY principle
Michael> (don't repeat yourself).  I'm in the process of writing a
Michael> program that tries to maximize one's opportunities to exploit
Michael> the repetitive aspects of most compositions when entering the
Michael> notation for multiple voices.  It's a work in progress, but
Michael> if you're curious it lives at
Michael> https://github.com/Michael-F-Ellis/TransLily

My point I think is that the structure is the structure of the voice,
not the structure of the staff.  Which is why, BTW, the MIDI repeats
don't unfold.

Visibly the structure voice shows the repeats, but the repeats aren't
actually in the music voice.


So when you unfold you get:
   <<
 \music
 { \structure \structure \structure }
   >>
   

I
Michael> As for the whole \repeat unfold business, I'd love to
Michael> understand why LP can merge repeats in the PDF but can't do
Michael> it MIDI.  I know the developers are really smart folks, so it
Michael> must be way more challenging than I'm imagining.

t can't merge them in the PDF either.  But when it prints them as
repeat symbols, you can't tell from the printout.

Try this:
---
\version "2.18.0"

music= <<
\new Staff <<
  \new Voice \relative c' { c4 c c c }
  \new Voice \relative c' { \repeat volta 2 { s1 }}
>>
>>

\score {
  \music
}

\score {
  \unfoldRepeats \music
}


---
And look at the PDF.  The second system shows the unfolded structure.

Peter C

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


  1   2   >