!7 cmodule SpeechCorrelator1 > DynPrintLog { switchable bool react; // react to new recording S startTime /*, endTime*/; new L interpretations_raw; transient L interpretations; //Interpretation bestInterpretation; sclass Interpretation { S by; O rank; } start { interpretations = dm_synchroList(interpretations_raw); dm_onNewRecording(voidfunc(File f) enter { if (!react) ret; print("Have WAV: " + f); //print(renderFileDateWithSeconds(f)); setStartTime(extractYMDminusHMS(fileName(f))); triggerSpeechRecognitions("wav", f); }); dm_vmBus_onMessage_q newMP3Recording(voidfunc(File f) enter { print("Have MP3: " + f); setStartTime(extractYMDminusHMS(fileName(f))); triggerSpeechRecognitions("mp3", f); }); } visual centerAndSouthWithMargins(super, jrightaligned(dm_checkBox react())); // type = "mp3" or "wav" void triggerSpeechRecognitions(S type, File audioFile) { } void setStartTime(S startTime) { if (setField(+startTime)) { print(+startTime); clear(interpretations); } } }