diff --git a/fhem/CHANGED b/fhem/CHANGED index f7cb60cef..94eb30839 100644 --- a/fhem/CHANGED +++ b/fhem/CHANGED @@ -1,5 +1,8 @@ # Add changes at the top of the list. Keep it in ASCII, and 80-char wide. # Do not insert empty lines here, update check depends on it. + - update: 98_Text2Speech: some small improvements + special Audiodevice "none" is now "default due + collision with new Server mode - update: 98_DOIFtools: Improved DOIF-Operand derivation from an event line if the event monitor is opend in DOIFs detail view. Improved dialog to insert the selected operand in a definition diff --git a/fhem/FHEM/98_Text2Speech.pm b/fhem/FHEM/98_Text2Speech.pm index c9012c0b1..4c6009740 100644 --- a/fhem/FHEM/98_Text2Speech.pm +++ b/fhem/FHEM/98_Text2Speech.pm @@ -337,9 +337,9 @@ sub Text2Speech_OpenDev($) { if($hash->{SSL}) { eval "use IO::Socket::SSL"; Log3 $name, 1, $@ if($@); - $conn = IO::Socket::SSL->new(PeerAddr => "$dev") if(!$@); + $conn = IO::Socket::SSL->new(PeerAddr => "$dev", MultiHomed => 1) if(!$@); } else { - $conn = IO::Socket::INET->new(PeerAddr => $dev); + $conn = IO::Socket::INET->new(PeerAddr => $dev, MultiHomed => 1); } if(!$conn) { @@ -636,11 +636,19 @@ sub Text2Speech_BuildMplayerCmdString($$) { } my $AlsaDevice = $hash->{ALSADEVICE}; - if($AlsaDevice eq "none") { + if($AlsaDevice eq "default") { $AlsaDevice = ""; $mplayerAudioOpts = ""; } + # anstatt mplayer wird ein anderer Player verwendet + if ($TTS_MplayerCall !~ m/mplayer/) { + $AlsaDevice = ""; + $mplayerAudioOpts = ""; + $mplayerNoDebug = ""; + $mplayerOpts = ""; + } + my $NoDebug = $mplayerNoDebug; $NoDebug = "" if($verbose >= 5); @@ -652,6 +660,10 @@ sub Text2Speech_BuildMplayerCmdString($$) { return $cmd; } +##################################### +# Benutzt um Infos aus dem Blockingprozess +# in die Readings zu schreiben +##################################### sub Text2Speech_readingsSingleUpdateByName($$$) { my ($devName, $readingName, $readingVal) = @_; my $hash = $defs{$devName}; @@ -1019,14 +1031,14 @@ sub Text2Speech_WriteStats($$$$){ apt-get install mplayer
The given alsadevice has to be configured in /etc/asound.conf

- Special AlsaDevice: none
- The internal mplayer command will be without any audio directive if the given alsadevice is none. + Special AlsaDevice: default
+ The internal mplayer command will be without any audio directive if the given alsadevice is default. In this case mplayer is using the standard audiodevice.

Example:
define MyTTS Text2Speech hw=0.0
- define MyTTS Text2Speech none + define MyTTS Text2Speech default

@@ -1236,14 +1248,14 @@ sub Text2Speech_WriteStats($$$$){ apt-get install mplayer
Das angegebene Alsadevice ist in der /etc/asound.conf zu konfigurieren.

- Special AlsaDevice: none
- Ist als Alsa-Device none angegeben, so wird mplayer ohne eine Audiodevice Angabe aufgerufen. + Special AlsaDevice: default
+ Ist als Alsa-Device default angegeben, so wird mplayer ohne eine Audiodevice Angabe aufgerufen. Dementsprechend verwendet mplayer das Standard Audio Ausgabedevice.

Beispiel:
define MyTTS Text2Speech hw=0.0
- define MyTTS Text2Speech none + define MyTTS Text2Speech default