KT24-1110_65E-HA-651B/include_lib/media/howling_pitchshifter_api.h

64 lines
1.2 KiB
C
Raw Normal View History

2024-11-10 10:44:17 +00:00
#ifndef HOWLING_pitchshifer_api_h__
#define HOWLING_pitchshifer_api_h__
#ifndef u8
#define u8 unsigned char
#endif
#ifndef u16
#define u16 unsigned short
#endif
#ifndef s16
#define s16 short
#endif
#ifndef u32
#define u32 unsigned int
#endif
#ifndef s32
#define s32 int
#endif
#ifndef s16
#define s16 signed short
#endif
/*#define EFFECT_OLD_RECORD 0x01
#define EFFECT_MOYIN 0x0*/
//#define EFFECT_ROBORT_FLAG 0X04
enum {
EFFECT_HOWLING_PS = 0x01, //1.5《=》12 ms
EFFECT_HOWLING_HE = 0x02,
EFFECT_HOWLING_FS = 0x04,
};
enum {
PLATFORM_BR30 = 0,
PLATFORM_BR36 = 1
};
typedef struct HOWLING_PITCHSHIFT_PARM_ {
s16 ps_parm;
s16 fe_parm;
u32 effect_v;
} HOWLING_PITCHSHIFT_PARM;
typedef struct _HOWLING_PITCHSHIFT_FUNC_API_ {
u32(*need_buf)(int flag);
void (*open)(void *ptr, u32 sr, HOWLING_PITCHSHIFT_PARM *pitchshift_obj); //中途改变参数可以调init
void (*run)(void *ptr, short *indata, short *outdata, int len); //len是多少个byte
} HOWLING_PITCHSHIFT_FUNC_API;
extern HOWLING_PITCHSHIFT_FUNC_API *get_howling_ps_func_api();
#endif // reverb_api_h__