public inbox for speakup@linux-speakup.org
 help / color / mirror / Atom feed
* changing synths
@  Christopher Moore
   ` Gregory Nowak
  0 siblings, 1 reply; 5+ messages in thread
From: Christopher Moore @  UTC (permalink / raw)
  To: speakup

Hello,
I have speakup sarting with soft synth.  How can I switch to a hardware 
synth (dectlk) without rebooting?  
Can I do this by setting speakup parameters or do I have to load modules 
with modprobe?  
How do I assign a port?

TIA
Chris

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: changing synths
   changing synths Christopher Moore
@  ` Gregory Nowak
     ` Chuck Hallenbeck
  0 siblings, 1 reply; 5+ messages in thread
From: Gregory Nowak @  UTC (permalink / raw)
  To: Speakup is a screen review system for Linux.

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Fri, May 29, 2009 at 08:04:44PM -0400, Christopher Moore wrote:
> I have speakup sarting with soft synth.  How can I switch to a hardware 
> synth (dectlk) without rebooting?  

The easiest way is by using the speakwith/talkwith script from the
contrib directory from the speakup source tree,
(synthscripts-v2.tar.bz2). Alternatively, you can get them from
<http://hallenbeck.ftml.net/synthscripts-v3.tar.bz2>, which actually
seems to be newer than what's in the contrib directory.

> Can I do this by setting speakup parameters or do I have to load modules 
> with modprobe?  

If the synthesizer you want to switch to is already in the kernel,
either by being built into the kernel, or by having the module already
loaded beforehand, you need to echo the synth keyword to
/sys/module/speakup/parameters/synth. So, using dectlk as an example,
you'd do:

echo dectlk >/sys/module/speakup/parameters/synth

If the synth you want to switch to is built as a module, and that
module hasn't yet been loaded, you'd just modprobe it. So, again for
the dectlk, you'd modprobe speakup_dectlk I believe. Again, using the
speakwith/talkwith script takes care of all of that for you automagically.

> How do I assign a port?

That depends. If your synth is built into the kernel, you need to add
"speakup.ser="x to your boot loader's configuration to be passed as a
kernel parameter. In lilo.conf, you'd add this to the append=
line. The x represents the serial port in question, (I.E. ttyS0 is 0,
ttyS1 is 1, and so on). If the synth you want to switch to is built as
a module, you'd pass the port on the modprobe line as ser=x, where x
is the serial port as described above. So, if you want to modprobe the
module for the dectlk synth, and that synth is on the second serial
port, you'd modprobe it as:

modprobe speakup_dectlk ser=1

Note that if you're going to use the speakwith/talkwith script, and
your synth isn't on the first serial port, you'll need to configure
that in /etc/modprobe.d on my debian system, though this is standard I
think. So, using the dectlk again on the second serial port, create a
file called /etc/modprobe.d/speakup.conf, you can call it whatever you
want, I call it speakup.conf on my machines. In that file, you'd put a
line like this:

options speakup_dectlk ser=1

Now, whenever the speakup_dectlk module is loaded, the ser=1
parameter will automatically be passed to it. Hth.

Greg


- -- 
web site: http://www.romuald.net.eu.org
gpg public key: http://www.romuald.net.eu.org/pubkey.asc
skype: gregn1
(authorization required, add me to your contacts list first)

- --
Free domains: http://www.eu.org/ or mail dns-manager@EU.org
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)

iEYEARECAAYFAkoggOgACgkQ7s9z/XlyUyDAzgCeM5HSVyXltjFtO2Uuyr0pjvNB
DEMAnR7HiriKF+r9toBA+bxdLI4C9hOz
=6lWX
-----END PGP SIGNATURE-----

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: changing synths
   ` Gregory Nowak
@    ` Chuck Hallenbeck
       ` Christopher Moore
  0 siblings, 1 reply; 5+ messages in thread
From: Chuck Hallenbeck @  UTC (permalink / raw)
  To: Speakup is a screen review system for Linux.

Hi guys,

On Fri, May 29, 2009 at 05:42:17PM -0700, Gregory Nowak wrote:
> If the synth you want to switch to is built as a module, and that
> module hasn't yet been loaded, you'd just modprobe it. So, again for
> the dectlk, you'd modprobe speakup_dectlk I believe. Again, using the
> speakwith/talkwith script takes care of all of that for you automagically.

Not quite. The speakwith/talkwith scripts do not load modules. With
speakup, it is okay to have several of the driver modules loaded at the
same time, so that switching between synths is just a matter of echoing
the desired synth name to that variable, except that the connector
programs need to be killed or restarted as appropriate. Switching from
a soft synth to a hardware synth requires not only that the synthname
be changed, but the connector program be killed. And vice versa, it
needs to be restarted when switching back. Those are the chores the
scripts handle, plus reinitializing the speakup parameters just as
speakupconf would do.

