Hello, when I was using AZSpeech 1.62, I found that when the blueprint node SSML To Sound Wave with Custom Options was running, an Unhandled Exception would occur and the engine would crash, as shown in the figure below. I have emailed you the crash log.
In addition, when I was using the blueprint node Speech to Text with Default Options, I found that no matter what value I set for Attempt Timeout in Seconds, it would always be forcibly interrupted after running for about 35 seconds. The reason is unknown. As shown below.
In UE5.0, for some weird reason, bUsePrivateEndpoint is being always true, I’m still trying to identify the cause of this behavior.
Due to this behavior, the tasks were trying to use the empty endpoint URL and throwing a exception with the message: Invalid URL Scheme.
I’m adding a endpoint validator to the settings to change the default value (when bUsePrivateEndpoint is false in Default Options) to https://REGION_ID.api.cognitive.microsoft.com/sts/v1.0/issuetoken to avoid the crashes while this issue is still occurring.
Sent a fix for the crash to the marketplace and its already merged in the main branch.
About the Speech to Text cancellation, I’ll continue investigating this issue.
Tested here and noticed that Azure is sending the reason 3 when the speech reach 30s duration:
/// <summary>
/// Indicates the speech result contains final text that has been recognized.
/// Speech Recognition is now complete for this phrase.
/// </summary>
RecognizedSpeech = 3,
This means that the task is completed. But it’s being received even if I’m still speaking.
In this part of documentation they said that the single recognition has 15s of duration limit, but I didn’t find anything related to Continuous Recognition max duration yet.
The TimeOutLimitInSeconds property is related to the attempt to initialize the task and its being used in C++ std::future::wait_for(…), I need to adjust the comment.
Ref:
/* Time limit in seconds to wait for related asynchronous tasks to complete */
UPROPERTY(GlobalConfig, EditAnywhere, Category = "Tasks", Meta = (DisplayName = "Attempt Timeout in Seconds", ClampMin = "1", UIMin = "1", ClampMax = "600", UIMax = "600"))
int32 TimeOutInSeconds;
Hi, lucoiso. I’ve emailed you before about the on/off control of the mic, and I want to explain again why I’m making this suggestion. Because when using the two blueprint nodes Speech to Text with Custom Options or Speech to Text with Default Options, if you want them to stop working, I can only use the Stop AzSpeech Task node to complete it, but due to the processing of Speech to Text There is a delay, so I can’t use the Stop AzSpeech Task node immediately, I can only wait for the Speech to Text processing to end, but at this time it is very likely that the microphone can continue to receive voice, and this may not be what the user wants If you want, if you can add a microphone switch or volume control, you can solve this problem very well. Have a nice day.
Nope, but the next version will contain something that could help a little bit: Before finishing the tasks, the signals will be disconnected to avoid undesired updates while closing the connection.
Hello Lucoiso!
First of all, thank you for the great plugin this helps me a lot with my project and I can’t wait to see your next version.
Besides that, I want to ask you about the Text To Speech function, I want to get when the task is done but the Is Task Still Valid function always returns True, and the Is Task Ready To Destroy function always returns False although the speech stopped.
Can we get the Duration time of the speech or something?