LibXtract 0.6.2
Data Structures | Macros | Typedefs | Enumerations | Functions
libxtract.h File Reference

main header file and API definition More...

#include "xtract_scalar.h"
#include "xtract_vector.h"
#include "xtract_delta.h"
#include "xtract_types.h"
#include "xtract_macros.h"
#include "xtract_helper.h"
Include dependency graph for libxtract.h:

Go to the source code of this file.

Data Structures

struct  _xtract_function_descriptor
 Data structure containing useful information about functions provided by LibXtract. More...
 
struct  xtract_mel_filter_
 An array of pointers to functions that perform the extraction. More...
 

Macros

#define XTRACT_FEATURES   60
 

Typedefs

typedef enum type_ xtract_type_t
 Enumeration of data types.
 
typedef enum unit_ xtract_unit_t
 Enumeration of units.
 
typedef enum xtract_vector_ xtract_vector_t
 Enumeration of vector format types.
 
typedef struct _xtract_function_descriptor xtract_function_descriptor_t
 Data structure containing useful information about functions provided by LibXtract.
 
typedef struct xtract_mel_filter_ xtract_mel_filter
 An array of pointers to functions that perform the extraction.
 

Enumerations

enum  xtract_features_ {
  XTRACT_MEAN , XTRACT_VARIANCE , XTRACT_STANDARD_DEVIATION , XTRACT_AVERAGE_DEVIATION ,
  XTRACT_SKEWNESS , XTRACT_KURTOSIS , XTRACT_SPECTRAL_MEAN , XTRACT_SPECTRAL_VARIANCE ,
  XTRACT_SPECTRAL_STANDARD_DEVIATION , XTRACT_SPECTRAL_AVERAGE_DEVIATION , XTRACT_SPECTRAL_SKEWNESS , XTRACT_SPECTRAL_KURTOSIS ,
  XTRACT_SPECTRAL_CENTROID , XTRACT_IRREGULARITY_K , XTRACT_IRREGULARITY_J , XTRACT_TRISTIMULUS_1 ,
  XTRACT_TRISTIMULUS_2 , XTRACT_TRISTIMULUS_3 , XTRACT_SMOOTHNESS , XTRACT_SPREAD ,
  XTRACT_ZCR , XTRACT_ROLLOFF , XTRACT_LOUDNESS , XTRACT_FLATNESS ,
  XTRACT_FLATNESS_DB , XTRACT_TONALITY , XTRACT_CREST , XTRACT_NOISINESS ,
  XTRACT_RMS_AMPLITUDE , XTRACT_SPECTRAL_INHARMONICITY , XTRACT_POWER , XTRACT_ODD_EVEN_RATIO ,
  XTRACT_SHARPNESS , XTRACT_SPECTRAL_SLOPE , XTRACT_LOWEST_VALUE , XTRACT_HIGHEST_VALUE ,
  XTRACT_SUM , XTRACT_NONZERO_COUNT , XTRACT_HPS , XTRACT_F0 ,
  XTRACT_FAILSAFE_F0 , XTRACT_LNORM , XTRACT_FLUX , XTRACT_ATTACK_TIME ,
  XTRACT_DECAY_TIME , XTRACT_DIFFERENCE_VECTOR , XTRACT_AUTOCORRELATION , XTRACT_AMDF ,
  XTRACT_ASDF , XTRACT_BARK_COEFFICIENTS , XTRACT_PEAK_SPECTRUM , XTRACT_SPECTRUM ,
  XTRACT_AUTOCORRELATION_FFT , XTRACT_MFCC , XTRACT_DCT , XTRACT_HARMONIC_SPECTRUM ,
  XTRACT_LPC , XTRACT_LPCC , XTRACT_SUBBANDS , XTRACT_WINDOWED
}
 Enumeration of features, elements are used as indixes to an array of pointers to feature extracton functions.
 
enum  xtract_feature_init_ { XTRACT_INIT_MFCC = 100 , XTRACT_INIT_BARK , XTRACT_INIT_WINDOWED }
 Enumeration of feature initialisation functions.
 
enum  xtract_feature_types_ { XTRACT_SCALAR , XTRACT_VECTOR , XTRACT_DELTA }
 Enumeration of feature types.
 
