Derf?? The index is encoded by encode_pulses() (<xreftarget="cwrs.c">cwrs.c</xref>).

The best PVQ codeword is encoded by encode_pulses() (<xreftarget="cwrs.c">cwrs.c</xref>).

The codeword is converted to a unique index in the same way as specified in

<xreftarget="PVQ"></xref>. The indexing is based on the calculation of V(N,K) (denoted N(L,K) in <xreftarget="PVQ"></xref>), which is the number of possible combinations of K pulses

in N samples. The number of combinations can be computed recursively as

V(N,K) = V(N+1,K) + V(N,K+1) + V(N+1,K+1), with V(N,0) = 1 and V(0,K) = 0 for K != 0.

There are many different ways to compute V(N,K), including pre-compute tables and direct

use of the recursive formulation. The reference implementation applies the recursive

formulation one line (or column) at a time to save on memory use.