SourceFiles.org - Use the Source, Luke
Home | Register | News | Forums | Guide | MyLinks | Bookmark

Related Sites

Latest News
  General News
  Reviews
  Press Releases
  Software
  Hardware
  Security
  Tutorials
  Off Topic


Back to files

GVOICE - Voice Output GKrellM plugin

Author: Dean Johnson
Email: dtj@uberh4x0r.org
WWW: http://www.uberh4x0r.org/~dtj/

Copyright (c) 2001 by Dean Johnson. This software is released under the GNU General Public License. Read the COPYRIGHT file for more info.

Description

GVOICE is a plugin for GKrellM that allows the user to have voice alerts, via IBM's ViaVoice technology.

Dependencies

Apart from the depending on the standard stuff that GKrellM plugins typically depend on, the GVOICE plugin requires the IBM ViaVoice runtime libraries to run and the ViaVoice SDK to build. Information on these libraries can be found at:

http://www-4.ibm.com/software/speech/dev/ttssdk_linux.html

Features

GVOICE enables other GKrellM plugins to use the IBM ViaVoice functionality without requiring that it be there to install. If the IBM software is not there, the voice functionality simply won't work.

Todo

  • Tweak parameters to make it sound more realistic.
  • Work on adding content sensitive parameter tweaks for emphasis and realistic speech.

Troubleshooting

Sound stuff is a really large can of worms and fraught with danger. I will do my best to try and enumerate some of the issues.

  • If it doesn't work, make sure you either have an 'eci.ini' file in your local directory or have your 'ECIINI' environment variable pointing to a valid 'eci.ini' path.
  • Use the esound daemon for the sound device for multimedia apps such as XMMS. If you use the devices directly, such as /dev/dsp, other sound apps probably won't work, including GVOICE, and will likely just hang.
  • The RPM installation process installation modifies /etc/profile to
    append

export ECIINI=/usr/lib/ViaVoiceTTS/eci.ini

You will need to logout and log back in or otherwise get the ECIINI environmental variable set in your environment.

Plugin Interface

The following is a C code snippet that allows a plugin to communicate with the GVOICE module.

static void
sendVoice(char *str)
{

static int voice_fifo = -1;

        if (voice_fifo == -1) { // not open yet
                char    buf[512];
                sprintf(buf,"/tmp/gvoice_%08x",getpid());
                if (!access(buf,W_OK)) {
                        voice_fifo = open(buf,O_NONBLOCK|O_WRONLY);
                }
                else    {
                        fprintf(stderr,"Cannot open gvoice file %s\n",buf);
                }
        }
        if (voice_fifo > 0) {   // opened and ready to rock and roll
                write(voice_fifo,str,strlen(str));
        }

}


Other Sites

Discussion Groups
  Beginners
  Distributions
  Networking / Security
  Software
  PDAs

About | FAQ | Privacy | Awards | Contact
Comments to the webmaster are welcome.
Copyright 2006 Sourcefiles.org All rights reserved.