Figure 1 shows a block diagram for a packet-based formant synthesizer. Phases are generated by a phase accumulator (at the top) which repeats at the rate where is the desired fundamental frequency of the output. The table on the left hand side holds a packet, which is considered as a sampled period of a (real-valued) waveform with period . The phases of the partials of the stored waveform are all assumed to be aligned at :
where the coefficients are real-valued. The parameter is a shift factor; if each period of the phase generator swipes through the table twice, so that the wavetable is scanned as a phase increment corresponding to a fundamental frequency of . The notation reflects our assumption that the wavetable (and others below) are sampled with sufficiently high resolution and/or interpolated so that their values may be regarded as depending on a continuous parameter .
The right-hand side table lookup is a windowing function, necessary in case the value of is not a half-integer. The windowing function is assumed to be zero outside . In these units, the Hann window for example is .
The Hann window provides perfect reconstruction of the waveform if we make two overlapping copies of the diagram of Figure 1, one-half cycle out of phase, provided further that the parameter is an integer so that the two copies make an in-phase cross-fade of the waveform . This can be done as diagrammed in Figure 2.