snapshot
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
|
||||
#include "AudioTools.h"
|
||||
#include "AudioTools/AudioLibs/AudioBoardStream.h"
|
||||
#include "AudioTools/AudioLibs/TfLiteAudioStream.h"
|
||||
#include "model.h" // tensorflow model
|
||||
|
||||
AudioBoardStream kit(AudioKitEs8388V1); // Audio source
|
||||
TfLiteAudioStream tfl; // Audio sink
|
||||
const char* kCategoryLabels[4] = {
|
||||
"silence",
|
||||
"unknown",
|
||||
"yes",
|
||||
"no",
|
||||
};
|
||||
StreamCopy copier(tfl, kit); // copy mic to tfl
|
||||
int channels = 1;
|
||||
int samples_per_second = 16000;
|
||||
|
||||
void respondToCommand(const char* found_command, uint8_t score,
|
||||
bool is_new_command) {
|
||||
if (is_new_command) {
|
||||
char buffer[80];
|
||||
sprintf(buffer, "Result: %s, score: %d, is_new: %s", found_command, score,
|
||||
is_new_command ? "true" : "false");
|
||||
Serial.println(buffer);
|
||||
}
|
||||
}
|
||||
|
||||
void setup() {
|
||||
Serial.begin(115200);
|
||||
AudioToolsLogger.begin(Serial, AudioToolsLogLevel::Warning);
|
||||
|
||||
// setup Audiokit
|
||||
auto cfg = kit.defaultConfig(RX_MODE);
|
||||
cfg.input_device = ADC_INPUT_LINE2;
|
||||
cfg.channels = channels;
|
||||
cfg.sample_rate = samples_per_second;
|
||||
cfg.use_apll = false;
|
||||
//cfg.auto_clear = true;
|
||||
cfg.buffer_size = 512;
|
||||
cfg.buffer_count = 16;
|
||||
kit.begin(cfg);
|
||||
|
||||
// Setup tensorflow
|
||||
auto tcfg = tfl.defaultConfig();
|
||||
tcfg.setCategories(kCategoryLabels);
|
||||
tcfg.channels = channels;
|
||||
tcfg.sample_rate = samples_per_second;
|
||||
tcfg.kTensorArenaSize = 10 * 1024;
|
||||
tcfg.respondToCommand = respondToCommand;
|
||||
tcfg.model = g_model;
|
||||
tfl.begin(tcfg);
|
||||
}
|
||||
|
||||
void loop() { copier.copy(); }
|
||||
Reference in New Issue
Block a user