aboutsummaryrefslogtreecommitdiffstats
path: root/src/common/samplerate.h
blob: d8c9d41b4415c4fe5d00d17c1637eb8ae930a699 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include "filter.h"

typedef struct samplerate {
	double factor;
	struct {
		filter_t lp;
		double in_index;
	} down;
	struct {
		filter_t lp;
		double in_index;
	} up;
} samplerate_t;

int init_samplerate(samplerate_t *state, double samplerate);
int samplerate_downsample(samplerate_t *state, int16_t *input, int input_num, int16_t *output);
int samplerate_upsample(samplerate_t *state, int16_t *input, int input_num, int16_t *output);