use of com.google.cloud.texttospeech.v1.TextToSpeechClient in project java-texttospeech by googleapis.
the class ListAllSupportedVoicesBeta method listAllSupportedVoices.
// [START tts_list_voices]
/**
* Demonstrates using the Text to Speech client to list the client's supported voices.
*
* @throws Exception on TextToSpeechClient Errors.
*/
public static void listAllSupportedVoices() throws Exception {
// Instantiates a client
try (TextToSpeechClient textToSpeechClient = TextToSpeechClient.create()) {
// Builds the text to speech list voices request
ListVoicesRequest request = ListVoicesRequest.getDefaultInstance();
// Performs the list voices request
ListVoicesResponse response = textToSpeechClient.listVoices(request);
List<Voice> voices = response.getVoicesList();
for (Voice voice : voices) {
// Display the voice's name. Example: tpc-vocoded
System.out.format("Name: %s\n", voice.getName());
// Display the supported language codes for this voice. Example: "en-us"
List<ByteString> languageCodes = voice.getLanguageCodesList().asByteStringList();
for (ByteString languageCode : languageCodes) {
System.out.format("Supported Language: %s\n", languageCode.toStringUtf8());
}
// Display the SSML Voice Gender
System.out.format("SSML Voice Gender: %s\n", voice.getSsmlGender());
// Display the natural sample rate hertz for this voice. Example: 24000
System.out.format("Natural Sample Rate Hertz: %s\n\n", voice.getNaturalSampleRateHertz());
}
}
}
use of com.google.cloud.texttospeech.v1.TextToSpeechClient in project java-texttospeech by googleapis.
the class SsmlAddresses method ssmlToAudio.
// [START tts_ssml_address_audio]
/**
* Generates synthetic audio from a String of SSML text.
*
* <p>Given a string of SSML text and an output file name, this function calls the Text-to-Speech
* API. The API returns a synthetic audio version of the text, formatted according to the SSML
* commands. This function saves the synthetic audio to the designated output file.
*
* @param ssmlText String of tagged SSML text
* @param outFile String name of file under which to save audio output
* @throws Exception on errors while closing the client
*/
public static void ssmlToAudio(String ssmlText, String outFile) throws Exception {
// Instantiates a client
try (TextToSpeechClient textToSpeechClient = TextToSpeechClient.create()) {
// Set the ssml text input to synthesize
SynthesisInput input = SynthesisInput.newBuilder().setSsml(ssmlText).build();
// Build the voice request, select the language code ("en-US") and
// the ssml voice gender ("male")
VoiceSelectionParams voice = VoiceSelectionParams.newBuilder().setLanguageCode("en-US").setSsmlGender(SsmlVoiceGender.MALE).build();
// Select the audio file type
AudioConfig audioConfig = AudioConfig.newBuilder().setAudioEncoding(AudioEncoding.MP3).build();
// Perform the text-to-speech request on the text input with the selected voice parameters and
// audio file type
SynthesizeSpeechResponse response = textToSpeechClient.synthesizeSpeech(input, voice, audioConfig);
// Get the audio contents from the response
ByteString audioContents = response.getAudioContent();
// Write the response to the output file
try (OutputStream out = new FileOutputStream(outFile)) {
out.write(audioContents.toByteArray());
System.out.println("Audio content written to file " + outFile);
}
}
}
use of com.google.cloud.texttospeech.v1.TextToSpeechClient in project java-texttospeech by googleapis.
the class SynthesizeFile method synthesizeTextFile.
// [START tts_synthesize_text_file]
/**
* Demonstrates using the Text to Speech client to synthesize a text file or ssml file.
*
* @param textFile the text file to be synthesized. (e.g., hello.txt)
* @throws Exception on TextToSpeechClient Errors.
*/
public static ByteString synthesizeTextFile(String textFile) throws Exception {
// Instantiates a client
try (TextToSpeechClient textToSpeechClient = TextToSpeechClient.create()) {
// Read the file's contents
String contents = new String(Files.readAllBytes(Paths.get(textFile)));
// Set the text input to be synthesized
SynthesisInput input = SynthesisInput.newBuilder().setText(contents).build();
// Build the voice request
VoiceSelectionParams voice = VoiceSelectionParams.newBuilder().setLanguageCode(// languageCode = "en_us"
"en-US").setSsmlGender(// ssmlVoiceGender = SsmlVoiceGender.FEMALE
SsmlVoiceGender.FEMALE).build();
// Select the type of audio file you want returned
AudioConfig audioConfig = AudioConfig.newBuilder().setAudioEncoding(// MP3 audio.
AudioEncoding.MP3).build();
// Perform the text-to-speech request
SynthesizeSpeechResponse response = textToSpeechClient.synthesizeSpeech(input, voice, audioConfig);
// Get the audio contents from the response
ByteString audioContents = response.getAudioContent();
// Write the response to the output file.
try (OutputStream out = new FileOutputStream("output.mp3")) {
out.write(audioContents.toByteArray());
System.out.println("Audio content written to file \"output.mp3\"");
return audioContents;
}
}
}
use of com.google.cloud.texttospeech.v1.TextToSpeechClient in project java-texttospeech by googleapis.
the class SynthesizeFile method synthesizeSsmlFile.
// [END tts_synthesize_text_file]
// [START tts_synthesize_ssml_file]
/**
* Demonstrates using the Text to Speech client to synthesize a text file or ssml file.
*
* @param ssmlFile the ssml document to be synthesized. (e.g., hello.ssml)
* @throws Exception on TextToSpeechClient Errors.
*/
public static ByteString synthesizeSsmlFile(String ssmlFile) throws Exception {
// Instantiates a client
try (TextToSpeechClient textToSpeechClient = TextToSpeechClient.create()) {
// Read the file's contents
String contents = new String(Files.readAllBytes(Paths.get(ssmlFile)));
// Set the ssml input to be synthesized
SynthesisInput input = SynthesisInput.newBuilder().setSsml(contents).build();
// Build the voice request
VoiceSelectionParams voice = VoiceSelectionParams.newBuilder().setLanguageCode(// languageCode = "en_us"
"en-US").setSsmlGender(// ssmlVoiceGender = SsmlVoiceGender.FEMALE
SsmlVoiceGender.FEMALE).build();
// Select the type of audio file you want returned
AudioConfig audioConfig = AudioConfig.newBuilder().setAudioEncoding(// MP3 audio.
AudioEncoding.MP3).build();
// Perform the text-to-speech request
SynthesizeSpeechResponse response = textToSpeechClient.synthesizeSpeech(input, voice, audioConfig);
// Get the audio contents from the response
ByteString audioContents = response.getAudioContent();
// Write the response to the output file.
try (OutputStream out = new FileOutputStream("output.mp3")) {
out.write(audioContents.toByteArray());
System.out.println("Audio content written to file \"output.mp3\"");
return audioContents;
}
}
}
use of com.google.cloud.texttospeech.v1.TextToSpeechClient in project java-texttospeech by googleapis.
the class SynthesizeFileBeta method synthesizeSsmlFile.
// [END tts_synthesize_text_file]
// [START tts_synthesize_ssml_file]
/**
* Demonstrates using the Text to Speech client to synthesize a text file or ssml file.
*
* @param ssmlFile the ssml document to be synthesized. (e.g., hello.ssml)
* @throws Exception on TextToSpeechClient Errors.
*/
public static void synthesizeSsmlFile(String ssmlFile) throws Exception {
// Instantiates a client
try (TextToSpeechClient textToSpeechClient = TextToSpeechClient.create()) {
// Read the file's contents
String contents = new String(Files.readAllBytes(Paths.get(ssmlFile)));
// Set the ssml input to be synthesized
SynthesisInput input = SynthesisInput.newBuilder().setSsml(contents).build();
// Build the voice request
VoiceSelectionParams voice = VoiceSelectionParams.newBuilder().setLanguageCode(// languageCode = "en_us"
"en-US").setSsmlGender(// ssmlVoiceGender = SsmlVoiceGender.FEMALE
SsmlVoiceGender.FEMALE).build();
// Select the type of audio file you want returned
AudioConfig audioConfig = AudioConfig.newBuilder().setAudioEncoding(// MP3 audio.
AudioEncoding.MP3).build();
// Perform the text-to-speech request
SynthesizeSpeechResponse response = textToSpeechClient.synthesizeSpeech(input, voice, audioConfig);
// Get the audio contents from the response
ByteString audioContents = response.getAudioContent();
// Write the response to the output file.
try (OutputStream out = new FileOutputStream("output.mp3")) {
out.write(audioContents.toByteArray());
System.out.println("Audio content written to file \"output.mp3\"");
}
}
}
Aggregations