Результаты поиска инструментов перевода речи в текст
Решения только для ввода текста в поля редактирования текста. Не подойдет для эмуляции нажатия кнопок, combobox и т.д., хотя как то и можно приспособить, но в этой заметке не про это.
Оглавление:
- Vosk
- Статья на Baeldung "How to Convert WAV or MP3 to Text in Linux"
- Wisper
- В Android есть встроенный распознаватель речи в клавиатуре.
- Встроенные в браузер средства на JavaScript (Web Speech API).
- Статья на Habr "Rhasspy — опенсорсный и полностью офлайновый речевой тулкит. Распознавание русского языка. Никаких утечек в облако."
- Ссылки
Vosk
Проект Vosk https://alphacephei.com/vosk/index.ru
Тест декодинга из Vosk https://github.com/alphacep/vosk-api/blob/master/java/lib/src/test/java/org/vosk/test/DecoderTest.java
@Test public void decoderTestShort() throws IOException, UnsupportedAudioFileException { LibVosk.setLogLevel(LogLevel.DEBUG); try (Model model = new Model("model"); InputStream ais = AudioSystem.getAudioInputStream(new BufferedInputStream(new FileInputStream("../../python/example/test.wav"))); Recognizer recognizer = new Recognizer(model, 16000)) { int nbytes; byte[] b = new byte[4096]; short[] s = new short[2048]; while ((nbytes = ais.read(b)) >= 0) { ByteBuffer.wrap(b).order(ByteOrder.LITTLE_ENDIAN).asShortBuffer().get(s); if (recognizer.acceptWaveForm(s, nbytes / 2)) { System.out.println(recognizer.getResult()); } else { System.out.println(recognizer.getPartialResult()); } } System.out.println(recognizer.getFinalResult()); } Assert.assertTrue(true); }
Статья на Baeldung "How to Convert WAV or MP3 to Text in Linux
https://www.baeldung.com/linux/wav-mp3-to-text-speech-recognize
Описаны примеры решения этой задачи с помощью разных инструментов: vosk (python), pocketsphinx, spchcat, whisper. Пример использования одного из инструментов(spchcat):
$ spchcat convertedFile.wav
TensorFlow: v2.3.0-14-g4bdd3955115
Coqui STT: v1.1.0-0-gf3605e23
...
learn english super fast
learn english by focusing on content
not grammar
what do i mean by content
...
Wisper
Как установить Whisper на Windows и перевести аудио в текст без интернета
- Работает без интернета
- Поддерживает русский язык
- Бесплатный и с открытым кодом
Работает на Python 3.11. Установка:
pip install -U openai-whisper pip install ffmpeg-python
В Android есть встроенный распознаватель речи в клавиатуре.
Встроенные в браузер средства на JavaScript (Web Speech API).
Пример: https://v.perm.ru/test_voice_to_text.html
или https://v.perm.ru/voice-to-text.html
В НАСТРОЙКАХ БРАУЗЕРА НУЖНО РАЗРЕШИТЬ ИСПОЛЬЗОВАНИЕ МИКРОФОНА! (во всех браузерах по разному)
Вся суть решения в html коде страницы:
// Проверяем наличие Web Speech API
const SpeechRecognition = window.SpeechRecognition || window.webkitSpeechRecognition;
if (SpeechRecognition) {
// РАСПОЗНАВАТЕЛЬ!
const recognition = new SpeechRecognition();
recognition.lang = 'ru-RU'; // Устанавливаем язык
recognition.continuous = false; // Остановка после первой паузы
recognition.interimResults = false; // Не показываем промежуточные результаты
const voiceBtn = document.getElementById('voiceBtn');
const searchInput = document.getElementById('searchInput');
const textPad = document.getElementById('textPad');
voiceBtn.addEventListener('click', () => {
// РАСПОЗНАВАНИЕ!
recognition.start();
});
// Событие при получении результата распознавания
recognition.addEventListener('result', (event) => {
const transcript = event.results[0][0].transcript;
searchInput.value = transcript;
textPad.value = transcript;
console.log('Распознанный текст:', transcript);
// Здесь вы можете, например, автоматически отправлять текст на сервер,
// осуществлять поиск по сайту и т.д.
// Пример: отправить форму:
// document.getElementById('searchForm').submit();
});
// Событие после окончания прослушивания
recognition.addEventListener('end', () => {
console.log('Распознавание завершено');
});
} else {
alert('К сожалению, ваш браузер не поддерживает Web Speech API');
}
В примере распознавание заканчивается после некоторого молчания.
Статья на Habr "Rhasspy — опенсорсный и полностью офлайновый речевой тулкит. Распознавание русского языка. Никаких утечек в облако."
Ссылки:
- Как работают системы распознавания речи(habr)
- Как работает технология распознавания речи и где ее используют
- Пример использования Web Speech API на моем сайте
- Еще один пример использования Web Speech API на моем сайте (попроще)
- GigaAM-v3: открытая SOTA-модель распознавания речи на русском
- Распознавание речи с помощью CMU Sphinx 2015 г.
- Насколько хорош cmu sphinx для распознавания речи?
- Я сделал учебник о том, как делать распознавание речи с помощью Kaldi!
- Versions of Kaldi
- https://github.com/cmusphinx/pocketsphinx
- Building an application with sphinx4
- github cmusphinx
- Как работает распознавание речи