qipp
2025-11-07 744722688187eb4991c72464e2bb5e06b244fee7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#ifndef __DUCKER_H__
#define __DUCKER_H__
#ifdef __cplusplus
extern "C" {
#endif
 
void* alg_ducker_create(int smpl_rate, int smpl_num);
 
void alg_ducker_destroy(void* handle);
 
void
alg_ducker_set_parameters
(
    void* handle
    , float threshold
    , float depth
    , int attack_time
    , int release_time
    , int hold_time
    , int side_mute
    , float side_gain
);
 
void alg_ducker_set_threshold(void* handle, float threshold);
 
void alg_ducker_set_depth(void* handle, float depth);
 
void alg_ducker_set_attack_time(void* handle, int attack_time);
 
void alg_ducker_set_release_time(void* handle, int release_time);
 
void alg_ducker_set_hold_time(void* handle, int hold_time);
 
void alg_ducker_set_side_mute(void* handle, int mute);
 
void alg_ducker_set_side_gain(void* handle, float gain);
 
float alg_ducker_get_atten(void* handle);
/**
* ducker´¦Àíº¯Êý
* @param handle [in] Pointer to a structure which has information about the DDP packet buffer
* @param data_in [in] Starting point in the packet buffer to read this message
* @param side_in [in] Pointer to the sequence number of this message
* @param data_out [out] Pointer to the status of this message
* @return 0 
*/
int alg_ducker_process(void* handle, float * data_in, float* side_in, float* data_out);
 
#ifdef __cplusplus
}
#endif
#endif