多协议、性能稳定、丰富API的流媒体服务器软件
您现在的位置:首页  >  文档  >  WebRTC

从1.0.61版本开始,TiTopStreamer支持了webrtc协议,你可以通过WebRTC技术给TiTopStreamer推流,也可以通过Webrtc播放TiTopStreamer上已有的流(包括其它输入协议的视频流,例如rtmp、rtsp、udp、srt、gb28181等)。

下面是关于如何在TiTopStreamer上配置WEBRTC相关功能的介绍:

webrtc

注意:在软件安装后的默认配置下,WebRTC功能并没有被启用。你可以在配置界面中勾选"启用WebRTC",然后保存,再重启TiTopStreamer服务,WebRTC功能才会生效。

除了界面上的这些配置外,还有些比较复杂的配置,你可以直接在配置文件里修改,这个配置文件位于TiTopStreamer安装目录下的conf目录,文件名是webrtc.json

下面是一个这个配置文件的例子:

{
  "enable": true,
  "media": {
    "host": "0.0.0.0",
    "port": 19888,
    "external_host": "109.35.48.121"
  },
  "signal": {
    "host": "0.0.0.0",
    "port": 7443
  },
  "use_embed_demo": true,
  "use_embed_cert": true,
  "cert_file": "",
  "private_key_file": "",
  "web_paths": {
    "/pub/": "/usr/local/TiTopStreamer/static/webdemo/pub",
    "/sub/": "/usr/local/TiTopStreamer/static/webdemo/sub"
  }
}		
		


配置文件和界面上的配置大体是一样,只是配置文件中多了一项配置"web_paths",我们没有把它放在配置界面上。 这个web_paths里面配置的就是我们提供的一个演示程序(DEMO),关于这个DEMO的访问地址,以上面的配置为例,说明如下:

1、对于向TiTopStreamer推送WebRTC流
https://ip地址或域名:7443/pub/		
		


2、对于从TiTopStreamer播放WebRTC流
https://ip地址或域名:7443/sub/		
		


这个demo的源代码,你可以在/usr/local/TiTopStreamer/static/webdemo目录下找到。注意:如果你修改了TiTopStreamer的安装目录,这里的目录也要调整到新的安装目录下。

这个demo的源代码,你可以把它下载下来,然后再把它部署到你自己的web服务器上(例如Nginx),然后你可以根据你的实际项目需求修改这个demo的界面。

注意: 你在使用这个demo做测试时,请先用firefox做测试,当测试推流的页面时,它会提示你选择摄像头,请一定要选择正确的摄像头。



关于webrtc的信令协议,我们采用http协议,用POST方式提交SDP信息。 http的url格式如下:
https://ip地址或域名:[port]/[app_name]/[stream_name]		
		
说明:

[port]就是上面配置界面和配置文件中的信令服务端口号(注意:它是TCP端口,不同于用于媒体流传输的UDP端口)

[app_name]就是TiTopStreamer上的应用名

[stream_name]就是TiTopStreamer上的流ID

无论是你要向TiTopStreamer推送webrtc流,还是要从TiTopStreamer播放webrtc流,上面的信令url都是一样(区别在于http消息体中的sdp部分,对于这部分,你可以查看demo的源代码)。