whisper.cpp streaming: речь с микрофона в текст на своём компьютере
На странице · 4 разделов
`whisper-stream` показывает распознанные слова прямо во время речи в микрофон. На Linux его можно собрать с SDL2 и запустить с многоязычной моделью Whisper base для русского языка. Текст обновляется по мере обработки аудио, но интервал чтения микрофона не равен гарантированной задержке: сверяйте пропуски и время появления слов с исходной записью.
Инструкция проверена по документации и исходникам 8 октября 2026 года; Modelium не запускал модель. Ниже закреплён whisper.cpp
d1be6fdи многоязычная Whisper base. Редакция не измеряла задержку, не проверяла микрофон и не обещает работу на любом компьютере. s1 s2 s3
Что вы получите и чем поток отличается от готового файла?
Произнесите короткую фразу в микрофон — программа whisper-stream будет обновлять распознанный текст в терминале. Например, скажите: «Встреча в четверг в три часа, отчёт принести утром». Проверьте, видны ли «четверг», «три часа» и «утром»; это критерий проверки, не заранее известный ответ модели. Здесь речь об обработке звука по ходу записи, а не о расшифровке готового файла. s1
При обычном режиме вывод перезаписывается в той же строке, а не дополняется как чистый протокол с временными метками. Не копируйте мелькающую строку как окончательную стенограмму. Если нужен проверяемый текст по сохранённому WAV-файлу, используйте общую инструкцию whisper.cpp. s1
Что понадобится на Linux?
Путь ниже — Linux с микрофоном и терминалом, уровень B: потребуется собрать программу. Нужны Git, CMake, C/C++-компилятор, curl и заголовки SDL2; SDL2 передаёт звук микрофона программе. На Ubuntu/Debian начните с sudo apt update && sudo apt install -y git cmake build-essential curl libsdl2-dev. В ОС разрешите приложению доступ к микрофону и проверьте, что он выбран как устройство ввода. Это не инструкция для Windows или Mac. s1 s4
Используйте Whisper base без .en: разработчики отмечают такие варианты как многоязычные; .en рассчитан на английский. Файл ggml-base.bin есть в закреплённом репозитории весов и занимает около 142 MiB на диске. Это размер загрузки, а не минимальная RAM/VRAM; минимум оперативной памяти и скорость на вашем устройстве мы не подтверждали. Лицензия проекта whisper.cpp и оригинальных весов Whisper указана авторами как MIT; проверьте условия самостоятельно перед использованием. s3 s5 s6
Интернет нужен для установки пакетов, получения исходников и весов. После подготовки выбранный путь читает локальный микрофон и локальный файл модели, не требует облачного API для распознавания; это вывод по исходнику, не проведённый нами сетевой аудит всего компьютера. Не используйте чужую конфиденциальную речь для пробного запуска без согласия. s1 s2
Как запустить потоковое распознавание русской речи?
- Откройте терминал и выполните
git clone https://github.com/ggml-org/whisper.cpp.git, затемcd whisper.cppиgit checkout d1be6fde11ac6e0407606b4e42fe72d34add8037.git rev-parse HEADдолжен показать тот же идентификатор — так команды привязаны к просмотренному исходнику. s1 s4 - Соберите вариант с микрофоном:
cmake -B build -DWHISPER_SDL2=ON, затемcmake --build build --config Release -j 2. Запустите./build/bin/whisper-stream --help: должны быть видны--step,--length,--languageи--model. Если файлаwhisper-streamнет, проверьте установкуlibsdl2-devи сообщение CMake, а не переходите к модели.-j 2— ограничение параллельной сборки в этом примере, не минимум оборудования. s1 s2 s4 - Скачайте конкретный многоязычный файл закреплённой ревизии:
curl -fL 'https://huggingface.co/ggerganov/whisper.cpp/resolve/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-base.bin' -o models/ggml-base.bin. После успешной команды проверьте, что файлmodels/ggml-base.binсуществует и загрузка не оборвалась. Не подменяйте егоggml-base.en.bin: тот предназначен для английского. s3 s5 - Запустите
./build/bin/whisper-stream -m models/ggml-base.bin -l ru -ng --step 500 --length 5000.-l ruзадаёт русский,-ngотключает вычисление на GPU,--step 500берёт новый фрагмент через 500 мс, а--length 5000оставляет пятсекундное окно для очередной обработки. Сначала ожидается приглашение[Start speaking], затем обновляющаяся строка распознанных слов. Говорите короткую фразу из примера в тихой комнате. s1 s2 - Остановите запись клавишами
Ctrl+C. Сравните слова с тем, что произнесли, а не с примером «идеального» ответа. Для проверки задержки параллельно сделайте на другом устройстве короткую запись со слышимым хлопком/меткой времени и отметьте момент появления соответствующего слова в терминале; не называйте интервал500 мсзадержкой результата: к нему добавляется время обработки, которое зависит от вашего компьютера. Такой замер требует вашей собственной записи — редакция его не проводила. s1 s2
Что делать при пропусках и ошибках?
Если программа пишет cannot process audio fast enough, dropping audio, исходник прямо сообщает о сбросе накопившегося звука. Уменьшите нагрузку на устройство и повторите ту же фразу; не объявляйте транскрипт полным. Если распознаёт английский вместо русского, проверьте имя без .en и флаг -l ru: исходник для немультиязычной модели принудительно переводит настройку в английский. Если контекст не инициализируется, проверьте путь к файлу модели и что команда запускается из каталога репозитория: относительный -m зависит от текущей папки. s1 s2 s3
Режим --step 0 — другой путь: он ждёт активности речи и выводит блоки с метками времени, но его простой детектор тишины может пропускать слова; настройка этого режима разобрана отдельно в материале про VAD. Для аккуратной стенограммы сделайте и сохраните обычную запись, затем сверяйте распознавание с ней по гайду whisper.cpp. s1
Источники
- whisper.cpp: официальный пример stream и формат вывода — revision d1be6fde11ac6e0407606b4e42fe72d34add8037. Получено 08.10.2026.
- whisper.cpp: исходник whisper-stream, аргументы и сброс аудио — revision d1be6fde11ac6e0407606b4e42fe72d34add8037. Получено 08.10.2026.
- whisper.cpp: список моделей и отличие base от base.en — revision d1be6fde11ac6e0407606b4e42fe72d34add8037. Получено 08.10.2026.
- whisper.cpp: сборка проекта и требования — revision d1be6fde11ac6e0407606b4e42fe72d34add8037. Получено 08.10.2026.
- Официальный репозиторий конвертированных Whisper-весов: ggml-base.bin — revision 5359861c739e955e79d9a303bcbc70fb988958b1. Получено 08.10.2026.
- OpenAI Whisper: многоязычные варианты и лицензия — revision 86098128c0b4f24f0e2aa2994de830614b474227. Получено 08.10.2026.