optek_hifi2_mixer.h
3.44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
#ifndef _OPTEK_HIFI2_MIXER_H
#define _OPTEK_HIFI2_MIXER_H
/*
input->no input
return->string of optek_mixer build date,time and version
*/
const char *optek_mixer_data_get(void);
const char *optek_mixer_time_get(void);
const char *optek_mixer_version_get(void);
/*
r->x - y
x->input
y->input
N->samples
return void
*/
//MCPS: 0.20 Average: 0.20 Peak: 0.20
void optek_hifi2_minus_24b (
int * r, // [N] output
int * x, // [N] input
int * y, // [N] input
int N
) OPTEK_HIFI2_DSP_ATTIB;
/*
r->x + y
x->input
y->input
N->samples
return void
*/
//MCPS: 0.20 Average: 0.20 Peak: 0.20
void optek_hifi2_plus_24b (
int * r, // [N] output
int * x, // [N] input
int * y, // [N] input
int N
) OPTEK_HIFI2_DSP_ATTIB;
/*
r->x - y
x->input
y->input
N->samples
return void
*/
//MCPS: 0.20 Average: 0.20 Peak: 0.20
void optek_hifi2_minus_16b (
short * r, // [N] output
short * x, // [N] input
short * y, // [N] input
int N
) OPTEK_HIFI2_DSP_ATTIB;
/*
r->x + y
x->input
y->input
N->samples
return void
*/
//MCPS: 0.20 Average: 0.20 Peak: 0.20
void optek_hifi2_plus_16b (
short * r, // [N] output
short * x, // [N] input
short * y, // [N] input
int N
) OPTEK_HIFI2_DSP_ATTIB;
/*
mx1->mix input1 24b stereo, mx1==NULL--> dsiable mixer
mx1b->mx1b*mx1
mx2->mix input2 16b mono, mx2==NULL--> dsiable mixer
mx2b->mx2b*mx2
r->output 24b stereo, r = mx1*mx1b + mx2*mx2b,r==NULL-->dsiable mixer
N->samples
return->no return
*/
void optek_hifi2_24bstereo_16bmono_mixer(int *mx1, // [N] input,24b stereo
int mx1b,
short *mx2, // [N] input, 16b mono
int mx2b,
int *r, // [N] output, 24b stereo
int N)OPTEK_HIFI2_DSP_ATTIB;
/*
mx1->mix input1 24b stereo, mx1==NULL--> dsiable mixer
mx1b->mx1b*mx1
mx2->mix input2 16b stereo, mx2==NULL--> dsiable mixer
mx2b->mx2b*mx2
r->output 24b stereo, r = mx1*mx1b + mx2*mx2b,r==NULL-->dsiable mixer
N->samples
return->no return
*/
void optek_hifi2_24bstereo_16bstereo_mixer(int *mx1, // [N] input,24b stereo
int mx1b,
short *mx2, // [N] input, 16b stereo
int mx2b,
int *r, // [N] output, 24b stereo
int N)OPTEK_HIFI2_DSP_ATTIB;
/*
mx1->mix input1 16b stereo, mx1==NULL--> dsiable mixer
mx1b->mx1b*mx1
mx2->mix input2 16b mono, mx2==NULL--> dsiable mixer
mx2b->mx2b*mx2
r->output 16b stereo, r = mx1*mx1b + mx2*mx2b,r==NULL-->dsiable mixer
N->samples
return->no return
*/
void optek_hifi2_16bstereo_16bmono_mixer(short *mx1, // [N] input,16b stereo
int mx1b,
short *mx2, // [N] input, 16b mono
int mx2b,
short *r, // [N] output, 16b stereo
int N) OPTEK_HIFI2_DSP_ATTIB;
/*
mx1->mix input1 16b Xchannel, mx1==NULL--> dsiable mixer
mx1b->mx1b*mx1
mx2->mix input2 16b Xchannel, mx2==NULL--> dsiable mixer
mx2b->mx2b*mx2
r->output 16b Xchannel, r = mx1*mx1b + mx2*mx2b,r==NULL-->dsiable mixer
N->samples
return->no return
*/
void optek_hifi2_16bXchannel_mixer(short *mx1, // [N] input,16b Xchannel
int mx1b,
short *mx2, // [N] input,16b Xchannel
int mx2b,
short *r, // [N] output,16b Xchannel
int N)OPTEK_HIFI2_DSP_ATTIB;
#endif //_OPTEK_HIFI2_MIXER_H