CN114363665B - 多业务码流推送方法、系统、计算机设备和存储介质 - Google Patents
多业务码流推送方法、系统、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN114363665B CN114363665B CN202111543158.XA CN202111543158A CN114363665B CN 114363665 B CN114363665 B CN 114363665B CN 202111543158 A CN202111543158 A CN 202111543158A CN 114363665 B CN114363665 B CN 114363665B
- Authority
- CN
- China
- Prior art keywords
- service
- code stream
- pushing
- acquisition terminal
- video acquisition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 103
- 238000012545 processing Methods 0.000 claims abstract description 227
- 230000008569 process Effects 0.000 claims abstract description 39
- 238000001514 detection method Methods 0.000 claims abstract description 25
- 238000004590 computer program Methods 0.000 claims description 20
- 238000012790 confirmation Methods 0.000 claims description 20
- 230000004044 response Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 5
- 230000001960 triggered effect Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请涉及一种多业务码流推送方法、系统、计算机设备和存储介质。该方法包括:在视频采集终端待开始针对第一业务推送码流的情况下,业务处理服务器检测视频采集终端针对第二业务的第二码流推送状态;若第二码流推送状态表征已针对第二业务推送码流,业务处理服务器将第二业务对应的码流推送地址确定为第一业务对应的目标码流推送地址,并返回目标码流推送地址;在接收到目标码流推送地址后,视频采集终端进行码流推送检测处理;若检测到已针对第二业务推送码流,确认第一业务的第一码流推送状态为已启动状态,以触发业务处理服务器指示视频观看终端复用已针对第二业务推送的码流对第一业务进行处理。采用本方法能够降低计算机资源开销。
Description
技术领域
本申请涉及多媒体通信技术领域,特别是涉及一种多业务码流推送方法、系统、计算机设备和存储介质。
背景技术
随着教育信息化的发展,要求在教育过程中较全面地运用以计算机、多媒体、大数据、人工智能和网络通讯为基础的现代信息技术,促进教育改革,从而适应正在到来的信息化社会提出的新要求。
目前,基于现代信息技术,针对课堂教育已经实现了多种教学业务,比如,既能针对课堂进行课程直播业务,又能针对课堂进行巡课业务。但是,如果要实现多种教学业务,就需要针对每种教学业务分别建立一套独立的教学系统,比如,针对课程直播业务需要构建一套直播教学系统,再针对巡课业务另外建设一套独立的巡课教学系统,从而增加了计算机资源的开销。
发明内容
基于此,有必要针对上述技术问题,提供一种能够降低计算机资源开销的多业务码流推送方法、系统、计算机设备、存储介质和计算机程序产品。
第一方面,本申请提供了一种多业务码流推送方法。所述方法包括:
在教室中的视频采集终端待开始针对第一业务推送码流的情况下,业务处理服务器检测所述视频采集终端针对第二业务的第二码流推送状态;所述第二业务是教学系统中不同于所述第一业务的业务;
若所述第二码流推送状态表征所述视频采集终端已针对所述第二业务推送码流,业务处理服务器将所述第二业务对应的码流推送地址确定为所述第一业务对应的目标码流推送地址,并向所述视频采集终端返回目标码流推送地址;
在接收到所述目标码流推送地址后,所述视频采集终端进行码流推送检测处理;
若检测到已针对所述第二业务推送码流,在所述视频采集终端的本地确认所述第一业务的第一码流推送状态为已启动状态,以触发所述业务处理服务器指示视频观看终端复用已针对所述第二业务推送的码流对所述第一业务进行处理。
在其中一个实施例中,所述方法还包括:
若所述第二码流推送状态表征所述视频采集终端未针对所述第二业务推送码流,业务处理服务器则为所述视频采集终端分配并返回目标码流推送地址;
在所述视频采集终端进行码流推送检测处理之后,所述方法还包括:
若所述视频采集终端检测到未针对所述第二业务推送码流,所述视频采集终端启动音视频编码器,进行音视频采集和编码得到码流,按照所述目标码流推送地址向流媒体服务器针对所述第一业务推送所采集的码流。
在其中一个实施例中,所述在接收到所述目标码流推送地址后,所述视频采集终端进行码流推送检测处理包括:
在接收到所述目标码流推送地址,并检测到未针对所述第二业务推送码流后,所述视频采集终端基于所述目标码流推送地址与所述流媒体服务器建立码流推送连接;
所述码流推送连接建立成功后,向所述业务处理服务器发送推流开始通知;
所述视频采集终端进行码流推送检测处理。
在其中一个实施例中,所述方法还包括:
在所述业务处理服务器确认不需要针对目标业务推送码流的情况下,向所述视频采集终端发送针对所述目标业务的推流停止通知;所述目标业务为第一业务和第二业务中的任意一个;
所述视频采集终端接收所述推流停止通知,更新所述目标业务的码流推送状态为停止状态,以触发所述业务处理服务器指示视频观看终端停止使用所述视频采集终端推送的码流;
若所述视频采集终端的各个业务的码流推送状态均为停止状态,则停止码流推送,关闭音视频编码器。
在其中一个实施例中,所述目标业务支持多个所述视频观看终端同时展示所述视频采集终端所采集的视频;在所述业务处理服务器确认不需要针对目标业务推送码流的情况下,向所述视频采集终端发送针对所述目标业务的推流停止通知之前,所述方法还包括:
在所述业务处理服务器接收到所述视频观看终端发送的针对所述视频采集终端发起的观看请求的情况下,所述业务处理服务器检测所述视频采集终端针对目标业务的码流推送状态;
若所述目标业务的码流推送状态为已启动状态,则更新针对所述目标业务的观看总数,并指示所述视频观看终端基于当前正在推送的码流展示符合所述目标业务的视频;
在所述业务处理服务器接收到所述视频观看终端发送的针对所述目标业务的停止观看请求的情况下,更新针对所述目标业务的所述观看总数;
若所述观看总数表征全部所述视频观看终端已停止展示所述视频采集终端所采集的视频,则确认不需要针对目标业务推送码流。
在其中一个实施例中,所述方法还包括:
所述业务处理服务器向所述视频采集发送推流心跳;
所述视频采集终端收到所述推流心跳,返回心跳确认报文给所述业务服务器;
若所述视频采集终端在预设时间内未收到所述推流心跳,则停止推送码流,发送推流停止通知给所述业务处理服务器,并更新各业务的码流推送状态为停止状态。
在其中一个实施例中,所述若检测到已针对所述第二业务推送码流,在所述视频采集终端的本地确认所述第一业务的第一码流推送状态为已启动状态,以触发所述业务处理服务器指示视频观看终端复用已针对所述第二业务推送的码流对所述第一业务进行处理包括:
若检测到已针对所述第二业务使用所述目标码流推送地址推送码流,在所述视频采集终端的本地确认所述第一业务的第一码流推送状态为已启动状态,并保持按照所述目标码流推送地址向所述流媒体服务器针对所述第二业务推送所采集的码流;
所述业务处理服务器通过调用所述流媒体服务器提供的用于查看码流状态的接口;
若基于所述接口确认所述目标码流推送地址所对应的码流为活跃状态,所述业务处理服务器则判定所述视频采集终端已开始针对所述第一业务推送码流,以及指示视频观看终端对所述第一业务进行处理,并在处理过程中复用已针对所述第二业务推送的码流。
第二方面,本申请还提供了一种多业务码流推送系统。所述系统包括视频采集终端和业务处理服务器:
所述业务处理服务器,用于在教室中的视频采集终端待开始针对第一业务推送码流的情况下,业务处理服务器检测所述视频采集终端针对第二业务的第二码流推送状态;所述第二业务是教学系统中不同于所述第一业务的业务;若所述第二码流推送状态表征所述视频采集终端已针对所述第二业务推送码流,业务处理服务器将所述第二业务对应的码流推送地址确定为所述第一业务对应的目标码流推送地址,并向所述视频采集终端返回目标码流推送地址;
所述视频采集终端,用于在接收到所述目标码流推送地址后,所述视频采集终端进行码流推送检测处理;若检测到已针对所述第二业务推送码流,在所述视频采集终端的本地确认所述第一业务的第一码流推送状态为已启动状态,以触发所述业务处理服务器指示视频观看终端复用已针对所述第二业务推送的码流对所述第一业务进行处理。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行上述多业务码流推送方法的步骤。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行上述多业务码流推送方法的步骤。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行上述多业务码流推送方法的步骤。
上述多业务码流推送方法、系统、计算机设备、存储介质和计算机程序产品,通过在教室中的视频采集终端待开始针对第一业务推送码流的情况下,业务处理服务器检测所述视频采集终端针对第二业务的第二码流推送状态。其中,所述第二业务是教学系统中不同于所述第一业务的业务。若所述第二码流推送状态表征所述视频采集终端已针对所述第二业务推送码流,业务处理服务器将所述第二业务对应的码流推送地址确定为所述第一业务对应的目标码流推送地址,以使得第一业务和第二业务的码流推送地址为同一个地址。业务处理服务器向所述视频采集终端返回目标码流推送地址。所述视频采集终端在接收到所述目标码流推送地址后,进行码流推送检测处理。若检测到已针对所述第二业务推送码流,则在所述视频采集终端的本地确认所述第一业务的第一码流推送状态为已启动状态,以触发所述业务处理服务器指示视频观看终端复用已针对所述第二业务推送的码流对所述第一业务进行处理。这样,所述视频采集终端针对第一业务和第二业务只发送一路码流,并由业务处理服务器来控制对码流的复用,从而实现了在已满足第二业务需求的基础上,执行本方法就能满足第一业务的需求,不需要针对第一业务重新建立一套新的系统,进而降低了计算机资源的开销。
附图说明
图1为一个实施例中多业务码流推送方法的应用环境图;
图2为一个实施例中多业务码流推送方法的流程示意图;
图3为一个实施例中多业务码流推送方法的流程示意图;
图4为一个实施例中多业务码流推送方法的流程示意图;
图5为一个实施例中多业务码流推送方法的流程示意图;
图6为一个实施例中多业务码流推送方法的流程示意图;
图7为一个实施例中多业务码流推送方法的流程示意图;
图8为一个实施例中多业务码流推送方法的流程示意图;
图9为一个实施例中多业务码流推送方法的流程示意图;
图10为一个实施例中多业务码流推送系统的结构框图;
图11为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的多业务码流推送方法,可以应用于如图1所示的应用环境中。其中,视频采集终端110通过网络与业务处理服务器120和流媒体服务器130进行通信,视频观看终端140通过网络与业务处理服务器120和流媒体服务器130进行通信,业务处理服务器120通过网络与流媒体服务器130进行通信。其中业务处理服务器120和流媒体服务器130可以用独立的服务器或者是多个服务器组成的服务器集群来实现。视频观看终端140可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。
在教室中的视频采集终端110待开始针对第一业务推送码流的情况下,业务处理服务器120检测视频采集终端110针对第二业务的第二码流推送状态;第二业务是教学系统中不同于第一业务的业务。若第二码流推送状态表征视频采集终端110已针对第二业务向流媒体服务器130推送码流,业务处理服务器120将第二业务对应的码流推送地址确定为第一业务对应的目标码流推送地址,并向视频采集终端110返回目标码流推送地址。在接收到目标码流推送地址后,视频采集终端110进行码流推送检测处理。若检测到已针对第二业务推送码流,在视频采集终端110的本地确认第一业务的第一码流推送状态为已启动状态,以触发业务处理服务器120指示视频观看终端140复用已针对第二业务推送的码流对第一业务进行处理。
在一个实施例中,如图2所示,提供了一种多业务码流推送方法,本实施例以该方法应用于包括业务处理服务器和视频采集终端的系统,并通过业务处理服务器和视频采集终端的交互实现。本实施例中,该方法包括以下步骤:
S202,在教室中的视频采集终端待开始针对第一业务推送码流的情况下,业务处理服务器检测视频采集终端针对第二业务的第二码流推送状态;第二业务是教学系统中不同于第一业务的业务。
其中,视频采集终端是教室的视频输入设备,该视频输入设备将获取到的视频信号转化成数字数据。业务处理服务器是对教学系统所涉及的业务进行处理的服务器。业务是教学系统所支持的跟多媒体相关的业务,比如直播、点播、录播和巡课等等。第二码流推送状态是指针对第二业务的码流推送状态。在一个实施例中,第一业务是直播,第二业务是巡课;或者第一业务是巡课,第二业务是直播。
在一个实施中,第二业务可以是多个业务的抽象代表,用于表征教学系统中不同于第一业务的其它所有业务。
具体地,在视频采集终端待开始针对第一业务推送码流的情况下,业务处理服务器判定出视频采集终端待开始针对第一业务推送码流,业务处理服务器检测视频采集终端针对第二业务的第二码流推送状态。
在一个实施例中,可以由视频采集终端根据预设的规则主动发起自身待开始针对第一业务推送码流的事件,也可以由业务处理服务器主动发起视频采集终端待开始针对第一业务推送码流的事件。
在一个实施例中,当第一业务是直播时,视频采集终端启动后,获取课程表,根据课程表信息判定上课时间到,从而发起自身待开始针对第一业务推送码流的事件,并向业务处理服务器请求推流地址。具体地,如图3所示,视频采集终端在发起直播上课后,向业务处理服务器发送请求推流地址报文,业务处理服务器收到请求推流地址报文,从而判定出视频采集终端待开始针对第一业务推送码流。
在一个实施例中,当第一业务是直播时,教学系统的平台通过课程控制页面,点击“开始直播”按钮,触发业务处理服务器确认视频采集终端待开始针对直播推送码流。具体地,如图4所示,业务处理服务器项视频采集终端发送通知开始推流报文,视频采集终端发送回应开始推流报文,业务处理服务器收到回应开始推流报文,再次向视频采集终端发送确认开始推流报文。可以理解,通过三次握手,保证了视频采集终端和业务处理服务器器对待开始针对直播推送码流这一事件的同步处理。在视频采集终端收到确认报文后,向业务处理服务器发送请求推流地址报文等等,后续的流程与图3的部分流程相同。
在一个实施例中,当第一业务是巡课时,可以由教学系统的平台的巡课模块,对指定的视频采集终端/教室/课程进行巡课,触发业务处理服务器平台将浏览器的请求转换为对应的视频采集终端的发起巡课的操作、即主动发起视频采集终端待开始针对第一业务推送码流的事件。具体地,如图5所示,业务处理服务器确认视频采集终端待开始针对巡课推送码流后,向视频采集终端发送通知推流地址报文,视频采集终端收到通知推流地址报文,从而判定出自身待开始针对第一业务推送码流,并进一步地基于推流地址与流媒体服务器建立连接,推送码流等等。
S204,若第二码流推送状态表征视频采集终端已针对第二业务推送码流,业务处理服务器将第二业务对应的码流推送地址确定为第一业务对应的目标码流推送地址,并向视频采集终端返回目标码流推送地址。
其中,码流推送地址是用于与流媒体服务器进行连接并推送码流的地址。流媒体服务器是以流方式在网络中传送和接收视频采集终端所采集的视频的服务器。
具体地,业务处理服务器对第二码流推送状态进行判断。若第二码流推送状态表征视频采集终端已针对第二业务推送码流,业务处理服务器则将第二业务对应的码流推送地址确定为第一业务对应的目标码流推送地址,即第一业务和第二业务所使用的码流推送地址相同。业务处理服务器向视频采集终端返回目标码流推送地址。
在一个实施例中,若第二码流推送状态表征视频采集终端未针对第二业务推送码流,目标码流推送地址是新分配的码流推送地址。
S206,在接收到目标码流推送地址后,视频采集终端进行码流推送检测处理;若检测到已针对第二业务推送码流,在视频采集终端的本地确认第一业务的第一码流推送状态为已启动状态,以触发业务处理服务器指示视频观看终端复用已针对第二业务推送的码流对第一业务进行处理。
其中,视频观看终端是基于教学系统的平台对视频采集终端所采集的视频进行观看的终端。
具体地,业务处理服务器向视频采集终端发送目标码流推送地址。视频采集终端在接收到目标码流推送地址后,进行码流推送检测处理。若检测到已针对第二业务推送码流,在视频采集终端的本地确认第一业务的第一码流推送状态为已启动状态。在第一业务码流推送状态更新为已启动状态之后,触发业务处理服务器指示视频观看终端复用已针对第二业务推送的码流对第一业务进行处理。
在一个实施例中,若检测到已针对所述第二业务推送码流,在所述视频采集终端的本地确认所述第一业务的第一码流推送状态为已启动状态之后,通知业务处理服务器已启动第一业务的码流推送。所述业务处理服务器被通知后,指示视频观看终端复用已针对所述第二业务推送的码流对所述第一业务进行处理。
在一个实施例中,视频采集终端在接收到目标码流推送地址后,与流媒体服务器建立码流推送连接,并在建立成功后,向业务处理服务器发送推流开始通知。
在一个实施例中,在第一业务码流推送状态更新为已启动状态之后,视频采集终端保持按照目标码流推送地址向流媒体服务器针对第二业务推送所采集的码流。业务处理服务器与流媒体服务器进行通信并确认与目标码流推送地址相对应的码流处于活跃状态,从而指示视频观看终端复用已针对第二业务推送的码流对第一业务进行处理。
在一个实施例中,若视频采集终端检测到未针对第二业务推送码流,视频采集终端按照目标码流推送地址向流媒体服务器推送所采集的码流。业务处理服务器与流媒体服务器进行通信并确认与目标码流推送地址相对应的码流处于活跃状态,从而指示视频观看终端使用已针对第一业务推送的码流对第一业务进行处理。
在一个实施例中,视频采集终端接收用于指定停止推送码流的推流停止通知后,更新目标业务的码流推送状态为停止状态,以触发业务处理服务器指示视频观看终端停止使用对目标业务进行处理所需要的码流。
在一个实施例中,当目标业务支持多个视频观看终端同时展示视频采集终端所采集的视频时,业务处理服务器在判定出目标业务的观看总数表征视频观看终端全部停止展示视频采集终端所采集的视频的情况下,确认视频采集终端不再需要针对目标业务推送码流。业务处理服务器向视频采集终端发送用于指定停止推送码流的推流停止通知。
在一个实施例中,业务处理服务器与视频采集终端建立心跳机制。在心跳失联的情况下,视频采集终端停止推送码流,并向业务处理服务器进行确认。
上述多业务码流推送方法,通过在教室中的视频采集终端待开始针对第一业务推送码流的情况下,业务处理服务器检测视频采集终端针对第二业务的第二码流推送状态。其中,第二业务是教学系统中不同于第一业务的业务。若第二码流推送状态表征视频采集终端已针对第二业务推送码流,业务处理服务器将第二业务对应的码流推送地址确定为第一业务对应的目标码流推送地址,以使得第一业务和第二业务的码流推送地址为同一个地址。业务处理服务器向视频采集终端返回目标码流推送地址。视频采集终端在接收到目标码流推送地址后,进行码流推送检测处理。若检测到已针对第二业务推送码流,则在视频采集终端的本地确认第一业务的第一码流推送状态为已启动状态,以触发业务处理服务器指示视频观看终端复用已针对第二业务推送的码流对第一业务进行处理。这样,视频采集终端针对第一业务和第二业务只发送一路码流,并由业务处理服务器来控制对码流的复用,从而实现了在已满足第二业务需求的基础上,执行本方法就能满足第一业务的需求,不需要针对第一业务重新建立一套新的系统,进而降低了计算机资源的开销。
在一个实施例中,方法还包括若第二码流推送状态表征视频采集终端未针对第二业务推送码流,业务处理服务器则为视频采集终端分配并返回目标码流推送地址;在视频采集终端进行码流推送检测处理之后,方法还包括:若视频采集终端检测到未针对第二业务推送码流,视频采集终端启动音视频编码器,进行音视频采集和编码得到码流,按照目标码流推送地址向流媒体服务器针对第一业务推送所采集的码流。
具体地,业务处理服务器对视频采集终端的第二码流推送状态进行判断。若第二码流推送状态表征视频采集终端未针对第二业务推送码流,业务处理服务器则为视频采集终端分配并返回目标码流推送地址。视频采集终端收到目标码流推送地址,并进行码流推送检测,在检测出未针对第二业务推送码流进行处理的情况下,视频采集终端启动音视频编码器,进行音视频采集和编码得到码流,按照目标码流推送地址向流媒体服务器针对第一业务推送所采集的码流。
比如,当第一业务是直播时,第二业务是巡课时,如图3所示,视频采集终端在检测出未针对巡课推送码流进行处理的情况下,即当前不存在巡课的情况下,开启音视频编码器,进行音视频和编码得到码流,按照与流媒体服务器之间的通信协议针对第一业务推送所采集的码流。
比如,当第一业务是巡课时,第二业务是直播时,如图5所示,视频采集终端在检测出未针对直播推送码流进行处理的情况下,即当前不存在直播的情况下,开启音视频编码器,进行音视频和编码得到码流,按照与流媒体服务器之间的通信协议针对第一业务推送所采集的码流。
在本实施例中,在视频采集终端未针对第二业务推送码流的情况下,业务处理服务器分配并返回目标码流推送地址。视频采集终端收到该目标码流推送地址,启动音视频编码器,从而得到码流并推送到流媒体服务器。在视频采集终端不支持或者未开启第二业务的情况下,能实现对第一业务的码流的推送,从而保证了多业务码流推送系统的兼容性。
在一个实施例中,在接收到目标码流推送地址后,视频采集终端进行码流推送检测处理包括:在接收到目标码流推送地址,并检测到未针对所述第二业务推送码流后,视频采集终端基于目标码流推送地址与流媒体服务器建立码流推送连接;码流推送连接建立成功后,向业务处理服务器发送推流开始通知;视频采集终端进行码流推送检测处理。
具体地,业务处理服务器向视频采集终端发送目标码流推地址。在视频采集终端接收到该目标码流推送地址,并检测到未针对所述第二业务推送码流后,根据该地址与流媒体服务器建立码流推送连接。在该码流推送连接建立成功后,视频采集终端向业务处理服务器发送推流开始通知,然后进行码流推送检测处理。如图3所示,视频采集终端在接收到请求推流地址报文获取到目标码流推送地址后,发送回应推流地址报文,然后基于推流地址与流媒体服务器建立连接。在连接建立成功后,视频采集终端向业务处理服务器发送通知已开始推流报文、即推流开始通知,业务处理服务器接收到通知已开始推流报文后返回回应确认报文。视频采集终端接收回应确认报文后,进行码流推送检测处理。
在一个实施例中,码流推送检测处理是指视频采集终端获取各个业务的码流推送状态,并对码流推送状态进行判断。
在一个实施例中,视频采集终端基于RTMP(Real Time Messaging Protocol,实时消息传输协议)通信协议与流媒体服务器进行握手,建立码流推送连接。可以理解,使用RTMP协议,可以实现低延时以及简化公私网穿越的难度,以满足直播、巡课应用对实时性方面的要求。
在本实施例中,在接收到目标码流推送地址,并检测到未针对所述第二业务推送码流后,视频采集终端基于目标码流推送地址与流媒体服务器建立码流推送连接。并且在码流推送连接建立成功后,向业务处理服务器发送推流开始通知。这样,业务处理服务器就能获知视频采集终端跟流媒体服务器之间的交互的结果,为业务处理服务器执行后续的步骤做了准备,避免业务处理服务器判断出错,从而提高业务处理服务器控制码流推送流程的准确性。
在一个实施例中,方法还包括:在业务处理服务器确认不需要针对目标业务推送码流的情况下,向视频采集终端发送针对目标业务的推流停止通知;目标业务为第一业务和第二业务中的任意一个;视频采集终端接收推流停止通知,更新目标业务的码流推送状态为停止状态,以触发业务处理服务器指示视频观看终端停止使用视频采集终端推送的码流;若视频采集终端的各个业务的码流推送状态均为停止状态,则停止码流推送,关闭音视频编码器。
具体地,在业务处理服务器确认不需要针对目标业务推送码流的情况下,业务处理服务器向视频采集终端发送针对目标业务的推流停止通知。其中,目标业务为第一业务和第二业务中的任意一个。视频采集终端接收推流停止通知,更新推流停止通知所指定的目标业务的码流推送状态为停止状态,以触发业务处理服务器指示视频观看终端停止使用视频采集终端推送的码流。视频采集终端对各个业务的码流推送状态的状态进行判断,若视频采集终端的各个业务的码流推送状态均为停止状态,则停止码流推送,关闭音视频编码器。
在一个实施例中,视频采集终端接收推流停止通知,更新推流停止通知所指定的目标业务的码流推送状态为停止状态,向业务处理服务器发送对应的确认已停止报文,业务处理服务器收到该确认已停止报文后,指示视频观看终端停止使用视频采集终端推送的码流。
在一个实施例中,当目标业务是直播时,视频采集终端检测下课时间是否已到。若已到下课时间,则主动向业务处理服务器发送针对目标业务的推流停止通知。业务处理服务器收到推流停止通知,将直播码流推送状态更新为停止状态,若巡课码流推送状态为已启动状态,则不回收码流推送地址,否,则回收码流推送地址。具体地,如图6所示,视频采集终端确认需要针对直播停止推流后,向业务处服务器发送通知停止推流报文,业务处理服务器向视频采集终端发送确认停止推流报文,视频采集终端回复确认回应报文。业务处理服务器将本地记录的直播状态更新为停止状态。若本地记录的巡课状态同时为停止状态或者未开始状态,则回收推流地址。视频采集终端回复确认回应报文后,将直播状态更新为停止状态,在巡课状态也为停止状态或者未开始状态时,停止推流,关闭与流媒体服务器之间的连接,关闭编码器。
在一个实施例中,当目标业务是直播时,教学系统的平台通过课程控制页面,点击“停止直播”按钮;或者是通过对控制面板的停止直播的操作触发业务处理服务器向视频采集终端发送针对直播的推流停止通知。具体地,如图7所示,业务处理服务器确认需要针对直播停止推流后,向视频采集终端发送通知停止推流报文,视频采集终端向业务处理服务器发送确认停止推流报文,业务处理服务器回复确认回应报文。业务处理服务器将本地记录的直播状态更新为停止状态。若本地记录的巡课状态同时为停止状态或者未开始状态,则回收推流地址。视频采集终端发送确认停止推流报文后,将直播状态更新为停止状态,在巡课状态也为停止状态或者未开始状态时,停止推流,关闭与流媒体服务器之间的连接,关闭编码器。
在一个实施例中,当目标业务是巡课时,当浏览器页面关闭巡课窗口或直接关闭浏览器时,触发业务处理服务器平台对对应的视频采集终端发起关闭巡课的要求,即在业务处理服务器确认不需要针对巡课推送码流的情况下,业务处理服务器向视频采集终端发送针对巡课的推流停止通知。具体地,如图8所示,业务处理服务器确认需要针对巡课停止推流后,向视频采集终端发送通知停止推流报文,视频采集终端向业务处理服务器发送确认停止推流报文,业务处理服务器回复确认回应报文。视频采集终端发送确认停止推流报文后,将巡课状态更新为停止状态,在直播状态也为停止状态或者未开始状态时,停止推流,关闭与流媒体服务器之间的连接,关闭编码器。
在本实施例中,视频采集终端接收推流停止通知,更新目标业务的码流推送状态为停止状态,以触发业务处理服务器指示视频观看终端停止使用视频采集终端推送的码流对目标业务进行处理。若视频采集终端的各个业务的码流推送状态均为停止状态,则停止码流推送,关闭音视频编码器。这样,保证了视频采集终端和业务处理服务器对码流推送停止的处理同步。并且视频采集终端对各个业务的码流推送状态进行判断,在都为停止状态下,停止码流推送,从而保证了当前目标业务的停止不影响其它业务的码流推送,从而实现了多业务的码流推送。
在一个实施例中,目标业务支持多个视频观看终端同时展示视频采集终端所采集的视频;在业务处理服务器确认不需要针对目标业务推送码流的情况下,向视频采集终端发送针对目标业务的推流停止通知之前,方法还包括:在业务处理服务器接收到视频观看终端发送的针对视频采集终端发起的观看请求的情况下,业务处理服务器检测视频采集终端针对目标业务的码流推送状态;若目标业务的码流推送状态为已启动状态,则更新针对目标业务的观看总数,并指示视频观看终端基于当前正在推送的码流展示符合目标业务的视频;在业务处理服务器接收到视频观看终端发送的针对目标业务的停止观看请求的情况下,更新针对目标业务的观看总数;若观看总数表征全部视频观看终端已停止展示视频采集终端所采集的视频,则确认不需要针对目标业务推送码流。
其中,观看总数是观看目标业务的码流所对应的视频的总数。比如,两个手机同时使用目标应用观看目标业务的码流所对应的视频,则观看总数为2。如果同时还有在电脑上使用浏览器观看目标业务的码流所对应的视频,则观看总数为3。
具体地,目标业务支持多个视频观看终端同时展示视频采集终端所采集的视频。在业务处理服务器接收到视频观看终端发送的针对视频采集终端发起的观看请求的情况下,业务处理服务器检测视频采集终端针对目标业务的码流推送状态。若目标业务的码流推送状态为已启动状态,则更新针对目标业务的观看总数,并指示视频观看终端基于当前正在推送的码流展示符合目标业务的视频。在业务处理服务器接收到视频观看终端发送的针对目标业务的停止观看请求的情况下,更新针对目标业务的观看总数。若观看总数表征全部视频观看终端已停止展示视频采集终端所采集的视频,则确认不需要针对目标业务推送码流。
在一个实施例中,巡课支持多个视频观看终端同时展示视频采集终端所采集的视频,当浏览器页面关闭巡课窗口或直接关闭浏览器时,业务处理服务器检测视频采集终端针对巡课的码流推送状态。若巡课的码流推送状态为已启动状态,更新针对巡课的观看总数,并判断是否需要针对巡课继续推送码流。具体地,如图8所示,业务处理服务器更新巡课业务的观看总数,若更新后的观看总数为0,则将巡课状态更新为停止状态,确认不需要针对巡课推送码流。在直播状态也为停止状态的情况下,发送停止推流报文给视频采集终端,并回收推流地址。
在本实施例中,当目标业务支持多个视频观看终端同时展示视频采集终端所采集的视频时,使用观看总数来对视频观看终端的总数进行统计,从而保证了任一个视频观看终端停止观看视频时,其它视频观看终端能正常观看视频,实现了多用户的推送。
在一个实施例中,方法还包括:业务处理服务器向视频采集发送推流心跳;视频采集终端收到推流心跳,返回心跳确认报文给业务服务器;若视频采集终端在预设时间内未收到推流心跳,则停止推送码流,发送推流停止通知给业务处理服务器,并更新各业务的码流推送状态为停止状态。
其中,推流心跳是周期性发送的心跳报文,用于判定是否停止推流。
具体地,业务处理服务器周期性地向视频采集发送推流心跳。视频采集终端收到推流心跳,返回心跳确认报文给业务服务器。若视频采集终端在预设时间内未收到推流心跳,则停止推送码流,发送推流停止通知给业务处理服务器,并更新各业务的码流推送状态为停止状态。比如,业务处理服务器每隔10秒发送一个推流心跳给视频采集终端,视频采集终端发送心跳确认报文给业务处理服务器。视频采集终端每隔30秒进行判断,若在30秒内若没有收到推流心跳,则停止推送码流,并发送推流停止通知给业务处理服务器。
在本实施例中,通过业务处理服务器周期性地向视频采集终端发送推流心跳,视频采集终端若在预设时间内没有收到推流心跳,则停止推送码流。避免了业务处理服务器出现故障或者是业务处理服务器和视频采集终端对是否推流的状态判断不一致的情况下所出现的异常,从而提高多业务码流推送的健壮性和容错性。
在一个实施例中,若检测到已针对第二业务推送码流,在视频采集终端的本地确认第一业务的第一码流推送状态为已启动状态,以触发业务处理服务器指示视频观看终端复用已针对第二业务推送的码流对第一业务进行处理包括:若检测到已针对第二业务使用目标码流推送地址推送码流,在视频采集终端的本地确认第一业务的第一码流推送状态为已启动状态,并保持按照目标码流推送地址向流媒体服务器针对第二业务推送所采集的码流;业务处理服务器通过调用流媒体服务器提供的用于查看码流状态的接口;若基于接口确认目标码流推送地址所对应的码流为活跃状态,业务处理服务器则判定视频采集终端已开始针对第一业务推送码流,以及指示视频观看终端对第一业务进行处理,并在处理过程中复用已针对第二业务推送的码流。
具体地,视频采集终端若检测到已针对第二业务使用目标码流推送地址推送码流,在视频采集终端的本地确认第一业务的第一码流推送状态为已启动状态,并保持按照目标码流推送地址向流媒体服务器针对第二业务推送所采集的码流。业务处理服务器通过调用流媒体服务器提供的用于查看码流状态的接口,该接口返回码流状态值。若码流状态值表征目标码流推送地址所对应的码流为活跃状态,业务处理服务器则判定视频采集终端已开始针对第一业务推送码流,进一步指示视频观看终端对第一业务进行处理,并在处理过程中复用已针对第二业务推送的码流。
在一个实施例中,在所述视频采集终端的本地确认所述第一业务的第一码流推送状态为已启动状态后,视频采集终端向业务处理服务器通知第一码流推送状态为已启动状态,业务处理服务器确认视频采集终端的第一业务的第一码流推送状态为已启动状态。进一步地,业务处理服务器基于接口确认目标码流推送地址所对应的码流为活跃状态。根据这两个条件,业务处理服务器则判定视频采集终端已开始针对第一业务推送码流,以及指示视频观看终端对第一业务进行处理,并在处理过程中复用已针对第二业务推送的码流。
在一个实施例中,若未检测到已针对第二业务推送码流,视频采集终端启动音视频编码器并采集码流,按照目标码流推送地址向流媒体服务器推送所采集的码流;业务处理服务器通过调用流媒体服务器提供的用于查看码流状态的接口;若基于接口确认目标码流推送地址所对应的码流为活跃状态,业务处理服务器则判定并标记视频采集终端已开始针对第一业务推送码流,以及指示视频观看终端对第一业务进行处理,并在处理过程中使用已针对第一业务推送的码流。具体地,如图3所示,当第一业务是直播时,第二业务是巡课并且未开始时,视频采集终端在检测出未针对巡课推送码流进行处理的情况下,视频采集终端启动音视频编码器并采集码流,按照目标码流推送地址向流媒体服务器推送所采集的码流。业务处理服务器通过调用流媒体服务器提供的用于查看码流状态的接口,确认目标码流推送地址所对应的码流为活跃状态,标记视频采集终端已开始针对直播推送码流。当第一业务是巡课,第二业务是直播时,如图5所示,业务处理服务器通过调用流媒体服务器提供的用于查看码流状态的接口,确认目标码流推送地址所对应的码流为活跃状态,标记视频采集终端已开始针对巡课推送码流。
在本实施例中,业务处理服务器通过与流媒体服务器之间预设的接口,来确认目标码流推送地址所对应的码流为活跃状态,并进一步指示视频观看终端对第一业务进行处理,并在处理过程中复用已针对第二业务推送的码流。这样,业务处理服务器在保证码流活跃的情况下,对视频观看终端进行相关的指示,从而保证了多业务码流推送结果的准确性,进一步保证了业务处理服务器处理的可靠性。
在一个实施例中,业务处理服务器和视频采集服务器各自维护业务的码流推送状态。
在另一个实施例中,码流推送状态由视频采集服务器进行维护,并时时同步到业务处理服务器。具体地,视频采集终端向业务服务器注册后,会通知业务服务器自身的码流推送状态,并且在发送变化时通知业务处理服务器。业务服务器在接收到视频采集终端的请求推流地址报文时,会判断该视频采集终端的码流推送状态。平台业务服务器根据视频采集终端上报的码流推送状态和相应业务发生时的请求,判断是否存在业务复用。如果存在业务复用,则通知视频采集终端复用同一个码流推送地址,并更新本地存储的视频采集终端的码流推送状态。
在一个实施例中,如图9所示,展示了视频采集终端更新码流推送状态并根据码流推送状态做出不同的策略的过程。具体地,视频采集终端开机后,标记直播状态和巡课状态为0。在本实施例中,用0表示未开始或停止的状态,用1表示已启动状态。视频采集终端等待事件驱动应用,若接收到事件,对事件的类型进行判断。若该事件为开始直播,不开始巡课,并且直播和巡课状态都为0的情况下以及该事件为不开始直播,开始巡课,并且直播和巡课状态都为0的情况下,打开音视频编码器,设置对应的状态为1(直播状态为1或者巡课状态为1)。若该事件为不开始直播和巡课,停止直播并且巡课状态不为0的情况下以及该事件为不开始直播和巡课,不停止直播,停止巡课并且直播状态不为0的情况下,关闭音视频编码器,设置对应的状态为0(巡课状态为0或者直播状态为0)。在其它情况下,视频采集终端不做开启和关闭音视频编码器的处理,从而保证了在处理任一个业务的停止或开始推流的请求时,不影响其它业务的当前推流处理,进而实现了多业务码流的推送。
应该理解的是,虽然本申请部分实施例中的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的多业务码流推送方法的多业务码流推送系统。该系统所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个多业务码流推送系统实施例中的具体限定可以参见上文中对于多业务码流推送方法的限定,在此不再赘述。
在一个实施例中,如图10所示,提供了一种多业务码流推送系统1000,包括:业务处理服务器1002和视频采集终端1004其中:
业务处理服务器1002,用于在教室中的视频采集终端1004待开始针对第一业务推送码流的情况下,业务处理服务器1002检测视频采集终端1004针对第二业务的第二码流推送状态;第二业务是教学系统中不同于第一业务的业务;若第二码流推送状态表征视频采集终端1004已针对第二业务推送码流,业务处理服务器1002将第二业务对应的码流推送地址确定为第一业务对应的目标码流推送地址,并向视频采集终端1004返回目标码流推送地址。
视频采集终端1004,用于在接收到目标码流推送地址后,视频采集终端1004进行码流推送检测处理;若检测到已针对第二业务推送码流,在视频采集终端1004的本地确认第一业务的第一码流推送状态为已启动状态,以触发业务处理服务器1002指示视频观看终端复用已针对第二业务推送的码流对第一业务进行处理。
在一个实施例中,业务处理服务器1002还用于若第二码流推送状态表征视频采集终端1004未针对第二业务推送码流,业务处理服务器1002则为视频采集终端1004分配并返回目标码流推送地址;视频采集终端1004还用于若检测到未针对第二业务推送码流,视频采集终端1004启动音视频编码器,进行音视频采集和编码得到码流,按照目标码流推送地址向流媒体服务器针对第一业务推送所采集的码流。
在一个实施例中,在接收到目标码流推送地址,并检测到未针对所述第二业务推送码流后,视频采集终端1004还用于在接收到目标码流推送地址后,基于目标码流推送地址与流媒体服务器建立码流推送连接;码流推送连接建立成功后,向业务处理服务器1002发送推流开始通知;视频采集终端1004进行码流推送检测处理。
在一个实施例中,业务处理服务器1002还用于在确认不需要针对目标业务推送码流的情况下,向视频采集终端1004发送针对目标业务的推流停止通知;目标业务为第一业务和第二业务中的任意一个;视频采集终端1004还用于接收推流停止通知,更新目标业务的码流推送状态为停止状态,以触发业务处理服务器1002指示视频观看终端停止使用视频采集终端1004推送的码流;若视频采集终端1004的各个业务的码流推送状态均为停止状态,则停止码流推送,关闭音视频编码器。
在一个实施例中,目标业务支持多个视频观看终端同时展示视频采集终端1004所采集的视频;在业务处理服务器1002确认不需要针对目标业务推送码流的情况下,向视频采集终端1004发送针对目标业务的推流停止通知之前,业务处理服务器1002还用于在接收到视频观看终端发送的针对视频采集终端1004发起的观看请求的情况下,业务处理服务器1002检测视频采集终端1004针对目标业务的码流推送状态;若目标业务的码流推送状态为已启动状态,则更新针对目标业务的观看总数,并指示视频观看终端1004基于当前正在推送的码流展示符合目标业务的视频。在业务处理服务器1002接收到视频观看终端发送的针对目标业务的停止观看请求的情况下,更新针对目标业务的观看总数;若观看总数表征全部视频观看终端已停止展示视频采集终端1004所采集的视频,则确认不需要针对目标业务推送码流。
在一个实施例中,业务处理服务器1002还用于向视频采集终端1004发送推流心跳;视频采集终端1004还用于在收到推流心跳后,返回心跳确认报文给业务服务器1002。若视频采集终端1004在预设时间内未收到推流心跳,则停止推送码流,发送推流停止通知给业务处理服务器1002,并更新各业务的码流推送状态为停止状态。
在一个实施例中,视频采集终端1004还用于若检测到已针对第二业务使用目标码流推送地址推送码流,在视频采集终端1004的本地确认第一业务的第一码流推送状态为已启动状态,并保持按照目标码流推送地址向流媒体服务器针对第二业务推送所采集的码流。业务处理服务器1002还用于通过调用流媒体服务器提供的用于查看码流状态的接口;若基于接口确认目标码流推送地址所对应的码流为活跃状态,业务处理服务器1002则判定视频采集终端1004已开始针对第一业务推送码流,以及指示视频观看终端对第一业务进行处理,并在处理过程中复用已针对第二业务推送的码流。
关于上述多业务码流推送的具体限定可以参见上文中对于上述多业务码流推送方法的限定,在此不再赘述。上述多业务码流推送系统中的各个设备可全部或部分通过软件、硬件及其组合来实现。上述各设备可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个设备对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图11所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储码流推送状态数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种多业务码流推送方法。
本领域技术人员可以理解,图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种多业务码流推送方法,其特征在于,所述方法包括:
在教室中的视频采集终端待开始针对第一业务推送码流的情况下,业务处理服务器检测所述视频采集终端针对第二业务的第二码流推送状态;所述第二业务是教学系统中不同于所述第一业务的业务;
若所述第二码流推送状态表征所述视频采集终端已针对所述第二业务推送码流,业务处理服务器将所述第二业务对应的码流推送地址确定为所述第一业务对应的目标码流推送地址,并向所述视频采集终端返回目标码流推送地址;
在接收到所述目标码流推送地址后,所述视频采集终端进行码流推送检测处理;
若检测到已针对所述第二业务推送码流,在所述视频采集终端的本地确认所述第一业务的第一码流推送状态为已启动状态,以触发所述业务处理服务器指示视频观看终端复用已针对所述第二业务推送的码流对所述第一业务进行处理。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述第二码流推送状态表征所述视频采集终端未针对所述第二业务推送码流,业务处理服务器则为所述视频采集终端分配并返回目标码流推送地址;
在所述视频采集终端进行码流推送检测处理之后,所述方法还包括:
若所述视频采集终端检测到未针对所述第二业务推送码流,所述视频采集终端启动音视频编码器,进行音视频采集和编码得到码流,按照所述目标码流推送地址向流媒体服务器针对所述第一业务推送所采集的码流。
3.根据权利要求1所述的方法,其特征在于,所述在接收到所述目标码流推送地址后,所述视频采集终端进行码流推送检测处理包括:
在接收到所述目标码流推送地址,并检测到未针对所述第二业务推送码流后,所述视频采集终端基于所述目标码流推送地址与流媒体服务器建立码流推送连接;
所述码流推送连接建立成功后,向所述业务处理服务器发送推流开始通知;
所述视频采集终端进行码流推送检测处理。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述业务处理服务器确认不需要针对目标业务推送码流的情况下,向所述视频采集终端发送针对所述目标业务的推流停止通知;所述目标业务为第一业务和第二业务中的任意一个;
所述视频采集终端接收所述推流停止通知,更新所述目标业务的码流推送状态为停止状态,以触发所述业务处理服务器指示视频观看终端停止使用所述视频采集终端推送的码流;
若所述视频采集终端的各个业务的码流推送状态均为停止状态,则停止码流推送,关闭音视频编码器。
5.根据权利要求4所述的方法,其特征在于,所述目标业务支持多个所述视频观看终端同时展示所述视频采集终端所采集的视频;在所述业务处理服务器确认不需要针对目标业务推送码流的情况下,向所述视频采集终端发送针对所述目标业务的推流停止通知之前,所述方法还包括:
在所述业务处理服务器接收到所述视频观看终端发送的针对所述视频采集终端发起的观看请求的情况下,所述业务处理服务器检测所述视频采集终端针对目标业务的码流推送状态;
若所述目标业务的码流推送状态为已启动状态,则更新针对所述目标业务的观看总数,并指示所述视频观看终端基于当前正在推送的码流展示符合所述目标业务的视频;
在所述业务处理服务器接收到所述视频观看终端发送的针对所述目标业务的停止观看请求的情况下,更新针对所述目标业务的所述观看总数;
若所述观看总数表征全部所述视频观看终端已停止展示所述视频采集终端所采集的视频,则确认不需要针对目标业务推送码流。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述业务处理服务器向所述视频采集终端发送推流心跳;
所述视频采集终端收到所述推流心跳,返回心跳确认报文给所述业务处理服务器;
若所述视频采集终端在预设时间内未收到所述推流心跳,则停止推送码流,发送推流停止通知给所述业务处理服务器,并更新各业务的码流推送状态为停止状态。
7.根据权利要求1所述的方法,其特征在于,所述若检测到已针对所述第二业务推送码流,在所述视频采集终端的本地确认所述第一业务的第一码流推送状态为已启动状态,以触发所述业务处理服务器指示视频观看终端复用已针对所述第二业务推送的码流对所述第一业务进行处理包括:
若检测到已针对所述第二业务使用所述目标码流推送地址推送码流,在所述视频采集终端的本地确认所述第一业务的第一码流推送状态为已启动状态,并保持按照所述目标码流推送地址向流媒体服务器针对所述第二业务推送所采集的码流;
所述业务处理服务器通过调用所述流媒体服务器提供的用于查看码流状态的接口;
若基于所述接口确认所述目标码流推送地址所对应的码流为活跃状态,所述业务处理服务器则判定所述视频采集终端已开始针对所述第一业务推送码流,以及指示视频观看终端对所述第一业务进行处理,并在处理过程中复用已针对所述第二业务推送的码流。
8.一种多业务码流推送系统,其特征在于,所述系统包括视频采集终端和业务处理服务器:
所述业务处理服务器,用于在教室中的视频采集终端待开始针对第一业务推送码流的情况下,业务处理服务器检测所述视频采集终端针对第二业务的第二码流推送状态;所述第二业务是教学系统中不同于所述第一业务的业务;若所述第二码流推送状态表征所述视频采集终端已针对所述第二业务推送码流,业务处理服务器将所述第二业务对应的码流推送地址确定为所述第一业务对应的目标码流推送地址,并向所述视频采集终端返回目标码流推送地址;
所述视频采集终端,用于在接收到所述目标码流推送地址后,所述视频采集终端进行码流推送检测处理;若检测到已针对所述第二业务推送码流,在所述视频采集终端的本地确认所述第一业务的第一码流推送状态为已启动状态,以触发所述业务处理服务器指示视频观看终端复用已针对所述第二业务推送的码流对所述第一业务进行处理。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111543158.XA CN114363665B (zh) | 2021-12-16 | 2021-12-16 | 多业务码流推送方法、系统、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111543158.XA CN114363665B (zh) | 2021-12-16 | 2021-12-16 | 多业务码流推送方法、系统、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114363665A CN114363665A (zh) | 2022-04-15 |
CN114363665B true CN114363665B (zh) | 2023-11-07 |
Family
ID=81098575
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111543158.XA Active CN114363665B (zh) | 2021-12-16 | 2021-12-16 | 多业务码流推送方法、系统、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114363665B (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104168457A (zh) * | 2014-08-18 | 2014-11-26 | 浙江宇视科技有限公司 | 一种多路媒体流点播方法及装置 |
CN105052165A (zh) * | 2013-12-19 | 2015-11-11 | 华为技术有限公司 | 业务处理方法、装置和系统 |
CN108260017A (zh) * | 2016-12-30 | 2018-07-06 | 广州华多网络科技有限公司 | 一种网络视频批量转推的方法及系统 |
CN108737405A (zh) * | 2018-05-10 | 2018-11-02 | 网宿科技股份有限公司 | 一种对直播视频流进行导流的方法、ccl服务器和系统 |
CN110300306A (zh) * | 2019-06-13 | 2019-10-01 | 武汉微创光电股份有限公司 | 基于rtmp协议直播流负载均衡算法 |
CN111385509A (zh) * | 2019-03-11 | 2020-07-07 | 深圳市鸿合创新信息技术有限责任公司 | 一种巡课方法及装置、电子设备 |
CN112203106A (zh) * | 2020-10-10 | 2021-01-08 | 深圳市捷视飞通科技股份有限公司 | 直播教学方法、装置、计算机设备和存储介质 |
CN112511858A (zh) * | 2020-10-26 | 2021-03-16 | 深圳点猫科技有限公司 | 一种网课直播混合推流方法、系统及存储介质 |
CN112637258A (zh) * | 2020-09-28 | 2021-04-09 | 西安万像电子科技有限公司 | 一种数据处理方法和系统 |
CN112770138A (zh) * | 2019-11-01 | 2021-05-07 | 浙江宇视科技有限公司 | 解码资源管理方法、装置、解码设备及可读存储介质 |
CN113190270A (zh) * | 2021-02-26 | 2021-07-30 | 深圳市捷视飞通科技股份有限公司 | 网络课程控制系统、方法、计算机设备和存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018114814A1 (en) * | 2016-12-20 | 2018-06-28 | Koninklijke Kpn N.V. | Synchronizing processing between streams |
CN114666614A (zh) * | 2019-04-23 | 2022-06-24 | 华为技术有限公司 | 一种媒体流发送方法、装置和设备 |
-
2021
- 2021-12-16 CN CN202111543158.XA patent/CN114363665B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105052165A (zh) * | 2013-12-19 | 2015-11-11 | 华为技术有限公司 | 业务处理方法、装置和系统 |
CN104168457A (zh) * | 2014-08-18 | 2014-11-26 | 浙江宇视科技有限公司 | 一种多路媒体流点播方法及装置 |
CN108260017A (zh) * | 2016-12-30 | 2018-07-06 | 广州华多网络科技有限公司 | 一种网络视频批量转推的方法及系统 |
CN108737405A (zh) * | 2018-05-10 | 2018-11-02 | 网宿科技股份有限公司 | 一种对直播视频流进行导流的方法、ccl服务器和系统 |
CN111385509A (zh) * | 2019-03-11 | 2020-07-07 | 深圳市鸿合创新信息技术有限责任公司 | 一种巡课方法及装置、电子设备 |
CN110300306A (zh) * | 2019-06-13 | 2019-10-01 | 武汉微创光电股份有限公司 | 基于rtmp协议直播流负载均衡算法 |
CN112770138A (zh) * | 2019-11-01 | 2021-05-07 | 浙江宇视科技有限公司 | 解码资源管理方法、装置、解码设备及可读存储介质 |
CN112637258A (zh) * | 2020-09-28 | 2021-04-09 | 西安万像电子科技有限公司 | 一种数据处理方法和系统 |
CN112203106A (zh) * | 2020-10-10 | 2021-01-08 | 深圳市捷视飞通科技股份有限公司 | 直播教学方法、装置、计算机设备和存储介质 |
CN112511858A (zh) * | 2020-10-26 | 2021-03-16 | 深圳点猫科技有限公司 | 一种网课直播混合推流方法、系统及存储介质 |
CN113190270A (zh) * | 2021-02-26 | 2021-07-30 | 深圳市捷视飞通科技股份有限公司 | 网络课程控制系统、方法、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114363665A (zh) | 2022-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11188863B2 (en) | Methods, devices, and systems for prioritizing mobile network trouble tickets based on customer impact | |
CN111246152B (zh) | 视频会议自动恢复方法及装置、存储介质、电子装置 | |
EP2200000A1 (en) | Real-time image monitoring and recording system and method | |
WO2017219852A1 (zh) | 数据信息的共享方法及装置、终端 | |
CN106412498B (zh) | 一种监控数据获取方法和云终端 | |
CN108600318B (zh) | 监控视频调取方法、装置及服务器 | |
CN112291514A (zh) | 远程音视频通话方法、装置及ott平台 | |
CN111431964B (zh) | 一种消息同步处理方法、装置及存储介质 | |
KR101712542B1 (ko) | 페일오버 데이터 백업 QoS 전송시스템 및 이를 이용한 전송방법 | |
CN113032223A (zh) | 服务器状态检测方法及装置 | |
CN108235111B (zh) | 信息共享方法及智能机顶盒 | |
CN112333529B (zh) | 直播流加载方法及其装置、设备、介质 | |
CN114363665B (zh) | 多业务码流推送方法、系统、计算机设备和存储介质 | |
CN110830753B (zh) | 视频会议信令处理方法、装置、计算机设备和存储介质 | |
CN115412597B (zh) | 一种实时数据通信方法 | |
US9485458B2 (en) | Data processing method and device | |
CN115412682A (zh) | 一种视频轮播方法、装置、计算机设备及存储介质 | |
CN110730173B (zh) | 一种信息交互方法及装置 | |
CN115514980A (zh) | 一种推流直播管理方法、装置、计算机及可读存储介质 | |
CN110309105B (zh) | 数据处理方法、系统和设备 | |
CN113596380B (zh) | 一种视频会议服务器及通信方法 | |
CN114679593B (zh) | 直播转码处理方法、装置及系统 | |
CN113452947B (zh) | 关键帧获取方法、装置、计算机设备和存储介质 | |
CN112637542B (zh) | 通话连接建立方法、装置、计算机设备和存储介质 | |
CN114979687B (zh) | 基于边缘计算的连麦控制方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |