CN113179447A - 用于网页播放媒体流的回声消除的方法、装置及设备 - Google Patents
用于网页播放媒体流的回声消除的方法、装置及设备 Download PDFInfo
- Publication number
- CN113179447A CN113179447A CN202110378714.6A CN202110378714A CN113179447A CN 113179447 A CN113179447 A CN 113179447A CN 202110378714 A CN202110378714 A CN 202110378714A CN 113179447 A CN113179447 A CN 113179447A
- Authority
- CN
- China
- Prior art keywords
- media stream
- audio
- audio data
- stream
- end object
- 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
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000012544 monitoring process Methods 0.000 claims abstract description 6
- 230000006870 function Effects 0.000 claims description 18
- 230000001360 synchronised effect Effects 0.000 claims description 8
- 230000003993 interaction Effects 0.000 abstract description 6
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 23
- 230000002452 interceptive effect Effects 0.000 description 16
- 238000005516 engineering process Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000002592 echocardiography Methods 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 125000004432 carbon atom Chemical group C* 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/439—Processing of audio elementary streams
- H04N21/4398—Processing of audio elementary streams involving reformatting operations of audio signals
-
- 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
-
- 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)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computational Linguistics (AREA)
- Quality & Reliability (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本申请通过一种用于网页播放媒体流的回声消除的方法、装置及设备,首先获取所述媒体流中的音频数据,接着创建循环脚本,在所述循环脚本中包含近端对象和远端对象,其中,所述近端对象用于获取所述音频数据,所述远端对象用于监听所述近端对象的状态,然后创建媒体流,当所述远端对象监听到所述近端对象发送所述音频数据,从所述近端对象获取所述音频数据,并构建所述媒体流的音频流,最后创建音频元素,将所述媒体流确定为所述音频元素的源内容,以实现所述网页播放媒体流的本地播放及回声消除。通过该方法,可将网页播放媒体流的声音作为回声消除,不会被传输至远端,大大提升了一些网络交互应用场景下的用户体验。
Description
技术领域
本申请涉及网络多媒体处理技术领域,尤其涉及一种用于网页播放媒体流的回声消除的技术。
背景技术
随着网络传输速度的提升,以及上网成本的下降,网络带宽和流量对于网络视频的限制已经不那么明显,包括通过网络实现音视频互动等的互联网视频应用已经成为人们日常工作和生活中的一部分。
在通过网络实现音视频互动过程中,不可避免会产生回声。通常各种在线互动的应用或浏览器中会采用AEC(Automatic Echo Cancellation,自动回声消除)技术,以该在线互动的应用或网页发送至扬声器播放的音频数据为依据,根据所处环境的回声路径特征,模拟出回声数据,从麦克风采集到的音频数据中滤除模拟出的回声数据,以实现回声消除。AEC技术的原理如图1所示。
然而在一些音视频互动的应用场景中,比如,在本地打开一个网页播放媒体流的同时在另一个网页上与他人进行在线互动聊天,本地网页播放媒体流的声音若不是通过耳机而是通过扬声器播放,则会被本地麦克风采集到,这也是一种回声。对于某些浏览器来说,比如chrome,由于该声音不是在线互动聊天中产生的,不是通过在线互动聊天网页播放到扬声器的音频数据,无法通过浏览器的AEC功能消除,当进行在线互动聊天时会和本地聊天声音一起通过网络传输给远端。同样地,若远端设备其它网页播放的声音也是通过扬声器而不是耳机播放,则当在另一个网页上进行在线互动聊天时,其麦克风也会采集到该声音,无法通过其浏览器的AEC功能将其作为回声加以消除,而是通过网络传输至本地。使得此类在线交互应用场景下的用户体验不佳。
发明内容
本申请的目的是提供一种用于网页播放媒体流的回声消除的方法、装置及设备,用以解决一些在线交互应用场景下的回声消除的技术问题。
根据本申请的一个方面,提供了一种用于网页播放媒体流的回声消除的方法,其中,所述方法包括:
获取所述媒体流中的音频数据;
创建循环脚本,在所述循环脚本中包含近端对象和远端对象,其中,所述近端对象用于获取所述音频数据,所述远端对象用于监听所述近端对象的状态;
创建媒体流,当所述远端对象监听到所述近端对象发送所述音频数据,则从所述近端对象获取所述音频数据,并构建所述媒体流的音频流;
创建音频元素,将所述媒体流确定为所述音频元素的源内容,以实现所述网页播放媒体流的本地播放及回声消除。
可选地,其中,所述获取所述媒体流中的音频数据包括:
基于获取的所述媒体流,获取音频流;
基于所述音频流,获取所述音频数据。
可选地,其中,所述基于所述音频流,获取所述音频数据包括:
基于音频解码器,将所述音频流解码成所述音频数据。
可选地,其中,所述创建音频元素,将所述媒体流确定为所述音频元素的源内容,以实现所述网页播放媒体流的本地播放及回声消除包括:
创建音频元素,将所述媒体流确定为所述音频元素的源内容,以实现本地播放;
基于浏览器的回声消除功能,确定所述远端对象获取的音频数据对应的回声参考音频数据;
从本地收录的音频数据中删除所述回声参考音频数据,以实现所述网页播放媒体流的回声消除。
可选地,其中,所述获取所述媒体流中的音频数据还包括:获取所述媒体流中的视频数据,并同步所述视频数据及所述音频数据;
其中,所述方法还包括:
将所述视频数据发送至显示源,以实现与所述音频数据本地同步播放。
可选地,其中,所述获取所述媒体流中的视频数据包括:
基于获取的所述媒体流,获取视频流;
基于所述视频流,获取所述视频数据。
可选地,所述所述基于所述视频流,获取所述视频数据包括:
基于视频解码器,将所述视频流解码成所述视频数据。
根据本申请的另一方面,还提供了一种用于网页播放媒体流的回声消除的装置,其中,所述装置包括:
第一模块,用于获取所述媒体流中的音频数据;
第二模块,用于创建循环脚本,在所述循环脚本中包含近端对象和远端对象,其中,所述近端对象用于获取所述音频数据,所述远端对象用于监听所述近端对象的状态;
第三模块,用于创建媒体流,当所述远端对象监听到所述近端对象发送所述音频数据,从所述近端对象获取所述音频数据,并构建所述媒体流的音频流;
第四模块,用于创建音频元素,将所述媒体流确定为所述音频元素的源内容,以实现所述网页播放媒体流的本地播放及回声消除。
可选地,其中,所述第一模块还包括:
用于获取所述媒体流中的视频数据,并同步所述视频数据及所述音频数据;
其中,所述装置还包括:
第五模块,用于将所述视频数据发送至显示源,以实现与所述音频数据本地同步播放。
与现有技术相比,本申请通过一种用于网页播放媒体流的回声消除的方法、装置及设备,首先获取所述媒体流中的音频数据,接着创建循环脚本,在所述循环脚本中包含近端对象和远端对象,其中,所述近端对象用于获取所述音频数据,所述远端对象用于监听所述近端对象的状态,然后创建媒体流,当所述远端对象监听到所述近端对象发送所述音频数据,从所述近端对象获取所述音频数据,并构建所述媒体流的音频流,最后创建音频元素,将所述媒体流确定为所述音频元素的源内容,以实现所述网页播放媒体流的本地播放及回声消除。通过该方法,可消除本地音频播放源,如扬声器,播放的网页媒体流所产生的回声,使得网页播放媒体流的声音不会被传输至远端,大大提升了一些网络交互应用场景下的用户体验。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1示出AEC自动回声消除技术的原理图;
图2示出根据本申请一个方面的一种用于网页播放媒体流的回声消除的方法流程图;
图3示出根据本申请一个方面的一种用于网页播放媒体流的回声消除装置示意图;
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
下面结合附图对本发明作进一步详细描述。
在本申请一个典型的配置中,系统各模块和可信方均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
为更进一步阐述本申请所采取的技术手段及取得的效果,下面结合附图及优选实施例,对本申请的技术方案,进行清楚和完整的描述。
图2示出本申请一个方面的一种用于网页播放媒体流的回声消除的方法流程图,其中,一个实施例的方法包括:
S21获取所述媒体流中的音频数据;
S22创建循环脚本,在所述循环脚本中包含近端对象和远端对象,其中,所述近端对象用于获取所述音频数据,所述远端对象用于监听所述近端对象的状态;
S23创建媒体流,当所述远端对象监听到所述近端对象发送所述音频数据,从所述近端对象获取所述音频数据,并构建所述媒体流的音频流;
S24创建音频元素,将所述媒体流确定为所述音频元素的源内容,以实现所述网页播放媒体流的本地播放及回声消除。
在本申请中,所述方法通过设备1执行,所述设备1为集成了支持AEC技术的浏览器的计算机设备和/或云,具有AEC功能。其中,所述计算机设备包括但不限于智能手机、平板电脑、PAD、个人计算机、笔记本电脑、工业计算机、网络主机、单个网络服务器、多个网络服务器集;所述云由基于云计算(Cloud Computing)的大量计算机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个虚拟超级计算机。
在此,所述计算机设备和/或云仅为举例,其他现有的或者今后可能出现的设备和/或资源共享平台如适用于本申请也应包含在本申请的保护范围内,在此,以引用的方式包含于此。
在该实施例中,设备1通过具有AEC功能的浏览器网页播放媒体流,同时通过其它网页与远端设备2进行在线音频或音视频互动,其中,设备2也是集成了具有AEC功能的浏览器的计算机设备和/或云。比如,在该实施例的一个应用场景中,设备1集成了具有AEC功能的chrome浏览器,用户A使用设备1,打开chrome浏览器的一个html5标签页a播放在线音乐或其它媒体流,通过设备1的扬声器或与设备1电连接的其它扬声设备播放,同时,在另一个html5标签页b中与使用设备2的用户B进行在线互动聊天,采用所述方法,利用chrome浏览器本身的AEC功能将html5标签页a中的媒体流中的声音通过本地音频播放源,如扬声器,播放出来所产生的回声进行消除,避免该声音被传送至设备2。
在所述步骤S21中,设备1获取网页播放媒体流中的音频数据。比如,在上述应用场景中,设备1获取chrome浏览器html5标签页a播放媒体流中的音频数据。
可选地,其中,所述步骤S21包括:
基于获取的所述媒体流,获取音频流;
基于所述音频流,获取所述音频数据。
其中,设备1获取到媒体流,比如hls/dash、mp4或者flv格式的媒体流,然后将媒体流解封装,获得其中的音频流,再基于音频流,获取音频数据。
可选地,其中,所述基于所述音频流,获取所述音频数据包括:
基于音频解码器,将所述音频流解码成所述音频数据。
其中,通过音频解码器,比如采用多线程解码、高解码效率的webassembly音频解码器,将音频流解码成音频数据,该音频数据通常是标准数字音频数据,即PCM(Pulse CodeModulation,脉冲编码调制)音频数据,是未经压缩的音频采样数据裸流。
继续在该实施例中,在所述步骤S22中,在设备1中增加一个循环脚本,在该循环脚本中包含近端对象和远端对象,其中,所述近端对象用于获取所述音频数据,所述远端对象用于监听所述近端对象的状态。
比如,继续在上述应用场景中,原来标签页a在播放媒体流时,是将其中的音频流解封装出来,解码成音频数据后直接发送至AudioDestinationNode节点,通过本地音频播放源,如扬声器,播放。在该实施例中,可以在设备1中增加一个webrtc循环脚本,利用浏览器本身的AEC功能消除回声。例如,在设备1的chrome浏览器html5标签页a的网页脚本中增加一个webrtc循环,在该webrtc循环中配置两个RTCPeerConnection对象,分别作为近端RTCPeerConnection对象和远端RTCPeerConnection对象。在步骤S21中获取的音频数据先存放在一个中间节点,比如MediaStreamAudioDestinationNode节点,然后通过近端RTCPeerConnection对象从中间节点获取到音频数据,以将标签页a播放媒体流的声音纳入webrtc循环,通过远端RTCPeerConnection对象来监听近端RTCPeerConnection对象的数据收发状态。
也可以采用其它支持AEC功能的API在网页脚本中增加相关内容,以实现上述功能。在此,不作限定。
继续在所述实施例中,在所述步骤S23中,设备1创建一个新的媒体流,当步骤S22中的远端对象监听到近端对象发送音频数据时,从所述近端对象获取所述音频数据,并将该音频数据构建为该媒体流的音频流。比如,继续在上述应用场景中,可以在设备1的浏览器html5标签页a的网页脚本中创建一个媒体流,当远端RTCPeerConnection对象监听到近端RTCPeerConnection对象发送过来的音频数据后,则从所述近端RTCPeerConnection对象获取该音频数据,以用于基于浏览器的回声消除功能,确定对应的回声参考音频数据,并将该音频数据编码封装后作为该媒体流的音频流,以构建该媒体流的音频流。
继续在所述实施例中,在所述步骤S24中,设备1创建网页新的音频元素,将创建的媒体流作为该音频元素的源内容,,从而实现该网页播放媒体流的本地播放及回声消除。比如,继续在上述应用场景中,可以在设备1的chrome浏览器html5标签页a的网页脚本中创建一个<audio>音频元素,将步骤S23中的媒体流作为该<audio>音频元素的srcObject属性,实现本地播放,同时利用chrome浏览器本身的AEC功能,确定标签页a播放媒体流的声音的回声参考音频数据,实现将本地播放的标签页a的声音从本地收录的声音中作回声消除,不会被传送至远端用户B。
可选地,其中,所述步骤S24包括:
创建音频元素,将所述音频流确定为所述音频元素的源内容,以实现本地播放;
基于浏览器的回声消除功能,确定所述远端对象获取的音频数据对应的回声参考音频数据;
从本地收录的音频数据中删除所述回声参考音频数据,以实现所述网页播放媒体流的回声消除。
比如,继续在上述应用场景中,在设备1的chrome浏览器html5标签页a的网页脚本中创建一个音频元素,将步骤S23中的媒体流作为该音频元素的音频源内容,以实现本地音频播放源,如扬声器,播放,被本地声音收录设备,比如麦克风收录后,设备1收到的远端音频数据包含两部分:基于所述远端对象获取的标签页a播放媒体流的音频数据,以及标签页b收到的包含远端用户B声音的音频数据,chrome浏览器基于其本身的回声消除功能,会以远端音频数据为依据,模拟出回声参考音频数据,从设备1的麦克风采集的音频数据中删除回声参考音频数据,使得不但标签页b中包含的远端用户B的声音不会被传送至远端用户B,标签页a中播放媒体流的声音也不会被传送至远端用户B。即用户A在设备1上一边用标签页a播放媒体流,一边用标签页b与远端用户B在线互动聊天时,即使不用耳机,标签页a播放媒体流的声音虽然会被麦克风采集到,但会作为回声被消除,不会被传送至远端用户B,实现标签页a播放媒体流的本地播放及回声消除。
可选地,当所述媒体流还包括视频流时,所述步骤S21还包括:
获取所述媒体流中的视频数据,并同步所述视频数据及所述音频数据;
其中,所述方法还包括:
将所述视频数据发送至显示源,以实现与所述音频数据本地同步播放。
比如,在上述实施例的另一个应用场景中,设备1集成了具有AEC功能的chrome浏览器,用户A使用设备1,打开chrome浏览器的一个html5标签页a播放在线电影或进行在线视频会议,通过设备1的本地音频播放源,如扬声器或与设备1电连接的其它扬声设备,播放声音,同时,在另一个html5标签页b中与使用设备2的用户B进行在线互动聊天。设备1会获取chrome浏览器html5标签页a播放媒体流中的音频数据和视频数据,并同步所述视频数据及所述音频数据,然后将视频数据发送至设备1的显示器或与设备1电连接的其它显示设备,将音频数据发送至设备1的本地音频播放源,如扬声器或与设备1电连接的其它扬声设备,以实现本地同步播放。
进一步地,在本申请的另一个实施例中,有若干个网页在播放媒体流,则在每一个网页中创建相应的所述循环脚本、媒体流及音频元素,将每个网页播放媒体流的音频数据纳入webrtc循环,基于每个网页播放媒体流的音频数据构建该网页新创建的媒体流的音频流,作为该网页新创建的音频元素的源内容,在本地播放后被本地声音收录设备,如麦克风,收录后每个网页播放媒体流的声音都会被当做回声被消除,以实现每个网页播放媒体流的本地播放及回声消除,提升在线交互的用户体验。
可选地,其中,所述获取所述媒体流中的视频数据包括:
基于获取的所述媒体流,获取视频流;
基于所述视频流,获取所述视频数据。
其中,设备1获取到媒体流,比如hls/dash、mp4或者flv格式的媒体流,然后将媒体流解封装,获得其中的音频流和视频流,再基于音频流和视频流,获取音频数据和视频数据。
可选地,其中,所述基于所述视频流,获取所述视频数据包括:
基于视频解码器,将所述视频流解码成所述视频数据。
其中,通过音频解码器和视频解码器,比如采用多线程解码、高解码效率的webassembly音频解码器和视频解码器,将音频流解码成音频数据,通常是标准数字音频数据,即PCM音频数据,将视频流解码成视频数据,通常是YUV帧格式的视频数据。
图3示出根据本申请另一个方面的一种用于网页播放媒体流的回声消除的装置示意图,其中,一个实施例的所述装置包括:
第一模块31,用于获取所述媒体流中的音频数据;
第二模块32,用于创建循环脚本,在所述循环脚本中包含近端对象和远端对象,其中,所述近端对象用于获取所述音频数据,所述远端对象用于监听所述近端对象的状态;
第三模块33,用于创建媒体流,当所述远端对象监听到所述近端对象发送所述音频数据,从所述近端对象获取所述音频数据,并构建所述媒体流的音频流;
第四模块34,用于创建音频元素,将所述媒体流确定为所述音频元素的源内容,以实现所述网页播放媒体流的本地播放及回声消除。
其中,所述装置集成在设备中,所述设备与上述设备1相同。
比如,在一个应用场景中,所述设备是集成了chrome浏览器的计算机设备,用户A使用设备1,打开chrome浏览器的一个html5标签页a播放在线音乐或其它媒体流,通过设备1的扬声器或与设备1电连接的其它扬声设备播放,同时,在另一个html5标签页b中与使用设备2的用户B进行在线互动聊天。采用前述方法,该装置的第一模块31获取chrome浏览器html5标签页a播放媒体流中的音频数据;该装置的第二模块32在chrome浏览器html5标签页a的网页脚本中创建webrtc循环,在该webrtc循环中配置两个RTCPeerConnection对象,分别作为近端RTCPeerConnection对象和远端RTCPeerConnection对象,将第一模块31获取的音频数据先保存在一个中间节点,比如MediaStreamAudioDestinationNode节点,然后通过近端RTCPeerConnection对象从中间节点获取到音频数据,通过远端RTCPeerConnection对象来监听近端RTCPeerConnection对象的状态;该装置的第三模块33创建一个新的媒体流,当第二模块32创建的webrtc循环中的远端RTCPeerConnection对象监听到近端RTCPeerConnection对象从MediaStreamAudioDestinationNode节点获取到音频数据后发送该音频数据,从所述近端RTCPeerConnection对象获取该音频数据,并构建该媒体流的音频流,以作为远端音频数据一部分;该装置的第四模块34为chrome浏览器html5标签页a创建一个<audio>音频元素,将第三模块33创建的媒体流作为该<audio>音频元素的srcObject属性,以作为本地音频播放源的内容实现本地播放,被本地声音收录设备,如麦克风,收录后,利用chrome浏览器的AEC功能,确定第三模块33中远端RTCPeerConnection对象获取的音频数据对应的回声参考音频数据,从本地收录的音频数据中删除该回声参考音频数据,以实现标签页a播放媒体流的声音回声消除,不会被传送至远端用户B。
可选地,其中,若网页播放媒体流还包含视频数据,则所述第一模块31还用于获取所述媒体流中的视频数据,并同步所述视频数据及所述音频数据,所述装置还包括:
第五模块35,用于所述视频数据发送至显示源,以实现与所述音频数据本地同步播放。
比如,在上述实施例的另一个应用场景中,设备1集成了具有AEC功能的chrome浏览器,用户A使用设备1,打开chrome浏览器的一个html5标签页a播放在线电影或进行在线视频会议,通过设备1的扬声器或与设备1电连接的其它扬声设备播放声音,同时,在另一个html5标签页b中与使用设备2的用户B进行在线互动聊天,则设备1的chrome浏览器标签页a播放媒体流包含音频数据和视频数据。所述装置的第一模块31除了获取chrome浏览器html5标签页a播放媒体流中的音频数据,还获取媒体流中的视频数据,并同步所述视频数据及所述音频数据,然后通过该装置的第五模块35,将视频数据发送至设备1的显示器或与设备1电连接的其它显示设备,将音频数据发送至设备1的扬声器或与设备1电连接的其它扬声设备,以实现在本地的同步播放。
根据本申请的又一方面,还提供了一种计算机可读介质,所述计算机可读介质存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现前述方法。
根据本申请的又一方面,还提供了一种用于网页播放媒体流的回声消除的设备,其中,该设备包括:
一个或多个处理器;以及
存储有计算机可读指令的存储器,所述计算机可读指令在被执行时使所述处理器执行如前述方法的操作。
例如,计算机可读指令在被执行时使所述一个或多个处理器:获取所述媒体流中的音频数据;创建循环脚本,在所述循环脚本中包含近端对象和远端对象,其中,所述近端对象用于获取所述音频数据,所述远端对象用于监听所述近端对象的状态;创建媒体流,当所述远端对象监听到所述近端对象发送所述音频数据,从所述近端对象获取所述音频数据,并构建所述媒体流的音频流;创建音频元素,将所述媒体流确定为所述音频元素的源内容,以实现所述网页播放媒体流的本地播放及回声消除。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
Claims (11)
1.一种用于网页播放媒体流的回声消除的方法,其特征在于,所述方法包括:
获取所述媒体流中的音频数据;
创建循环脚本,在所述循环脚本中包含近端对象和远端对象,其中,所述近端对象用于获取所述音频数据,所述远端对象用于监听所述近端对象的状态;
创建媒体流,当所述远端对象监听到所述近端对象发送所述音频数据流,从所述近端对象获取所述音频数据,并构建所述媒体流的音频流;
创建音频元素,将所述媒体流确定为所述音频元素的源内容,以实现所述网页播放媒体流的本地播放及回声消除。
2.根据权利要求1所述的方法,其特征在于,所述获取所述媒体流中的音频数据包括:
基于获取的所述媒体流,获取音频流;
基于所述音频流,获取所述音频数据。
3.根据权利要求2所述的方法,其特征在于,所述基于所述音频流,获取所述音频数据包括:
基于音频解码器,将所述音频流解码成所述音频数据。
4.根据权利要求1所述的方法,其特征在于,所述创建音频元素,将所述媒体流确定为所述音频元素的源内容,以实现所述网页播放媒体流的本地播放及回声消除包括:
创建音频元素,将所述媒体流确定为所述音频元素的源内容,以实现本地播放;
基于浏览器的回声消除功能,确定所述远端对象获取的音频数据对应的回声参考音频数据;
从本地收录的音频数据中删除所述回声参考音频数据,以实现所述网页播放媒体流的回声消除。
5.根据权利要求1所述的方法,其特征在于,所述获取所述媒体流中的音频数据还包括:获取所述媒体流中的视频数据,并同步所述视频数据及所述音频数据;
其中,所述方法还包括:
将所述视频数据发送至显示源,以实现与所述音频数据本地同步播放。
6.根据权利要求5所述的方法,其特征在于,所述获取所述媒体流中的视频数据包括:
基于获取的所述媒体流,获取视频流;
基于所述视频流,获取所述视频数据。
7.根据权利要求6所述的方法,其特征在于,所述基于所述视频流,获取所述视频数据包括:
基于视频解码器,将所述视频流解码成所述视频数据。
8.一种用于网页播放媒体流的回声消除的装置,其特征在于,所述装置包括:
第一模块,用于获取所述媒体流中的音频数据;
第二模块,用于创建循环脚本,在所述循环脚本中包含近端对象和远端对象,其中,所述近端对象用于获取所述音频数据,所述远端对象用于监听所述近端对象的状态;
第三模块,用于创建媒体流,当所述远端对象监听到所述近端对象发送所述音频数据,从所述近端对象获取所述音频数据,并构建所述媒体流的音频流;
第四模块,用于创建音频元素,将所述媒体流确定为所述音频元素的源内容,以实现所述网页播放媒体流的本地播放及回声消除。
9.根据权利要求8所述的装置,其特征在于,所述第一模块还包括:
用于获取所述媒体流中的视频数据,并同步所述视频数据及所述音频数据;
其中,所述装置还包括:
第五模块,用于将所述视频数据发送至显示源,以实现与所述音频数据本地同步播放。
10.一种计算机可读介质,其特征在于,
其上存储有计算机可读指令,所述计算机可读指令被处理器执行以实现如权利要求1至7中任一项所述的方法。
11.一种媒体流的回声消除设备,其特征在于,该设备包括:
一个或多个处理器;以及
存储有计算机可读指令的存储器,所述计算机可读指令在被执行时使所述处理器执行如权利要求1至7中任一项所述方法的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110378714.6A CN113179447A (zh) | 2021-04-08 | 2021-04-08 | 用于网页播放媒体流的回声消除的方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110378714.6A CN113179447A (zh) | 2021-04-08 | 2021-04-08 | 用于网页播放媒体流的回声消除的方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113179447A true CN113179447A (zh) | 2021-07-27 |
Family
ID=76924764
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110378714.6A Pending CN113179447A (zh) | 2021-04-08 | 2021-04-08 | 用于网页播放媒体流的回声消除的方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113179447A (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110235499A1 (en) * | 2010-02-25 | 2011-09-29 | Rajasekar Badri N | System and method for echo suppression in web browser-based communication |
CN102811310A (zh) * | 2011-12-08 | 2012-12-05 | 苏州科达科技有限公司 | 一种网络视频摄像机上话音回声抵消的控制方法及系统 |
CN103050125A (zh) * | 2011-10-12 | 2013-04-17 | 苏州阔地网络科技有限公司 | 一种网页上实现回音消除的方法 |
CN103312913A (zh) * | 2013-07-03 | 2013-09-18 | 苏州科达科技股份有限公司 | 一种消除回声的系统及方法 |
US20150249884A1 (en) * | 2012-10-15 | 2015-09-03 | Google Inc. | Post-processed reference path for acoustic echo cancellation |
CN105227900A (zh) * | 2014-06-25 | 2016-01-06 | 中兴通讯股份有限公司 | 音视频监控装置、系统及基于音视频监控装置的通话方法 |
CN109346098A (zh) * | 2018-11-20 | 2019-02-15 | 网宿科技股份有限公司 | 一种回声消除方法及终端 |
CN110246515A (zh) * | 2019-07-19 | 2019-09-17 | 腾讯科技(深圳)有限公司 | 回声的消除方法、装置、存储介质及电子装置 |
CN111583952A (zh) * | 2020-05-19 | 2020-08-25 | 北京达佳互联信息技术有限公司 | 音频处理方法、装置、电子设备及存储介质 |
US10834494B1 (en) * | 2019-12-13 | 2020-11-10 | Bestechnic (Shanghai) Co., Ltd. | Active noise control headphones |
-
2021
- 2021-04-08 CN CN202110378714.6A patent/CN113179447A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110235499A1 (en) * | 2010-02-25 | 2011-09-29 | Rajasekar Badri N | System and method for echo suppression in web browser-based communication |
CN103050125A (zh) * | 2011-10-12 | 2013-04-17 | 苏州阔地网络科技有限公司 | 一种网页上实现回音消除的方法 |
CN102811310A (zh) * | 2011-12-08 | 2012-12-05 | 苏州科达科技有限公司 | 一种网络视频摄像机上话音回声抵消的控制方法及系统 |
US20150249884A1 (en) * | 2012-10-15 | 2015-09-03 | Google Inc. | Post-processed reference path for acoustic echo cancellation |
CN103312913A (zh) * | 2013-07-03 | 2013-09-18 | 苏州科达科技股份有限公司 | 一种消除回声的系统及方法 |
CN105227900A (zh) * | 2014-06-25 | 2016-01-06 | 中兴通讯股份有限公司 | 音视频监控装置、系统及基于音视频监控装置的通话方法 |
CN109346098A (zh) * | 2018-11-20 | 2019-02-15 | 网宿科技股份有限公司 | 一种回声消除方法及终端 |
CN110246515A (zh) * | 2019-07-19 | 2019-09-17 | 腾讯科技(深圳)有限公司 | 回声的消除方法、装置、存储介质及电子装置 |
US10834494B1 (en) * | 2019-12-13 | 2020-11-10 | Bestechnic (Shanghai) Co., Ltd. | Active noise control headphones |
CN111583952A (zh) * | 2020-05-19 | 2020-08-25 | 北京达佳互联信息技术有限公司 | 音频处理方法、装置、电子设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
周卫斌等: "基于WebRTC的Android数字楼宇对讲系统回声消除", 《电声技术》 * |
张阳等: "WebRTC的回声消除技术在Android可视对讲程序中的应用", 《数字技术与应用》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6462686B2 (ja) | データ処理方法及びシステム | |
CN104780335B (zh) | 一种WebRTC P2P音视频通话的方法及装置 | |
ES2688026T3 (es) | El uso de huellas digitales para asociar datos con una obra | |
KR101365829B1 (ko) | 대화형 멀티미디어 프리젠테이션을 재생하는 방법을 수행하는 컴퓨터 실행가능 명령어들이 인코딩된 컴퓨터 판독가능 매체, 및 대화형 멀티미디어 프리젠테이션을 재생하는 프리젠테이션 시스템 및 장치 | |
WO2020233142A1 (zh) | 多媒体文件播放方法、装置、电子设备和存储介质 | |
KR20180050961A (ko) | 멀티미디어 수신 장치에서 디코딩을 수행하는 방법 및 멀티미디어 장치 | |
CN110446114B (zh) | 多媒体数据的处理装置、方法、电子设备及存储介质 | |
US8972416B1 (en) | Management of content items | |
CN105975470B (zh) | 历史记录的处理方法及装置 | |
CN104869467A (zh) | 媒体播放中的信息输出方法、装置和系统 | |
CN110198478B (zh) | 交互录播方法、系统、客户端、装置、设备及存储介质 | |
CN111629253A (zh) | 视频处理方法及装置、计算机可读存储介质、电子设备 | |
CN112822431B (zh) | 一种私密音视频通话的方法与设备 | |
JP2019050554A (ja) | 音声サービスを提供するための方法および装置 | |
CN111435600B (zh) | 用于处理音频的方法和装置 | |
WO2020042375A1 (zh) | 用于输出信息的方法和装置 | |
WO2014154097A1 (en) | Automatic page content reading-aloud method and device thereof | |
CN111356023A (zh) | 播放方式确定方法及装置 | |
KR102506604B1 (ko) | 발화 영상 제공 방법 및 이를 수행하기 위한 컴퓨팅 장치 | |
US11622164B2 (en) | System and method for streaming video/s | |
CN111918074A (zh) | 直播视频故障预警方法及相关设备 | |
CN113179447A (zh) | 用于网页播放媒体流的回声消除的方法、装置及设备 | |
Antonio | Measurement of the sound-absorption coefficient on egg cartons using the tone burst method | |
CN113329237B (zh) | 一种呈现事件标签信息的方法与设备 | |
CN113192526B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210727 |