Bug 183359

Summary: ktts is dropping text while speaking
Product: kttsd Reporter: Ritesh Raj Sarraf <kde-bugs>
Component: generalAssignee: Jeremy Whiting <jpwhiting>
Status: RESOLVED UNMAINTAINED    
Severity: normal CC: abc.mikey, jonathan.schluessler, jpwhiting, personman_145, sitter
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Debian testing   
OS: Linux   
Latest Commit: Version Fixed In:

Description Ritesh Raj Sarraf 2009-02-05 20:57:05 UTC
Version:            (using KDE 4.2.0)
OS:                Linux
Installed from:    Debian testing/unstable Packages

I'm using kttsd from KDE 4.2

ktts is dropping audio a lot. It would speak a sentence and leave it halfway. I can't think of a better way describing the problem. :-(

In .xsession-errors, I see a lot of these messages:

kttsd(5037) Speaker::doUtterances:   State:  "usStretched" , "psSynthing" , "jsSpeaking"  Type:  "utText"  Text:  "Full text and rfc822 format available."                                                                                  
kttsd(5037) Speaker::doUtterances:   State:  "usSynthing" , "psSynthing" , "jsSpeaking"  Type:  "utText"  Text:  "Acknowledgement sent to "Matthias Urlichs" <smurf@smurf.noris.de>:"                                                       
kttsd(5037) Speaker::doUtterances:   State:  "usWaitingSynth" , "psSynthing" , "jsSpeaking"  Type:  "utText"  Text:  "Extra info received and forwarded to list."                                                                           
kttsd(5037) Speaker::doUtterances: Speaker::doUtterances: state usStretched                                           
kttsd(5037) Speaker::createPlayerObject: Speaker::createPlayerObject: Loading  "libkttsd_phononplugin"                
CLIENT: Task: Task::done()                                                                                            
CLIENT: Task: emitting finished                                                                                       
kttsd(5037) KSpeech::announceEvent: KSpeech:: "slotMarker" : emitting DBUS signal  "marker"  with appId  ":1.107"  job number  3  marker type  0  and data  "41"                                                                            
kttsd(5037) Speaker::doUtterances: Speaker::doUtterances: state usSynthing                                            
kttsd(5037) Speaker::doUtterances: Speaker::doUtterances: state usWaitingSynth                                        
kttsd(5037) Speaker::doUtterances: Speaker::doUtterances: queue dump:                                                 
kttsd(5037) Speaker::doUtterances:   State:  "usPlaying" , "psSynthing" , "jsSpeaking"  Type:  "utText"  Text:  "Full text and rfc822 format available."                                                                                    
kttsd(5037) Speaker::doUtterances:   State:  "usSynthing" , "psSynthing" , "jsSpeaking"  Type:  "utText"  Text:  "Acknowledgement sent to "Matthias Urlichs" <smurf@smurf.noris.de>:"                                                       
kttsd(5037) Speaker::doUtterances:   State:  "usWaitingSynth" , "psSynthing" , "jsSpeaking"  Type:  "utText"  Text:  "Extra info received and forwarded to list."                                                                           
kttsd(5037) Speaker::doUtterances: Speaker::doUtterances: state usPlaying                                             
kttsd(5037) Speaker::doUtterances: Speaker::doUtterances: state usSynthing                                            
kttsd(5037) Speaker::doUtterances: Speaker::doUtterances: state usWaitingSynth                                        
kttsd(5037) Speaker::doUtterances: Speaker::doUtterances: queue dump:                                                 
kttsd(5037) Speaker::doUtterances:   State:  "usPlaying" , "psFinished" , "jsSpeaking"  Type:  "utText"  Text:  "Full text and rfc822 format available."                                                                                    
kttsd(5037) Speaker::doUtterances:   State:  "usSynthing" , "psFinished" , "jsSpeaking"  Type:  "utText"  Text:  "Acknowledgement sent to "Matthias Urlichs" <smurf@smurf.noris.de>:"                                                       
kttsd(5037) Speaker::doUtterances:   State:  "usWaitingSynth" , "psFinished" , "jsSpeaking"  Type:  "utText"  Text:  "Extra info received and forwarded to list."                                                                           
kttsd(5037) Speaker::doUtterances: Speaker::doUtterances: state usPlaying                                             
kttsd(5037) Speaker::doUtterances: Speaker::doUtterances: state usSynthing                                            
kttsd(5037) Speaker::doUtterances: Speaker::doUtterances: synthesized filename:  "/tmp/kde-rrs/kttsd-vC5037.wav"      
kttsd(5037) Speaker::doUtterances: Speaker::doUtterances: state usWaitingSynth                                        
kttsd(5037) Speaker::makeSuggestedFilename: Speaker::makeSuggestedFilename: Suggesting filename:  "/tmp/kde-rrs/kttsd-vI5037.wav"                                                                                                           
kttsd(5037) Speaker::doUtterances: Speaker::doUtterances: queue dump:                                                 
kttsd(5037) Speaker::doUtterances:   State:  "usPlaying" , "psSynthing" , "jsSpeaking"  Type:  "utText"  Text:  "Full text and rfc822 format available."                                                                                    
kttsd(5037) Speaker::doUtterances:   State:  "usSynthed" , "psSynthing" , "jsSpeaking"  Type:  "utText"  Text:  "Acknowledgement sent to "Matthias Urlichs" <smurf@smurf.noris.de>:"                                                        
kttsd(5037) Speaker::doUtterances:   State:  "usSynthing" , "psSynthing" , "jsSpeaking"  Type:  "utText"  Text:  "Extra info received and forwarded to list."                                                                               
kttsd(5037) Speaker::doUtterances: Speaker::doUtterances: state usPlaying
kttsd(5037) Speaker::doUtterances: Speaker::doUtterances: state usSynthed
kttsd(5037) Speaker::doUtterances: Speaker::doUtterances: state usSynthing
kttsd(5037) Speaker::doUtterances: Speaker::doUtterances: queue dump:
kttsd(5037) Speaker::doUtterances:   State:  "usPlaying" , "psSynthing" , "jsSpeaking"  Type:  "utText"  Text:  "Fulltext and rfc822 format available."
kttsd(5037) Speaker::doUtterances:   State:  "usStretched" , "psSynthing" , "jsSpeaking"  Type:  "utText"  Text:  "Acknowledgement sent to "Matthias Urlichs" <smurf@smurf.noris.de>:"
kttsd(5037) Speaker::doUtterances:   State:  "usSynthing" , "psSynthing" , "jsSpeaking"  Type:  "utText"  Text:  "Extra info received and forwarded to list."
kttsd(5037) Speaker::doUtterances:   State:  "usWaitingSynth" , "psSynthing" , "jsSpeaking"  Type:  "utText"  Text:  "Copy sent to Matthias Urlichs <smurf@debian.org>."
kttsd(5037) Speaker::doUtterances: Speaker::doUtterances: state usPlaying
kttsd(5037) Speaker::doUtterances: Speaker::doUtterances: state usStretched
kttsd(5037) Speaker::doUtterances: Speaker::doUtterances: state usSynthing
kttsd(5037) Speaker::doUtterances: Speaker::doUtterances: state usWaitingSynth
kttsd(5037) KSpeech::announceEvent: KSpeech:: "slotMarker" : emitting DBUS signal  "marker"  with appId  ":1.107"  job number  3  marker type  1  and data  "41"
kttsd(5037) Speaker::doUtterances: Speaker::doUtterances: queue dump:
kttsd(5037) Speaker::doUtterances:   State:  "usFinished" , "psSynthing" , "jsSpeaking"  Type:  "utText"  Text:  "Full text and rfc822 format available."
kttsd(5037) Speaker::doUtterances:   State:  "usStretched" , "psSynthing" , "jsSpeaking"  Type:  "utText"  Text:  "Acknowledgement sent to "Matthias Urlichs" <smurf@smurf.noris.de>:"
kttsd(5037) Speaker::doUtterances:   State:  "usSynthing" , "psSynthing" , "jsSpeaking"  Type:  "utText"  Text:  "Extra info received and forwarded to list."
kttsd(5037) Speaker::doUtterances:   State:  "usWaitingSynth" , "psSynthing" , "jsSpeaking"  Type:  "utText"  Text:  "Copy sent to Matthias Urlichs <smurf@debian.org>."
Comment 1 Jonathan 2009-02-17 00:29:10 UTC
Duplicate of Bug 180662.
Comment 2 Jeremy Whiting 2009-06-11 23:49:25 UTC
Do you get the same results if you set the audio to use alsa output?  I've seen many issues like this when using phonon/xine.
Comment 3 Harald Sitter 2009-06-12 17:11:13 UTC
This bug was also reported at https://bugs.launchpad.net/kdeaccessibility/+bug/353910

