Installation, test and evaluation of Scribosermo speech-to-text engine

Overview

Scribosermo STT Setup

Scribosermo is a LGPL licensed, open-source speech recognition engine to "Train fast Speech-to-Text networks in different languages".

Evaluation tests for German language suggest that it's currently one of the fastest and most accurate open-source STT systems.

This repository trys to offer build scripts to run and test Scribosermo on different platforms focussing on Raspberry Pi SBC. Ultimately the goal is to build a module for SEPIA STT-Server.

Test Scribosermo

The easiest way to get started is to build and use the Docker container:

  • Use the scripts inside the build folder. Tested on aarch64 and amd64 platforms.
  • Download a model. Check tests folder for more info and licenses.
  • Put the model inside a folder and share this folder with your Docker container, e.g. use a run flag similar to: -v my/model/folder:/home/admin/scribosermo-stt-setup/tests/model
  • Run the container. It will automatically call the Python test script testing_tflite.py.
  • NOTE: The Python test script is currently configured to use German. You may need to modify it if you change the model or language.

Build wheels on Debian 10 (the long way)

If you can't find matching Python wheel files for your build this might help to fill the missing parts:

  • Install required packages: apt-get update && apt-get install -y --no-install-recommends sudo git wget curl nano unzip zip procps build-essential cmake python3-pip python3-dev python3-setuptools python3-wheel python3-venv libsndfile1
  • Install Rust compiler (might be required): curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh and refresh terminal source $HOME/.cargo/env
  • Create and activate Python virtual env: mkdir -p install && cd install && python3 -m venv env && source env/bin/activate
  • Make sure pip is updated (tested v21.3.1): pip3 install --upgrade pip
  • Install part 1: pip3 install wheel setuptools setuptools_rust transformers tqdm librosa datasets jiwer
  • Install part 2: pip3 install --extra-index-url https://google-coral.github.io/py-repo/ tflite_runtime
  • Install part 3: pip3 install ds-ctcdecoder==0.10.0a3;
  • Create wheels as needed: pip3 wheel [package]

Credits

  • DanBmh - Development and maintaining of Scribosermo
  • Domcross - German STT evaluation, scripts and packages
  • SEPIA Framework - Open assistant and STT server stuff
You might also like...
Athena is an open-source implementation of end-to-end speech processing engine.

Athena is an open-source implementation of end-to-end speech processing engine. Our vision is to empower both industrial application and academic research on end-to-end models for speech processing. To make speech processing available to everyone, we're also releasing example implementation and recipe on some opensource dataset for various tasks (Automatic Speech Recognition, Speech Synthesis, Voice Conversion, Speaker Recognition, etc).

This repository contains data used in the NAACL 2021 Paper - Proteno: Text Normalization with Limited Data for Fast Deployment in Text to Speech Systems

Proteno This is the data release associated with the corresponding NAACL 2021 Paper - Proteno: Text Normalization with Limited Data for Fast Deploymen

Unofficial Implementation of Zero-Shot Text-to-Speech for Text-Based Insertion in Audio Narration
Unofficial Implementation of Zero-Shot Text-to-Speech for Text-Based Insertion in Audio Narration

Zero-Shot Text-to-Speech for Text-Based Insertion in Audio Narration This repo contains only model Implementation of Zero-Shot Text-to-Speech for Text

glow-speak is a fast, local, neural text to speech system that uses eSpeak-ng as a text/phoneme front-end.

Glow-Speak glow-speak is a fast, local, neural text to speech system that uses eSpeak-ng as a text/phoneme front-end. Installation git clone https://g

Neural building blocks for speaker diarization: speech activity detection, speaker change detection, overlapped speech detection, speaker embedding
Neural building blocks for speaker diarization: speech activity detection, speaker change detection, overlapped speech detection, speaker embedding

⚠️ Checkout develop branch to see what is coming in pyannote.audio 2.0: a much smaller and cleaner codebase Python-first API (the good old pyannote-au

Speech Recognition for Uyghur using Speech transformer

Speech Recognition for Uyghur using Speech transformer Training: this model using CTC loss and Cross Entropy loss for training. Download pretrained mo

Text-Summarization-using-NLP - Text Summarization using NLP  to fetch BBC News Article and summarize its text and also it includes custom article Summarization
Simple, Pythonic, text processing--Sentiment analysis, part-of-speech tagging, noun phrase extraction, translation, and more.

TextBlob: Simplified Text Processing Homepage: https://textblob.readthedocs.io/ TextBlob is a Python (2 and 3) library for processing textual data. It

Simple, Pythonic, text processing--Sentiment analysis, part-of-speech tagging, noun phrase extraction, translation, and more.

TextBlob: Simplified Text Processing Homepage: https://textblob.readthedocs.io/ TextBlob is a Python (2 and 3) library for processing textual data. It

Owner
Florian Quirin
Passionate developer of "things", e.g. REST APIs, (speech) interfaces, (web) apps, data analysis methods and homeserver in HTML5, Java, Matlab, Cordova, ...
Florian Quirin
Silero Models: pre-trained speech-to-text, text-to-speech models and benchmarks made embarrassingly simple

Silero Models: pre-trained speech-to-text, text-to-speech models and benchmarks made embarrassingly simple

Alexander Veysov 3.2k Dec 31, 2022
PyTorch implementation of Microsoft's text-to-speech system FastSpeech 2: Fast and High-Quality End-to-End Text to Speech.

An implementation of Microsoft's "FastSpeech 2: Fast and High-Quality End-to-End Text to Speech"

Chung-Ming Chien 1k Dec 30, 2022
Simple Speech to Text, Text to Speech

Simple Speech to Text, Text to Speech 1. Download Repository Opsi 1 Download repository ini, extract di lokasi yang diinginkan Opsi 2 Jika sudah famil

Habib Abdurrasyid 5 Dec 28, 2021
Ptorch NLU, a Chinese text classification and sequence annotation toolkit, supports multi class and multi label classification tasks of Chinese long text and short text, and supports sequence annotation tasks such as Chinese named entity recognition, part of speech tagging and word segmentation.

Pytorch-NLU,一个中文文本分类、序列标注工具包,支持中文长文本、短文本的多类、多标签分类任务,支持中文命名实体识别、词性标注、分词等序列标注任务。 Ptorch NLU, a Chinese text classification and sequence annotation toolkit, supports multi class and multi label classification tasks of Chinese long text and short text, and supports sequence annotation tasks such as Chinese named entity recognition, part of speech tagging and word segmentation.

null 186 Dec 24, 2022
German Text-To-Speech Engine using Tacotron and Griffin-Lim

jotts JoTTS is a German text-to-speech engine using tacotron and griffin-lim. The synthesizer model has been trained on my voice using Tacotron1. Due

padmalcom 6 Aug 28, 2022
A Python module made to simplify the usage of Text To Speech and Speech Recognition.

Nav Module The solution for voice related stuff in Python Nav is a Python module which simplifies voice related stuff in Python. Just import the Modul

Snm Logic 1 Dec 20, 2021
Code for ACL 2022 main conference paper "STEMM: Self-learning with Speech-text Manifold Mixup for Speech Translation".

STEMM: Self-learning with Speech-Text Manifold Mixup for Speech Translation This is a PyTorch implementation for the ACL 2022 main conference paper ST

ICTNLP 29 Oct 16, 2022
PocketSphinx is a lightweight speech recognition engine, specifically tuned for handheld and mobile devices, though it works equally well on the desktop

PocketSphinx 5prealpha This is PocketSphinx, one of Carnegie Mellon University's open source large vocabulary, speaker-independent continuous speech r

null 3.2k Dec 28, 2022
Official Pytorch implementation of Test-Agnostic Long-Tailed Recognition by Test-Time Aggregating Diverse Experts with Self-Supervision.

This repository is the official Pytorch implementation of Test-Agnostic Long-Tailed Recognition by Test-Time Aggregating Diverse Experts with Self-Supervision.

vanint 101 Dec 30, 2022