Cepstral, LLC
Support FAQ for x86-64-Linux users




  • How do I download and purchase voices?

  • You can download evaluation versions of our voices from the
    downloads page. These evaluation versions are fully functional, but will continually remind you that they aren't registered. To continue using our voices on a permanent basis (as well as remove the nag messages), you must purchase a valid license from the Cepstral Store.



  • How long are my license keys valid, and how do I upgrade?

  • Your keys will function indefinitely for the major version you purchased, including incremental updates (4.x.x). When a new major version is released (5.x.x) you will have to upgrade your license should you choose to use the new version. However, if you decide not to upgrade, your previous version will continue to work, so a repeat purchase will never be necessary.

    For more information on upgrading, please see the
    upgrade page.



  • How can I retrieve my license information?

  • If you have purchased voices or other licenses from Cepstral and need to retrieve your license information, you can make use of our
    License Key Recovery System.

    To make use of the Recovery System, you need to have access to the email address you provided when you purchased your voices. To retrieve your license information, visit the License Key Recovery System and enter the email address you provided when you purchased your voices and other licenses, then our system will validate it against our records and mail your license information to you.

    If you do not have access to the email account you used when you purchased, please contact us and we can update our system to reflect your current email address. Please provide as much information as you can regarding your purchase(s). Any of the following will be useful: your name, the email address you used when you purchased, and your order number(s). Please also provide your current email address.



  • How do I install voices?

  • Simply extract the gzipped tarball you downloaded, and run the "install.sh" script (as sudo or root). It will walk you through the installation process automatically.



  • How do I uninstall voices?

  • By default, Cepstral voices are installed to "/opt/swift/voices/[Voice Name]". To remove an individual voice, simply delete that voice name directory in "/opt/swift/voices/" (for example, "/opt/swift/voices/David"). To remove all Cepstral software & voices, simply remove the "/opt/swift" directory.



  • Once I purchase voices, how do I enter my license keys?

  • You can enter your license key using the command-line swift utility. The swift executable can be found at [install path]/bin/swift. (The default path is /opt/swift/bin/swift.)

    To register a voice using the swift executable, call swift with the '--reg-voice' switch. You will be prompted to enter your name, your company name, the name of the voice you wish to register, and then the license key.

       swift --reg-voice
    
                     Your Name: John Q. Public
       Company (if applicable): Acme Widgets
                         Voice: David
                   License Key: xx-xxxxxx-xxxxxx-xxxxxx-xxxxxx-xxxxxx
    
    You will receive feedback regarding the validity of your entries. If the information is valid, the voice will no longer nag.

    Additionally, you can use the '-d' or '-n' switches to directly register a particular voice based on it's install directory or voice name. In this case, you will not be prompted to enter the name of the voice to register.

       swift --reg-voice -d /opt/swift/voices/David
    
    or
       swift --reg-voice -n David
    
                     Your Name: John Q. Public
       Company (if applicable): Acme Widgets
                   License Key: xx-xxxxxx-xxxxxx-xxxxxx-xxxxxx-xxxxxx
    
    NOTE: The voice must be registered by the user that installed the voice. If the voice was installed by root, you must register it as root.



  • Once I purchase a concurrency license, how do I enter my key?

  • Under all platforms you must use the swift command line tool (with the '--reg-ports' switch) to register your concurrency license. You will be prompted to enter your name, your company name, the number of ports you wish to register, and then the license key.

       sudo swift --reg-ports
    
                     Your Name: John Q. Public
       Company (if applicable): Acme Widgets
               Number of ports
           (blank = unlimited): 8
                   License Key: xx-xxxxxx-xxxxxx-xxxxxx-xxxxxx-xxxxxx
    
    You will receive feedback regarding the validity of your entries. If the information is valid, your concurrency license will be active immediately.



  • How can I tell if my Concurrency License is being used by the system?

  • This information is presented when you use the swift command line tool (with the '-V' switch). As an example, you may see:

       swift -V
    
       Cepstral Swift v4.1.0, June 2006
    
       Default Voice:  Callie               v4.1.0
       Language:       US English           v4.1.0
       Lexicon:        US English           v4.1.0
    
       Concurrency:    16 Port(s) Registered
                       7 Port(s) In Use
    
    Additionally, if you are programming an application using the Swift API, you can retrieve this information through a function call. Please see the Cepstral SDK documentation for more information.



  • What are the minimum system requirements?

  • The minimum system requirements for running Cepstral voices are as follows:
    • Operating System: i386-Linux (most distributions)
    • CPU: Intel Pentium II, AMD K6
    • System Memory: 64MB
    • Storage Space: 25-110 MB (per voice)



  • Do Cepstral voices work in KDE?

  • Yes, it's possible to integrate our voices into the
    KTTS text-to-speech system present in KDE 3.4 or later. First, select KTTS from the KDE menu or run kttsmgr from the command line to open the configuration manager. In the Talkers tab, click the Add button to add a new voice. Now, select the "Show All" option for synthesizers, choose the Command synthesizer, and click OK. You'll now be asked to choose a language. Select anything here, as it will be ignored. Finally, it's time to specify the swift command to run. To speak using the default voice, use:

    swift %t -o %w

    If you want a specific voice, use the -n switch like this:

    swift %t -o %w -n Isabelle

    You'll also want to select Latin1 as the character set. Click OK, then Apply to set the current voice. Your voice should now work in any KDE app that uses KTTS.



  • Do Cepstral voices work with Festival?

  • We have developed a Perl script which will create a directory called "cepstral_swift" in the current working directory for each voice directory named as an argument. When placed inside Festival's voices/ directory allows access to Cepstral Swift voices from within festival. You can download the script on
    this page.



  • What applications are compatible with your voices?

  • The following is a sample of known compatible applications (listed alphabetically). If an application is known to work but is not listed here, please
    let us know!

    * If you are using one of these applications and your Cepstral voices aren't working with it, please contact the respective manufacturer for information on how to integrate Cepstral voices with their software.



  • How can I alter my text to control how the Cepstral voice reads it?

  • You can use SSML - the Speech Synthesis Markup Language. For more information about using SSML with Cepstral voices, please see
    this page.



  • What do I do if a word isn't pronounced correctly?

  • Word pronunciations are specified in the lexicon. Pronunciations for words not known to the lexicon are generated using a statistical model.

    Many words have more than one possible pronunciation. These words are known as homonyms or homographs. The Swift engine tries to disambiguate, or guess which of the possible pronunciations is correct. For example, the word "read" can be either a present- or past-tense verb.
      "I like to read books" -> should be pronounced "reed"
      "I read that book last week" -> should be pronounced "red"
    Pronunciation of the word "graduate," on the other hand, depends on whether it is a verb or a noun.
      "Congratulations to the graduates of 2004" -> should be pronounced "gra-dyu-its"
      "He will go to medical school after he graduates" -> should be pronounced "gra-dyu-eyts"
    Swift keeps many homographs in the lexicon. Depending on your application, you may wish to force one pronunciation to be chosen. This can be done by
    editing the lexicon.txt file. You can also customize pronunciations by adding them to lexicon.txt.

    Another way to change how a word is pronounced is to embed pronunciations as you would wish them spoken into the text, using SSML.

    * Note, that once an entry is added to the lexicon file, all occurrences of that word will be pronounced using the specified phonemes.



  • How can I enter embeded pronunciations of words in-line with text?

  • There are several ways to affect pronunciation, and which one to use depends on how you are using the application.

    If you are using the swift command line application to process text, or almost any application that calls Swift directly, you are using our native interface. Swift supports the
    Speech Synthesis Markup Language (SSML) as the default input mode for the synthesizer, with our own phoneme set for specifying pronunciations. With this you can put in-line pronunciations, and other mark-up defined in SSML.

    Our phonetic alphabet is the one that you also use when making entries into a swift voice dictionary (lexicon.txt). You can find more about this here.

    Example:
      Welcome to <phoneme ph="k eh1 p s t r ah0 l">Cepstral</phoneme>.
    Of course, this example is contrived, because our engine already says "Cepstral" properly.



  • How can I embed Cepstral TTS into my [PHP/CGI/etc] web application?

  • The best way to use Cepstral voices in your web application is to make a system call to the swift command-line utility to generate an audio file on disk that you can then send or stream back to the client's web browser.

    The swift utility is installed with every voice for Mac OS X, Desktop Windows, Linux, and Solaris. If your Cepstral voices were installed to the default location, the swift executable can be found at:

    /opt/swift/bin/swift

    For a complete list of usage options, run swift --help on the command line. Before adding calls to swift to your web application, we suggest that you spend some time using swift interactively on the command line to learn about its usage and features. Some common examples follow:

    To specify a voice by name:

    swift -n Callie "This is a test."

    To create a .wav file:

    swift -o myaudiofile.wav "This is a text."

    To convert text from an input file to speech in a .wav file:

    swift -f mytextfile.txt -o my audiofile.wav

    To see a listing of synthesis events corresponding to the audio:

    swift --events "This is a test."

    A complete list of options and more examples are available by running swift --help.

    * Any public distribution of Cepstral generated audio requires an additional permit. To learn about, or purchase an Audio Distribution License, please visit the
    licensing page on the Cepstral Store.



  • How do I edit the lexicon?

  • A file can be created in any voice's installation directory called lexicon.txt which can be modified for custom pronunciation of certain words. For more details about editing this file, see
    this page.

    * Note, that once an entry is added to the lexicon file, all occurrences of that word will be pronounced using the specified phonemes.



  • How do I create a WAV file of the spoken text?

  • You can use the included command line program called "swift", which can perform several functions, such as saving the spoken output to a wav file.

    Open a command shell in your operating system. Please note which directory you're in, as that is where the wav file will be saved (unless otherwise specified) and where Swift will look for text files to read (again, unless otherwise specified).

    To hear Swift speak aloud, type:

    swift "hello world"

    To speak aloud with a specific Cepstral voice installed on your system (Emily for example), type:

    swift -n Emily "hello world"

    To save the spoken output to a wav file, type:

    swift -n Emily "hello world" -o myfile.wav

    To convert a plain text file into a spoken wav file, type:

    swift -n Emily -f textfile.txt -o myfile.wav

    That's all there is to it. To see a list of all available options you can use with Swift, type swift by itself, and press Enter.



  • How do I choose a different audio format?

  • The default output format we use is 16-bit signed linear PCM, little-endian, at the native sampling rate of the voice, and contained within a WAV file.

    There are three engine parameters that control the format of outputed audio in Swift. The audio/output-format parameter specifies the container type to use for the audio. It can be raw (no container, just the data), riff (a WAVE file), or snd (used by Sun). In contrast, audio/encoding specifies the format of the data that goes inside the container: 8-bit PCM, 16-bit PCM, u-law or a-law. The default sampling rate is the sampling rate of the voice for 16-bit PCM, or 8kHz for the other encodings. It can be overidden with the audio/sampling-rate parameter.

    For example, the following command will create an unheader 8kHz u-law file:

    swift Hello -o myfile.raw -p audio/encoding=ulaw,audio/output-format=raw

    Or 8-bit, 8kHz linear PCM:

    swift Hello -o myfile.wav -p audio/encoding=pcm8,audio/sampling-rate=8000

    Note that our 8-bit PCM output is currently unsigned.

    * We do not support saving to compressed formats at this time (such as mp3 or ogg vorbis) so you'll still need a 3rd party application to convert the WAV for you.



  • How do I use the real-time special effects?

  • The easiest way to set effects globally (so you can hear them within other applications) is to save the individual parameters in a text file called 'default.sfx' and save that in the voice's data directory (see below). Then the voice will automatically use that SFX file when it speaks.

    The voice data directory (with David, for example) is typically at:

    /opt/swift/voices/David/default.sfx

    There are several sample SFX files included with our voices which can be used as a starting point for creating your own effects. Also, if you're an audiophile and feel comfortable in a virtual rack environment, feel free to use our
    SpeechFX Rack to create SFX files which Swift can use.



  • How do I make a voice louder?

  • Using the technique described in the
    SFX section, create a file called 'default.sfx' and save that file in the voice's data directory. Then add the following line to the 'default.sfx' file:

    GAIN 2

    The range can be from 0 to infinity, with 1 being the default. The value is a multiplier. "GAIN 2" is twice as loud as default, and "GAIN .5" is half as loud as default. You may have to play with the levels to get it just right, since some voices may pop if the signal becomes too strong.



  • I have a question that isn't covered here.

  • For all other technical support inquiries, please use our
    Contact Request Form. Please provide as much technical information as possible. Thank you!