comparison src/descriptors.c @ 123:efb1c1ae2ba8

- reimplemented xtract_spectral_variance() xtract_spectral_skewness() and xtract_spectral_kurtosis() using correct maths - removed xtract_spectral_average_deviation()
author Jamie Bullock <jamie@postlude.co.uk>
date Wed, 30 Mar 2011 10:51:39 +0000
parents 6c5ece9cba3a
children 67f6b6e63d45
comparison
equal deleted inserted replaced
122:571c53e87dbd 123:efb1c1ae2ba8
60 case XTRACT_SPECTRAL_VARIANCE: 60 case XTRACT_SPECTRAL_VARIANCE:
61 case XTRACT_STANDARD_DEVIATION: 61 case XTRACT_STANDARD_DEVIATION:
62 case XTRACT_DIFFERENCE_VECTOR: 62 case XTRACT_DIFFERENCE_VECTOR:
63 case XTRACT_AVERAGE_DEVIATION: 63 case XTRACT_AVERAGE_DEVIATION:
64 case XTRACT_SPECTRAL_STANDARD_DEVIATION: 64 case XTRACT_SPECTRAL_STANDARD_DEVIATION:
65 case XTRACT_SPECTRAL_AVERAGE_DEVIATION: 65 /* case XTRACT_SPECTRAL_AVERAGE_DEVIATION: */
66 case XTRACT_LOWEST_VALUE: 66 case XTRACT_LOWEST_VALUE:
67 case XTRACT_TONALITY: 67 case XTRACT_TONALITY:
68 case XTRACT_MFCC: 68 case XTRACT_MFCC:
69 case XTRACT_LPC: 69 case XTRACT_LPC:
70 case XTRACT_LPCC: 70 case XTRACT_LPCC:
204 *argv_donor = XTRACT_MEAN; 204 *argv_donor = XTRACT_MEAN;
205 break; 205 break;
206 case XTRACT_SPECTRAL_STANDARD_DEVIATION: 206 case XTRACT_SPECTRAL_STANDARD_DEVIATION:
207 *argv_donor = XTRACT_SPECTRAL_VARIANCE; 207 *argv_donor = XTRACT_SPECTRAL_VARIANCE;
208 break; 208 break;
209 case XTRACT_SPECTRAL_AVERAGE_DEVIATION: 209 /* case XTRACT_SPECTRAL_AVERAGE_DEVIATION:
210 *argv_donor = XTRACT_SPECTRAL_MEAN; 210 *argv_donor = XTRACT_SPECTRAL_MEAN;
211 break; 211 break; */
212 case XTRACT_SPECTRAL_INHARMONICITY: 212 case XTRACT_SPECTRAL_INHARMONICITY:
213 *argv_donor = XTRACT_FAILSAFE_F0; 213 *argv_donor = XTRACT_FAILSAFE_F0;
214 break; 214 break;
215 case XTRACT_FLATNESS_DB: 215 case XTRACT_FLATNESS_DB:
216 *argv_donor = XTRACT_FLATNESS; 216 *argv_donor = XTRACT_FLATNESS;
298 *data_format = XTRACT_ARBITRARY_SERIES; 298 *data_format = XTRACT_ARBITRARY_SERIES;
299 break; 299 break;
300 case XTRACT_SPECTRAL_MEAN: 300 case XTRACT_SPECTRAL_MEAN:
301 case XTRACT_SPECTRAL_VARIANCE: 301 case XTRACT_SPECTRAL_VARIANCE:
302 case XTRACT_SPECTRAL_STANDARD_DEVIATION: 302 case XTRACT_SPECTRAL_STANDARD_DEVIATION:
303 case XTRACT_SPECTRAL_AVERAGE_DEVIATION: 303 /* case XTRACT_SPECTRAL_AVERAGE_DEVIATION: */
304 case XTRACT_SPECTRAL_SKEWNESS: 304 case XTRACT_SPECTRAL_SKEWNESS:
305 case XTRACT_SPECTRAL_KURTOSIS: 305 case XTRACT_SPECTRAL_KURTOSIS:
306 case XTRACT_SPECTRAL_CENTROID: 306 case XTRACT_SPECTRAL_CENTROID:
307 case XTRACT_SPECTRAL_SLOPE: 307 case XTRACT_SPECTRAL_SLOPE:
308 *data_format = XTRACT_SPECTRAL; 308 *data_format = XTRACT_SPECTRAL;
430 *data_unit = XTRACT_ANY; 430 *data_unit = XTRACT_ANY;
431 break; 431 break;
432 case XTRACT_SPECTRAL_MEAN: 432 case XTRACT_SPECTRAL_MEAN:
433 case XTRACT_SPECTRAL_VARIANCE: 433 case XTRACT_SPECTRAL_VARIANCE:
434 case XTRACT_SPECTRAL_STANDARD_DEVIATION: 434 case XTRACT_SPECTRAL_STANDARD_DEVIATION:
435 case XTRACT_SPECTRAL_AVERAGE_DEVIATION: 435 /* case XTRACT_SPECTRAL_AVERAGE_DEVIATION: */
436 case XTRACT_SPECTRAL_SKEWNESS: 436 case XTRACT_SPECTRAL_SKEWNESS:
437 case XTRACT_SPECTRAL_KURTOSIS: 437 case XTRACT_SPECTRAL_KURTOSIS:
438 case XTRACT_SPECTRAL_CENTROID: 438 case XTRACT_SPECTRAL_CENTROID:
439 case XTRACT_SPECTRAL_SLOPE: 439 case XTRACT_SPECTRAL_SLOPE:
440 case XTRACT_HARMONIC_SPECTRUM: 440 case XTRACT_HARMONIC_SPECTRUM:
528 "Extract the standard deviation of an input spectrum"); 528 "Extract the standard deviation of an input spectrum");
529 strcpy(p_desc, 529 strcpy(p_desc,
530 "Extract the standard deviation of an audio spectrum"); 530 "Extract the standard deviation of an audio spectrum");
531 strcpy(author, ""); 531 strcpy(author, "");
532 break; 532 break;
533 case XTRACT_SPECTRAL_AVERAGE_DEVIATION: 533 /* case XTRACT_SPECTRAL_AVERAGE_DEVIATION:
534 strcpy(name, "spectral_average_deviation"); 534 strcpy(name, "spectral_average_deviation");
535 strcpy(p_name, "Spectral Average Deviation"); 535 strcpy(p_name, "Spectral Average Deviation");
536 strcpy(desc, 536 strcpy(desc,
537 "Extract the average deviation of an input spectrum"); 537 "Extract the average deviation of an input spectrum");
538 strcpy(p_desc, 538 strcpy(p_desc,
539 "Extract the average deviation of an audio spectrum"); 539 "Extract the average deviation of an audio spectrum");
540 strcpy(author, ""); 540 strcpy(author, "");
541 break; 541 break;
542 */
542 case XTRACT_ROLLOFF: 543 case XTRACT_ROLLOFF:
543 strcpy(name, "rolloff"); 544 strcpy(name, "rolloff");
544 strcpy(p_name, "Spectral Rolloff"); 545 strcpy(p_name, "Spectral Rolloff");
545 strcpy(desc, 546 strcpy(desc,
546 "Extract the rolloff point of a spectrum"); 547 "Extract the rolloff point of a spectrum");
961 case XTRACT_VARIANCE: 962 case XTRACT_VARIANCE:
962 case XTRACT_STANDARD_DEVIATION: 963 case XTRACT_STANDARD_DEVIATION:
963 case XTRACT_AVERAGE_DEVIATION: 964 case XTRACT_AVERAGE_DEVIATION:
964 case XTRACT_SPECTRAL_VARIANCE: 965 case XTRACT_SPECTRAL_VARIANCE:
965 case XTRACT_SPECTRAL_STANDARD_DEVIATION: 966 case XTRACT_SPECTRAL_STANDARD_DEVIATION:
966 case XTRACT_SPECTRAL_AVERAGE_DEVIATION: 967 /* case XTRACT_SPECTRAL_AVERAGE_DEVIATION: */
967 case XTRACT_SPECTRAL_INHARMONICITY: 968 case XTRACT_SPECTRAL_INHARMONICITY:
968 case XTRACT_LOWEST_VALUE: 969 case XTRACT_LOWEST_VALUE:
969 case XTRACT_F0: 970 case XTRACT_F0:
970 case XTRACT_FAILSAFE_F0: 971 case XTRACT_FAILSAFE_F0:
971 case XTRACT_FLATNESS_DB: 972 case XTRACT_FLATNESS_DB:
1057 case XTRACT_SKEWNESS: 1058 case XTRACT_SKEWNESS:
1058 case XTRACT_KURTOSIS: 1059 case XTRACT_KURTOSIS:
1059 case XTRACT_SPECTRAL_MEAN: 1060 case XTRACT_SPECTRAL_MEAN:
1060 case XTRACT_SPECTRAL_VARIANCE: 1061 case XTRACT_SPECTRAL_VARIANCE:
1061 case XTRACT_SPECTRAL_STANDARD_DEVIATION: 1062 case XTRACT_SPECTRAL_STANDARD_DEVIATION:
1062 case XTRACT_SPECTRAL_AVERAGE_DEVIATION: 1063 /* case XTRACT_SPECTRAL_AVERAGE_DEVIATION: */
1063 case XTRACT_SPECTRAL_SKEWNESS: 1064 case XTRACT_SPECTRAL_SKEWNESS:
1064 case XTRACT_SPECTRAL_KURTOSIS: 1065 case XTRACT_SPECTRAL_KURTOSIS:
1065 case XTRACT_SPECTRAL_CENTROID: 1066 case XTRACT_SPECTRAL_CENTROID:
1066 case XTRACT_IRREGULARITY_K: 1067 case XTRACT_IRREGULARITY_K:
1067 case XTRACT_IRREGULARITY_J: 1068 case XTRACT_IRREGULARITY_J:
1133 case XTRACT_SKEWNESS: 1134 case XTRACT_SKEWNESS:
1134 case XTRACT_KURTOSIS: 1135 case XTRACT_KURTOSIS:
1135 case XTRACT_SPECTRAL_MEAN: 1136 case XTRACT_SPECTRAL_MEAN:
1136 case XTRACT_SPECTRAL_VARIANCE: 1137 case XTRACT_SPECTRAL_VARIANCE:
1137 case XTRACT_SPECTRAL_STANDARD_DEVIATION: 1138 case XTRACT_SPECTRAL_STANDARD_DEVIATION:
1138 case XTRACT_SPECTRAL_AVERAGE_DEVIATION: 1139 /* case XTRACT_SPECTRAL_AVERAGE_DEVIATION: */
1139 case XTRACT_SPECTRAL_SKEWNESS: 1140 case XTRACT_SPECTRAL_SKEWNESS:
1140 case XTRACT_SPECTRAL_KURTOSIS: 1141 case XTRACT_SPECTRAL_KURTOSIS:
1141 case XTRACT_SPECTRAL_CENTROID: 1142 case XTRACT_SPECTRAL_CENTROID:
1142 case XTRACT_IRREGULARITY_K: 1143 case XTRACT_IRREGULARITY_K:
1143 case XTRACT_IRREGULARITY_J: 1144 case XTRACT_IRREGULARITY_J:
1225 *result_max = XTRACT_ANY; 1226 *result_max = XTRACT_ANY;
1226 break; 1227 break;
1227 case XTRACT_SPECTRAL_MEAN: 1228 case XTRACT_SPECTRAL_MEAN:
1228 case XTRACT_SPECTRAL_VARIANCE: 1229 case XTRACT_SPECTRAL_VARIANCE:
1229 case XTRACT_SPECTRAL_STANDARD_DEVIATION: 1230 case XTRACT_SPECTRAL_STANDARD_DEVIATION:
1230 case XTRACT_SPECTRAL_AVERAGE_DEVIATION: 1231 /* case XTRACT_SPECTRAL_AVERAGE_DEVIATION: */
1231 case XTRACT_SPECTRAL_CENTROID: 1232 case XTRACT_SPECTRAL_CENTROID:
1232 case XTRACT_SPREAD: 1233 case XTRACT_SPREAD:
1233 case XTRACT_F0: 1234 case XTRACT_F0:
1234 case XTRACT_FAILSAFE_F0: 1235 case XTRACT_FAILSAFE_F0:
1235 case XTRACT_HPS: 1236 case XTRACT_HPS: