Mercurial > hg > libxtract
comparison src/descriptors.c @ 146:baaa9d8b4d10
switched from single to double precision througout. closes #9
author | Jamie Bullock <jamie@jamiebullock.com> |
---|---|
date | Wed, 09 Jan 2013 12:45:29 +0000 |
parents | e4f704649c50 |
children | 71870680f7c1 |
comparison
equal
deleted
inserted
replaced
145:2663eac093a5 | 146:baaa9d8b4d10 |
---|---|
30 xtract_function_descriptor_t *xtract_make_descriptors(void) | 30 xtract_function_descriptor_t *xtract_make_descriptors(void) |
31 { | 31 { |
32 | 32 |
33 int f , F; | 33 int f , F; |
34 char *name, *p_name, *desc, *p_desc, *author; | 34 char *name, *p_name, *desc, *p_desc, *author; |
35 float *argv_min, *argv_max, *argv_def, *result_min, *result_max; | 35 double *argv_min, *argv_max, *argv_def, *result_min, *result_max; |
36 int *argc, *year, *argv_donor; | 36 int *argc, *year, *argv_donor; |
37 xtract_vector_t *data_format, *result_format; | 37 xtract_vector_t *data_format, *result_format; |
38 xtract_unit_t *data_unit, *argv_unit, *result_unit; | 38 xtract_unit_t *data_unit, *argv_unit, *result_unit; |
39 xtract_bool_t *is_scalar, *is_delta; | 39 xtract_bool_t *is_scalar, *is_delta; |
40 xtract_function_descriptor_t *fd, *d; | 40 xtract_function_descriptor_t *fd, *d; |
78 *argv_max = XTRACT_ANY; | 78 *argv_max = XTRACT_ANY; |
79 *argv_def = XTRACT_ANY; | 79 *argv_def = XTRACT_ANY; |
80 *argv_unit = XTRACT_DBFS; | 80 *argv_unit = XTRACT_DBFS; |
81 break; | 81 break; |
82 case XTRACT_SPECTRAL_INHARMONICITY: | 82 case XTRACT_SPECTRAL_INHARMONICITY: |
83 *argv_min = 0.f; | 83 *argv_min = 0.0; |
84 *argv_max = XTRACT_SR_UPPER_LIMIT / 2; | 84 *argv_max = XTRACT_SR_UPPER_LIMIT / 2.0; |
85 *argv_def = XTRACT_FUNDAMENTAL_DEFAULT; | 85 *argv_def = XTRACT_FUNDAMENTAL_DEFAULT; |
86 *argv_unit = XTRACT_HERTZ; | 86 *argv_unit = XTRACT_HERTZ; |
87 break; | 87 break; |
88 case XTRACT_F0: | 88 case XTRACT_F0: |
89 case XTRACT_FAILSAFE_F0: | 89 case XTRACT_FAILSAFE_F0: |
102 case XTRACT_ROLLOFF: | 102 case XTRACT_ROLLOFF: |
103 *argv_min = XTRACT_FFT_BANDS_MIN; | 103 *argv_min = XTRACT_FFT_BANDS_MIN; |
104 *argv_max = XTRACT_FFT_BANDS_MAX; | 104 *argv_max = XTRACT_FFT_BANDS_MAX; |
105 *argv_def = XTRACT_SPEC_BW_DEF ; | 105 *argv_def = XTRACT_SPEC_BW_DEF ; |
106 *argv_unit = XTRACT_HERTZ; | 106 *argv_unit = XTRACT_HERTZ; |
107 *(argv_min + 1) = 0.f; | 107 *(argv_min + 1) = 0.0; |
108 *(argv_max + 1) = 100.f; | 108 *(argv_max + 1) = 100.0; |
109 *(argv_def + 1) = 95.f; | 109 *(argv_def + 1) = 95.0; |
110 *(argv_unit + 1) = XTRACT_PERCENT; | 110 *(argv_unit + 1) = XTRACT_PERCENT; |
111 break; | 111 break; |
112 case XTRACT_PEAK_SPECTRUM: | 112 case XTRACT_PEAK_SPECTRUM: |
113 *argv_min = XTRACT_SR_LOWER_LIMIT / 2; | 113 *argv_min = XTRACT_SR_LOWER_LIMIT / 2.0; |
114 *argv_max = XTRACT_SR_UPPER_LIMIT / 2; | 114 *argv_max = XTRACT_SR_UPPER_LIMIT / 2.0; |
115 *argv_def = XTRACT_SR_DEFAULT / 2; | 115 *argv_def = XTRACT_SR_DEFAULT / 2.0; |
116 *argv_unit = XTRACT_HERTZ; | 116 *argv_unit = XTRACT_HERTZ; |
117 *(argv_min + 1) = 0.f; | 117 *(argv_min + 1) = 0.0; |
118 *(argv_max + 1) = 100.f ; | 118 *(argv_max + 1) = 100.0 ; |
119 *(argv_def + 1) = 10.f ; | 119 *(argv_def + 1) = 10.0 ; |
120 *(argv_unit + 1) = XTRACT_PERCENT; | 120 *(argv_unit + 1) = XTRACT_PERCENT; |
121 break; | 121 break; |
122 case XTRACT_HARMONIC_SPECTRUM: | 122 case XTRACT_HARMONIC_SPECTRUM: |
123 *argv_min = 0.f; | 123 *argv_min = 0.0; |
124 *argv_max = XTRACT_SR_UPPER_LIMIT / 2; | 124 *argv_max = XTRACT_SR_UPPER_LIMIT / 2.0; |
125 *argv_def = XTRACT_FUNDAMENTAL_DEFAULT; | 125 *argv_def = XTRACT_FUNDAMENTAL_DEFAULT; |
126 *argv_unit = XTRACT_HERTZ; | 126 *argv_unit = XTRACT_HERTZ; |
127 *(argv_min + 1) = 0.f; | 127 *(argv_min + 1) = 0.0; |
128 *(argv_max + 1) = 1.f ; | 128 *(argv_max + 1) = 1.0 ; |
129 *(argv_def + 1) = .1f ; | 129 *(argv_def + 1) = .1 ; |
130 *(argv_unit + 1) = XTRACT_NONE; | 130 *(argv_unit + 1) = XTRACT_NONE; |
131 break; | 131 break; |
132 case XTRACT_NOISINESS: | 132 case XTRACT_NOISINESS: |
133 case XTRACT_SKEWNESS: | 133 case XTRACT_SKEWNESS: |
134 case XTRACT_KURTOSIS: | 134 case XTRACT_KURTOSIS: |
1249 case XTRACT_F0: | 1249 case XTRACT_F0: |
1250 case XTRACT_FAILSAFE_F0: | 1250 case XTRACT_FAILSAFE_F0: |
1251 case XTRACT_HPS: | 1251 case XTRACT_HPS: |
1252 case XTRACT_ROLLOFF: | 1252 case XTRACT_ROLLOFF: |
1253 *result_unit = XTRACT_HERTZ; | 1253 *result_unit = XTRACT_HERTZ; |
1254 *result_min = 0.f; | 1254 *result_min = 0.0; |
1255 *result_max = XTRACT_SR_UPPER_LIMIT / 2; | 1255 *result_max = XTRACT_SR_UPPER_LIMIT / 2.0; |
1256 break; | 1256 break; |
1257 case XTRACT_ZCR: | 1257 case XTRACT_ZCR: |
1258 *result_unit = XTRACT_HERTZ; | 1258 *result_unit = XTRACT_HERTZ; |
1259 *result_min = 0.f; | 1259 *result_min = 0.0; |
1260 *result_max = XTRACT_ANY; | 1260 *result_max = XTRACT_ANY; |
1261 break; | 1261 break; |
1262 case XTRACT_ODD_EVEN_RATIO: | 1262 case XTRACT_ODD_EVEN_RATIO: |
1263 *result_unit = XTRACT_NONE; | 1263 *result_unit = XTRACT_NONE; |
1264 *result_min = 0.f; | 1264 *result_min = 0.0; |
1265 *result_max = 1.f; | 1265 *result_max = 1.0; |
1266 break; | 1266 break; |
1267 case XTRACT_FLATNESS_DB: | 1267 case XTRACT_FLATNESS_DB: |
1268 *result_unit = XTRACT_DBFS; | 1268 *result_unit = XTRACT_DBFS; |
1269 *result_min = XTRACT_ANY; /* FIX: check this */ | 1269 *result_min = XTRACT_ANY; /* FIX: check this */ |
1270 *result_max = XTRACT_ANY; | 1270 *result_max = XTRACT_ANY; |