前提:
根据大疆官网上云API部署文档,已提前在windows主机上部署并运行前、后端代码,mqtt、mysql等等。
一、安装docker+srs
docker的windows环境部署可参考这篇教程:Docker - Windows下Docker环境的安装部署教程(以Win10为例)
1,安装并启动docker,然后在命令提示窗口输入以下内容启动srs:
set CANDIDATE=192.168.78.66 && docker run --name srs_dji -it -p 1935:1935 -p 1985:1985 -p 8080:8080 --env CANDIDATE=$CANDIDATE -p 8000:8000/udp registry.cn-hangzhou.aliyuncs.com/ossrs/srs:5 ./objs/srs -c conf/rtmp2rtc.conf
2,再在命令提示窗口内容输入:
docker exec -it srs_dji /bin/bash
3,再在命令提示窗口内容输入:
apt-get update
apt-get install vim -y
4,再在命令提示窗口内容输入:
vi conf/rtmp2rtc.conf
在出现的文件中按下“i”键进行如下蓝色字修改:
listen 1935; #必须有,rtmp协议,公网必须开放这个端口
max_connections 1000;
daemon off;
srs_log_tank console;
http_api {
enabled on;
#必须有,webrtc播放和推流需要这个端口
listen 1985;
}
http_server {
enabled on;
listen 8080;
#开发阶段需要,这个是srs自带的web页面,
dir ./objs/nginx/html;
}
srt_server {
enabled on;
listen 10080;
maxbw 1000000000;
connect_timeout 4000;
latency 20;
peerlatency 20;
recvlatency 20;
}
rtc_server {
enabled on;
listen 8000;
candidate 192.168.78.66; #配置上IP,
}
# @doc https://github.com/ossrs/srs/issues/1147#issuecomment-577607026
vhost __defaultVhost__ {
#这个是rtc配置,开启rtmp转rtc
rtc {
enabled on;
rtmp_to_rtc on;
rtc_to_rtmp on;
}
#开启http-flv
http_remux {
enabled on;
mount [vhost]/[app]/[stream].flv;
}
#rtmp的低时延配置
tcp_nodelay on;
min_latency on;
play {
gop_cache off;
queue_length 10;
mw_latency 100;
}
publish {
mr off;
}
}
按“ESC”键,再输入:wq退出保存。
5,为使得文件生效,最好重新启动srs
6,当打开http://localhost:8080/,看到如下界面,表面srs安装成功:
二、rtmp转webrtc
1,进入SRS控制台,打开“视频流”菜单,当看到列表里出现大疆pilot控制器上提供的rtmp的流名称时,表示srs已接入大疆的rtmp视频流,然后点击“预览”按钮:
2,在新出现的预览界面中,将地址栏中“srs_player”改为“rtc_player”,回车后,再切换到“RTC播放器”页面,就可以看到webrtc流:
3,在保证“关闭pilot上的直播”的前提下,打开大疆上云直播界面,进行如下图选择,会听到语音“直播已开启”提示,即可在前端看到直播界面了: