All Projects → ActiveNick → Unity-Text-to-Speech

ActiveNick / Unity-Text-to-Speech

Licence: MIT license
Sample app used to demonstrate the use of Microsoft Cognitive Services Text-to-Speech APIs (aka Speech Synthesis) from within Unity.

Programming Languages

C#
18002 projects

Projects that are alternatives of or similar to Unity-Text-to-Speech

Directxmath
DirectXMath is an all inline SIMD C++ linear algebra library for use in games and graphics apps
Stars: ✭ 859 (+1182.09%)
Mutual labels:  microsoft, uwp
Cognitive Face Windows
Windows SDK for the Microsoft Face API, part of Cognitive Services
Stars: ✭ 175 (+161.19%)
Mutual labels:  microsoft, cognitive-services
Active Directory B2c Xamarin Native
This is a simple Xamarin Forms app showcasing how to use MSAL to authenticate users via Azure Active Directory B2C, and access a Web API with the resulting tokens.
Stars: ✭ 91 (+35.82%)
Mutual labels:  microsoft, uwp
Directxmesh
DirectXMesh geometry processing library
Stars: ✭ 447 (+567.16%)
Mutual labels:  microsoft, uwp
Cognitive Face Python
Python SDK for the Microsoft Face API, part of Cognitive Services
Stars: ✭ 226 (+237.31%)
Mutual labels:  microsoft, cognitive-services
Microsoft Authentication Library For Dotnet
Microsoft Authentication Library (MSAL) for .NET
Stars: ✭ 746 (+1013.43%)
Mutual labels:  microsoft, uwp
Cloneapp
📦Easily Backup & Restore Windows Programs Settings
Stars: ✭ 163 (+143.28%)
Mutual labels:  microsoft, uwp
SynapseML
Simple and Distributed Machine Learning
Stars: ✭ 3,355 (+4907.46%)
Mutual labels:  microsoft, cognitive-services
Mmlspark
Simple and Distributed Machine Learning
Stars: ✭ 2,899 (+4226.87%)
Mutual labels:  microsoft, cognitive-services
Cognitive Face Ios
iOS SDK for the Microsoft Face API, part of Cognitive Services
Stars: ✭ 191 (+185.07%)
Mutual labels:  microsoft, cognitive-services
Xbox Atg Samples
Game development samples published by the Xbox Advanced Technology Group using the Xbox One XDK and for the Universal Windows Platform (UWP).
Stars: ✭ 430 (+541.79%)
Mutual labels:  microsoft, uwp
Cognitive-Face-Xamarin
A client library that makes it easy to work with the Microsoft Cognitive Services Face API on Xamarin.iOS, Xamarin.Android, and Xamarin.Forms and/or Portable Class Libraries.
Stars: ✭ 18 (-73.13%)
Mutual labels:  microsoft, cognitive-services
Cognitive Face Android
Cognitive Services Face client library for Android.
Stars: ✭ 273 (+307.46%)
Mutual labels:  microsoft, cognitive-services
Directxtk12
The DirectX Tool Kit (aka DirectXTK12) is a collection of helper classes for writing DirectX 12 code in C++
Stars: ✭ 765 (+1041.79%)
Mutual labels:  microsoft, uwp
pmod
Native cross platform library with language projection support for native code.
Stars: ✭ 22 (-67.16%)
Mutual labels:  microsoft, uwp
Directxtk
The DirectX Tool Kit (aka DirectXTK) is a collection of helper classes for writing DirectX 11.x code in C++
Stars: ✭ 1,918 (+2762.69%)
Mutual labels:  microsoft, uwp
spokestack-android
Extensible Android mobile voice framework: wakeword, ASR, NLU, and TTS. Easily add voice to any Android app!
Stars: ✭ 52 (-22.39%)
Mutual labels:  voice, speech-api
Speechtotext Websockets Javascript
SDK & Sample to do speech recognition using websockets in Javascript
Stars: ✭ 191 (+185.07%)
Mutual labels:  microsoft, cognitive-services
anycontrol
Voice control for your websites and applications
Stars: ✭ 53 (-20.9%)
Mutual labels:  voice, speech-api
ContextMenuForWindows11
Add Custom Context Menu For Windows11
Stars: ✭ 693 (+934.33%)
Mutual labels:  microsoft, uwp

Unity-Text-to-Speech

Sample app used to demonstrate the use of Microsoft Cognitive Services Speech Service Text-to-Speech (TTS) APIs from within the Unity game engine. These cloud-based APIs provide access to higher quality voices, providing consistency across all client platforms. Check out the Text-to-Speech Overview page to try out & hear a sample of these voices.

This sample provides a self-contained SpeechManager component that is easy to reuse in your own Unity projects. Given that Cognitive Services are cloud APIs, they are therefore not available when offline. It is recommended to fallback on local platform-specific Text-to-Speech APIs when offline.

The code in this sample demonstrates two ways to call the Speech Synthesis service. The first makes use of the Text-to-Speech REST API endpoint. When running the sample, make sure the checkbox "Use SDK Plugin" is unchecked to use this method. The second approach uses the new Cognitive Services Speech SDK for Unity, which features a plugin for Windows Desktop, UWP and Android, available as part of of a Unity package. IMPORTANT: The plugin is not included with this repo and you must import it in your project or the sample won't run. You can download the Unity package from here.

  • Unity version: 2018.3.14f1
  • Target platforms tested (REST API): Unity Editor, Windows Desktop (standalone x64), UWP, Android, iOS
  • Target platforms tested (Plugin): Unity Editor

Implementation Notes

  • THE CODE IN THIS SAMPLE APP ONLY WORKS WITH THE .NET 4.6 SCRIPTING RUNTIME. Additionally, there seems to be an issue with the use of HttpClient in Unity 2018.1.
  • This sample requires a Microsoft Cognitive Services Speech API key. FOR MORE INFO ON AUTHENTICATION AND HOW TO GET YOUR API KEY, PLEASE VISIT THIS PAGE. Don't use the key in this sample app, it's mine and I reserve the right to invalidate it if/when I want, use this link and go get your own. The free tier gives you 5,000 free API transactions / month.
  • The CustomCertificatePolicy class in SpeechManager.cs is required to circumvent a TLS bug in Unity 2018.1, otherwise Unity will throw an error stating the certificate is invalid. This temporary workaround simply bypasses certificate validation. This has been fixed in Unity 2018.2+ and will be removed after more testing is done. Note that UWP doesn't have this bug, only Mono, hence the conditional code.
  • TTSClient.cs contains a VoiceName enum with all the voices currently implemented in this sample. This may not include all the voices supported by the Cognitive Services Text-to-Speech API. Please visit this page to get the most up-to-date list of supported languages. Don't forget to edit ConvertVoiceNametoString() if you add more values to this enum to use more supported languages.
  • To change the pitch of the voice playback, use a delta value in Hz. Default is 0 (zero). Typical accepted delta changes can range from -10 to 10. Note: This currently only works with the REST API.

Follow Me

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].