Fl4m3Ph03n1x

Fl4m3Ph03n1x

Are there any text-to-speech ai tools available using elixir?

Background

As I often do, I read books to learn and improve myself. I also enjoy teaching and helping others when I can, so this is something I try to do regularly.

However, as time goes by (and so do the years) I have slowly come to realize it is becoming increasingly harder not only to maintain focus when reading/studying a new topic, I also forget things faster.

It is not an uncommon occurrence to re-read an “old” article or book, and to become surprised with things I had learned before. I have come to the inevitable conclusion this will only happen more frequently with time.

Although I do enjoy reading and learning, if I keep reading and the learning the same things over and over again, I will not evolve. Eventually I will gradually lose my ability to help others in topics of relevance, something I cannot live with.

So I decided to take a new approach. Re-learning old concepts is now something I have accepted, but I do get to choose how I re-learn them. I have decided to make a series of instructional videos (10-15) minutes long, freely available on youtube, free lectures for all to see.

Not only does this achieve my end goal of helping others more efficiently, it is also a quick and convenient way of re-learning things for myself. It also allows me to add my opinions, experiences and additional context, which is something I value immensely.

Problem

I have several scripts done, and I have power-point like presentations done as well for them. The issue now is that in order to make videos, I need to record sound. I have it from several sources, that my voice is … not ideal. Not only that, should my initiative succeed and my channel gather traction, I will be barred from certain jobs in the country I live because it is a common occurrence for managers and bosses to “avoid hiring known people”, for company political reasons.

In order to protect myself and to create videos that are somewhat acceptable I have decided to use text-to-speech audio generation.

However, all the tools I have found so far are in Python. Many of them are abandoned and even when they are not, there are always dependency issues with the likes of PyTorch and Tensor and so on.

I have not yet seen a Python project where things just work because there is always a dependency issue somewhere. Even the creators of some of those tools acknowledge this. To make things even more complex, some of these tools require specifically NVIDIA GPUs, which I don’t have.

Question

So I was wondering if there are out there any Elixir tts generation tools that one could use. Because Elixir uses BEAM, I assume requiring an NVIDIA GPU is not a necessity. Furthermore, I also assume I wouldn’t have to constantly fight with Python dependencies.

Are there any tools in Elixir that follow this requirements? Or is it too early in the Elixir ecosystem for such tools to exist yet?

Marked As Solved

Fl4m3Ph03n1x

Fl4m3Ph03n1x

As discussed in the Elixir forums, at this point in time the ecosystem is not yet mature enough and such tools do not yet exist.

However, I was able to bypass this by using Google Colab with kokoro-tts: hexgrad/Kokoro-82M · Hugging Face

Source:

This solves the issue and I don’t need to run anything locally!

Also Liked

Fl4m3Ph03n1x

Fl4m3Ph03n1x

Do you mean this Piper ? I didn’t find any mention of Rust in the README, and the files are mostly written in C++ and Python. What am I missing here?

As for Voxygen, I was not able to find anything except for an SaaS service which I have to pay to use. Can you link the project?

Thanks for the reply!

Scarlet

Scarlet

Elixir’s ecosystem is still young when it comes to TTS, and I’m not aware of any mature, high-quality TTS tools built natively for BEAM. You might have better luck interfacing with external libraries via Ports or NIFs, or using HTTP APIs to call TTS services from within an Elixir app. If avoiding Python entirely is the goal, you could check out Rust-based TTS engines like Voxygen or Piper and see if they can be wrapped into an Elixir-friendly format. Otherwise, the Elixir community might need more time before native TTS solutions emerge.

Where Next?

Popular Backend topics Top

dimitarvp
As a part of my new job I’ll have to learn to manage a local k8s cluster. The tools used are microk8s, tilt and helm. I’ll appreciate an...
New
Rainer
Is there somewhere a good introduction to rust for experienced programmers (with years of C++/C#/Java experience)? Wanted to give it a t...
New
Kurisu
Hello and happy new year! I would like to buy a Ruby On Rails ebook for learning purpose. What would be the ROR equivalent of “Programm...
New
joshi
Hey everybody! I’m working on the project that includes import of Oracle data to PostgreSQL. That data comes as Oracle export (expdp) fi...
New
Fl4m3Ph03n1x
Background I am trying to up my Functional Programming (FP) skills and one of the things that newcomers first learn in FP is the Option T...
New
osbre
Hello everyone I’m trying to implement a “magic link” or “one-time login link” functionality I wonder what a secure way to implement it...
New
sona11
In Java, if I try to do.equals() on a null string, a null pointer error is issued. I’m wondering whether I can perform the following if I...
New
Fl4m3Ph03n1x
Background I am a fan of dialyzer and friends (looking at Gradient) and I try to have sepcs in my code as much as I can. To this end, I a...
New
pillaiindu
Currently reading the book “Programming Phoenix LiveView”. At the end of the Chapter 1, I’m trying to solve the guess game. If the user ...
New
yamuna
Hi everyone, I’m trying to run deepseek-coder:6.7b-instruct-q4_K_M in Docker using Ollama to create an LLM that will be used by CrewAI a...
New

Other popular topics Top

AstonJ
poll poll Be sure to check out @Dusty’s article posted here: An Introduction to Alternative Keyboard Layouts It’s one of the best write-...
New
AstonJ
I ended up cancelling my Moonlander order as I think it’s just going to be a bit too bulky for me. I think the Planck and the Preonic (o...
New
PragmaticBookshelf
Build highly interactive applications without ever leaving Elixir, the way the experts do. Let LiveView take care of performance, scalabi...
New
AstonJ
Continuing the discussion from Thinking about learning Crystal, let’s discuss - I was wondering which languages don’t GC - maybe we can c...
New
Maartz
Hi folks, I don’t know if I saw this here but, here’s a new programming language, called Roc Reminds me a bit of Elm and thus Haskell. ...
New
foxtrottwist
A few weeks ago I started using Warp a terminal written in rust. Though in it’s current state of development there are a few caveats (tab...
New
mafinar
This is going to be a long an frequently posted thread. While talking to a friend of mine who has taken data structure and algorithm cou...
New
PragmaticBookshelf
Author Spotlight James Stanier @jstanier James Stanier, author of Effective Remote Work , discusses how to rethink the office as we e...
New
First poster: bot
The overengineered Solution to my Pigeon Problem. TL;DR: I built a wifi-equipped water gun to shoot the pigeons on my balcony, controlle...
New
AstonJ
Curious what kind of results others are getting, I think actually prefer the 7B model to the 32B model, not only is it faster but the qua...
New