72 lines
2.2 KiB
C
72 lines
2.2 KiB
C
/***************************************************************************
|
|
*
|
|
* Copyright 2015-2019 BES.
|
|
* All rights reserved. All unpublished rights reserved.
|
|
*
|
|
* No part of this work may be used or reproduced in any form or by any
|
|
* means, or stored in a database or retrieval system, without prior written
|
|
* permission of BES.
|
|
*
|
|
* Use of this work is governed by a license granted by BES.
|
|
* This work contains confidential and proprietary information of
|
|
* BES. which is protected by copyright, trade secret,
|
|
* trademark and other intellectual property rights.
|
|
*
|
|
****************************************************************************/
|
|
#ifndef __APP_ANC_H__
|
|
#define __APP_ANC_H__
|
|
|
|
#include "hal_aud.h"
|
|
#include "app_key.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
void app_anc_set_playback_samplerate(enum AUD_SAMPRATE_T sample_rate);
|
|
void app_anc_init(enum AUD_IO_PATH_T input_path, enum AUD_SAMPRATE_T playback_rate, enum AUD_SAMPRATE_T capture_rate);
|
|
void app_anc_close(void);
|
|
void app_anc_enable(void);
|
|
void app_anc_disable(void);
|
|
bool anc_enabled(void);
|
|
void test_anc(void);
|
|
void app_anc_resample(uint32_t res_ratio, uint32_t *in, uint32_t *out, uint32_t samples);
|
|
#ifdef __BT_ANC_KEY__
|
|
void app_anc_key(APP_KEY_STATUS *status, void *param);
|
|
#endif
|
|
int app_anc_open_module(void);
|
|
int app_anc_close_module(void);
|
|
enum AUD_SAMPRATE_T app_anc_get_play_rate(void);
|
|
bool app_anc_work_status(void);
|
|
void app_anc_send_howl_evt(uint32_t howl);
|
|
uint32_t app_anc_get_anc_status(void);
|
|
bool app_pwr_key_monitor_get_val(void);
|
|
bool app_anc_switch_get_val(void);
|
|
void app_anc_ios_init(void);
|
|
void app_anc_set_init_done(void);
|
|
bool app_anc_set_reboot(void);
|
|
void app_anc_status_post(uint8_t status);
|
|
bool app_anc_is_on(void);
|
|
uint32_t app_anc_get_sample_rate(void);
|
|
void app_anc_set_coef_idx(uint8_t idx);
|
|
uint8_t app_anc_get_coef_idx(void);
|
|
|
|
#if defined(IBRT)
|
|
void app_anc_cmd_receive_process(uint8_t *buf, uint16_t len);
|
|
void app_anc_set_peer_coef_idx(uint8_t idx);
|
|
uint8_t app_anc_get_peer_coef_idx(void);
|
|
void app_anc_set_status_sync_flag(bool status);
|
|
bool app_anc_get_status_sync_flag(void);
|
|
#endif
|
|
|
|
#ifndef __BT_ANC_KEY__
|
|
int app_anc_start(void);
|
|
int app_anc_switch_coef(uint8_t index);
|
|
int app_anc_stop(void);
|
|
#endif
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|