Files
cmp/cmp.h
T
jens 593fc92244 Initial import
git-svn-id: http://moon:8086/svn/software/trunk/libsrc/cmp@1 b431acfa-c32f-4a4a-93f1-934dc6c82436
2014-07-19 07:44:42 +00:00

48 lines
1.1 KiB
C
Executable File

// --------------------------------------------------------------
// main.cpp
// Test Application
// 08.03.2003
// --------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <math.h>
#include "radio.h"
#define EPSILON (20*log10(1 << 16))
// --------------------------------------------------------------
typedef struct _scmp_curve_t
{
double kth, kc;
} cmp_curve_t;
typedef struct _scmp_t
{
long rms_size;
long dly_size;
long fs;
rbuf_t dly;
sl_var_t var;
double vca_gain_target, vca_gain, vca_gain_db;
double det_gain, det_gain_db;
double det_ar, det_br;
double det_af, det_bf;
double vca_ar, vca_br;
double vca_af, vca_bf;
int do_compress;
int peak_mode;
} cmp_t;
#ifdef __cplusplus
extern "C" {
#endif
void cmp_init(cmp_t *pObj, long fs, double rms_sec, double lookahead_sec, double det_attack_sec, double det_release_sec, double vca_attack_sec, double vca_release_sec);
double cmp_process(cmp_t *pObj, double xi, cmp_curve_t *pCurve, int curve_len, int mode);
#ifdef __cplusplus
}
#endif // __cplusplus