avfilter/arls_template: use defines for all constants
This commit is contained in:
parent
f66536cc58
commit
47e214245b
@ -16,6 +16,8 @@
|
|||||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#undef ZERO
|
||||||
|
#undef HALF
|
||||||
#undef ONE
|
#undef ONE
|
||||||
#undef ftype
|
#undef ftype
|
||||||
#undef SAMPLE_FORMAT
|
#undef SAMPLE_FORMAT
|
||||||
@ -23,10 +25,14 @@
|
|||||||
#define SAMPLE_FORMAT float
|
#define SAMPLE_FORMAT float
|
||||||
#define ftype float
|
#define ftype float
|
||||||
#define ONE 1.f
|
#define ONE 1.f
|
||||||
|
#define HALF 0.5f
|
||||||
|
#define ZERO 0.f
|
||||||
#else
|
#else
|
||||||
#define SAMPLE_FORMAT double
|
#define SAMPLE_FORMAT double
|
||||||
#define ftype double
|
#define ftype double
|
||||||
#define ONE 1.0
|
#define ONE 1.0
|
||||||
|
#define HALF 0.5
|
||||||
|
#define ZERO 0.0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define fn3(a,b) a##_##b
|
#define fn3(a,b) a##_##b
|
||||||
@ -92,21 +98,21 @@ static ftype fn(process_sample)(AudioRLSContext *s, ftype input, ftype desired,
|
|||||||
for (int i = 0, pos = offset; i < order; i++, pos++) {
|
for (int i = 0, pos = offset; i < order; i++, pos++) {
|
||||||
const int ikernel_size = i * kernel_size;
|
const int ikernel_size = i * kernel_size;
|
||||||
|
|
||||||
u[i] = 0.f;
|
u[i] = ZERO;
|
||||||
for (int k = 0, pos = offset; k < order; k++, pos++)
|
for (int k = 0, pos = offset; k < order; k++, pos++)
|
||||||
u[i] += p[ikernel_size + k] * delay[pos];
|
u[i] += p[ikernel_size + k] * delay[pos];
|
||||||
|
|
||||||
g += u[i] * delay[pos];
|
g += u[i] * delay[pos];
|
||||||
}
|
}
|
||||||
|
|
||||||
g = 1.f / g;
|
g = ONE / g;
|
||||||
|
|
||||||
for (int i = 0; i < order; i++) {
|
for (int i = 0; i < order; i++) {
|
||||||
const int ikernel_size = i * kernel_size;
|
const int ikernel_size = i * kernel_size;
|
||||||
|
|
||||||
gains[i] = u[i] * g;
|
gains[i] = u[i] * g;
|
||||||
coeffs[i] = coeffs[order + i] = coeffs[i] + gains[i] * e;
|
coeffs[i] = coeffs[order + i] = coeffs[i] + gains[i] * e;
|
||||||
tmp[i] = 0.f;
|
tmp[i] = ZERO;
|
||||||
for (int k = 0, pos = offset; k < order; k++, pos++)
|
for (int k = 0, pos = offset; k < order; k++, pos++)
|
||||||
tmp[i] += p[ikernel_size + k] * delay[pos];
|
tmp[i] += p[ikernel_size + k] * delay[pos];
|
||||||
}
|
}
|
||||||
@ -122,7 +128,7 @@ static ftype fn(process_sample)(AudioRLSContext *s, ftype input, ftype desired,
|
|||||||
const int ikernel_size = i * kernel_size;
|
const int ikernel_size = i * kernel_size;
|
||||||
|
|
||||||
for (int k = 0; k < order; k++)
|
for (int k = 0; k < order; k++)
|
||||||
p[ikernel_size + k] = (p[ikernel_size + k] - (dp[ikernel_size + k] + dp[kernel_size * k + i]) * 0.5f) * lambda;
|
p[ikernel_size + k] = (p[ikernel_size + k] - (dp[ikernel_size + k] + dp[kernel_size * k + i]) * HALF) * lambda;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (s->output_mode) {
|
switch (s->output_mode) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user