Поток

Whisper: расшифровка с таймкодами, как получить в каждой версии

Марк Весёлый · основатель «Потока» · ~5 мин
Whisper: расшифровка с таймкодами, как получить в каждой версии

Таймкоды в Whisper зависят от того, какую реализацию вы запускаете: у каждой свои параметры и свой формат вывода. В openai-whisper и faster-whisper пословные включает параметр word_timestamps, в whisper.cpp сегменты выводятся как [00:00:00.000 --> 00:00:11.000], а флаг -ml 1 даёт пословные метки. Для диктовки есть Поток (potok.now).

У Whisper нет одного способа получить таймкоды: он зависит от того, какую реализацию вы используете. Ниже варианты, которые есть в документации проектов.

Расчёт по средней скорости печати и речи, не замер.
ЗадачаЗнаковПечать (200 зн/мин)Голос (900 зн/мин)
ответ в чате3002 мин0.5 мин
письмо15008 мин1.7 мин
пост или протокол400020 мин4.4 мин
статья1000050 мин11.1 мин

Какие таймкоды бывают: по сегментам и по словам

Таймкоды бывают двух уровней. Сегментные показывают, когда началась и закончилась фраза: whisper.cpp выводит их в виде [00:00:00.000 --> 00:00:11.000], а флаг -ml 16 ограничивает длину сегмента. Пословные дают метку для каждого слова: в whisper.cpp их получают флагом -ml 1, но раздел Word-level timestamp в README помечен как experimental.

В openai-whisper параметр word_timestamps есть в функции transcribe(), хотя в README о нём не рассказано: его видно в исходнике whisper/transcribe.py.

Три шага диктовки в «Потоке»: зажал Ctrl + Space, сказал фразу вслух, текст появился в активном поле
Диктовка в «Потоке»: горячая клавиша, речь, готовый текст в том окне, где стоит курсор.

Как получить расшифровку Whisper с таймкодами по шагам

  1. В openai-whisper передайте word_timestamps в transcribe().
  2. В whisper.cpp запускайте распознавание и берите строки вида [00:00:00.000 --> 00:00:11.000]; для сегментов покороче добавьте -ml 16, для пословных меток -ml 1.
  3. В faster-whisper вызовите model.transcribe("audio.mp3", word_timestamps=True).
  4. В WhisperX пословные метки строятся выравниванием через wav2vec2; чтобы выделять слова в файле .srt, добавьте --highlight_words True.
  5. В API OpenAI укажите timestamp_granularities[] вместе с response_format="verbose_json": параметр работает только для whisper-1.

Если нужен готовый файл с расшифровкой, а не скрипт, посмотрите, как получить расшифровку голосового в Word из бота. Другие готовые варианты собраны на странице про альтернативы WhispeRu.

Когда скрипты с таймкодами не нужны

Если вы хотите диктовать в любое приложение, таймкоды не понадобятся: Поток — облачный сервис, распознавание на серверах в России; без интернета не работает. Готовые записи приложение не расшифровывает, для них у Потока есть Telegram-бот potok_now_bot, где тайм-коды [мм:сс] можно включить. Одна подписка — приложение для диктовки и бот для записей и голосовых.

Разбор темы в три шага: Какие таймкоды бывают → Как получить расшифровку Whisper с таймкодами по шагам → Когда скрипты с таймкодами не нужны
О чём страница по шагам: Какие таймкоды бывают → Как получить расшифровку Whisper с таймкодами по шагам → Когда скрипты с таймкодами не нужны.

Частые вопросы

Как получить пословные таймкоды в faster-whisper?

Передайте word_timestamps=True: model.transcribe(«audio.mp3», word_timestamps=True). Так показано в README faster-whisper. Для openai-whisper тот же параметр word_timestamps есть в transcribe(), но в README он не описан.

Можно ли получить таймкоды через API OpenAI?

Да, но только для модели whisper-1: параметр timestamp_granularities[] указывают вместе с response_format=»verbose_json».

В чём разница между голосовым вводом и транскрибацией?

Голосовой ввод — это диктовка в реальном времени: говоришь и сразу получаешь текст в активном поле. Транскрибация — это расшифровка уже готовой аудио- или видеозаписи (например, записи встречи) в текст постфактум. Приложение «Поток» решает первую задачу — живую диктовку; готовые записи на русском расшифровывает его Telegram-бот @potok_now_bot.

Можно ли расшифровать протокол совещания через голосовой ввод?

Через Поток можно надиктовать протокол вживую, произнося его по ходу или сразу после совещания. Расшифровка уже записанного аудиофайла встречи (готовая запись Zoom/Телемост) — отдельная задача транскрибации: такой файл можно отправить Telegram-боту «Потока» @potok_now_bot.

Чем транскрибация отличается от голосового ввода?

Голосовой ввод — это диктовка в реальном времени в активное текстовое поле. Транскрибация — перевод уже готовой аудио/видеозаписи (лекции, звонка, подкаста) в текст постфактум, часто с диаризацией (разделением по говорящим).

Можно ли расшифровать звонок в Zoom автоматически?

Да, у ряда платформ есть встроенная транскрибация встреч: в Zoom — для облачных записей, в Microsoft Teams — во время встречи, в Google Meet — на тарифах Google Workspace. Альтернатива — записать звук и обработать отдельным сервисом транскрибации после звонка. Приложение «Поток» такой расшифровки не делает — оно для живой диктовки; запись звонка файлом можно отправить Telegram-боту «Потока» @potok_now_bot.

Попробовать на своей записи

Бот «Потока» в Telegram расшифрует голосовое, кружок, аудио или видео, а по кнопкам сделает выжимку и список задач. 60 минут в месяц бесплатно.

Открыть @potok_now_bot в Telegram
Сравнение «Потока» и Win+H по строкам: платформы, бесплатно, оплата из рф, распознавание
«Поток» и Win+H: условия по официальным сайтам сервисов.

Встроенная диктовка и «Поток»

По справке Microsoft и Apple.
СредствоГде работаетРусский языкГде распознаётся речь
Голосовой ввод Windows (Win+H)Windows 10 и 11только в Windows 11облако Microsoft, без интернета не работает
Диктовка macOSmacOSестьна устройстве или на серверах Apple
ПотокWindows, macOS, Linuxосновной языкоблако, серверы в России, без интернета не работает

Первоисточники: support.microsoft.com · support.apple.com

Расшифровать запись в Telegram

Голосовые, кружки, аудио и видео расшифровывает Telegram-бот «Потока» @potok_now_bot: перешлите ему голосовое из любого чата, пришлите файл или ссылку на YouTube, VK Видео или RuTube. Короткая запись приходит текстом в чат, длинная — файлом; тайм-коды и разметку по спикерам можно включить. По кнопкам — краткая выжимка, задачи и сроки, ответ на вопрос по записи и выгрузка в TXT, DOCX, PDF или SRT. Большие файлы, до 2 ГБ, удобнее загружать в мини-приложении бота — кнопка «Загрузить» у поля ввода. Бот распознаёт русскую речь, 60 минут в месяц — бесплатно.

Марк Весёлый — основатель «Потока». Пишет о голосовом вводе на русском: как диктовать в рабочих программах, что мешает и чем это чинится.
© Поток · Липатников Владимир Олегович · ИНН 502915859701 · Оферта Сравнения · Вопросы и ответы · О проекте Бесплатный голосовой ввод · Голосовой ввод для нейросетей · Данные и 152-ФЗ · Голосовой ввод на Mac · Тарифы бота · 14 дней Pro за отзыв