linux CentOS 的 mbrola 二进制文件

mbrola Binary for linux CentOS

我正在尝试在 CentOS 机器上使用 mbrola 二进制文件。我尝试了下页列出的许多二进制文件,但 none 正在运行。 http://www.tcts.fpms.ac.be/synthesis/mbrola/mbrcopybin.html

我遇到以下错误 -

Processing Utterance: com.sun.speech.freetts.ProcessException: Cannot start mbrola program:

我认为这很可能是 CentOS 不兼容的二进制文件。 你能告诉我是否有适用于 CentOS 的二进制文件吗?

代码-

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

        //System.setProperty("freetts.voices", "com.sun.speech.freetts.en.us.cmu_time_awb.AlanVoiceDirectory");
        System.setProperty("mbrola.base", Constants.mbrolaDiskPath);
        Voice voice;
        VoiceManager vm =  VoiceManager.getInstance();
        voice = vm.getVoice("mbrola_us1");
        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();
        }

    }

我从以下位置找到了 CentOs 的 Mbrola 二进制文件 - http://rpm.pbone.net/index.php3/stat/4/idpl/30430620/dir/centos_7/com/mbrola-301h-7.1.x86_64.rpm.html#content

要遵循的步骤 - 1.下载以下rpm ftp.gwdg.de mbrola-301h-7.1.x86_64.rpm

  1. 运行 > rpm -ivh mbrola-301h-7.1.x86_64.rpm。这会将 mbrola 二进制文件安装到 /usr/bin。

  2. 将 /usr/bin/mbrola 复制到您的首选位置并将 mbrola.base 设置为 - System.setProperty("mbrola.base", Constants.mbrolaDiskPath);

完成。