Come installare più voci su Espeak?


14

Potresti aiutarmi per favore a installare le voci da qui , ho letto il manuale Ma non so come si può 'Get the en1'.


Ho visto il modo di suonare con espeak con i post-filtri sox se vuoi solo modificare una voce, usare swift dal cepstral per usare più voci dal suono umano o collegare le voci cepstral al festival per usarle con gli IVR. Tuttavia non ho visto un modo per collegare più voci umane per parlare.
RobotHumans,

Risposte:


11
  1. Scarica: http://www.tcts.fpms.ac.be/synthesis/mbrola/bin/pclinux/mbr301h.zip
  2. Copia il testo da eseguire nel terminale riga per riga:

    cd Downloads
    unzip mbr301h.zip
    sudo cp mbrola-linux-i386 /usr/bin/mbrola
    
  3. Scarica: http://www.tcts.fpms.ac.be/synthesis/mbrola/dba/en1/en1-980910.zip

  4. Copia il testo da eseguire nel terminale riga per riga:

    unzip en1-980910.zip
    cp en1/en1 /usr/share/mbrola/en1
    
  5. Ora esegui espeak, con le opzioni

    espeak -v mb-en1 "Hello world"
    
  6. Bello, ma sembra che stia leggendo troppo in fretta, prova:

    espeak -v mb-en1 -s 120 "Hello world"
    

Grazie mille, conosci qualche altro modo per migliorare la qualità della voce e la pronuncia?
Daniyal,

1
@Daniyal: puoi generare fonemi espeaked elaborarli tramite mbrola : espeak -v mb-en1 -s 120 "Hello world" --pho|mbrola /usr/share/mbrola/en1 output.wav(nota l'aggiunta --phodell'opzione a espeak).
Skippy le Grand Gourou,

@SkippyleGrandGourou No, non posso, ho ricevuto questo errore: FATAL ERROR : cannot find file /usr/share/mbrola/en1 ! mbrola: FATAL ERROR : cannot find file /usr/share/mbrola/voices/en1 ! mbrowrap error: mbrola exited with status 216 mbrola voice not found non so cosa vuoi, ma forse puoi usarloespeak -v mb-us2 -s 120 "Hello world" -w output.wav --pho
Daniyal

@Daniyal: significa che non hai la en1voce né in /usr/share/mbrola(cosa che dovresti seguire se segui il passaggio 4 della risposta di Mateo) né in /usr/share/mbrola/voices. O risolvilo (creando la directory manualmente e copiando le voci lì) o sostituisci /usr/share/mbrola/en1il percorso con una voce mbrola già installata. Ne vale davvero la pena, la voce è molto più fluida mbrola(anche se non ancora perfetta).
Skippy le Grand Gourou,

1
Per me è un problema, ma sono riuscito a trovarlo sulla macchina del ritorno: web.archive.org/web/20180627172600/http://www.tcts.fpms.ac.be/…
Faissaloo,

1

Ecco una copia della risposta di Mateo come comando singolo e pulizia.

Avrai bisogno dei sudoprivilegi per copiare /usr/bin/.


mkdir tmp_mbrola
cd tmp_mbrola
wget http://www.tcts.fpms.ac.be/synthesis/mbrola/bin/pclinux/mbr301h.zip
unzip mbr301h.zip
sudo cp mbrola-linux-i386 /usr/bin/mbrola
wget http://www.tcts.fpms.ac.be/synthesis/mbrola/dba/en1/en1-980910.zip
unzip en1-980910.zip
sudo mkdir /usr/share/mbrola
sudo cp en1/en1 /usr/share/mbrola/en1
cd ..
sudo rm -Rf ./tmp_mbrola/
espeak -v mb-en1 -s 160 "Hello world"

Ricevo questo errore quando viene letto il testo ma sembra funzionare:

*** Error in `mbrola': free(): invalid pointer: 0x08af1dd8 ***

Se qualcuno sa cosa sta causando questo errore, per favore fatemi sapere nei commenti.


Ottengo lo stesso errore, immagino sia il modo in cui è installato, vabbè.
TheCodingKlam
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.