MCPcopy Create free account
hub / github.com/FastLED/FastLED / arduino_create_audio_input

Function arduino_create_audio_input

src/platforms/arduino/audio_input.hpp:201–221  ·  view source on GitHub ↗

Platform-specific audio input creation function for Arduino

Source from the content-addressed store, hash-verified

199
200// Platform-specific audio input creation function for Arduino
201fl::shared_ptr<audio::IInput> arduino_create_audio_input(const audio::Config& config, fl::string* error_message = nullptr) FL_NOEXCEPT {
202 if (config.is<audio::ConfigI2S>()) {
203 FL_WARN("Creating Arduino I2S audio source");
204 audio::ConfigI2S i2s_config = config.get<audio::ConfigI2S>();
205 return fl::make_shared<Arduino_I2S_Audio>(i2s_config);
206 } else if (config.is<audio::ConfigPdm>()) {
207 const char* ERROR_MESSAGE = "PDM audio not supported in Arduino I2S implementation";
208 FL_WARN(ERROR_MESSAGE);
209 if (error_message) {
210 *error_message = ERROR_MESSAGE;
211 }
212 return fl::shared_ptr<audio::IInput>(); // Return null
213 }
214
215 const char* ERROR_MESSAGE = "Unsupported audio configuration for Arduino";
216 FL_WARN(ERROR_MESSAGE);
217 if (error_message) {
218 *error_message = ERROR_MESSAGE;
219 }
220 return fl::shared_ptr<audio::IInput>(); // Return null
221}
222
223#else // !ARDUINO_I2S_FULLY_SUPPORTED
224

Callers 1

Calls

no outgoing calls

Tested by

no test coverage detected