AudioTools: I2SCodecStream - pschatzmann/arduino-audio-driver GitHub Wiki
You can use the I2SCodecStream class like the I2SStream but it provides some additional functionality, like setting the volume via the codec. In the constructor you need to provide an audio board object.
#include "AudioTools.h"
#include "AudioLibs/I2SCodecStream.h"
I2SCodecStream i2s(LyratV43);
void setup() {
// setup i2s and codec
auto cfg = i2s.defaultConfig();
cfg.sample_rate = 44100;
cfg.bits_per_sample = 16;
cfg.channels = 1;
i2s.begin();
// set volume
i2s.setVolume(0.5);
}
Please have a look at the related Examples that show e.g. how to define your custom board:
- Using a standard board
- Using a custom board with pins defined
- Using a custom board w/o pin definitions