align

fun align(expected: List<String>, heard: List<RecognizedWord>, duration: Double, weighting: SpeechWeighting = EnglishSyllableWeighting(), equivalent: (String, String, String?) -> Boolean? = null): List<WordSpan>(source)

One span per written word, in reading order.

A recording nothing was heard in comes back empty rather than with a span per word, because every span would be a guess dressed as a measurement.