KR102169993B1 - 에코 억제 기법 - Google Patents
에코 억제 기법 Download PDFInfo
- Publication number
- KR102169993B1 KR102169993B1 KR1020157016515A KR20157016515A KR102169993B1 KR 102169993 B1 KR102169993 B1 KR 102169993B1 KR 1020157016515 A KR1020157016515 A KR 1020157016515A KR 20157016515 A KR20157016515 A KR 20157016515A KR 102169993 B1 KR102169993 B1 KR 102169993B1
- Authority
- KR
- South Korea
- Prior art keywords
- echo
- audio signal
- power
- received audio
- output
- Prior art date
Links
- 230000001629 suppression Effects 0.000 title claims abstract description 61
- 230000005236 sound signal Effects 0.000 claims abstract description 136
- 230000004044 response Effects 0.000 claims abstract description 57
- 238000000034 method Methods 0.000 claims abstract description 41
- 238000004590 computer program Methods 0.000 claims abstract description 6
- 238000004891 communication Methods 0.000 claims description 30
- 238000005192 partition Methods 0.000 claims description 15
- 230000001419 dependent effect Effects 0.000 claims description 5
- 230000003595 spectral effect Effects 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 claims description 2
- 238000002592 echocardiography Methods 0.000 claims description 2
- 238000005259 measurement Methods 0.000 claims description 2
- 230000005055 memory storage Effects 0.000 claims 2
- 230000001131 transforming effect Effects 0.000 claims 2
- 230000006870 function Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008054 signal transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000013213 extrapolation Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R3/00—Circuits for transducers, loudspeakers or microphones
- H04R3/002—Damping circuit arrangements for transducers, e.g. motional feedback circuits
-
- 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
- H04M—TELEPHONIC COMMUNICATION
- H04M9/00—Arrangements for interconnection not involving centralised switching
- H04M9/08—Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic
- H04M9/082—Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic using echo cancellers
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03H—IMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
- H03H17/00—Networks using digital techniques
- H03H17/02—Frequency selective networks
- H03H17/0211—Frequency selective networks using specific transformation algorithms, e.g. WALSH functions, Fermat transforms, Mersenne transforms, polynomial transforms, Hilbert transforms
- H03H17/0213—Frequency domain filters using Fourier transforms
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03H—IMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
- H03H17/00—Networks using digital techniques
- H03H17/02—Frequency selective networks
- H03H17/04—Recursive filters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W52/00—Power management, e.g. TPC [Transmission Power Control], power saving or power classes
- H04W52/02—Power saving arrangements
- H04W52/0209—Power saving arrangements in terminal devices
- H04W52/0225—Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal
- H04W52/0245—Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal according to signal strength
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Acoustics & Sound (AREA)
- Mathematical Analysis (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Pure & Applied Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Mathematical Optimization (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
- Telephone Function (AREA)
Abstract
본 발명은 에코를 억제하기 위한 방법, 사용자 장치 및 컴퓨터 프로그램 제품에 관한 것이다. 오디오 신호가 스피커로부터 출력된다. 마이크로폰은 오디오 신호를 수신하며, 여기서 수신된 오디오 신호는 출력된 오디오 신호로 인한 에코를 포함한다. 유한 임펄스 응답 필터 추정치()는 출력된 오디오 신호 및 수신된 오디오 신호에 기초하여 시간 도메인에서 동적으로 적응되어 수신된 오디오 신호 내 에코의 에코 경로(h(t))를 모델링한다. 적어도 하나의 파워 응답이 필터 추정치()로부터 결정되고, 수신된 오디오 신호 내 각 에코의 파워를 추산하는데 사용된다. 추산된 에코 파워는 수신된 오디오 신호에 에코 억제를 적용하는데 사용되어 수신된 오디오 신호 내 에코를 억제한다.
Description
장치는 주변 환경으로부터 오디오 신호를 수신하는데 사용될 수 있는 오디오 입력 장치를 가질 수 있다. 장치는 또한 주변 환경에 오디오 신호를 출력하는데 사용될 수 있는 오디오 출력 장치를 가질 수 있다. 예를 들어, 장치는 오디오 신호를 출력하기 위한 하나 이상의 스피커와 오디오 신호를 수신하기 위한 하나 이상의 마이크로폰을 가질 수 있다. 장치의 스피커로부터 출력되는 오디오 신호는 마이크로폰에 의해 수신된 오디오 신호 내 "에코(echo)"로서 수신될 수 있다. 이 에코는 수신된 오디오 신호에서 바람직하지 않은 경우가 있을 수 있다. 예를 들어, 장치는 네트워크를 통해 다른 사용자 장치와의 통신 이벤트(예컨대, 음성 또는 영상 통화)에 사용되는 사용자 장치(예컨대, 모바일폰, 태블릿, 랩탑, PC 등)일 수 있다. 통화의 원단(far-end) 신호는 사용자 장치의 스피커로부터 출력될 수도 있고 장치의 마이크로폰에 의해 수신된 오디오 신호 내 에코로서 수신될 수도 있다. 이러한 에코는 통화 중인 사용자들에게 거슬릴 수 있으며, 에코로 인해 체감 통화 품질이 저감될 수 있다. 구체적으로, 에코는, 마이크로폰에 의해 수신되어 원단으로 전송되도록 의도된 근단(near-end) 오디오 신호에 대해 간섭을 일으킬 수도 있다. 따라서, 수신된 오디오 신호 내의 에코를 억제하기 위해, 수신된 오디오 신호에 에코 소거 및/또는 에코 억제가 적용될 수 있다. 수신된 오디오 신호 내 에코의 파워(power)는 사용자 장치의 구성에 따라 변할 수 있다. 예를 들어, 사용자 장치는 모바일 폰일 수 있는데, 이 경우 수신된 오디오 신호 내 에코의 파워는 일반적으로, 모바일 폰이 "핸즈프리(hands-free)" 모드로 동작하지 않는 경우보다 모바일 폰이 "핸즈프리"로 동작 중일 경우에 더 높을 것이다.
에코 소거(echo cancellation)(또는 "에코 제거(echo subtraction)") 기법은 스피커로부터 출력되는 오디오 신호의 정보에 기초하여 마이크로폰에서 수신된 오디오 신호에 포함된 에코 신호를 추산하는 것을 목표로 한다. 그 후 수신된 오디오 신호로부터 에코 신호의 추정치가 공제될 수 있으며, 이것에 의해 수신된 오디오 신호로부터 에코의 적어도 일부를 제거할 수 있다. 에코 억제는 수신된 오디오 신호에 주파수 의존 억제를 적용하여, 수신된 오디오 신호 내의 에코를 억제하는데 사용된다. 에코 억제가 효과적으로 구현되게 하기 위해, 에코 억제기는 수신된 오디오 신호에서의 에코의 파워의 정확한 추정치를 가질 필요가 있다.
본 개요는 후속하여 발명의 상세한 설명 부분에서 설명되는 개념들 중 선택된 것들을 단순화된 형태로 소개하고자 제공되는 것이다. 본 개요는 청구항의 청구대상의 핵심적인 특징이나 필수적인 특징들을 밝히고자 함이 아니며, 청구항의 청구대상의 범위를 결정하는 데 도움이 되고자 함도 아니다.
수신된 오디오 신호 내의 에코를 억제하는 방법이 제공된다. 에코 억제의 일환으로, 에코의 에코 파워의 추정치는 에코 경로의 임펄스 응답을 근사화하도록 구성되어 있는 유한 임펄스 응답(FIR; Finite Impulse Response) 필터로부터 결정되는 파워 응답을 사용하여 결정된다. 즉, 유한 임펄스 응답 필터 추정치()는 출력된 오디오 신호 및 수신된 오디오 신호에 기초하여 시간 도메인에서 동적으로 적응되어 수신된 오디오 신호 내 에코의 에코 경로(h(t))의 임펄스 응답을 모델링한다. 적어도 하나의 파워 응답은 필터 추정치()로부터 결정된다. 파워 응답은 수신된 오디오 신호 내 각 에코의 파워를 추산하는데 사용되고, 추산된 에코 파워는 수신된 오디오 신호에 에코 억제를 적용하는데 사용되며, 이렇게 함으로써 수신된 오디오 신호 내 에코를 억제할 수 있다.
이 방법은 출력된 오디오 신호가 통화의 원단으로부터 수신된 원단 신호일 수 있는 통화(예컨대, 사용자 장치들 사이에서 오디오 데이터를 전송하도록 VoIP(voice over internet protocol)를 구현하는 통화)에 사용될 수 있고, 수신된 신호는 통화의 원단에 전송하기 위한 근단 신호 및 결과의 에코를 포함한다.
도 1은 하나 이상의 실시예에 따른 통신 시스템의 개략도를 도시한 것이다.
도 2는 하나 이상의 실시예에 따른 사용자 장치의 개략적인 블록도이다.
도 3은 하나 이상의 실시예에 따른 에코 억제에 사용하기 위한 사용자 장치의 모듈을 보여주는 기능도이다.
도 4는 하나 이상의 실시예에 따른 에코를 억제하는 프로세스에 대한 흐름도이다.
도 2는 하나 이상의 실시예에 따른 사용자 장치의 개략적인 블록도이다.
도 3은 하나 이상의 실시예에 따른 에코 억제에 사용하기 위한 사용자 장치의 모듈을 보여주는 기능도이다.
도 4는 하나 이상의 실시예에 따른 에코를 억제하는 프로세스에 대한 흐름도이다.
에코 억제를 효과적으로 구현하기 위해, 에코 억제기는 수신된 오디오 신호 내 에코의 파워에 대한 정확한 추정치를 가질 필요가 있다. 본 명세서에 기술되어 있는 바와 같이, 에코 파워는 오디오 신호를 출력하는 스피커와 출력된 오디오 신호로 인한 에코를 포함하는 오디오 신호를 수신하는 마이크로폰 사이의 에코 경로의 임펄스 응답을 근사화하도록 구성되는 FIR 필터에 기초하여 파워 응답을 이용하여 추산될 수 있다.
FIR 필터는 (FIR 필터의 파워 응답을 결정한 다음 파워 응답을 사용하여 에코 파워를 추산함으로써) 에코 파워를 추산하는 데에만 사용될 수 있고, 실제 에코 신호를 평가하는 데에는 사용되지 않는다. 이것은, FIR 필터에서의 정확도 요건이 FIR 필터가 실제 에코 신호를 평가하는데 사용될 경우에 비해 에코 파워를 추산하는데 사용될 경우에 훨씬 낮기 때문에, 유리할 수 있다. 따라서, FIR 필터로부터 (에코 신호보다) 에코 파워를 추산함으로써, VoIP 클라이언트 내 (스피커로부터의)플레이아웃과 (예컨대 마이크에서의)레코딩 측 사이의 클록 드리프트(clock-drift), 에코 경로 내에서의 비선형성 및 에코 경로 내에서의 변화와 같은 문제에 대해 에코 억제가 보다 확고하다. 본 명세서에 기술된 실시예에서, FIR 필터는 위상 정보를 포함하는 시간 도메인 데이터를 사용하여 적응된다.
도 1은 제1 사용자 장치(104)와 연관되는 제1 사용자(102)("사용자 A")와 제2 사용자 장치(110)와 연관되는 제2 사용자(108)("사용자 B")를 포함하는 통신 시스템(100)을 도시하고 있다. 다른 실시예에서, 통신 시스템(100)은 임의의 수의 사용자와 관련 사용자 장치를 포함할 수 있다. 사용자 장치(104, 110)는 통신 시스템(100) 내의 네트워크(106)를 통해 통신할 수 있으며, 이에 따라 사용자(102, 108)가 네트워크(106)를 통해 서로 통신할 수 있다. 도 1에 도시된 통신 시스템(100)은 패킷 기반 통신 시스템이지만, 다른 유형의 통신 시스템이 사용될 수도 있다. 네트워크(106)는 예컨대 인터넷일 수 있다. 각각의 사용자 장치(104, 110)는 예컨대, 모바일 폰, 태블릿, 랩탑, 개인용 컴퓨터(PC)(예컨대, Windows™, Mac OS™ 및 Linux™ PC를 포함함), 게이밍 장치, 텔레비전, PDA(personal digital assistant) 또는 네트워크(106)에 접속할 수 있는 임의의 내장형 장치일 수 있다. 사용자 장치(104)는 사용자 장치(104)의 사용자(102)로부터 정보를 수신하고 그 사용자에게 정보를 출력하도록 구성된다. 사용자 장치(104)는 디스플레이 및 스피커와 같은 출력 수단을 포함한다. 사용자 장치(104)는 또한, 키패드, 터치 스크린, 오디오 신호를 수신하기 위한 마이크로폰, 및/또는 비디오 신호의 이미지를 캡처하는 카메라와 같은 입력 수단을 포함한다. 사용자 장치(104)는 네트워크(06)에 연결된다.
사용자 장치(104)는 통신 시스템(100)과 연관된 소프트웨어 제공자에 의해 제공된 통신 클라이언트의 인스턴스를 실행한다. 통신 클라이언트는 사용자 장치(104) 내의 로컬 프로세서 상에서 실행된 소프트웨어 프로그램이다. 클라이언트는 사용자 장치(104)가 통신 시스템(100)을 통해 데이터를 송신 및 수신하도록 사용자 장치(104)에서 요구된 처리를 수행한다.
사용자 장치(110)는 사용자 장치(104)에 대응하며, 로컬 프로세서 상에서 사용자 장치(104)에서 실행된 통신 클라이언트에게 대응하는 통신 클라이언트를 실행한다. 사용자 장치(104)에서의 클라이언트가 사용자(102)가 네트워크(106)를 통해 통신할 수 있도록 요구된 처리를 수행하는 것과 동일한 방식으로, 사용자 장치(110)에서의 클라이언트는 사용자(108)가 네트워크(106)를 통해 통신할 수 있도록 요구된 처리를 수행한다. 사용자 장치(104, 110)는 통신 시스템(100) 내의 엔드포인트이다. 도 1은 명확성을 위해 2명의 사용자(102, 108)와 2개의 사용자 장치(104, 110)만 도시하고 있지만, 보다 많은 사용자들 및 사용자 장치들이 통신 시스템(100)에 포함될 수 있고, 제각기의 사용자 장치 상에서 실행된 제각기의 통신 클라이언트를 사용하여 통신 시스템(100)을 통해 통신할 수 있다.
도 2는 통신 시스템(100)을 통해 통신하기 위한 통신 클라이언트 인스턴스(206)가 실행되는 사용자 장치(104)의 상세도이다. 사용자 장치(104)는 중앙 처리 장치(CPU) 또는 "처리 모듈"(202)과, CPU에 연결되어 있는, 터치스크린으로서 구현될 수 있는 디스플레이(208)와 같은 출력 장치, 오디오 신호를 출력하는 스피커(또는 확성기)(210), 오디오 신호를 수신하기 위한 마이크로폰(212)과 같은 입력 장치, 이미지 데이터를 수신하기 위한 카메라(216), 키패드(218), 데이터를 저장하는 메모리(214), 및 네트워크(106)와의 통신을 위한 모뎀과 같은 네트워크 인터페이스(220)를 포함한다. 사용자 장치(104)는 도 2에 도시된 구성요소들 이외의 다른 구성요소들을 포함할 수도 있다. 디스플레이(208), 스피커(210), 마이크로폰(212), 메모리(214), 카메라(216), 키패드(218) 및 네트워크 인터페이스(220)는 도 2에 도시된 바와 같이 사용자 장치(104)에 통합될 수 있다. 다른 사용자 장치에서는 디스플레이(208), 스피커(210), 마이크로폰(212), 메모리(214), 카메라(216), 키패드(218) 및 네트워크 인터페이스(220) 중 하나 이상이 사용자 장치(104)에 통합되지 않고 제각기의 인터페이스를 통해 CPU(202)에 연결될 수 있다. 그러한 인터페이스의 일례가 USB 인터페이스이다. 네트워크 인터페이스(220)를 통한 네트워크(106)로의 사용자 장치(104)의 접속이 무선 접속이면, 네트워크 인터페이스(220)는 신호를 네트워크(106)로 무선 전송하고 네트워크(106)로부터 신호를 무선으로 수신하는 안테나를 포함할 수 있다.
도 2는 또한 CPU(202) 상에서 실행된 운영 체제("OS")(204)를 도시하고 있다. OS(204)의 최상단에서 실행되는 것은 통신 시스템(100)의 클라이언트 인스턴스(206)의 소프트웨어이다. 운영 체제(204)는 컴퓨터의 하드웨어 자원을 관리하며 네트워크 인터페이스를 통해 네트워크(106)에 대해 전송되는 데이터를 처리한다. 클라이언트(206)는 운영 체제(204)와 통신하며 통신 시스템을 통한 접속을 관리한다. 클라이언트(206)는 사용자(102)에게 정보를 제공하고 사용자(104)로부터 정보를 수신하는데 사용되는 클라이언트 사용자 인터페이스를 갖는다. 이런 방식으로, 클라이언트(206)는 통신 시스템(100)을 통해 사용자가 통신할 수 있게 하는데 요구되는 처리를 수행한다.
도 3 및 4와 관련하여, 이제 에코 억제 방법에 대해 설명한다. 도 3은 에코 억제 프로세스가 구현되는 방법을 보여주는 사용자 장치(104)의 일부의 기능도이고, 도 4는 에코를 억제하는 프로세스에 대한 흐름도이다.
도 3에 도시된 바와 같이, 사용자 장치(104)는 스피커(210), 마이크로폰(212), FIR 필터 모듈(302), 파워 추산 모듈(304) 및 에코 억제 모듈(306)을 포함한다. 스피커(210)로부터 출력되는 신호(x(t))는 스피커(210)의 입력에 연결된다. 본 명세서에 기술된 실시예에서는 (도면에서 참조번호 210으로 표시된)하나의 스피커만 존재하지만, 다른 실시예에서는 출력될 신호가 연결되는 스피커가 하나보다 많을 수도 있음에 유의하라. 마찬가지로, 본 명세서에 기술된 실시예에서는 (도면에서 참조번호 212로 표시된)하나의 마이크로폰만이 존재하지만, 주변 환경으로부터 오디오 신호를 수신하는 마이크로폰이 하나보다 많을 수도 있다. 스피커(210)로부터 출력될 신호는 또한 FIR 필터 모듈(302)의 제1 입력 및 파워 추산 모듈(304)의 제1 입력에 연결된다. 마이크로폰(212)의 출력은 FIR 필터 모듈(302)의 제2 입력 및 에코 억제 모듈(306)의 제1 입력에 연결된다. FIR 필터 모듈(302)의 출력은 파워 추산 모듈(304)의 제2 입력에 연결된다. 파워 추산 모듈의 출력은 에코 억제 모듈(306)의 제2 입력에 연결된다. 에코 억제 모듈(306)의 출력은 사용자 장치(104)에서의 추가 처리를 위해 (에코 억제가 적용된)수신된 신호를 제공하는데 사용된다.
단계(S402)에서, 스피커(210)로부터 출력되는 신호가 수신된다. 예를 들어, 출력되는 신호는 통신 시스템(100)을 통해 사용자들(102, 108) 간의 통화 동안 사용자 장치(110)로부터 사용자 장치(104)에서 수신된 원단 신호일 수 있다. 당해 기술 분야에 알려진 바와 같이 스피커(210)로부터 출력되기에 적합한 신호(x(t))로 도달하는 수신된 신호에 대해 수행되도록 요구되는 임의의 처리(예컨대 스피치 코덱, 디패킷화(depacketizing) 등을 이용하는 디코딩)가 수행된다. 신호(x(t))는 디지털 신호이다. 스피커(210)로부터 신호를 출력하기 전의 사용자 장치(104) 내에서의 신호의 처리의 적어도 일부는 디지털 도메인에서 수행된다. 당해 기술분야에 알려져 있는 바와 같이, 디지털-아날로그 변환기(DAC)가 스피커(210)로부터의 플레이아웃 전에 디지털 신호(x(t))에 적용된다. 마찬가지로, 아날로그-디지털 변환기(ADC)가 디지털 신호(y(t))에 도달하는 마이크로폰(212)에 의해 캡처된 신호에 적용된다.
다른 실시예에서는, 출력될 신호가 통화 중에 통신 시스템(100)을 통하지 않고 다른 장소에서부터 수신될 수 있다. 예를 들어, 출력될 신호는 메모리(214)에 저장되어 있을 수 있으며, 단계(S402)는 메모리(214)에서 이 신호를 리트리빙하는 것을 포함할 수 있다.
단계(S404)에서, 오디오 신호(x(t))가 스피커(210)로부터 출력된다. 이런 방법으로 오디오 신호(x(t))가 사용자(102)에게 출력된다.
단계(S406)에서, 마이크로폰(212)은 오디오 신호를 수신한다. 도 3에 도시된 바와 같이, 수신된 오디오 신호는 원하는 신호 또는 "주 신호(primary signal)"인 근단 신호를 포함할 수 있다. 근단 신호는 사용자가 마이크로폰(212)으로 하여금 수신하게 하고자 하는 신호이다. 그러나, 수신된 오디오 신호는 또한 단계(S404)에서 스피커(210)에서 출력된 오디오 신호로부터의 에코 신호를 포함한다. 수신된 오디오 신호는 또한 배경 잡음과 같은 잡음을 포함할 수도 있다. 그러므로, 수신된 전체 오디오 신호(y(t))는 근단 신호, 에코 및 잡음의 합으로 주어질 수 있다. 에코 및 잡음은 근단 신호에 대한 간섭으로 작용한다.
FIR 필터 모듈(302)은 출력된 오디오 신호(x(t)) 및 수신된 오디오 신호(y(t))를 입력으로서 취한다. 단계(S408)에서, FIR 필터 모듈(302)은 출력된 오디오 신호(x(t)) 및 수신된 오디오 신호(y(t))에 기초하여 시간 도메인에서 FIR 필터 추정치()를 동적으로 적응시켜 수신된 오디오 신호(y(t)) 내의 에코의 에코 경로(h(t))를 모델링한다. "에코 경로(h(t))의 임펄스 응답"은 본 명세서에서 "에코 경로(h(t))"라고도 한다.
완전히 선형인 에코 경로의 경우, 에코 경로(h(t))는 수신된 오디오 신호 내의 에코가, 예컨대, 수식 에 따라 스피커(210)에서 출력된 오디오 신호(x(t))와 어떻게 관련되는지를 나타내는데, 여기서, yecho(t)는 수신된 오디오 신호(y(t)) 내의 에코이고, Ntrue는 마이크로폰(212)에 의해 수신되는 출력된 신호(x(t))의 샘플 수이며, hn(t)는 에코 경로(h(t))를 나타내는 가중치이다. 에코 경로(h(t))는 시간 및 주파수에 따라 변할 수 있으며, 본 명세서에서는 h(t) 또는 h(t,f)로 지칭되기도 한다. 에코 경로(h(t))는 (i) 스피커(210) 및 마이크로폰(212)을 둘러싸는 현재의 환경 상황(예컨대, 스피커(210)로부터 마이크로폰(212)으로의 오디오 신호의 경로에 대한 임의의 물리적 장애물, 공기압, 온도, 바람 등이 있는지의 여부), 및 (ii) 출력 및/또는 수신될 때 신호를 변경할 수 있는 스피커(210) 및/또는 마이크로폰(212)의 특성에 의존할 수 있다.
FIR 필터 모듈(302)은, 출력된 오디오 신호(x(t))의 유한 개수(N)의 이전 값들과 현재의 값의 가중 합을 결정함으로써, 수신된 오디오 신호 내의 에코의 에코 경로(h(t))를 모델링한다. 따라서, FIR 필터 모듈(302)은 에코 경로()의 추정치를 결정하는 중에 출력된 오디오 신호(x(t))의 값을 고려하는 유한 길이(시간)를 갖는 N차 FIR 필터를 구현한다. 이런 방법으로, FIR 필터 모듈(302)은 FIR 필터 추정치()를 동적으로 적응시킨다. 에코 예측 동작은 다음 수식으로 표현되는데, 수신된 오디오 신호(y(t)) 내의 에코를 출력된 오디오 신호(x(t))의 항으로 정의한다.
그러므로, 제각기 N+1 개의 가중치()를 갖는 출력된 오디오 신호(x(t))의 N+1개의 샘플이 사용된다. N+1개의 가중치()의 집합을 본 명세서에서는 간단히 에코 경로()의 추정치라고 한다. 즉, 에코 경로()의 추정치는 N+1개의 값을 갖는 벡터이며, 여기서 FIR 필터 모듈(302)은 N차 FIR 필터를 구현하고, 신호(x(t))의 N+1개의 값(예컨대, N+1개의 프레임)을 취한다.
에코가 수신된 오디오 신호의 주요 부분인 경우, 즉 인 경우, FIR 필터 추정치()를 적응시키는 것이 보다 쉬움을 알 수 있다. 예를 들어, 일부 실시예에서 근단 신호의 파워가 에코의 파워보다 더 큰 경우(예컨대, 사용자(102)가 말하고 있는 때)를 검출하는 것이 가능할 수 있는데, 이것은 FIR 추정치()가 적응되지 않는 경우이고, 근단 신호가 수신된 오디오 신호(y(t)) 내 에코의 파워보다 작은 경우(예컨대 사용자(102)가 말하고 있지 않을 때), FIR 추정치()가 적응된다.
FIR 필터 추정치()는 FIR 필터 모듈(302)로부터 파워 추산 모듈(304)로 전달된다. 단계(S410)에서, 파워 추산 모듈(304)은 FIR 필터 추정치()로부터 적어도 하나의 파워 응답을 결정한다. 파워 응답 정보는 FIR 필터 추정치()를 분석함으로써 결정된다. 파워 응답(또는 "주파수 응답")은 에코 경로(h(t))의 파워 응답의 표시를 주파수의 함수로서 제공한다.
단계(S412)에서, 파워 추산 모듈(304)은 단계(S410)에서 결정된 파워 응답 및 입력 신호(x(t))에 기초하여 수신된 오디오 신호 내의 에코의 에코 파워를 추산한다. 단계(S410, S412)는 수신된 오디오 신호(y(t)) 내의 에코 신호(yecho)를 추산하는 것을 포함하지 않을 수 있다. 에코 파워는 시간 및 주파수의 함수로서 추산된다. 에코 억제 시에 양호한 에코 억제를 달성하기 위해 다소 낮은 정확도의 에코 파워 추산으로 충분한다. 본 명세서에 기술된 방법에 따르면, 파워 응답은 문제에 덜 민감한 방식으로 계산될 수 있다. 또한, 파워 응답은 실제 에코 경로가 추산되는 것과 상이한 방식으로 추산될 수 있다. 예를 들어, 주파수(f)에 대한 파워 응답은 그 주파수(f)에 대한 FIR 필터의 추정치를 이용하여 계산될 수 있다. 이와 달리 또는 이에 더하여, 주파수(f)에 대한 FIR 필터의 추정치는 다른 주파수(υ)(υ≠f)에 대한 파워 응답을 계산하는데 사용될 수 있다. 다시 말하면, 이 방법은 그것이 적용되는 주파수 영역 이외의 다른 주파수 영역에 대해 계산되는 외삽된 에코 경로 파워 응답을 사용하는 것을 포함할 수 있다. 이런 의미에서, 특정 주파수에 대한 파워 응답을 결정하기 위해 일부 외삽이 요구될 수도 있지만, 파워 응답은 FIR 필터 추정치에 기초하여 계산된다. 즉, 소정 주파수 영역에 대해 획득된 FIR 필터 추정치는 다른 주파수 영역에 대한 예측된(또는 외삽된) 파워 응답 추정치를 계산하는데 사용될 수 있는데, 즉, 에코 파워를 추산하는데 사용된 파워 응답이 반드시 FIR 필터의 파워 응답은 아니고 FIR 필터에 기초하여 계산되는 파워 응답(예컨대, 다른 주파수 영역에 대한)일 수도 있다.
구체적으로, FIR 필터 추정치()는 시간 도메인에서 길이 L이다. 단계(S410)는 FIR 필터 추정치()를 시간 도메인에서의 각각의 길이가 L/P인 복수의(P) 파티션으로 분할하는 것을 포함한다. FIR 필터 추정치()의 파티션들 각각은 각 파티션에 대해 주파수 도메인에서 제각기의 파워 응답()을 판단하기 위해 주파수 도메인으로 변환되고 제곱된다. 따라서, 는 파티션(p)의 주파수 응답임을 이해할 수 있다.
단계(S412)는 출력된 오디오 신호의 제각기의 복수의 프레임의 파워의 복수의 측정치의 가중 합산을 수행함으로써 수신된 오디오 신호 내의 에코의 에코 파워를 추산하는 것을 포함하는데, 합산에서의 가중치는 제각기의 파워응답()에 의해 주어진다.
따라서, 프레임(k)에 대한 수신된 오디오 신호 내의 에코의 에코 파워(PS(k,f))의 추정치는 수식 에 따라서 단계(S412)에서 추산될 수 있는데, 여기서 는 프레임(k-p)에 대한 스피커 신호의 파워 스펙트럼 밀도이다. 프레임 인덱스(k)는 시간의 측정치이며, 따라서 는 프레임 인덱스보다는 시간의 함수로 재기록되어, 에코 파워의 추정치()를 제공한다. 위 수식이 맞기 위해서는, 및 를 계산하기 위해 사용된 필터 파티션들 및 스피커 신호들의 길이가 순환 컨볼루션(circular convolution) 효과를 최소화하도록 주의깊게 선택되어야 한다. 이 선택은 h 및 스피커 입력 신호 프레임의 파티션의 길이가 필터 추정치(h)를 적응시키는데 사용된 마이크로폰 신호의 길이에 적절히 매칭됨을 보장하도록 수행되며, 이를 위해 에코 파워가 추산된다. 각 파티션이 길이(P)이고, 각각의 스피커(X) 프레임 길이가 M이며, 각 마이크로폰 신호 프레임 길이는 N이면, 순환 컨볼루션 효과를 피할 수 있는 것에 대한 통상의 요건 N+P-1<M이다. 이 선택이 바람직하지만, 본 명세서에 기술된 방법들은, 순환 컨볼루션 효과가 이들 방법에서 무시되므로, 선택에 관계없이 작동할 것이다.
이런 방식으로, VoIP 클라이언트의 시변 에코 경로()를 근사화하기 위해 스피커 및 마이크로폰 신호(x(t) 및 y(t))를 사용하여 적응된 FIR 필터 추정치()가 파워 응답()을 결정하는데 사용되며, 이 파워 응답은 그 후 출력된 오디오 신호(x(t))와 함께 시간(t) 및 주파수(f)로 에코 신호의 파워(PS(t,f))를 추산하는데 사용된다.
에코 파워의 추정치()는 파워 추산 모듈로부터 출력되고 에코 억제 모듈(306)에 의해 수신된다. 에코 억제 모듈(306)은 또한 마이크로폰(212)으로부터 오디오 신호(y(t))를 수신한다. 단계(S412)에서, 에코 억제 모듈(306)은 에코 파워의 추정치()를 사용하여 에코 억제를 수신된 오디오 신호(y(t))에 적용함으로써, 수신된 오디오 신호 내의 에코를 억제한다. 에코 파워의 추정치()는 주파수 의존적이며 에코 억제 모듈(306)에 의해 적용된 억제 또한 주파수 의존적이다.
에코 억제기의 목적은, 예컨대 VoIP 클라이언트 내 마이크로폰 신호에 존재하는 스피커 에코를, 마이크로폰(212)에 의해 픽업된 근단 사운드(비 에코 사운드)가 있는데서 에코가 감지되지 않도록/방해하지 않도록, 충분히 낮은 레벨로 억제하는 것이다. 적절한 양의 에코 억제를 선택할 수 있도록, (예컨대, 주파수 및 시간의 함수로)에코 파워의 양호한 추정치가 필요하며, 전술한 바와 같이 이것은 파워 추산 모듈(304)에 의해 에코 억제 모듈(306)에게 제공된다. 에코 억제 모듈(306)은 시간 및 주파수에 따라 변하는 신호 의존 억제를 수신된 오디오 신호(y(t))에 적용하도록 설계된다. 에코 억제 방법은 당해 기술분야에 공지되어 있다. 또한, 에코 억제 모듈(306)에 의해 적용된 에코 억제 방법은 상이한 방법으로 구현될 수 있다. 따라서, 에코 억제 방법의 정확한 세부사항은 본 명세서에서 상세하게 기술하지 않는다.
에코 억제 모듈(306)은, 사용자 장치(104)에서의 추가적인 처리를 위해, 억제된 에코를 갖는 수신된 신호를 출력한다. 예를 들어, 에코 억제 모듈(306)로부터 출력된 신호는 클라이언트(206)에 의해 처리(예컨대, 인코딩 및 패킷화)될 수 있고, 그 후 네트워크(106)를 통해 사용자들(102, 108) 사이의 통화 중에 사용자 장치(110)로 전송될 수 있다. 이에 더하여 또는 이에 갈음하여, 에코 억제 모듈(306)로부터 출력된 신호는 사용자 장치(104)에 의해 다른 목적을 위해 사용될 수 있는데, 예컨대, 그 출력된 신호는 메모리(214)에 저장될 수도 있고 사용자 장치(104)에서 실행중인 애플리케이션에 대한 입력으로 사용될 수도 있다.
따라서, 계산을 위해 주파수 밴드에서 에코 신호의 파워를 모델링하기 위해 시간 도메인에서 적응된 FIR 필터를 분석하고, (예컨대, VoIP 클라이언트(206)에 의한 사용을 위해)에코 억제 효과/필터를 적용함으로써 획득된 파워 응답 정보의 사용이 본 명세서에 기술되어 있다.
전술한 실시예에서는, 에코 억제가 VoIP 시스템으로 구현된다(예컨대, 수신된 오디오 신호는 통신 시스템(100)을 통해 사용자들(102, 108) 간에 통화하는 동안 사용자 장치(110)에 전송하기 위한 사용자(102)의 스피치를 포함할 수 있다). 그러나, 본 명세서에 기재된 에코 억제 방법은 에코 억제가 적용되어야 하는 어떠한 적절한 시스템에도 적용될 수 있다.
도면에 도시된 전술한 실시예에서, 에코 소거(또는 "에코 제거")는 수신된 오디오 신호(y(t))에 적용되지 않는다. 즉, 사용자 장치(104)에는 에코 소거 모듈이 없고, 수신된 오디오 신호(y(t))에 에코 소거를 적용하는 사전 단계 없이 수신된 오디오 신호(y(t))에 에코 억제가 적용된다.
그러나, 다른 실시예에서는, 에코 소거 모듈에 의해 에코 소거가 수신된 오디오 신호(y(t))에 적용될 수 있다. 구체적으로, 에코 억제 모듈(306)에 의해 적용된 에코 억제가, 수신된 오디오 신호(y(t))의 처리 중에 에코 소거의 다운스트림에서(즉, 그 후에) 적용될 수 있다. 에코 소거 모듈은 수신된 오디오 신호에서 에코 신호의 추정치를 뺄 것이지만, 에코 신호의 추정치의 부정확성 때문에, 수신된 오디오 신호에 잔여 에코가 남아 있을 가능성이 많다. 잔여 에코는 에코 억제 모듈(306)에 의해 억제될 것이다. 이 에코 억제는 본 명세서에서 기술된 아무런 에코 소거도 적용되지 않는 실시예에서와 동일한 방식으로 적용될 수 있다. 에코 제거가 사용되면, 그 효과는 에코 억제에서 고려될 수 있다.
본 명세서에 기술된 방법은 사용자 장치(104)에서 컴퓨터 프로그램 제품(예컨대, 클라이언트(206)을 실행함으로써 구현될 수 있다. 즉, 컴퓨터 프로프램 제품은 수신된 오디오 신호(y(t)) 내의 에코를 억제하도록 구성될 수 있는데, 여기서 컴퓨터 프로그램 제품은 컴퓨터 판독가능 저장 매체 상에 구현되며(예컨대, 메모리(214)에 저장되며) CPU(202) 상에서 실행될 경우 본 명세서에 기술된 임의의 방법의 동작을 수행하도록 구성된다.
일반적으로, 본 명세서에 기술된 기능들(예컨대, 도 3에 도시된 기능 모듈 및 도 4에 도시된 기능 단계) 중 임의의 기능은 소프트웨어, 펌웨어, 하드웨어(예컨대, 고정 로직 회로), 또는 이들의 조합을 이용하여 구현될 수 있다. 도 3 및 4에 개별적으로 도시된 모듈들 및 단계들은 별개의 모듈들 또는 단계들로서 구현될 수도 있고 그렇지 않을 수도 있다. 예를 들어, 에코 억제 모듈(306)은 파워 추산 모듈(304)의 기능을 수행할 수 있으며, 따라서 에코 억제 모듈(306) 외에 별개의 파워 추산 모듈(304)이 요구되지 않는다. 본 명세서에 사용된 "모듈", "기능", "컴포넌트" 및 "로직"이란 용어는 일반적으로, 소프트웨어, 펌웨어, 하드웨어, 또는 이들의 조합을 나타낸다. 소프트웨어 구현예의 경우에, 모듈, 기능 또는 로직은 프로세서(예컨대, CPU 또는 CPU들) 상에서 실행될 때 지정된 태스크를 수행하는 프로그램 코드를 나타낸다. 프로그램 코드는 하나 이상의 컴퓨터 판독가능 메모리 장치에 저장될 수 있다. 본 명세서에 기술된 기술들의 특징들은 플랫폼 독립적인데, 이는 이들 기술이 다양한 프로세서를 구비한 다양한 상용 컴퓨팅 플랫폼 상에서 구현될 수 있음을 의미한다.
예를 들어, 사용자 장치는 사용자 장치의 하드웨어로 하여금 동작들, 예컨대 프로세서 기능 블록 등을 수행하게 하는 개체(예컨대, 소프트웨어)를 포함할 수 있다. 예를 들어, 사용자 장치는, 사용자 장치로 하여금, 보다 구체적으로는 사용자 장치의 운영 체제 및 관련 하드웨어로 하여금 동작들을 수행하게 하는 명령어를 유지하도록 구성될 수 있는 컴퓨터 판독가능 매체를 포함할 수 있다. 따라서, 이들 명령어는 운영 체제 및 관련 하드웨어가 동작들을 수행하도록 구성하는 기능을 하며, 그 결과 기능을 수행하도록 운영 체제 및 관련 하드웨어를 변경시킨다. 명령어는 컴퓨터 판독가능한 매체에 의해 다양한 구성을 통해 사용자 장치에 제공될 수 있다.
컴퓨터 판독가능 매체의 하나의 그러한 구성은 신호 전달 매체이며, 따라서 예컨대 네트워크를 통해 컴퓨팅 장치에게 명령어(예컨대, 반송파로서)를 전송하도록 구성된다. 컴퓨터 판독가능 매체는 또한 컴퓨터 판독가능 저장 매체로서 구성될 수 있으며, 따라서 신호 전달 매체는 아니다. 컴퓨터 판독가능 저장 매체의 예로는 RAM, ROM, 광 디스크, 플래시 메모리, 하드 디스크 메모리, 및 자기, 광, 및 명령어 및 기타 데이터를 저장하기 위한 다른 기법들을 이용할 수 있는 기타 메모리 디바이스가 있다.
첨부된 청구항들에 정의된 청구대상은 구조적인 특징 및/또는 방법적 동작에 특유한 언어로 기술되어 있지만, 반드시 전술한 특정한 특징이나 동작으로 제한되지는 않음을 이해해야 한다. 오히려, 전술한 특정한 특징 및 동작은 청구항 및 실시예들을 구현하는 예시적인 형태로서 개시되어 있다.
Claims (20)
- 에코 억제 방법으로서,
오디오 신호를 출력하는 단계와,
오디오 신호를 수신하는 단계 -상기 수신된 오디오 신호는 상기 출력된 오디오 신호로 인한 에코를 포함함- 와,
상기 수신된 오디오 신호 내의 상기 에코의 에코 경로(h(t))를 모델링하기 위해 상기 출력된 오디오 신호 및 상기 수신된 오디오 신호에 기초하여 시간 도메인에서 유한 임펄스 응답 필터 추정치()를 동적으로 적응시키는 단계와,
상기 필터 추정치()로부터 적어도 하나의 파워 응답을 결정하는 단계와,
상기 결정된 적어도 하나의 파워 응답을 사용하여 상기 수신된 오디오 신호 내의 상기 에코의 에코 파워를 추산하는 단계와,
상기 추산된 에코 파워를 사용하여 상기 수신된 오디오 신호에 에코 억제를 적용함으로써 상기 수신된 오디오 신호 내의 에코를 억제하는 단계
를 포함하는 에코 억제 방법.
- 제2항에 있어서,
상기 필터 추정치는 상기 시간 도메인에서 길이(L)를 가지며, 상기 P개의 파티션 각각은 상기 시간 도메인에서 길이(L/P)를 갖는
에코 억제 방법.
- 제1항에 있어서,
상기 수신된 오디오 신호에 상기 에코 억제를 적용하는 것은, 상기 수신된 오디오 신호에 에코 소거를 적용하는 사전 단계 없이 행해지는
에코 억제 방법.
- 제1항에 있어서,
상기 결정된 적어도 하나의 파워 응답을 사용하여 상기 에코의 에코 파워를 추산하는 단계는, 상기 수신된 오디오 신호 내의 상기 에코의 신호를 추산하는 단계를 포함하지 않는
에코 억제 방법.
- 제1항에 있어서,
상기 수신된 오디오 신호에 에코 소거를 적용하는 단계를 더 포함하고,
상기 에코 억제가, 상기 수신된 오디오 신호의 처리 중에 상기 에코 소거의 다운스트림에서 적용되는
에코 억제 방법.
- 제1항에 있어서,
상기 수신된 오디오 신호에 적용되는 상기 에코 억제는 시간 및 주파수에 따라 변하는 신호 의존 억제인
에코 억제 방법.
- 제1항에 있어서,
상기 방법은 통신 이벤트에 사용하기 위한 사용자 장치에서 수행되며,
상기 수신된 오디오 신호는 상기 통신 이벤트에서 상기 사용자 장치로부터 전송하기 위한 사용자의 스피치를 포함하는
에코 억제 방법.
- 제10항에 있어서,
상기 통신 이벤트는 VoIP(voice over internet protocol) 통화인
에코 억제 방법.
- 제11항에 있어서,
상기 출력된 오디오 신호는, 상기 수신된 오디오 신호의 상기 에코에 포함되는 상기 VoIP 통화의 원단(far-end) 스피치 신호를 포함하는
에코 억제 방법.
- 에코 억제를 구현하도록 구성된 장치로서,
오디오 신호를 출력하도록 구성된 오디오 출력 장치와,
오디오 신호를 수신하도록 구성된 오디오 입력 장치 -상기 수신된 오디오 신호는 상기 출력된 오디오 신호로 인한 에코를 포함함- 와,
상기 수신된 오디오 신호 내의 상기 에코의 에코 경로(h(t))를 모델링하기 위해 상기 출력된 오디오 신호 및 상기 수신된 오디오 신호에 기초하여 시간 도메인에서 유한 임펄스 응답 필터 추정치()를 동적으로 적응시키도록 구성된 필터 추산 모듈과,
상기 필터 추정치()로부터 적어도 하나의 파워 응답을 결정하고 상기 결정된 적어도 하나의 파워 응답을 사용하여 상기 수신된 오디오 신호 내의 상기 에코의 에코 파워를 추산하도록 구성된 파워 추산 모듈과,
상기 추산된 에코 파워를 사용하여 상기 수신된 오디오 신호에 에코 억제를 적용함으로써 상기 수신된 오디오 신호 내의 에코를 억제하도록 구성된 에코 억제 모듈
을 포함하는 장치.
- 제13항에 있어서,
상기 오디오 출력 장치는 상기 출력된 오디오 신호를 출력하도록 구성된 스피커를 포함하고, 상기 오디오 입력 장치는 상기 수신된 오디오 신호를 수신하도록 구성된 마이크로폰을 포함하는
장치.
- 제13항에 있어서,
상기 장치는, 상기 수신된 오디오 신호에 에코 소거를 적용하도록 구성된 에코 소거 모듈을 포함하지 않는
장치.
- 제13항에 있어서,
상기 수신된 오디오 신호에 에코 소거를 적용하도록 구성된 에코 소거 모듈을 더 포함하고,
상기 에코 억제 모듈은, 상기 수신된 오디오 신호의 처리 중에 상기 에코 소거 모듈의 다운스트림에서 적용되도록 배치되는
장치.
- 제17항에 있어서,
상기 필터 추정치는 상기 시간 도메인에서 길이(L)를 가지며, 상기 P개의 파티션 각각은 상기 시간 도메인에서 길이(L/P)를 갖는
장치.
- 수신된 오디오 신호 내의 에코를 억제하도록 구성된 컴퓨터 프로그램 제품이 저장된 하나 이상의 컴퓨터 판독가능 메모리 저장 하드웨어 장치로서,
상기 컴퓨터 프로그램 제품은, 적어도 하나의 프로세서 상에서 실행되는 것에 응답해서 동작을 수행하도록 구성되고,
상기 동작은,
오디오 신호를 출력하는 것과,
오디오 신호를 수신하는 것 -상기 수신된 오디오 신호는 상기 출력된 오디오 신호로 인한 에코를 포함함- 과,
상기 수신된 오디오 신호 내의 상기 에코의 에코 경로(h(t))를 모델링하기 위해 상기 출력된 오디오 신호 및 상기 수신된 오디오 신호에 기초하여 시간 도메인에서 유한 임펄스 응답 필터 추정치()를 동적으로 적응시키는 것과,
상기 필터 추정치()로부터 적어도 하나의 파워 응답을 결정하는 것과,
상기 결정된 적어도 하나의 파워 응답을 사용하여 상기 수신된 오디오 신호 내의 상기 에코의 에코 파워를 추산하는 것과,
상기 추산된 에코 파워를 사용하여 상기 수신된 오디오 신호에 에코 억제를 적용함으로써 상기 수신된 오디오 신호 내의 에코를 억제하는 것
을 포함하는
컴퓨터 판독가능 메모리 저장 하드웨어 장치.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1223241.9A GB2512022A (en) | 2012-12-21 | 2012-12-21 | Echo suppression |
GB1223241.9 | 2012-12-21 | ||
US13/784,715 US9167342B2 (en) | 2012-12-21 | 2013-03-04 | Echo suppression |
US13/784,715 | 2013-03-04 | ||
PCT/US2013/077354 WO2014100793A1 (en) | 2012-12-21 | 2013-12-21 | Echo suppression |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150096424A KR20150096424A (ko) | 2015-08-24 |
KR102169993B1 true KR102169993B1 (ko) | 2020-10-26 |
Family
ID=47682460
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020157016515A KR102169993B1 (ko) | 2012-12-21 | 2013-12-21 | 에코 억제 기법 |
Country Status (7)
Country | Link |
---|---|
US (1) | US9167342B2 (ko) |
EP (1) | EP2920949B1 (ko) |
JP (1) | JP6422885B2 (ko) |
KR (1) | KR102169993B1 (ko) |
CN (1) | CN105027540B (ko) |
GB (1) | GB2512022A (ko) |
WO (1) | WO2014100793A1 (ko) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2510331A (en) | 2012-12-21 | 2014-08-06 | Microsoft Corp | Echo suppression in an audio signal |
GB2509493A (en) | 2012-12-21 | 2014-07-09 | Microsoft Corp | Suppressing Echo in a received audio signal by estimating the echo power in the received audio signal based on an FIR filter estimate |
US9319532B2 (en) * | 2013-08-15 | 2016-04-19 | Cisco Technology, Inc. | Acoustic echo cancellation for audio system with bring your own devices (BYOD) |
US10811027B2 (en) * | 2016-06-08 | 2020-10-20 | Dolby Laboratories Licensing Corporation | Echo estimation and management with adaptation of sparse prediction filter set |
US10816584B2 (en) * | 2017-12-04 | 2020-10-27 | Ets-Lindgren, Inc. | Spectrum extension edgeless gating for reduced time domain gating edge errors |
EP4199368A4 (en) | 2020-08-12 | 2024-01-03 | Auzdsp Co Ltd | ADAPTIVE DELAY DIVERSITY FILTER, ECHO COMPENSATION DEVICE AND METHOD USING THE SAME |
KR102218742B1 (ko) * | 2020-08-12 | 2021-02-22 | (주)오즈디에스피 | 적응형 지연 다이버시티 필터와, 이를 이용하는 에코 제거 장치 및 방법 |
CN113178203B (zh) * | 2021-04-23 | 2022-11-04 | 歌尔股份有限公司 | 一种回声消除方法、系统、音频设备及可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007235874A (ja) * | 2006-03-03 | 2007-09-13 | Sanyo Electric Co Ltd | エコー抑制装置及びエコー抑制方法 |
US20080126461A1 (en) * | 2006-07-10 | 2008-05-29 | Markus Christoph | Signal processing system employing time and frequency domain partitioning |
JP2009021741A (ja) * | 2007-07-11 | 2009-01-29 | Yamaha Corp | エコーキャンセラ |
Family Cites Families (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4328139A1 (de) * | 1993-08-21 | 1995-02-23 | Philips Patentverwaltung | Schaltungsanordnung zur Echoauslöschung |
US5473686A (en) * | 1994-02-01 | 1995-12-05 | Tandy Corporation | Echo cancellation apparatus |
SE511073C2 (sv) | 1997-09-10 | 1999-08-02 | Ericsson Telefon Ab L M | Sätt och anordning för ekoestimering och undertryckning i telefonsystem |
US6256383B1 (en) | 1997-11-07 | 2001-07-03 | Legerity, Inc. | IIR filter of adaptive balance circuit for long tail echo cancellation |
US6570985B1 (en) | 1998-01-09 | 2003-05-27 | Ericsson Inc. | Echo canceler adaptive filter optimization |
US6549587B1 (en) | 1999-09-20 | 2003-04-15 | Broadcom Corporation | Voice and data exchange over a packet based network with timing recovery |
US7423983B1 (en) * | 1999-09-20 | 2008-09-09 | Broadcom Corporation | Voice and data exchange over a packet based network |
JP3566158B2 (ja) | 1999-12-07 | 2004-09-15 | 三菱電機株式会社 | エコーキャンセラ装置 |
US7672447B1 (en) | 2000-06-01 | 2010-03-02 | Telefonaktiebolaget Lm Ericsson (Publ) | Frequency domain echo canceller |
US7046658B1 (en) | 2000-06-23 | 2006-05-16 | At & T Corp. | Method and system for customer selected direct dialed voice-over-internet protocol (VOIP) |
US7068780B1 (en) | 2000-08-30 | 2006-06-27 | Conexant, Inc. | Hybrid echo canceller |
JP4568439B2 (ja) | 2001-01-22 | 2010-10-27 | パナソニック株式会社 | エコー抑圧装置 |
US6785382B2 (en) * | 2001-02-12 | 2004-08-31 | Signalworks, Inc. | System and method for controlling a filter to enhance speakerphone performance |
WO2002093774A1 (en) * | 2001-05-17 | 2002-11-21 | Stmicroelectronics Asia Pacific Pte Ltd | Echo canceller and a method of cancelling echo |
US6950842B2 (en) * | 2002-01-23 | 2005-09-27 | Analog Devices, Inc. | Echo canceller having an adaptive filter with a dynamically adjustable step size |
US6914978B2 (en) | 2002-08-16 | 2005-07-05 | Ambit Microsystems Corp. | Pulse dialing system for VoIP modem |
US7082123B2 (en) | 2002-08-21 | 2006-07-25 | Ambit Microsystems Corp. | Silent redial system for VoIP modem |
US7062040B2 (en) | 2002-09-20 | 2006-06-13 | Agere Systems Inc. | Suppression of echo signals and the like |
US7027591B2 (en) | 2002-10-16 | 2006-04-11 | Ericsson Inc. | Integrated noise cancellation and residual echo suppression |
US7162420B2 (en) * | 2002-12-10 | 2007-01-09 | Liberato Technologies, Llc | System and method for noise reduction having first and second adaptive filters |
WO2004064365A1 (en) * | 2003-01-08 | 2004-07-29 | Philips Intellectual Property & Standards Gmbh | Device and method for suppressing echo, in particular in telephones |
US6947549B2 (en) | 2003-02-19 | 2005-09-20 | The Hong Kong Polytechnic University | Echo canceller |
US7099458B2 (en) * | 2003-12-12 | 2006-08-29 | Motorola, Inc. | Downlink activity and double talk probability detector and method for an echo canceler circuit |
US9509854B2 (en) | 2004-10-13 | 2016-11-29 | Koninklijke Philips N.V. | Echo cancellation |
US7894598B2 (en) * | 2004-12-14 | 2011-02-22 | Nuance Communications, Inc. | System for limiting receive audio |
DE602006009770D1 (de) | 2006-05-08 | 2009-11-26 | Harman Becker Automotive Sys | Echoverringerung für zeitvariante Systeme |
US7983373B2 (en) * | 2007-02-07 | 2011-07-19 | Vintomie Networks B.V., Llc | Clock distribution for 10GBase-T analog front end |
US8374851B2 (en) | 2007-07-30 | 2013-02-12 | Texas Instruments Incorporated | Voice activity detector and method |
ATE521064T1 (de) | 2007-10-08 | 2011-09-15 | Harman Becker Automotive Sys | Verstärkung und spektralformenanpassung bei der verarbeitung von audiosignalen |
US8275139B2 (en) * | 2008-03-26 | 2012-09-25 | Ittiam Systems (P) Ltd. | Linear full duplex system and method for acoustic echo cancellation |
JP5125690B2 (ja) * | 2008-03-31 | 2013-01-23 | ヤマハ株式会社 | 音響エコー除去装置 |
US8634569B2 (en) | 2010-01-08 | 2014-01-21 | Conexant Systems, Inc. | Systems and methods for echo cancellation and echo suppression |
NO332437B1 (no) * | 2010-01-18 | 2012-09-17 | Cisco Systems Int Sarl | Apparat og fremgangsmate for a supprimere et akustisk ekko |
US9185233B2 (en) | 2010-05-25 | 2015-11-10 | Intel Deutschland Gmbh | Audio communication device and method using fixed echo cancellation filter coefficients |
US9420390B2 (en) | 2011-02-03 | 2016-08-16 | Telefonaktiebolaget Lm Ericsson (Publ) | Estimation and suppression of harmonic loudspeaker nonlinearities |
US8804977B2 (en) | 2011-03-18 | 2014-08-12 | Dolby Laboratories Licensing Corporation | Nonlinear reference signal processing for echo suppression |
CN202340252U (zh) * | 2011-11-18 | 2012-07-18 | 镁思锑科技(杭州)有限公司 | 具有回声和噪声消除功能的矿用通信手机 |
US9065895B2 (en) | 2012-02-22 | 2015-06-23 | Broadcom Corporation | Non-linear echo cancellation |
GB2509493A (en) | 2012-12-21 | 2014-07-09 | Microsoft Corp | Suppressing Echo in a received audio signal by estimating the echo power in the received audio signal based on an FIR filter estimate |
GB2510331A (en) | 2012-12-21 | 2014-08-06 | Microsoft Corp | Echo suppression in an audio signal |
-
2012
- 2012-12-21 GB GB1223241.9A patent/GB2512022A/en not_active Withdrawn
-
2013
- 2013-03-04 US US13/784,715 patent/US9167342B2/en active Active
- 2013-12-21 CN CN201380066893.3A patent/CN105027540B/zh active Active
- 2013-12-21 EP EP13826690.3A patent/EP2920949B1/en active Active
- 2013-12-21 JP JP2015549851A patent/JP6422885B2/ja active Active
- 2013-12-21 WO PCT/US2013/077354 patent/WO2014100793A1/en active Application Filing
- 2013-12-21 KR KR1020157016515A patent/KR102169993B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007235874A (ja) * | 2006-03-03 | 2007-09-13 | Sanyo Electric Co Ltd | エコー抑制装置及びエコー抑制方法 |
US20080126461A1 (en) * | 2006-07-10 | 2008-05-29 | Markus Christoph | Signal processing system employing time and frequency domain partitioning |
JP2009021741A (ja) * | 2007-07-11 | 2009-01-29 | Yamaha Corp | エコーキャンセラ |
Also Published As
Publication number | Publication date |
---|---|
EP2920949B1 (en) | 2017-02-01 |
JP6422885B2 (ja) | 2018-11-14 |
KR20150096424A (ko) | 2015-08-24 |
CN105027540A (zh) | 2015-11-04 |
CN105027540B (zh) | 2017-07-21 |
GB2512022A (en) | 2014-09-24 |
GB201223241D0 (en) | 2013-02-06 |
US20140177858A1 (en) | 2014-06-26 |
US9167342B2 (en) | 2015-10-20 |
EP2920949A1 (en) | 2015-09-23 |
WO2014100793A1 (en) | 2014-06-26 |
JP2016506673A (ja) | 2016-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102169993B1 (ko) | 에코 억제 기법 | |
KR102170172B1 (ko) | 에코 억제 | |
KR102111185B1 (ko) | 에코 제거 | |
KR102190833B1 (ko) | 에코 억제 | |
KR102170341B1 (ko) | 에코 억제 기법 | |
US9467571B2 (en) | Echo removal | |
KR102194165B1 (ko) | 에코 제거기 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |