You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In contrast to most other processors, LiveCMN does not forget its cache of internal values when a DataStartSignal comes around. Thus, it will churn out stale data even though a new DataStartSignal would indicate that everything before it is probably irrelevant by now. In combination with endpointing (as in #82), this yields stale null objects that immediately end recognition in the decoder.
The following fixes this:
publicDatagetData() throwsDataProcessingException {
Datainput, output;
// Collect initial data for estimationif (sum == null) {
while (initialList.size() < initialCmnWindow) {
input = getPredecessor().getData();
if (inputinstanceofDataStartSignal)
initialList.clear();
initialList.add(input);
if (inputinstanceofSpeechEndSignal
|| inputinstanceofDataEndSignal)
break;
}
initMeansSums();
output = initialList.remove(0);
} elseif (!initialList.isEmpty()) {
// Return the previously collected dataoutput = initialList.remove(0);
} else {
// Process normal frameoutput = getPredecessor().getData();
if (outputinstanceofDataStartSignal) {
initialList.clear();
sum = null;
initialList.add(output);
output = getData();
}
}
normalize(output);
returnoutput;
}
The text was updated successfully, but these errors were encountered:
In contrast to most other processors, LiveCMN does not forget its cache of internal values when a DataStartSignal comes around. Thus, it will churn out stale data even though a new DataStartSignal would indicate that everything before it is probably irrelevant by now. In combination with endpointing (as in #82), this yields stale null objects that immediately end recognition in the decoder.
The following fixes this:
The text was updated successfully, but these errors were encountered: