CN115334059A - 一种音视频互通方法、装置、设备及存储介质 - Google Patents
一种音视频互通方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115334059A CN115334059A CN202210955815.XA CN202210955815A CN115334059A CN 115334059 A CN115334059 A CN 115334059A CN 202210955815 A CN202210955815 A CN 202210955815A CN 115334059 A CN115334059 A CN 115334059A
- Authority
- CN
- China
- Prior art keywords
- client
- audio
- video
- video stream
- request
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1069—Session establishment or de-establishment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明实施例公开了一种音视频互通方法、装置、设备及存储介质。该方法包括:响应于同一局域网内的被请求客户端发送的音视频互通请求;在媒体协商通过后,获取被请求客户端请求互通的请求客户端,并检测是否与请求客户端位于同一局域网内;若否,则在被请求客户端的客户端类型与目标编码格式不适配时,将采集到的实时音视频流转换为目标编码格式的适配音视频流;并转发至与请求客户端匹配的下一服务器。通过上述方法,解决了被请求客户端和请求客户端由于视频编码格式不一致而造成的音视频不能互通的问题。可以实现被请求客户端和请求客户端两者之间灵活地进行音视频的交互,扩充了音视频互通系统的适用场景,极大的满足了用户的音视频互通需求。
Description
技术领域
本发明实施例涉及计算机数据处理技术,具体涉及音视频处理技术,尤其涉及一种音视频互通方法、装置、设备及存储介质。
背景技术
随着技术的不断发展,人们对安防监控技术的需求也不断提高。目前,市面上已经实现了较为成熟的视频监控系统。通过将桌面客户端与一个或者多个监控设备进行绑定,可以使用该桌面客户端控制各监控设备进行音视频采集。
现有的视频监控系统中,不同桌面客户端之间可以实现视频点播和视频呼叫功能。也即,一个桌面客户端可以点播另一个桌面客户端所绑定的一个监控设备采集的音视频内容,或者两个桌面客户端之间可以实现音视频通话等。
现有的视频监控系统在实现时,仅能传输在各桌面客户端所采集的统一格式的音视频编码文件,进而,当需要扩展视频监控的应用场景时,例如,在该视频监控系统中加入了用于采集新格式的音视频编码文件的新类型的客户端时,需要重新设计新架构的视频监控系统,无法在原有的视频监控系统上引入新类型的客户端。
发明内容
本发明实施例提供了一种音视频互通方法、装置、设备及存储介质,以在现有的基于桌面客户端的音视频互通系统中,实现网页客户端与桌面客户端之间的音视频互通。
第一方面,本发明实施例提供了一种音视频互通方法,其中,由音视频互通系统中的服务器执行,音视频互通系统中的音视频流以目标编码格式在不同服务器间传输,所述方法包括:
响应于同一局域网内的被请求客户端发送的音视频互通请求,与所述被请求客户端进行媒体协商;
在媒体协商通过后,获取所述被请求客户端请求互通的请求客户端,并检测是否与所述请求客户端位于所述同一局域网内;
若否,则在所述被请求客户端的客户端类型与目标编码格式不适配时,将所述被请求客户端采集的实时音视频流转换为所述目标编码格式的适配音视频流;
将所述适配音视频流,转发至与所述请求客户端匹配的下一服务器。
第二方面,本发明实施例还提供了一种音视频互通装置,其中,由音视频互通系统中的服务器执行,音视频互通系统中的音视频流以目标编码格式在不同服务器间传输,所述装置包括:
媒体协商模块,用于响应于同一局域网内的被请求客户端发送的音视频互通请求,与所述被请求客户端进行媒体协商;
同一局域网检测模块,用于在媒体协商通过后,获取所述被请求客户端请求互通的请求客户端,并检测是否与所述请求客户端位于所述同一局域网内;
适配音视频流转换模块,用于若检测不与所述请求客户端位于所述同一局域网内,则在所述被请求客户端的客户端类型与目标编码格式不适配时,将所述被请求客户端采集的实时音视频流转换为所述目标编码格式的适配音视频流;
适配音视频流转发模块,用于将所述适配音视频流,转发至与所述请求客户端匹配的下一服务器。
第三方面,本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时实现如本发明任意实施例所述的音视频互通方法。
第四方面,本发明实施例还提供了一种包含计算机可读存储介质,其上存储有计算机程序,其中,该计算机程序被处理器执行时实现如本发明任意实施例所述的音视频互通方法。
本发明实施例所提供的技术方案,通过响应于同一局域网内的被请求客户端发送的音视频互通请求;在媒体协商通过后,获取被请求客户端请求互通的请求客户端,并检测是否与请求客户端位于同一局域网内;若否,则在被请求客户端的客户端类型与目标编码格式不适配时,将采集到的实时音视频流转换为目标编码格式的适配音视频流;并转发至与请求客户端匹配的下一服务器。通过上述方法,解决了被请求客户端和请求客户端由于视频编码格式不一致而造成的音视频不能互通的问题。可以实现被请求客户端和请求客户端两者之间灵活地进行音视频的交互,扩充了音视频互通系统的适用场景,极大的满足了用户的音视频互通需求。
附图说明
图1a为本发明实施例一提供的一种音视频互通方法的流程图;
图1b为本发明实施例一提供的方法中的一种具体应用场景的结构示意图;
图2为本发明实施例二提供的另一种音视频互通方法的流程图;
图3为本发明实施例三提供的另一种音视频互通方法的流程图;
图4是本发明实施例四提供的一种音视频互通装置的结构示意图;
图5是本发明实施例五提供的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1a为本发明实施例一提供的一种音视频互通方法的流程图。本实施例可适用于被请求客户端和请求客户端两者之间进行音视频交互的情况。本实施例的方法可以由音视频互通装置执行,该装置可以通过软件和/或硬件的方式实现,该装置一般可配置于音视频互通系统中的服务器中。
其中,该音视频互通系统为已经搭建完成的,适用于传输桌面客户端所采集的音视频流的通信系统。该音视频互通系统中包括有一个或者多个服务器,每个服务器可以与一个或者多个桌面客户端直连组网。当位于不同局域网内的桌面客户端需要进行音视频互通时,需要将所需传输的音视频流在不同服务器之间进行转发。
相应的,该方法具体包括如下步骤:
S110、响应于同一局域网内的被请求客户端发送的音视频互通请求,与所述被请求客户端进行媒体协商。
其中,被请求客户端可以理解为与所述服务器直连组网的客户端,也即,该服务器可以收到同一局域网内的被请求客户端所直发的音视频流,其中,被请求客户端的客户端类型可以是网页客户端或者桌面客户端。
具体的,网页客户端可以理解为无需安装桌面客户端,仅通过在浏览器中输入网址访问相关网页的方式,也即实现与该桌面客户端类似的功能。
所述音视频互通请求,是指被请求客户端发送的,需要将被请求客户端所采集的音视频流发送至其他请求客户端进行共享的请求。其中,被请求客户端所采集的音视频流可以是指被请求客户端通过其所绑定的一个或者多个监控设备(例如,摄像头)所采集到的音视频内容。
在一个具体的应用场景中,当音视频互通系统中的一个请求客户端对被请求客户端所绑定的一个或者多个监控设备进行视频点播时,该被请求客户端在授权该视频点播需求后,可以首先向所直连的服务器发送音视频互通请求,以请求将其所采集的音视频流发送至请求视频点播的客户端。
如前所述,现有的音视频互通系统是基于桌面客户端实现的。进而,音视频互通系统中的各服务器在进行整个信令体系的构建时,是基于桌面客户端所采集的音视频流的数据格式的,进而,当服务器需要传输基于网页客户端所采集的与网页客户端相适配的音视频流的数据格式时,需要首先与该网页客户端进行媒体协商。
所述媒体协商,是指基于WebRTC(Web Real-Time Communication,网页即时通信)中的SIP(Session Initiation Protocol,会话发起协议)或者SDP(Session DescriptionProtocol,会话描述协议)与现有的协商机制做兼容来进行媒体的协商。
S120、在媒体协商通过后,获取所述被请求客户端请求互通的请求客户端,并检测是否与所述请求客户端位于所述同一局域网内。
在媒体协商通过后,说明该被请求客户端能够获取得到请求互通的请求客户端。也即,可以实现被请求客户端采集的实时音视频流传输至请求客户端中。
其中,请求客户端可以是期望获取被请求客户端所采集的音视频流的客户端。具体的,请求客户端的客户端类型也可以是桌面客户端或者网页客户端。
在本实施例中,如果确定被请求客户端所关联的服务器与所述请求客户端位于所述同一局域网内,则说明该服务器可以通过直传的方式将被请求客户端的音视频流发送至请求客户端,如果确定服务器与所述请求客户端位于不同的局域网内,则说明该服务器可以通过转发的方式将被请求客户端的音视频流发送至请求客户端。
可以理解的是,假设被请求客户端为网页客户端,当请求客户端也为网页类型时,首先需要判断网页客户端对应的音视频互通系统中的服务器是否与请求客户端处于同一局域网,如果处于同一局域网,则可以将音视频流直接从网页客户端发送至请求客户端。
进一步的,如果处于不同局域网,说明需要服务器之间的转发才可以传输至请求客户端。因此需要将音视频流在网页客户端适配的编码格式,转化为服务器之间传输适配的编码格式,因此可以传输至请求客户端所关联的服务器。当从服务器传输至请求客户端时,由于请求客户端为网页类型,因此需要对音视频流转换编码格式再传输。
另外的,当请求客户端为桌面类型时,首先需要判断网页客户端对应的音视频互通系统中的服务器是否与请求客户端处于同一局域网,如果处于同一局域网,则可以将音视频流直接从网页客户端发送至请求客户端;但是由于与请求客户端的类型不同,所以需要对音视频流转换编码格式再传输。
进一步的,如果处于不同局域网,说明需要服务器之间的转发才可以传输至请求客户端。因此需要将音视频流在网页客户端适配的编码格式,转化为服务器之间传输适配的编码格式,因此可以传输至请求客户端所关联的服务器。当从服务器传输至请求客户端时,由于请求客户端为桌面类型(桌面客户端与服务器之间传输的音视频流编码格式相同),因此可以将音视频流从与请求客户端所关联的服务器直接传输至请求客户端。
S130、若否,则在所述被请求客户端的客户端类型与目标编码格式不适配时,将所述被请求客户端采集的实时音视频流转换为所述目标编码格式的适配音视频流。
其中,所述目标编码格式为桌面客户端所采集实时音视频流的编码格式。
可选的,所述客户端类型包括:桌面客户端和网页客户端;其中,所述桌面客户端与所述目标编码格式相匹配。
其中,桌面客户端可以是用户需要先下载并安装对应的桌面客户端软件,通过在桌面客户端上用户可以登录客户端界面,在客户端界面内用户能直接进行音视频的点播和呼叫。网页客户端可以理解为无需安装桌面客户端,仅通过在浏览器中输入网址访问相关网页的方式,也即实现与该桌面客户端类似的功能。
可以理解的是,桌面客户端所使用的编码格式与目标编码格式相匹配。网页客户端的编码格式与目标编码格式不一致,也即网页客户端的编码格式与桌面客户端的编码格式不一致,要想网页客户端与桌面客户端能够进行音视频流的转发,需要对音视频流进行转换才能够进行正确的音视频流的传输。
可选的,所述目标编码格式为H.264编码格式;所述媒体协商为基于会话发起协议或者会话描述协议的媒体协商。
其中,H.264编码格式是国际标准化组织和国际电信联盟共同提出的继MPEG4(Moving Pictures Experts Group,动态图象专家组)之后的新一代数字视频压缩格式。H.264是视频编解码技术标准之一,H.264是一个数字视频编码标准。会话发起协议(Session Initiation Protocol,SIP)是由互联网工程任务组提出的IP(InternetProtocol,网际互连协议)电话信令协议。SIP用于发起会话,能控制多个参与者参加的多媒体会话的建立和终结,并能动态调整和修改会话属性,如会话带宽要求、传输的媒体类型(语音、视频和数据等)、媒体的编解码格式、对多播和单播的支持等。会话描述协议(Session Description Protocol,SDP)是一种会话描述格式,SDP不属于传输协议,只使用不同的适当的传输协议,包括会话通知协议、会话初始协议、实时流协议以及超文本传输协议。
具体可知,目标编码格式为H.264编码格式,可以理解的是,桌面客户端的编码格式也为H.264编码格式。网页客户端的编码格式为VP8编码格式。具体的,VP8编码格式是一种视频编解码格式,VP8能以更少的数据提供更高质量的视频,而且只需较小的处理能力即可播放视频,为致力于实现产品及服务差异化的网络电视、交互式网络电视和视频会议公司提供理想的解决方案。
在服务器与所述请求客户端位于不同的局域网时,需要将该实时音视频流在不同服务器之间进行转发。考虑到该音视频互通系统为已经实现的,用于传输桌面客户端所采集的音视频流的通信系统,不同服务器所适用的底层信令协议均与该目标编码格式相匹配。相应的,在将该实时音视频流进行转发之前,需要首先将其转换为目标编码格式的音视频流,也即转为适配音视频流。
S140、将所述适配音视频流,转发至与所述请求客户端匹配的下一服务器。
其中,下一服务器可以是与请求客户端相关联的服务器。不同的请求客户端对应一个下层的服务器,当需要发送的音视频流位于不同的服务器(也即不同的局域网),需要先转发至相关服务器,再传输至请求客户端。当音视频流需要经过多次服务器的转发,才能够传输到目标请求客户端时,该视频流需要中间可以经过多个服务器进行传输,由于经过多个服务器,则该服务器为集群式架构。
可以理解的是,如果被请求客户端是网页客户端,该网页客户端发送的音视频互通请求,假设要将音视频流传输至桌面客户端所关联的请求客户端B,请求客户端B所对应下层的服务器为服务器1。
具体的,由于是网页客户端发送的音视频互通请求,网页客户端所对应的服务器为音视频互通系统中的服务器,获取网页客户端请求互通的请求客户端为请求客户端B。
首先需要判断音视频互通系统中的服务器与请求客户端B是否处于同一局域网,如果不是,说明需要先进行服务器之间的转发,才可以将音视频流转发至请求客户端B。因此,将音视频流从音视频互通系统中的服务器转发至下一服务器,也即服务器1。
另外的,在进行音视频流的传输过程中,需要对其编码格式的转换,以适应于在网页客户端、桌面客户端以及服务器之间的音视频流的传输。
具体的,该服务器可以根据请求客户端的地址信息(例如,IP地址或者MAC地址)等,确定将该适配音视频流发送至请求客户端所需的传输路径,例如,从本机服务器转发至服务器A,从服务器A转发至服务器B,从服务器B直发至请求客户端。进而,可以确定服务器A为与请求客户端匹配的下一服务器。
示例性的,假设被请求客户端为网页客户端,将该网页客户端设置为客户端A,现在需要将向请求客户端,也即客户端B进行音视频流的发送。目标编码格式为H.264编码格式,也即桌面客户端的编码格式为H.264编码格式、以及网页客户端的编码格式为VP8编码格式。具体的,客户端A对应的编码格式为VP8编码格式。
首先,客户端A向同一局域网内的服务器发送音视频互通请求,音视频互通系统中的服务器通过解析该音视频互通请求,与客户端A通过基于WebRTC中的SIP或者SDP协议进行媒体协商,当媒体协商通过后,可以得到客户端A请求互通的客户端B。
进一步的,如果确定客户端A和客户端B未位于同一局域网内,则音视频互通系统中的服务器将客户端A采集的VP8编码格式的实时音视频流转换为H.264编码格式的适配音视频流,具体的,H.264编码格式为桌面客户端A所采集实时音视频流的编码格式。
相应的,音视频互通系统中的服务器将适配音视频流,转发至与客户端B匹配的下一服务器。
本发明实施例所提供的技术方案,通过响应于同一局域网内的被请求客户端发送的音视频互通请求;在媒体协商通过后,获取被请求客户端请求互通的请求客户端,并检测是否与请求客户端位于同一局域网内;若否,则在被请求客户端的客户端类型与目标编码格式不适配时,将采集到的实时音视频流转换为目标编码格式的适配音视频流;并转发至与请求客户端匹配的下一服务器。通过上述方法,解决了被请求客户端和请求客户端由于视频编码格式不一致而造成的音视频不能互通的问题。可以实现被请求客户端和请求客户端两者之间灵活地进行音视频的交互,扩充了音视频互通系统的适用场景,极大的满足了用户的音视频互通需求。
在本实施例的一个可选的实施方式中,在检测确定不与所述请求客户端位于所述同一局域网内之后,还包括:在所述被请求客户端的客户端类型与所述目标编码格式相适配时,将所述被请求客户端采集的实时音视频流,转发至与所述请求客户端匹配的所述下一服务器。
其中,客户端类型可以包括桌面类型或者网页类型,当客户端类型为桌面类型时,则确定请求客户端为一个桌面客户端;当客户端类型为网页类型时,则确定请求客户端为一个网页客户端。桌面类型可以是请求客户端通过下载好的固定软件进行登录的类型。网页类型可以是请求客户端通过输入网址,在网址对应的网页上进行登录的类型。
具体的,如果请求客户端与服务器不位于同一局域网中,则该服务器不可及直接将所需发送的音视频流直发至请求客户端。又由于被请求客户端的客户端类型与目标编码格式相适配,说明被请求客户端为桌面客户端,因此可以将被请求客户端采集的实时音视频流,转发至与请求客户端匹配的下一服务器。
可以理解的是,当将音视频流准发至目标的下一服务器,需要接着判断请求客户端的类型。如果请求客户端为桌面客户端,则可以直接将音视频流转发至该请求客户端。但是如果请求客户端为网页客户端,需要将音视频流进行编码格式的转换之后,才可以发送至该请求客户端。
示例性的,假设被请求客户端为桌面客户端,将其命名为客户端A,现在需要将向请求客户端,也即客户端B进行音视频流的发送。目标编码格式(也即桌面客户端的编码格式)为H.264编码格式,以及网页客户端的编码格式为VP8编码格式。具体的,客户端A对应的编码格式为H.264编码格式。
首先,在客户端A的客户端类型与目标编码格式相适配时,将客户端A采集的实时音视频流,转发至与客户端B匹配的所述下一服务器;
进一步的,需要判断客户端B的客户端类型,如果客户端B为桌面客户端时,说明客户端B采用的编码格式为H.264编码格式,因此可以直接从该下一服务器转发至客户端B。
相应的,如果客户端B为网页客户端时,说明客户端B采用的编码格式为VP8编码格式,因此从该下一服务器转发至客户端B,需要将音视频流从H.264编码格式转换为VP8编码格式之后,才可以转发至客户端B。
这样设置的好处在于:通过在所述被请求客户端的客户端类型与所述目标编码格式相适配时,将所述被请求客户端采集的实时音视频流,转发至与所述请求客户端匹配的所述下一服务器。这样可以更加准确地在被请求客户端的客户端类型与目标编码格式相适配时可以进行音视频流的交互。
具体的应用场景
如图1b所示,假设被请求客户端为网页客户端,命名为客户端A,现在需要将向请求客户端,也即客户端B进行音视频流的发送。目标编码格式(也即桌面客户端的编码格式)为H.264编码格式,以及网页客户端的编码格式为VP8编码格式。具体的,客户端A对应的编码格式为VP8编码格式。假设确定客户端A和客户端B未位于同一局域网内。客户端A对应的是服务器A,如果向客户端B进行音视频流的发送,需要先将该音视频流转发于与客户端B所对应的服务器B上,再转发至客户端B中。当然,假设客户端B位于服务器N上,需要进行服务器的多次转发到达客户端B上。
实施例二
图2为本发明实施例二提供的另一种音视频互通方法的流程图。本实施例以上述各实施例为基础进行优化,在本实施例中,增加了音视频互通系统中的服务器与请求客户端位于同一局域网内的实现方式。
相应的,该方法具体包括如下步骤:
S210、响应于同一局域网内的被请求客户端发送的音视频互通请求,与所述被请求客户端进行媒体协商。
S220、在媒体协商通过后,获取所述被请求客户端请求互通的请求客户端。
S230、检测是否与所述请求客户端位于所述同一局域网内;若是,则执行S240;若否,则执行S270。
S240、检测所述请求客户端和所述被请求客户端的客户端类型是否一致;若是,则执行S250;若否,则执行S260。
S250、将所述实时音视频流直发至所述请求客户端。
S260、按照所述请求客户端的客户端类型,对所述实时音视频流的编码格式进行转换,并将转化后的视频流直发至所述请求客户端。
本实施例中的另一个可选的实施方式,当音视频互通系统中的服务器与请求客户端位于同一局域网内,需要检测请求客户端和被请求客户端的客户端类型是否一致。如果一致,也就是说请求客户端和被请求客户端的客户端类型可以均为桌面客户端,也可以均为网页客户端,因此将实时音视频流直接从被请求客户端发送至请求客户端即可。
进一步的,如果不一致,也就是当被请求客户端为桌面客户端时,请求客户端为网页客户端;也可以是被请求客户端为网页客户端时,请求客户端为桌面客户端。
具体的,当被请求客户端为桌面客户端时,请求客户端为网页客户端,按照请求客户端的客户端类型为网页客户端,对实时音视频流的编码格式进行转换,并将转化后的视频流直发至请求客户端。被请求客户端为网页客户端时,请求客户端为桌面客户端,按照请求客户端的客户端类型为桌面客户端,对实时音视频流的编码格式进行转换,并将转化后的视频流直发至请求客户端。
S270、在所述被请求客户端的客户端类型与目标编码格式不适配时,将所述被请求客户端采集的实时音视频流转换为所述目标编码格式的适配音视频流。
S280、将所述适配音视频流,转发至与所述请求客户端匹配的下一服务器。
在本实施例中,假设被请求客户端为桌面客户端,获取被请求客户端请求互通的请求客户端,设置为请求客户端C。
首先,检测是否与请求客户端C位于同一局域网内,如果位于同一局域网,需要获取请求客户端C的客户端类型。当请求客户端C为桌面客户端时,说明请求客户端C和被请求客户端的客户端类型一致,则可以将音视频流直接从桌面客户端发送至请求客户端C。进一步的,当请求客户端C为网页客户端时,说明请求客户端C和被请求客户端的客户端类型不一致,则需要按照请求客户端C的客户端类型为网页客户端,对实时音视频流的编码格式进行转换,并将转化后的视频流直发至请求客户端C。
相应的,确定与请求客户端C不位于同一局域网,由于被请求客户端为桌面客户端,与目标编码格式适配,则将被请求客户端采集的实时音视频流,转发至与请求客户端C匹配的所述下一服务器。
另外的,假设被请求客户端为网页客户端,又确定与请求客户端C不位于同一局域网,可以知道被请求客户端的客户端类型与目标编码格式不适配,因此需要将被请求客户端采集的实时音视频流转换为目标编码格式的适配音视频流,并将适配音视频流转发至与请求客户端C匹配的下一服务器。
本发明实施例所提供的技术方案,通过响应于同一局域网内的被请求客户端发送的音视频互通请求,与所述被请求客户端进行媒体协商;在媒体协商通过后,获取所述被请求客户端请求互通的请求客户端,并检测是否与所述请求客户端位于所述同一局域网内;若是,则检测所述请求客户端和所述被请求客户端的客户端类型是否一致;若是,则将所述实时音视频流直发至所述请求客户端;若否,则按照所述请求客户端的客户端类型,对所述实时音视频流的编码格式进行转换,并将转化后的视频流直发至所述请求客户端;若不与所述请求客户端位于所述同一局域网内,则在所述被请求客户端的客户端类型与目标编码格式不适配时,将所述被请求客户端采集的实时音视频流转换为所述目标编码格式的适配音视频流;将所述适配音视频流,转发至与所述请求客户端匹配的下一服务器。这样可以更加具体地确定请求客户端和被请求客户端两者之间位于同一局域网的音视频流的交互,扩充了现有音视频流互通系统的适用场景,提高了用户良好的体验效果。
实施例三
图3为本发明实施例三提供的另一种音视频互通方法的流程图。本实施例以上述各实施例为基础进行优化,在本实施例中,增加了服务器对接收到其他服务器转发的转发音视频流进行处理的实现方式。
相应的,该方法具体包括如下步骤:
S310、在接收到其他服务器转发的所述目标编码格式的转发音视频流时,获取与所述转发音视频流匹配的目标请求客户端。
其中,转发音视频流可以是音视频互通系统中的服务器接收到其他服务器发送的视频流。目标请求客户端可以是音视频互通系统中的服务器通过解析得到转发音视频流需要发送到的请求客户端。
S320、检测是否与所述目标请求客户端位于所述同一局域网内,若否,执行S330,若是,执行S340。
S330、将所述转发音视频流,转发至与所述目标请求客户端匹配的所述下一服务器。
S340、获取所述目标请求客户端的客户端类型。
S350、如果所述目标请求客户端的客户端类型与所述目标编码格式相适配,则将所述转发音视频流直发至所述目标请求客户端。
S360、如果所述目标请求客户端的客户端类型与所述目标编码格式不相适配,则按照所述目标请求客户端的客户端类型,对所述转发音视频流的编码格式进行转换,并将转化后的音视频流直发至所述目标请求客户端。
示例性的,假设音视频互通系统中的服务器中的客户端E(可以是桌面客户端或者网页客户端)接收到H.264编码格式的转发音视频流,通过解析得到转发音视频流对应的目标请求客户端为客户端F。
进一步的,音视频互通系统中的服务器需要检测是否与客户端F位于同一局域网内。如果与客户端F未位于同一局域网内,则音视频互通系统中的服务器将转发音视频流,转发至与客户端F匹配的下一服务器即可。
相应的,如果与客户端F位于同一局域网内,则获取客户端F的客户端类型。如果确定客户端F的客户端类型为桌面类型,需要判定客户端F的客户端类型是否与目标编码格式相适配。可以知道的是,客户端F的客户端类型与目标编码格式相适配,则将转发音视频流直发至客户端F。如果确定客户端F的客户端类型为网页类型,可以知道的是,客户端F的客户端类型与目标编码格式不相适配,则需要按照客户端F的客户端类型,对转发音视频流的编码格式进行转换,也即将并将H.264编码格式转换为VP8编码格式,转化后的音视频流直发至客户端F。
本发明实施例所提供的技术方案,通过在接收到其他服务器转发的所述目标编码格式的转发音视频流时,获取与所述转发音视频流匹配的目标请求客户端,并检测是否与所述目标请求客户端位于所述同一局域网内;若是,则获取所述目标请求客户端的客户端类型;如果所述目标请求客户端的客户端类型与所述目标编码格式相适配,则将所述转发音视频流直发至所述目标请求客户端;如果所述目标请求客户端的客户端类型与所述目标编码格式不相适配,则按照所述目标请求客户端的客户端类型,对所述转发音视频流的编码格式进行转换,并将转化后的音视频流直发至所述目标请求客户端。这样可以确定当接收到其他服务器转发的转发音视频流的处理方法,可以实现将接收到的转发音视频流进行再发送,实现在被请求客户端和请求客户端中进行音视频流的多次转发,这样可以更加多元化地实现被请求客户端和请求客户端两者之间音视频的交互,扩充了现有音视频互通系统的适用场景。
实施例四
图4是本发明实施例四提供的一种音视频互通装置的结构图,本实施例所提供的一种音视频互通装置可以通过软件和/或硬件来实现,可配置于服务器中来实现本发明实施例中的一种音视频互通方法。如图4所示,该装置具体可包括:媒体协商模块410、同一局域网检测模块420、适配音视频流转换模块430和适配音视频流转发模块440。
其中,媒体协商模块410,用于响应于同一局域网内的被请求客户端发送的音视频互通请求,与所述被请求客户端进行媒体协商;
同一局域网检测模块420,用于在媒体协商通过后,获取所述被请求客户端请求互通的请求客户端,并检测是否与所述请求客户端位于所述同一局域网内;
适配音视频流转换模块430,用于若检测不与所述请求客户端位于所述同一局域网内,则在所述被请求客户端的客户端类型与目标编码格式不适配时,将所述被请求客户端采集的实时音视频流转换为所述目标编码格式的适配音视频流;
适配音视频流转发模块440,用于将所述适配音视频流,转发至与所述请求客户端匹配的下一服务器。
本发明实施例所提供的技术方案,通过响应于同一局域网内的被请求客户端发送的音视频互通请求;在媒体协商通过后,获取被请求客户端请求互通的请求客户端,并检测是否与请求客户端位于同一局域网内;若否,则在被请求客户端的客户端类型与目标编码格式不适配时,将采集到的实时音视频流转换为目标编码格式的适配音视频流;并转发至与请求客户端匹配的下一服务器。通过上述方法,解决了被请求客户端和请求客户端由于视频编码格式不一致而造成的音视频不能互通的问题。可以实现被请求客户端和请求客户端两者之间灵活地进行音视频的交互,扩充了音视频互通系统的适用场景,极大的满足了用户的音视频互通需求。
在上述各实施例的基础上,还包括,客户端类型检测模块,可以具体用于:在检测是否与所述请求客户端位于所述同一局域网内之后,若是,则检测所述请求客户端和所述被请求客户端的客户端类型是否一致;若是,则将所述实时音视频流直发至所述请求客户端;若否,则按照所述请求客户端的客户端类型,对所述实时音视频流的编码格式进行转换,并将转化后的视频流直发至所述请求客户端。
在上述各实施例的基础上,还包括,音视频流转发模块,可以具体用于:在检测确定不与所述请求客户端位于所述同一局域网内之后,在所述被请求客户端的客户端类型与所述目标编码格式相适配时,将所述被请求客户端采集的实时音视频流,转发至与所述请求客户端匹配的所述下一服务器。
在上述各实施例的基础上,还包括,请求客户端获取单元,可以具体用于:在接收到其他服务器转发的所述目标编码格式的转发音视频流时,获取与所述转发音视频流匹配的目标请求客户端,并检测是否与所述目标请求客户端位于所述同一局域网内;若是,则获取所述目标请求客户端的客户端类型;如果所述目标请求客户端的客户端类型与所述目标编码格式相适配,则将所述转发音视频流直发至所述目标请求客户端;如果所述目标请求客户端的客户端类型与所述目标编码格式不相适配,则按照所述目标请求客户端的客户端类型,对所述转发音视频流的编码格式进行转换,并将转化后的音视频流直发至所述目标请求客户端。
在上述各实施例的基础上,还包括,转发音视频流转发模块,可以具体用于:检测到不与目标请求客户端位于同一局域网内,则将所述转发音视频流,转发至与所述目标请求客户端匹配的所述下一服务器。
在上述各实施例的基础上,还可以用于,所述客户端类型包括:桌面客户端和网页客户端;其中,所述桌面客户端与所述目标编码格式相匹配。
在上述各实施例的基础上,可以具体用于:所述目标编码格式为H.264编码格式;所述媒体协商为基于会话发起协议或者会话描述协议的媒体协商。
上述音视频互通装置可执行本发明任意实施例所提供的音视频互通方法,具备执行方法相应的功能模块和有益效果。
实施例五
图5是本发明实施例五提供的一种计算机设备的结构示意图。如图5所示,该设备包括处理器510、存储器520、输入装置530和输出装置540;设备中处理器510的数量可以是一个或多个,图5中以一个处理器510为例;设备中的处理器510、存储器520、输入装置530和输出装置540可以通过总线或其他方式连接,图5中以通过总线连接为例。
存储器520作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的音视频互通方法对应的程序指令/模块(例如,媒体协商模块410、同一局域网检测模块420、适配音视频流转换模块430和适配音视频流转发模块440)。处理器510通过运行存储在存储器520中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的音视频互通方法,该方法包括:响应于同一局域网内的被请求客户端发送的音视频互通请求,与所述被请求客户端进行媒体协商;在媒体协商通过后,获取所述被请求客户端请求互通的请求客户端,并检测是否与所述请求客户端位于所述同一局域网内;若否,则在所述被请求客户端的客户端类型与目标编码格式不适配时,将所述被请求客户端采集的实时音视频流转换为所述目标编码格式的适配音视频流;将所述适配音视频流,转发至与所述请求客户端匹配的下一服务器。
存储器520可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器520可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器520可进一步包括相对于处理器510远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置530可用于接收输入的数字或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入。输出装置540可包括显示屏等显示设备。
实施例六
本发明实施例六还提供一种包含计算机可读存储介质,所述计算机可读指令在由计算机处理器执行时用于执行一种音视频互通方法,该方法包括:响应于同一局域网内的被请求客户端发送的音视频互通请求,与所述被请求客户端进行媒体协商;在媒体协商通过后,获取所述被请求客户端请求互通的请求客户端,并检测是否与所述请求客户端位于所述同一局域网内;若否,则在所述被请求客户端的客户端类型与目标编码格式不适配时,将所述被请求客户端采集的实时音视频流转换为所述目标编码格式的适配音视频流;将所述适配音视频流,转发至与所述请求客户端匹配的下一服务器。
当然,本发明实施例所提供的一种包含计算机可读存储介质,其计算机可读指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的音视频互通方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述音视频互通装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种音视频互通方法,其特征在于,由音视频互通系统中的服务器执行,音视频互通系统中的音视频流以目标编码格式在不同服务器间传输,所述方法包括:
响应于同一局域网内的被请求客户端发送的音视频互通请求,与所述被请求客户端进行媒体协商;
在媒体协商通过后,获取所述被请求客户端请求互通的请求客户端,并检测是否与所述请求客户端位于所述同一局域网内;
若否,则在所述被请求客户端的客户端类型与目标编码格式不适配时,将所述被请求客户端采集的实时音视频流转换为所述目标编码格式的适配音视频流;
将所述适配音视频流,转发至与所述请求客户端匹配的下一服务器。
2.根据权利要求1所述的方法,其特征在于,在检测是否与所述请求客户端位于所述同一局域网内之后,还包括:
若是,则检测所述请求客户端和所述被请求客户端的客户端类型是否一致;
若是,则将所述实时音视频流直发至所述请求客户端;
若否,则按照所述请求客户端的客户端类型,对所述实时音视频流的编码格式进行转换,并将转化后的视频流直发至所述请求客户端。
3.根据权利要求1所述的方法,其特征在于,在检测确定不与所述请求客户端位于所述同一局域网内之后,还包括:
在所述被请求客户端的客户端类型与所述目标编码格式相适配时,将所述被请求客户端采集的实时音视频流,转发至与所述请求客户端匹配的所述下一服务器。
4.根据权利要求1所述的方法,其特征在于,还包括:
在接收到其他服务器转发的所述目标编码格式的转发音视频流时,获取与所述转发音视频流匹配的目标请求客户端,并检测是否与所述目标请求客户端位于所述同一局域网内;
若是,则获取所述目标请求客户端的客户端类型;
如果所述目标请求客户端的客户端类型与所述目标编码格式相适配,则将所述转发音视频流直发至所述目标请求客户端;
如果所述目标请求客户端的客户端类型与所述目标编码格式不相适配,则按照所述目标请求客户端的客户端类型,对所述转发音视频流的编码格式进行转换,并将转化后的音视频流直发至所述目标请求客户端。
5.根据权利要求4所述的方法,其特征在于,在检测是否与所述目标请求客户端位于所述同一局域网内之后,还包括:
若否,则将所述转发音视频流,转发至与所述目标请求客户端匹配的所述下一服务器。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述客户端类型包括:桌面客户端和网页客户端;
其中,所述桌面客户端与所述目标编码格式相匹配。
7.根据权利要求1-5任一项所述的方法,其特征在于,所述目标编码格式为H.264编码格式;
所述媒体协商为基于会话发起协议或者会话描述协议的媒体协商。
8.一种音视频互通装置,其特征在于,由音视频互通系统中的服务器执行,音视频互通系统中的音视频流以目标编码格式在不同服务器间传输,所述装置包括:
媒体协商模块,用于响应于同一局域网内的被请求客户端发送的音视频互通请求,与所述被请求客户端进行媒体协商;
同一局域网检测模块,用于在媒体协商通过后,获取所述被请求客户端请求互通的请求客户端,并检测是否与所述请求客户端位于所述同一局域网内;
适配音视频流转换模块,用于若检测不与所述请求客户端位于所述同一局域网内,则在所述被请求客户端的客户端类型与目标编码格式不适配时,将所述被请求客户端采集的实时音视频流转换为所述目标编码格式的适配音视频流;
适配音视频流转发模块,用于将所述适配音视频流,转发至与所述请求客户端匹配的下一服务器。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-7中任一项所述的音视频互通方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1-7中任一项所述的音视频互通方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210955815.XA CN115334059A (zh) | 2022-08-10 | 2022-08-10 | 一种音视频互通方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210955815.XA CN115334059A (zh) | 2022-08-10 | 2022-08-10 | 一种音视频互通方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115334059A true CN115334059A (zh) | 2022-11-11 |
Family
ID=83921508
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210955815.XA Pending CN115334059A (zh) | 2022-08-10 | 2022-08-10 | 一种音视频互通方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115334059A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116016458A (zh) * | 2023-03-28 | 2023-04-25 | 四川蜀通信息科技有限公司 | 一种基于webrtc实现网页端的音视频交互方法及装置 |
-
2022
- 2022-08-10 CN CN202210955815.XA patent/CN115334059A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116016458A (zh) * | 2023-03-28 | 2023-04-25 | 四川蜀通信息科技有限公司 | 一种基于webrtc实现网页端的音视频交互方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10893080B2 (en) | Relaying multimedia conferencing utilizing software defined networking architecture | |
EP2863632B1 (en) | System and method for real-time adaptation of a conferencing system to current conditions of a conference session | |
CN108289187B (zh) | 网络直播接入视频会议方法及系统 | |
US9035991B2 (en) | Collaboration system and method | |
US20130282820A1 (en) | Method and System for an Optimized Multimedia Communications System | |
CN106941629B (zh) | 基于sip+rtp与rtmp协议互通的实时直播方法 | |
CN101924772B (zh) | 支持跨网络、跨终端实现多媒体会话合并的通信方法 | |
CN110475094B (zh) | 视频会议处理方法、装置及可读存储介质 | |
US9825997B2 (en) | Mediator for optimizing the transmission of media contents between a multimedia resource function and a plurality of terminals | |
EP3059945A1 (en) | Method and system for video surveillance content adaptation, and central server and device | |
Xue et al. | A WebRTC-based video conferencing system with screen sharing | |
WO2016144366A1 (en) | Real-time transport protocol (rtp) media conference server routing engine | |
WO2021073155A1 (zh) | 视频会议方法、装置、设备及存储介质 | |
CN115334059A (zh) | 一种音视频互通方法、装置、设备及存储介质 | |
CN111083428A (zh) | 音视频数据处理方法、装置、计算机设备及存储介质 | |
CN111614927A (zh) | 视频会话建立法、装置、电子设备及存储介质 | |
WO2011120368A1 (zh) | 在电信网络中提供实时视频业务的方法、服务器和系统 | |
CN116248644A (zh) | 一种基于WebRTC推流技术的优化方法 | |
CN108616760B (zh) | 一种基于浏览器的直播方法、服务器、主播端和用户端 | |
CN111193941B (zh) | 一种媒体数据的传输方法、装置、设备及存储介质 | |
CN111787417B (zh) | 基于人工智能ai的音视频的传输控制方法及相关设备 | |
CN110719435B (zh) | 一种进行终端会议的方法和系统 | |
CN111064916A (zh) | 一种视频通话的方法、装置、电子设备及存储介质 | |
CN110769183B (zh) | 基于视联网的视频点播方法、链路建立方法、装置及系统 | |
CN111404908B (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 |