// [START tts_list_voices]
        /// <summary>
        /// Lists all the voices available for speech synthesis.
        /// </summary>
        /// <param name="desiredLanguageCode">Language code to filter on</param>
        public static int ListVoices(string desiredLanguageCode = "")
        {
            TextToSpeechClient client = TextToSpeechClient.Create();

            // Performs the list voices request
            var response = client.ListVoices(new ListVoicesRequest
            {
                LanguageCode = desiredLanguageCode
            });

            foreach (Voice voice in response.Voices)
            {
                // Display the voices's name.
                Console.WriteLine($"Name: {voice.Name}");

                // Display the supported language codes for this voice.
                foreach (var languageCode in voice.LanguageCodes)
                {
                    Console.WriteLine($"Supported language(s): {languageCode}");
                }

                // Display the SSML Voice Gender
                Console.WriteLine("SSML Voice Gender: " +
                                  (SsmlVoiceGender)voice.SsmlGender);

                // Display the natural sample rate hertz for this voice.
                Console.WriteLine("Natural Sample Rate Hertz: " +
                                  voice.NaturalSampleRateHertz);
            }
            return(0);
        }
        static int ListVoices(string desiredLanguageCode = "")
        {
            ListVoicesResponse response = client.ListVoices(new ListVoicesRequest
            {
                LanguageCode = desiredLanguageCode
            });

            foreach (Voice voice in response.Voices)
            {
                //Display the voices's name.
                Console.WriteLine($"Name: {voice.Name}");

                //Display the supported language codes for this voice.
                foreach (string language in voice.LanguageCodes)
                {
                    Console.WriteLine($"Supported language(s): {language}");
                }

                //Display the SSML Voice Gender
                Console.WriteLine($"SSML Voice Gender: {(SsmlVoiceGender)voice.SsmlGender}");

                //Display the natural sample rate hertz for this voice.
                Console.WriteLine($"Natural Sample Rate Hertz: {voice.NaturalSampleRateHertz}");

                Console.WriteLine("");
            }

            return(0);
        }
        public static List <VoiceItem> ListVoices(Grpc.Core.Channel channel)
        {
            TextToSpeechClient client = TextToSpeechClient.Create(channel);

            // Performs the list voices request
            var response = client.ListVoices(new ListVoicesRequest
            {
            });

            List <VoiceItem> voices = new List <VoiceItem>();

            foreach (Voice voice in response.Voices)
            {
                foreach (var languageCode in voice.LanguageCodes)
                {
                    VoiceItem voiceItem = new VoiceItem
                    {
                        Name     = voice.Name,
                        Gender   = voice.SsmlGender.ToString(),
                        Language = languageCode,
                    };
                    voices.Add(voiceItem);
                }
            }
            return(voices);
        }
        public static Dictionary <string, LanguageItem> ListVoiceLanguages(Grpc.Core.Channel channel)
        {
            TextToSpeechClient client = TextToSpeechClient.Create(channel);

            Dictionary <string, LanguageItem> languages = new Dictionary <string, LanguageItem>();
            // Performs the list voices request
            var response = client.ListVoices(new ListVoicesRequest {
            });

            foreach (Voice voice in response.Voices)
            {
                foreach (var languageCode in voice.LanguageCodes)
                {
                    if (!languages.ContainsKey(languageCode.ToString()))
                    {
                        string       displayName = languageCode + " | " + new CultureInfo($"{languageCode}").DisplayName;
                        LanguageItem newItem     = new LanguageItem
                        {
                            Text = displayName,
                            Id   = languageCode
                        };

                        languages.Add(languageCode, newItem);
                    }
                }
            }
            return(languages);
        }
Exemple #5
0
        public static string GetVoices(ref QuestToSpeech.Voice[] voices)
        {
            try {
                List <QuestToSpeech.Voice> list     = new List <QuestToSpeech.Voice>();
                TextToSpeechClient         client   = TextToSpeechClient.Create();
                ListVoicesResponse         response = client.ListVoices(new ListVoicesRequest()
                {
                });                                                                                          // Performs the list voices request

                foreach (Voice voice in response.Voices)
                {
                    list.Add(new QuestToSpeech.Voice()
                    {
                        Name     = voice.Name,
                        Gender   = voice.SsmlGender == SsmlVoiceGender.Female ? QuestToSpeech.Gender.Female : QuestToSpeech.Gender.Male,
                        LangCode = voice.LanguageCodes[0],
                        Module   = QuestToSpeech.Module.Google
                    });
                }

                voices = list.ToArray();
            } catch (Exception ex) {
                return(string.Format("GoogleTTS Exception: {0}", ex.InnerException == null ? ex.Message : ex.InnerException.ToString()));
            }

            return(null);
        }
