Voice recognition software

bodhi.zazen ulist at gs1.ubuntuforums.org
Sun May 7 04:12:52 UTC 2006


See also general "HOW TO"



Here is a full description with screen shots

Screen shots did not post here, can I E-mail them to you (or somewhere
at Ubuntu?)



IF YOU SEND ME YOUR E-MAIL ADDRESS I WILL SEND YOU A COPY OF THIS POST
WITH SCREEN SHOTS



CAN SOMEONE MAKE THIS LOOK PRETTY FOR ME ????





Part 1. Preamble.



This is a “hack” to get Dragon Naturally Speaking (DNS) up and running
as fast as possible. DNS will perform voice recognition translating
your voice into text on Dragon pad within a “wine desktop”, but does
not interface directly with Linux native programs outside of the wine
desktop (“cut-and-paste” between the wine desktop and Linux native
programs works no problem [both ways]). 



DNS will run and perform voice recognition, but not everything works.
At the end of this document I listed problems, “work arounds”, and
“tips” for making the most of Dragon on Linux (Wine).



Conventions: [~ = your home directory]

1. I placed all downloaded files into a folder ~/Wine

2. I used ~/.wine/c as the location of my “fake” windows c drive.

3. DNS=  Dragon Naturally Speaking Version 7 (preferred or
professional).

4. IE= (Microsoft) Internet Explorer.

5. Tab completion- I indicate tab completion by using <tab>

	File names are long

	Lexicon to identify windows file locations with the Linux command line
is obscure (to me at least)

	USE TAB COMPLETION !!!!!!!!!

6. Commands typed at a terminal are in BOLD (italics too hard to
read).

7. My editor of choice is nano. substitute vi (or other) if you do not
use nano.





Part 2. What you need to run Dragon:



1. Time 1-2 hours with reading and downloading.

	This ain't hard, but it ain't no “point and click” either 



2. Linux I have successfully installed and run DNS on Fedora core 5,
Zenwalk 2.4, and Ubuntu 6.06. 



3. WINE. I used Wine 0.9.12-> This is the most recent version (as of
this writing)

	Install as per your version of Linux
http://www.winehq.org/site/download

	Apt-get, YAST, yum, synaptic, source, etc

	

	Note: On Fedora core 5 I used pull down menu rather the the above
site

		Add/Remove software -> search for wine –> Install
wine-0.9.12-1.fc5.i386

		

4. IE 5.5 Download from:
http://browsers.evolt.org/download.php?/ie/32bit/5.5_SP2/ie55sp2.exe

	Throughout this post IE=(Microsoft) Internet Explorer

	Dragon needs IE

	IE6 did not work

	

