Files
AC707N/SDK/audio/common/audio_event_handler.c
2025-12-03 11:12:34 +08:00

41 lines
1.3 KiB
C

/*
****************************************************************
* AUDIO EVENT HANDLER
* File : audio_event_handlr.c
* Notes : 处理AUDIO_LIB 关联APP的事件
*
****************************************************************
*/
#ifdef SUPPORT_MS_EXTENSIONS
#pragma bss_seg(".audio_event_handler.data.bss")
#pragma data_seg(".audio_event_handler.data")
#pragma const_seg(".audio_event_handler.text.const")
#pragma code_seg(".audio_event_handler.text")
#endif
#include "audio_event_manager.h"
#include "generic/typedef.h"
#include "syscfg_id.h"
#include "user_cfg_id.h"
#include "power/power_manage.h"
int audio_event_notify(enum audio_lib_event event, void *priv, int arg)
{
switch (event) {
case AUDIO_LIB_EVENT_DAC_LOWPOWER:
/* printf(">>> dac off check %d %d!\n", low_power_sys_not_idle_cnt(), lower_power_bt_group_query()); */
//当系统剩余1个没有进入低功耗,且蓝牙已经进入低功耗,则可以关闭DAC
return ((low_power_sys_not_idle_cnt() == 1) && \
(lower_power_bt_group_query() > 0));
case AUDIO_LIB_EVENT_VBG_TRIM_WRITE:
return syscfg_write(CFG_VBG_TRIM, priv, arg);
case AUDIO_LIB_EVENT_VBG_TRIM_READ:
return syscfg_read(CFG_VBG_TRIM, priv, arg);
default:
break;
}
return 0;
}