Project Description

My goal is to attempt to build a basic speech-to-text app that can execute some basic CLI commands for Epinio simply using voice without touching a keyboard. Examples:

epinio app create sampleapp epinio app list

I believe that this could be useful not only to ease command typing at times but perhaps be also a nice feature that could add value to Epinio if successful.

Goal for this Hackweek

Some of the goals for this project would be:

  • Find some tools that already bring a speech-to-text library
  • Put together a basic script that somehow works and can recognize voice.
  • Fine-tune the speech recognition as much as possible.
  • Transcribe the speech to text
  • Execute a successful transcription into a functional command

If all the above works somehow next step would be to attempt a more human-friendly interpretation of a command. For instance, instead of transcribing epinio app create sampleapp, it would be nice that a sentence like: "Epinio, please create an app named sampleapp", would execute that command producing the same result.

Unrelated to the project, but personally, to grow a bit my coding skills by attempting to put together a minimal POC for this.

Resources

Not sure where I will end, but I am starting here:

  • https://geekscoders.com/python-speech-recognition-tutorial-for-beginners/
  • https://people.csail.mit.edu/hubert/pyaudio/#downloads

Project repo: https://github.com/mmartin24/epinio-speech-to-command-poc

Looking for hackers with the skills:

Nothing? Add some keywords!

This project is part of:

Hack Week 23

Activity

  • about 1 year ago: mamartin started this project.
  • about 1 year ago: mamartin originated this project.

  • Comments

    • mamartin
      about 1 year ago by mamartin | Reply

      The word "Epinio" is not well recognized by the speech recognition engine. For this problem, I created a parsing script for similar words. Also added a second version of the speech sample script and one to run the speech-sample + word-parsing and lastly to execute the result into a working command. So far it works with simple Epinio commands with an quite sound environment. I will try to improve things a bit more tomorrow.

    • mamartin
      about 1 year ago by mamartin | Reply

      Worked a lot in parsing logic. Many falsy terms. Little by little it accepts a more natural language. Now not only works with literal transcription (like: epinio app create) but with something like "Epinio create an app called "test" in path sample" and will translate into epinio push app --name test --path sample

    • mamartin
      about 1 year ago by mamartin | Reply

      Refactored and improved the parsing script and README.md. Here you can find a small demo on the results:

      Demo 1: Transcription of Epinio commands

      Demo 2: Complex Epinio command transformation from "human-friendly" speech:

    Similar Projects

    This project is one of its kind!