> we don't care about non-power-of-two periods, i think. however, i do > consider periods defined in units of times and not frames to be broken > hardware design. it forces inefficiencies into the software that are > totally unnecessary.
For what its worth, the SAOL standard has to deal with this problem too, since the user gets to specify an integer k-rate and an integer a-rate. Eric went for this solution: 5.8.5.2.2 krate parameter <global parameter> -> krate <int>; The krate global parameter specifies the control rate of the orchestra. [...] The krate parameter shall be an integer value between 1 and the sampling rate inclusive, specifying the control rate in Hz. [...] If the control rate as determined by the previous paragraph is not an even divisor of the sampling rate, then the control rate is the next larger integer that does evenly divide the sampling rate. The control period of the orchestra is the number of samples, or amount of time represented by these samples, in one control cycle. --- This has been controversial, since it limits the ability to use SAOL to emulate existing coding standards that have non-integer relationships betweens frames and the sample rate. The win has been decoder implementation simplicity. ------------------------------------------------------------------------- John Lazzaro -- Research Specialist -- CS Division -- EECS -- UC Berkeley lazzaro [at] cs [dot] berkeley [dot] edu www.cs.berkeley.edu/~lazzaro -------------------------------------------------------------------------