Search in sources :

Example 6 with VoiceModel

use of com.ibm.watson.developer_cloud.text_to_speech.v1.model.VoiceModel in project java-sdk by watson-developer-cloud.

the class CustomizationExample method main.

public static void main(String[] args) throws IOException {
    TextToSpeech service = new TextToSpeech("<username>", "<password>");
    // create custom voice model.
    CreateVoiceModelOptions createOptions = new CreateVoiceModelOptions.Builder().name("my model").language("en-US").description("the model for testing").build();
    VoiceModel customVoiceModel = service.createVoiceModel(createOptions).execute();
    System.out.println(customVoiceModel);
    // list custom voice models for US English.
    ListVoiceModelsOptions listOptions = new ListVoiceModelsOptions.Builder().language("en-US").build();
    VoiceModels customVoiceModels = service.listVoiceModels(listOptions);
    System.out.println(customVoiceModels);
    // update custom voice model.
    UpdateVoiceModelOptions updateOptions = new UpdateVoiceModelOptions.Builder().customizationId(customVoiceModel.getCustomizationId()).name(newName).description("the updated model for testing").build();
    service.updateVoiceModel(updateOptions).execute();
    // list custom voice models regardless of language.
    customVoiceModels = service.listVoiceModels().execute();
    System.out.println(customVoiceModels);
    // create multiple custom word translations
    Word word1 = new Word();
    word1.setWord("hodor");
    word1.setTranslation("hold the door");
    Word word2 = new Word();
    word2.setWord("plz");
    word2.setTranslation("please");
    List<Word> words = Arrays.asList(word1, word2);
    AddWordsOptions addOptions = new AddWordsOptions.Builder().customizationId(customVoiceModel.getCustomizationId()).words(words).build();
    service.addWords(addOptions).execute();
    // create a single custom word translation
    AddWordOptions addOptions = new AddWordOptions.Builder().word("nat").translation("and that").customizationId(customVoiceModel.getCustomizationId()).build();
    service.addWord(addOptions).execute();
    // get custom word translations
    ListWordsOptions listOptions = new ListWordsOptions.Builder().customizationId(customVoiceModel.getCustomizationId()).build();
    Words words = service.listWords(listOptions).execute();
    System.out.println(words);
    // get custom word translation
    GetWordOptions getOptions = new GetWordOptions.Builder().customizationId(customVoiceModel.getCustomizationId()).word("hodor").build();
    Translation translation = service.getWord(getOptions).execute();
    System.out.println(translation);
    // synthesize with custom voice model
    String text = "plz hodor";
    SynthesizeOptions synthesizeOptions = new SynthesizeOptions.Builder().text(text).voice(SynthesizeOptions.Voice.EN_US_MICHAELVOICE).accept(SynthesizeOptions.Accept.AUDIO_WAV).customizationId(customVoiceModel.getCustomizationId()).build();
    InputStream in = service.synthesize(synthesizeOptions).execute();
    writeToFile(WaveUtils.reWriteWaveHeader(in), new File("output.wav"));
    // delete custom words with object and string
    DeleteWordOptions deleteOptions1 = new DeleteWordOptions.Builder().customizationId(customVoiceModel.getCustomizationId()).word(word1.getWord()).build();
    service.deleteWord(deleteOptions1).execute();
    DeleteWordOptions deleteOptions2 = new DeleteWordOptions.Builder().customizationId(customVoiceModel.getCustomizationId()).word(word2.getWord()).build();
    service.deleteWord(deleteOptions2).execute();
    // delete custom voice model
    DeleteVoiceModelOptions deleteOptions = new DeleteVoiceModelOptions.Builder().customizationId(customVoiceModel.getCustomizationId()).build();
    service.deleteVoiceModel(deleteOptions).execute();
    // list custom voice models regardless of language.
    customVoiceModels = service.listVoiceModels().execute();
    System.out.println(customVoiceModels);
}
Also used : Word(com.ibm.watson.developer_cloud.text_to_speech.v1.model.Word) UpdateVoiceModelOptions(com.ibm.watson.developer_cloud.text_to_speech.v1.model.UpdateVoiceModelOptions) CreateVoiceModelOptions(com.ibm.watson.developer_cloud.text_to_speech.v1.model.CreateVoiceModelOptions) VoiceModels(com.ibm.watson.developer_cloud.text_to_speech.v1.model.VoiceModels) AddWordOptions(com.ibm.watson.developer_cloud.text_to_speech.v1.model.AddWordOptions) ListVoiceModelsOptions(com.ibm.watson.developer_cloud.text_to_speech.v1.model.ListVoiceModelsOptions) DeleteWordOptions(com.ibm.watson.developer_cloud.text_to_speech.v1.model.DeleteWordOptions) SynthesizeOptions(com.ibm.watson.developer_cloud.text_to_speech.v1.model.SynthesizeOptions) Translation(com.ibm.watson.developer_cloud.text_to_speech.v1.model.Translation) DeleteVoiceModelOptions(com.ibm.watson.developer_cloud.text_to_speech.v1.model.DeleteVoiceModelOptions) InputStream(java.io.InputStream) GetWordOptions(com.ibm.watson.developer_cloud.text_to_speech.v1.model.GetWordOptions) VoiceModel(com.ibm.watson.developer_cloud.text_to_speech.v1.model.VoiceModel) AddWordsOptions(com.ibm.watson.developer_cloud.text_to_speech.v1.model.AddWordsOptions) Words(com.ibm.watson.developer_cloud.text_to_speech.v1.model.Words) ListWordsOptions(com.ibm.watson.developer_cloud.text_to_speech.v1.model.ListWordsOptions) File(java.io.File)

Example 7 with VoiceModel

use of com.ibm.watson.developer_cloud.text_to_speech.v1.model.VoiceModel in project java-sdk by watson-developer-cloud.

the class TextToSpeech method getVoiceModel.

/**
 * Queries the contents of a custom voice model.
 *
 * Lists all information about the custom voice model with the specified `customization_id`. In addition to metadata
 * such as the name and description of the voice model, the output includes the words in the model and their
 * translations as defined in the model. To see just the metadata for a voice model, use the `GET /v1/customizations`
 * method. You must use credentials for the instance of the service that owns a model to list information about it.
 * **Note:** This method is currently a beta release.
 *
 * @param getVoiceModelOptions the {@link GetVoiceModelOptions} containing the options for the call
 * @return a {@link ServiceCall} with a response type of {@link VoiceModel}
 */
public ServiceCall<VoiceModel> getVoiceModel(GetVoiceModelOptions getVoiceModelOptions) {
    Validator.notNull(getVoiceModelOptions, "getVoiceModelOptions cannot be null");
    String[] pathSegments = { "v1/customizations" };
    String[] pathParameters = { getVoiceModelOptions.customizationId() };
    RequestBuilder builder = RequestBuilder.get(RequestBuilder.constructHttpUrl(getEndPoint(), pathSegments, pathParameters));
    return createServiceCall(builder.build(), ResponseConverterUtils.getObject(VoiceModel.class));
}
Also used : VoiceModel(com.ibm.watson.developer_cloud.text_to_speech.v1.model.VoiceModel) RequestBuilder(com.ibm.watson.developer_cloud.http.RequestBuilder)

Example 8 with VoiceModel

use of com.ibm.watson.developer_cloud.text_to_speech.v1.model.VoiceModel in project java-sdk by watson-developer-cloud.

the class CustomizationsIT method testGetVoiceModelString.

/**
 * Test get voice model.
 */
@Test
public void testGetVoiceModelString() {
    model = createVoiceModel();
    GetVoiceModelOptions getOptions = new GetVoiceModelOptions.Builder().customizationId(model.getCustomizationId()).build();
    final VoiceModel model2 = service.getVoiceModel(getOptions).execute();
    assertNotNull(model2);
    assertModelsEqual(model, model2);
    assertNotNull(model2.getOwner());
    assertNotNull(model2.getCreated());
    assertNotNull(model2.getLastModified());
}
Also used : GetVoiceModelOptions(com.ibm.watson.developer_cloud.text_to_speech.v1.model.GetVoiceModelOptions) VoiceModel(com.ibm.watson.developer_cloud.text_to_speech.v1.model.VoiceModel) WatsonServiceTest(com.ibm.watson.developer_cloud.WatsonServiceTest) Test(org.junit.Test)

Example 9 with VoiceModel

use of com.ibm.watson.developer_cloud.text_to_speech.v1.model.VoiceModel in project java-sdk by watson-developer-cloud.

the class CustomizationsIT method testGetVoiceCustomization.

/**
 * Test get voice with customization.
 */
