本文主要是介绍EasyDarwin+flv.js实现视频直播【浏览器无插件播放rtsp流】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
参考:https://blog.csdn.net/weixin_42536639/article/details/102870788
实现摄像头的直播功能其实有许多方案,像是安装vlc插件、rtsp转rtmp然后使用videojs通过flash播放rtmp,以及hls .m3u8等方式
然而现今的浏览器对于vlc插件几乎都不再支持了,flash在2020年也将被chrome停止支持,而.m3u8的方案用来做直播的话似乎延迟很高。最终决定使用B站开源的flv.js。
推流工具使用的是FFmpeg
流媒体服务使用EasyDarwin 【支持录播、直播rtsp流,还有api】
播放客户端使用B站(bilibili)开源的flvjs作为解决方案,其原理是后端用ffmpeg将rtsp视频流转换为flv,然后通过websocket传输flv视频流,然后前端通过websocket获取到视频流后,使用flvjs对视频流再一次处理并进行播放,这是一套无插件无flash免费的视频直播解决方案。
本文使用Windows环境
步骤:
1、搭建FFmpeg
①模拟本地笔记本摄像头推流到服务端
②获取本地摄像头名称
ffmpeg -list_devices true -f dshow -i dummy
③使用FFMpeg推流至EasyDarwin【EasyDarwin搭建图在第二条】
ffmpeg -f dshow -i video="Integrated Webcam" -vcodec libx264 -acodec libvo_aacenc -b 1080k -r 25 -preset:v ultrafast -tune:v zerolatency -f rtsp rtsp://localhost/0206test
2、搭建EasyDarwin,根据https://github.com/EasyDarwin/EasyDarwin,详细的不说了,
这篇关于EasyDarwin+flv.js实现视频直播【浏览器无插件播放rtsp流】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!