jamulus/src/resamplefilter.h
2006-11-26 12:12:12 +00:00

214 lines
5.5 KiB
C

/* Automatically generated file with MATLAB */
/* File name: "ResampleFilter.m" */
/* Filter taps in time-domain */
#ifndef _RESAMPLEFILTER_H_
#define _RESAMPLEFILTER_H_
#define NUM_TAPS_PER_PHASE2 12
#define NUM_TAPS_PER_PHASE3_2 12
#define NUM_TAPS_PER_PHASE1 12
#define INTERP_I_2 2
#define DECIM_D_2 1
#define INTERP_I_3_2 3
#define DECIM_D_3_2 2
#define INTERP_DECIM_I_D1 10
// Filter for ratio 2
static float fResTaps2[INTERP_I_2 * DECIM_D_2 * NUM_TAPS_PER_PHASE2] = {
-0.00197231219263642580f,
-0.00149441363437698710f,
0.00978643021021321540f,
0.00681767720964485820f,
-0.02671025414462463400f,
-0.02086828471078093500f,
0.05837045639157300400f,
0.05384957575491138700f,
-0.11980958828278984000f,
-0.14170168497101379000f,
0.30855591451377506000f,
0.87515091657445054000f,
0.87515091657445054000f,
0.30855591451377506000f,
-0.14170168497101379000f,
-0.11980958828278984000f,
0.05384957575491138700f,
0.05837045639157300400f,
-0.02086828471078093500f,
-0.02671025414462463400f,
0.00681767720964485820f,
0.00978643021021321540f,
-0.00149441363437698710f,
-0.00197231219263642580f
};
// Filter for ratio 3 / 2
static float fResTaps3_2[INTERP_I_3_2 * DECIM_D_3_2 * NUM_TAPS_PER_PHASE3_2] = {
-0.00176046250093099540f,
-0.00336610762581997370f,
-0.00023822280323501131f,
0.00833859487742245890f,
0.01339722511380138700f,
0.00269922033961634070f,
-0.02185973842102897900f,
-0.03569929574814127000f,
-0.01106578529670297800f,
0.04574010538564617100f,
0.08068909318354972000f,
0.03356421112732931000f,
-0.08888051700234801700f,
-0.18084907976234993000f,
-0.10021438259584969000f,
0.20666894693494509000f,
0.62554698344706861000f,
0.92713992460312022000f,
0.92713992460312022000f,
0.62554698344706861000f,
0.20666894693494509000f,
-0.10021438259584969000f,
-0.18084907976234993000f,
-0.08888051700234801700f,
0.03356421112732931000f,
0.08068909318354972000f,
0.04574010538564617100f,
-0.01106578529670297800f,
-0.03569929574814127000f,
-0.02185973842102897900f,
0.00269922033961634070f,
0.01339722511380138700f,
0.00833859487742245890f,
-0.00023822280323501131f,
-0.00336610762581997370f,
-0.00176046250093099540f
};
// Filter for ratios close to 1
static float fResTaps1[INTERP_DECIM_I_D1 * NUM_TAPS_PER_PHASE1] = {
-0.00129181992672801360f,
-0.00207886551285772290f,
-0.00287519800425638110f,
-0.00354120720771153910f,
-0.00391755659664638590f,
-0.00384568128202934270f,
-0.00319259334815649940f,
-0.00187713739944610450f,
0.00010586149691723067f,
0.00266742068076876060f,
0.00561586829442904840f,
0.00866090598717600930f,
0.01143197533872717000f,
0.01351098086300389300f,
0.01447751287549226700f,
0.01396276906259418800f,
0.01170664402374247200f,
0.00761119378345958850f,
0.00178311012364952820f,
-0.00544188094946287510f,
-0.01349857823816511800f,
-0.02161960909069559500f,
-0.02889142869399521600f,
-0.03433664370844288100f,
-0.03701682481313090000f,
-0.03614676421513295800f,
-0.03120859084480779800f,
-0.02205265100214613000f,
-0.00897188476756275060f,
0.00726225824406205160f,
0.02541150940858524100f,
0.04383507935997314800f,
0.06060641890050100900f,
0.07367662235517660800f,
0.08107302414568577600f,
0.08111657494320076400f,
0.07263788052016696700f,
0.05516985095031713000f,
0.02909509423931267600f,
-0.00427135103965109450f,
-0.04267869501534898200f,
-0.08302470868585065700f,
-0.12152802242786863000f,
-0.15398027155782226000f,
-0.17606165300033697000f,
-0.18369620562420094000f,
-0.17341770937821352000f,
-0.14271415809850990000f,
-0.09031872116141286000f,
-0.01641812005088002400f,
0.07724474282951483700f,
0.18738870090358245000f,
0.30933747340895279000f,
0.43728178746780866000f,
0.56464344237183917000f,
0.68451472884717957000f,
0.79013921003423337000f,
0.87539536840978205000f,
0.93524350914423104000f,
0.96609875058711103000f,
0.96609875058711103000f,
0.93524350914423104000f,
0.87539536840978205000f,
0.79013921003423337000f,
0.68451472884717957000f,
0.56464344237183917000f,
0.43728178746780866000f,
0.30933747340895279000f,
0.18738870090358245000f,
0.07724474282951483700f,
-0.01641812005088002400f,
-0.09031872116141286000f,
-0.14271415809850990000f,
-0.17341770937821352000f,
-0.18369620562420094000f,
-0.17606165300033697000f,
-0.15398027155782226000f,
-0.12152802242786863000f,
-0.08302470868585065700f,
-0.04267869501534898200f,
-0.00427135103965109450f,
0.02909509423931267600f,
0.05516985095031713000f,
0.07263788052016696700f,
0.08111657494320076400f,
0.08107302414568577600f,
0.07367662235517660800f,
0.06060641890050100900f,
0.04383507935997314800f,
0.02541150940858524100f,
0.00726225824406205160f,
-0.00897188476756275060f,
-0.02205265100214613000f,
-0.03120859084480779800f,
-0.03614676421513295800f,
-0.03701682481313090000f,
-0.03433664370844288100f,
-0.02889142869399521600f,
-0.02161960909069559500f,
-0.01349857823816511800f,
-0.00544188094946287510f,
0.00178311012364952820f,
0.00761119378345958850f,
0.01170664402374247200f,
0.01396276906259418800f,
0.01447751287549226700f,
0.01351098086300389300f,
0.01143197533872717000f,
0.00866090598717600930f,
0.00561586829442904840f,
0.00266742068076876060f,
0.00010586149691723067f,
-0.00187713739944610450f,
-0.00319259334815649940f,
-0.00384568128202934270f,
-0.00391755659664638590f,
-0.00354120720771153910f,
-0.00287519800425638110f,
-0.00207886551285772290f,
-0.00129181992672801360f
};
#endif /* _RESAMPLEFILTER_H_ */