Ich habe dieses Projekt erstellt, um mein Smart Home eine normale Sprachsynthese zu bieten. Außerdem eine normale Sprachsynthese zur Verfügung stellen. Bereits bereit -hergestellte Lösungen passten nicht zu mir und es wurde beschlossen, ihr Fahrrad zu erfinden. Die Silero -Modelle wurden als Grundlage angenommen.
Ich ließ mich von dem Silero-Ha-Http-TTS-Projekt aus Gromina inspirieren. Er war feucht und ich beschloss, alles im Auge, mit Einstellungen und bereitgestellten Behältern zu tun.
Folgen Sie dem Befehl:
docker run -p 9898:9898 -m 1g -e NUMBER_OF_THREADS=4 -e LANGUAGE=ru -e SAMPLE_RATE=48000 --name tts_silero -d navatusein/silero-tts-service
Erstellen Sie eine docker-compose.yml Datei und übertragen Sie den Inhalt darauf:
version : ' 3 '
services :
silero-tts-service :
image : " navatusein/silero-tts-service "
container_name : " silero-tts-service "
deploy :
resources :
limits :
memory : 1G
ports :
- " 9898:9898 "
restart : unless-stopped
environment :
NUMBER_OF_THREADS : 4
LANGUAGE : ru
SAMPLE_RATE : 48000Folgen Sie dem Befehl:
docker-compose up
Alle Servereinstellungen werden beim Starten als Docker -Umgebungsparameter auf den Container übertragen.
Die Anzahl der Kerne für die NUMBER_OF_THREADS :
NUMBER_OF_THREADS : 4 Die Anzahl der Ströme von 1 zur Anzahl der Serverprozessorkerne.
Standardmäßig: 4
LANGUAGE :
LANGUAGE : ru Standardmäßig: ru
Unterstützte Sprachen mit ihnen zur Verfügung stehenden Stimmen:
| Sprache | Sprachcode | Unterstützte Stimmen |
|---|---|---|
| Russisch | ru | aidar baya kseniya xenia eugene random |
| ukrainisch | uk | mykyta random |
SAMPLE_RATE Abtastfrequenz:
SAMPLE_RATE : 48000 Mögliche Werte: 48000 , 24000 , 8000
Standardmäßig: 48000
Sox SOX_PARAM -Dienstprogrammparameter:
SOX_PARAM : " reverb 50 50 10 " # Добавляет эхо на речьStandardmäßig: leer
Die Ausgabedatei geht durch das SOX -Dienstprogramm. Sie kann die Parameter vermitteln, um die Auswirkungen auf die Rede zu erheben: Erhöhen Sie das Timbre, fügen Sie ein Echo hinzu, schalten Sie den Bassschub ein.
Link zur SOX -Dienstprogrammdokumentation: https://linux.die.net/man/1/sox
Korrektur des Betrugs am Ende des Ausdrucks HA_FIX :
HA_FIX : True Kann Werte nehmen: True False
Standardmäßig: False
Korrigiert einen Fehler, bei dem der Home -Assistent nicht über das Ende des Ausdrucks einverstanden ist. Fügt dem Ende der Sprache eine Sekunde der Stille hinzu.
Fügen Sie in der Datei configuration.yaml einen Datensatz hinzu:
tts :
- platform : marytts
host : localhost # Адрес сервера
port : 9898
codec : WAVE_FILE
voice : xenia # Имя голоса который хотите использовать.
language : ru # Не используется. Настройки языка указываются в настройках сервера. /process an.
Der Dienst kann Zahlen in Text übersetzen.
Beispiel:
Текст с цифрой 1.
Normalisierungsbeispiel 1
Der Service kann Substantive nach Zahlen verbeugen.
Um dies zu tun, nehmen Sie das Wort, das nach der Nummer überzeugt werden muss, <d>слово</d> -Tag.
Beispiel:
У меня было 15 <d>яблоко</d>.
Row -Beispiel 1
Wenn Sie ein paar Wörter überzeugen müssen, muss jeder in das Tag <d>слово</d> getrennt aufgenommen werden.
Мне осталось работать 15 <d>рабочий</d> <d>день</d>.
Lange Beispiel 2
Der Service kann Translite aussprechen.
Beispiel:
Lorem ipsum dolor sit amet.
Translite Beispiel 1
Mit SSML können Sie die Pausen und die synthetisierte Sprache steuern.
<p>
Когда я просыпаюсь, <prosody rate="x-slow">я говорю довольно медленно</prosody>.
Потом я начинаю говорить своим обычным голосом,
<prosody pitch="x-high"> а могу говорить тоном выше </prosody>,
или <prosody pitch="x-low">наоборот, ниже</prosody>.
Потом, если повезет – <prosody rate="fast">я могу говорить и довольно быстро.</prosody>
А еще я умею делать паузы любой длины, например две секунды <break time="2000ms"/>.
<p>
Также я умею делать паузы между параграфами.
</p>
<p>
<s>И также я умею делать паузы между предложениями</s>
<s>Вот например как сейчас</s>
</p>
</p>
SSML Beispiel 1
GET /clear_cache - reinigt den Cache bereits synthetisierter Nachrichten.GET /settings - Gibt die aktuellen Servereinstellungen zurück.GET /voices - Gibt eine Liste der verfügbaren Stimmen für die ausgewählte Sprache zurück.GET /process?VOICE=[Выбраный голос]&INPUT_TEXT=[Текст для обработки] - Gibt eine Audiodatei mit synthetisierter Sprache zurück.POST /process im Körper von VOICE=[Выбраный голос] , INPUT_TEXT=[Текст для обработки] - Gibt eine Audiodatei mit synthetisierter Sprache zurück. Client.conf bearbeiten
nano /etc/pulse/client.conf
Fügen Sie Folgendes hinzu:
default-server = unix:/usr/share/hassio/audio/external/pulse.sock
autospawn = no

Starten Sie Pulseaudio neu.
pulseaudio -k && pulseaudio --start
Wir haben eine Addid -Version der aktuellen Version: 2.1.1 und nur diese Version eingestellt. Mopidy 2.2.0 NICHT - es ist kaputt. Lesen Sie mehr über die zerbrochene Version von Mopidy 2.2.0 Lesen Sie hier.
Zur Konfiguration hinzufügen.yaml
media_player :
- platform : mpd
name : " MPD Mopidy "
host : localhost
port : 6600Wir starten den Heimassistenten vollständig, um Debian selbst neu zu starten.

Verbinden Sie die Bluetooth -Spalte mit Debian, KB, J über GUI oder über die Konsole mit dem Befehl bluetoothCtl
Schalten Sie Bluetooth ein:
power on
Scan -Geräte beginnen:
scan on
Als wir unser Gerät sahen, paaren wir uns mit dem Gerät:
pair [mac адрес девайса]
Wir stellen eine Verbindung zum Gerät her:
connect [mac адрес девайса]
Fügen Sie das Gerät zu Trusted hinzu:
trust [mac адрес девайса]
Wie Bluetooth -Geräte in zwei Addons von Rhassspy Assistant und Mopidy hinzugefügt werden, müssen Sie die Quelle des Klangs des Bluetooth -Geräts angeben:


Wir überprüfen die Leistung:

Code:
service : tts.marytts_say
data :
entity_id : media_player.mpd_mopidy
message : >-
Спустя 15 лет жизнь некогда бороздившего космические просторы Жана-Люка
Пикара