<div dir="ltr"><div class="gmail_default" style="font-family:monospace">Hi Gustav,</div><div class="gmail_default" style="font-family:monospace"><br></div><div class="gmail_default" style="font-family:monospace">That looks a lot more interesting. So just to confirm the mary had a lamb lines sound fine on the speaker/headphones but the larger text from pdf via okular still sounds strange or as if there are multiple things being said at the same time?</div><div class="gmail_default" style="font-family:monospace"><br></div><div class="gmail_default" style="font-family:monospace">I don't see much difference between the 2, I tried sending longer text through okular here and got some weird different accent somehow, but see similar things in espeak.log about it selecting en+0 like you have there. I think it's possible espeak is switching languages for some reason, maybe when it gets non utf8 text like the character between the copyright symbol "Authors ... Contributions" but I tried having spd-say read just that and it read it fine.</div><div class="gmail_default" style="font-family:monospace"><br></div><div class="gmail_default" style="font-family:monospace">I then put a whole block of text from your log like this into a testfile.txt and use this to read:</div><div class="gmail_default" style="font-family:monospace"><br></div><div class="gmail_default" style="font-family:monospace">testfile.txt contents:</div><div class="gmail_default" style="font-family:monospace"><speak>Statement of Ethics<br>Written informed consent was obtained from the patient for<br>publication of this case report and any accompanying images.<mark name="__spd_0"/><br>Authors□~@~Y Contributions<br>Elena Rudakova was the primary physician who treated the<br>patient and who obtained and analyzed the data for the study.<mark name="__spd_1"/><br>Seema Mahesh analyzed the data, wrote the manuscript, and<br>obtained the references.<mark name="__spd_2"/> George Vithoulkas was the guide,<br>final approver, and guarantor of the work.<mark name="__spd_3"/> All authors have<br>read and approved the final version of the manuscript.<mark name="__spd_4"/><br>Acknowledgements<br>The authors are thankful to Aishwarya Madhusudhan for the<br>technical support.<mark name="__spd_5"/><br></speak></div><div class="gmail_default" style="font-family:monospace"><br></div><div class="gmail_default" style="font-family:monospace">cat ./testfile.txt | spd-say -x -e</div><div class="gmail_default" style="font-family:monospace"><br></div><div class="gmail_default" style="font-family:monospace">-x makes it parse the <speak> and <mark> tags, etc. and -e makes it read text given from standard input that cat is giving it.</div><div class="gmail_default" style="font-family:monospace"><br></div><div class="gmail_default" style="font-family:monospace">When I tried that here it read about a line, then got an assertion.</div><div class="gmail_default" style="font-family:monospace"><br></div><div class="gmail_default" style="font-family:monospace">From my espeak.log here:</div><div class="gmail_default" style="font-family:monospace"><br></div><div class="gmail_default" style="font-family:monospace">Wed Oct 27 13:28:19 2021 [333272]: Espeak: module_speak().<br> Wed Oct 27 13:28:19 2021 [333297]: Espeak: Requested data: |publication of this case report and any accompanying images.<mark name="__spd_0"/><mark name="__spd_0"/><br>| 0 105<br> Wed Oct 27 13:28:19 2021 [384129]: Espeak: Leaving module_speak() normally.<br> Wed Oct 27 13:28:19 2021 [385487]: Espeak: Playback semaphore on.<br> Wed Oct 27 13:28:19 2021 [385499]: Printing reply: 701 BEGIN<br><br> Wed Oct 27 13:28:19 2021 [385509]: Printed<br> Wed Oct 27 13:28:19 2021 [385518]: Espeak: Sending 51283 samples to audio.<br> Wed Oct 27 13:28:20 2021 [878168]: CMD: <STOP<br>><br> Wed Oct 27 13:28:20 2021 [878194]: Espeak: module_stop().<br> Wed Oct 27 13:28:20 2021 [878217]: Espeak: stopping...<br> Wed Oct 27 13:28:20 2021 [878237]: CMD: <QUIT<br>><br> Wed Oct 27 13:28:20 2021 [878278]: Espeak: Stop or pause semaphore on.<br> Wed Oct 27 13:28:20 2021 [878299]: Espeak: Stopping audio.<br>Assertion 'pthread_mutex_destroy(&m->mutex) == 0' failed at pulsecore/mutex-posix.c:83, function pa_mutex_free(). Aborting.</div><div class="gmail_default" style="font-family:monospace"><br></div><div class="gmail_default" style="font-family:monospace">I think espeak is having issues with the longer text given from okular. <br></div><div class="gmail_default" style="font-family:monospace"><br></div><div class="gmail_default" style="font-family:monospace">I took a quick look at using espeak-ng on opensuse 15.2, but that doesn't seem to be possible, nothing is providing sd_espeak-ng speech-dispatcher module from the available packages which would be needed to use espeak-ng instead of espeak.</div><div class="gmail_default" style="font-family:monospace"><br></div><div class="gmail_default" style="font-family:monospace">If you create a text file like above and cat it into spd-say -x -e like above does it duplicate then also?</div><div class="gmail_default" style="font-family:monospace"><br></div><div class="gmail_default" style="font-family:monospace">BR,</div><div class="gmail_default" style="font-family:monospace">Jeremy<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Oct 27, 2021 at 10:41 AM Gustav Degreef <<a href="mailto:gustav97@gmail.com">gustav97@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Sorry Jeremy. I rushed the previous response and did not see the last <br>
part regarding the Debug 1. Yes, I had to change the Debug from 0 to 1. <br>
I rebooted to make sure both espeak and speech-dispatcher used the <br>
updated config files. I had spd-say speak 3 sentences and I had Okular <br>
read 1/2 page of a pdf three times, just in case. Here are the zipped <br>
logs. I deleted the old logs before rebooting. Thanks for your patient <br>
efforts, Gustav.<br>
<br>
On 10/26/21 8:00 PM, Jeremy Whiting wrote:<br>
> Gustav,<br>
><br>
> Yeah, I think the missing bits were the Debug 1 in espeak.conf file. I <br>
> had that here but forgot to mention it originally. Also, the extra <br>
> details are in the espeak.log not speech-dispatcher.log it seems. The <br>
> one you sent was empty, but that's probably because of the missing <br>
> Debug 1 in there. Once that's in place it should give a bunch of this <br>
> kind of details.<br>
><br>
> thanks,<br>
> Jeremy<br>
><br>
> On Tue, Oct 26, 2021 at 11:41 AM Gustav Degreef <<a href="mailto:gustav97@gmail.com" target="_blank">gustav97@gmail.com</a> <br>
> <mailto:<a href="mailto:gustav97@gmail.com" target="_blank">gustav97@gmail.com</a>>> wrote:<br>
><br>
> Hi Jeremy,<br>
><br>
> I did EXACTLY as you said when I sent you the zip file. When I<br>
> first<br>
> edited the .conf file, there was no output to the logs, so I rebooted<br>
> the system (I did not know how to re-start the deamon). No clue<br>
> why the<br>
> output you expected is not there. Â So now I did the same thing<br>
> again,<br>
> but I had Okular read two separate long instnaces and then had<br>
> spd-say a<br>
> whole sentence twice. Here is the single log file (I did not<br>
> delete the<br>
> old log file, so I figure the new info has been appended. Gustav<br>
><br>
> On 10/26/21 7:03 PM, Jeremy Whiting wrote:<br>
> > Gustav,<br>
> ><br>
> > I see speech dispatcher itself started and ended a couple of<br>
> times in<br>
> > there, but I don't see what text it was sent to synthesize. Did you<br>
> > try spd-say "Hello" or trying with okular to speak some document<br>
> or a<br>
> > page? I was hoping to see something like this:<br>
> ><br>
> > Tue Oct 26 09:31:25 2021 [617497]: Espeak: Stop or pause thread<br>
> > starting.......<br>
> >  Tue Oct 26 09:31:25 2021 [636516]: CMD: <SET<br>
> > ><br>
> >  Tue Oct 26 09:31:25 2021 [636587]: CMD: <SPEAK<br>
> > ><br>
> >  Tue Oct 26 09:31:25 2021 [636617]: Espeak: module_speak().<br>
> >  Tue Oct 26 09:31:25 2021 [636627]: Espeak: Requested data:<br>
> > |<speak>hello</speak>| 0 20<br>
> >  Tue Oct 26 09:31:25 2021 [636637]: Espeak:<br>
> set_language_and_voice en 1<br>
> >  Tue Oct 26 09:31:25 2021 [636647]: Espeak:<br>
> set_language_and_voice<br>
> > name=en+0<br>
> >  Tue Oct 26 09:31:25 2021 [636840]: Espeak: Successfully set<br>
> voice to<br>
> > "en+0"<br>
> >  Tue Oct 26 09:31:25 2021 [636850]: Espeak:<br>
> set_language_and_voice en 1<br>
> >  Tue Oct 26 09:31:25 2021 [636860]: Espeak:<br>
> set_language_and_voice<br>
> > name=en+0<br>
> >  Tue Oct 26 09:31:25 2021 [636973]: Espeak: Successfully set<br>
> voice to<br>
> > "en+0"<br>
> >  Tue Oct 26 09:31:25 2021 [687987]: Espeak: Rate set to 170.<br>
> >  Tue Oct 26 09:31:25 2021 [738788]: Espeak: Volume set to 200.<br>
> >  Tue Oct 26 09:31:25 2021 [937535]: Espeak: Pitch set to 50.<br>
> >  Tue Oct 26 09:31:25 2021 [987698]: Set punctuation mode.<br>
> >  Tue Oct 26 09:31:26 2021 [37917]: Set capitals mode.<br>
> >  Tue Oct 26 09:31:26 2021 [88426]: Espeak: Leaving<br>
> module_speak()<br>
> > normally.<br>
> >  Tue Oct 26 09:31:26 2021 [88689]: Espeak: Playback semaphore on.<br>
> >  Tue Oct 26 09:31:26 2021 [88729]: Printing reply: 701 BEGIN<br>
> ><br>
> > in the espeak.log but it's empty. Ah, may need to also set<br>
> espeak.conf<br>
> > to debug like this in /etc/speech-dispatcher/modules/espeak.conf:<br>
> ><br>
> > #Debugging<br>
> > Debug 1<br>
> ><br>
> > Change the 0 to 1 if it's there, otherwise add Debug 1 to the<br>
> end of<br>
> > the file if it's not there at all.<br>
> ><br>
> > thanks,<br>
> > Jeremy<br>
> ><br>
> > On Tue, Oct 26, 2021 at 10:53 AM Gustav Degreef<br>
> <<a href="mailto:gustav97@gmail.com" target="_blank">gustav97@gmail.com</a> <mailto:<a href="mailto:gustav97@gmail.com" target="_blank">gustav97@gmail.com</a>><br>
> > <mailto:<a href="mailto:gustav97@gmail.com" target="_blank">gustav97@gmail.com</a> <mailto:<a href="mailto:gustav97@gmail.com" target="_blank">gustav97@gmail.com</a>>>> wrote:<br>
> ><br>
> >   Thanks Jeremy. Very clear instructions. Here is<br>
> the zip file,<br>
> >Â Â Â Gustav<br>
> ><br>
> >Â Â Â On 10/26/21 5:36 PM, Jeremy Whiting wrote:<br>
> >Â Â Â > Gustav,<br>
> >Â Â Â ><br>
> >Â Â Â > Ok, the quickest way to debug this will be to set a<br>
> LogDir in<br>
> >Â Â Â > /etc/speech-dispatcher/speechd.conf like this:<br>
> >Â Â Â ><br>
> >Â Â Â > #LogDir "default" <-- Comment out this one if it's not<br>
> by adding<br>
> >Â Â Â the #<br>
> >Â Â Â > at the front.<br>
> >Â Â Â > LogDir "/home/jeremy/sdlogs/"<br>
> >Â Â Â ><br>
> >Â Â Â > sudo will be needed to edit those files in<br>
> /etc/speech-dispatcher/<br>
> >Â Â Â ><br>
> >Â Â Â > you'll need to create an sdlogs folder in your home<br>
> directory (I<br>
> >Â Â Â tried<br>
> >Â Â Â > using the default opensuse /var/log/speech-dispatcher<br>
> path, but sd<br>
> >Â Â Â > running as me couldn't write there and it's<br>
> complicated, better to<br>
> >Â Â Â > just make a new path in your home folder and point to<br>
> it. Also use<br>
> >Â Â Â > your username, not jeremy :)<br>
> >Â Â Â ><br>
> >Â Â Â > Then when you run spd-say "Hello" or whatever it will<br>
> create a<br>
> >Â Â Â few log<br>
> >Â Â Â > files in that sdlogs path. I would say do that a couple<br>
> of times<br>
> >Â Â Â then<br>
> >Â Â Â > have okular speak the current page a couple of times.<br>
> Then zip<br>
> >Â Â Â up that<br>
> >Â Â Â > sdlogs folder and send it here and we can take a look<br>
> at what<br>
> >Â Â Â > speech-dispatcher is getting, and hopefully find out<br>
> why it sounds<br>
> >Â Â Â > garbled on your audio system.<br>
> >Â Â Â ><br>
> >Â Â Â > BR,<br>
> >Â Â Â > Jeremy<br>
> >Â Â Â ><br>
> >Â Â Â > On Tue, Oct 26, 2021 at 8:29 AM Jeremy Whiting<br>
> >Â Â Â <<a href="mailto:jpwhiting@kde.org" target="_blank">jpwhiting@kde.org</a> <mailto:<a href="mailto:jpwhiting@kde.org" target="_blank">jpwhiting@kde.org</a>><br>
> <mailto:<a href="mailto:jpwhiting@kde.org" target="_blank">jpwhiting@kde.org</a> <mailto:<a href="mailto:jpwhiting@kde.org" target="_blank">jpwhiting@kde.org</a>>><br>
> >Â Â Â > <mailto:<a href="mailto:jpwhiting@kde.org" target="_blank">jpwhiting@kde.org</a> <mailto:<a href="mailto:jpwhiting@kde.org" target="_blank">jpwhiting@kde.org</a>><br>
> <mailto:<a href="mailto:jpwhiting@kde.org" target="_blank">jpwhiting@kde.org</a> <mailto:<a href="mailto:jpwhiting@kde.org" target="_blank">jpwhiting@kde.org</a>>>>> wrote:<br>
> >Â Â Â ><br>
> >Â Â Â ><br>
> >Â Â Â ><br>
> >   >   On Tue, Oct 26, 2021 at 8:09 AM Gustav Degreef<br>
> >Â Â Â <<a href="mailto:gustav97@gmail.com" target="_blank">gustav97@gmail.com</a> <mailto:<a href="mailto:gustav97@gmail.com" target="_blank">gustav97@gmail.com</a>><br>
> <mailto:<a href="mailto:gustav97@gmail.com" target="_blank">gustav97@gmail.com</a> <mailto:<a href="mailto:gustav97@gmail.com" target="_blank">gustav97@gmail.com</a>>><br>
> >   >   <mailto:<a href="mailto:gustav97@gmail.com" target="_blank">gustav97@gmail.com</a><br>
> <mailto:<a href="mailto:gustav97@gmail.com" target="_blank">gustav97@gmail.com</a>> <mailto:<a href="mailto:gustav97@gmail.com" target="_blank">gustav97@gmail.com</a><br>
> <mailto:<a href="mailto:gustav97@gmail.com" target="_blank">gustav97@gmail.com</a>>>>><br>
> >Â Â Â wrote:<br>
> >Â Â Â ><br>
> >   >     Hi Jeremy,<br>
> >Â Â Â ><br>
> >   >     Deeply appreciate your time and<br>
> effort, but no luck.<br>
> >Â Â Â ><br>
> >   >   ÂÂ<br>
>  Â Â user:~/QtSpeech/hello_speak> qmake-qt5<br>
> >   >     Info: creating stash file<br>
> >   >   ÂÂ<br>
>  /home/user/QtSpeech/hello_speak/.qmake.stash<br>
> >   >     Project ERROR: Unknown module(s)<br>
> in QT: texttospeech<br>
> >Â Â Â ><br>
> >Â Â Â ><br>
> >   >   Ok, from that it seems you don't have the<br>
> -devel package<br>
> >Â Â Â needed to<br>
> >   >   build things against QtSpeech. For that<br>
> install the<br>
> >Â Â Â following:<br>
> >Â Â Â ><br>
> >   >   sudo zypper install libqt5-qtspeech-devel<br>
> >Â Â Â ><br>
> >   >   Then you should be able to build hello_speak.<br>
> >Â Â Â ><br>
> >   >   But since speech-dispatcher itself doesn't<br>
> have the problem<br>
> >   >   (spd-say didn't duplicate) the problem is<br>
> either in<br>
> >Â Â Â Okular's use<br>
> >   >   of QtSpeech (not likely, it's one line<br>
> that calls<br>
> >Â Â Â QtSpeech) or<br>
> >   >   QtSpeech itself. On my test vm I've only<br>
> got the speechd<br>
> >Â Â Â plugin<br>
> >   >   for QtSpeech in<br>
> >   >   /usr/lib64/qt5/plugins/texttospeech/<br>
> >   >   On your machine do you have a flite plugin<br>
> there also<br>
> >Â Â Â from some<br>
> >   >   package from 15.0 or 15.1 times maybe (I<br>
> don't see any flite<br>
> >   >   plugin package in 15.2 repos, but maybe<br>
> you got it before<br>
> >Â Â Â upgrading).<br>
> >Â Â Â ><br>
> >   >   I took another look at QtSpeech code<br>
> itself though and I<br>
> >Â Â Â don't see<br>
> >   >   any way it would ever use more than one<br>
> plugin or send<br>
> >Â Â Â the text to<br>
> >   >   multiple plugins. Then I took a look at<br>
> the speechd<br>
> >Â Â Â plugin again<br>
> >   >   and it definitely only sends the text it<br>
> gets to spd_say<br>
> >Â Â Â function<br>
> >   >   once. I think the next thing to try will<br>
> be to enable<br>
> >Â Â Â debugging in<br>
> >   >   speech-dispatcher (after we are sure<br>
> that's what plugin<br>
> >Â Â Â QtSpeech<br>
> >   >   is using) and see what text it's getting<br>
> to synthesize from<br>
> >   >   okular. I'll write up some instructions<br>
> for that once I<br>
> >Â Â Â do it here<br>
> >   >   and remember how it's done :)<br>
> >Â Â Â ><br>
> >   >   thanks,<br>
> >   >   Jeremy<br>
> >Â Â Â ><br>
> >   >     user:~/QtSpeech/hello_speak> make<br>
> >   >     make: *** No targets specified<br>
> and no makefile<br>
> >   found. Stop.<br>
> >Â Â Â ><br>
> >   >     Since your opensuse VM is<br>
> working fine, I doube<br>
> >Â Â Â checked my<br>
> >   >     installations. I have a<br>
> 17 inch laptop and a 13<br>
> >Â Â Â inch old one<br>
> >   >     that I use<br>
> >   >     for traveling. Both<br>
> machines have a main<br>
> >Â Â Â partition opensuse<br>
> >   >     15.2 and a<br>
> >   >     "test" partition with opensuse<br>
> 15.3. 3/4 of these<br>
> >   >     installations have<br>
> >   >     the duplicate voices in Okular<br>
> and Kmouth. Only 1 15.3<br>
> >   >     installation is<br>
> >   >     having a normal speech output in<br>
> Ojular. All 4<br>
> >Â Â Â installations<br>
> >   >     are<br>
> >   >     upgraded systems (from previous<br>
> opensuse 15.0, 15.1<br>
> >Â Â Â and prior<br>
> >   >     releases.Â<br>
> >   >     So none of them is a "clean"<br>
> install like your VM.<br>
> >Â Â Â ><br>
> >   >     I tried building it on each<br>
> laptop, but the same<br>
> >   result. ÂÂ<br>
> >   >     You were<br>
> >   >     reight at the beginnig, it's<br>
> turning out quite<br>
> >Â Â Â difficult to<br>
> >   >     track down.Â<br>
> >   >     Any other suggestions?<br>
> >Â Â Â ><br>
> >   >     If all else fails, I'll do a<br>
> clean install of 15.3<br>
> >Â Â Â on one of<br>
> >   >     these 4<br>
> >   >     partitions.<br>
> >Â Â Â ><br>
> >   >     Thanks, Gustav.<br>
> >Â Â Â ><br>
> >Â Â Â ><br>
> >   >   Truncating the rest to get past mailing<br>
> list size limit<br>
> >Â Â Â without<br>
> >   >   approval.<br>
> >Â Â Â ><br>
> ><br>
><br>
<br>
</blockquote></div>