Move colorchord2 into its own folder, since colorchord embedded is its own thing.
This commit is contained in:
parent
24b606988f
commit
ed15ea49b9
56 changed files with 1 additions and 12 deletions
58
colorchord2/filter.c
Normal file
58
colorchord2/filter.c
Normal file
|
@ -0,0 +1,58 @@
|
|||
#include "filter.h"
|
||||
#include <math.h>
|
||||
#include <string.h>
|
||||
|
||||
/*
|
||||
void FilterFoldedBinsIIRTWOPASS( float * folded, int bins, float iir )
|
||||
{
|
||||
int i;
|
||||
float inv = 1.0 - iir;
|
||||
float v = 0.0;
|
||||
|
||||
//Go through the data once, forward.
|
||||
for( i = 0; i < bins; i++ )
|
||||
{
|
||||
v = v * iir + folded[i] * inv;
|
||||
}
|
||||
|
||||
//Start applying filter on second pass.
|
||||
for( i = 0; i < bins; i++ )
|
||||
{
|
||||
folded[i] = v * iir + folded[i] * inv;
|
||||
}
|
||||
|
||||
//Go backwards.
|
||||
v = 0;
|
||||
for( i = bins-1; i >= 0; i-- )
|
||||
{
|
||||
v = v * iir + folded[i] * inv;
|
||||
}
|
||||
|
||||
//Start applying filter on second pass.
|
||||
for( i = bins-1; i >= 0; i-- )
|
||||
{
|
||||
folded[i] = v * iir + folded[i] * inv;
|
||||
}
|
||||
}*/
|
||||
|
||||
|
||||
void FilterFoldedBinsBlob( float * folded, int bins, float strength, int iter )
|
||||
{
|
||||
float tmp[bins];
|
||||
int i;
|
||||
int j;
|
||||
for( j = 0; j < iter; j++ )
|
||||
{
|
||||
memcpy( tmp, folded, sizeof( tmp ) );
|
||||
for( i = 0; i < bins; i++ )
|
||||
{
|
||||
// float left = tmp[(i-1+bins)%bins];
|
||||
// float right = tmp[(i-1+bins)%bins];
|
||||
float right = tmp[(i+bins+1)%bins];
|
||||
float left = tmp[(i+bins-1)%bins];
|
||||
folded[i] = folded[i] * (1.-strength) + (left + right) * strength * 0.5;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue