Голос mbrola создает исключение ProcessException "Нет аудиоданных" в Linux CentOS

Я использую голос mbrola (us1) на CentOS. Я пытаюсь сохранить аудио как файл WAV. Но в строке (жирным шрифтом ниже) - voice.speak() выдается исключение ProcessException "Аудио не читается". Он отлично работает, когда я запускаю его в среде Windows или даже в Linux с голосом Kevin16. Пробовал гуглить, почему команда voice.speak () ведет себя таким образом для голосов mbrola, но не может ничего найти. Ниже код, какая-нибудь подсказка?

public static void createAudioFile(String text, String fileName) {
    AudioPlayer audioPlayer = null;

    System.setProperty("mbrola.base", Constants.mbrolaDiskPath);
    Voice voice;
    VoiceManager vm =  VoiceManager.getInstance();
    voice = vm.getVoice("mbrola_us1");
    //voice = vm.getVoice("kevin16");
    voice.allocate();

    try{
        String directoryPath = audioDir+fileName;
        audioPlayer = new SingleFileAudioPlayer(directoryPath,Type.WAVE);
        voice.setAudioPlayer(audioPlayer);
        **voice.speak(text);**
        voice.deallocate();
        audioPlayer.close();

    }
    catch(Exception e){
        e.printStackTrace();
    }

}

0 ответов

Другие вопросы по тегам