跳转至

ppobs 推流客户端使用指南

ppobs 是 PPCDN 基于 OBS Studio 定制的推流客户端。它在标准 OBS 之上集成了 PPCDN 的低延迟 WHIP / SRT 推流、Simulcast 多档同播、H264 + HEVC 多轨同播与弱网自适应,只需在「直播」设置里 填入控制台的 appId / appSecret 即可开播,无需手工拼推流地址。

面向对象:需要在 PPCDN 上开播的直播主 / 接入方。本文只讲「下载 + 配置 + 开始推流」。

1. 能力概览

能力 说明
WHIP / SRT 双入库协议 推流地址与鉴权 token 由 ppcenter 按你选择协议自动下发,协议可切换
Simulcast 多档同播 最多 4 档画质,服务端按观众网络状况无缝切档
H264 + HEVC 多轨同播 同时发布两条独立 WHIP 会话(各自带音频);HEVC 编码器不可用时给出明确提示
弱网自适应 服务端按「不可恢复丢包 / 带宽」自动降级与恢复,网络恢复后逐级升回
断线重连 一段时间没有数据发送即判定会话失效并自动重连(阈值可配置),无需手动重推
P2P 推流 推流前探测 NAT 类型,失败自动降级为仅走 Edge,不阻断推流
端到端时延打点 码流内嵌入时间戳,供播放端测量端到端时延

推流限制

  • 横屏最大 3840x2160,竖屏最大 2160x3840
  • 最大 60fps
  • 最大 10000 Kbps

2. 下载与安装

  1. 打开 ppobs releases。
  2. 下载与你的系统匹配的安装包:
  3. Windows:.exe 安装程序或 .zip 便携包
  4. macOS:.dmg
  5. Linux:按发行版选择对应包
  6. 按安装向导安装后启动 ppobs。

ppobs 是 OBS 的一个分支。首次启动的向导、场景 / 来源 / 混音器用法与标准 OBS 完全一致, 只有「设置 → 直播」做成了 PPCDN 对接。

3. 获取 appId 与 appSecret

  1. 登录 PPCDN 控制台(https://pp-cdn.org)。
  2. 在控制台创建一个 App,得到该 App 的 appId 与 appSecret。
  3. 推流地址不需要手工拼装:ppobs 会用 appId / appSecret 向 ppcenter 换取当前最优 Origin 的推流地址与鉴权 token。

appSecret 等同于推流凭证,请勿贴到公开页面、聊天记录或截图里;如疑似泄露,请在控制台 重置后重新配置。

4. 配置推流(推荐方式:PPCDN 服务)

  1. 打开 设置 → 直播。
  2. 服务 选择 PPCDN。
  3. 填入该 App 的 appId 与 appSecret。
  4. (可选)在 同播配置 里选择:
  5. 入库协议:WHIP 或 SRT。默认推荐 WHIP(时延更低);弱网上行不稳时可选 SRT 以获得更好的重传鲁棒性。
  6. Simulcast 档位:最多 4 层。档位越多,服务端可按观众网络切换的画质层次越细。
  7. 多轨同播:开启后同时发布 H264 与 HEVC 两条轨(需编码器支持 HEVC)。 > SRT 多路要求各档编码器均为 H264;WHIP 多轨支持 H264 + HEVC。
  8. 点击 开始推流。

推流过程中若网络中断,ppobs 会在判定会话失效后自动重连,无需你重新点击推流。

5. 编码设置建议(低延迟)

推流参数会直接叠加到端到端时延上。低延迟场景建议:

项 建议值 说明
编码器 H.264 或 HEVC HEVC 同码率画质更好,但需播放端支持(pplayer 会自动检测)
码率控制 CBR(恒定码率) 避免码率突变带来的卡顿与缓冲抖动
关键帧间隔(GOP) 1–2 秒 太长会拖慢起播与切档
B 帧 关闭 B 帧会引入额外重排延迟
预设 / tune 低延迟(zerolatency) 关闭前视缓冲
帧率 30 fps(游戏等可选 60) —
分辨率 1080p(或按业务需要) 不超过上文限制

6. 手动 / 高级推流

不使用 ppobs 的 PPCDN 一键对接时,也可以拿到入库地址后用标准 OBS(或任意 WHIP/SRT 客户端) 推流。入库地址与 token 通过 ppcenter 的发布接口按需下发:

POST https://api.pp-cdn.org/v1/publish/requests
Content-Type: application/json

{
  "appId": "<你的 appId>",
  "appSecret": "<你的 appSecret>",
  "streamName": "<流名>",
  "protocol": "whip"        // 或 "srt"
}
  • protocol 缺省为 whip。
  • 返回 whipUrl + bearerToken(WHIP),或 ppcdnPublishEndpoint(SRT,host[:port])。
  • SRT 地址模板为:
srt://{ppcdnPublishEndpoint}?streamid=publish:{appId}/{streamName}
  • WHIP 地址为 https://{origin} /{appId}/{streamName}/whip,并需在请求头带 Authorization: Bearer <bearerToken>。

该接口是发布向接口,appSecret 只应在你的服务端使用,不要放进前端页面。

7. 常见问题

Q:开始推流报鉴权 / 凭证错误? 检查控制台里 App 的 appId / appSecret 是否复制完整、是否欠费;重置过 appSecret 后需在 ppobs 里同步更新。

Q:视频能推上去,但观众看不到? 确认你拿的是播放地址(WHEP)而不是推流地址,见 pplayer 播放器集成指南。

Q:开了 HEVC 多轨但没有画面? 浏览器 / 播放端不支持 HEVC 时会自动回退到 H264 轨;请在支持的浏览器上验证,或关闭多轨只推 H264。

Q:弱网上行卡顿? 可把入库协议切换为 SRT,并适当降低码率 / 档位数;服务端也会按丢包与带宽自动降档。

Q:推流地址需要自己填吗? 不需要。选择 PPCDN 服务并填入 appId / appSecret 后,地址与 token 由 ppcenter 自动下发。