5. Sidenet installer 1.9.0 (sidenet-1.9.1 DID NOT WORK)

	 Download from: http://sidenet.ddo.jp/winetips/config.html

	The downloads are at the very bottom of the page

	download wine-config-sidenet-1.9.0.tgz

	Unpack sidenet (I used archive manager, starts automatically after
double clicking on the

		wine-config-sidenet-1.9.0.tgz file

	Creates a new folder in ~/Wine -> wine-config-sidenet-1.9.1

	

6. Valid windows license -> riched20.dll REQUIRED

	DO NOT COPY THIS DLL WITHOUT A VALID WINDOWS LICENSE

	I used riched20.dll from WindowsXP

	(Location C:\Windows\winnt\system32\riched20.dll)



7. Dragon Naturally Speaking v7 (I used the professional version, I
understand the preferred version also works).

	I have tried to install DNS 8 -> NO LUCK (	I can not get the installer
to start)



8. alsa and alsa-oss (sound)



9. A “mixer” to configure your microphone. (I used kmixer).



10. There is some mention in previous posts about DCOM98.  Idid not
need to download or install DCM98, ? Sidenet did it automatically.





Part 3 Install



1. Install Wine-> Should be done by now. If not see #3 above.

	Fedora

		Add/Remove software -> search for wine –> Install
wine-0.9.12-1.fc5.i386

	

	*Ubuntu 6.06

		Terminal (CLI)

			sudo nano /etc/apt/sources.list  -> enter password



			add the following lines to the file:



				# Wine source

				deb http://wine.sourceforge.net/apt binary/



			Save and exit (<Ctrl> X, answer “yes”)



		Run synaptic -> Reload -> Search for “wine” -> install
0.9.12~winehq1-1*



	Zenwalk terminal (CLI) [download wine-0.9.12-486-S10.2.tgz to ~/Wine
as above]



		cd ~/Wine 

		su -> enter root password 

		installpkg wine-0.9.12-i486-S10.2.tgz 







FROM NOW ON  INSTILLATION AND CONFIGURATION WAS THE SAME FOR ALL 3
VERSIONS OF LINUX




2. Configure wine. *DO NOT RUN (CONFIGURE) AS ROOT*



	USE 1.9.0 (sidenet 1.9.1 DOES NOT WORK).

	This is a script that will configure wine.

	go to your new sidenet folder (In my case cd ~/Wine/sidne <tab>)

	In a terminal (CLI) [NOT AS ROOT]



		CD ~/WINE/WINE-CONFIG-SIDENET-1.9.0/

		CHMOD A+X SETUP

		./SETUP


	sidenet runs in the terminal (CLI) and asks 6 questions:

		1. This script will install wine-config-sidenet.

			Continue(y/n)?> Answer “y” 

		2. Please specify your language. If unsure, just hit enter and
english version will be installed.

			Language code ? : <enter>

		3. Install option (0-4)? : Enter “3” (Manual installation)

		4. Install IE6 -> Answer “n”

		5. Link ~/.font -> c:\windows\fonts (y/n)? -> Answer “y”

		6. Virtual C drive path ? : -> Answer ” ~/.wine/c “(or
~/.wine/drive_c)

	

	Lots of output to terminal, no error messages

	At the end of the script sidenet opened my browser to tell me the
installation was complete



3. Install IE 5.5. (Dragon did not work with IE6 and wine-0.9.12)

		IE6 works fine with wine-0.9.12, *BUT DOES NOT ENABLE DNS*

	Copy the IE5 program to the c drive

		copy ie55sp2.exe from ~/Wine to ~/.wine/c (GUI or command line, your
choice)

	Run installer ; command line again (Not as root)



		CD ~/.WINE/C

		WINE IE55SP2.EXE


		This creates a new folder in c and unpacks or “Inflates” some cab
files

	Now install IE5

		change to the new IE5 directory

		*cd IE<tab> *(cd IE\ 5.5\ SP2\ Full/) [watch the spaces if you do ot
use tab completion]



Now install IE (again in a terminal window [CLI]):



	*	wine IE5SETUP.EXE*



		This installs IE5 (a well known virus) into the fake C drive

			Accept agreement -> click “Next” radio button

			Chose “Install Minimal” -> click “Next” radio button

			Unselect “Internet Explorer Help” -> click “Next” radio button

				Lots of output to terminal



		Downloads and installs IE5.5



			See message regarding DirectX Layer and DirectDrawEx not installed

				does not seem to matter -> click “Next” radio button



			You will next see a window to Restart computer -> click “Finish”

				does not really restart the computer, just winedesktop



			Lots of output to terminal, some apparent error messages

				does not seem to matter



		You will then get an error messages/complaints from IE, I ignored
this as it does not seem to matter



		Click “OK”



		Lots of output to the terminal here.

	

		Ends in “err” messages, the last 3 lines of a long listing ends as
follows:



			wine: could not load L"C:\\windows\\GRPCONV.EXE": Module not found

			err:wineboot:runCmd Failed to run command L"grpconv.exe -o" (126)

			err:wineboot:ProcessRunKeys Error running cmd #2 (126)



	Hit <enter> and you will get the command prompt back:



		:~/.wine/c/IE 5.5 SP2 Full$





4. Install Dragon

	No problems here. I ignored all the output and error messages. Did not
seem to matter.

	The trick is to use wine to install Dragon

	Continue in a terminal (CLI)



		*cd ~/.wine/dosdevices*



	you need to mount and know the name of your Dragon CD

	Fedora auto mounts my CD in /media

	name of CD is : /media/ DNS_MED_7_0

	Therefore type (in a terminal) [This makes a symbolic link]



		Fedora:

			ln -s /media/DNS_MED_7_0/ f:



		UBUNTU:

			LN -S /MEDIA/CDROM0/ F:


		Zenwalk:

			ln -s /mnt/cdrom/ f:

		

	*	NOTE: Link to “e”: did not work* Link to e: seem OK , but it is
BROKEN !!!





	now install Dragon

	Again in the terminal (CLI)



		*wine f:setup

*

	This starts the Dragon installer and installs Dragon. [this is where I
have a full set of screen shots



		Accept license -> click “next”



			Enter user name and serial number



		Click “Next”



		Click “Next”



		Click “Yes”



	I had no problems with the mouse and using the radio “OK” buttons

	I did a typical install into the default directory.

	Again, all the buttons worked for me and I used the keyboard only to
type the serial # and mouse to click “OK” 

	Got some output to the terminal, I ignored.



	Install then seems to hang at 89% install -> -> Be Patient

	A dialog appears to register Dragon



		Choose “print registration form” option

		Close the IE dialog that appears

			This will fool DNS into thinking you have registered the product an
it will not ask you again

			With all other options DNS will keep asking you to register.

			I, of course, registered DNS years ago.



The next box to appear is; (sorry, screen shots did not post)



Uncheck the “Enable QuickStart mode on Windows Startup” box



Click “Finish”



Click “OK” in the Restart Windows box



	Installation of Dragon is  now complete









Part 4 Configure wine

1. Terminal (CLI) again

	type winecfg

	you get a gui to configure wine





	Emulate windows 98

	Click “add application”

		Use mouse to and click on natspeak.exe

			~/.wine/c/program
Files/Scansoft/NaturallySpeaking/Program/natspeak.exe



					Click the “Open” box





Which then gives you this:



	Not click the “Libraries” tab and configure some dll's:



		Under the Libraries tab Add the following enteries:



		* -> Click “edit” and change to “builtin,native”

		msvcrt

		riched20

		ole32

		oleaut32

		rpcrt4



Final Product looks like this



	Click “Apply” -> Click “OK”  -> This will exit winecfg



	Audio tab: Use OSS for sound (NOT ALSA) (under the winecfg audio tab)

		Audio tab crashes in Ubuntu, does not matter it was set as default by
sidenet

		OK in Fedora and Zenwalk (scree shot below from Fedora core 5)



NOTE: In winecfg, under the “Graphics” tab

	1. Emulate a virtual desktop -> I changed my wine desktop to 1280 x
1024

			MY DEFAULT resolution is 1600 x 1200 !!!



		Recommend a  800 x 600 if you default resolution is 1280 x 1024

			This sets the SIZE of the wine desktop, not the resolution.



	2. I uncheked the “allow the windows manager to control the windows”
box

		Dragon seems to run significantly faster if this box is unchecked

		Could be wrong, this one is obscure to me



Finish with a few commands in the terminal:



	2. Terminal (CLI), add an empty file “comdlg.dll” in ystem 32

		

		TOUCH ~/.WINE/C/WINDOWS/SYSTEM32/COMDLG32.DLL 


NOTE:

The comdlg32.dll “workaround” enables Dragon, but breaks some programs
in wine

	Most notable, it may break winecfg !!!!!!!!!!!!

		Just delete or rename comdlg and winecfg will again work, Dragon will
break

	Repeat re-name/touch.... comdlg32.dll-> enables Dragon, disables
winecofg, you get the idea



	I don't know (don't care) what else is broken (in wine), the only
windows program I run is Dragon







3. *Copy riched20.dll to ~/.wine/c/windows/system32*

		windows dll location:  C:\Windows\winnt\system32\riched20.dll



NOTE: THIS REQUIRES A VALID WINDOWS LICENSE.

I used windows XP dll's, no problem

copy riched20.dll to: ~/.wine/c/windows/system32









Step 5 Configure microphone



1. Dragon CAN NOT adjust the microphone (volume) settings.



2. alsamixer did not work for me

	It showed my microphone, but I could not configure the microphone
capture

	You can read man alasmixer if you want, it did not help me much



3. *Go to this website:
http://www.skype.com/help/guides/soundsetup_linux.html*

	Thank you Skype.

	I used Kmix

	Command line again

		kmix &

		Enable BOTH the capture and microphone

	See pictures on Skype website

	See this picture from my desktop

	Note which red/green lights are activated and slider (volume)
settings



alasamixer

	Command line

	Use <tab> to move between Playback, Capture, and All

	Use arrow keys to move between various channels

	Go to “Capture” (may not appear on the first screen, just use arrows
to move over)

	Use arrow up or a number to set level

	<Esc> key to exit



Screen shot alsamixer:  Note the volume on CAPTURE and AC97 !!!



Kmix INPUT tab: Note settings for Mic, Capture, and AC97



Kmix Output tab: Note settings for Mic and AC97



Run Dragon

1. Command line again



2. The desktop icon does not work YET

		After Dragon is configured it will work

	wine ~/.wine/c/programfiles/scansoft/.... whatever. I use tab
completion:

	wine ~/.wine/c/P<tab>

	wine ~/.wine/c/Program\ Files/S<tab>

	you get the idea????

	Final destination: wine ~/.wine/c/Program\
Files/ScanSoft/NaturallySpeaking/Program/natspeak.exe





3. This will bring you into the (audio) setup wizard followed by
general training.

	I had mucho problems here. If your microphone is not configured -> no
audio input -> setup fails

	If you have this problem, go back to kmix and  skype website and try
again

	Or try a different mixer



		Adjust microphone, click Next



		Read text



	Click Next to enter General Training



	Complete General training (no screen shots)



4. Once the microphone is working general training begins.



5. I had no problems with the mouse or radio (OK) buttons through
general training.

	See other posts for potential problems and fixes (if any)

	Something about the Ctr or Alt key and letters?



6. This would be a good time to BACKUP ~/.wine !!!!!!!!!!!!!!!!!



Use Dragon



Last observations:



1. This is a hack, at best; Do not get fancy.



2. Dictate to dragonpad and be careful when changing the font (my
default was arial) as not all fonts seem to work

		If they do not text is “invisible” in Dragon pad

		Cursor moves with voice recognition -> no text



3. Tried notepad –  Mixed results at best. Advise you stay with Dragon
Pad

	

4. I changed to my preferred font in Dragonpad (Times New Roman; copied
from Windows) worked without problems.



5. Hot keys did not work, nor did the voice commands “go to sleep” or
“wake up”.



6. Use mouse to click the microphone (on dragon bar) or (if they work
for you) voice commands (“go t sleep” ; “wake up”) to turn microphone
off and on.

7. Speed was good in fact for an old computer at least as fast as
native to windows.



8. If the program crashes or freezes, use in a terminal (CLI)
wineserver -k and restart Dragon.



9. If Dragon crashes “hard” it may take out your sound settings and you
will need to re-set them with alasmixer or kmix.



10. If Dragon crashes real hard it may take out your X server- > you
will need to debug or reboot (I reboot).



11. Did I mention; BACKUP your ~/.wine folder !?!



Debriefing



Advice:

	Save you work often (in case of crash)

	Once done with dictation you may:

		Cut and paste to Linux (Abiword, OpenOffice, KOffice, etc)

		Save the file and open it with any Linux native editor

	Once in a “standard” Linux work processor, change font, format, etc

	Once Dragon is installed and configured

		did I mention; BACKUP your ~/.wine folder

	You can now use the Dragon shortcut on your desktop to start Dragon

			or the command line



12. Save your work often. I keep the mouse over the save box on the
dragon pad menu and click it from time to time or when attempting
anything fancy (tweak).



13. Create a separate user for each task (intended use) of dragon. For
example, I use Dragon professionally (in case you have not guessed). I
have a user in Dragon for professional dictation, and a second for
personal use (E-mail, general non-professional dictation).  I have the
most problems with general (personal) dictation. Dragon puts
professional terminology into general dictation (accuracy is poor). If
I train Dragon to do both tasks (professional and personal) accuracy
deteriorates fast. If I use two separate users, accuracy remains high
for each task (professional vs. general dictation).



14. Training: The Dragon recognition engine used “fuzzy logic” and,
with continued training, accuracy first improves, then deteriorates.
“best method” to optimize accuracy:

	I never found analyzing documents was not all that helpful.

	Train/dictate for 30-40 hours, then run the acoustic optimizer

	That's it. From then on, do not save your speech files when you
dictate

	Do not save your speech files if you dictated with a “cold” or cough

	Instead, to train or maintain you vocabulary list, open a session with
dragon

		add or train any new (or old) words

		save the speech files session

		run acoustic optimizer only if needed

	Continued training (after 30-40 hours) does not seem to improve
accuracy, in fact I think it lowers over time with

		(continued training and saving of speech files the dragon engine
“over learns”). This is due to fuzzy logic

		and over training within such a system.



15. Crash:

When dragon crashes, it crashes hard. It may take out alsa (sound). It
may take out X server.



Solution (if x server crashes):

Crtl-alt-F1

At login prompt-> root, enter root password -> shutdown -r now (reboots
computer)

For me Dragon crashes with the spelling tool ”spell that”, wither as a
voice command or as an option from the correction

	 dialog (“correct that” -> choose spell -> crash)

YOU HAVE BEEN WARNED


16. Error messages:

I keep getting a repetitive COM returned an unexpected error code:
Details are c0000005

	Click the radio "OK" button -> It's like the energizer bunny, it keeps
going......

	I ignore it altogether, move the dragon pad window over (on top of)
the error window -> problem solved (hidden)

	Out of sight..... Out of mind



Just click on the Dragon pad window and it will become the active
window covering the error message.

	

If I move the Dragon pad window a little more to the right I will no
longer ever see the error message.



17. Voice commands:

“Correct that” works (increase list to 9 in “options”), but spelling
dialog crashes the program.

	Either “spell that” or using the spell option form the corrections
list -> crash (see No. 1 above)

	If none of the 9 choices in the correction list are correct, choose
“unselect that” as other options tend to freeze or 			crash Dragon 



18. Use the Words tab on Dragon menu to train words/phrases

	When training->  the words do not appear in the dialog box, but it
seems to work OK



19. Import Fonts

	Copy Font from Windows to ~/.fonts or ~/.wine/c/fonts (same thin,
sidenet created a link, see install sidenet above)

	To some extent this can fix the problem of Invisible text in some (not
all) message boxes

		Works in word training box whis is most important.





I have now told you more then I know!!



Beam my up Scotty, there is no intelligent life here





Personal notes:

Could not import dragon 8 vocabulary into DNS 7, incompatible
vocabulary between DNS 7 & 8

As above, I could not install or update to DNS 8


-- 
bodhi.zazen




More information about the ubuntu-users mailing list