WHIP 推流与 WHEP 实时观看
WHIP直播推流SDK面向 WebRTC 实时媒体接入,支持摄像头、麦克风采集直推,也可配合 SmartMediaKit 拉流模块将已有 RTSP/RTMP 视频源转换为 WHIP 发布。
WHIP 负责媒体上行接入;WHEP 用于接收端实时观看。可配合 SmartMediaServer 组合两端链路,并按服务端与接收终端的实际能力完成媒体格式协商和多协议分发。
Demo 与支持平台
- Android Camera2 WHIP 推流 Demo:演示摄像头采集、麦克风输入、WHIP 参数配置、推流启停及连接状态回调。
- RTSP/RTMP 转 WHIP 推流 Demo:演示外部流拉取、压缩音视频数据接入和 WHIP 发布;编码兼容的视频可复用压缩数据,音频按目标服务要求适配。
具体平台支持、接口签名与可用能力以对应平台正式发布包和配套 Demo 为准。视频编码、音频格式及实际互通效果需与目标 WHIP 服务端和观看终端共同验证。
接入流程
- 确认平台与数据源:选择摄像头采集直推,或 RTSP/RTMP 拉流转 WHIP,获取对应模块版本和 Demo。
- 配置服务端:设置目标服务提供的 WHIP Endpoint;需要鉴权时配置 Bearer Token,并确认网络可达。
- 接入音视频数据:按 Demo 完成采集、编码或外部数据输入,并按协商结果适配媒体格式。
- 启动并验证:启动 WHIP 发布,检查 HTTP 信令、媒体连接和异常回调;配合 SmartMediaServer 的 WHEP 观看端验证画面、声音与延迟。
- 完成生命周期管理:按接口要求停止发布并释放资源,结合业务状态处理断连和重连。
Android Java 常用配置与控制接口
| 接口名称 | 用途 |
|---|---|
SetWhipEndpointURL() | 设置 WHIP 推流接入地址。 |
SetWhipBearerToken() | 配置目标服务所需的鉴权令牌。 |
SetWhipRtpNackEnabled() | 配置视频 RTP NACK 重传响应。 |
SetWhipRtpPacingEnabled() | 配置 RTP 平滑发送。 |
SetWhipG711ToOpus() | 配置 G.711 到 Opus 的音频适配。 |
start_whip_stream() | 启动 WHIP 发布。 |
stop_whip_stream() | 停止 WHIP 发布。 |
以上为接口名称索引,完整参数、调用顺序和事件回调以对应版本的头文件、Java 封装及 Demo 工程为准。
WHEP 配套观看
WHEP 观看端需使用媒体服务提供的 WHEP 接收地址及相应鉴权配置。WHIP 发布地址与 WHEP 接收地址的用途不同,应按目标服务的配置分别获取,并确认双方的媒体格式兼容。