protected uint AddProfile(uint index, SpeechEnroller.Profile profile) { Profiles.Add(index, profile); if (Codec == WaveFormatEncoding.Unknown) { Codec = profile.Codec; } Logger?.LogDebug("SpeechEnrollerBase.AddProfile(): Codec: {0}", profile.Codec); Logger?.LogDebug("SpeechEnrollerBase.AddProfile(): MinimumSecondsOfSpeech: {0}", profile.MinimumSecondsOfSpeech); Logger?.LogDebug("SpeechEnrollerBase.AddProfile(): Index: {0}", index); SpeechRequired = profile.MinimumSecondsOfSpeech; return(index); }
protected void AddResult(uint index, string name, SpeechEnroller.InstanceResult result) { SpeechEnroller.Profile profile = Profiles[index]; if (result.SpeechExtracted.HasValue) { result.SpeechTrained = 0.0; if (result.SpeechExtracted.Value >= profile.MinimumSecondsOfSpeech) { result.Result = SpeechEnroller.Result.Success; } else { result.Result = SpeechEnroller.Result.NeedMore; } } else if (result.SpeechTrained.HasValue) { result.Result = SpeechEnroller.Result.Success; result.SpeechExtracted = 0.0; } else { // Error result.Result = SpeechEnroller.Result.Invalid; } Logger?.LogDebug("SpeechEnrollerBase.AddResult(): {0} - ErrorCode: {1}", name, result.ErrorCode); Logger?.LogDebug("SpeechEnrollerBase.AddResult(): {0} - SpeechExtracted: {1}", name, result.SpeechExtracted); Logger?.LogDebug("SpeechEnrollerBase.AddResult(): {0} - SpeechTrained: {1}", name, result.SpeechTrained); Logger?.LogDebug("SpeechEnrollerBase.AddResult(): {0} - Result: {1}", name, result.Result); foreach (var extra in result.Extra) { Logger?.LogDebug("SpeechEnrollerBase.AddResult(): {0} - {1}: {2}", name, extra.Key, extra.Value); } EnrollResults.Add(name, result); }