Mycroft Mimic: Difference between revisions

m Adjusted headline.
Eben (talk | contribs)
 
(7 intermediate revisions by 4 users not shown)
Line 1: Line 1:
[[Category:Open Voice Assistants]]
[[Category:Mycroft]]
[[Category:Mycroft]]
[[Category:TTS]]
[[Category:TTS]]
Line 11: Line 10:
==Tips & Tricks==
==Tips & Tricks==


===Build Mimic on device===
===Build Mimic 1 on device===
While setting up a Mycroft device installer will ask to build Mimic 1 locally. If you initially skipped this you can also re-run dev_setup.sh with a -fm flag for "force mimic".<blockquote>./dev_setup.sh -fm</blockquote>You can do the opposite, by running flag to "skip mimic":<blockquote>./dev_setup.sh -sm</blockquote>
While setting up a Mycroft device installer will ask to build Mimic 1 locally. If you initially skipped this you can also re-run dev_setup.sh with a -fm flag for "force mimic".<blockquote>./dev_setup.sh -fm</blockquote>You can do the opposite, by running flag to "skip mimic":<blockquote>./dev_setup.sh -sm</blockquote>
== Installation (mimic v1) ==
===== On Arch based distros =====
Install from the AUR: https://aur.archlinux.org/packages/mimic
===== On Debian based distros =====
<code>$ sudo apt-get install gcc make pkg-config automake libtool libasound2-dev</code>
===== On Fedora based distros =====
<code>$ sudo dnf install gcc make pkgconfig automake libtool alsa-lib-devel</code>
Mimic v1 source: https://github.com/MycroftAI/mimic1
== KDE & gnome integration (mimic v1) ==
This setup will let you read text with mimic tts from '''any application''' on your system simply by pressing a keyboard command.
After installing mimic on your system adding this line to a custom keyboard shortcut in KDE or Gnome.
<code>xsel > /tmp/speak.txt | sleep 0.3 | mimic -f /tmp/speak.txt | pkill xsel</code>
I further optimised this by adding some configuration options that change the pitch and speed of the voice:
<code>xsel > /tmp/speak.txt | mimic -voice slt --setf duration_stretch=0.85 --setf int_f0_target_mean=165 -f /tmp/speak.txt | pkill xsel</code>
Stop mimic with:
<code>pkill mimic</code>
'''Important:''' as these commands are run as a scrip instead of in a full shell environment its best to put the full path to each application you call, for example: usr/bin/xsel & usr/bin/mimic etc.
In gnome open system settings then go to: Keyboard » Customise Shortcuts » Custom Shortcuts » + and make two new shortcuts, one to start reading using the line above and another shortcut to stop reading with the <code>pkill mimic</code> command.
In KDE open system settings then go to: Shortcuts » Custom Shortcuts and make to new shortcuts one to start reading using the line above and another shortcut to stop reading with the <code>pkill mimic</code> command.
Create a file for xsel to store the text you want to read. In this example this file is in the /tmp directory and is called speak.txt (but you can use a different file name and directory if you like).
'''What do these commands and switch’s do:'''
<code>xsel > my_file_name.txt</code> (over rights the text in the file with highlighted text)
<code>sleep 0.3</code> (tells the next command to wait for 0.3 seconds)
<code>mimic</code> (calls the mimic tts engine to start speaking)
<code>-voice slt</code> (sets the voice to the slt voice)
<code>--setf duration_stretch=0.85</code> (makes it speak 25% faster (1 = normal speed and 1.5 in slower 50%)).
<code>--setf int_f0_target_mean=165</code> (makes the pitch higher and =1 would make the pitch very low).
<code>-f</code> (means read text from file)
<code>pkill xsel</code> (stops the computer starting a new process for xsel every time this command is run).
There are quite a few voices installed with Mimic, the voice slt was my favourite. Type: <code>mimic -lv</code> in terminal to see a list of installed voices. Type: <code>man mimic</code> to see all the options and switches.
Mimic is built on [https://github.com/festvox/flite flite-tts] and the commands are the same as far as I can see.
Source: https://ebenfarnworth.substack.com/p/text-to-speech-tts-on-linux