• 1
  • 4
  • 5
  • 6(current)
  • 7
  • 8
  • 43
Release Kodi Screen Reader (Text to speech)
#76
Information 
Added a new version to my repository: 0.0.80.

Get it or the repository from the Downloads Page.

Changes:
  • Added 'Disable Interface Reader' to Settings:Options (Default=False)
  • Now provides a module for other addons to use



(2014-07-06, 14:03)Bitboy Wrote: 1. Is it possible to disable speaking of xbmc menus and text?
Now it is Smile
(2014-07-06, 14:03)Bitboy Wrote: 2. Can i use the engine in another addon, so that i just pass a string to XBMC TTS and it is spoken out?
Now you can Smile
(2014-07-06, 14:03)Bitboy Wrote: If yes i would be happy if you could post an example.

Code:
import TextToSpeech as TTS

TTS.sayText(u'This is some text')

TTS.sayText(u'This should interrupt',interrupt=True)

TTS.stop() #Stop all speaking

Having the addon speak in this way, you should avoid using interrupt=True or calling stop() if possible, because it the user is using the addon for accessibility reasons, you may interrupt something important. There will certainly be instances where it would make sense though.

Eventually, if you want to require this, then you would add the following to your addon.xml
Code:
<import addon="service.xbmc.tts" version="0.0.80"/>

But you wouldn't want to do that yet as the addon is not on the official repository yet. For now you could do:

Code:
try:
    import TextToSpeech as TTS
except ImportError:
    TTS = None

if TTS: TTS.sayText(u'Blah blah blah')

And the user could just get the addon from my repository if they wanted speech.
Reply
#77
Information 
Added a new version to my repository: 0.0.81.

Get it or the repository from the Downloads Page.

Changes:
  • Module: sayText() now requires unicode and is safe for all unicode characters

I got to thinking that sayText() would probably fail if it had "(){} characters and that encoding needed to be handled properly. Now as long as you pass a unicode object it should work fine.
I've updated the examples in the previous post.
Reply
#78
(2014-07-11, 16:13)Traker1001 Wrote: Just an update, .81 has been rock solid for us, I have no complaints and haven't heard any.
Good Smile and thanks for the update.
Reply
#79
Information 
Added a new version to my repository: 0.0.82.

You can also get it or the repository from the Downloads Page.

Changes:
  • Added 'Speak Background Progress Updates' to Settings:Options (Default: False)
  • Added 'Minimum Progress Update Interval (Seconds)' as subsetting to 'Speak Background Progress Updates' (Default: 5)
  • Added 'Speak When Media Playing' as subsetting to 'Speak Background Progress Updates' (Default: False)

This adds speaking of the background progress dialog. It should work for all background processes, but will only specifically identify PVR updates. Others will just announce 'Background Progress Started'. This is disabled by default so if you want it, enable it in settings. It also defaults to a minimum of 5 seconds between progress updates.
Please let me know if you think there is a better default update interval that makes sense, or anything else needs tweaking with this.
Reply
#80
(2014-07-16, 04:44)Traker1001 Wrote: Hello, I want to say .82 has been working great. I have tried the 3 new additional options and they seem to work well, Although my preference is what you have set as default. You have really seemed to bulletproof SAPI with your latest changes.
Thanks for telling me. Normally I just do what testing I can and hope for the best. It's nice to hear that it's working as intended Smile
(2014-07-16, 04:44)Traker1001 Wrote: I was wondering if it would be at all possible to start having the TTS addon packaged with XBMC installer, Kind like the pvr addons and touched skin are. This way one could go through the installation of XBMC, Select Custom setup, and Select that they want TTS addon installed and when it finished installing speech would hopefully come up. Im not sure which group one would talk to in order to get that accomplished.
I think first the addon needs to get on the official repository. This will give it a chance to go through the approval process and also give it more visibility. At some point I'll have to talk to someone about whether the XBMC team is amenable to having the addon included, and if so, what needs to be done to make that happen. If you don't want to wait for me to do this you can get that started by asking in the forum in either 'XBMC General Help and Support' or perhaps 'Feature Suggestions'. You could discuss the possibility if having it eventually added into the installer and then refer them to me if it seems we can move forward. You would be able to give a better explanation as a user why adding it is necessary and what it means to users.
(2014-07-16, 04:44)Traker1001 Wrote: Or if someone know how I can make a custom install package of XBMC please point me in that direction. But I would love to see this happen from an official XBMC standpoint.
Is something wrong with the Windows installer on the downloads page, or do you just want to create a more unified installer that includes the addon into the XBMC install instead of the other way around?
It may be that the scripts or whatever for building the install are in the GitHub repository, but I don't know what they use to build the actual installer.
Reply
#81
@ruuk

