一种基于WebSocket的视频转发方法与流程

文档序号:37279976发布日期:2024-03-12 21:18阅读:12来源:国知局
一种基于WebSocket的视频转发方法与流程

本发明属于视频处理,具体涉及一种基于websocket的视频转发方法。


背景技术:

1、在车间实现无人值守的自动化生产,需要一定数量的摄像头安装到生产车间监控。而随着网络科技的快速发展,指挥系统、监控系统等业务系统的架构正逐步从c/s架构向b/s架构转变或采用b/s架构设计,在浏览器网页里观看视频流的解决方法主要有两种:第一种是浏览器直接播放摄像机传输过来的视频流。第二种是通过视频转发服务将前端摄像头视频流转发给浏览器播放。

2、现有技术存在的缺点包括:

3、(1)浏览器需要安装flash或者安装自定义插件播放视频流,但是flash player已经停止更新,自定义插件可能导致浏览器不稳定。

4、(2)当摄像头所在车间的网络和浏览器所在办公区的网络采取隔离时,在办公区的浏览器不能直接访问到所有的前端摄像头视频流。

5、(3)市面上许多视频流转发服务,直接是将视频数据解包再封包的方式转发出去,如果前端摄像头是h265视频数据,转发后再封包的视频格式还是h265,浏览器接收后将不能直接解码。

6、(4)目前常用的流媒体传输协议有rtmp、hls和http-flv。rtmp是目前最常用的流媒体传输协议,但是在浏览器中只能通过flash使用,鉴于flash已经停止更新,所以在网页播放端基本不会以rtmp做拉流;hls是苹果公司提出的基于http的流媒体网络传输协议,其工作原理是切片式传输,延时较大,通常对于1080p视频不低于10秒的延迟;http-flv是把音视频数据封装成flv,然后通过http连接传输,对于网页播放端,本来还是需要flash才能播放,不过flv.js的出现又弥补了这个缺陷,但是存在视频延迟,视频卡顿等问题。


技术实现思路

1、本发明目的在于提供一种基于websocket的视频转发方法,解决现有技术中的不足,实现浏览器无插件实时播放监控视频流。

2、本发明的技术方案如下:一种基于websocket的视频转发方法,包括如下步骤:

3、步骤1:视频转发服务基于rtsp协议拉取前端摄像头监控的视频流,转发生成符合浏览器支持播放的视频数据格式mp4;

4、步骤2:视频转发服务自定传输协议,将视频流传输给浏览器进行播放显示。

5、所述的视频转发服务包括:http接口模块、rtsp拉流模块、demux功能、视频解码模块、视频编码模块、mux模块和自定传输协议。

6、所述的步骤1中视频转发服务对音视频数据流转化有两条路线。

7、所述的步骤1中的1条路线为demux模块分离出的视频格式是h265数据,发送给视频解码模块解码成yuv数据,再经视频编码模块编码成h264数据,编码输出的h264数据和音频aac数据,一起通过mux模块复合成mp4数据,最后通过自定传输协议传输给浏览器。

8、所述的步骤1中的1条路线为demux模块分离出的视频格式是h264数据,直接和音频aac数据,一起通过mux模块复合成mp4数据,最后也通过自定传输协议传输给浏览器。

9、所述的步骤2中所述的自定传输协议包含两部分,传输方式和传输数据包。

10、步骤2中所述的传输方式采用websocket协议,浏览器和视频转发服务只需要完成一次握手,两者之间直接创建持久性的连接,并进行双向数据传输。

11、步骤2中所述的传输数据包采用自定义数据格式,包括定长的协议头和长度可变的协议体。

12、步骤2中所述的协议头有version、cameraid、width、height、sequence number和len组成。

13、步骤2中所述的可变的协议体载体是mp4格式的音视频数据。

14、步骤2中所述的传输方式采用浏览器支持的websocket协议,传输数据包采用自定义的数据格式有16字节的定长协议头和长度可变的协议体组成。

15、本发明的有益效果在于:(1)基于目前成熟的websocket技术自定传输协议,达到实时传输视频低延迟的效果;(2)浏览器无需下载flash播放器或自定义插件播放视频;(3)不管网络是否隔离,不管前端摄像头视频源是h264还是h265,浏览器都能播放前端监控的视频流。



技术特征:

1.一种基于websocket的视频转发方法,其特征在于,包括如下步骤:

2.如权利要求1所述的一种基于websocket的视频转发方法,其特征在于:所述的视频转发服务包括:http接口模块、rtsp拉流模块、demux功能、视频解码模块、视频编码模块、mux模块和自定传输协议。

3.如权利要求1所述的一种基于websocket的视频转发方法,其特征在于:所述的步骤1中视频转发服务对音视频数据流转化有两条路线。

4.如权利要求3所述的一种基于websocket的视频转发方法,其特征在于:所述的步骤1中的1条路线为demux模块分离出的视频格式是h265数据,发送给视频解码模块解码成yuv数据,再经视频编码模块编码成h264数据,编码输出的h264数据和音频aac数据,一起通过mux模块复合成mp4数据,最后通过自定传输协议传输给浏览器。

5.如权利要求3所述的一种基于websocket的视频转发方法,其特征在于:所述的步骤1中的1条路线为demux模块分离出的视频格式是h264数据,直接和音频aac数据,一起通过mux模块复合成mp4数据,最后也通过自定传输协议传输给浏览器。

6.如权利要求1所述的一种基于websocket的视频转发方法,其特征在于:所述的步骤2中所述的自定传输协议包含两部分,传输方式和传输数据包。

7.如权利要求6所述的一种基于websocket的视频转发方法,其特征在于:步骤2中所述的传输方式采用websocket协议,浏览器和视频转发服务只需要完成一次握手,两者之间直接创建持久性的连接,并进行双向数据传输;步骤2中所述的传输数据包采用自定义数据格式,包括定长的协议头和长度可变的协议体。

8.如权利要求7所述的一种基于websocket的视频转发方法,其特征在于:步骤2中所述的协议头有version、cameraid、width、height、sequence number和len组成。

9.如权利要求7所述的一种基于websocket的视频转发方法,其特征在于:步骤2中所述的可变的协议体载体是mp4格式的音视频数据。

10.如权利要求7所述的一种基于websocket的视频转发方法,其特征在于:步骤2中所述的传输方式采用浏览器支持的websocket协议,传输数据包采用自定义的数据格式有16字节的定长协议头和长度可变的协议体组成。


技术总结
本发明属于视频处理技术领域,具体涉及一种基于WebSocket的视频转发方法。包括如下步骤:步骤1:视频转发服务基于RTSP协议拉取前端摄像头监控的视频流,转发生成符合浏览器支持播放的视频数据格式MP4;步骤2:视频转发服务自定传输协议,将视频流传输给浏览器进行播放显示。所述的视频转发服务包括:HTTP接口模块、RTSP拉流模块、DEMUX功能、视频解码模块、视频编码模块、MUX模块和自定传输协议。本发明的有益效果在于:(1)基于目前成熟的WebSocket技术自定传输协议,达到实时传输视频低延迟的效果;(2)浏览器无需下载Flash播放器或自定义插件播放视频;(3)不管网络是否隔离,不管前端摄像头视频源是H264还是H265,浏览器都能播放前端监控的视频流。

技术研发人员:张小刚,汤慧,曹微,朱永利,赵瑞瑞,吕万修,江龙,宁志勇
受保护的技术使用者:中核北方核燃料元件有限公司
技术研发日:
技术公布日:2024/3/11
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1