enum  xtract_mfcc_types_ { XTRACT_EQUAL_GAIN , XTRACT_EQUAL_AREA }
 Enumeration of mfcc types.
 
enum  xtract_lnorm_filter_types_ { XTRACT_NO_LNORM_FILTER , XTRACT_POSITIVE_SLOPE , XTRACT_NEGATIVE_SLOPE }
 
enum  xtract_return_codes_ {
  XTRACT_SUCCESS , XTRACT_MALLOC_FAILED , XTRACT_BAD_ARGV , XTRACT_BAD_VECTOR_SIZE ,
  XTRACT_DENORMAL_FOUND , XTRACT_NO_RESULT , XTRACT_FEATURE_NOT_IMPLEMENTED
}
 Enumeration of return codes.
 
enum  xtract_spectrum_ { XTRACT_MAGNITUDE_SPECTRUM , XTRACT_LOG_MAGNITUDE_SPECTRUM , XTRACT_POWER_SPECTRUM , XTRACT_LOG_POWER_SPECTRUM }
 Enumeration of spectrum types.
 
enum  xtract_subband_scales_ { XTRACT_OCTAVE_SUBBANDS , XTRACT_LINEAR_SUBBANDS }
 Subband scales.
 
enum  type_ { XTRACT_FLOAT , XTRACT_FLOATARRAY , XTRACT_INT , XTRACT_MEL_FILTER }
 Enumeration of data types.
 
enum  unit_ {
  XTRACT_HERTZ = 2 , XTRACT_ANY_AMPLITUDE_HERTZ , XTRACT_DBFS , XTRACT_DBFS_HERTZ ,
  XTRACT_PERCENT , XTRACT_BINS , XTRACT_SONE
}
 Enumeration of units.
 
enum  xtract_bool_t { XTRACT_FALSE , XTRACT_TRUE }
 Boolean.
 
enum  xtract_window_types_ {
  XTRACT_GAUSS , XTRACT_HAMMING , XTRACT_HANN , XTRACT_BARTLETT ,
  XTRACT_TRIANGULAR , XTRACT_BARTLETT_HANN , XTRACT_BLACKMAN , XTRACT_KAISER ,
  XTRACT_BLACKMAN_HARRIS
}
 Window types.
 
enum  xtract_vector_ {
  XTRACT_SPECTRAL , XTRACT_SPECTRAL_MAGNITUDES , XTRACT_SPECTRAL_PEAKS , XTRACT_SPECTRAL_PEAKS_MAGNITUDES ,
  XTRACT_SPECTRAL_PEAKS_FREQUENCIES , XTRACT_SPECTRAL_HARMONICS , XTRACT_SPECTRAL_HARMONICS_MAGNITUDES , XTRACT_SPECTRAL_HARMONICS_FREQUENCIES ,
  XTRACT_AUTOCORRELATION_COEFFS , XTRACT_ARBITRARY_SERIES , XTRACT_AUDIO_SAMPLES , XTRACT_MEL_COEFFS ,
  XTRACT_LPC_COEFFS , XTRACT_LPCC_COEFFS , XTRACT_BARK_COEFFS , XTRACT_SUBFRAMES ,
  XTRACT_NO_DATA
}
 Enumeration of vector format types.
 

Functions

int xtract_init_mfcc (int N, float nyquist, int style, float freq_min, float freq_max, int freq_bands, float **fft_tables)
 A function to initialise a mel filter bank.
 
int xtract_init_bark (int N, float sr, int *band_limits)
 A function to initialise bark filter bounds.
 
int xtract_init_fft (int N, int feature_name)
 An initialisation function for functions using FFT.
 
void xtract_free_fft (void)
 Free memory used for fft plans.
 
float * xtract_init_window (const int N, const int type)
 Make a window of a given type and return a pointer to it.
 
void xtract_free_window (float *window)
 Free a window as allocated by xtract_make_window()
 
xtract_function_descriptor_txtract_make_descriptors ()
 
int xtract_free_descriptors (xtract_function_descriptor_t *fd)
 

Detailed Description

main header file and API definition