集成商与视听

送音频进来,取 翻译后的声音。

实时,而且是在你已经有的那条流里。跑一场大会的同一个引擎,用你的设备本来就会说的协议就能够到。

一处真实的安装

一处真实的安装

厅里放一台设备,音频送往引擎,翻译抵达听众的手机。连续五个多小时,而且是在最难对付的声学环境之一里。

怎么接进去

三块,中间那块不用你操心。

进

你的音频

经 SRT 的连续流;如果说话的是一部已经登录的手机,就走 WebRTC。

引擎

听一遍,出全部语言

音频只听一遍,所有目标语言都从这一遍里出来。没有哪一种要排在另一种后面。

出

声音和文本

翻译后的声音经 WHIP 进你自己的 WebRTC;文本是每翻译一句一个 HTTP POST。

在单个节点上并行十五种语言,端到端 812 毫秒。

音频从哪里 进去。

一个正在说话的场地不发文件:它发的是连续的流,而且必须在一个会丢包的网络上一直发下去。SRT 就是为此而在。

  • 拨号的是你的设备。创建房间时会把整条 URL 拼好还给你——主机、端口、设备标识和口令。
  • MPEG-TS 容器里的 Opus,单声道,16 kHz,24 kbps 上下。这是说话不是音乐,多出来的带宽买不到任何你听得出来的东西。
  • 口令按设备发放,且不是可选的:没有加密的连接会被拒绝,别的做得再对也没用。十个字符是 SRT 自己的下限,不是我们的。
  • 连续地发,把不连续传输关掉。一条在静音时停下的流,会吃掉重新让它开口的那句话的开头。

连接 URL,房间就是这样还给你的

srt://HOST:8890?streamid=DEVICE_ID&mode=caller&latency=120&passphrase=SECRET

我们自己的设备跑的那条流水线

测你自己那台最短的路,就是把这一段照原样跑一遍。线路输入常常比麦克风来得轻:如果你那边偏小,加一级音量,而不是把编码器往死里压。

gst-launch-1.0 -e \
  alsasrc device=plughw:CODEC,0 ! audioconvert ! audioresample ! \
  audio/x-raw,rate=16000,channels=1 ! \
  opusenc bitrate=24000 ! mpegtsmux ! \
  srtsink uri="srt://HOST:8890?streamid=DEVICE_ID&mode=caller&latency=120&passphrase=SECRET"

另一个入口是 WebRTC。当说话的是一部已经登录的手机时用它:没有什么要安装,也没有什么用来认证,所以房间不会返回凭据。

又从哪里 出来。

如果你已经有 WebRTC 的基础设施——视频平台、活动应用、导播间——不必进我们的房间才能拿到翻译。给我们一个 WHIP 端点,我们往那里推。

  • 每一种目标语言都是自己的一个 WHIP 会话。WHIP 端点是允许只接一路音频的,而且很多确实如此,所以五种语言塞进一个会话会当成一种到达,另外四种悄无声息地没了。
  • 在 URL 里放上语言占位符,每种语言就有自己的路径;不放,语言就作为查询参数传过去。两种方式你这边都分得开,而你必须分得开。
  • 如果你设了令牌,会作为 Authorization Bearer 头发出;一段发言结束时我们会删掉会话资源,不留下任何还占着连接的东西。
  • 默认这是在房间之外另加的:你的听众照常工作,你自己的设备也拿得到音频。设成唯一目的地,房间就不再被使用。

端点的两种写法

delivery.whip.url = https://you.example.com/ingest/{lang}/whip   → …/ingest/en/whip
delivery.whip.url = https://you.example.com/whip                 → …/whip?lang=en

文本是分开走的,这不是小事

WHIP 只搬媒体,别的都不搬——协议里没有数据通道——所以字幕不可能夹在音频里过来。给我们一个 URL,我们每翻译一句就 POST 一次,带上房间、片段、从哪种语言来、到哪种语言去。谁按照“文本会跟音频一起到”来搭,谁就会在活动当天知道。

开箱就能对接的

这些是规范里点了名的,不是一堵标志墙。对于下游只会说 RTMP 或 SRT 的东西,前面摆一台 MediaMTX 就能从 WHIP 搭桥,我们两边都不用写代码。

LiveKitJanusMediaMTXSRSAnt MediaCloudflare

这不是 API 参考文档,而这个区别很要紧

这是通往同一个引擎的两扇门,走错一扇要赔上一天。这一扇是把媒体流送过去用的。另一扇是照着它写代码用的。

这一页

你已经有音频在流动,你要的是让翻译在这股流动里面。你需要的是一个端口、一个编解码器和一个可以推流过去的地方。

API 参考文档

你在写代码:建房间、上传录音、按想要的格式取结果、决定谁可以发言。一个接口一个接口地写清楚,例子粘上就能跑。