@Test
public void testGetVoiceCustomization() {
    model = createVoiceModel();
    GetVoiceModelOptions getVoiceModelOptions = new GetVoiceModelOptions.Builder().customizationId(model.getCustomizationId()).build();
    final VoiceModel model2 = service.getVoiceModel(getVoiceModelOptions).execute();
    GetVoiceOptions getVoiceOptions = new GetVoiceOptions.Builder().customizationId(model.getCustomizationId()).voice(GetVoiceOptions.Voice.EN_US_ALLISONVOICE).build();
    final Voice voice = service.getVoice(getVoiceOptions).execute();
    assertNotNull(model);
    assertNotNull(model2);
    assertNotNull(voice);
    assertEquals(model2.getCustomizationId(), voice.getCustomization().getCustomizationId());
    assertEquals(model2.getName(), voice.getCustomization().getName());
    assertEquals(model2.getDescription(), voice.getCustomization().getDescription());
    assertEquals(model2.getLanguage(), voice.getCustomization().getLanguage());
    assertEquals(model2.getOwner(), voice.getCustomization().getOwner());
    assertEquals(model2.getCreated(), voice.getCustomization().getCreated());
    assertEquals(model2.getLastModified(), voice.getCustomization().getLastModified());
}
Also used : GetVoiceModelOptions(com.ibm.watson.developer_cloud.text_to_speech.v1.model.GetVoiceModelOptions) VoiceModel(com.ibm.watson.developer_cloud.text_to_speech.v1.model.VoiceModel) Voice(com.ibm.watson.developer_cloud.text_to_speech.v1.model.Voice) GetVoiceOptions(com.ibm.watson.developer_cloud.text_to_speech.v1.model.GetVoiceOptions) WatsonServiceTest(com.ibm.watson.developer_cloud.WatsonServiceTest) Test(org.junit.Test)

Example 10 with VoiceModel

use of com.ibm.watson.developer_cloud.text_to_speech.v1.model.VoiceModel in project java-sdk by watson-developer-cloud.

the class CustomizationsIT method testUpdateVoiceModel.

/**
 * Test update voice model with new name and ignored language change.
 */
@Test
public void testUpdateVoiceModel() {
    final String newName = "new test";
    final String newLanguage = "pt-BR";
    model = createVoiceModel();
    GetVoiceModelOptions getOptions = new GetVoiceModelOptions.Builder().customizationId(model.getCustomizationId()).build();
    model = service.getVoiceModel(getOptions).execute();
    UpdateVoiceModelOptions updateOptions = new UpdateVoiceModelOptions.Builder().customizationId(model.getCustomizationId()).name(newName).build();
    service.updateVoiceModel(updateOptions).execute();
    final VoiceModel model2 = service.getVoiceModel(getOptions).execute();
    // comparison at service
    assertModelsEqual(model, model2);
    // value at service
    assertEquals(model2.getLanguage(), MODEL_LANGUAGE);
}
Also used : GetVoiceModelOptions(com.ibm.watson.developer_cloud.text_to_speech.v1.model.GetVoiceModelOptions) VoiceModel(com.ibm.watson.developer_cloud.text_to_speech.v1.model.VoiceModel) UpdateVoiceModelOptions(com.ibm.watson.developer_cloud.text_to_speech.v1.model.UpdateVoiceModelOptions) WatsonServiceTest(com.ibm.watson.developer_cloud.WatsonServiceTest) Test(org.junit.Test)

Aggregations

VoiceModel (com.ibm.watson.developer_cloud.text_to_speech.v1.model.VoiceModel)13 GetVoiceModelOptions (com.ibm.watson.developer_cloud.text_to_speech.v1.model.GetVoiceModelOptions)10 Test (org.junit.Test)10 WatsonServiceTest (com.ibm.watson.developer_cloud.WatsonServiceTest)6 UpdateVoiceModelOptions (com.ibm.watson.developer_cloud.text_to_speech.v1.model.UpdateVoiceModelOptions)5 WatsonServiceUnitTest (com.ibm.watson.developer_cloud.WatsonServiceUnitTest)4 CreateVoiceModelOptions (com.ibm.watson.developer_cloud.text_to_speech.v1.model.CreateVoiceModelOptions)4 RecordedRequest (okhttp3.mockwebserver.RecordedRequest)4 RequestBuilder (com.ibm.watson.developer_cloud.http.RequestBuilder)2 ListVoiceModelsOptions (com.ibm.watson.developer_cloud.text_to_speech.v1.model.ListVoiceModelsOptions)2 VoiceModels (com.ibm.watson.developer_cloud.text_to_speech.v1.model.VoiceModels)2 MockResponse (okhttp3.mockwebserver.MockResponse)2 JsonObject (com.google.gson.JsonObject)1 AddWordOptions (com.ibm.watson.developer_cloud.text_to_speech.v1.model.AddWordOptions)1 AddWordsOptions (com.ibm.watson.developer_cloud.text_to_speech.v1.model.AddWordsOptions)1 DeleteVoiceModelOptions (com.ibm.watson.developer_cloud.text_to_speech.v1.model.DeleteVoiceModelOptions)1 DeleteWordOptions (com.ibm.watson.developer_cloud.text_to_speech.v1.model.DeleteWordOptions)1 GetVoiceOptions (com.ibm.watson.developer_cloud.text_to_speech.v1.model.GetVoiceOptions)1 GetWordOptions (com.ibm.watson.developer_cloud.text_to_speech.v1.model.GetWordOptions)1 ListWordsOptions (com.ibm.watson.developer_cloud.text_to_speech.v1.model.ListWordsOptions)1