SRT直播地址格式简介

SRT直播地址格式简介

介绍srt在live模式下如何构造推/拉流地址。
源github wiki地址: srt-url-format
github代码: https://github.com/runner365/srs

rtmp常规地址格式

rtmp地址格式简介

  • 常规rtmp格式(无vhost)

    rtmp://hostip:port/appname/streamname

    例子: rtmp://10.111.1.100:1935/live/livestream

    上面例子中appname=“live”, streamname=“livestream”

  • 复杂rtmp格式(有vhost)

    rtmp://hostip:port/vhost/appname/streamname

    例子: rtmp://10.111.1.100:1935/srs.com.cn/live/livestream

    上面例子中vhost=“srs.com.cn”, appname=“live”, streamname=“livestream”



    rtmp如何确认对rtmp url是推流还是拉流:

  • publish

    rtmp协议中publish消息表示是对该url进行推流

  • play

    rtmp协议中publish消息表示是对该url进行推流

srt直播地址格式

因为srt是四层传输协议,所以无法确定对某个srt url操作是推流还是拉流。


在srt官网中有对推/拉流的推荐:AccessControl.md

关键方法是通过streamid参数来明确url的作用,strreamid的格式符合YAML格式。

srt常规地址(无vhost)

srt url举例:

  • 推流地址: srt://127.0.0.1:10080?streamid=#!::h=live/livestream,m=publish
  • 拉流地址: srt://127.0.0.1:10080?streamid=#!::h=live/livestream,m=request



    其中:
  1. #!::

    #!::为开始,符合yaml格式标准
  2. h

    映射到rtmp地址中的appname/streamname;
  3. m

    publish表示推流。

    request表示拉流。



    上面srt对应的rtmp拉流地址为:rtmp://127.0.0.1/live/livestream

srt复杂地址(有vhost)

srt url举例:

  • 推流地址: srt://127.0.0.1:10080?streamid=#!::h=srs.srt.com.cn/live/livestream,m=publish
  • 拉流地址: srt://127.0.0.1:10080?streamid=#!::h=srs.srt.com.cn/live/livestream,m=request



    其中:
  1. #!::

    #!::为开始,符合yaml格式标准
  2. h

    映射到rtmp地址中的vhost/appname/streamname;
  3. m

    publish表示推流。

    request表示拉流。



    上面srt对应的rtmp拉流地址为:rtmp://127.0.0.1/srs.srt.com.cn/live/livestream

    或rtmp://127.0.0.1/live/livestream?vhost=srs.srt.com.cn。
发布了21 篇原创文章 · 获赞 18 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/sweibd/article/details/104202287