The Speech Server you provided is a tremendous tool (thanks to you and eckythump). I actually found this group via a post on OSX TTS in my search for a solution. My use case is a little different than that of XMBC. I currently use the Google speech server (with fear that it will be unplugged at any point) for speech at my parents house. They're at an age where they can't remember if they've locked the doors or turned off certain lights so I've replaced the devices with z-wave. I use an inexpensive home automation appliance and a Sonos speaker in their bedroom to alert them that specific lights are left on or the lock was left unlocked (as it's being automatically locked).

My purpose would be to stream the speech to their Sonos speaker. When I use Google's service (often slow and with concern they'll pull the service), it works fine. However, when I use the speech.server - no audio can be heard. Audio works great from my Android using a POST. For what I can determine, the OSX TTS and Google both encode the audio as an MP3. I currently run the speech.server in a Windows environment (Windows 8.1) running the server with Python 2.7.8.

Would it be possible to provision an option for output as either an MP3 or a WAV (to maintain the audience that requires WAV audio) on start up ?
Reply
#82
(2014-07-19, 23:43)CudaNet Wrote: @ruuk

The Speech Server you provided is a tremendous tool (thanks to you and eckythump). I actually found this group via a post on OSX TTS in my search for a solution. My use case is a little different than that of XMBC. I currently use the Google speech server (with fear that it will be unplugged at any point) for speech at my parents house. They're at an age where they can't remember if they've locked the doors or turned off certain lights so I've replaced the devices with z-wave. I use an inexpensive home automation appliance and a Sonos speaker in their bedroom to alert them that specific lights are left on or the lock was left unlocked (as it's being automatically locked).

My purpose would be to stream the speech to their Sonos speaker. When I use Google's service (often slow and with concern they'll pull the service), it works fine. However, when I use the speech.server - no audio can be heard. Audio works great from my Android using a POST. For what I can determine, the OSX TTS and Google both encode the audio as an MP3. I currently run the speech.server in a Windows environment (Windows 8.1) running the server with Python 2.7.8.

Would it be possible to provision an option for output as either an MP3 or a WAV (to maintain the audience that requires WAV audio) on start up ?

The speech server itself only sends wav files. To use Google with the server, the server machine needs something to convert wav to mp3 (on linux this would be mpg123 for example). Google is the only engine the server uses that outputs MP3, the OSX TTS outputs to wav file.
I'm probably missing something here, but if you are running the server on windows 8.1, why don't you use the windows speech engine (SAPI)?
Reply
#83
Thanks to everyone who has contributed to this badly needed add-on.

of course I want to especially thank ruuk for all of your work effort an dedication.

Blind people are able to use xbmc because of all this work.

Also, others are able to use it as well when blind people are able to set xbmc up on their platforms.

The latest release of the add-on works perfectly on the latest nightly build of helix.

So thanks very much again.
Reply
#84
Thanks everybody for taking the time for the appreciative comments. One of the reasons I enjoy working on this project is that I get to interact with a great group of people.

I've been spending less time on the project lately, and I wanted to assure everyone that I have not lost interest. I normally spend less time programming in the summer as I go camping often and engage in other outdoor activities. Next week I have family visiting from New York and at the end of August I will be camping up in Alaska for a week. Please continue to let me know of issues or questions, and I will continue to respond and write code as time allows.
I know no one expects me to tell them all my plans, but I just wanted to give a heads up so it's not unexpected if I'm less responsive.
Reply
#85
Hello, based on my request a couple post back, I created a post at: http://forum.xbmc.org/showthread.php?tid...pid1764141.
Reply
#86
(2014-07-24, 23:28)Traker1001 Wrote: Hey Ruuk, Its all good and fully understandable. We so greatly appreciate everything you have done here. We hope you have an amazing time. Seems like you have the speech at a super reliable spot anyways, now just a little bit of a wait for xbmc to catch up with your programming coming into 13.2, LOL. Big Grin
Sadly most code will only come in 14.0 as 13.2 is fixes only. Perhaps some got included.

(2014-08-02, 12:11)Traker1001 Wrote: Hello, Will the name change effect the TTS addon at all?

Not at all
Read/follow the forum rules.
For troubleshooting and bug reporting, read this first
Interested in seeing some YouTube videos about Kodi? Go here and subscribe
Reply
#87
(2014-08-02, 13:01)Martijn Wrote:
(2014-07-24, 23:28)Traker1001 Wrote: Hey Ruuk, Its all good and fully understandable. We so greatly appreciate everything you have done here. We hope you have an amazing time. Seems like you have the speech at a super reliable spot anyways, now just a little bit of a wait for xbmc to catch up with your programming coming into 13.2, LOL. Big Grin
Sadly most code will only come in 14.0 as 13.2 is fixes only. Perhaps some got included.

I understand why this pull request isn't going into gotham:
Add ability to get text from ControlTextBox via python and infolabels

But I was curious why not this one, as it fixes a memory leak?
Delete sound in CActiveAE:Big GriniscardSound

