Announcement

Collapse
No announcement yet.

Guide - Change Linux flite TTS to Pico TTS (different voice)

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Guide - Change Linux flite TTS to Pico TTS (different voice)

    This is a guide for using the Pico TTS engine with HomeSeer for HSTouch verbal announcements on the Raspberry Pi 2 running full HomeSeer Linux. The voice is very good sounding.

    Copy and paste commands one after the other into Terminal (at your own risk if something goes wrong).

    git clone -b upstream+patches git://git.debian.org/collab-maint/svox.git svox-pico

    apt-get install automake libtool libpopt-dev

    cd svox-pico/pico

    automake

    ./autogen.sh

    ./configure

    make all

    make install

    Add this text into (pico2wave.conf) IN THE NEXT COMMAND: /usr/local/lib

    nano /etc/ld.so.conf.d/pico2wave.conf

    ldconfig

    ————————————

    Now CD into your Linux HomeSeer directory open:

    nano speak_to_file.sh

    Make the contents of the file look like this (make a backup of that file first, in case you want to restore it later).

    #!/bin/sh
    #pico2wave -l en-US -w "$1" "$2"
    #pico2wave -l en-GB -w "$1" "$2"

    Remove the # at the start of the above pico2wave line that has the language you want to use (different voice).
    Last edited by cytec; April 1, 2015, 08:34 AM.

    #2
    Thank-you Ben.

    I like the en-GB voice the best.

    Here with my HSPro 3 on Ubuntu 14.04 64 bit build went to using Wine-SAPI (really a PITA to do this) while concurrently just running Wintel Homeseer Tres (sans a phoneme) speaker dot ee x ee on a Joggler.
    - Pete

    Auto mator
    Homeseer 3 Pro - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e 64 bit Intel Haswell CPU 16Gb
    Homeseer Zee2 (Lite) - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e - CherryTrail x5-Z8350 BeeLink 4Gb BT3 Pro
    HS4 Lite - Ubuntu 22.04 / Lenovo Tiny M900 / 32Gb Ram

    HS4 Pro - V4.1.18.1 - Ubuntu 22.04 / Lenova Tiny M900 / 32Gb Ram
    HSTouch on Intel tabletop tablets (Jogglers) - Asus AIO - Windows 11

    X10, UPB, Zigbee, ZWave and Wifi MQTT automation-Tasmota-Espurna. OmniPro 2, Russound zoned audio, Alexa, Cheaper RFID, W800 and Home Assistant

    Comment


      #3
      Just discovered that Cepstral have voices available for the Raspberry Pi:

      http://www.cepstral.com/en/raspberrypi

      I have sent them an email requesting further details and pricing, will post a guide on how to setup once I figure it out.

      My personal favourite is Cepstral David.

      Comment


        #4
        Originally posted by cytec View Post
        Just discovered that Cepstral have voices available for the Raspberry Pi:

        http://www.cepstral.com/en/raspberrypi

        I have sent them an email requesting further details and pricing, will post a guide on how to setup once I figure it out.

        My personal favourite is Cepstral David.
        Did you ever do anything with this?

        TIA - Mike

        Comment


          #5
          Permission denied when going though instructions to change to different voice.

          Hi there,
          When I enter the second command:
          apt-get install automake libtool libpopt-dev

          I get the error below:
          E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
          E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?

          I logged on as user homeseer. Is that the issue?
          Thanks,
          Eric

          Comment


            #6
            Originally posted by stevenseh@gmail.com View Post
            Hi there,
            When I enter the second command:
            apt-get install automake libtool libpopt-dev

            I get the error below:
            E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
            E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?

            I logged on as user homeseer. Is that the issue?
            Thanks,
            Eric
            try to prefix all your commands with sudo

            Comment


              #7
              Better, but...

              I'm receiving quite some warning messages...
              configure.in: no proper invocation of AM_INIT_AUTOMAKE was found.
              configure.in: You should verify that configure.in invokes AM_INIT_AUTOMATE,
              configure.in: that aclocal.m4 is present in the top-level directory,
              configure.in: and that aclocl.m4 was recently regenerated (using aclocal).
              Makefile.am: required file '.INSTALL' not found
              Makefile.am: 'automake --add-missing' can install 'INSTALL'
              Makefile.am: required file './NEWS' not found
              Makefile.am: required file './README' not found
              Makefile.am: required file './AUTHORS' not found
              Makefile.am: required file './Changelog' not found
              Makefile.am: required file './COPYING' not found
              Makefile.am: 'automake --add-missing' can install 'COPYING'
              Makefile.am:5: Libpool library used but 'LIBPOOL' is undefined
              Makefile.am:5: The usual way to define 'LIBPOOL' is to add 'LT_INIT'
              Makefile.am:5: to 'configure.in' and run 'aclocal' and 'autoconf' again.

              and quite some more...

              Any ideas what may be causing this?
              Last edited by stevenseh@gmail.com; June 28, 2016, 05:10 PM.

              Comment


                #8
                Some things are missing when you are compiling. It looks like either part of the source is missing or you may be in the wrong directory when inputting the commands. Remember to expand the source then cd into that directory. If you haven't you also have to install build-essential before compiling.

                > sudo apt-get update
                > sudo apt-get upgrade
                > sudo apt-get install build-essential

                Probably want to clean up after mucking with your source.

                > sudo make clean

                Edit: A few errors when compiling are usually survivable if it completes. You have too many.
                Last edited by mikaluch; June 29, 2016, 02:37 AM. Reason: Cause I'm old and my memory is bad.

                Comment


                  #9
                  The fist command ran quite a while, but ended after
                  processing triggers for hicolor-icon-theme ...
                  Errors where encountered while processing:
                  /var/cache/apt/archives/lighttpd_1.4.31-4+deb7u4_armhf.deb
                  E: Sub-process /usr/bin/dpkg returned an error code (1)

                  I went ahead and ran the other commands anyway. Seems like I had build essential already.

                  Make clean said
                  make: *** No rule to make target'clean'. Stop.

                  I ran it in the HomeSeer directory.

                  After all this I ran the commands at the start of this thread, but I'm receiving the same errors at the same spot: sudo automake in the /usr/local.HomeSeer/svox-pico/pico directory. Btw, I deleted that directory, otherwise it would not start.

                  Is it time to start over fresh? Or does anyone have a better idea?
                  I appreciate your comments!
                  Eric

                  Comment


                    #10
                    After I installed some prerequisites, I had now more luck with these installation steps.
                    However, I get the error log below - and no sound... -

                    Aug-11 8:44:00 AM AirplaySpeak ERROR File /usr/local/HomeSeer/Temp/AirplaySpeak20160811084400192.wav does not exist
                    Aug-11 8:44:00 AM AirplaySpeak INFO (iW3): Volume at 15
                    Aug-11 8:44:00 AM AirplaySpeak DEBUG calling SpeakToFile text=Volume at 15 file=/usr/local/HomeSeer/Temp/AirplaySpeak20160811084400192.wav

                    Looks like pico puts the file somewhere else?
                    Any ideas?
                    Thanks,
                    Eric

                    Comment


                      #11
                      I'm on Pi3 running full linux HS3 and looking for a better TTS. Is this still the best sounding solution?

                      Do we need to remove (or should we to save resources) flite?

                      Git command is not found. Is the Pi (jessie lite is installed) supposed to have "Git" installed already or is that something that is needed to be installed before these instructions can be followed?

                      How are resource usage on this? My Pi is pretty busy now and wondering how this will effect it. RAM left is getting low.

                      Comment


                        #12
                        I'm running into this problem


                        Now run ./configure and then make.
                        root@raspberrypi:~/svox-pico/pico# ./configure
                        ./configure: line 1776: syntax error near unexpected token `1.9'
                        ./configure: line 1776: `AM_INIT_AUTOMAKE(1.9 foreign)'
                        root@raspberrypi:~/svox-pico/pico# make all
                        make: *** No rule to make target 'all'. Stop.
                        root@raspberrypi:~/svox-pico/pico# make install
                        make: *** No rule to make target 'install'. Stop.
                        root@raspberrypi:~/svox-pico/pico#

                        Comment


                          #13
                          I'm running into exactly the same issue, just this evening. Doing my first install of HS3 on Raspbian 'Jessie', and trying to resolve all the errors in the HS3 startup log.

                          Things actually start to go seriously wrong when 'automake' is invoked:

                          elms@hs3-02:~/svox-pico/pico $ sudo automake
                          automake: warning: autoconf input should be named 'configure.ac', not 'configure.in'
                          configure.in: error: no proper invocation of AM_INIT_AUTOMAKE was found.
                          configure.in: You should verify that configure.in invokes AM_INIT_AUTOMAKE,
                          configure.in: that aclocal.m4 is present in the top-level directory,
                          configure.in: and that aclocal.m4 was recently regenerated (using aclocal)
                          Makefile.am: error: required file './NEWS' not found
                          Makefile.am: error: required file './README' not found
                          Makefile.am: error: required file './AUTHORS' not found
                          Makefile.am: error: required file './ChangeLog' not found
                          automake: warning: autoconf input should be named 'configure.ac', not 'configure.in'
                          Makefile.am:5: error: Libtool library used but 'LIBTOOL' is undefined
                          Makefile.am:5: The usual way to define 'LIBTOOL' is to add 'LT_INIT'
                          Makefile.am:5: to 'configure.in' and run 'aclocal' and 'autoconf' again.
                          Makefile.am:5: If 'LT_INIT' is in 'configure.in', make sure
                          Makefile.am:5: its definition is in aclocal's search path.
                          Makefile.am:6: warning: source file 'lib/picoacph.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          automake: warning: possible forward-incompatibility.
                          automake: At least a source file is in a subdirectory, but the 'subdir-objects'
                          automake: automake option hasn't been enabled. For now, the corresponding output
                          automake: object file(s) will be placed in the top-level directory. However,
                          automake: this behaviour will change in future Automake versions: they will
                          automake: unconditionally cause object files to be placed in the same subdirectory
                          automake: of the corresponding sources.
                          automake: You are advised to start using 'subdir-objects' option throughout your
                          automake: project, to avoid future incompatibilities.
                          Makefile.am:6: warning: source file 'lib/picoapi.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picobase.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picocep.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picoctrl.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picodata.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picodbg.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picoextapi.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picofftsg.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picokdbg.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picokdt.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picokfst.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picoklex.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picoknow.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picokpdf.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picokpr.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picoktab.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picoos.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picopal.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picopam.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picopr.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picorsrc.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picosa.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picosig.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picosig2.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picospho.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picotok.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picotrns.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:6: warning: source file 'lib/picowa.c' is in a subdirectory,
                          Makefile.am:6: but option 'subdir-objects' is disabled
                          Makefile.am:83: warning: source file 'bin/pico2wave.c' is in a subdirectory,
                          Makefile.am:83: but option 'subdir-objects' is disabled
                          /usr/share/automake-1.14/am/depend2.am: error: am__fastdepCC does not appear in AM_CONDITIONAL
                          /usr/share/automake-1.14/am/depend2.am: The usual way to define 'am__fastdepCC' is to add 'AC_PROG_CC'
                          /usr/share/automake-1.14/am/depend2.am: to 'configure.in' and run 'aclocal' and 'autoconf' again
                          /usr/share/automake-1.14/am/depend2.am: error: AMDEP does not appear in AM_CONDITIONAL
                          /usr/share/automake-1.14/am/depend2.am: The usual way to define 'AMDEP' is to add one of the compiler tests
                          /usr/share/automake-1.14/am/depend2.am: AC_PROG_CC, AC_PROG_CXX, AC_PROG_OBJC, AC_PROG_OBJCXX,
                          /usr/share/automake-1.14/am/depend2.am: AM_PROG_AS, AM_PROG_GCJ, AM_PROG_UPC
                          /usr/share/automake-1.14/am/depend2.am: to 'configure.in' and run 'aclocal' and 'autoconf' again

                          Comment


                            #14
                            Alternative Voice RSS

                            For what it's worth, I started out here looking for better sounding speech. But it was too painful to get going.

                            I have since switched to this option http://board.homeseer.com/showthread.php?t=175012. It does require internet access, as it is sending it off to a web service. As mentioned in the thread, it started out as an experiment using Google voices, but that got shut down. So the bottom of the thread shows the needed changes to work with VoiceRSS. You need to get an API key from http://www.voicerss.org/ and then modify the script to use it. It sounds great.

                            Comment


                              #15
                              Originally posted by dlover View Post
                              For what it's worth, I started out here looking for better sounding speech. But it was too painful to get going.

                              I have since switched to this option http://board.homeseer.com/showthread.php?t=175012. It does require internet access, as it is sending it off to a web service. As mentioned in the thread, it started out as an experiment using Google voices, but that got shut down. So the bottom of the thread shows the needed changes to work with VoiceRSS. You need to get an API key from http://www.voicerss.org/ and then modify the script to use it. It sounds great.
                              Thanks for the info. Ill take a look and see if i can get that going.

                              EDIT: well that was easy. I got the VoiceRSS setup and working in a few min. Thanks again for your help.

                              EDIT: Looking at the API for www.voicerss.org I was able to change the lanuage from "en_gb" to "en_us" to get a more natural voice for my area. I was also able to speed it up or slow it down. So there is more options then what the post/tread talks about. I'm happy with it!
                              Last edited by integlikewhoa; October 31, 2016, 12:13 PM.

                              Comment

                              Working...
                              X