# Speech-To-Text Russian
## 1. https://github.com/SergeyShk/Speech-to-Text-Russian
- Есть Docker-образ
- Используется модель alphacep kaldi-ru-0.6 ([http://alphacephei.com/kaldi/kaldi-ru-0.6.tar.gz](http://alphacephei.com/kaldi/kaldi-ru-0.6.tar.gz))
- Есть демонстрационный веб-сервер
- Последнее обновление репозитория 17 февраля 2021
- Поддерживаемые форматы: wav
- Не расставляет знаки препинания
Установка с использованием Docker:
```bash
docker pull ghcr.io/sergeyshk/stt-ru:0.2.0
docker volume create -d local -o type=none -o o=bind -o device=[DIR] asr_volume
docker run -it --rm -p 9000:9000 -p 5000:5000 -v asr_volume:/archive ghcr.io/sergeyshk/stt-ru:0.2.0
```
Использование:
- Распознавание из файла:
```
./start_recognition.py [WAV_DIR] [OUT_DIR]
```
- Мониторинг директории (распознаёт новые файлы добавленные в директорию):
```
./start_recognition.py [WAV_DIR] [OUT_DIR] -t [TIME] -d [DELTA]
```
- Запуск веба (распознавание на вебе не работает - ошибки в коде)
```
cd web
mkdir data
./app.py
```

- Пример обработки файла:
Входные данные:
```
Не следует, однако забывать, что реализация намеченных плановых заданий требуют от нас анализа позиций, занимаемых участниками в отношении поставленных задач. Значимость этих проблем настолько очевидна, что рамки и место обучения кадров играет важную роль в формировании новых предложений. Таким образом начало повседневной работы по формированию позиции играет важную роль в формировании систем массового участия. Товарищи! начало повседневной работы по формированию позиции представляет собой интересный эксперимент проверки модели развития.
```
Выходные данные:
```
Audio File,Start,End,Name,Text
test.wav,590,6510,Канал 0,не следует однако забывать что реализация намеченных планов не требуют анализ оппозицией
test.wav,6600,9740,Канал 0,занимаемых участника в отношении поставленных задач
test.wav,10290,12820,Канал 0,значимость этих проблем настолько очевидна
test.wav,12910,17530,Канал 0,что рамки место обучения кадров играет важную роль в формировании приложений
test.wav,18100,21920,Канал 0,таким образом вначале повседневной работы формированием позиции
test.wav,21980,25010,Канал 0,играет важную роль в формировании систем масса участия
test.wav,25670,26660,Канал 0,товарищи
test.wav,26660,32930,Канал 0,сначала повседневной работой по формированию позиция представляет собой интересный эксперимент проверки модели развития
```
## 2. https://alphacephei.com/vosk/index.ru
- Есть Docker-образ сервера
- Есть интеграции, полный список https://alphacephei.com/vosk/integrations
- Используется модель alphacephei kaldi-ru (последнее обновление три месяца назад)
- Нет знаков препинания
Установка с использованием Docker:
```bash
docker run -d -p 2700:2700 alphacep/kaldi-ru:latest
```
Запуск (проверка):
```bash
git clone https://github.com/alphacep/vosk-server
cd vosk-server/websocket
pip install websocket
./test.py test.wav
```
Запуск с микрофоном:
```bash
pip install sounddevice
./test_microphone.py -u ws://localhost:2700
```
- Пример обработки файла:
Входные данные:
```
Не следует, однако забывать, что реализация намеченных плановых заданий требуют от нас анализа позиций, занимаемых участниками в отношении поставленных задач. Значимость этих проблем настолько очевидна, что рамки и место обучения кадров играет важную роль в формировании новых предложений. Таким образом начало повседневной работы по формированию позиции играет важную роль в формировании систем массового участия. Товарищи! начало повседневной работы по формированию позиции представляет собой интересный эксперимент проверки модели развития.
```
Выходные данные:
```
{
"result" : [{
"conf" : 1.000000,
"end" : 0.960000,
"start" : 0.780000,
"word" : "не"
},
....
{
"conf" : 0.909724,
"end" : 9.540000,
"start" : 9.090000,
"word" : "задач"
}],
"text" : "не следует однако забывать что реализация намеченных плановых заданий требует от нас анализа позиций занимаемых участниками в отношении поставленных задач"
},
{
"text" : "значимость этих проблем настолько очевидно что рамки и места обучения кадров играет важную роль в формировании новых предложений"
},
{
"text" : "таким образом вначале повседневной работы по формированию позиции играет важную роль в формировании систем массового участия товарищи сначала повседневной работы по формированию позиция представляет собой интересный эксперимент проверки модели развития"
}
```