software speech with speakup in Debian

Kenny Hitt kenny at hittsjunk.net
Mon Jan 24 11:11:26 EST 2005


Hi.  I've been using software speech on my Debian boxes for a while and
I thought I would post some info on how I did it.
I use Debian packages for speech-dispatcher.  I built speechd_up from
CVS.  To install speech-dispatcher type:

apt-get install speech-dispatcher speech-dispatcher-festival

To build speechd_up, you will also need Debian's libspeechd-dev package.

apt-get install libspeechd-dev

After you build and install everything, put the attached script in
/etc/init.d and type:


update-rc.d speechd_up start 21 2 3 4 5 . stop 21 0 1 6 .

This will create the links to start speechd_up after speech-dispatcher.

I build speakup as modules.  I add the line

speakup_sftsyn

to /etc/modules to load the soft synth module.

I don't know much about bash programming, so good luck using it.
          Kenny

-------------- next part --------------
#! /bin/sh
#
# speechk_up init script created from the Debian 
# skeleton	Example initscript
#
# Author:	Kenny Hitt <kenny at hittsjunk.net>.
#
#
# Version:	0.02 22-Jan-2005  
#Bugs: doesn't remove pid file on stop
#

set -e

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="speechd_up "
NAME=speechd_up
DAEMON=/usr/local/bin/$NAME
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME

# Gracefully exit if the package has been removed.
test -x $DAEMON || exit 0


#set options for software synth.  Needs speakupconf from the speakup source.
source /usr/local/sbin/speakupconf load

#
#	Function that starts the daemon/service.
#
d_start() {
start-stop-daemon --start --quiet --pidfile $PIDFILE \
		--exec $DAEMON
}

#
#	Function that stops the daemon/service.
#
d_stop() {
	start-stop-daemon --stop --quiet --pidfile $PIDFILE \
		--name $NAME
}

#
#	Function that sends a SIGHUP to the daemon/service.
#
d_reload() {
	start-stop-daemon --stop --quiet --pidfile $PIDFILE \
		--name $NAME --signal 1
}

case "$1" in
  start)
	echo -n "Starting $DESC: $NAME"
	d_start
	echo "."
	;;
  stop)
	echo -n "Stopping $DESC: $NAME"
	d_stop
	echo "."
	;;
  #reload)
	#
	#	If the daemon can reload its configuration without
	#	restarting (for example, when it is sent a SIGHUP),
	#	then implement that here.
	#
	#	If the daemon responds to changes in its config file
	#	directly anyway, make this an "exit 0".
	#
	# echo -n "Reloading $DESC configuration..."
	# d_reload
	# echo "done."
  #;;
  restart|force-reload)
	#
	#	If the "reload" option is implemented, move the "force-reload"
	#	option to the "reload" entry above. If not, "force-reload" is
	#	just the same as "restart".
	#
	echo -n "Restarting $DESC: $NAME"
	d_stop
	sleep 1
	d_start
	echo "."
	;;
  *)
	# echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
	echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
	exit 1
	;;
esac

exit 0


More information about the Speakup mailing list