推流地址格式,拉流地址格式,他们都有什么方式去实现?

✅ 一、推流地址格式(Push URL)

推流是指 将音视频流从本地发送到服务器,比如用 OBS 推送给 SRS。

🎯 推流常用协议:

  • RTMP(最常用)

  • SRT(安全、抗丢包)

  • RTSP(轻量,但不太适合公网直播)


📌 推流地址格式(以 RTMP 为例):


rtmp://<服务器地址>/<应用名>/<流名>

🌐 示例:

rtmp://localhost/live/2

  • localhost:服务器地址(可换成 IP 或域名)

  • live:应用名(App,SRS 配置中定义)

  • 2:流名(Stream name,自定义,例如摄像头 ID)

🔧 OBS 设置中,“服务器”填 RTMP 地址,“串流密钥”填流名,比如:

服务器:rtmp://localhost/live 串流密钥:2


✅ 二、拉流地址格式(Play URL)

拉流是指 客户端从服务器获取直播流进行播放。SRS 支持多种拉流协议。


🎥 常见拉流协议及地址格式:

协议播放地址格式优点常用场景
HTTP-FLVhttp://host:8080/app/stream.flv低延迟,适合直播浏览器 + flv.js 播放
HLShttp://host:8080/app/stream.m3u8高兼容,但延迟高(10s+)浏览器、iOS
RTMPrtmp://host/app/stream延迟低旧播放器、Flash(已过时)
WebRTCwebrtc://host/live/stream超低延迟(<1s),难配置互动、低延迟直播
SRTsrt://host:port?streamid=...(非 SRS 播放)抗丢包强,延迟可控专业视频系统


🧠 三、推流 + 拉流实现原理(以 SRS 为例)

  1. 启动 SRS 容器或服务(监听 RTMP、HTTP-FLV、HLS 等端口)。

  2. 推流客户端(如 OBS) 把视频用 RTMP 推给 SRS:

    rtmp://localhost/live/2

  3. SRS 接收流后

    • 自动转码(可选);

    • 转封装为 FLV/HLS/WebRTC 等格式。

  4. 浏览器客户端 用 HTTP-FLV 地址拉流播放:

    http://localhost:8080/live/2.flv


✅ 四、测试流程示意:

1. 启动 SRS Docker: docker run -d -p 1935:1935 -p 8080:8080 registry.cn-hangzhou.aliyuncs.com/ossrs/srs:5

2. OBS 设置: 服务器:rtmp://localhost/live 串流密钥:2

3. 打开浏览器播放: http://localhost:8080/live/2.flv (使用 flv.js 播放器)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值