一种基于外网公众号实现直播对讲的系统及方法与流程

文档序号:26057526发布日期:2021-07-27 15:36阅读:168来源:国知局
一种基于外网公众号实现直播对讲的系统及方法与流程

本发明涉及通信技术领域,具体而言,涉及一种基于外网公众号实现直播对讲的系统及方法。



背景技术:

随着社会进步,通信机房数量、设备数量日益增多,精细化运营的要求也随之提高,直播对讲作为一种行之有效的监管方式,在整个过程中也起着越来越重要的作用。

市面上设备、系统只能支撑单内网或单外网访问,且无法通过公众号等途径实现外网访问内网设备并对讲互动,本方法依托内外双网卡设备、流媒体转换协议等技术手段,将处于外网的设备与机房内网设备互联,从而实现公众号内机房直播对讲功能。



技术实现要素:

本发明的目的在于提供一种基于外网公众号实现直播对讲的方法,其能够通过内外双网卡设备、流媒体转换协议等技术手段,将处于外网的设备与机房内网设备互联,从而实现公众号内机房直播对讲功能。

本发明的实施例是这样实现的:

第一方面,本申请实施例提供一种基于外网公众号实现直播对讲的方法,包括以下步骤:

移动终端发出直播请求至云服务器;

云服务器接收直播请求,并将直播请求通过frpc内外网映射和nginx转发至区域中心;

区域中心通过直播请求匹配对应的机房,并将直播请求转发至机房;

机房接收直播请求,并采集机房现场的媒体流回传至区域中心;

区域中心接收媒体流并且对媒体流进行转码;

云服务器接收转码后的媒体流,并将转码后的媒体流传输至移动终端;

移动终端根据转码后的媒体流与机房进行语音交互。

在本发明的一些实施例中,上述媒体流包括音频数据和视频数据。

在本发明的一些实施例中,上述移动终端根据转码后的媒体流与机房进行语音交互的端口包括:ios端和非ios端。

在本发明的一些实施例中,上述移动终端通过ios端与机房进行语音交互包括以下步骤:

移动终端通过wechatjssdk形成语音包,并上传至公众号服务器,同时通知工作号服务器上传成功;

公众号服务器将语音包上传并作出反馈结果,通过云服务器采用frpc内外网映射和nginx转发至区域中心;

区域中心通过反馈结果从公众号服务器下载对应的语音文件,并且区域中心通过ffmpeg对语音文件进行解码生成音频流;

区域中心通过websocket传输至对应的机房。

在本发明的一些实施例中,上述移动终端通过非ios端与机房进行语音交互包括以下步骤:

移动终端通过浏览器和移动设备录取语音包,并通过云服务器采用frpc内外网映射和nginx转发至区域中心;

区域中心的语音包通过ffmpeg对语音包进行解码生成音频流;

区域中心通过websocket传输至对应的机房。

第二方面,本申请实施例提供一种基于外网公众号实现直播对讲的系统,包括移动终端、云服务器、区域中心和机房:

移动终端:用于发起直播和对讲服务;

云服务器:用于接收移动终端的直播请求,并将直播请求通过frpc内外网映射和nginx转发至区域中心,并将区域中心处理后的媒体流回传至发起请求的移动终端;

区域中心:用于接收云服务器的直播请求匹配对应的机房,并且将语音包通过ffmpeg对语音包进行解码生成音频流;

机房:用于采集机房现场的媒体流以及播放区域中心发送的语音包。

在本发明的一些实施例中,上述移动终端与机房进行语音包交互的端口包括:ios端和非ios端。

在本发明的一些实施例中,上述ios端还包括公众号服务器,公众号服务器将语音包上传并作出反馈结果,并将反馈结果传输至移动终端。

在本发明的一些实施例中,上述区域中心包括媒体服务器和通讯服务器:

媒体服务器:用于对发出直播和对讲请求后生成的媒体流进行转解码;

通讯服务器:用于接收及发出语音包。

在本发明的一些实施例中,上述机房包括摄像探头模块和语音模块。

相对于现有技术,本发明的实施例至少具有如下优点或有益效果:

一种基于外网公众号实现直播对讲的方法,包括以下步骤:

移动终端发出直播请求至云服务器;

云服务器接收直播请求,并将直播请求通过frpc内外网映射和nginx转发至区域中心;

区域中心通过直播请求匹配对应的机房,并将直播请求转发至机房;

机房接收直播请求,并采集机房现场的媒体流回传至区域中心;

区域中心接收媒体流并且对媒体流进行转码;

云服务器接收转码后的媒体流,并将转码后的媒体流传输至移动终端;

移动终端根据转码后的媒体流与机房进行语音交互。

本实施例中,本方法打通了视频监控协议栈与直播协议栈,对rtsp/rtmp支持都很完善。本方法全面支持h265/h264/aac/g711/opus。本方法通过内外双网卡设备、流媒体转换协议等技术手段,将处于外网的设备与机房内网设备互联,从而实现公众号内机房直播对讲功能。

一种基于外网公众号实现直播对讲的系统,包括移动终端、云服务器、区域中心和机房:

