服务器端用WHIP&WHOP操作AWS IVS实时舞台 订阅遇404求API资源
服务器端通过WHIP/WHOP操作AWS IVS实时舞台的解决方案
核心问题定位
你遇到的404错误,核心原因是AWS IVS舞台的WHIP/WHOP订阅URL无法通过手动拼接participant_id生成——这类端点需要通过AWS IVS的Stage API动态获取,而非自行构造。
正确操作流程
1. 获取舞台基础端点
调用AWS IVS的GetStage API,响应中会返回whipEndpoint(推流用)和whopEndpoint(订阅用),这是对应舞台的官方基础端点,无需自行拼接路径。
2. 生成参与者权限令牌
服务器端必须先调用CreateParticipantToken API,生成关联目标舞台的参与者令牌。需根据操作类型指定权限:
- 订阅流:设置
capabilities: { subscribe: true } - 推流:设置
capabilities: { publish: true }
该令牌是WHIP/WHOP请求的核心身份凭证。
3. 规范发起WHIP/WHOP请求
- WHIP推流:使用
whipEndpoint,请求头携带Authorization: Bearer <生成的令牌>,按照WHIP协议发送SDP Offer,完成推流建联。 - WHOP订阅:使用
whopEndpoint,同样携带令牌,发送WHOP协议的订阅请求,无需手动指定participant_id——令牌会自动关联到目标舞台内的可订阅流,服务器通过协议交互获取对应媒体的SDP Answer。
你之前构造的https://xxx.global-bm.whip.live-video.net/subscribe/<participant_id>格式不符合AWS IVS的规范,这是导致404的直接原因。
跨舞台音频处理与转发流程
- 服务器用第一个舞台的订阅令牌+
whopEndpoint获取音频流并处理 - 为第二个舞台调用
CreateParticipantToken生成推流令牌 - 使用第二个舞台的
whipEndpoint+推流令牌,通过WHIP将处理后的音频推送到新舞台 - 移动端用第二个舞台的订阅令牌完成流订阅
关键API资源
你需要用到的AWS IVS Stage核心API:
CreateParticipantToken:生成带权限的参与者令牌,用于WHIP/WHOP身份验证GetStage:获取舞台的WHIP/WHOP基础端点ListParticipants(可选):查询舞台内参与者,辅助定位目标流
这些API的参数、响应格式可在AWS IVS官方API文档中查阅,所有操作均基于标准WHIP/WHOP协议+AWS IVS Stage API实现,无需额外的REST接口。
内容的提问来源于stack exchange,提问作者Yuanbo Han
相关产品推荐
相关产品推荐

