【技术实现步骤摘要】
基于SRS的多进程直播方法、装置、电子设备以及存储介质
[0001]本申请涉及通信
,特别涉及一种基于SRS的多进程直播方法、装置、电子设备及存储介质。
技术介绍
[0002]SRS(Simple RTMP Server)是一款非常优秀的开源流媒体服务器软件,可用于直播/录播/视频客服等多种场景,其定位是运营级的互联网直播服务器集群。
[0003]对于大多数的小企业的直播业务,为了节约成本,满足直播需求,基本采用一台服务器来执行,具体的,通过SRS线程来实现直播视频流处理。然而,SRS本身只支持单线程,不支持多线程,在执行多个直播推流请求时,只能单独执行一个直播推流请求,导致无法充分利用多核,浪费服务器资源,且效率低下。
技术实现思路
[0004]基于此,本申请提供一种基于SRS的多进程直播方法、装置、电子设备及存储介质,通过设置反代理监听端口,将多个推流请求分配至后端的多个SRS进程,实现多线程的模拟,改善了单个SRS进程执行单个推流请求导致的效率低的问题,充分利用服务器资源。
[0005]作为本申请实施例的第一方面,提供一种基于SRS的多进程直播方法,包括以下步骤:
[0006]获取通过预设的反代理监听端口接收的若干个直播推流请求以及对应的直播视频流数据;其中,所述直播推流请求包括直播推流地址;所述直播视频流数据与所述直播推流地址一一对应;所述反代理监听端口配置有若干个监听子端口,每个监听子端口均配置有一个SRS进程;
[0007]将若干个所述直播推流请求进行 ...
【技术保护点】
【技术特征摘要】
1.一种基于SRS的多进程直播方法,其特征在于,包括:获取通过预设的反代理监听端口接收的若干个直播推流请求以及对应的直播视频流数据;其中,所述直播推流请求包括直播推流地址;所述直播视频流数据与所述直播推流地址一一对应;所述反代理监听端口配置有若干个监听子端口,每个所述监听子端口均配置有一个SRS进程;将若干个所述直播推流请求进行划分,获得若干组直播推流请求;将每组直播推流请求分配至对应的一个所述SRS进程,以分别通过各个所述SRS进程并行获取各组所述直播推流请求相应的直播推流地址对应的直播视频流数据,并将各组所述直播视频流数据并行进行存储;其中,每组直播推流请求至少包括一个所述直播推流请求;获取通过所述反代理监听端口接收的直播视频流播放请求;根据所述直播视频流播放请求,获取对应存储的直播视频流数据,并将所述直播视频流数据发送至对应的直播视频流播放请求客户端。2.根据权利要求1所述的基于SRS的多进程直播方法,其特征在于,所述将若干个所述直播推流请求进行划分,获得若干组直播推流请求,包括步骤:获取各个所述SRS进程的负载信息,其中,所述负载信息包括所述SRS进程允许执行的直播推流请求数目;根据所述各个SRS进程允许执行的直播推流请求数目,将若干个所述直播推流请求进行划分,获得若干组直播推流请求。3.根据权利要求1或2所述的基于SRS的多进程直播方法,其特征在于,所述直播推流地址包括直播推流标识,各个直播推流标识均有唯一对应的直播视频流数据;所述将每组直播推流请求分配至对应的一个所述SRS进程,以分别通过各个所述SRS进程并行获取各组所述直播推流请求相应的直播推流地址对应的直播视频流数据,并将各组所述直播视频流数据进行存储,包括步骤:获取预设的虚拟内存目录的路径,通过各个所述SRS进程并行将各组所述直播视频流数据存储于所述虚拟内存目录中。4.根据权利要求3所述的基于SRS的多进程直播方法,其特征在于,所述虚拟内存目录中包括若干个与所述直播推流标识相应的子虚拟内存目录;所述获取预设的虚拟内存目录的路径,通过各个所述SRS进程并行将各组所述直播视频流数据存储于所述虚拟内存目录中,还包括步骤:获取各组所述直播推流请求相应的直播推流地址中的直播推流标识,根据所述直播推流标识,获得各组所述直播推流标识对应的直播视频流数据;根据所述直播推流标识,获取与所述直播推流标识相应的子虚拟内存目录的路径;通过各个所述SRS进程将各组所述直播推流标识对应的所述直播视频流数据存储于相应的子虚拟内存目录。5.根据权利要求4所述的基于SRS的多进程直播方法,其特征在于,所述通过各个所述SRS进程将各组所述直播推流标识对应的所述直播视频流数据存储于相应的子虚拟内存目录,包括步骤:通过配置各个SRS进程的分发方式,各个所述SRS进程将所述直播视频流数据按预设顺序生成若干个直播视频片段文件,根据需要录制直播视频的起始时间和结束时间对所述直
播视频片段文件进行编号,并储存...
【专利技术属性】
技术研发人员:姚传军,连亨凯,张常华,朱正辉,赵定金,
申请(专利权)人:广州市保伦电子有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。