flowm.notes 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254
  1. flowm
  2. Flite on Windows Mobile
  3. flite file reader development "flown" or "flowm"
  4. build up with cegcc menu example
  5. type in text first
  6. file selection.
  7. good searching, bookmarking, replay (slower)
  8. on screen word highlighting (default -- but optional)
  9. wget data
  10. interpretation of xml marked up programmes/channels
  11. to get data and read it (like rss)
  12. skinable
  13. scriptable (through ssml)
  14. Would be good to have voice choices
  15. CG and VT if possible
  16. computationally too expensive
  17. 0.7
  18. TODO
  19. * screen off option on main screen
  20. * (makes it battery efficient)
  21. * http://msdn.microsoft.com/en-us/library/ms838354.aspx
  22. * http://forums.microsoft.com/china/ShowPost.aspx?PostID=4273639&SiteID=15
  23. * no ending on ok
  24. * fast backskip causes a crash
  25. * long filenames badly displayed
  26. * added ES_AUTOHSCROLL to field
  27. * more control in play dialog box
  28. * choose voice
  29. * display pronunciation/text expansion etc
  30. * allow waveform saving in play
  31. * BM in play text not play file
  32. * normalize volume across voices (boost cg ones)
  33. do something with silences to optimize speed
  34. back/forward over restarts seems to over skip
  35. keyboard accelerators (at least ctrl-q)
  36. can't stop BM "1982 was ..." would take a little time
  37. get rid of title bar on open/savefile box
  38. tgps doesn't have the problem
  39. "save" grey out if nothing to save
  40. some content on the startup screen
  41. logo plus play or play_file buttons
  42. CAB installation (with lcab)
  43. no evidence lcab works for mw yet
  44. http://nedge2k.com/cab-o-matic ??
  45. cut and paste from other apps
  46. file position over app restarts
  47. and voice selection
  48. make it not look like a .net app
  49. screen off after n seconds of play
  50. previous files selection in file selection
  51. button support (no ending on ok, stop continue etc)
  52. screen rotate
  53. icons rather than text on buttons
  54. play/stop as one button
  55. autorepeat on forward/back
  56. scroll wheel (volume or forward back or faster/slower)
  57. dll version (for voices too) would be good
  58. progress bar
  59. word highlighting at play time
  60. a talking head example
  61. prc files
  62. Inertia based file listing
  63. Inertia based position finding in file
  64. 0.6 19th
  65. 5.01meg with kal, awb, rms and slt
  66. with screen off, 40 minutes of running used 6% of battery
  67. (kal might be different from cg voices)
  68. a benchmark in flowm so I can find out the speed of the machine
  69. GetSystemTime (but no milliseconds)
  70. if #define double float in cst_mlsa.c
  71. Tilt kal 503.5 16.0 31.47
  72. awb 44.3 50.0 0.89 but it *is* fast enough (sort of)
  73. rms 48.9 54.0 0.91
  74. and a wee bit faster again if wifi is turned off
  75. Tilt kal 503.5 15.0 33.56
  76. awb 43.7 69.0 0.63
  77. rms 48.3 72.0 0.68
  78. 2755 kal 503.5 8.0 62.93
  79. awb 43.7 52.0 0.84 1.50
  80. rms 48.3 53.0 0.91 1.50
  81. 3635 kal 503.5 23.0 21.89
  82. awb 43.7 118.0 0.37
  83. rms 48.3 123.0 0.39
  84. P2 kal 503.5 12.0 41.96
  85. awb 43.7 68.0 0.64
  86. kal 48.3 70.0 0.68
  87. dll version (for voices too) would be good
  88. some content on the startup screen
  89. - forward/back utterance
  90. forward/back paragraph/chapter/file
  91. quick back skips causes crash
  92. - try out PowerPolicyNotify(PPN_UNATTENDEDMODE, 1); during play
  93. http://channel9.msdn.com/wiki/mobiledeveloper/powerpolicynotify/
  94. * do file pos as percentage
  95. progress bar
  96. get rid of title bar on openfile box
  97. * cg voices give click at buffer change
  98. good enough on 2755 (rms and awb order 13/8K)
  99. * get a 641K awb voice (and others)
  100. 720K actually with 13 params
  101. * good enough for tilt (#define double float)
  102. * multi-voice version
  103. * made audio_streaming_info with min_buffsize
  104. file position over app restarts
  105. icons rather than text on buttons
  106. play/stop as one button
  107. make it not look like a crude app
  108. cut and paste from other apps
  109. more control in play menu
  110. display pronunciation/text expansion etc
  111. word highlighting at play time
  112. a talking head example
  113. keyboard accelators
  114. ok should background it not stop it
  115. 0.5
  116. - forward/back utterance
  117. forward/back paragraph/chapter/file
  118. quick back skips causes crash
  119. - try out PowerPolicyNotify(PPN_UNATTENDEDMODE, 1); during play
  120. http://channel9.msdn.com/wiki/mobiledeveloper/powerpolicynotify/
  121. * do file pos as percentage
  122. cg voices give click at buffer change
  123. good enough on 2755 (rms and awb order 13/8K)
  124. * get a 641K awb voice (and others)
  125. 720K actually with 13 params
  126. * multi-voice version
  127. * made audio_streaming_info with min_buffsize
  128. 13th January
  129. hp2 9:54 awb 8k 2755 (black clip) 98%
  130. backlight off after 2 minutes
  131. 10:30 fp 29500 79%
  132. 12:02 fp 104204 36% (looks like nearly 3hrs on one charge)
  133. 12:43 fp 136282 16%
  134. 0.4
  135. using threads so that stop works
  136. can't share alloced memory over threads
  137. add streaming synthesis
  138. stop works
  139. need to select position in file
  140. nees to save position in file for continuation
  141. pause and continue
  142. stop it from going to sleep (but do screen blank)
  143. 8K awb 1139896
  144. 16K awb 2227760
  145. could be 641K if order 18 and get rid of std in statics
  146. Put back in the Play_thread. With a large buffer size, it sort of
  147. works (spool vs streaming)
  148. Tested under
  149. Ipaq 3635 WinCE 3.0
  150. Phraselator 2 Windows CE 4.20 (HPC?)
  151. gives an error at exit time (maybe the others do too ..)
  152. HP hx2755 PocketPC 2003
  153. AT&T Tilt PocketPC 6.0
  154. 4th Jan 2009
  155. 0.3
  156. TTS from a .txt file
  157. display tokens in window as we go
  158. redo the menus and forms layout
  159. Still very basic though.
  160. stop doesn't work bacause things don't get back to the event loop.
  161. 2nd Jan 2009
  162. 0.2
  163. have windows, a dialog box with a play and editable text box
  164. spent ages working out how to program in WinCE but seems to work now
  165. 1st Jan 2009
  166. 0.1
  167. play_wave(w) does the right thing
  168. au_wince.c seems to work
  169. moved to mingw32ce version
  170. added a .rc resource file and tidied up configure.in
  171. moved to cst_file_wince.c rather than cst_file_cegcc.c (deleted)
  172. fixed bugs in cst_file_wince.c
  173. type in box and audio out
  174. want flite.dll cmu_us_kal_diphone.dll usenglish.dll maybe
  175. have them loaded (so voice isn't in flowm)
  176. Need examples/tutorial on building an app with inputs, defaults, options
  177. file loading display etc.
  178. streaming synthesis? (and call back)
  179. 0.0
  180. compiled flite with message box displaying number of bytes in
  181. synthesized waveform. Synthesis seems to work, WCHARs support is
  182. necessary
  183. cst_wchar.[ch]
  184. 6th June 2008
  185. -------------------------
  186. Making dlls (using dlls)
  187. http://craigshaw.com/ (for ffmpeg)
  188. Example code
  189. http://www.codeproject.com/KB/mobile/
  190. dll building
  191. http://www.ibm.com/developerworks/aix/library/au-porting/index.html
  192. Books
  193. Programming Microsoft Windows CE, Second Edition (Pro-Developer) (Paperback)
  194. Online sample chapters
  195. http://www.microsoft.com/mspress/books/sampchap/5461b.aspx
  196. code samples (for eVC++)
  197. http://msdn.microsoft.com/en-us/library/bb158662.aspx
  198. Simple, but larger CE example in C++
  199. http://www.codeproject.com/KB/mobile/ce_cards.aspx
  200. join codeproject
  201. awbcmu
  202. publicpass
  203. But found good examples that are (mostly) compilable in
  204. Programming Microsoft Windows CE (Doug Boling)
  205. Bought second hand on Amazon for $11
  206. It has online examples, and a version of the book all in CHM format
  207. Its actually all online
  208. http://iptvforum.cn/wince/wince-programming-ms-press2/source/prowice/ch04d.htm
  209. Keeping app running while in sleep model
  210. PowerPolicyNotify(PPN_UNATTENDEDMODE, 1);
  211. SystemIdleTimerReset(); // call this periodically
  212. SetSystemPowerState(null, POWER_STATE_ON, POWER_FORCE);
  213. http://forum.xda-developers.com/showthread.php?t=379366