Version 3 of the scripts merely avoids the bashism of relying on $UID
to detect who's running the scripts. 

Chuck


-- 
The Moon is Waxing Crescent (41% of Full)
                  My web site: www.hallenbeck.ftml.net
                      Microblog: http://identi.ca
                                --------
The reason that every major university maintains a department of
mathematics is that it's cheaper than institutionalizing all those people.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: changing synths
     ` Chuck Hallenbeck
@      ` Christopher Moore
         ` Chuck Hallenbeck
  0 siblings, 1 reply; 5+ messages in thread
From: Christopher Moore @  UTC (permalink / raw)
  To: Speakup is a screen review system for Linux.

Hello,
I was all set to run Chuck's talkwith script but it wasn't necessary.

I had speakup running with espeakup.
Next I loaded the dectlk module and specified a serial port lite this:
sudo modprobe speakup_dectlk ser=1
Speakup read out some dectalk commands and finished with dectalk 
expressed detected.

Next I unloaded espeakup like this:
sudo /etc/rc.d/espeakup stop

And speakup automatically switched to the dectalk with having to do 
anything else.  I also verified that the synth parameter contains 
dectlk.  

I guess I have two questions for Chuck.  First, why two scripts?  Do 
they do different things?
And, second, now that speakup seems to be smart enough to switch to the 
hardware synth when the soft connector is killed, when are these scripts 
necessary?

You may want to include a README file in the tarball to explain some of 
this stuff.

FYI, I'm running arch linux with sudo installed.  I expect we'd get 
similar behavior on a debian based system.
Chris

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: changing synths
       ` Christopher Moore
@        ` Chuck Hallenbeck
  0 siblings, 0 replies; 5+ messages in thread
From: Chuck Hallenbeck @  UTC (permalink / raw)
  To: Speakup is a screen review system for Linux.

Hi Chris,

Two scripts because speakwith was already in use by a number of people
when espeakup was offered, and the keyword "soft" then became
ambiguous. The speechd-up connector was started or stopped by
speakwaith, since "soft" referred to speech-dispatcher. However, I
wanted "soft" to cause espeakup to be started or stopped instead, and I
figured that very few folks would be using both speech-dispatcher and
espeakup, but would be using one or the other. And it doesn't work to
have both connectors running. So each script kills both connectors, but
speakwith starts speechd-up while talkwith starts espeakup.

I am running archlinux also, by the way. 

The steps you described were okay, they were correct and appropriate,
but could you have done them if "none" had been selected for the synth?
I submit that typing "talkwith soft" or "speakwith ltlk" would be
easier to do if you were without speech feedback for some reason. 

The other thing the scripts do is reload the speakup parameters from
/etc/speakup/synthname  (synthname is specific for your synth) just as
speakupconf would do, and this was added when it appeared that
speakupconf save was broken. It turns out the problem was in speakup,
not speakupconf, and a fix is in the pipeline, thanks to Chris Brannon.

You're right about the README. I'll put it on my list.

Chuck



On Sat, May 30, 2009 at 08:48:58PM -0400, Christopher Moore wrote:
> Hello,
> I was all set to run Chuck's talkwith script but it wasn't necessary.
> 
> I had speakup running with espeakup.
> Next I loaded the dectlk module and specified a serial port lite this:
> sudo modprobe speakup_dectlk ser=1
> Speakup read out some dectalk commands and finished with dectalk 
> expressed detected.
> 
> Next I unloaded espeakup like this:
> sudo /etc/rc.d/espeakup stop
> 
> And speakup automatically switched to the dectalk with having to do 
> anything else.  I also verified that the synth parameter contains 
> dectlk.  
> 
> I guess I have two questions for Chuck.  First, why two scripts?  Do 
> they do different things?
> And, second, now that speakup seems to be smart enough to switch to the 
> hardware synth when the soft connector is killed, when are these scripts 
> necessary?
> 
> You may want to include a README file in the tarball to explain some of 
> this stuff.
> 
> FYI, I'm running arch linux with sudo installed.  I expect we'd get 
> similar behavior on a debian based system.
> Chris
> _______________________________________________
> Speakup mailing list
> Speakup@braille.uwo.ca
> http://speech.braille.uwo.ca/mailman/listinfo/speakup

-- 
The Moon is Waxing Gibbous (52% of Full)
                  My web site: www.hallenbeck.ftml.net
                      Microblog: http://identi.ca
                                --------
The reason that every major university maintains a department of
mathematics is that it's cheaper than institutionalizing all those people.

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~ UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
 changing synths Christopher Moore
 ` Gregory Nowak
   ` Chuck Hallenbeck
     ` Christopher Moore
       ` Chuck Hallenbeck

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).