Chant-tone diagnostic

Tone A (id: a) — single tone — seam crossfade: engine default (60ms)

First tone recorded. Production cut. Clips are at strict tempo with phrase-boundary cuts; the engine's default 60ms equal-power crossfade is the sweet spot for this cut style. To add tones B–K, copy this entry, change the id/label, drop the WAVs into content/chant-tones/tone-<id>/, and adjust seam_crossfade_ms if a different cut style needs it.

Per-clip playback

Each row plays one stem in isolation. Listen for clean attacks and decays; loops should sound steady; cadences should land cleanly on the last note.

  • slot 1 — recite-first (one-shot start) tone-a1-recite-first.D-Gk8lt1.wav
  • slot 1 — recite-cont (after slot-2 cadence) tone-a1-recite-cont.CNjJYUaA.wav
  • slot 1 — recite (loopable) tone-a1-recite.BwzfJf5y.wav
  • slot 1 — cadence tone-a1-cadence.pi4aISkX.wav
  • slot 2 — intro (after slot-1 cadence) tone-a2-intro.ClokcfGQ.wav
  • slot 2 — recite (loopable) tone-a2-recite.B0HTA3TX.wav
  • slot 2 — cadence (mid-psalm) tone-a2-cadence.CjAfrwfC.wav
  • slot 2 — cadence-final (end of psalm) tone-a2-cadence-final.BOE18hOG.wav

Sequence playback (all clips in manifest order)

Plays every clip one after another. Useful for verifying the files load and decode correctly. Order is not a real chant sequence — see "two-verse pattern" below for that.

Two-verse chant pattern (HTML <audio>)

Plays the attack and cadence stems in the order a real two-verse psalm would chant them (recite loops omitted — they'd hold between attacks while the text is being read). The seams between clips are what we're listening for here: do the cadences and the following attacks join smoothly?

Expected behavior: audible dropout between clips. The HTML <audio> element schedules clip N+1 only after clip N's "ended" event fires, which the browser delivers 50–150ms late. Compare with the Web Audio engine below.

Web Audio engine (sample-accurate scheduling)

Same psalm pattern as above, but scheduled through the Web Audio engine: every clip's start time is computed up front and sources are queued sample-accurately. Adjacent clips overlap by a small amount (80ms) to mask the natural decay-to-attack seam. Reciting tones are looped with a short crossfade so the amplitude doesn't dip at the loop boundary.

Listen for: the seams between clips should be inaudible; the reciting tone should hold steady for its full duration; the chant should feel like one continuous piece of music, not a slideshow of clips.

Status: idle