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
/*
 * expander.h
 *
 *  Created on: 2014-9-23
 *      Author: Graydon
 */
 
#ifndef EXPANDER_H_
#define EXPANDER_H_
 
/*description: Create Expander handle
 *@param1: sample rate
 *@param2: sample number per frame
 *return: expander handle
 */
uvoidptr alg_expander_create(uint32_t smpl_rate, uint32_t smpl_num);
 
 
/*description: The expander handle destroy
 *@param1: The expander handle
 *return: none
 */
uvoid alg_expander_destroy(uvoidptr h);
 
 
/*description: Set the expandre handle param
 *@param1: threshold
 *@param2: radio
 *@param3: attack time
 *@param4: release time
 *return: none
 */
uvoid alg_expander_set_param(uvoidptr h, ufloat threshold, ufloat ratio, uint32_t attack, uint32_t release);
 
/*description: expander process function
 *@param1: handle
 *@param2: input data
 *@param3: output data
 *return: none
 */
uint32_t alg_expander_process(uvoidptr h, const ufloat* dataIn, ufloat* dataOut);
 
/*description: Get expander has expanded how many db.
 *@param1: handle
 *return: Get the expanded value
 */
ufloat alg_expander_get_reducedb(uvoidptr h);
#endif