47static uint8_t a_wav_write_wav_header(
wav_handle_t *handle)
159 handle->
debug_print(
"wav: iis_set_freq is null.\n");
183 handle->
debug_print(
"wav: audio_deinit is null.\n");
195 handle->
debug_print(
"wav: audio_write is null.\n");
280 ((uint32_t)(buf[5]) << 8) |
281 ((uint32_t)(buf[6]) << 16) |
282 ((uint32_t)(buf[7]) << 24);
292 ((uint32_t)(buf[17]) << 8) |
293 ((uint32_t)(buf[18]) << 16) |
294 ((uint32_t)(buf[19]) << 24);
296 ((uint16_t)(buf[21]) << 8);
298 ((uint16_t)(buf[23]) << 8);
300 ((uint32_t)(buf[25]) << 8) |
301 ((uint32_t)(buf[26]) << 16) |
302 ((uint32_t)(buf[27]) << 24);
304 ((uint32_t)(buf[29]) << 8) |
305 ((uint32_t)(buf[30]) << 16) |
306 ((uint32_t)(buf[31]) << 24);
308 ((uint16_t)(buf[33]) << 8);
310 ((uint16_t)(buf[35]) << 8);
318 ((uint32_t)(buf[43]) << 8) |
319 ((uint32_t)(buf[44]) << 16) |
320 ((uint32_t)(buf[45]) << 24);
330 ((uint32_t)(buf[41]) << 8) |
331 ((uint32_t)(buf[42]) << 16) |
332 ((uint32_t)(buf[43]) << 24);
392 uint32_t mode, uint32_t polarity,
393 uint32_t format, uint32_t enable, uint32_t freq)
410 if (handle->
iis_init(standard, mode, polarity, format, enable, freq) != 0)
528 if (a_wav_write_wav_header(handle) != 0)
530 handle->
debug_print(
"wav: write header failed.\n");
636 if (a_wav_write_wav_header(handle) != 0)
638 handle->
debug_print(
"wav: write header failed.\n");
650 handle->
debug_print(
"wav: audio deinit failed.\n");
701 handle->
debug_print(
"wav: audio deinit failed.\n");
842 if (handle->
pos > handle->
size)
852 handle->
debug_print(
"wav: audio deinit failed.\n");
871 if (handle->
pos > handle->
size)
873 uint32_t diff = handle->
pos - handle->
size;
887 if (handle->
pos > handle->
size)
889 uint32_t diff = handle->
pos - handle->
size;
struct wav_handle_s wav_handle_t
wav handle structure definition
uint8_t wav_record_stop(wav_handle_t *handle)
wav record stop
uint8_t wav_player_config(wav_handle_t *handle, uint32_t standard, uint32_t mode, uint32_t polarity, uint32_t format, uint32_t enable, uint32_t freq)
wav player config
wav_status_t
wav status enumeration definition
uint8_t wav_record_file_fill(wav_handle_t *handle, uint8_t index)
wav record file fill
uint8_t wav_player_stop(wav_handle_t *handle)
wav player stop
uint8_t wav_player_resume(wav_handle_t *handle)
wav player resume
uint8_t wav_player_get_status(wav_handle_t *handle, wav_status_t *status)
wav get status
uint8_t wav_player_pause(wav_handle_t *handle)
wav player pause
#define WAV_BUFFER_SIZE
wav buffer size definition
uint8_t wav_record_start(wav_handle_t *handle, uint32_t sample_rate, char *path)
wav record start
uint8_t wav_init(wav_handle_t *handle)
initialize the wav
uint8_t wav_player_start(wav_handle_t *handle)
wav player start
uint8_t wav_deinit(wav_handle_t *handle)
wav deinit
uint8_t wav_player_buffer_fill(wav_handle_t *handle, uint8_t index)
wav player buffer fill
uint8_t wav_player_init(wav_handle_t *handle, char *path)
initialize the wav player
uint8_t(* iis_deinit)(void)
uint8_t(* iis_pause)(void)
void(* delay_ms)(uint32_t ms)
uint8_t(* iis_stop)(void)
uint8_t buf[WAV_BUFFER_SIZE]
uint8_t(* iis_resume)(void)
uint8_t(* iis_write)(uint16_t *buf, uint16_t len)
void(* debug_print)(const char *const fmt,...)
uint8_t(* iis_init)(uint32_t standard, uint32_t mode, uint32_t polarity, uint32_t format, uint32_t enable, uint32_t freq)
uint8_t(* audio_init)(uint8_t type, char *name, uint32_t *size)
uint8_t(* audio_read)(uint32_t addr, uint16_t size, uint8_t *buffer)
uint8_t(* iis_set_freq)(uint32_t freq)
uint8_t(* iis_read)(uint16_t *buf, uint16_t len)
uint8_t(* audio_deinit)(void)
uint8_t(* audio_write)(uint32_t addr, uint16_t size, uint8_t *buffer)