32 lines
906 B
C
32 lines
906 B
C
#pragma once
|
|
|
|
#include <stdbool.h>
|
|
#include <stddef.h>
|
|
#include <stdint.h>
|
|
|
|
#include "esp_err.h"
|
|
|
|
typedef struct {
|
|
uint32_t sample_rate;
|
|
uint8_t channels;
|
|
uint8_t bits_per_sample;
|
|
int output_volume;
|
|
float input_gain_db;
|
|
} voice_audio_open_config_t;
|
|
|
|
esp_err_t voice_audio_open(const voice_audio_open_config_t *cfg, char *err, size_t err_len);
|
|
void voice_audio_close(void);
|
|
|
|
bool voice_audio_is_open(void);
|
|
|
|
esp_err_t voice_audio_read_pcm(int16_t *pcm,
|
|
size_t samples,
|
|
uint32_t timeout_ms,
|
|
char *err,
|
|
size_t err_len);
|
|
esp_err_t voice_audio_write_pcm(const int16_t *pcm,
|
|
size_t samples,
|
|
uint32_t timeout_ms,
|
|
char *err,
|
|
size_t err_len);
|