Prosody for sound.speech. It takes the phoneme events from the
grapheme-to-phoneme stage and adds the timing and pitch the synthesizer
needs:
dur, in ms: the phoneme's own duration, times stress, times the
speed knob. Phrase ends lengthen; punctuation adds pauses.f0, in Hz: a baseline that falls across each phrase, and a bump on
each stressed syllable. A statement ends in a fall, a question in a
rise, a comma in a half-rise. The f0_range knob scales it all; 0 is
monotone.An event that already has dur or f0 keeps it.
Knobs read here: f0, f0_range, speed.
| Name | Signature |
|---|---|
| apply | apply(events, voice) -> events |
apply(
events,voice) ->events
Assign durations and an F0 contour to a phoneme event list
Fills events in place and returns it. An event is
{ ph, stress, emph, punct, dur, f0 }; all but ph are optional. A SIL
event's punct is the mark that closes its phrase: ".", "?", "!" or
",".