您现在的位置:首页 > 文档 > WebRTC
从1.0.61版本开始,TiTopStreamer支持了webrtc协议,你可以通过WebRTC技术给TiTopStreamer推流,也可以通过Webrtc播放TiTopStreamer上已有的流(包括其它输入协议的视频流,例如rtmp、rtsp、udp、srt、gb28181等)。
下面是关于如何在TiTopStreamer上配置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的源代码)。