refactoring

This commit is contained in:
Jean-Marc Valin 2018-12-28 01:19:56 -05:00
parent 293f76ee33
commit d75a4aec72
3 changed files with 26 additions and 29 deletions

View file

@ -3,14 +3,38 @@
#ifndef COMMON_H
#define COMMON_H
#include "stdlib.h"
#include "string.h"
#include <stdlib.h>
#include <string.h>
#include <math.h>
#define RNN_INLINE inline
#define OPUS_INLINE inline
float lpc_from_cepstrum(float *lpc, const float *cepstrum);
static RNN_INLINE float ulaw2lin(float u)
{
float s;
float scale_1 = 32768.f/255.f;
u = u - 128;
s = u >= 0 ? 1 : -1;
u = fabs(u);
return s*scale_1*(exp(u/128.*log(256))-1);
}
static RNN_INLINE int lin2ulaw(float x)
{
float u;
float scale = 255.f/32768.f;
int s = x >= 0 ? 1 : -1;
x = fabs(x);
u = (s*(128*log(1+scale*x)/log(256)));
u = 128 + u;
if (u < 0) u = 0;
if (u > 255) u = 255;
return (int)floor(.5 + u);
}
/** RNNoise wrapper for malloc(). To do your own dynamic allocation, all you need t
o do is replace this function and rnnoise_free */

View file

@ -55,13 +55,9 @@
typedef struct {
float analysis_mem[OVERLAP_SIZE];
float cepstral_mem[CEPS_MEM][NB_BANDS];
int memid;
float pitch_buf[PITCH_BUF_SIZE];
float pitch_enh_buf[PITCH_BUF_SIZE];
float last_gain;
int last_period;
float mem_hp_x[2];
float lastg[NB_BANDS];
} DenoiseState;
static int rnnoise_get_size() {

View file

@ -56,29 +56,6 @@ struct LPCNetState {
};
static float ulaw2lin(float u)
{
float s;
float scale_1 = 32768.f/255.f;
u = u - 128;
s = u >= 0 ? 1 : -1;
u = fabs(u);
return s*scale_1*(exp(u/128.*log(256))-1);
}
static int lin2ulaw(float x)
{
float u;
float scale = 255.f/32768.f;
int s = x >= 0 ? 1 : -1;
x = fabs(x);
u = (s*(128*log(1+scale*x)/log(256)));
u = 128 + u;
if (u < 0) u = 0;
if (u > 255) u = 255;
return (int)floor(.5 + u);
}
#if 0
static void print_vector(float *x, int N)
{