What is it ?

It is your own personal and private electronic butler like in the Iron Man movies for your Linux desktop :-)

To make this complex task somewhat easier for the average user, is the aim of this project.
This is achieved with different free software which is bundled together by me to make the whole experience somewhat user friendly.

The words spoken will not or very rarely leave your machine which makes Linjark a very private solution in the NSA-snooping and data-mining age.

What languages are supported ?

Simon/Linjark can support any language if there is a language model available and scenarios are written for it.

Currently supported:
- German (language model, marry voice and scenarios)

What can I actually do?

The tour shows some main features.

There are many more modules available. Look into the modules section.
For an in detail view what you can do, look into the grammar file of Linjark

Will you send my data to the Cloud

Normally not. Simon, the front-end of this little project uses the SPHINX language suite and tools. SPHINX does not use cloud computing to make voice detection possible (like the project PiAUISuite who uses Google), instead it relies on pre-formed sentences from different scenarios that you train. If you train a sentence enough it will understand you.

This makes it the obvious choice for people who are concerned about their privacy or who just have a fishy feeling about sending everything who is spoken in the room to Googles datacenters.

This also removes the restrictions who apply when using the service from Google.

However there are some modules who will send data to the (Google)could because you can say a random word and it it not possible to form a pre-learned sentence with a random word.

A good example is the translate module: It will rely on the pre-formed sentence: "Simon translate to spanish" when you speak that sentence simon will pick it up and after a ping sound you can say any random word. This will then be sent to Google. Google will return what you have said and Linjark will then translate this word into spanish.

Linjark will not listen into your home like other (commercial) solutions do. You can always decide not to use these modules anyway.
Even the modules who require cloud computing are only started when you ask them and only about 4 seconds of sound/voice is recorded.
If you don't believe it look into the code :-)

How does all this work ?

When you speak in your microphone, Simon, an open source speech recognition program is comparing your recorded voice with the data in the language model, if it finds the words in the model in the correct grammatical order, it can understand you if you trained it.

Then it will launch some scripts according to what you say eg. check the weather for you. MarryTTS is then used to answer you with synthesized speech and display the requested information or read it back to you.

This looks then something like this:

Let's get started

This git repository is set up with the goal of providing a more easy solution for German speaking people to control their PC, house or whatever with their voice with open source and free solutions.

However this stuff can also be adapted to any other language even other operating systems. As long as there is a language model with the words you need to control something for it.

The more easiness comes in an install.sh that will install some of the components needed for successful speech recognition and provide guidance for installing the rest and also providing some Scenarios for Simon to use :-D.

Till now this is not really an easy task, mostly because the open source German language model does not support the right words for controlling applications and devices. But also because their are not many scenarios written for Simon and scripts to implement things in an easy way. Jump right in and see the contents below :-)

Status of the project/model
1a. Start the installation(Desktop machine)
1b. Start the installation(Raspberry Pi 2)
2. Basic Configuration of Simon
3. Install some Linjark-Modules
4. Some things you should know
5. How to train properly(Desktop machine) / Common errors
6. Have a blast!
Aim of this project
Used technologies
Care to help?
   - Project structure


10/11/15 YEAH!!!: Simon is running on the Raspberry Pi 2 Model B (2015) Read more here.

07/11/15 ATTENTION: Priorities are shifting. Read more here.

25/10/15 ATTENTION: Some modules are broken due to old age. Look for the most recent ones in the Github folder. I'm working on fixing the rest.

21/10/15 This project is considered (again) active in development and not stable or bugfree!

Aim of this project

Trouble ?

First look here: Common Problems
Next look here: More errors you could encounter

If this is not helping, open an issue here on github.

As this is for the German model I do obviously speak German and you can use that language if you contact me :-)

Please open a "Issue" here on github with a detailed description what went wrong!

Want to help !?

Just get in touch! Help is always needed and there is plenty to do!

For more information on this, see: Project structure