The reports are conflicting though, while the initial reporter states that changing to ALSA resolved the issue, another commenter stated that it didn't help.

Also, if it is the combination phonon+xine that is causing this issue, maybe changing to gstreamer would help, otherwise it might be a general phonon issue, or what ktts sends to phonon (granted I don't know anything about the inner workings of ktts though :)).
Comment 4 Ritesh Raj Sarraf 2009-06-12 18:23:24 UTC
In my case, things are like this:

I have PulseAudio configured to run. In alsa, I have defined to use pulse as the audio device.
AFAIK, pulseaudio is being used by Phonon.

So for me the results were the same. There was heavy dropping.
Comment 5 Andy 2009-06-14 21:57:11 UTC
I have this problem as well. I'm running KDE 4.3 Beta 2 with Karmic alpha 2.
Comment 6 mikey 2009-11-16 20:55:40 UTC
I'm also experiencing the same issue with ALSA or any other output also dropping speech. It doesn't matter which speech synthesiser is used but I can confirm that for me switching from xine to gstreamer 'fixes' the behaviour. So there's a conflict between kttsd and xine.

AMD64 (64bit Gentoo)
xine-lib-1.1.16.3-r1
kttsd-4.3.1
Comment 7 mikey 2009-11-16 21:10:31 UTC
I'd just like to add that I've tried a multi-sentence bit of text now with gstreamer and there is a seperate(?) bug which instead of cutting off the end of the text it just stops at the end of the sentence and indicates that it is still speaking. If you click on next sentence by hand it will move on and speak this then stop before any subsequent sentences. The same applies that changing other settings doesn't change the behaviour.
Comment 8 mikey 2009-11-16 21:28:42 UTC
Ignore comment 7 it seems to have just been a problem with switching from xine to gstreamer that a restart fixed. However the xine issue remains.
Comment 9 Andrew Crouthamel 2018-09-04 14:24:43 UTC
Hello! Sorry to be the bearer of bad news, but this project has been unmaintained for many years so I am closing this bug.