Jan 22 2022 04:01 AM
Hello.
I found that Azure TTS Service API did not work on Windows 8, 8.1, Server2012, Server2012R2 since 2022-01.
It has worked well until 2021-11 at least .
Other Azure APIs like authentication, speech recognition API works and only Azure TTS Service API does not work on Windows 8/8.1/Server2012/Server2012R2.
I confirmed that TLS 1.2 was used for all SSL communication on Windows 8.1 using WireShark but TLS 1.2 Handshake Failure error occurred like the followings;
TLSv1.2 Record Layer: Handshake Protocol: Client Hello
TLSv1.2 Record Layer: Alert (Level: Fatal, Description: Handshake Failure).
I spent a lot of time for TLS handshaking issue of Azure TTS Service API and found the actual reason.
It was TLS cipher suite issue of Azure TTS Service API Server.
I executed sslscan to westus2.tts.speech.microsoft.com and the result was as the following;
westus2.tts.speech.microsoft.com
Preferred TLSv1.2 128 bits ECDHE-RSA-AES128-GCM-SHA256 Curve 25519 DHE 253
Accepted TLSv1.2 256 bits ECDHE-RSA-AES256-GCM-SHA384 Curve 25519 DHE 253
Accepted TLSv1.2 256 bits ECDHE-RSA-CHACHA20-POLY1305 Curve 25519 DHE 253
I compared packet capturing result of WireShark between Windows 8.1 and Windows 10.
The result of Windows 10 has ECDHE-RSA-AES128-GCM-SHA256 and ECDHE-RSA-AES256-GCM-SHA384 but the result of Windows 8.1 does not.
So, Azure TTS API cannot work on Windows8/8.1/Server2012/Server2012R2 and there is no way to solve or workaround in client side.
I think that it must be solved at azure server side.
I found a same issue at the following link;
https://docs.microsoft.com/en-us/answers/questions/103288/azure-text-to-speech-is-not-accessable-in-...
Best regards.