Anyway, thanks taking the time to reply in this thread, and thanks for your dedication to your mostly thankless role in the XBMC (Kodi) team. I'm sure dealing with the fallout from this name change is a big pain in the ass for you Smile
Reply
#88
Choices are made by the release managers, what and what not to include.
Yeah. Majority of people don't understand the process of doing a name change and just shout random things without thinking of consequences, legal issues and all other things. Can be frustrating seeing the comments, but then again i just ignore them. Luckily once in a while you actually see some that do get the the whole issue.

Any way, 14.0 won't be that long away Smile
Running it in daily use and pretty solid for my limited use case.
Read/follow the forum rules.
For troubleshooting and bug reporting, read this first
Interested in seeing some YouTube videos about Kodi? Go here and subscribe
Reply
#89
(2014-08-03, 15:00)Traker1001 Wrote: There seems to be a delay in the Busy sound. So I.E. go do a list on youtube for example. While it is processing, there is about a 2 to 5 second delay before it will start the Tick tick sound.
Sometimes there is a delay before the busy dialog displays on long operations and the addon only plays the sound when it detects the dialog.
(2014-08-03, 15:00)Traker1001 Wrote: There is also about a 4 sec delay in the speech when XBMC first loads. Although, While I just guessed this was by design to let XBMC fully load before speech fired up, I figure I'd mention it.
This is because Kodi Smile doesn't start service addons right away, as well as the fact that it takes some time to start the addon. If the system is slow (for example the Raspberry Pi) this takes even longer.
(2014-08-03, 15:00)Traker1001 Wrote: Also, I don't know if you have access to the AT&T natural voices, However the Speech volume control doesn't seem to work very well for these voices. It does change the speech volume, But not very much much at all, Even All the way down to 0% barely has effect on em. This is ONLY for the At&T voices thru sapi. All other voices seem to work.
Not all voices will respond to all attribute changes (ex. pitch, speed, volume) - this is the fault of the voice, not SAPI or the addon.
(2014-08-03, 15:00)Traker1001 Wrote: I also still see this message about classes not unloading during shutdown.
Code:
07:50:06 T:3516  NOTICE: ES: UDP Event server stopped
07:50:06 T:10704  NOTICE: stop sap announcement listener
07:50:06 T:10704  NOTICE: clean cached files!
07:50:06 T:10704  NOTICE: unload skin
07:50:06 T:11028  NOTICE: service.xbmc.tts: Window ID: 10000 Handler: default
07:50:06 T:11028  NOTICE: service.xbmc.tts: Control: 0
07:50:06 T:11028  NOTICE: service.xbmc.tts: TTSCLOSED
07:50:06 T:2728  NOTICE: service.xbmc.tts: Threaded TTS Finished: SAPI
07:50:07 T:11028  NOTICE: service.xbmc.tts: Remaining Threads:
07:50:07 T:11028  NOTICE: service.xbmc.tts:   MainThread
07:50:07 T:11028  NOTICE: service.xbmc.tts: SERVICE STOPPED
07:50:07 T:11028 WARNING: CPythonInvoker(2, C:\Users\Admin\AppData\Roaming\XBMC\addons\service.xbmc.tts\main.py): the python script "C:\Users\Admin\AppData\Roaming\XBMC\addons\service.xbmc.tts\main.py" has left several classes in memory that we couldn't clean up. The classes include: class XBMCAddon::xbmcgui::Window,class PythonBindings::XBMCAddon_xbmc_Monitor_Director
07:50:07 T:10704  NOTICE: stopped
07:50:07 T:10704  NOTICE: destroy
07:50:07 T:10704  NOTICE: closing down remote control service
07:50:07 T:10704  NOTICE: unload sections
07:50:07 T:10704  NOTICE: special://profile/ is mapped to: special://masterprofile/
07:50:07 T:10704  NOTICE: destroy
07:50:07 T:10704 WARNING: Attempted to remove window 10013 from the window manager when it didn't exist
07:50:07 T:10704 WARNING: Attempted to remove window 10104 from the window manager when it didn't exist
07:50:07 T:10704  NOTICE: closing down remote control service
07:50:07 T:10704  NOTICE: unload sections
07:50:07 T:10704  NOTICE: application stopped...

these problems are currently through windows. Let me know if you want me to fire up my linux machine.
The "classes in memory that we couldn't clean up" message shows up in many of my addons. I'm not sure what causes it, and when I've tried to do things that I think might make it go away it doesn't work. It may not be important, but I'm not sure. I'll have to ask someone who knows. Maybe @Martijn knows or can point me to who does?
Reply
#90
ignore the warning
Read/follow the forum rules.
For troubleshooting and bug reporting, read this first
Interested in seeing some YouTube videos about Kodi? Go here and subscribe
Reply
  • 1
  • 4
  • 5
  • 6(current)
  • 7
  • 8
  • 43

Logout Mark Read Team Forum Stats Members Help
Kodi Screen Reader (Text to speech)10