73 lines
2.2 KiB
C
73 lines
2.2 KiB
C
#ifndef _AUDIO_ENC_H_
|
||
#define _AUDIO_ENC_H_
|
||
|
||
#include "generic/typedef.h"
|
||
#include "media/includes.h"
|
||
|
||
#ifndef CONFIG_LITE_AUDIO
|
||
#include "mic_effect.h"
|
||
#include "loud_speaker.h"
|
||
#endif/*CONFIG_LITE_AUDIO*/
|
||
|
||
|
||
struct record_file_fmt {
|
||
u8 gain;//增益配置
|
||
u8 channel;//声道数,1:单声道, 2:双声道
|
||
u16 sample_rate;//采样率
|
||
u32 bit_rate;//码率
|
||
u32 coding_type;//编码格式
|
||
char *dev;//录音设备盘符
|
||
char *folder;//录音文件夹
|
||
char *filename;//录音文件名
|
||
u32 cut_head_time;//录音文件去头时间,单位ms
|
||
u32 cut_tail_time;//录音文件去尾时间,单位ms
|
||
u32 limit_size;//录音文件大小最小限制, 单位byte
|
||
u8 source;//录音输入源
|
||
void (*err_callback)(void);
|
||
};
|
||
|
||
|
||
int esco_enc_open(u32 coding_type, u8 frame_len);
|
||
void esco_enc_close();
|
||
|
||
enum enc_source {
|
||
ENCODE_SOURCE_MIX = 0x0,
|
||
ENCODE_SOURCE_MIC,
|
||
ENCODE_SOURCE_LINE0_LR,
|
||
ENCODE_SOURCE_LINE1_LR,
|
||
ENCODE_SOURCE_LINE2_LR,
|
||
ENCODE_SOURCE_USER,
|
||
};
|
||
|
||
extern struct audio_encoder_task *encode_task;
|
||
|
||
void esco_enc_resume(void);
|
||
u32 recorder_get_encoding_time();
|
||
int recorder_is_encoding(void);
|
||
void recorder_device_offline_check(char *logo);
|
||
void recorder_encode_stop(void);
|
||
void recorder_pcm2file_write_pcm_ex(s16 *data, int len);
|
||
int mixer_recorder_encoding(void);
|
||
int mixer_recorder_start(void);
|
||
void mixer_recorder_stop(void);
|
||
void recorder_encode_pp();
|
||
int recorder_encode_start(struct record_file_fmt *f);
|
||
int recorder_userdata_to_enc(s16 *data, int len);
|
||
|
||
int audio_encoder_task_open(void);
|
||
void audio_encoder_task_close(void);
|
||
|
||
void audio_adc_set_irq_point_unit(u16 point_unit);
|
||
int audio_mic_open(struct adc_mic_ch *mic, u16 sample_rate, u8 gain);
|
||
void audio_mic_add_output(struct audio_adc_output_hdl *output);
|
||
void audio_mic_start(struct adc_mic_ch *mic);
|
||
void audio_mic_close(struct adc_mic_ch *mic, struct audio_adc_output_hdl *output);
|
||
void audio_mic_set_gain(struct adc_mic_ch *mic, u8 gain);
|
||
//////////////////////////////////////////////////////////////////
|
||
#include "audio_enc_file.h"
|
||
#include "audio_enc_recoder.h"
|
||
#include "audio_recorder_mix.h"
|
||
|
||
#define REVERB_LADC_IRQ_POINTS (256)//(160)//(176)//(184)//(192)//(224)//(256)
|
||
#endif/*_AUDIO_ENC_H_*/
|