文章目录
总结无人机的直播流,rtsp比rtmp延迟低很多。这有一个需要注意的点,这个可能需要在运行程序的过程中实时记住的一点,如果发现连接的是同一个网络,然后能ping通的情况下,或者说保证该启动的都启动了,发现还是连不上。就在遥控器上退出登录,从新连接。因为上一次连接的记录虽然还保持着,IP地址还是不变,但还是有可能连接不上,这时候退出登录重新登录一遍就好了。如果重启了后端服务,最好在遥控器也执行退出登录后重新登录。这样可以避免不必要的错误发生。如果登录成功了,连接那里还是显示未连接,就先关闭遥控器,然后再重新打开遥控器,注销。后重新登录即可。
1、大疆上云API基于源码部署
大疆上云API基于源码部署,看我写的这篇文章大疆上云API基于源码部署-CSDN博客,因为本文章设计到修改代码,所以需要有提到的文章大疆上云API基于源码部署-CSDN博客相关内容,这篇文章只是部署起来了,至于使用其直播功能还需要额外的配置。
2、大疆上云API连接遥控器和无人机
要想实现直播功能,肯定要连上无人机和遥控器了,如何连接看我写的这篇文章大疆上云API连接遥控器和无人机-CSDN博客,文章中用到播放流的VLC软件,也可以到这篇文章中提到的百度网盘地址下载。
3、搭建流媒体服务器
关于大疆上云API的直播功能,可以先看一下官网这里的视频演示,上云API (dji.com)
搭建流媒体服务器,搭建本地流媒体服务器,可以看我写的这篇文章Windows搭建流媒体服务并使用ffmpeg推流播放rtsp和rtmp流_windows ffmpeg 推流-CSDN博客,这里如果是rtmp直播流直播才需要搭建流媒体服务器,如果是rtsp直播流播放,不需要搭建流媒体服务器,直接在代码中设置用户和密码端口号,就可以了。这个除了本地搭建。还可以使用斗鱼、哔哩哔哩、快手或者抖音等直播使用到的直播地址配置,具体看遥控器界面,或者到短视频平台如抖音等搜索相关的内容。都有教程。下面两张截图是遥控器中可以找到。这篇文章主要讲的是大疆上云API结合本地流媒体服务器和播放器进行直播功能对接。
4、rtsp流直播
在大疆无人机中,使用rtsp流播放,这个不需要搭建流媒体服务器,因为官方给的代码中rtsp直播流的代码中写的端口号是8554,所以本地电脑需要保证不能有端口号冲突的情况存在。
首先修改前端代码
然后修改后端代码
修改好之后重新运行代码开启rtsp直播功能
这里有两种方式,一种是通过遥控器开启直播。另外一种是通过后台管理界面开启直播。
方法一:通过遥控器进行直播
遥控器下拉,对应的网络,长按,然后找到对应的遥控器ip,因为后面的直播需要用到它。
然后返回
先了下图所示的说明正在开启直播
这里我们需要吧对应的直播地址记住了,rtsp直播流的地址就是rtsp://root:root@遥控器ip:8554/streaming/live/1。如我这里为rtsp://root:root@192.168.3.227:8554/streaming/live/1,如果这里使用VLC播放器播放对应的rtsp流。
可以发现rtsp直播成功了
我们一直点击返回,返回到主界面,然后点击进入飞行界面按钮。
进入飞行界面之后,我们就可以发现有个箭头所指的方向中有个小红点和暂停直播文字,说明正在直播中,点击暂停直播就可以停止直播了。
方法二:通过后台管理界面开启直播
打开后台管理界面
点击play的时候,遥控器还会报已开启直播,点击stop的时候是停止直播。这里注意了,如果选rtsp的时候,下面中的第三个白色的框选项那里没有选项,就到遥控器中注销登录,然后重新登录进入就可以了。
使用VLC直播,可以发现rtsp直播成功了。
到遥控器主界面,然后点击进入飞行界面按钮。
进入飞行界面之后,我们就可以发现有个箭头所指的方向中有个小红点和暂停直播文字,说明正在直播中,点击暂停直播就可以停止直播了
5、rtmp流直播
这个rtmp流直播需要用到流媒体服务器了,我们需要搭建一个rtmp的流媒体服务地址,至于流媒体服务器怎么搭建,看标题3、搭建流媒体服务器。下面步骤需要在搭建好rtmp流媒体服务器的情况下进行
首先修改前端代码
然后修改后端代码
修改好之后重新运行代码开启rtmp直播功能
使用遥控开启直播功能,如何开启,看前面提到的rtsp的直播的过程,无非就是将直播方式从rtsp转换成rtmp而已。
出现下图所示的界面说明正在直播中,我们就可以直接把给出的地址复制到VLC中进行播放了。如我这里是rtmp://192.168.3.220:1935/live/1736419122070,后面是一串时间戳,不是固定的,他表示的是点击play那个按钮开始的时候的时间戳,如果想要固定,自己去前端代码那里改成固定的就行了。
一直返回首页,进入飞行界面,出现了暂停直播,就说明在直播中。
到遥控器主界面,然后点击进入飞行界面按钮。
进入飞行界面之后,我们就可以发现有个箭头所指的方向中有个小红点和暂停直播文字,说明正在直播中,点击暂停直播就可以停止直播了
点击暂停直播就可以停止直播了。
使用VLC进行直播播放,可以发现使用,rtmp直播流直播中
6、总结
这里有一点需要注意的是,经过我的测试,rtsp直播流比rtmp的直播流,延迟低很多。rtmp的直播流有时候延迟差不多达到半分钟,至少也要20秒左右。rtsp这个延迟就低很多,也就几秒左右。