去看参考文档
  • 两者在一个地方交汇:WHIP 端点和文本 URL 是房间的设置,而房间是通过 API 建的。

  • 端到端时延是 812 毫秒——完整的一趟,从有人开口到别人听见翻译。

  • 十五种语言出自对音频的一次收听,所以第十五种就是第十五种的价钱,不是第一种的十五倍。

集成与处理任务: 单买的积分

用来直播一个会场,或者处理文件。没有月费:买了积分,想用在哪里就用在哪里——会议、纪要、文档和音频。有十二个月可以用完,每个套餐都是同一个引擎、同样的十五种语言。

7,0分钟计入
17/60
分钟会议

带颜色的是说话的时间

静音 · 计数停住

41人在听

不计入

一小时的会议,说话 20 分钟,计入的也是 20 分钟。

按两种语言(包含发言语言)翻译,并生成一种语言的纪要计算。使用其他服务或增加语言会改变可用分钟数。

€20+ 增值税

先起步,或者拿一场真会议试试。

开始
25分钟发言翻译
100 积分 · 用于会议、纪要、文档和音频
值 €20
单买的话,每积分 0.20 €
—
标价,没有多送
≈ 1 小时会议
一小时、说了二十分钟、两种语言、带纪要
十五种语言
来自同一段音频,同时进行

免费试用

免费 30 分钟 · 15 天

150 个积分,或 15 天

€96+ 增值税

一个团队的日常,连纪要一起。

开始
125分钟发言翻译
500 积分 · 用于会议、纪要、文档和音频
值 €100
单买的话,每积分 0.20 €
+4%
比你付的钱多出来的积分
≈ 5 小时会议
一小时、说了二十分钟、两种语言、带纪要
十五种语言
来自同一段音频,同时进行

免费试用

免费 30 分钟 · 15 天

150 个积分,或 15 天

最多人选

€372+ 增值税

每周好几个会场或好几个团队。

开始
500分钟发言翻译
2,000 积分 · 用于会议、纪要、文档和音频
值 €400
单买的话,每积分 0.20 €
+7%
比你付的钱多出来的积分
≈ 20 小时会议
一小时、说了二十分钟、两种语言、带纪要
十五种语言
来自同一段音频,同时进行

免费试用

免费 30 分钟 · 15 天

150 个积分,或 15 天

€900+ 增值税

几乎天天在直播的地方。

开始
1,250分钟发言翻译
5,000 积分 · 用于会议、纪要、文档和音频
值 €1,000
单买的话,每积分 0.20 €
+10%
比你付的钱多出来的积分
≈ 50 小时会议
一小时、说了二十分钟、两种语言、带纪要
十五种语言
来自同一段音频,同时进行

免费试用

免费 30 分钟 · 15 天

150 个积分,或 15 天

积分可以用多久?

选择要使用的服务。同一余额可兑换的分钟数或字符数因产品而异。

20 分钟发言

余额共享:这些是不同的使用方式,不能相加。

所有套餐都包含,无一例外

  • 全部十五种语言,来自同一段音频
  • 想建多少房间就建多少
  • 纪要、录音、文档和字幕
  • 完整 API 和你自己的密钥
  • 每次购买一张发票,含你的税务信息
  • 直播房间不留任何录音

落地陪跑另行报价

积分付的是引擎,不是人的工时。凡是需要我们的人跟着做的,都单独报价:

  • 上线:接好你的 SRT 或 WebRTC,检查你的方案
  • 活动当天在线支持
  • 按你的流程做定制开发
  • 部署到你自己的网络里
向我们索取报价

或者你想要的任何金额

每积分 0.20 €,也就是标价:自己填金额买不会多送积分,那是套餐的事。10 € 到 5.000 € 之间,付款一通过就进账户。

150 个试用积分,或 15 天

大约相当于一场翻译成 2 种语言、还带纪要的会议里,说了 30 分钟。语言用得多,就用得快。上限按积分算而不按分钟算,原因就在这里:一分钟值多少,要看送去几种语言。哪一样先用完,试用就结束。

和工程团队聊

四个字段,不问月用量——到这一步谁也不知道。告诉我们你面前有什么,回信的是接过这套东西的人。

只有你们那里才用的词

一个机构自己的名字——人名、街名、编号、职务——正是通用模型从没听过的东西,也正是它出错的地方:它会换成一个听起来差不多的普通词。写一次,就不再出错。 写在会议室里,对它的所有会议都生效。

  • 这是一份清单,不是训练:写下来,从第一句话就生效。
  • 它什么都不收集。不收你的音频,不收你的文本,一秒都不收。
  • 而且是包含在内的。不是额外的套餐,也不是账单上的一行。