You need to enable JavaScript to run this app.
导航
开启实时字幕 StartSubtitle
最近更新时间:2024.12.31 17:06:30首次发布时间:2024.12.27 11:43:02

在实时音视频通话场景中,若需对房间内指定用户的说话内容生成字幕,你可通过该接口实现。
你可以根据需要设定应用标识、房间 ID、用户 ID,对指定用户的说话内容生成字幕。生成字幕支持多种语言配置,直接向指定用户或房间内所有用户广播。

注意事项

前提条件

使用字幕功能前:

  • 你需要前往火山引擎语音技术控制台创建流式语音识别应用,获取语音识别应用标识 APP ID、 Access Token 和语种对应的 ClusterID。
  • 你需要前往RTC 控制台功能配置页开启实时字幕功能,并打开实时字幕功能中的流式语音识别,将火山引擎语音技术控制台获取的内容填入进行配置。

请求频率

单账号下 QPS 不得超过 60。

调用接口

关于调用接口的请求结构、公共参数、签名方法、返回结构,参看调用方法

请求说明

  • 请求方式:POST
  • 请求地址:https://rtc.volcengineapi.com?Action=StartSubtitle&Version=2024-06-01

请求参数

下表仅列出该接口特有的请求参数和部分公共参数。更多信息请见公共参数

Query

参数
类型
是否必选
示例值
描述
Action
String
StartSubtitle
接口名称。当前 API 的名称为 StartSubtitle
Version
String
2024-06-01
接口版本。当前 API 的版本为 2024-06-01

Body

参数
类型
是否必选
示例值
描述
AppId
String
661e****543cf
你的音视频应用的唯一标志,参看获取 AppId
RoomId
String
Room1
房间的 ID,是房间的唯一标志。赋值规则参看参数赋值规范
TaskId
String
Task1

字幕任务 ID。你必须对每个字幕任务设定 TaskId,且在后续进行任务更新和结束时也须使用该 TaskId

TaskId 是任务的标识,在一个 AppId 的 RoomId 下 taskId 是唯一的,不同 AppId 或者不同 RoomId 下 TaskId 可以重复,因此 AppId + RoomId + TaskId 是任务的唯一标识,可以用来标识指定 AppId 下某个房间内正在运行的任务,从而能在此任务运行中进行更新或者停止此任务。

关于 TaskId 及以上 Id 字段的命名规则符合正则表达式:[a-zA-Z0-9_@\-\.]{1,128}
LanguageConfig
Object
-
字幕源语种和目标语种配置
SourceLanguages
Object[]
-
字幕源语种配置。
UserId
String
user1
房间内需生成字幕用户对应的 UserId
LanguageCode
String[]
["zh"]
语种代号。 前往 RTC 控制台-实时字幕-流式语音识别-语种模型匹配获取或自定义语种代号。
仅支持配置一种语种代号。
RoomTargetLanguages
String[]
["zh"]
字幕目标语种代号,默认源语种相同。
DistributionMode
Integer
1

字幕结果分发方式,可取值及含义如下:

  • 1: 将字幕结果回调给客户端。回调接收方式参看ReceiverList参数说明。
  • 2: 将字幕结果回调给业务服务器指定地址。
  • 3: 将字幕结果同时回调给客户端和业务服务器指定地址。
返回字幕结构及解析示例参看实时字幕
ServerMessage
Object
-

接受字幕结果业务服务器配置。

注意

DistributionMode2 或者 3 时, 该参数必填。

Signature
String
TestSignature
鉴权签名。
你可传入该鉴权参数,在接收到字幕结果后,与结果中的 signature字段值进行对比以进行鉴权验证。
Url
String
http://127.0.0.0:8080/subtitlemsg
接收字幕结果的 URL 地址。需支持 HTTP(S)协议。
ReceiverList
String[]
["user1","user2"]

字幕结果回调给客户端时,接收用户列表。

注意

该参数仅在DistributionMode13 时生效。

返回参数

本接口无特有的返回参数。公共返回参数请见返回结构
其中返回值 Result 仅在请求成功时返回 ok,失败时为空。

请求示例

POST https://rtc.volcengineapi.com?Action=StartSubtitle&Version=2024-06-01
{
    "AppId": "661e****543cf",
    "RoomId": "Room1",
    "TaskId": "Task1",
    "LanguageConfig": {
        "SourceLanguages": [
            {
                "UserId": "user1",
                "LanguageCode": [
                    "zh"
                ]
            },
            {
                "UserId": "user2",
                "LanguageCode": [
                    "zh"
                ]
            }  
        ],
        "RoomTargetLanguages": [
            "zh"
        ]
    },
    "DistributionMode": 3,
    "ServerMessage": {
        "Signature": "TestSignature",
        "Url": "http://127.0.0.0:8080/subtitlemsg"
    },
    "ReceiverList": [
        "user1",
        "user2"
    ]
}

返回示例

{
    "Result": "ok",
    "ResponseMetadata": {
        "RequestId": "20230604110420****100232280022D31",
        "Action": "StartSubtitle",
        "Version": "2024-06-01",
        "Service": "rtc",
        "Region": "cn-north-1"
    }
}