Skip to main content

<alp/i2s.h> — I²S / SAI

Raw I²S / SAI bus access. For higher-level audio capture and playback, use <alp/audio.h>.

#include <alp/i2s.h>

Quick example

alp_i2s_t *i2s = alp_i2s_open(&(alp_i2s_config_t){
.bus_id = ALP_E1M_I2S0,
.sample_rate_hz = 44100,
.word_bits = 16,
.channels = 2,
.format = ALP_I2S_FMT_I2S,
.direction = ALP_I2S_DIR_TX,
.block_frames = 256,
});

alp_i2s_start(i2s);
alp_i2s_write(i2s, pcm_buffer, pcm_bytes, /* timeout_ms */ 100);
alp_i2s_stop(i2s);
alp_i2s_close(i2s);

See also

Questions about this page? Discuss in Community Forum