doubao_chat/include_lib/media/drc/limiter_api.h

19 lines
820 B
C

#ifndef LIMITER_API_H
#define LIMITER_API_H
#ifndef WIN32
#define AT_LIMITER(x) __attribute((section(#x)))
#define AT_LIMITER_CODE AT_LIMITER(.limiter_code)
#define AT_LIMITER_CONST AT_LIMITER(.limiter_const)
#define AT_LIMITER_SPARSE_CODE AT_LIMITER(.limiter_sparse_code)
#define AT_LIMITER_SPARSE_CONST AT_LIMITER(.limiter_sparse_const)
#endif
int need_limiter_buf();
void limiter_init(void *work_buf, int *attackTime, int *releaseTime, int *threshold, int sample_rate, int channel);
void limiter_update_para(void *work_buf, int *attackTime, int *releaseTime, int *threshold, int sample_rate, int channel);
int limiter_run_16(void *work_buf, short *in_buf, short *out_buf, int per_channel_npoint);
int limiter_run_32(void *work_buf, int *in_buf, int *out_buf, int per_channel_npoint);
#endif // !LIMITER_API_H