移动终端:用于发送直播请求和发送语音包;

云服务器:用于接收移动终端的直播请求,并将直播请求通过frpc内外网映射和nginx转发至区域中心;

区域中心:用于接收云服务器的直播请求匹配对应的机房,并且将语音包通过ffmpeg对语音包进行解码生成音频流;

机房:用于采集机房现场的媒体流。

本实施例中,观看人员通过移动终端发送直播请求和发送语音包至云服务器;云服务器接收移动终端的直播请求,并将直播请求通过frpc内外网映射和nginx转发至区域中心;区域中心接收云服务器的直播请求匹配对应的机房,并且将语音包通过ffmpeg对语音包进行解码生成音频流;机房采集机房现场的媒体流反馈至公众号;另一方面,非ios移动终端可以通过上述过程与直播人员进行对讲,通过区域中心双网卡设备、流媒体转换协议等技术手段,将处于外网的设备与机房内网设备互联,从而实现公众号内机房直播对讲功能。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本发明实施例一种基于外网公众号实现直播对讲的方法示意图;

图2为本发明实施例一种基于外网公众号实现直播对讲的系统示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。

下面结合图1-图2所示,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的各个实施例及实施例中的各个特征可以相互组合。

实施例1

本申请实施例提供的一种基于外网公众号实现直播对讲的方法,包括以下步骤:

移动终端发出直播请求至云服务器;

云服务器接收直播请求,并将直播请求通过frpc内外网映射和nginx转发至区域中心;

区域中心通过直播请求匹配对应的机房,并将直播请求转发至机房;

机房接收直播请求,并采集机房现场的媒体流回传至区域中心;

区域中心接收媒体流并且对媒体流进行转码;

云服务器接收转码后的媒体流,并将转码后的媒体流传输至移动终端;移动终端根据转码后的媒体流与机房进行语音交互。

本实施例中,针对目前市面上设备、系统只能支撑单内网或单外网访问,且无法通过公众号等途径实现外网访问内网设备并对讲互动的问题,本方法中,视频的直播方式:移动终端(公众号)发出直播请求至云服务器;云服务器接收直播请求,并将直播请求通过frpc内外网映射和nginx转发至区域中心;区域中心通过直播请求匹配对应的机房,并将直播请求转发至机房并调起直播服务;机房接收直播请求,并采集机房现场的媒体流(音频数据和视频数据)回传至区域中心;区域中心接收媒体流并且对媒体流进行转码,直播开始观看人员可以通过微信公众号观看直播;另一方面,直播开始后观看人员可以与直播人员进行对讲交流,移动终端根据转码后的媒体流与机房进行语音交互,具体步骤(ios端和非ios端):移动终端通过wechatjssdk形成语音包,并上传至微信服务器,同时通知公众号服务器上传成功;公众号服务器将服务器的语音包文件上传作出反馈结果,通过云服务器采用frpc内外网映射和nginx转发至区域中心;区域中心通过反馈结果下载对应的语音文件,并且区域中心通过ffmpeg对语音文件进行解码生成音频流;区域中心通过websocket传输至对应的机房,机房现场声音会通过视频直播流一起回传至公众号端(移动终端)。另一方面:移动终端通过非ios端与机房进行语音交互包括以下步骤:移动终端通过浏览器和移动设备录取语音包,并通过云服务器采用frpc内外网映射和nginx转发至区域中心;区域中心的语音包通过ffmpeg对语音包进行解码生成音频流;区域中心通过websocket传输至对应的机房,机房现场声音会通过视频直播流一起回传至公众号端(移动终端)。直播语音对讲服务基于c++11开发,(rtsp/rtmp/hls/http-flv/websocket-flv/gb28181/http-ts/websocket-ts/http-fmp4/websocket-fmp4/mp4),支持协议互转;本方法中使用多路复用/多线程/异步网络io模式开发,并发性能优越,支持海量客户端连接;本方法支持linux、macos、ios、android、windows全平台。本方法支持画面秒开、极低延时(500毫秒内,最低可达100毫秒)。本方法打通了视频监控协议栈与直播协议栈,对rtsp/rtmp支持都很完善。本方法全面支持h265/h264/aac/g711/opus。本方法通过内外双网卡设备、流媒体转换协议等技术手段,将处于外网的设备与机房内网设备互联,从而实现公众号内机房直播对讲功能。

在本发明的一些实施例中,媒体流包括音频数据和视频数据。

本实施例中,直播过程中可以对直播人员的音频数据和视频数据进行传输。

在本发明的一些实施例中,移动终端根据转码后的媒体流与机房进行语音交互的端口包括:ios端和非ios端。

本实施例中,移动终端包括ios端和非ios端,实现直播和对讲可以通过ios移动终端和非ios移动终端完成。

在本发明的一些实施例中,移动终端通过ios端与机房进行语音交互包括以下步骤:

移动终端通过wechatjssdk形成语音包,并上传至公众号服务器,同时通知工作号服务器上传成功;

