German voice prompts

Status
Not open for further replies.

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!
 
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!
 
Thank you!
I will try the way over FusionPBX support and will update this thread if I have a solution.
 
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
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
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:
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.
 
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

  • Like
Reactions: grinsebert
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
 
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'])
 
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.
 
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.
 
Status
Not open for further replies.