CN114124911A - 直播回声的消除方法、计算机可读存储介质及电子设备 - Google Patents
直播回声的消除方法、计算机可读存储介质及电子设备 Download PDFInfo
- Publication number
- CN114124911A CN114124911A CN202111426308.9A CN202111426308A CN114124911A CN 114124911 A CN114124911 A CN 114124911A CN 202111426308 A CN202111426308 A CN 202111426308A CN 114124911 A CN114124911 A CN 114124911A
- Authority
- CN
- China
- Prior art keywords
- client
- stream
- live stream
- real
- time communication
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 77
- 238000003860 storage Methods 0.000 title claims description 14
- 238000004891 communication Methods 0.000 claims abstract description 125
- 238000001914 filtration Methods 0.000 claims description 31
- 230000005236 sound signal Effects 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 12
- 230000008569 process Effects 0.000 description 17
- 238000012545 processing Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 13
- 230000008030 elimination Effects 0.000 description 10
- 238000003379 elimination reaction Methods 0.000 description 10
- 230000002452 interceptive effect Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 230000001360 synchronised effect Effects 0.000 description 6
- 241000209140 Triticum Species 0.000 description 5
- 235000021307 Triticum Nutrition 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000002592 echocardiography Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 210000005069 ears Anatomy 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L2021/02082—Noise filtering the noise being echo, reverberation of the speech
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Quality & Reliability (AREA)
- Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请公开一种直播回声的消除方法,运行于第一客户端,所述消除方法包括:响应于第一客户端与第二客户端的连麦请求,其中,所述第一客户端和所述第二客户端连接于不同的云服务器;运用本地的第一实时通信引擎采集第一直播流;获取第二客户端的第二实时通信引擎采集的第二直播流;根据第二客户端的第二实时通信引擎类型,拦截本地对应的第二实时通信引擎播放所述第二直播流;将所述第一直播流和所述第二直播流混流,形成混合直播流;对所述混合直播流推流。本申请的方案拦截第二客户端的直播流在第一客户端中的播放,先进性混流之后,再对混流进行播放,有效消除了回声。
Description
技术领域
本申请涉及音视频数据处理的技术领域,具体地涉及一种直播回声的消除方法。另外,本申请还涉及相关的计算机可读存储介质和电子设备。
背景技术
在直播连麦过程中,互动端的声音在主播端播放之后,主播端采集的音频数据将会产生回声。现有技术中,通过单SDK推拉流和采集,在采集过程中实现回音消除,这会造成采集过程中时延较高的问题。在另一些技术中,主播端和互动端采集音频数据之前,先进行回声消除参数的同步,双端采集过程中独自进行回声消除,这虽然可以避免时延高的问题,但需要额外搭建回升消除的服务器,造成成本增加。
本背景技术描述的内容仅为了便于了解本领域的相关技术,不视作对现有技术的承认。
发明内容
因此,本发明实施例意图提供一种成本较低且回升消除时延低的直播回声消除方法以及相关电子设备和计算机可读存储介质。这些方案通过将接收到的直播流数据进行拦截播放,同本地采集的直播流进行混流后进行播放,消除了回声。
在本发明实施例中,提供一种直播回声的消除方法,运行于第一客户端,所述消除方法包括:
响应于第一客户端与第二客户端的连麦请求,建立第一客户端与所述第二客户端的连麦连接,其中,所述第一客户端和所述第二客户端连接于不同的云服务;
运用所述第一客户端本地的第一实时通信引擎采集第一直播流;
获取第二客户端的第二实时通信引擎推送的第二直播流;
根据第二客户端的第二实时通信引擎类型,拦截所述第一客户端本地对应的第二实时通信引擎播放所述第二直播流;
根据所述第一直播流和所述第二直播流,生成混合直播流;对所述混合直播流推流。
在本发明的实施例中,所述消除方法还包括:
运用所述第一客户端本地的第一实时通信引擎播放所述混合直播流。
在本发明的实施例中,所述根据所述第一直播流和所述第二直播流,生成混合直播流,包括:
根据所述第二直播流对所述第一直播流进行滤波;
将滤波后的第一直播流和第二直播流进行混流,形成所述混合直播流。
在本发明的实施例中,根据所述第二直播流对所述第一直播流进行滤波,包括:
将所述第二直播流的音频信号输入到训练好的滤波器中,生成滤波信号;
将所述第一直播流的音频信号减去所述滤波信号,生成滤波后的第一直播流。
在本发明的实施例中,在获取第二直播流之前,所述消除方法还包括:
获取第二客户端的第二实时通信引擎类型,初始化本地的第二实时通信引擎。
在本发明的实施例中,所述运用本地的第一实时通信引擎播放所述混合直播流,包括:
播放所述混合直播流时,将所述第二直播流作为所述第一直播流的伴奏流。
在本发明的实施例中,所述获取第二客户端的实时通信引擎推送的第二直播流,包括:
利用所述第二实时通信引擎,拉取第二客户端的实时通信引擎的推流;
拷贝所述推流以在第一客户端本地得到所述第二直播流。
在本发明的实施例中,所述第一实时通信引擎和所述第二实时通信引擎的类型不同。
在本发明的实施例中,所述消除方法还包括:
运用本地的第一实时通信引擎对所述第一直播流进行推流,用于所述第二客户端上的第一实时通信引擎拉取所述第一直播流。
在本发明的实施例中,所述形成混合直播流,包括:
根据播放时间,对齐所述第一直播流和所述第二直播流。
在本发明的实施例中,所述对所述混合直播流推流,包括:
将所述混合直播流推送到与所述第一客户端连接的云服务器。
在本发明实施例中,提供一种计算机可读存储介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现任一本发明实施例的直播回声的消除方法。
在本发明实施例中,提供一种电子设备,包括:处理器和存储有计算机程序的存储器,所述处理器被配置为在运行计算机程序时执行任一本发明实施例的直播回声的消除方法。
本发明实施例提出一种直播回声的消除方法,将相对端推流的直播流进行播放拦截,同时对相对端的推流进行拷贝用于混流,并将混流上行,推流到CDN服务器,让观众端能够拉取混流的直流流数据,用户接收到的直播流消除了回声。本实施例中的回声消除方法,能够运行到主播佩戴耳返的场景中,也可以适用到公放的场景中。通过本地进行播放拦截、混流的机制,能以低成本有效解决了跨云服务连麦的回声消除问题。
本发明实施例的其他可选特征和技术效果一部分在下文描述,一部分可通过阅读本文而明白。
附图说明
以下,结合附图来详细说明本发明的实施例,所示出的元件不受附图所显示的比例限制,附图中相同或相似的附图标记表示相同或类似的元件,其中:
图1A示出了根据本发明实施例的连麦前端界面示例图;
图1B示出了根据本发明实施例的连麦架构示例图;
图2A示出了根据本发明实施例的消除方法的示例性流程图;
图2B示出了根据本发明实施例的消除方法的客户端与服务器之间的架构示意图;
图3示出了根据本发明实施例的消除方法的另一示例性流程图;
图4示出了根据本发明实施例的消除方法中的混流流程示例性流程图;
图5示出了根据本发明实施例的消除方法中的混流流程的具体示例性流程图;
图6示出了根据本发明实施例的消除方法的另一示例性流程图;
图7示出了根据本发明实施例的消除方法中获取第二直播流的示例性流程图;
图8示出了根据本发明实施例的消除方法的另一示例性流程图;
图9示出了根据本发明实施例的消除方法中对齐示例图;
图10示出了实施根据本发明实例的消除方法的另一示例性流程图;
图11示出了实施根据本发明实例的消除装置的架构示意图;
图12示出了根据本发明实施例的电子设备的硬件结构示意图;
图13示出了根据本发明实施例的电子设备的第一操作系统示意图;
图14示出了根据本发明实施例的电子设备的第二操作系统示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合具体实施方式和附图,对本发明做进一步详细说明。在此,本发明的示意性实施方式及其说明用于解释本发明,但并不作为对本发明的限定。
在本发明实施例中,回声消除(Acoustic Echo Cancelling)是消除麦克风与扬声器因空气产生回授路径(feedback path)而产生的杂音。
在本发明实施例中,CDN(Content Delivery Network)为内容分发网络,观众从内容分发网络拉取获取直播流数据。
在本发明实施例中,SDK(Software Development Kit)为软件开发工具包,一般是一些软件工程师为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合。
在本发明实施例中,RTC(Real Time Communication)为云服务通过公有云平台提供语音通话、短信&消息和隐私保护通话能力,开放API接口或提供SDK给企业用户,可与行业应用直接集成,无需自建通信平台即可快速获取通信能力。
本发明的实施例适用于直播连麦场景,连麦直播的终端包括:原生APP、浏览器H5、浏览器WebRTC、微信小程序。本发明的实施例特别适用于互动端和主播端连接于不同的云服务器的场景。不同的云服务器生态中,可能采用不同的实时通信引擎RTC。为了实现跨通信引擎直播互动,互动端和直播端上将会运行或者安装有不同类型的实时通信引擎,以便能够及时接收跨服务器域的直播流。直播流数据包括视频数据和音频数据,在直播过程中连麦,需要传输视频数据和音频数据,而且需要保证视频与音频之间的同步播放。
本发明实施例的连麦场景前端展现如图1A所示,主播端和互动端将会展示两个端采集的视频数据,播放两端采集的音频数据。如图1B所示,连麦时,第二RTC对B用户直播流推流,通过跨云服务之后,第一客户端上的第二RTC拉流,第一客户端进行混流之后,利用第一RTC进行推流,经过CDN分发,用户C观看到由第一客户端混流的混合流;同时,第一RTC对A用户直播流推流,跨云服务之后,第二客户端的第一RTC拉流,第二客户端进行混流之后,利用第二RTC进行推流,经过CDN分发,用户D观看到由第二客户端混流的混合流。
在本发明的实施例中,如图2A、2B所示,提供了一种直播回声的消除方法,运行于第一客户端210,包括如下步骤:
S110、响应于第一客户端210与第二客户端220的连麦请求,建立第一客户端210与所述第二客户端220的连麦连接,其中,所述第一客户端210和所述第二客户端220连接于不同的云服务。
在本发明实施例中,如图2B所示,第一客户端210连接于第一云服务230,第二客户端220连接于第二云服务240,不同的云服务适用各自对应的实时通信引擎(RTC),因此客户端对直播流的推流优先使用所连接的云服务对应的实时通信引擎,例如连接到第一云服务230的客户端优先运行第一实时通信引擎推送直播流,连接到第二云服务240的客户端优先采用第二实时通信引擎推送直播流。连麦请求可以是第一客户端210向所述第二客户端220发起的请求,可以是TCP请求,建立链接后,可以将对方的ID号相互同步,以便后续获取直播流时能够根据ID号获取直播流数据。通常的,第一客户端210、第二客户端220通过UDP通信协议将直播流快速的上行到CDN,以便观众获取到直播流数据。但是在一些实施例中,采集直播流之后,可以先进行相应处理后再进行上行,本实施例中的方案便是如此,具体处理方式在下面的方案描述中将会有所涉及。
本发明实施例中第一客户端210和第二客户端220,连接到不同的云服务,优先采用各自的实时通信引擎。为了建立跨云服务直播连麦,可以进行直播流的数据转换。
S120、运用所述第一客户端本地的第一实时通信引擎采集第一直播流。
第一实时通信引擎可以是与第一云服务关联的实时通信引擎,第二实时通信引擎可以是与第二云服务关联的实时通信引擎。例如第一客户端连接到腾讯云服务,则第一客户端采用腾讯云服务提供的实时通信引擎。相对地,例如第二客户端连接到金山云服务,则第二客户端采用金山云服务提供的实时通信引擎。
在一些实施例中,由于第一客户端210优先采用第一实时通信引擎进行直播推流,以便能快速地将直播流推送到第一云服务230,实现快速分发。
S130、获取第二客户端220的实时通信引擎采集的第二直播流。
其中,第二客户端220采用第二客户端本地的第二实时通信引擎推送第二直播流,通过推流、拉流的方式将直播流传输给第一客户端210。为了进行直播流的区分,可以将第一客户端本地采集的直播流称为第一直播流,将第二客户端本地采集的直播流称为第二直播流。
在如图1B所示的实施例中,第一客户端可通过第一客户端本地的第二实时通信引擎的拉流来获取该第二直播流。
在一些实施例中,如图6所示,所述消除方法在S130之前还可以包括步骤S180确定第二客户端的第二实时通信引擎的类型,初始化第一客户端本地的第二实时通信引擎。具体地,在一些实施例中,在第一客户端210和第二客户端220产生连麦请求时,将会把自身优先使用的实时通信引擎类型进行同步。为了方便第一客户端210拉取到第二客户端220的直播流,在第一客户端210根据第二客户端当前使用的第二实时通信引擎类型,初始化在第一客户端本地部署的第二实时通信引擎,以便进行快速拉流。在一些实施例中,由于第一客户端210和第二客户端220分属于不同的云服务范围,即连接的云服务不同,第一客户端210可以通过VPN的方式与第二服务器连接,获取直播流。在一些实施方式中,第一客户端210可以通过第二实时通信引擎与第二云服务240连接,获取直播流。
在本发明的一些实施例中,在推拉流过程中可以根据协议设置推拉流的文件格式。
在一些实施例中,如图7所示,所述获取第二客户端210的实时通信引擎采集的第二直播流,包括步骤S131及步骤S132。具体地,S131、利用所述第二实时通信引擎,拉取第二客户端的第二实时通信引擎的推流。所述第一客户端210上的第二实时通信引擎初始化之后,即可通过拉取的方式获取第二客户端220采集的第二直播流。S132、拷贝所述推流,得到所述第二直播流。所述第一客户端210将获取的第二直播流进行拷贝,以便后续的混流处理。
S140、根据第二客户端的第二实时通信引擎类型,拦截本地对应的第二实时通信引擎播放所述第二直播流。
常规的实时通信引擎在拉取到直播流之后,会立即对第二直播流进行播放。例如,在常规配置中,第一客户端的第二RTC引擎拉取所述第二直播流时,第一客户端的第二RTC引擎的播放模块会立即播放该第二直播流。本实施例为了在混音时避免回声产生,将第二直播流先进行拦截,第一客户端只允许混流播放,避免了回声的产生。具体地,在本发明实施例中,第一客户端的第二RTC引擎拉取所述第二直播流后,阻止如禁用所述第一客户端的第二RTC引擎的播放模块对所述第二直播流进行播放。在此,可以将播放的音频流混流后,统一到一个实时通信引擎中进行播放,便于控制回声消除参数。本发明实施例中,对第二直播流拦截播放,利用第二直播流生成滤波信号,混流之后才将含有第二直播流中的声音播放到第一客户端的环境中,即便在第一客户端采集获取到的第一直播流中含有第二直播流中的声音,这时滤波信号已经准备好,直接进行滤波处理,就能将第二客户端的发声者的声音滤除,避免了回声的产生,如下文所述。
本发明实施例中,通过拦截第一客户端本地的第二实时通信引擎对第二直播流进行播放,避免回声产生。
S150、根据所述第一直播流210和所述第二直播流220,生成混合直播流。
在一些实施例中,所述S150可包括扩展音频轨道和视频轨道,将第二直播流中的音频和视频拷贝到扩展的音频轨道和视频轨道中。在一些实施例中,当第二直播流有左右耳音频轨时,对应地,需要对第一直播流扩展左右耳音频轨道。
在本发明的一些实施例中,混流过程包括解码、混流和编码。混流过程中还可以做抖动缓冲,目的是把多路流进行画面对齐和音画同步,同时通过缓冲对抗网络抖动,以便混合成一路流以后能够达到良好的效果。
在一些实施例中,所述形成混合直播流,包括:根据播放时间,对齐所述第一直播流和所述第二直播流。在建立连麦链接时,可以将第一客户端210和第二客户端220中的时钟进行同步,例如,如图9所示,第二客户端220发起请求时,记录的客户端时间为t2,系统记录的平均时延为T,第一客户端210接收到请求时间记录为t1(t2和t1可以具有相同参考系,例如均为联网的世界同步时间),验证|t1-(t2+T)|是否大于阈值,如果小于阈值,则根据平均时延T调整第二直播流的数据,提前时间T;如果大于阈值,则根据t1-t2来调整第二直播流的数据,从而能够较快保证第一直播流和第二直播流和同步。
本发明实施例中对齐的操作包括画面对齐和音画同步的操作,通过调整视频帧和音频帧的播放时间来实现。通过对齐,保证了观众收看的连麦直播的质量。
S160、对所述混合直播流推流。
在一些实施例中,所述对所述混合直播流推流,包括:将所述混合直播流推送到与所述第一客户端210连接的云服务,以便观众能够通过CDN获取到混合直播流数据。第一客户端210可以通过第一实时通信引擎进行推流,方便观众快速获取连麦直播信息。
本发明实施例中的直播回声的消除方法,可以适用于主播和互动端用户采用耳机收听直播流的场景,也可以适用于外放的场景。在主播和互动端采用耳机收听直播流的场景中,通过本发明实施例中的消除方法,由于主播端和互动端采用耳机收听的方式,接收到对方的直播流数据之后,不进行外放,避免了回声采集,能够有效消除主播端和互动端耳返中的回声。另一方面,拉取的第二直播流并未第一时间进行播放,而是和第一直播流进行混流,混流之后再进行播放和推送,避免第一客户端自身收听到第二直播流的回声,同时第一客户端的观众(观众客户端)也不会收听到回声。
在本发明的实施例运用到公放场景中,在本发明的一些实施例中,如图3所示,在图2A的基础上所述消除方法还包括步骤S170、运用本地的第一实时通信引擎播放所述混合直播流。
本发明实施例中,第一客户端和第二客户端连接到不同的云服务。采用不同实时通信引擎进行音视频数据传输。采用不同的实时通信引擎会面临采用同一实时通信引擎时不同的回声问题。例如,当第二直播流在第一客户端通过第二RTC引擎播放时,第一客户端的第一RTC引擎持续采集声音。那么,第一客户端采集声音时刻(T1)的第一直播流将包含采集时播放的第二直播流的声音,从而带来回声问题。而在本发明实施例的方案中,由于第一直播流通过第一RTC引擎推流,而第二直播流从第二实时通信引擎获取,不能直接将第二实时通信引擎采集的第二直播流和第一直播流做计算进行回声消除。因此,在本发明实施例中,拦截了第二实时通信引擎播放第二直播流,并将第二直播流拷贝到第一客户端本地以便第一RTC引擎使用,在第一客户端的第一RTC引擎进行混流播放之后,在后续的第一RTC引擎采集过程中能利用被拦截且拷贝到本地的第二直播流进行第一客户端周围环境的回声消除。作为举例,在本发明实施例中,在第一客户端采集声音的时刻(T1),对采集的(混流)声音进行滤波处理时,此时刻的混流声音中的第二直播流声音对应T0时刻拷贝的第二直播流声音(T1=T0+ΔT,ΔT例如为混流处理时间),此时混流声音中的第二直播流声音对应的滤波信号(已本地拷贝的第二直播流)已准备好,由此可以获得较好的回声消除效果。由此,拦截第二实时通信引擎直接播放第二直播流方能促成T1时刻消除T0时刻的回音。如果不进行拦截,第二实时通信引擎直接进行播放第二直播流,在第一实时通信引擎进行采集和处理时,由于第一实时通信引擎还未获得好滤波信号,无法对采集第一直播流进行滤波消除回声处理。
在一些实施例中,所述运用本地的第一实时通信引擎播放所述混合直播流,包括:播放所述混合直播流时,将所述第二直播流作为所述第一直播流的伴奏流。在一些实施例中,可以将第一直播流的播放音量大于第二直播流的播放音量。
在本发明的公放的场景中,由于第一客户端播放了第二客户端采集的第二直播流,推拉流之后,第二客户端一侧将会收听到自身几秒前说过的话,造成了回声。本发明实施例中,可以进行回声消除技术克服此问题。
下面基于回声产生的原理,对消除回声的方法进行介绍。
对于近端的用户,接收到远端用户的声音,声音通过喇叭播放出来,会在房间里面发生传播,被天花板、地面和窗户等反射后,连同近端用户的声音一起被麦克风采集进去,再传到远端。远端用户在一两秒的延迟后,会再次听到自己的声音,这对远端用户来说就是回声。为了保障用户体验,需要做回声消除。对于音视频引擎来讲,麦克风采集进来的声音里包含了远端用户的回声和近端用户真实的声音是很难区分的:这两个声波都是从空气中采集进来的没有差别的声音,声音混合,难以通过通道分辨。为了消除回声,可以通过滤波处理方式来实现回声消除。
将远端传过来的原音是设置为参考信号,它和回声信号相关,但是并不完全一样。由于回声是参考信号播放出来以后,在空气中经过反弹和叠加以后形成的,和参考信号有相关性,但不等同。可以理解为回声信号和参考信号有一定函数关系,可以通过建立函数关系求解出来参考信号和回声信号的关系。通过参考信号作为函数的输入,模拟出回声信号,再把麦克风采集到的声音信号减去模拟回声信号,最终达到回声消除的目的。可以通过滤波器来实现函数关系,滤波器会不断的学习和收敛,模拟回声信号,使模拟回声尽量逼近回声信号,然后将麦克风采集进来的声音信号减去模拟回声信号,达到回声消除的目的。
如上所述,为了克服公放中采集到的第一直播流数据中含有前几个时刻第二直播流中的声音,本发明的实施例在混流过程中,进行滤波处理。具体地,如图4所示,所述根据所述第一直播流和所述第二直播流,生成混合直播流,包括:
S151、根据所述第二直播流对所述第一直播流进行滤波;S152、将滤波后的第一直播流和第二直播流进行混流,形成所述混合直播流。
通过滤波之后,消除了所述混合直播流中第一客户端前几个时刻播放出来的声音。
本发明实施例将第二直播流的音频信号作为参考信号,对第一直播流进行滤波处理,避免了第二客户端再次收到第二直播流中的声音,避免产生回声。具体地,如图5所示,所述步骤S151包括如下步骤:
S1511、将所述第二直播流的音频信号输入到训练好的滤波器中,生成滤波信号;S1512、将所述第一直播流的音频信号减去所述滤波信号,生成滤波后的第一直播流。
本发明实施例在获取到第二直播流时,拦截第二直播流播放,输入到训练好的滤波器中,生成滤波信号。第一直播流采集之后,基于滤波信号进行滤波处理,避免混合流播放时回声产生,这样第二客户端在收到第一直播流时,不会听到自己之前发过的声音,避免了在第二客户端产生回声的情况。
本发明实施例中,先进行拦截第二直播流,混流之后再进行第一客户端的混合流播放,后续第一客户端采集时,滤波信号已准备好,保证了滤波效果。
本发明的实施例中,所述第一实时通信引擎和所述第二实时通信引擎的类型不同,通过连麦之后的初始化调用不同类型的实时通信引擎。
本发明实施例中,第二客户端220也可采用类似的方式拉取第一直播流的数据,将第一直播流与第二直播流进行混流,同时拦截第一直播流数据的播放,将混合流通过第二实时通信引擎推流。为了便于第二客户端消除回声,如图8所示,所述消除方法还包括:
S190、运用本地的第一实时通信引擎对所述第一直播流进行推流,以使所述第二客户端上的第一实时通信引擎拉取所述第一直播流。所述第二客户端220可以通过本地部署的第一实时通信引擎从第一服务器230拉取第一直播流数据,然后进行拦截第一直播流和混流,避免产生了回声。
本发明实施例中步骤S190可在步骤S110执行之后与其他步骤同步进行。
本发明实施例中的直播回声消除方法,有效解决了连麦过程中产生的回声,在第二客户端拦截播放第一直播流,播放混流的方式,避免了在第二客户端产生与第一直播流关联的回声。有效消除了第二客户端(主播)或第二客户端的观众(观众客户端)收听到的回声。
如图10所示,本发明实施例从用户的角度来进行描述,包括A用户和B用户,A用户与B用户进行连麦。A用户和B用户属于不同云服务,A用户和B用户采用不同RTC服务连麦。具体步骤为:
A用户和B用户进行连麦;建立第一客户端(A用户所用端)与所述第二客户端(B用户所用端)的连麦连接,其中,所述第一客户端和所述第二客户端连接于不同的云服务。
A用户RTC采集第一直播流;运用所述第一客户端本地的第一实时通信引擎采集第一直播流。所述第一实时通信引擎可以是与云服务关联的通信引擎。
A用户根据B用户的RTC服务初始化本地的直播SDK;第一客户端根据第二客户端的RTC类型初始化本地的第二RTC(第二实时通信引擎)。
A用户拉取B用户的第二直播流;利用所述第二实时通信引擎,拉取第二客户端的实时通信引擎的推流;所述第一客户端上的第二实时通信引擎初始化之后,即可通过拉取的方式获取第二客户端采集的第二直播流。拷贝所述推流,获取所述第二直播流。所述第一客户端将获取的第二直播流进行拷贝,以便后续的混流处理。
A用户获取住B用户的RTC服务拉流的数据ByteB,拷贝数据ByteB;根据第二客户端的实时通信引擎类型,拦截本地对应的第二实时通信引擎播放所述第二直播流;常规的实时通信引擎在拉取到第二直播流之后,即将对直播流进行播放。本实施例为了避免回声产生,将第二直播流先进性拦截,只允许混流本地播放,避免了回声的产生。
将数据ByteB混音合入当期A用户的RTC服务中的播放伴奏流中,作为A用户SDK采集的参考系播放;利用第一实时通信引擎将混合直播流播放。
A用户的直播SDK上行混合流数据,上行的混合流数据消除了回声。在混合流产生过程中,将ByteB作为参考信号,对A用户的第一直播流进行滤波,滤波之后进行混流,使得第一客户端的观众收到或第二客户端拉取的混流中消除了第二直播流造成的回声。
在本发明实施例中,如图11所示,示出一种直播回声的消除装置400,包括:
连麦响应模块410,被配置为响应于第一客户端与第二客户端的连麦请求,建立第一客户端与第二客户端的连麦连接。所述第一客户端和所述第二客户端连接于不同的云服务器;
采集模块420,被配置为运用第一客户端本地的第一实时通信引擎采集第一直播流;
获取模块430,被配置为获取第二客户端的第二实时通信引擎采集的第二直播流;
拦截模块440,被配置为根据第二客户端的第二实时通信引擎类型,拦截本地对应的第二实时通信引擎播放所述第二直播流;
混合模块450,被配置为根据第一直播流和所述第二直播流,生成混合直播流;
推流模块460,别配置为对所述混合直播流推流。
在一些实施例中,所述消除装置还包括:播放模块470,被配置为运用本地的第一实时通信引擎播放所述混合直播流。
在一些实施例中,所述消除装置中混合模块450,具体还配置为:
根据所述第二直播流对所述第一直播流进行滤波;
将滤波后的第一直播流和第二直播流进行混流,形成所述混合直播流。
在一些实施例中,所述混合模块450进行滤波时,按照如下方法进行滤波:
将所述第二直播流的音频信号输入到训练好的滤波器中,生成滤波信号;
将所述第一直播流的音频信号减去所述滤波信号,生成滤波后的第一直播流。
在一些实施例中,所述消除装置还包括:
初始化模块480,被配置为获取第二客户端的实时通信引擎类型,初始化本地的第二实时通信引擎。
在一些实施例中,所述播放模块460,具体被配置为播放所述混合直播流时,将所述第二直播流作为所述第一直播流的伴奏流。
在一些实施例中,所述获取模块430,具体被配置为利用所述第二实时通信引擎,拉取第二客户端的实时通信引擎的推流;拷贝所述推流,获取所述第二直播流。
在一些实施例中,所述第一实时通信引擎和所述第二实时通信引擎的类型不同。
在一些实施例中,所述消除装置400还包括外域推流模块490,被配置为运用本地的第一实时通信引擎对所述第一直播流进行推流,以使所述第二客户端上与所述第一实时通信引擎类型对应的第一实时通信引擎拉取所述第一直播流。
在一些实施例中,所述混合模块450,具体被配置为根据播放时间,对齐所述第一直播流和所述第二直播流。
在一些实施例中,所述推流模块470,具体被配置为将所述混合直播流推送到与所述第一客户端连接的云服务器。
在一些实施例中,所述消除装置可以结合任一实施例的消除方法的特征,反之亦然,在此不赘述。
在本发明实施例中,提供一种电子设备,包括:处理器和存储有计算机程序的存储器,所述处理器被配置为在运行计算机程序时执行任一本发明实施例的直播回声的消除方法。
在本发明的实施例中提供了一种电子设备。在本发明的一个优选实施例中,所述电子设备为移动终端,优选可以为手机。仅作为示例性的实现方案,图12示出了触屏终端、如移动终端800的一个具体实施例的硬件结构示意图;而图13和图14示出了电子设备、如移动终端的一个具体实施例的系统结构示意图。
在所示出的实施例中,移动终端800可以包括处理器801、外部存储器接口812、内部存储器810、通用串行总线(USB)接口813、充电管理模块814、电源管理模块815、电池816、移动通信模块840、无线通信模块842、天线839和841、音频模块834、扬声器835、受话器836、麦克风837、耳机接口838、按键809、马达808、指示器807、用户标识模块(SIM)卡接口811、显示屏805、摄像装置806,以及传感器模块820等。
可以理解的是,本申请实施例示意的结构并不构成对移动终端800的具体限定。在本申请另一些实施例中,移动终端800可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
在一些实施例中,处理器801可以包括一个或一个以上处理单元。在一些实施例中,处理器801可以包括以下之一或以下至少两种的组合:应用处理器(AP)、调制解调处理器、基带处理器、图形处理器(GPU)、图像信号处理器(ISP)、控制器、存储器、视频编解码器、数字信号处理器(DSP)、基带处理器、神经网络处理器(NPU)等。不同的处理单元可以是独立的器件,也可以集成在一个或一个以上处理器中。
控制器可以是移动终端800的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器中的存储器为高速缓冲存储器。该存储器可以保存处理器刚用过或循环使用的指令或数据。如果处理器需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器801的等待时间,因而提高了系统的效率。
NPU为神经网络(NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断地自学习。
GPU为图像处理的微处理器,连接显示屏和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
数字信号处理器(ISP)用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。
在一些实施例中,处理器801可以包括一个或多个接口。接口可以包括集成电路(I2C)接口、集成电路内置音频(I2S)接口、脉冲编码调制(PCM)接口、通用异步收发传输器(UART)接口、移动产业处理器接口(MIPI)、通用输入输出(GPIO)接口、用户标识模块(SIM)接口、通用串行总线(USB)接口等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对移动终端的结构限定。在本申请另一些实施例中,移动终端也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
移动终端800的无线通信功能可以通过天线839和841、移动通信模块840、无线通信模块842、调制解调处理器或基带处理器等实现。
移动终端800可以通过音频模块、扬声器、受话器、麦克风、耳机接口,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。
麦克风用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风发声,将声音信号输入到麦克风。
传感器模块820可包括下述传感器中的一个或多个:
压力传感器823配置为感受压力信号,将压力信号转换成电信号。
气压传感器824用于测量气压。
磁传感器825包括霍尔传感器。
陀螺仪传感器827可以用于确定移动终端800的运动姿态。
加速度传感器828可检测移动终端800在各个方向上加速度的大小。
距离传感器829可配置为测量距离。
接近光传感器821可以包括例如发光二极管(LED)和光检测器,例如光电二极管。
环境光传感器822用于感知环境光亮度。
指纹传感器831可配置为采集指纹。
触摸传感器832可以设置于显示屏,由触摸传感器与显示屏组成触摸屏,也称“触控屏”。触摸传感器用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定根据本发明实施例所述的触摸事件类型,例如单击、双击、长按、旋转、滑动、缩放等等。
骨传导传感器833可以获取振动信号。
电子设备(计算机)、如移动终端的软件操作系统可以采用分层架构、事件驱动架构、微核架构、微服务架构或云架构。
本文所示的实施例以分层架构的分别以iOS和安卓操作系统平台为例,示例性说明移动终端的软件结构。但可以想到,本文的实施例可以在不同的软件操作系统中实施。
在图13所示的实施例中,本发明实施例的方案可以采用iOS操作系统。iOS操作系统采用四层架构,由上到下依次为可触摸层(Cocoa Touch layer)910、媒体层(Medialayer)920、核心服务层(Core Services layer)930以及核心操作系统层(Core OS layer)940。触摸层910为应用程序开发提供了各种常用的框架并且大部分框架与界面有关,其负责用户在iOS设备上的触摸交互操作。媒体层提供应用中视听方面的技术,如图形图像、声音技术、视频以及音视频传输相关的框架等。核心服务层提供给应用所需要的基础的系统服务。核心操作系统层包含大多数低级别接近硬件的功能。
在本发明实施例中,UIKit是可触摸层910的用户界面框架。
图14是安卓操作系统结构示意图,本发明实施例的方案可以采用安卓操作系统。分层架构将软件分成若干个层,层间通过软件接口通信。在一些实施例中,将安卓系统分为四层,从上至下分别为应用程序层1010、应用程序框架层1020、安卓运行时(Runtime)和系统库1030、以及内核层1040。
应用程序层1010可以包括一系列应用程序包。
应用程序框架层1020为应用程序层的应用程序提供应用编程接口(API)和编程框架。应用程序框架层包括一些预先定义的函数。
窗口管理器用于管理窗口程序。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供移动终端的通信功能。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。
安卓Runtime(运行时)包括核心库和虚拟机,安卓Runtime负责安卓系统的调度和管理。核心库包含两部分:一部分是java语言要调用的功能函数,另一部分是安卓的核心库。应用程序层和框架层运行在虚拟机中。
系统库可以包括多个功能模块。表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。
内核层1040是硬件和软件之间的层。内核层可包含显示驱动、摄像头驱动、音频接口、传感器驱动、电源管理和GPS接口。在本发明的一些实施例中,帧动画的显示可以调用显示驱动。
在本发明的一些实施例中,还可以提供一种电子设备,其包括:处理器和存储有计算机程序的存储器,所述处理器被配置为在运行计算机程序时执行任一本发明实施例的方法。
在本发明上述或下述实施例阐明的系统、装置、模块或单元,可以由计算机或其关联部件实现。根据具体情况,计算机例如可以为移动终端、智能电话、个人计算机(PC)、膝上型计算机、车载人机交互设备、个人数字助理、媒体播放器、导航设备、游戏控制台、平板电脑、可穿戴设备、智能电视、物联网系统、智能家居、工业计算机、服务器或者其组合。
在本发明的一些实施例中,还可以提供一种存储介质。在一些实施例中,所述存储介质存储有计算机程序,所述计算机程序配置成被运行时执行任一本发明实施例所述的方法。
在本发明的实施例的存储介质包括永久性和非永久性、可移动和非可移动的可以由任何方法或技术来实现信息存储的物品。存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
在本发明的实施例的方法、程序、系统、装置等,可以在单个或多个连网的计算机中执行或实现,也可以在分布式计算环境中实践。在本说明书实施例中,在这些分布式计算环境中,可以由通过通信网络而被连接的远程处理设备来执行任务。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本领域技术人员可想到,上述实施例阐明的功能模块/单元或控制器以及相关方法步骤的实现,可以用软件、硬件和软/硬件结合的方式实现。
除非明确指出,根据本发明实施例记载的方法、程序的动作或步骤并不必须按照特定的顺序来执行并且仍然可以实现期望的结果。在某些实施方式中,各步骤的多任务处理和并行/合并处理也是可以的或者可能是有利的。
在本文中,“第一”、“第二”是用于在同一实施例中区分不同的元件,不指代顺序或相对重要性。
在本文中,针对本发明的多个实施例进行了描述,但为简明起见,各实施例的描述并不是详尽的,各个实施例之间相同或相似的特征或部分可能会被省略。在本文中,“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”意指适用于根据本发明的至少一个实施例或示例中,而非所有实施例。上述术语并不必然意味着指代相同的实施例或示例。在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
已参考上述实施例具体示出并描述了本发明的示例性系统及方法,其仅为实施本系统及方法的最佳模式的示例。本领域的技术人员可以理解的是可以在实施本系统及/或方法时对这里描述的系统及方法的实施例做各种改变而不脱离界定在所附权利要求中的本发明的精神及范围。
Claims (13)
1.一种直播回声的消除方法,其特征在于,运行于第一客户端,所述消除方法包括:
响应于第一客户端与第二客户端的连麦请求,建立第一客户端与所述第二客户端的连麦连接,其中,所述第一客户端和所述第二客户端连接于不同的云服务;
运用所述第一客户端本地的第一实时通信引擎采集第一直播流;
获取第二客户端的第二实时通信引擎推送的第二直播流;
根据第二客户端的第二实时通信引擎类型,拦截所述第一客户端本地对应的第二实时通信引擎播放所述第二直播流;
根据所述第一直播流和所述第二直播流,生成混合直播流;
对所述混合直播流推流。
2.根据权利要求1所述的消除方法,其特征在于,所述根据所述第一直播流和所述第二直播流,生成混合直播流,包括:
根据所述第二直播流对所述第一直播流进行滤波;
将滤波后的第一直播流和第二直播流进行混流,形成所述混合直播流。
3.根据权利要求2所述的消除方法,其特征在于,根据所述第二直播流对所述第一直播流进行滤波,包括:
将所述第二直播流的音频信号输入到训练好的滤波器中,生成滤波信号;
将所述第一直播流的音频信号减去所述滤波信号,生成滤波后的第一直播流。
4.根据权利要求1所述的消除方法,其特征在于,还包括:
运用所述第一客户端本地的第一实时通信引擎播放所述混合直播流。
5.根据权利要求4所述的消除方法,其特征在于,所述运用第一客户端本地的第一实时通信引擎播放所述混合直播流,包括:
运用所述第一客户端本地的第一实时通信引擎播放所述混合直播流时,将所述第二直播流作为所述第一直播流的伴奏流。
6.根据权利要求1所述的消除方法,其特征在于,所述获取第二客户端的第二实时通信引擎推送的第二直播流,包括:
利用所述第二客户端的第二实时通信引擎,拉取第二客户端的第二实时通信引擎的推流;
拷贝所述推流以在第一客户端本地得到所述第二直播流。
7.根据权利要求1所述的消除方法,其特征在于,在获取第二客户端的第二实时通信引擎推送的第二直播流之前,还包括:
获取第二客户端的第二实时通信引擎类型,初始化本地的第二实时通信引擎。
8.根据权利要求1所述的消除方法,其特征在于,所述第一实时通信引擎和所述第二实时通信引擎的类型不同。
9.根据权利要求1所述的消除方法,其特征在于,还包括:
运用本地的第一实时通信引擎对所述第一直播流进行推流,以供所述第二客户端上的第一实时通信引擎拉取所述第一直播流。
10.根据权利要求1所述的消除方法,其特征在于,所述生成混合直播流,包括:
根据播放时间,对齐所述第一直播流和所述第二直播流。
11.根据权利要求1所述的消除方法,其特征在于,所述对所述混合直播流推流,包括:
将所述混合直播流推送到与所述第一客户端连接的云服务器。
12.一种计算机可读存储介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如权利要求1至11中任一所述的方法。
13.一种电子设备,其特征在于,包括:处理器和存储有计算机程序的存储器,所述处理器被配置为在运行计算机程序时执行权利要求1至11中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111426308.9A CN114124911B (zh) | 2021-11-25 | 2021-11-25 | 直播回声的消除方法、计算机可读存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111426308.9A CN114124911B (zh) | 2021-11-25 | 2021-11-25 | 直播回声的消除方法、计算机可读存储介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114124911A true CN114124911A (zh) | 2022-03-01 |
CN114124911B CN114124911B (zh) | 2024-05-10 |
Family
ID=80371036
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111426308.9A Active CN114124911B (zh) | 2021-11-25 | 2021-11-25 | 直播回声的消除方法、计算机可读存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114124911B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117499688A (zh) * | 2023-12-29 | 2024-02-02 | 淘宝(中国)软件有限公司 | 直播连麦中音视频合流处理方法、设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109600677A (zh) * | 2018-12-11 | 2019-04-09 | 网易(杭州)网络有限公司 | 数据传输方法及装置、存储介质、电子设备 |
CN111050185A (zh) * | 2018-10-15 | 2020-04-21 | 武汉斗鱼网络科技有限公司 | 直播间连麦视频混流方法、存储介质、电子设备及系统 |
US20200211720A1 (en) * | 2018-12-31 | 2020-07-02 | Engauge LLC | Surgical media streaming, archiving, and analysis platform |
CN111372121A (zh) * | 2020-03-16 | 2020-07-03 | 北京文香信息技术有限公司 | 一种回声消除方法、装置、存储介质及处理器 |
CN111883156A (zh) * | 2020-07-22 | 2020-11-03 | Oppo(重庆)智能科技有限公司 | 音频处理方法、装置、电子设备及存储介质 |
CN112822501A (zh) * | 2020-08-28 | 2021-05-18 | 腾讯科技(深圳)有限公司 | 视频直播中的信息显示方法和装置、存储介质及电子设备 |
CN113286161A (zh) * | 2021-05-19 | 2021-08-20 | 广州虎牙科技有限公司 | 一种直播方法、装置、设备及存储介质 |
-
2021
- 2021-11-25 CN CN202111426308.9A patent/CN114124911B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111050185A (zh) * | 2018-10-15 | 2020-04-21 | 武汉斗鱼网络科技有限公司 | 直播间连麦视频混流方法、存储介质、电子设备及系统 |
CN109600677A (zh) * | 2018-12-11 | 2019-04-09 | 网易(杭州)网络有限公司 | 数据传输方法及装置、存储介质、电子设备 |
US20200211720A1 (en) * | 2018-12-31 | 2020-07-02 | Engauge LLC | Surgical media streaming, archiving, and analysis platform |
CN111372121A (zh) * | 2020-03-16 | 2020-07-03 | 北京文香信息技术有限公司 | 一种回声消除方法、装置、存储介质及处理器 |
CN111883156A (zh) * | 2020-07-22 | 2020-11-03 | Oppo(重庆)智能科技有限公司 | 音频处理方法、装置、电子设备及存储介质 |
CN112822501A (zh) * | 2020-08-28 | 2021-05-18 | 腾讯科技(深圳)有限公司 | 视频直播中的信息显示方法和装置、存储介质及电子设备 |
CN113286161A (zh) * | 2021-05-19 | 2021-08-20 | 广州虎牙科技有限公司 | 一种直播方法、装置、设备及存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117499688A (zh) * | 2023-12-29 | 2024-02-02 | 淘宝(中国)软件有限公司 | 直播连麦中音视频合流处理方法、设备及存储介质 |
CN117499688B (zh) * | 2023-12-29 | 2024-05-03 | 淘宝(中国)软件有限公司 | 直播连麦中音视频合流处理方法、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114124911B (zh) | 2024-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101490548B1 (ko) | 실시간 커널 | |
CN102571315B (zh) | 一种在设备的范围内同步传感器数据的方法和系统 | |
US8990842B2 (en) | Presenting content and augmenting a broadcast | |
TWI732240B (zh) | 視頻檔案的生成方法、裝置及儲存媒體 | |
US8391671B2 (en) | Information processing device and method, recording medium, and program | |
CN107770626A (zh) | 视频素材的处理方法、视频合成方法、装置及存储介质 | |
GB2593005A (en) | Video generation method and device, electronic device and computer storage medium | |
CN107924575A (zh) | 视频序列的异步3d注释 | |
CN109194972B (zh) | 直播流获取方法、装置、计算机设备及存储介质 | |
CN109874043B (zh) | 视频流发送方法、播放方法及装置 | |
US10359988B2 (en) | Shared experience of virtual environments | |
WO2020253754A1 (zh) | 一种多终端的多媒体数据通信方法和系统 | |
WO2015096682A1 (zh) | 应用开启方法、装置和系统 | |
US20230047858A1 (en) | Method, apparatus, electronic device, computer-readable storage medium, and computer program product for video communication | |
CN112118477A (zh) | 虚拟礼物展示方法、装置、设备以及存储介质 | |
CN110958464A (zh) | 直播数据处理方法、装置、服务器、终端及存储介质 | |
JP4572615B2 (ja) | 情報処理装置および方法、記録媒体、並びにプログラム | |
CN114124911B (zh) | 直播回声的消除方法、计算机可读存储介质及电子设备 | |
KR20220109373A (ko) | 발화 영상 제공 방법 | |
CN113516991A (zh) | 基于群组会话的音频播放、设备管理方法及装置 | |
TW200838228A (en) | Virtual camera system and real-time communication method thereof | |
CN110162255B (zh) | 单机程序的运行方法、装置、设备及存储介质 | |
CN114143494A (zh) | 一种视频通信方法、电子设备和通信系统 | |
US20130093834A1 (en) | Device, Method and System for Real-time Screen Interaction in Video Communication | |
WO2024027611A1 (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 |