Neues Modul: Text2Speech

Begonnen von Tobias, 07 Januar 2014, 12:57:23

Vorheriges Thema - Nächstes Thema

hexenmeister

Zitat von: Otto123 am 04 Juli 2015, 22:59:56
Umlaute gehen bei mir.

Würde mich sehr interessieren, was bei mir anders ist.
Was kommt bei Dir, wenn Du locale aufrufst?

Meine:
alex@cubie ~ $ locale
LANG=de_DE.UTF-8
LANGUAGE=en_US.UTF-8
LC_CTYPE="de_DE.UTF-8"
LC_NUMERIC="de_DE.UTF-8"
LC_TIME="de_DE.UTF-8"
LC_COLLATE="de_DE.UTF-8"
LC_MONETARY="de_DE.UTF-8"
LC_MESSAGES=POSIX
LC_PAPER="de_DE.UTF-8"
LC_NAME="de_DE.UTF-8"
LC_ADDRESS="de_DE.UTF-8"
LC_TELEPHONE="de_DE.UTF-8"
LC_MEASUREMENT="de_DE.UTF-8"
LC_IDENTIFICATION="de_DE.UTF-8"
LC_ALL=

Otto123


LANG=de_DE.UTF-8
LANGUAGE=
LC_CTYPE="de_DE.UTF-8"
LC_NUMERIC="de_DE.UTF-8"
LC_TIME="de_DE.UTF-8"
LC_COLLATE="de_DE.UTF-8"
LC_MONETARY="de_DE.UTF-8"
LC_MESSAGES="de_DE.UTF-8"
LC_PAPER="de_DE.UTF-8"
LC_NAME="de_DE.UTF-8"
LC_ADDRESS="de_DE.UTF-8"
LC_TELEPHONE="de_DE.UTF-8"
LC_MEASUREMENT="de_DE.UTF-8"
LC_IDENTIFICATION="de_DE.UTF-8"
LC_ALL=

Bei Dir steht LANGUAGE=en_US.UTF-8  ::) bei mir nix
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

hexenmeister

Danke!
Werde ich morgen ausprobieren, obs Entfernen von LANGUAGE etwas bringt.

Otto123

Wobei ich noch sagen will, dass ich die ganz normal installierte Version von Text2Speech nutze.
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

WarLord

Hi

ich bastel zZ auch an text und mp3 nachdem ich das modul wie bei Hexenmeister beschrieben abgeändert habe,

Zitat von: hexenmeister am 04 Juli 2015, 15:06:09
Sound-Dateien gehen so leider gar nicht.
Ich habe die Zeile so abgeändert (Plus nach dem Punkt), dann geht alles (MP3, OGG, WAV) wieder:
@FileTplPc = ($text[$i] =~ /:(\w+.+[mp3|ogg|wav]):/g);

hab ich nun ein anderes Problem nach dem aufruf mit:
set MyTTS tts Hallo :alarm.mp3:

wird hallo gesagt und im nachhinen die mp3 mit falscher (zu langsam) Geschwindigkeit abgespielt

wenn ich nun drehe:
set MyTTS tts :alarm.mp3: Hallo

wird die mp3 mit richtiger Geschwindigkeit abgespielt und Hallo ist viel zu schnell. (Micky Mouse like)

ich hab etz bei meiner mp3 mal die bitrate an die im cache angepasst. Auf 32 Kbps vorher waren es 192 Kbps.

dann passt es.
Die frage woher kommt es?
Modul oder mplayer?
an sich ist es ja kein Problem nur bei liedern (bei ein par texten kommt danach ein kurzes Lied) ist die Qualität nicht wirklich gut
FHEM auf RaspberryPi B+
HMLAN Adapter + Div HM Komponenten

Tobias

Bugfix mit der regexp eingecheckt.

Probleme beim Abspielen liegen an mplayer, damit hat das Text2Speech Modul nix zu tun. Bit einem Verbose =4  kann man sich das mplayer kommando ausgeben lasen und manuell in der shell testen
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

carzl

Habe auch mal ne Frage zum mplayer - mit der Zeile
{ system("amixer -c 0 set PCM 100%&") }
lasse ich Fhem die Laustärke auf dem Raspi voll aufdrehen, die tatsächliche Lautstärke regle ich dann mit tts über volume.
Grundsätzlich funktioniert das zwar, aber fhem flext mir diese Zeile Tag für Tag wieder raus aus der cfg. Könnt Ihr mir auf die Sprünge helfen warum? Wie stellt ihr sicher, dass der mplayer nach einem Reboot die richtige Lautstärke hat?

Danke!
Fhem 6.0 auf RPi3: CUL, JeeLink, Hue Bridge v2, HarmonyHub, Fritzbox7590+7412, 6x FHT80b, 2x FS20S6A, FS20S4A, S300TH, 4x FritzDECT200/210, 4x TX29DTH, 4x Hue LightStripe, 5x Hue Smart Plug, Sonos mit 5x Play:1, Beam und Sub; 3x Lenovo Tab M10 mit FTUI

hexenmeister

Das ist hier eigentlich OT...

Ganz klar, dass die Zeile nach dem Abarbeiten aus Config verschwindet.
Verwende ein Notify. z.B.:
define setSoundVolume notify global:INITIALIZED { system("amixer -c 0 set PCM 100%&") }

carzl

sorry fürs OT... und danke für den Tip - wieder was dazugelernt  :)

