nRF Connect SDK API 0.1.0
Loading...
Searching...
No Matches
audio_i2s.h File Reference
#include <zephyr/kernel.h>
#include <stdint.h>

Go to the source code of this file.

Macros

#define FRAME_SIZE_BYTES    ((CONFIG_I2S_LRCK_FREQ_HZ / 1000 * 10) * CONFIG_I2S_CH_NUM * CONFIG_AUDIO_BIT_DEPTH_OCTETS)
 
#define BLOCK_SIZE_BYTES   (FRAME_SIZE_BYTES / CONFIG_FIFO_FRAME_SPLIT_NUM)
 
#define I2S_SAMPLES_NUM    (BLOCK_SIZE_BYTES / (CONFIG_AUDIO_BIT_DEPTH_OCTETS) / (32 / CONFIG_AUDIO_BIT_DEPTH_BITS))
 

Typedefs

typedef void(* i2s_blk_comp_callback_t) (uint32_t frame_start_ts, uint32_t *rx_buf_released, uint32_t const *tx_buf_released)
 I2S block complete event callback type.
 

Functions

void audio_i2s_set_next_buf (const uint8_t *tx_buf, uint32_t *rx_buf)
 Supply the buffers to be used in the next part of the I2S transfer.
 
void audio_i2s_start (const uint8_t *tx_buf, uint32_t *rx_buf)
 Start the continuous I2S transfer.
 
void audio_i2s_stop (void)
 Stop the continuous I2S transfer.
 
void audio_i2s_blk_comp_cb_register (i2s_blk_comp_callback_t blk_comp_callback)
 Register callback function for I2S block complete event.
 
void audio_i2s_init (void)
 Initialize I2S module.