HNHacker News
TopNewBestAskShowJobs

ftreml

256 karma · joined December 28, 2019

Co-Founder and CTO Botium - Guitarist - 3xFather
submissionscomments
ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
yes there are plenty of them. just google for something like "kaldi vs google".

in short: not surprising the blockbuster cloud services provide better results as they have way more training data. tradeoff between price, privacy, quality.

ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
40GB is maybe too much, but when building the docker images there is some space wasted. The image size after building is around 20GB (12GB marytts, 3GB kaldi de, 6GB kaldi en)
ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
marytts supports a high number of voices in several languages. you could try to use another voice.
ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
forgot to mention: when doing realtime parallel processing, the default configuration of this project is not a feasible setup. you have to run way more decoder workers, maybe distributed on various machines.
ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
the project includes a websocket endpoint for realtime decoding. will add it to the docs.

we are already using it for a callcenter with around 50 parallel audio streams.

ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
just a guess: marytts is rather heavy weight
ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
zamia-speech: asr training scripts for research purposes, several ready trained asr models for download, based on voxforge data. zamia-speech is the (very hard in terms of know-how, hardware and software requirements) training part to be done where projects like botium speech processing are be based upon.

the other one is an example for packaging kaldi in a docker container.

ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
with ssml formatting it is good enough for a customer facing ivr, though clearly recognizable as robotic voice - if this should be an issue i would not recommend it
ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
currently included german and english. contributions for other languages welcome, native speakers will have better insights into quality of speech output and recognition model
ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
for me it was exactly that, yes. we had powerful hardware and budget available so there was no reason to stick to statistical models. the available benchmarks showed that kaldi easily outperforms cmusphinx - when starting from scratch you typically select the leader i would say
ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
very very interesting, didnt know this one. as soon as i am having some hours left will try to run some evaluation on this. after all, for my project only performance in german language counts
ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
its always an issue with domain specific utterances. for the freely available data they are oov and have to be handled somehow (fe generate pronounciation with seqitur)
ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
it requires hundreds of hours of speech data to make any difference, at least for a context-free asr. and gpu-powered high-end hardware, and several days for training.

training an asr model is totally different requirement than using it as a client

ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
speech recogniztion model filed are quite big
ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
when using right ssml formatting, output quality is not so bad. but it cannot compete commercial engines, thats right.

i guess thats for the same reason that google is dominating the speech recogniction world: they have tons of training data available. not smarter algorithms, just more data.

ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
we used a context-free data set, augmented with additional domain-specific sound samples and it worked out fine, although the additiinal samples made nearly no difference
ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
we used existing recipies for training (tuda german), slightly adapted and with additional training data. i am sure with more knowledge we would have made some extra percent ... performance is not really good, but good enough for our purposes, and with a satisfying cost vs quality trade off
ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
from my experience, when trained with the same data, kaldi is slightly better and with custom recipes adaptable to changing conditions. deepspeech has way better documentation and is more developer friendly. wav2letter seems to be the quickest. i guess there is no real winner here ... depends what criteria are applied.

just an example, kaldi is a weird mixture of c++, python2, python3, shell scripts, java, perl. hard to oversee. deepspeech is python. wav2letter is an exe file.

ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
with "performance" i meant the error rate, not the speed. speed was not a criteria for us, so we didnt evaluate it. i read that deepspeech is way quicker in training phase as it is smarter in using gpu computing power.
ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
https://speech.botiumbox.com

just a small server, hope that it wont crash when posting the link here

ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
in our tests the performance was comparable, so we had no reason to switch from kaldi to something else (german data only). after all, what matters the most is the available training data. are there ready trained models available for wav2letter ?
ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
good point, will add this information. in short, german and english, because those are the languages i am comfortable with. i hope to find native speakers contributing more languages. deepspeech was evaluated, but right now kaldi provides better performance, thats why we stick to kaldi by default.
ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
yes absolutly! it should be a good mix of freely available packages, with meaningful default configuration.
ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
it means: easy to install, easy to use, medium performance. no further know-how needed. compared to the total effort for selecting, training, deploying speech recogniction and speech synthesis it provides an extremly quick boilerplate to add voice to your pipeline. i wish there was something like that when we started the project.
ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
no, it was a special call center software called vacapo.
ftreml··on Show HN: Text-to-speech and speech-to-text open-source software stack
This project is the result of a one year long learning process in speech recognition and speech synthesis.

The original task was to automate the testing of a voice-enabled IVR system. While we started with real audio recordings, very soon it was clear that this approach is not feasible for a non-trivial app and it will be impossible to reach a satisfying test coverage. On the other hand, we had to find a way to transcribe the voice app response to text for doing our automated assertions.

As cloud-based solutions where not an option (company policy), we very quickly got frustrated as there was no "get shit done" Open Source stack available for doing medium-quality text-to-speech and speech-to-text conversions. We learned how to train and use Kaldi, which is according to some benchmarks the best available system out there, but mainly targeting academic users and research. We made heavy-weight MaryTTS work to synthesize speech in reasonable quality.

And finally, we packaged all of this in a DevOps-friendly HTTP/JSON API with a Swagger definition.

As always, feedback and contributions are welcome!

ftreml··on Ask HN: Should I move in with my co-founder?
i try to keep a healthy distance between private space and work space. not so easy. and may not apply to everyones lifestyle.
ftreml··on Ask HN: How can I convince my coworkers to start a company?
as i spend all of my energy to build a great product i dont have any energy left to convince co-founders or co-workers every few weeks. i wouldnt ever found a business or project with someone not as committed to it as myself.

so: if you have to convince someone of co-founding, he/she is probably not a good match

ftreml··on Ask HN: What change in your programming technique has been most transformative?
Functional programming with functions as first-class-citizens. And related: asynchronous programming. Both with Node.js, a couple of years ago.
← PreviousPage 2 of 2