用说话人分离转录访谈,分清谁说了什么

用说话人分离转录访谈或会议录音,每段文字都会标注Speaker 1、Speaker 2,方便核对谁说了什么。创建转录时加入diarize: true即可。

  • 每段标注Speaker 1、Speaker 2等标签
  • JSON、纯文本、SRT和VTT均保留标签
  • 支持视频链接和上传文件

先区分声音,再整理对话

创建时加一个选项
diarize默认是false。在POST /v1/transcriptions中设为true,或给MCP的transcribe工具传入这个参数。
需要重新识别音频
说话人分离依赖AI语音转文字。source=auto搭配diarize: true时,会跳过平台字幕,直接转录音频。
下载后也能看出谁在说话
JSON包含transcript.speakers和每段的speaker字段;纯文本和SRT使用Speaker 1:前缀,VTT使用voice标签。
逐词数据也能关联说话人
读取JSON时加include=words,即可获取逐词时间戳及对应的说话人,便于处理更细的播放和标注。
不支持的组合直接报错
source: captions与diarize: true不能同时使用,会返回422 invalid_request,不会忽略已经传入的选项。

说话人识别 API怎么开启?

在JSON请求体中设置diarize: true;上传文件时,把同一选项放进表单字段。可接受的来源组合见diarize选项说明。

访谈、圆桌讨论、主持人与嘉宾的对话,都适合加上说话人标签。只有自己讲话的语音备忘录,通常保留文字和时间戳就够了。

这些标签只区分录音里轮到谁讲话,不会识别真实姓名、平台账号,也不能用于声纹认证。

说话人分离必须在创建转录时开启,因为它会改变音频处理方式;之后选TXT还是SRT只是导出选择。source=auto开启说话人分离后会跳过字幕,上传文件则本来就使用AI转录。

上传文件并开启说话人分离
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。格式化文字时保留原来的开始和结束秒数,方便校对时回听。

下面的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使用voice标签,format=text则每段一行并标注说话人。接入播放器前,可先比较字幕导出格式。

先用目标播放器或剪辑软件试开文件,看看voice标签和姓名前缀如何显示。对访谈记录有用的标签,放在每条字幕里未必适合阅读。需要调整时,在应用或字幕文件里修改显示方式,并保留核对过的标签对应关系。

多人同时说话、麦克风太远、背景音乐盖住对话,都可能影响文字和说话人划分。标签突然切换的地方尤其值得回听。

下次录音尽量分开收音、减少抢话。把原始录音录清楚,比事后修正转录更有帮助。

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分钟免费额度,仅限1次,无需绑卡。

获取API密钥

常见问题

没找到答案?联系我们

标签会直接写出真实姓名吗?

不会,只会标为Speaker 1、Speaker 2等。确认录音中的声音后,可以在自己的代码或文档里把标签对应到姓名。

YouTube字幕能直接带上说话人吗?

不能。字幕不提供这项说话人信息。source=auto开启diarize: true后会改用AI转录;source: captions与diarize: true一起传入会被拒绝。

区分说话人要多收费吗?

不用。不论是否开启diarize,都是每分钟1积分,按音视频时长向上取整。