Closed roninstar closed 3 years ago
Hi @roninstar, thanks for the question - I've reached out to our team expert about this and will reply back with my findings.
There's a known bug in the the Speech SDK that requires the profile type be specified when constructing a profile from an ID. This will be addressed in a near future release of the Speech SDK. The workaround is using the RESTful API at here.
Hi Lisa, the issue we are having is there is no way to get the user profile. There isn't any method to get the voice profile from he server using the SDK. Is this going to be addressed in the future?
so basically if you do voice training with Speaker Recognition and you create the profile and set the type as text-independent you still have no way to perform speaker identification later on. Even if you save the guid there is no way to get and use it without having to do voice training on start of the app each time.
@roninstar , we addressed this in the 1.16 release of the Speech SDK. Please give it a try. See our release notes for more info.
I have tried everything I could think of to perform identification or verification on our saved users after their voices have been trained without training on start of the app every time. Even if I save the GUID's of the voiceprofiles once they are created I can not get the voiceprofiles from the Azure service in order to perform verification on the users identity on a later date. The examples provided make it so that a user has to do voice training every single time they start an application. How can I do a verification on one enrolled user after voice training without having to Create a brand new profile every time. https://docs.microsoft.com/en-us/azure/cognitive-services/speech-service/get-started-speaker-recognition
public async Task VerificationEnroll(SpeechConfig config, Dictionary<string, string> profileMapping) {
public async Task SpeakerVerify(SpeechConfig config, VoiceProfile profile, Dictionary<string, string> profileMapping) { try { var speakerRecognizer = new SpeakerRecognizer(config, AudioConfig.FromDefaultMicrophoneInput()); var users = speakerRecognizer.Properties.GetProperty(PropertyId.SpeechServiceResponse_JsonResult); var model = SpeakerVerificationModel.FromProfile(profile);