Fix error
[kdeaccessibility.git] / kttsd / TODO
blob59f610076a486734200b8a66ba6affb658e10b8a
1 _ Filters:
2     _ XHTMLtoSSML stylesheet needs work to provide better mappings for most web pages.
3     _ Add KNewStuff capability for folks to upload/download filter configs.
4     _ There should be a default set of filters configured when user first runs KTTSMgr.
5       If user presses Default button, it should ask user whether to replace all existing
6       filters with the standard set.  The standard set should probably include
7       the Qt to Plain Text and Fix Festival Unspeakable Characters filters, but I'm not
8       sure about the latter when desktop is not ISO 8859-1.
9     _ The SBD Filter configuration dialog can be shrunk smaller than the widgets on it.
10       This apparently due to a bug in the QLabel widget when it contains RichText.  If
11       forced to plain text, the problem won't happen (I am told).  However, the WARNING
12       in the dialog needs to be bolded.  What to do?
13 _ Handbook:
14     _ Mention that "Root element is" and "DOCTYPE" are case sensitive.  "html" is not
15       the same as "HTML".  It should stay this way, BTW.  Proper xhtml requires lowercase
16       tags.
17 _ Audio Plugins:
18     _ At least one user experiences a freeze-up using ALSA plugin.  Speak a web page,
19       pause the page, cause a knotify to speak, kttsd freezes.  This appears to be an
20       ALSA device contention problem?  In this situation, there are two alsaplayer objects;
21       one in pause state, and one attempting to speak notify.
22     _ akodelib does not stop instantly when pause() or stop() is called.  See bug:107135.
23     _ Popping noise at the end of each utterance when using ALSA audio plugin.
24     _ Why must Player constructor take a 3rd "args" argument, while PluginProc constructor
25       does not.  They are essentially the same. ??
26     _ Add option to automatically turn down music player volume while speaking (via dcop).
27 _ Festival Interactive plugin:
28     _ Need someone who can read czech to try integrating this into KTTS: 
29       http://www.freebsoft.org/festival-czech
30 _ Command plugin:
31     _ Command plugin encodes text on command line using %t in user's chosen encoding, but
32       if this differs from user's desktop default encoding, doesn't work.  KProcess always
33       encodes command line stuff using user's default encoding.  There is no point, therefore,
34       in attempting to encode it differently, just mangles the text even more.  Short of modifying
35       KProcess, I see no way around this.  But perhaps a warning to user advising to use %f instead?
36     _ Command plugin crashes when using command 'flite -t "%t"' and flite can't get write access to /dev/dsp*.
37 _ Hadifix plugin:
38     _ When stopText() is called, and Hadifix process is killed, the temporary wav file is not deleted,
39       despite QFile::remove call.  Possibly still locked by exiting mbrola process?  This only seems
40       to happen in the configuration dialog when canceling Tests.
41 _ KTTSMgr:
42     _ Speech is paused when showing tooltip when mouse cursor is placed over tray icon.
43     _ Give Talkers a Talker Name entered by user.  Show this name in Jobs tab, Change Talker screen,
44       and in systray menu.
45     _ Change the Current Sentence panel to show the current sentence of the selected job?  If selected
46       job is not the currently speaking job, won't show currently-speaking text anymore.  However, would
47       be helpful when using advance/rewind buttons.  Perhaps to be effective, if the currently-selected
48       job IS the currently speaking job, and that job finishes, would automatically select the next
49       speaking job?  But that could become confusing for users with selection jumping around.
50     _ Add ability to quickly pick default Talker in systray menu.
51     _ KCMultiDialog has a bug that won't allow sizing the screen narrower than 640.
52     _ Overall Audio Speed should be a realtime setting, i.e., not necessary to click Apply.
53     _ Disable Audio Speed control if sox not installed (configure.in.in but runtime check would be better).
54     _ Add drag N drop for the Talkers so it is easier to change the ordering.
55     _ It is possible to configure multiple instances of Talkers with the exact same configuration.
56     _ In kcmkttsmgr, use setHelp() to set help anchor based on current tab.
57     _ Add playback controls to kttsmgr.  Volume, pause.  Maybe rewind?
58 _ KTTSD:
59     _ I am told that when kttsd crashes, it can take knotify down with it.  See about
60       "disconnecting" knotify from kttsd (using post to Qt event queue).
61     _ Strange msg being produced by KIO::move, but it works fine. ??
62         kio (KIOJob): stat file:///home/kde-devel/.kde/share/apps/kttsd/audio/kttsd-5-1.wav
63         kio (KIOJob): error 11 /home/kde-devel/.kde/share/apps/kttsd/audio/kttsd-5-1.wav
64         kio (KIOJob): This seems to be a suitable case for trying to rename before stat+[list+]copy+del
65     _ While kttsd currently configures a Talker automatically, would be nice if it could
66       autoconfigure talkers for each requested language, if one has not already been configured.
67     _ Add support for speech markers.
68     _ Implement error signal handling in KTTSD.
69     _ Add support for JSML and other Speech Markup languages.
70     _ Add method for apps to play a sound file, including in the middle of a job.
71       Could be done with SSML or with special Talker Code = "sound".
72 _ Other/General:
73     _ Save buttons should confirm if user chooses an existing file.  KFileDialog doesn't seem to
74       offer this option, but shouldn't it?
75     _ .desktop files must have a Type keyword, but what to use for kcmkttsd_testmessage.desktop?
76     _ Add option to kill plugin process when no longer needed so that memory can be recovered.
77       Or maybe some sort of "nice" setting so that process will be swapped out when no longer needed.
78     _ Convert to KConfig XT.
79     _ Add a plugin for TuxTalk, http://tuxtalk.sourceforge.net/.  Since it only supports
80       English (at the moment) and is alpha, don't think it is worth it now.
81     _ Add a plugin for dhvani, an Indian and Hindi TTS engine, http://dhvani.sourceforge.net/
82       Currently written in c, but it looks like future versions will require Java VM.
83       Main problem at the moment is that dhvani sends audio directly to /dev/dsp with no option
84       to send to a wav file.
85     _ Investigate what is involved in getting Gnopernicus screen reader to use KTTSD.
86     _ IBM ViaVoice plugin?
87     _ Add KTTS plugin to aKregator.