Karya, built on 2020-11-26T21:03:17 (patch 23b5be2d53a9e8e7d6136cda5aae2849abe5cded)
Safe HaskellNone



Carnatic style pitch ornaments.

The names don't correspond directly with anything traditional, as far as I know, but are inspired by http://www.gswift.com/article-2.html.

Pitch ornaments can be expressed either as pitch calls, or as control calls meant for a transpose track. They both have pros and cons:

Transposition control signal:

  • I can keep the pitches separate and clear and collapse the pitch track. This correctly reflects the underlying swaram, with the gamakam as separate ornamentation.
  • Related to the above, each call doesn't need to repeat the the pitch arg, so there's less redundancy. Calls are also simpler with one fewer argument.

Pitch signal:

  • A pitch call can use absolute (t-nn) or scalar (t-diatonic) transposition based on the type of its arguments, while the transpose signal has to either use a separate track, or the somewhat awkward -> call.
  • The pitch signal can represent an ornament involving multiple pitches, e.g. a slide frome one pitch to another. A transposition signal can only represent offsets from an external pitch.

So the pitch signal is more powerful, but the transposition signal is often more convenient, and can lead to less redundant notation. Unless I can think of a way to get the advantages of both, I might have to have both around, with their own versions of the same calls.



standard parameters

pitch calls

trill_from_transitions :: Typecheck.Function -> Typecheck.Function -> [RealTime.RealTime] -> [(RealTime.RealTime, Signal.Y)] Source #

Make a trill signal from a list of transition times.

c_dip :: Generator Pitch Source #

Ok, this name is terrible but what else is better?

control calls

c_dip_c :: Generator Control Source #

Ok, this name is terrible but what else is better?