Определение говорящих в аудио с разметкой реплик

Определение говорящих в аудио помогает разобрать интервью, дискуссию или запись встречи по репликам. Передайте diarize: true, и каждый сегмент получит метку Speaker 1, Speaker 2 и так далее. Имена участников вы укажете сами после прослушивания.

  • Метка Speaker 1, Speaker 2 и так далее у каждого сегмента
  • Определение говорящих в JSON, тексте, SRT и VTT
  • Для поддерживаемых видеоссылок и загруженных файлов

Отделите реплики друг от друга

Включите одной опцией
По умолчанию diarize=false. Передайте true в POST /v1/transcriptions или параметр diarize в инструмент MCP transcribe.
Размечаем по звуку
Определение говорящих требует распознавания речи. При source=auto и diarize=true пропускаем субтитры платформы и сразу расшифровываем аудио.
Метки сохраняются при экспорте
В JSON есть transcript.speakers и поле speaker у сегмента. В тексте и SRT перед репликой стоит Speaker 1:, в VTT используется голосовая метка.
Говорящий у каждого слова
При чтении JSON добавьте include=words. Вместе с временными метками слов получите и метки говорящих.
Несовместимые опции не замалчиваем
Сочетание source: captions и diarize: true вернёт 422 invalid_request. Субтитры не содержат нужных данных, поэтому одну из опций нужно изменить.

Как включить определение говорящих через API

Добавьте diarize: true в JSON запроса. При загрузке файла передайте diarize как поле формы. Допустимые сочетания с source описаны в настройках diarize.

Опция пригодится для интервью, разговора ведущего с гостем или дискуссии. Для одиночной голосовой заметки часто достаточно текста с временными метками. Разметка показывает смену голосов, но не устанавливает личность и не подтверждает, кому принадлежит голос.

Включайте diarize при создании задачи: эта настройка меняет обработку записи. Добавить её выбором формата экспорта не получится. При source=auto субтитры пропускаем. Загруженные файлы и так всегда проходят через распознавание речи.

Загрузка файла с определением говорящих
curl -X POST "https://api.transcript1.com/v1/transcriptions?wait=60" \
  -H "Authorization: Bearer $TRANSCRIPT1_API_KEY" \
  -F [email protected] \
  -F diarize=true

Свяжите сегменты с участниками разговора

Список меток находится в transcript.speakers, а каждая реплика содержит поле speaker. В transcript_source будет speech_to_text. Поля для интеграции перечислены в схеме объекта транскрибации.

Сначала прослушайте запись, затем сопоставьте Speaker 1 и Speaker 2 с участниками в своём приложении или рабочем документе. Для следующей записи составьте новое соответствие: Speaker 1 там может быть другим человеком.

По полю speaker удобно собрать диалог, а с include=words доступна более точная привязка ко времени. Сохраняйте исходные start и end в секундах, чтобы проверяющий мог вернуться к аудио. JSON ниже иллюстрирует структуру, а не описывает конкретную загруженную беседу.

Сокращённый JSON с метками говорящих
{
  "status": "completed",
  "transcript_source": "speech_to_text",
  "transcript": {
    "speakers": ["Speaker 1", "Speaker 2"],
    "segments": [
      { "start": 0, "end": 3.4, "speaker": "Speaker 1", "language": "en", "text": "Good morning." },
      { "start": 3.4, "end": 7.9, "speaker": "Speaker 2", "language": "en", "text": "Thanks for having me." }
    ]
  }
}

Как метки выглядят в субтитрах

В format=srt перед репликой появится Speaker 1:, в format=vtt — голосовая метка. При format=text каждый сегмент занимает отдельную строку с меткой. Перед интеграцией сравните форматы субтитров.

Откройте файл в своём плеере или редакторе. Проверьте, как он показывает голосовые метки и префиксы. То, что удобно в исследовательском транскрипте, может мешать в каждой строке субтитров. Правьте отображение в приложении или экспортированном файле и сохраняйте связь с проверенными метками.

Если люди перебивают друг друга, говорят далеко от микрофона или поверх музыки, проверить стоит и слова, и границы реплик. Особенно внимательно прослушайте места с неожиданной сменой метки. При новой записи лучше использовать отдельные микрофоны и стараться не говорить одновременно.

format=vtt
WEBVTT

00:00:00.000 --> 00:00:03.400
<v Speaker 1>Good morning.

00:00:03.400 --> 00:00:07.900
<v Speaker 2>Thanks for having me.

Проверьте, кому принадлежит цитата

Найдите в начале записи хорошо слышный обмен репликами и запишите, кому соответствует каждая метка. Затем выборочно проверьте более поздние фрагменты. Если по звуку непонятно, кто говорит, оставьте эту неопределённость в тексте. Не подставляйте имя только потому, что оно подходит по контексту.

Для исследовательских интервью используйте единые правила проверки: идентификаторы участников и ваши пометки храните отдельно от исходных слов. Перед публикацией именной цитаты из дискуссии подтвердите имя по записи и доступному контексту.

Диаризация не заменяет биометрическую идентификацию. По ней нельзя подтверждать личность звонящего или утверждать, что в разных записях звучит один человек. Даже один голос может измениться после смены микрофона, а одновременную речь не всегда удаётся разделить на аккуратные реплики.

Что заметилиКак проверить
Метка сменилась посреди репликиПрослушайте место до и после смены. При необходимости исправьте рабочую копию.
Несколько человек говорят одновременноПроверьте слова и говорящих. Там, где звук неразборчив, сохраните пометку о сомнении.
Та же метка встретилась в другой записиЗаново сопоставьте метки с участниками этой записи.

Попробуйте бесплатно: 60 минут на старт

Подтвердите почту и получите 60 бесплатных минут. Банковская карта не нужна.

Получить API-ключ

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

Остались вопросы? Напишите в поддержку

В транскрипте будут имена участников?

Нет, только Speaker 1, Speaker 2 и так далее. transcript1 не знает настоящих имён. После проверки записи сопоставьте метки с людьми в своём коде или документе.

В субтитрах YouTube есть метки говорящих?

Нет. При source=auto и diarize=true вместо субтитров используем распознавание речи. Сочетание source=captions и diarize=true не принимаем.

За определение говорящих нужно доплачивать?

Нет. С diarize и без него цена одна: 1 кредит за каждую начатую минуту записи.