公众号服务器将语音包上传并作出反馈结果,通过云服务器采用frpc内外网映射和nginx转发至区域中心;

区域中心通过反馈结果从公众号服务器下载对应的语音文件,并且区域中心通过ffmpeg对语音文件进行解码生成音频流;

区域中心通过websocket传输至对应的机房。

本实施例中,ios移动终端的观看人员可以通过上述步骤与直播人员进行对讲。

在本发明的一些实施例中,移动终端通过非ios端与机房进行语音交互包括以下步骤:

移动终端通过浏览器和移动设备录取语音包,并通过云服务器采用frpc内外网映射和nginx转发至区域中心;

区域中心的语音包通过ffmpeg对语音包进行解码生成音频流;

区域中心通过websocket传输至对应的机房。

实施例2

一种基于外网公众号实现直播对讲的系统,包括移动终端、云服务器、区域中心和机房:

移动终端:用于发起直播和对讲服务;

云服务器:用于接收移动终端的直播请求,并将直播请求通过frpc内外网映射和nginx转发至区域中心,并将区域中心处理后的媒体流回传至发起请求的移动终端;

区域中心:用于接收云服务器的直播请求匹配对应的机房,并且将语音包通过ffmpeg对语音包进行解码生成音频流;

机房:用于采集机房现场的媒体流以及播放区域中心发送的语音包。

本实施例中,观看人员通过移动终端发送直播请求和发送语音包至云服务器;云服务器接收移动终端的直播请求,并将直播请求通过frpc内外网映射和nginx转发至区域中心;区域中心接收云服务器的直播请求匹配对应的机房,并且将语音包通过ffmpeg对语音包进行解码生成音频流;机房采集机房现场的媒体流反馈至公众号;另一方面,非ios移动终端可以通过上述过程与直播人员进行对讲,通过区域中心双网卡设备、流媒体转换协议等技术手段,将处于外网的设备与机房内网设备互联,从而实现公众号内机房直播对讲功能。

在本发明的一些实施例中,移动终端与机房进行语音包交互的端口包括:ios端和非ios端。

本实施例中,观看人员可以通过ios端和非ios端观看直播,并且还可以与直播人员进行对讲。

在本发明的一些实施例中,ios端还包括公众号服务器,公众号服务器将语音包作出反馈结果,并将反馈结果传输至移动终端。

本实施例中,ios端的观看人员需要通过公众号服务器将语音包上传并作出反馈结果,并将反馈结果传输至移动终端才能与直播人员进行对讲。

在本发明的一些实施例中,区域中心包括媒体服务器和通讯服务器:

媒体服务器:用于对发出直播和对讲请求后生成的媒体流进行转解码;

通讯服务器:用于接收及发出语音包。

本实施例中,媒体服务器可以对直播后的音频数据和视频数据进行解码,通讯服务器可以观看人员与直播人员的对讲语音包进行解码。

在本发明的一些实施例中,机房包括摄像探头模块和语音模块。

本实施例中,摄像探头模块和语音模块可以支持直播人员正常直播和对讲功能。

综上所述,本申请实施例提供的一种基于外网公众号实现直播对讲的方法,包括以下步骤:

移动终端发出直播请求至云服务器;

云服务器接收直播请求,并将直播请求通过frpc内外网映射和nginx转发至区域中心;

区域中心通过直播请求匹配对应的机房,并将直播请求转发至机房;

机房接收直播请求,并采集机房现场的媒体流回传至区域中心;

区域中心接收媒体流并且对媒体流进行转码;

云服务器接收转码后的媒体流,并将转码后的媒体流传输至移动终端;

移动终端根据转码后的媒体流与机房进行语音交互。

本实施例中,本方法打通了视频监控协议栈与直播协议栈,对rtsp/rtmp支持都很完善。本方法全面支持h265/h264/aac/g711/opus。本方法通过内外双网卡设备、流媒体转换协议等技术手段,将处于外网的设备与机房内网设备互联,从而实现公众号内机房直播对讲功能。

一种基于外网公众号实现直播对讲的系统,包括移动终端、云服务器、区域中心和机房:

移动终端:用于发送直播请求和发送语音包;

云服务器:用于接收移动终端的直播请求,并将直播请求通过frpc内外网映射和nginx转发至区域中心;

区域中心:用于接收云服务器的直播请求匹配对应的机房,并且将语音包通过ffmpeg对语音包进行解码生成音频流;

机房:用于采集机房现场的媒体流。

本实施例中,观看人员通过移动终端发送直播请求和发送语音包至云服务器;云服务器接收移动终端的直播请求,并将直播请求通过frpc内外网映射和nginx转发至区域中心;区域中心接收云服务器的直播请求匹配对应的机房,并且将语音包通过ffmpeg对语音包进行解码生成音频流;机房采集机房现场的媒体流反馈至公众号;另一方面,非ios移动终端可以通过上述过程与直播人员进行对讲,通过区域中心双网卡设备、流媒体转换协议等技术手段,将处于外网的设备与机房内网设备互联,从而实现公众号内机房直播对讲功能。

以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其它的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1