怎么接进去
三块,中间那块不用你操心。
进
你的音频
经 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 搭桥,我们两边都不用写代码。
这不是 API 参考文档,而这个区别很要紧
这是通往同一个引擎的两扇门,走错一扇要赔上一天。这一扇是把媒体流送过去用的。另一扇是照着它写代码用的。
这一页
你已经有音频在流动,你要的是让翻译在这股流动里面。你需要的是一个端口、一个编解码器和一个可以推流过去的地方。
两者在一个地方交汇:WHIP 端点和文本 URL 是房间的设置,而房间是通过 API 建的。
端到端时延是 812 毫秒——完整的一趟,从有人开口到别人听见翻译。
十五种语言出自对音频的一次收听,所以第十五种就是第十五种的价钱,不是第一种的十五倍。
集成与处理任务: 单买的积分
用来直播一个会场,或者处理文件。没有月费:买了积分,想用在哪里就用在哪里——会议、纪要、文档和音频。有十二个月可以用完,每个套餐都是同一个引擎、同样的十五种语言。
带颜色的是说话的时间
静音 · 计数停住
不计入
一小时的会议,说话 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 分钟。语言用得多,就用得快。上限按积分算而不按分钟算,原因就在这里:一分钟值多少,要看送去几种语言。哪一样先用完,试用就结束。
和工程团队聊
四个字段,不问月用量——到这一步谁也不知道。告诉我们你面前有什么,回信的是接过这套东西的人。
只有你们那里才用的词
一个机构自己的名字——人名、街名、编号、职务——正是通用模型从没听过的东西,也正是它出错的地方:它会换成一个听起来差不多的普通词。写一次,就不再出错。 写在会议室里,对它的所有会议都生效。
- 这是一份清单,不是训练:写下来,从第一句话就生效。
- 它什么都不收集。不收你的音频,不收你的文本,一秒都不收。
- 而且是包含在内的。不是额外的套餐,也不是账单上的一行。