Exemple #6
0
        public object AuthExplicit(string jsonPath)
        {
            System.Environment.SetEnvironmentVariable("GOOGLE_APPLICATION_CREDENTIALS", Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "Config", "gcp.json"));
            try
            {
                client = TextToSpeechClient.Create();
            }
            catch (Exception e)
            {
                Console.WriteLine($"Failed to initialise GCP TTS Client. Set GCP to 'false' in options.txt");
                Console.WriteLine("Press any key to see the exception...");
                Console.ReadKey();
                Console.WriteLine(e);
                Console.WriteLine("Press any key to quit...");
                Console.ReadKey();
                Environment.Exit(0);
            }
            var response = client.ListVoices("");

            List <string> voices = new List <string>();

            foreach (var voice in response.Voices)
            {
                Console.WriteLine($"{voice.Name} ({voice.SsmlGender}); Rate:{voice.NaturalSampleRateHertz} Language codes: {string.Join(", ", voice.LanguageCodes)}");
                voices.Add(voice.Name);
            }
            voicelist = voices;

            File.WriteAllText(voicelistfile, string.Empty);
            File.WriteAllLines(voicelistfile, voices);
            return(null);
        }
 /// <summary>Snippet for ListVoices</summary>
 public void ListVoices()
 {
     // Snippet: ListVoices(string, CallSettings)
     // Create client
     TextToSpeechClient textToSpeechClient = TextToSpeechClient.Create();
     // Initialize request argument(s)
     string languageCode = "";
     // Make the request
     ListVoicesResponse response = textToSpeechClient.ListVoices(languageCode);
     // End snippet
 }
 /// <summary>Snippet for ListVoices</summary>
 public void ListVoices_RequestObject()
 {
     // Snippet: ListVoices(ListVoicesRequest,CallSettings)
     // Create client
     TextToSpeechClient textToSpeechClient = TextToSpeechClient.Create();
     // Initialize request argument(s)
     ListVoicesRequest request = new ListVoicesRequest();
     // Make the request
     ListVoicesResponse response = textToSpeechClient.ListVoices(request);
     // End snippet
 }
        public void ListVoices()
        {
            // Snippet: ListVoices(string,CallSettings)
            TextToSpeechClient client   = TextToSpeechClient.Create();
            ListVoicesResponse response = client.ListVoices("en");

            foreach (Voice voice in response.Voices)
            {
                Console.WriteLine($"{voice.Name} ({voice.SsmlGender}); Language codes: {string.Join(", ", voice.LanguageCodes)}");
            }
            // End snippet
        }
        public List <string> ListVoices(string desiredLanguageCode)
        {
            List <string> supportedVoiceNames = new List <string>();

            // Performs the list voices request
            var response = client.ListVoices(new ListVoicesRequest
            {
                LanguageCode = desiredLanguageCode
            });

            foreach (Voice voice in response.Voices)
            {
                supportedVoiceNames.Add(voice.Name);
            }
            return(supportedVoiceNames);
        }
Exemple #11
0
        private static bool isCountryCodeValid(string desiredLanguageCode)
        {
            TextToSpeechClient client = TextToSpeechClient.Create();

            // Performs the list voices request
            var response = client.ListVoices(new ListVoicesRequest
            {
                LanguageCode = desiredLanguageCode
            });

            if (response.Voices.Count > 0)
            {
                return(true);
            }
            return(false);
        }
Exemple #12
0
        public Dictionary <string, LanguageItem> ListVoiceLanguages(Grpc.Core.Channel channel)
        {
            Dictionary <string, LanguageItem> languages = new Dictionary <string, LanguageItem>();

            try
            {
                TextToSpeechClient client = TextToSpeechClient.Create(channel);


                // Performs the list voices request
                var response = client.ListVoices(new ListVoicesRequest {
                });
                foreach (Voice voice in response.Voices)
                {
                    foreach (var languageCode in voice.LanguageCodes)
                    {
                        if (!languages.ContainsKey(languageCode.ToString()))
                        {
                            string       displayName = languageCode + " | " + new CultureInfo($"{languageCode}").DisplayName;
                            LanguageItem newItem     = new LanguageItem
                            {
                                Text = displayName,
                                Id   = languageCode
                            };

                            languages.Add(languageCode, newItem);
                        }
                    }
                }
            }
            catch (Grpc.Core.RpcException e2)
            {
                Log("RpcException Error with Json API File: " + e2.Message);
            }
            catch (Exception e2)
            {
                Log("Error with Json API File: " + e2.Message);
            }

            return(languages);
        }