This repository has been archived on 2017-07-22. You can view files and clone it, but cannot push or open issues/pull-requests.
jlsampler/sampleinfo.h

35 lines
983 B
C
Raw Permalink Normal View History

2017-07-22 09:04:10 +00:00
#ifndef sampleinfo_HEADER_
#define sampleinfo_HEADER_
#include <stdint.h>
typedef struct {
char *name; // The sample name - used when opening files.
uint8_t numLayers; // Number velocity layers.
uint8_t numVariations[MAX_LAYERS]; // Number of variations per layer.
uint8_t rrIdx[MAX_LAYERS]; // Round-robin index per layer.
Sample *sample[MAX_LAYERS][MAX_VARS]; // Samples.
uint8_t numCut; // Number of samples cut by this one.
uint8_t cutInds[MAX_SAMPLES]; // Indices of samples cut by this one.
// Applied at load time.
double rms_time; // In ms.
double crop_thresh; // 0-1
double playback_speed; // 1 => no change.
double gain;
double pan;
double gammaAmp;
double gammaLayer;
double tauOff; // If non-zero, fade out time-constant when pad release.
double tauCut; // Fade out time constant when sample is cut.
double tauFadeIn;
} SampleInfo;
#endif