Fixed subsampler.

master
Hannes Matuschek 12 years ago
parent 83bc1bd355
commit 5c865488fe

@ -422,11 +422,12 @@ protected:
* averaging sub-sampling. */
inline void _process(const Buffer<Scalar> &in, const Buffer<CScalar> &out) {
size_t i=0, j=0;
for (; i<in.size(); i++, _sample_count++) {
for (; i<in.size(); i++) {
// Store sample in ring buffer
_ring[_ring_offset] = in[i];
_last += this->applyFrequencyShift(_filter_ring());
_sample_count++;
// _ring_offset modulo _order
_ring_offset++;

@ -90,8 +90,8 @@ protected:
/** Performs the sub-sampling from @c in into @c out. */
void _process(const Buffer<Scalar> &in, const Buffer<Scalar> &out) {
size_t j=0;
for (size_t i=0; i<in.size(); i++, _left++) {
_last += in[i];
for (size_t i=0; i<in.size(); i++) {
_last += in[i]; _left++;
if (_n <= _left) {
out[j] = _last/SScalar(_n); j++; _last=0; _left=0;
}

Loading…
Cancel
Save