52 lines
1.6 KiB
C
52 lines
1.6 KiB
C
#ifndef _AUDIO_STEREO_widener_API_H_
|
||
#define _AUDIO_STEREO_widener_API_H_
|
||
#include "system/includes.h"
|
||
#include "media/audio_stream.h"
|
||
#include "effects/stereo_widen_api.h"
|
||
|
||
typedef struct _StereowidenerUdateParam {//与stewiden_parm_context关联
|
||
int widenerval; //widener: 0 to 100
|
||
int intensity; //EhanceStere: 0 to 100
|
||
} StereoWidenerUdateParam;
|
||
|
||
|
||
typedef struct _Stereowidener_TOOL_SET {
|
||
int is_bypass; // 1-> byass 0 -> no bypass
|
||
StereoWidenerUdateParam parm;
|
||
} stereo_widener_param_tool_set;
|
||
|
||
struct stereo_widener_param {
|
||
stewiden_parm_context param;
|
||
u32 samplerate;
|
||
u32 ch_num;
|
||
};
|
||
|
||
//立体声增强
|
||
struct audio_stereo_widener {
|
||
void *workbuf; //stereo_widener 运行句柄及buf
|
||
STE_WIDEN_FUNC_API *ops;
|
||
struct stereo_widener_param parm;
|
||
u8 status; //内部运行状态机
|
||
u8 update; //设置参数更新标志
|
||
};
|
||
|
||
|
||
int audio_stereo_widener_run(struct audio_stereo_widener *hdl, void *datain, void *dataout, u32 len);
|
||
struct audio_stereo_widener *audio_stereo_widener_open(struct stereo_widener_param *parm);
|
||
int audio_stereo_widener_close(struct audio_stereo_widener *hdl);
|
||
void audio_stereo_widener_set_bit_wide(struct audio_stereo_widener *hdl, af_DataType dataTypeobj);
|
||
|
||
int audio_stereo_widener_update_parm(struct audio_stereo_widener *hdl, StereoWidenerUdateParam *parm);
|
||
void audio_stereo_widener_bypass(struct audio_stereo_widener *hdl, u8 bypass);
|
||
|
||
#ifndef RUN_NORMAL
|
||
#define RUN_NORMAL 0
|
||
#endif
|
||
|
||
#ifndef RUN_BYPASS
|
||
#define RUN_BYPASS 1
|
||
#endif
|
||
|
||
#endif
|
||
|