German voice prompts

grinsebert

New Member
Dec 8, 2024
5
1
3
34
Hi,

I´m new to FusionPBX and maybe I´m only blind.
I´m looking for german voice prompts for about two weeks now. I can´t find them anywhere.
In old posts I saw, that there were prompts on this source in past: https://files.freeswitch.org/releases/sounds/
But they aren´t there anymore...

Does anyone has a hint for me?

PS: I don´t want to spend money to westany ;-)

Thank you!
 

MrObscured

New Member
Jan 21, 2022
5
4
2
39
Hi,

Looks like you are out of luck.
They are indeed deleted and the link on freeswitches site to Xpirio is broken.
This likely meaning they are no longer available for some reason.

However, if you are a member of FusionPBX you can find instructions in the member documention on how to install german sound files (Serena) and get the files from them directly.

If not a member I guess you can try and contact FusionPBX directly and simply ask them if they are willing and feel kind enough to give you the link for downloading it.

Best of luck!
 

grinsebert

New Member
Dec 8, 2024
5
1
3
34
Thank you!
I will try the way over FusionPBX support and will update this thread if I have a solution.
 

markjcrane

Active Member
Staff member
Jul 22, 2018
571
203
43
50
I made the voice prompts send me a reply in the ticket you created and it will remind me to send them to you.
 
  • Like
Reactions: MrObscured

grinsebert

New Member
Dec 8, 2024
5
1
3
34
I made the voice prompts send me a reply in the ticket you created and it will remind me to send them to you.
Maybe it´s possible to share them official over github or sth. like this?
It seem´s that I´m not the only one who´s looking for german voice prompts :)
 
  • Like
Reactions: astrakid

KNERD

New Member
Jun 29, 2022
17
1
3
37
No reply?

If anyone is interested, I came across a Python script which someone shared which uses one of those AI services to translate all the sound prompts into another language. They took the time to type in all the sound files words by hand. Mind you this was targeted towards Asterisk, and not Fusion, but I am sure most of the prompts are about the same. So what it does is use an API to send all the text prompts to some service (I forgot which one), and turns them into TTS files in a language of your choice.
 
Last edited:

astrakid

New Member
Apr 25, 2018
23
0
1
46
hi, i used that script as well, but not all needed prompts are translated. i had some gaps. but i had no time to get into it more detailed.
 

KNERD

New Member
Jun 29, 2022
17
1
3
37
You used this one for Eleven Labs?


Python:
import csv
import requests
import subprocess
import sys

CHUNK_SIZE = 1024

url = "https://api.elevenlabs.io/v1/text-to-speech/<CUSTOM_VOICE>"

headers = {
"Accept": "audio/mpeg",
"Content-Type": "application/json",
"xi-api-key": "<YOUR_KEY>"
}

with open('prompts.txt') as f:
reader = csv.reader(f)
for row in reader:
filename = row[0]
text = row[1]

data = {
"text": text,
"model_id": "eleven_multilingual_v2",
"voice_settings": {
"stability": 1.0,
"similarity_boost": 1.0
}
}

response = requests.post(url, json=data, headers=headers)

with open(filename + '.mp3', 'wb') as f:
for chunk in response.iter_content(chunk_size=CHUNK_SIZE):
if chunk:
f.write(chunk)

subprocess.call(['ffmpeg', '-i', filename + '.mp3', '-c:a', 'pcm_s16le',
'-ar', '8000', filename + '.wav'])
 

Attachments

  • prompts.txt
    17.4 KB · Views: 7
  • Like
Reactions: grinsebert

astrakid

New Member
Apr 25, 2018
23
0
1
46
hi,
can you post your script with correct indentations? i think i got them corrected, but to be sure...
and the prompts-file is not accepted, there are always characters leading to an error. can you upload your prompts file zipped, so that the original encoding is saved?
regards,
andre
 

KNERD

New Member
Jun 29, 2022
17
1
3
37
Python:
import csv
import requests
import subprocess
import sys

CHUNK_SIZE = 1024

url = "https://api.elevenlabs.io/v1/text-to-speech/<CUSTOM_VOICE>"

headers = {
    "Accept": "audio/mpeg",
    "Content-Type": "application/json",
    "xi-api-key": "<YOUR_KEY>"
}

with open('prompts.txt') as f:
    reader = csv.reader(f)
    for row in reader:
        filename = row[0]
        text = row[1]

        data = {
            "text": text,
            "model_id": "eleven_multilingual_v2",
            "voice_settings": {
                "stability": 1.0,
                "similarity_boost": 1.0
            }
        }

        response = requests.post(url, json=data, headers=headers)

        with open(filename + '.mp3', 'wb') as f:
            for chunk in response.iter_content(chunk_size=CHUNK_SIZE):
                if chunk:
                    f.write(chunk)

        subprocess.call(['ffmpeg', '-i', filename + '.mp3', '-c:a', 'pcm_s16le',
                         '-ar', '8000', filename + '.wav'])
 

astrakid

New Member
Apr 25, 2018
23
0
1
46
cool thanks - i was on a quite good way, but one mistake was there, so your clarification helped.
now i need a clean prompts.txt. would be great if you could provide that file as compressed archive.
 

KNERD

New Member
Jun 29, 2022
17
1
3
37
For an update, using ChatGTP 4o(API), I was able to tell it to translate the words.

Here is the prompt I used:

Can you translate/change the English words in the file to German , then make a new file for me with the translated words?
On each line there is word or sentence, then a comma, then a sentence, then a second comma to indicate the end of the line. I only need the sentence after the first comma on each line to be translated.

The 4o context window is quite limited, thus is only did about half of them. I am sure using o1 or a local LLM you could do the whole document.

Here is a sample:
agent-alreadyon, Dieser Agent ist bereits angemeldet. Bitte geben Sie Ihre Agentennummer gefolgt von der Raute-Taste ein.,
agent-incorrect, Anmeldung fehlgeschlagen. Bitte geben Sie Ihre Agentennummer gefolgt von der Raute-Taste ein.,
agent-loggedoff, Agent abgemeldet.,
agent-loginok, Agent angemeldet.,
agent-newlocation, Bitte geben Sie eine neue Durchwahl gefolgt von der Raute-Taste ein.,
agent-pass, Bitte geben Sie Ihr Passwort gefolgt von der Raute-Taste ein.,
agent-user, Agentenanmeldung. Bitte geben Sie Ihre Agentennummer gefolgt von der Raute-Taste ein.,
auth-incorrect, Passwort falsch. Bitte geben Sie Ihr Passwort gefolgt von der Raute-Taste ein.,
auth-thankyou, Danke.,
beep, dies ist ein einfacher Piepton,
beeperr, dies ist ein Fehlerpiepton,
conf-adminmenu, Bitte drücken Sie 1, um sich stummzuschalten oder die Stummschaltung aufzuheben, 2, um die Konferenz zu sperren oder zu entsperren, 3, um den letzten Benutzer zu entfernen, 4 oder 6, um die Konferenzlautstärke zu verringern oder zu erhöhen, 7 oder 9, um Ihre Lautstärke zu verringern oder zu erhöhen, oder 8, um zu beenden.,

Remember, this was for Asterisk.

Maybe a script can be done to feed all the recordings from FusionPBX to a STT to get a full text transcription.