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 篇原創文章 · 獲贊 21 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章