Danke!
Fhem 6.0 auf RPi3: CUL, JeeLink, Hue Bridge v2, HarmonyHub, Fritzbox7590+7412, 6x FHT80b, 2x FS20S6A, FS20S4A, S300TH, 4x FritzDECT200/210, 4x TX29DTH, 4x Hue LightStripe, 5x Hue Smart Plug, Sonos mit 5x Play:1, Beam und Sub; 3x Lenovo Tab M10 mit FTUI

Seli

Hi,
nachdem vor einigen Wochen das direkte Abspielen der mp3-Dateien plötzlich nicht mehr funktioniert, habe ich alles auf Templates umgestellt. Seit dem Update vor ein paar Tagen geht das direkte Abspielen wieder, allerdings funktionieren nun die Templates nicht mehr. D.h. :ding-dong: wird als "Template ding dong" vorgelesen (das Template ist nach wie vor definiert). :ding-dong.mp3: funktioniert.

Grüße,
Seli
Raspberry Pi 3, FHEM 5.8
CUL868 V3 (FS20/IT): FHT80TF|PIRI|PIRI-2|TFK|S4A-2|ST|SU|S8|HMS 100 WD|IT-1500|GRR-3500
HomeMatic HMLAN_UART: HM-CC-RT-DN|HM-SEN-MDIR-O|HM-SEC-SC-2|HM-TC-IT-WM-W-EU|HM-LC-SW4-PCB 4|HM-WDS-OTH|HM-OU-LED16|HM-RC-4-3
JeeLink v3c, Rademacher duoFern, Philips Hue

fhemhurz

Ich möchte/kann/will nicht Mplayer zum Abspielen verwenden. Also habe ich TTS wie folgt definiert:

define MYTTS Text2Speech none
attr MYTTS TTS_UseMP3Wrap 1
attr MYTTS TTS_MplayerCall sudo /usr/bin/mpg123 -q
attr MYTTS verbose 4


In der Funktion Text2Speech_BuildMplayerCmdString($$) von 98_Text2Speech.pm werden, wenn "none" als $AlsaDevice definiert ist, einige (aber leider nicht alle) Mplayer-spezifischen Variablen für die Kommandozeilenparameter zurückgesetzt:

if($AlsaDevice eq "none") {
  $AlsaDevice = "";
  $mplayerAudioOpts = "";
}


Das hat zur Folge, dass der per TTS_MplayerCall definierte alternative Player, in meinem Falle mpg123, mit ungültigen Parametern aufgerufen wird und keine Soundausgabe erfolgt. Um nach einem Update 98_Text2Speech.pm nicht immer anpassen zu müssen, wäre es sehr hilfreich, wenn in einer zukünftigen Version alle Mplayer-spezifischen Variablen für die Kommandozeilenparameter zurückgesetzt würden:

if($AlsaDevice eq "none") {
  $AlsaDevice = "";
  $mplayerAudioOpts = "";
  $mplayerNoDebug = "";
  $mplayerOpts = "";
}


An dieser Stelle vielen Dank für dieses sehr nützliche Modul!
CUL 868, CUL 433, Signalduino, HUE, deCONZ, ESPEasy, Intertechno, Siro, FritzBox 7490, Raspberry Pi 1 2 3

ReVoLt112

Hallo zusammen,

FHEM läuft bei mir zuhause auf einen Homeserver (HP N54L) mit Debian 8 (Jessie). Leider hat Jessie keine ALSA Unterstützung mehr und setzt voll auf Pulseaudio.
Sound Über Bluetooth bekomme ich schon hin (pulseaudio-bluetooth), jedoch hat jemand hier bereits wertvolle Tipps für mich um das Modul TTS ans laufen zu bekommen?

Grüße

Hollo

Zitat von: ReVoLt112 am 18 Juli 2015, 14:56:30
...Leider hat Jessie keine ALSA Unterstützung mehr und setzt voll auf Pulseaudio...
Das wäre mir neu. Auch wenn nun pulseaudio zusätzlich standardmäßig installiert ist, ist doch alsa weiterhin da.
Im Zweifel remove einfach mal pulseaudio, dann sollte es wie gehabt funktionieren.
FHEM 6.x auf RPi 3B Buster
Protokolle: Homematic, Z-Wave, MQTT, Modbus
Temp/Feuchte: JeeLink-Clone und LGW mit LaCrosse/IT
sonstiges: Linux-Server, Dreambox, "RSS-Tablet"

Kuzl

Hallo Revolt,

du musst fhem zu den Pulse-Audio-Nutzern hinzufügen und außerdem Pulse-Audio als Systemweiten Dienst starten. Ansonsten blockiert nämlich der eingeloggte Nutzer das Device.

Viele Grüße,
Kuzl

Pfriemler

Moinsen,

vor gefühlt hunderte Beiträgen schrieb ich über Probleme mit Blockaden durch Text-2-Speech. Aufm Raspi 2 läuft die unverändert übernommene Installation seit vielen Wochen störungsfrei.

Jetzt gibt es aber was neues:
Seit kurzem fällt mir ein "Nachlaut" bei der Ausgabe auf, im Stil: "Alarmanlage ist jetzt aus. ... A"

Ist das schon bekannt oder gibt es eine Idee zum Weiterforschen?
"Änd're nie in fhem.cfg, denn das tut hier allen weh!" *** Wheezy@Raspi(3), HMWLAN+HMUART, CUL868(SlowRF) für FHT+KS+FS20, miniCUL433, Rademacher DuoFern *** "... kaum macht man es richtig, funktioniert es ..."