Nothing Special   »   [go: up one dir, main page]

KR101255404B1 - 컴퓨터 시스템에서 에코 소거를 적용할지를 판정하는 방법,컴퓨터 시스템에서 에코 소거 알고리즘을 구성하는 방법및 에코 소거 알고리즘을 구성하는 컴퓨터 시스템 - Google Patents

컴퓨터 시스템에서 에코 소거를 적용할지를 판정하는 방법,컴퓨터 시스템에서 에코 소거 알고리즘을 구성하는 방법및 에코 소거 알고리즘을 구성하는 컴퓨터 시스템 Download PDF

Info

Publication number
KR101255404B1
KR101255404B1 KR1020087011728A KR20087011728A KR101255404B1 KR 101255404 B1 KR101255404 B1 KR 101255404B1 KR 1020087011728 A KR1020087011728 A KR 1020087011728A KR 20087011728 A KR20087011728 A KR 20087011728A KR 101255404 B1 KR101255404 B1 KR 101255404B1
Authority
KR
South Korea
Prior art keywords
audio signal
echo cancellation
sample
computer system
captured
Prior art date
Application number
KR1020087011728A
Other languages
English (en)
Other versions
KR20080077607A (ko
Inventor
윌리엄 엘. 루니
앤톤 더블유. 크랜츠
Original Assignee
마이크로소프트 코포레이션
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 마이크로소프트 코포레이션 filed Critical 마이크로소프트 코포레이션
Publication of KR20080077607A publication Critical patent/KR20080077607A/ko
Application granted granted Critical
Publication of KR101255404B1 publication Critical patent/KR101255404B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M9/00Arrangements for interconnection not involving centralised switching
    • H04M9/08Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic
    • H04M9/082Two-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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03HIMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
    • H03H17/00Networks using digital techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B3/00Line transmission systems
    • H04B3/02Details
    • H04B3/20Reducing echo effects or singing; Opening or closing transmitting path; Conditioning for transmission in one direction or the other
    • H04B3/23Reducing echo effects or singing; Opening or closing transmitting path; Conditioning for transmission in one direction or the other using a replica of transmitted signal in the time domain, e.g. echo cancellers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M9/00Arrangements for interconnection not involving centralised switching
    • H04M9/08Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
  • Circuit For Audible Band Transducer (AREA)
  • Telephone Function (AREA)

Abstract

실시간 통신 세션에 앞서 에코 소거를 할 수 있는지에 대한 결정이 행해진다. 컴퓨터 시스템(200) 상의 메모리에 저장된 모델 샘플 오디오 파일(214)가 컴퓨터 시스템(200)에 연결된 스피커(204)를 통해 재생된다. 스피커(204)에 의해 발생된 사운드는 컴퓨터 시스템(200)에 연결된 마이크(202)에 의해 캡처되어 캡처된 오디오 신호를 생성한다. 캡처된 오디오 신호(414)에 에코 효과가 존재하는지를 판정하기 위해 캡처된 오디오 신호가 샘플 오디오 신호와 상관된다. 캡처된 오디오 신호 내의 에코의 특성, 예를 들어, 주파수, 지연 및 이득이 파라미터화(418)되고 에코 소거 알고리즘에서 사용하기 위한 초기값(420)으로서 저장된다. 이 알고리즘이 필요한 지속적인 조정(608)을 하기에 충분한 실시간 정보를 수신할 때까지, 저장된 파라미터가 통신 세션의 개시((604)) 시에 에코 소거 알고리즘에 의해 사용된다.
에코 소거, 샘플 오디오 파일, 통신 세션, 초기화 파라미터

Description

컴퓨터 시스템에서 에코 소거를 적용할지를 판정하는 방법, 컴퓨터 시스템에서 에코 소거 알고리즘을 구성하는 방법 및 에코 소거 알고리즘을 구성하는 컴퓨터 시스템{CONFIGURATION OF ECHO CANCELLATION}
네트워크-연결된 컴퓨팅 장치를 사용하는 실시간 통신이 점점 더 유행되고 있다. 이것은, 예를 들어, VOIP(voice over Internet protocol) 전화, 오디오-지원 채팅 프로그램(audio-enabled chat program), 그리고 오디오 및 비디오 스트리밍의 형태를 취할 수 있다. 최고 품질 오디오 및/또는 비디오 경험을 제공하는 것이 실시간 통신 오디오 클라이언트를 제공하는 많은 회사들 간을 구별시켜 주는 것일 수 있다.
오디오 성분을 갖는 통신 경험의 품질에 기여하는 한가지 요인은 에코 소거의 이용가능성 및 유효성이다. 네트워크화된 컴퓨터 시스템 간의 오디오 통신을 위해 설계된 많은 소프트웨어 애플리케이션은 에코 소거 특징을 제공한다. 그렇지만, 이들 에코 소거 특징은 일반적으로 사용자에 의해 수동으로 인에이블되어야만 한다. 게다가, 일반적으로 에코 소거 알고리즘이 통신 세션 중에 사운드 출력으로부터 에코를 효과적으로 감소 또는 제거하기 전에 래그 시간(lag time)이 있다. 스피커로부터 출력되어 마이크에서 캡처되는 사운드가 스피커에 입력되는 오디오 신호와 비교되어 에코 효과가 제거되는 동안 이 래그 시간이 30초 이상 지속될 수 있다. 따라서, 에코 소거가 인에이블되어 있을 때라도, 사용자는 여전히 통신 세션의 초기 동안에 좋지 않은 경험을 가질 수 있다.
본 명세서의 이 배경 섹션에 포함된 정보는 기술적 참조를 위해 포함되어 있으며 본 발명의 범위를 제한하는 것으로 보아서는 안된다.
본 명세서에 기술되고 청구된 기술은 실시간 통신 세션 또는 기타 오디오 통신에 앞서 특정의 오디오 장치 구성에 대해 에코 소거가 필요한지를 검출하는 것에 관한 것이다. 에코 소거가 필요한 것으로 판정되는 경우, 에코 소거 알고리즘이 필요한 지속적인 조정을 하기에 충분한 오디오 정보를 수신할 때까지, 오디오 장치 구성에 대응하는 일련의 저장된 파라미터가 통신 세션의 개시 시에 에코 소거 알고리즘에 의해 사용될 수 있다. 컴퓨터 시스템과 실시간 오디오 통신 또는 기타 오디오 통신을 수행하도록 장치를 구성할 때, 컴퓨터 시스템 상의 메모리에 저장된 모델 샘플 오디오 파일이 컴퓨터 시스템에 연결된 스피커 출력 장치를 통해 재생된다. 그에 의해 발생된 사운드가 컴퓨터 시스템에 연결된 마이크 입력 장치에 의해 캡처되고 변환되어 캡처된 오디오 신호를 생성하며, 이 오디오 신호는 입력 장치 또는 컴퓨터 시스템에 의한 처리를 위해 디지털화된다. 캡처된 오디오 신호에 에코 효과가 존재하는지를 판정하기 위해 캡처된 오디오 신호가 샘플 오디오 신호와 상관된다. 캡처된 오디오 신호 내의 에코의 특성, 예를 들어, 주파수, 지연 및 이득이 파라미터화되어 에코 소거 알고리즘에서 사용하기 위한 초기값으로서 저장된다.
이 요약은 이하의 상세한 설명에서 더 기술되는 개념들 중 선택된 것을 간략화된 형태로 소개하기 위해 제공된 것이다. 이 요약은 청구된 발명 대상의 주요 특징들 또는 기본적인 특징들을 확인시켜 주기 위한 것이 아니며 청구된 발명 대상의 범위를 제한하는 데 사용하기 위한 것도 아니다.
몇몇 구현에서, 제조 물품이 컴퓨터 프로그램 제품으로서 제공된다. 컴퓨터 프로그램 제품의 한 구현은 컴퓨터 시스템에 의해 판독가능한 컴퓨터 프로그램을 인코딩하는 컴퓨터 프로그램 저장 매체를 제공한다. 컴퓨터 프로그램 제품의 다른 구현이 컴퓨터 시스템에 의해 반송파에 구현되고 컴퓨터 프로그램을 인코딩하는 컴퓨터 데이터 신호로 제공될 수 있다. 청구된 발명 대상의 다른 특징, 상세, 효용 및 이점이 첨부 도면에 추가적으로 도시되고 첨부된 청구항에 정의된 여러가지 실시예 및 구현에 대한 이하의 보다 구체적으로 기술된 상세한 설명으로부터 명백하게 될 것이다.
도 1은 복수의 부착된 오디오 장치를 갖는 예시적인 퍼스널 컴퓨터 시스템을 나타낸 도면.
도 2는 에코 효과를 검출하고 에코 소거 파라미터를 정의하는 컴퓨터 시스템 내의 예시적인 모듈을 나타낸 도면.
도 3은 캡처된 오디오 신호에서의 에코 효과를 나타낸 도면.
도 4는 장치 구성을 검출하기 위해 도 1의 모듈들에 의해 수행되는 일련의 예시적인 동작들을 나타낸 도면.
도 5는 저장된 파라미터를 사용하여 에코 소거 모듈을 개시하는 컴퓨터 시스템 내의 예시적인 모듈들을 나타낸 도면.
도 6은 에코 소거 모듈을 개시하기 위해 도 3의 모듈들에 의해 수행되는 다른 일련의 예시적인 동작들을 나타낸 도면.
도 7은 실시간 통신 세션 및 기타 오디오 입력 및 출력 기능들을 수행하는 예시적인 컴퓨터 시스템을 나타낸 도면.
본 명세서에 기재된 기술의 구현은 컴퓨터 시스템에서 동작하는 소프트웨어 애플리케이션에서의 에코 소거의 자동 인에이블(automatic enablement) 및 구성을 제공한다. 이 기술은 오디오 통신 세션을 수행하는 컴퓨터 시스템의 사용자가 이러한 세션을 수행하기 위해 사용되는 오디오 장치에 의해 야기되는 사운드 출력에서의 에코 효과를 쉽게 확인하고 보다 신속하게 이를 완화시키도록 돕는다.
예를 들어, 퍼스널 컴퓨터 시스템을 사용하여 음성 회의(audio conference), 예를 들어, VOIP 전화 통화를 할 때, 통신 세션을 수행하기 위해 오디오 입력 장치, 예를 들어, 마이크 및 오디오 렌더링 장치, 예를 들어, 하나 이상의 스피커 둘다가 필요하다. 도 1에 도시된 바와 같이, 퍼스널 컴퓨터 시스템(100)은 오디오 기능을 포함할 수 있는 다양한 주변 장치를 구비할 수 있다. 일반적인 퍼스널 컴퓨터 시스템(100)은 컴퓨터(102) 및 컴퓨터(102)에 연결된 비디오 모니터(104), 키보드, 및 마우스(108)를 포함할 수 있다. 컴퓨터(102)는 사운드를 생성하는 내장된 스피커(118)를 가질 수 있다. 비디오 모니터(104)도 역시 한 쌍의 스피커(110) 를 구비하고 있을 수 있다. 게다가, 퍼스널 컴퓨터 시스템(100)의 사용자는 또한 외부 스피커 세트(112)를 컴퓨터(102)에 연결할 수 있다. 퍼스널 컴퓨터 시스템(100)은 또한 인터넷 화상 회의를 수행하기 위해 일체형 비디오 카메라 및 마이크(114)를 포함할 수 있다. 사용자는 또한 VOIP 또는 인터넷 화상 회의에 참가하기 위해 이어폰 스피커와 마이크를 겸비한 헤드셋(116)을 연결할 수 있다.
스피커로부터의 사운드 출력은 종종 마이크에 의해 캡처된다. 사운드 출력을 비롯한 마이크로부터의 입력 신호는 사운드 출력에 대응하는 원래의 오디오 신호로부터 시간상 약간 지연된다. 따라서, 원래의 오디오 신호의 소소로 전송되어 소스 위치에 있는 스피커에서 출력되는 마이크로부터의 캡처된 사운드는 소스 위치에 있는 당사자에게 거슬리는 에코 효과를 야기할 수 있다. 따라서, 캡처된 신호의 출력 이전에 캡처된 신호 내의 원래의 오디오 신호의 잔존물을 제거하기 위해 에코 소거 알고리즘이 제공된다. 본 명세서에 기술된 시스템 및 방법은, 에코 소거의 필요성을 판정하고 필요한 경우 에코 소거를 인에이블하며 에코 소거 알고리즘의 개시 시에 초기 파라미터를 제공하는, 컴퓨터 시스템의 사용자에 대한 자동 보조수단으로서 기능한다.
예시적인 일례에서, 실시간 통신 세션을 구현하는 오디오-클라이언트와 관련하여 에코 소거 알고리즘이 필요한지를 판정하기 위해 연결된 마이크 및 스피커 구성을 갖는 컴퓨터 시스템이 테스트된다. 필요한 경우, 에코 소거 알고리즘의 자동 인에이블(automatic enablement)이 실시된다. 특정의 오디오 구성에 대해 에코 소거가 필요한지를 판정하기 위해, 컴퓨터 시스템과 연관된 메모리에 저장된 샘플 오 디오 파일이 컴퓨터 시스템에 연결된 스피커를 통해 출력될 수 있다. 샘플 오디오 파일은 아날로그 신호로 변환되어 스피커로 전송된다. 스피커는 대기 중에 음파를 생성하기 위해 아날로그 오디오 신호를 음향 에너지로 변환한다.
샘플 오디오 파일에 대응하는 사운드를 포함하는 음파가 마이크에 의해 픽업되어 아날로그 오디오 신호로 변환된다. 샘플 오디오 파일이 스피커에 의해 재생되는 동일한 기간 동안에 마이크에 수신된 사운드가 녹음된다. 이 아날로그 오디오 신호는 마이크 또는 컴퓨터 시스템에 의해 디지털 데이터 형식으로 변환된다. 한 구현에서, 마이크로부터 캡처된 오디오 데이터 및 샘플 오디오 파일이 필요한 경우 공통의 데이터 형식으로 변환된다. 에코 신호의 존재를 나타내는 오디오 데이터 간에 상관이 있는지를 판정하기 위해, 캡처된 사운드로부터의 오디오 데이터가 기지의 샘플 오디오 파일로부터의 오디오 데이터와 비교된다.
에코 상관이 있는 경우, 캡처된 오디오 데이터와 샘플 오디오 데이터를 비교하여 오디오-클라이언트의 장래의 개시 시에 사용하기 위한 일련의 초기 파라미터를 계산하기 위해 에코 소거 알고리즘이 활성화된다. 통신 세션이 시작할 때, 에코 소거 알고리즘은 저장된 초기 파라미터를 사용하여 캡처된 오디오 신호를 처리한다. 상관이 별로 없는 경우, 컴퓨터 시스템은 특정의 오디오 장치 구성을 갖는 에코 소거 알고리즘의 사용이 불필요하고 처리 자원의 비효율적인 사용인 것으로 판정한다. 이 경우에, 에코 소거 알고리즘은 디스에이블될 수 있다.
에코 소거 활성화 기술을 구현하는 컴포넌트 및 모듈을 갖는 예시적인 컴퓨터 시스템(200)이 도 2에 도시되어 있다. 2개의 예시적인 주변 장치, 즉 마이 크(202) 및 스피커(204)가 컴퓨터 시스템(200)에 연결되어 있다. 마이크(202)는 컴퓨터 시스템(200)에 내장형인 하드웨어 장치일 수 있거나 유선 또는 무선 연결을 통해 컴퓨터 시스템(200)에 연결된 외장형 장치일 수 있다. 이와 유사하게, 스피커(204)는 컴퓨터 시스템(200)에 내장형인 하드웨어 장치일 수 있거나 유선 또는 무선 연결을 통해 컴퓨터 시스템(200)에 연결된 외장형 장치일 수 있다. 스피커(204)는 단일 스피커, 한 쌍의 스피커일 수 있거나, 복수의 스피커로 된 시스템일 수 있다, 예를 들어, "서라운드 사운드" 구성으로 되어 있을 수 있다. 다른 대안으로서, 마이크(202) 및 스피커(204)는 하나의 장치, 예를 들어, 전화 핸드셋 또는 헤드셋에 일체형으로 되어 있을 수 있다. 마이크(202)는 오디오 캡처 모듈(206)에의 입력 장치로서 컴퓨터 시스템(200)에 연결되어 있다. 스피커(204)는 오디오 렌더링 모듈(208)에의 출력 장치로서 컴퓨터 시스템(200)에 연결되어 있다.
스피커(204)로부터 마이크(202)로의 화살표로 나타낸 바와 같이, 스피커(204)에 의해 방출된 사운드는 마이크(202)에 의해 픽업될 수 있다. 이것이 에코 효과의 소스이다.
도 2에 나타낸 바와 같이, 자동 에코 소거 결정 기능은, 파선(210)으로 나타낸 바와 같이, 컴퓨터 시스템(200)의 커널 및 사용자-모드 둘다에 있는 자원으로 구현될 수 있다. 기타 운영 체제 및 컴퓨팅 환경에서, 이러한 컴포넌트 및 모듈은 소프트웨어 아키텍처의 다른 레벨에서 제어될 수 있다. 이 예시적인 실시예에서, 커널은 프로세서 및 메모리를 비롯한 기계의 하드웨어 자원 및 저레벨 하드웨어 인터페이스를 관리하고, 기타 소프트웨어 컴포넌트, 예를 들어, 사용자-모드 컴포넌 트가 이들 자원에 액세스할 수 있는 방법을, 예를 들어 장치 드라이버, 메모리 관리 루틴, 스케쥴러 및 시스템 호출(system call)을 통해, 제어한다.
오디오 캡처 모듈(206) 및 오디오 렌더링 모듈(208) 둘다는 커널에 존재할 수 있다. 오디오 캡처 모듈(206)은, 컴퓨터 시스템(200)에 의한 추가의 처리를 위해, 마이크(202)에 의해 발생된 아날로그 오디오 신호를 음파로부터 디지털 데이터 신호, 예를 들어, PCM(pulse code modulated) 데이터, CDR(compact disc raw) 데이터, 또는 기타 통상의 데이터 형식으로 변환한다. PCM 데이터는 다양한 품질, 예를 들어, PCM 16, PCM 32, 또는 PCM 48을 가질 수 있다. 오디오 렌더링 모듈(208)은 스피커(204)에 의한 음향 렌더링을 위해, 예를 들어, WAV(waveform audio format), MPEGl, DSM(digital sound module) 오디오 형식, 또는 기타 통상의 데이터 형식으로 된 디지털 오디오 파일을 아날로그 오디오 신호로 변환한다. 다른 형태에서, 스피커(204) 및 마이크(202) 각각 또는 그 둘다가 디지털 스피커 또는 디지털 마이크일 수 있으며, 여기서 디지털-아날로그 변환의 오디오 렌더링 기능 및 아날로그-디지털 변환의 오디오 캡처 기능이 각각 스피커 및 마이크 자체에서 행해진다. 따라서, 이러한 형태에서, 오디오 렌더링 모듈(208) 및 오디오 캡처 모듈(206)은 커널에 존재할 필요가 없다.
부가적인 기능이 사용자 모드에서, 예를 들어, 마이크(202) 및 오디오 캡처 모듈(206)에 의해 수신된 오디오 데이터는 물론 기타 데이터에 작용하는 소프트웨어 처리 루틴으로서 구현된다. 에코 파라미터화 모듈(212)은 샘플 오디오 파일(214), 신호 처리기(216), 신호 검출 모듈(218), 및 에코 소거 모듈(220)을 포함 한다. 샘플 오디오 파일(214)은 에코 파라미터화 모듈(212)에 의해 수행되는 동작들에 의해 액세스되어 오디오 렌더링 모듈(208) 및 신호 처리기(216) 중 어느 하나 또는 그 둘다로 전송될 수 있다. 샘플 오디오 파일(214)은 스피커(204) 및 마이크(202)의 구성을 테스트하여 에코 효과가 생성되는지를 판정하기 위해 스피커(204)로 출력하기 위한 기지의 오디오 샘플로서 오디오 렌더링 모듈(208)로 전송된다.
샘플 오디오 파일(214)은 생성되는 사운드의 속성에 대해 선택되는 디지털 오디오 파일, 예를 들어, WAV 파일 또는 기타 파일 형식일 수 있다. 예를 들어, 샘플 오디오 파일(214)은 마이크(202)를 통해 검출하기 쉬운 특정 범위의 주파수를 포함하는 사운드를 생성할 수 있다. 샘플 오디오 파일(214)은 그에 부가하여 사용자가 듣기에 즐거운 사운드, 예를 들어, 음악 시퀀스를 발생하거나 사용자에게 가치있는 정보, 예를 들어, 구성 명령어 또는 광고를 제공하도록 선택될 수 있다. 다른 대안으로서, 샘플 오디오 파일(214)를 사용하지 않고, 에코 효과에 대한 테스트를 수행하기 위해 스피커에서 출력하기 위한 일련의 톤(tone)이 컴퓨터 시스템에 의해 발생될 수 있다. 다른 예에서, 컴퓨터 시스템(200)에 연결된 네트워크를 통해 다른 소스로부터 컴퓨터 시스템(200)에 샘플 오디오 파일이 제공될 수 있다. 어느 경우든지, 스피커(204)에 의해 출력되는 샘플 오디오 신호를 포함하는 오디오 데이터가 캡처된 오디오 신호와 비교하기 위해 신호 처리기(216)를 거쳐 신호 검출 모듈(218) 및 에코 소거 모듈(220)에 입력될 수 있어야만 한다.
마이크(202)로부터 수신된 오디오 신호는 또한 오디오 캡처 모듈(206)로부터 신호 처리기(216)로 전송된다. 오디오 캡처 모듈(206)로부터의 오디오 신호 및 샘플 오디오 파일(214) 중 어느 하나 또는 그 둘다는 오디오 신호의 비교를 위해 오디오 신호를 공통의 데이터 형식으로 변환하기 위해 신호 처리기(216)에 의해 처리될 수 있다. 예를 들어, 오디오 캡처 모듈(206)로부터의 오디오 신호가 PCM 형식이고 오디오 샘플 파일(214)이 WAV 형식으로 되어 있는 경우, 오디오 샘플 파일(214)이 신호 처리기(216)에 의해 PCM 형식으로 변환될 수 있다. 다른 대안으로서, 오디오 캡처 모듈(206)로부터의 오디오 신호가 신호 처리기에 의해 WAV 형식으로 변환될 수 있다. 또 다른 경우에, 오디오 캡처 모듈(206)로부터의 오디오 신호 및 오디오 샘플 파일(214) 둘 다는, 장치 검출 모듈(212)에 의한 추가의 처리에 도움이 되는 경우, 신호 처리기(216)에 의해 제3의 형식, 예를 들어 AIFF(audio interchange file format) 또는 어떤 다른 데이터 형식으로 변환될 수 있다. 다시 말하면, 오디오 데이터에 대한 임의의 원하는 파일 형식이 사용될 수 있다.
오디오 캡처 모듈(206)로부터의 오디오 신호 및 샘플 오디오 파일(214) 중 어느 하나 또는 그 둘다가 신호 처리기(216)에 의해 처리되면, 캡처된 오디오 신호 및 샘플 오디오 파일(214)이 신호 검출 모듈(218)에 의해 비교된다. 샘플 오디오 파일(214)에 직접 액세스함으로써 신호 처리기(216)에 의해 처리된 신호를 검출하는 것이 한 레벨에서 샘플 오디오 파일(214)이 여전히 에코 파라미터화 모듈(212)에 저장되어 액세스가능하고 또 오염(corrupt), 삭제(delete), 제거(remove) 또는 이동(relocated)되지 않았다는 것을 확인하기 위해 바람직할 수 있다. 샘플 오디오 파일(214)이 액세스가능하지 않은 경우, 마이크(202)에서 검출될 테스트 오디오 사운드가 스피커(204)에 의해 발생되지 않는다. 따라서, 처음에, 샘플 오디오 파일(214)로부터 직접 데이터를 검출하는 것은 장치 검출 모듈(212)의 무결성의 검사 및 캡처된 오디오 신호를 기지의 샘플 오디오 신호와 비교하는 기능으로서 역할할 수 있다.
오디오 캡처 모듈(206)로부터의 오디오 신호를 오디오 샘플 파일(214)과 비교하는 것은 또한 스피커(204)가 실제로 동작하고 테스트가 실제로는 샘플 오디오 파일(214)을 사용하여 수행된다는 것을 확인하기 위해 사용될 수 있다. 예를 들어, 어떤 주변 사운드가 일반적으로 마이크(202)에 의해 픽업되지만 샘플 오디오 파일(214)이 스피커(204)에서 출력되지 않은 경우, 에코 소거 모듈(218)은 에코 효과가 없고 에코 소거 알고리즘을 작동시킬 필요가 없는 것으로 잘못된 결론을 내릴 수 있다. 마이크(202)에 의해 변환된 사운드가 스피커(204)에서 나온 것인지를 분간할 수 있는 것은 샘플 오디오 파일(214)이 스피커(204)에 의해 재생되어야만 하는 특정의 시간 윈도우 동안에 마이크(202)로부터의 오디오 신호를 캡처 및 녹음하는 것에 의해 도움을 받을 수 있다. 따라서, 신호 검출 모듈(218)은 특성들, 예를 들어, 오디오 캡처 모듈(206)로부터의 오디오 신호에 대응하는 데이터의 주파수, 세기, 및 타이밍을 오디오 샘플 파일(214)로부터의 데이터와 비교하여 데이터가 일치하는지를 판정한다. 데이터가 상관하는 경우, 신호 검출 모듈(218)은 샘플 오디오 파일이 마이크에 의해 캡처되고 에코 소거 모듈(220)에 의해 수행되는 에코 효과 테스트에 대한 기초가 된다는 것을 확인한다.
신호 검출 모듈(218)에 부가하여, 신호 처리기(216)는 또한 캡처된 오디오 신호 및 샘플 오디오 신호를 에코 소거 모듈(220)로 전달한다. 테스트 동안에, 에코 소거 모듈(220)은 캡처된 오디오 신호와 샘플 오디오 신호를 비교 및 분석하여 상당한 에코 효과가 존재하는지를 판정한다. 어떤 경우에, 에코 효과가 없을 수 있고 따라서 캡처된 오디오 신호를 에코 소거 알고리즘을 통해 필터링할 필요가 없을 수 있다. 에코 효과가 없는 경우, 이러한 필터링은 처리 자원을 잘 사용하는 것이 아니다. 예를 들어, 어떤 헤드셋, 전화 핸드셋 및 스피커폰은 이미 에코 소거 소프트웨어 및 하드웨어를 포함하고 있으며, 따라서 컴퓨터 시스템(200)의 에코 소거 모듈(220)을 통한 필터링은 중복되는 것이 된다. 다른 경우에, 오디오 장치의 환경 및 구성은 인지가능한 에코 효과가 생성되지 않도록 되어 있을 수 있다.
에코 효과가 상당한지는 일반적으로 캡처된 오디오 신호 내의 에코 신호의 세기로 판정된다. 예시적인 에코 효과가 도 3에 개략적으로 나타내어져 있다. 그래프(300)는 원래의 오디오 신호(302)의 단일 주파수 파형, 즉 현재의 테스트 시나리오의 경우에, 샘플 오디오 신호를 실선으로 나타내고 캡처된 오디오 신호 내의 에코 신호(304)를 파선으로 나타내고 있다. 에코 신호(304)는 약간 지연되어 원래의 오디오 신호(302)를 따라가고 있다. 에코 신호(304)의 진폭은 일반적으로 원래의 오디오 신호(302)의 진폭보다 작으며, 따라서 덜 강한 신호를 나타낸다. 그렇지만, 에코 신호(304)의 세기가 사용자의 통신 세션의 품질에 현저히 영향을 주는 것으로 판정되는 문턱값 레벨을 넘고 따라서 에코 소거를 해야 할 정도로 상당할 수 있다. 이어서, 에코 신호(304)의 소거는 일반적으로 에코 신호의 효과를 무효시키기 위해 대응하는 주파수이지만 정반대 진폭을 갖는 간섭 신호를 도입함으로써 수행된다.
캡처된 오디오 신호에 에코 효과가 있는지를 단지 판정하는 것에 부가하여, 에코 소거 모듈(220)은 또한 실제의 실시간 통신 세션의 개시 시에 에코 소거 모듈(220)에 의해 사용될 일련의 초기화 파라미터를 계산하기 위해 캡처된 오디오 신호와 샘플 오디오 신호의 비교로부터의 데이터를 사용한다. 에코 소거 모듈(220)은 에코 소거 알고리즘의 특정의 구현에서 몇가지 다른 파라미터, 예를 들어, 추정된 스피커-마이크 이득 통계, 추정된 스피커로부터 마이크로의 지연 통계, 및 캡처된 오디오의 주파수 특성을 사용할 수 있다. 주파수 특성은 공지의 푸리에 변환 함수에 의해 또는 다른 통상의 방법에 의해 비교될 수 있다.
이들 파라미터는 에코 소거 모듈(220)에서 스피커를 통해 재생되는 샘플 오디오 신호와 마이크에 의해 캡처되는 오디오 간에 "슬라이딩 윈도우"를 동기화시키는 데 사용된다. 슬라이딩 윈도우는 계속하여 갱신되는 기간 및 그 특정의 기간 동안에 재생 또는 캡처되는 대응하는 사운드로 이해될 수 있다. 에코 소거 모듈(220)은 캡처된 오디오 신호에 대응하는 슬라이딩 윈도우에서 무엇을 소거할지를 결정하기 위해 출력 샘플 오디오 신호의 슬라이딩 윈도우를 사용하고 검색을 제한하기 위해 캡처된 오디오 신호의 슬라이딩 윈도우를 사용한다. 이들 슬라이딩 윈도우는 지연의 변동 및 반사 경로에 기초하여 시간상으로 동기화될 필요가 있다. 에코 소거 모듈에 의해 소비되는 처리 사이클의 수를 감소시키기 위해, 슬라이딩 윈도우의 크기도 역시 캡처된 오디오 신호 스트림을 가능한 한 적게 검색하기 위해 에코의 수와 지연의 변동 및 반사 경로에서의 변동에 기초하여 파라미터화된다.
샘플 오디오 신호 테스트에 기초하여 초기화 파라미터가 계산되면, 이 초기화 파라미터는 데이터 저장 모듈(222)에 저장된다. 초기화 파라미터는, 이하에서 더 기술되는 바와 같이, 실제의 실시간 통신 세션의 시작에서 호출된다.
도 2에 나타낸 바와 같이, 컴퓨터 시스템(200)은 또한 사용자 모드 내에서 동작하는 오디오 애플리케이션(226)을 포함한다. 오디오 애플리케이션(226)은 통신 세션을 수행하도록 구성되어 있는 입력 및 출력 장치, 예를 들어, 마이크(202) 및 스피커(204)를 제어하는 사용자에 의해 개시되는 소프트웨어 프로그램일 수 있다. 예시적인 오디오 애플리케이션은 VOIP 클라이언트 또는 오디오-지원 채팅 프로그램일 수 있다.
"에코 소거 선택"(224) 애플리케이션 프로그램 인터페이스(API)는, 샘플 오디오 파일(214)로 에코 소거 모듈(220)에서 한 테스트의 결과에 기초하여, 오디오 애플리케이션(226)이 통신 세션 동안에 에코 소거를 인에이블 또는 디스에이블해야 하는지를 나타내는 데이터를 전송하기 위해 에코 파라미터화 모듈(212)과 오디오 애플리케이션(226) 간의 인터페이스로서 기능한다. 다른 대안으로서, 오디오 애플리케이션(226)은 오디오 애플리케이션(226)에서 에코 소거를 수동으로 인에이블 또는 디스에이블시키기 위해 그래픽 사용자 인터페이스(GUI)에서 메시지를 통해 경보를 사용자에게 제공할 수 있다(예를 들어, 디스플레이 모니터 상에 "팝업"창이 제공될 수 있다).
제2 API, 즉 오디오 장치 선택 API(228)는 또한 오디오 애플리케이션(226)과 또한 입출력 포트와 인터페이스하며, 이 포트를 통해 마이크(202) 및 스피커(204) 가 컴퓨터 시스템에 연결되어 있다. (도 2에 도시되어 있지는 않지만, 오디오 애플리케이션(226)은 그에 부가하여 스피커(204)에서 오디오 애플리케이션(226)에 의해 수행되는 통신 세션으로부터 사운드(예를 들어, VOIP 전화 통화)를 생성하기 위해 별도의 API로 오디오 렌더링 모듈(208)과 인터페이스할 수 있다.)
오디오 장치 선택 API(228)는 오디오 애플리케이션(226)에서 사용하기 위해 원하는 오디오 장치에 연결된 입력 포트 또는 출력 포트를 활성화시킨다. 예를 들어, 사용자의 컴퓨터 시스템(200)은 복수의 마이크(202), 예를 들어, 디스플레이 모니터에 일체화된 제1 마이크 및 웹 카메라에 일체화된 제2 마이크, 및 복수의 스피커(204), 예를 들어, 컴퓨터 시스템(200)에 유선으로 연결된 제1 스피커 세트 및 디스플레이 모니터에 일체화된 제2 스피커 세트를 가질 수 있다. 오디오 애플리케이션(226)은 오디오 통신을 위해 사용자가 어느 마이크 및 스피커 세트를 사용하고자 하는지를 사용자에게 질문할 수 있다. 오디오 애플리케이션(226)은 원하는 마이크(202) 및 스피커(204) 조합을 활성화시키기 위해 오디오 장치 선택 API(228)를 통해 적절한 데이터 포트를 열고 닫는다.
자동 에코 소거 판정을 수행하기 위해 컴퓨터 시스템에 의해 수행되는 예시적인 일련의 동작들이 도 4에 도시되어 있다. 도 2의 컴퓨터 시스템의 예시적인 구성과 관련하여, 에코 파라미터화 모듈은 샘플 오디오 파일에 대응하는 에코 효과의 존재를 검출하고, 특정의 컴퓨터 시스템 환경 및 주변 오디오 장치 구성에 대해 에코 소거 루틴이 필요한지를 판정하며, 에코 소거 알고리즘에 대한 초기화 파라미터를 계산하도록 구성되어 있다. 도 2의 컴퓨터 시스템과 관련하여 기술되어 있지 만, 본 명세서에 기술된 이들 및 다른 동작들은 도 2의 컴퓨터 시스템 이외의 시스템들에서 수행될 수 있다. 이들 동작 중 임의의 것 또는 그 전부가 하드웨어, 소프트웨어, 펌웨어 또는 이들의 임의의 조합에 의해 수행될 수 있다.
처음에, 선택 동작(402)에서, 오디오 애플리케이션은 오디오 통신 세션을 위한 오디오 장치 구성을 선택 및 구성하거나 자동적으로 선택하도록 사용자를 프롬프트한다. 오디오 장치 구성이 결정되면, 재생 동작(408)이 개시된다. 재생 동작(408)에서, 샘플 오디오 파일이 선택된 스피커를 통해 재생하기 위해 오디오 렌더링 장치로 전송된다. 이러한 프롬프트 또는 요청은 GUI 메시지를 통해 디스플레이 모니터 상에 제공될 수 있다. 캡처 동작(406)은, 샘플 오디오 파일에 상관되는 스피커에 의해 발생된 사운드를 비롯하여, 마이크에 의해 픽업된 음파를 녹음한다. 이 음파는 마이크에 의해 아날로그 신호로 변환되고, 이 아날로그 신호는 또한 오디오 캡처 모듈에 의해 디지털 오디오 형식으로 변환된다.
샘플 오디오 파일은 또한, 변환 동작(408)에서, 신호 처리기에 의해 액세스되고 캡처된 오디오 데이터의 형식과 쉽게 비교될 수 있는 데이터 형식으로 변환된다. 예를 들어, 캡처된 오디오 데이터가 PMC 형식으로 되어 있고 샘플 오디오 파일이 WAV 형식으로 되어 있는 경우, 샘플 오디오 파일은 WAV로부터 PMC로 변환될 수 있다. 대안의 동작(도 4에 도시되지 않음)에서, 캡처된 오디오 데이터는 신호 처리기에 의해 샘플 오디오 파일의 형식으로 변환될 수 있다. 또 다른 대안의 동작(도 4에 도시되지 않음)에서, 캡처된 오디오 데이터 및 샘플 오디오 파일 둘 다의 데이터 형식은 제3의 공통 형식으로 변환될 수 있다.
샘플 오디오 파일 및 캡처된 오디오 데이터가 공통의 형식으로 되어 있는 경우, 제1 분석 동작(410)은 변환된 샘플 오디오 파일에 대응하는 샘플 오디오 신호의 주파수 범위, 박자(time signature), 에너지 레벨 및 임의의 다른 원하는 특성을 분석한다. 제2 분석 동작(412)은 이와 유사하게 캡처된 오디오 데이터에 대응하는 캡처된 오디오 신호의 주파수 범위, 박자, 에너지 레벨 및 임의의 다른 원하는 특성을 분석한다.
이어서, 판정 동작(414)은 샘플 오디오 신호가 캡처된 오디오 신호 내에서 발견된 에코 효과에 대한 기초를 형성하기 위해 캡처된 오디오 신호의 특성을 샘플 오디오 신호와 비교한다. 판정 동작(414)은 캡처된 오디오 데이터를 샘플 오디오 데이터에 상관시키는 것을 돕기 위해 캡처된 오디오 데이터의 윈도우 또는 스냅샷을 연속적으로 분석할 수 있다. 판정 동작(414)은 샘플 오디오 파일이 스피커에 의해 재생된 기간에 대응하는 특정의 기간으로부터 윈도우를 선택함으로써 상관을 위해 검토되는 캡처된 오디오 신호의 윈도우를 좁힐 수 있다. 따라서, 캡처된 오디오 신호의 각각의 윈도우에 대한 주파수 범위 및 에너지 레벨과 샘플 오디오 신호에 대한 주파수 범위 및 에너지 레벨 간에 적절한 상관이 행해진다. 이것은 에코 소거 모듈에 의해 계산되는 초기화 파라미터가 마이크에 의해 픽업된 주변 배경 노이즈가 아니라 샘플 오디오 파일의 분석에 기초하도록 하기 위해 품질 제어 기능으로 볼 수 있다. 오디오 신호가 동일할 필요는 없고 단지 적절히 비슷하면 된다. 적절히 비슷하다고 생각되는 값 차이의 문턱값 또는 범위는 사전 결정되거나 사용자-설정가능할 수 있다.
판정 동작(414)이 내용 상관을 위해 캡처된 오디오 신호와 샘플 오디오 신호를 비교하는 반면, 처리 동작(416)은 에코 소거 알고리즘을 통해 캡처된 오디오 신호 및 샘플 오디오 신호를 처리한다. 에코 소거 알고리즘은 공지되어 있으며, 이 동작에서 어떤 예시적인 에코 소거 알고리즘이라도 사용될 수 있다. 예를 들어, 컴퓨터 시스템에서 사용하기 위한 대부분의 현재의 오디오 통신 프로그램, 예를 들어, MSN 메신저
Figure 112008034784525-pct00001
, AOL
Figure 112008034784525-pct00002
인스턴트 메신저, Skype™, Google
Figure 112008034784525-pct00003
Talk 및 기타 등등은 사용자에 의해 수동으로 인에이블될 수 있는 에코 소거 알고리즘을 이용한다. 에코 소거 알고리즘은 일반적으로 동적이며 변하는 환경, 예를 들어, 다른 사용자의 음성 또는 물리적 위치에 기초하여 변할 수 있는 에코 효과를 제거하기 위해 계속하여 조정 또는 "수렴"된다. 처리 동작(416)은 처음에, 있는 경우, 에코 효과가 소거할만큼 상당한 레벨에 있는지의 문턱값 판정을 행한다. 그러한 경우, 처리 동작(416)은 또한 에코 효과를 감소 또는 제거하기 위해 에코 소거 알고리즘을 통해 캡처된 오디오 신호 및 샘플 오디오 신호를 처리한다.
계산 동작(418)은 샘플 오디오 파일에 대응하는 에코 효과를 소거하기 위해 에코 소거 알고리즘에 의해 사용되는 일련의 파라미터를 결정한다. 에코 소거 알고리즘이 컴퓨터 시스템의 환경 및 연결된 주변 오디오 장치의 구성으로부터 생기는 에코 효과를 소거할 일련의 파라미터를 계산하기에 충분한 시간 길이의 샘플 오디오 신호를 발생하기 위해 샘플 오디오 파일이 선택된다. 계산 동작(418)에 의해 계산되는 일련의 파라미터가 저장 동작(420)에서 데이터 저장 모듈에 저장된다. 저장된 파라미터는 컴퓨터 시스템에 의해 호스팅되는 실시간 통신 세션을 필터링하 기 위해 에코 소거 알고리즘이 개시될 때 초기화 파라미터로서 사용된다.
도 5는 네트워크(518)를 통해 실시간 통신 세션에 참가하도록 구성되어 있는 컴퓨터 시스템(500)을 나타낸 것이다. 통신 세션이 시작되기 이전에, 에코 소거 모듈(520)은 데이터 저장 모듈(522)로부터의 초기화 파라미터에 액세스한다. 이들 초기화 파라미터는 도 4의 예시적인 동작들을 통해 샘플 오디오 파일과 관련하여 계산된 파라미터이다. 따라서, 실시간 통신 세션이 개시될 때, 다른 참가자(524)로부터의 오디오 신호가 컴퓨터 시스템(500)에 연결된 네트워크(518)를 통해 사용자의 컴퓨터 시스템(500)에 도달하고, 에코 소거 모듈(520)은 사용자에 의해 지각가능한 래그 시간(lag time)이 없이 에코 효과를 즉각 효과적으로 소거할 수 있다.
일반적인 실시간 통신 세션 동안에, 다른 참가자로부터의 오디오 신호(524)가 네트워크(518)를 통해 컴퓨터 시스템(500)으로 전송될 수 있다. 착신 오디오 신호는 착신 오디오 신호를 복조 및 다른 방식으로 디코딩하기 위해 디코더(514)에 의해 처리된다. 착신 오디오 신호는 이어서 에코 소거 모듈(520) 및 오디오 렌더링 모듈(508) 둘다로 전송된다. 착신 오디오 신호는 스피커(504)에 의해 출력하기 위해 오디오 렌더링 모듈(508)에 의해 디지털 데이터로부터 아날로그 신호로 변환된다. 스피커(504)에 의해 발생되는 착신 오디오 신호에 대응하는 음파는, 스피커(504)로부터 마이크(502)로의 화살표로 나타낸 바와 같이, 마이크(502)에 의해 픽업된다.
마이크(502)는 사용자에 의해 발생되는 사운드(예를 들어, 음성) 및 주변 노이즈에 부가하여 착신 오디오 사운드를 캡처한다. 캡처된 오디오는 아날로그 신호 로 변환되고 이 아날로그 신호는 오디오 캡처 모듈(506)에 의해 디지털 캡처된 오디오 신호로 변환된다. 캡처된 오디오 신호는 에코 소거 모듈(520)로 전달되기 이전에 착신 오디오 신호로서 공통의 디지털 데이터 형식으로의 변환을 위해 신호 처리기(516)로 전송된다. 다른 대안으로서, 착신 오디오 신호는 디코더(514)로부터 신호 처리기(516)로 전송될 수 있는 반면, 캡처된 오디오 신호는 오디오 캡처 모듈(506)로부터 에코 소거 모듈(520)로 직접 전송될 수 있다. 게다가, 착신 오디오 신호 및 캡처된 오디오 신호 둘다는 에코 소거 모듈(520)에 의한 추가의 처리를 위해 신호 처리기(516)에 의해 처리되어 공통의 데이터 형태로 될 수 있다.
데이터 저장 모듈(522)로부터의 초기화 파라미터를 사용하여, 에코 소거 모듈(520)은 착신 오디오 신호에 대응하는 에코 효과를 제거하기 위해 캡처된 오디오 신호를 필터링한다. 앞서 기술한 바와 같이, 사용되는 에코 소거 알고리즘은 동적이고 주변의 변화로 인하여 변동 및 변경될 수 있는 에코 효과가 있는지 캡처된 오디오 신호를 계속하여 모니터링한다. 따라서, 에코 효과의 변동에 대처하고 계속적인 수렴을 보장하기 위해 착신 오디오 신호가 캡처된 오디오 신호와 비교하기 위한 데이터로서 에코 소거 모듈(520)에 입력된다. 착신 오디오 신호는 따라서 샘플 오디오 데이터가 초기화 파라미터를 발생하는 데 사용되었던 거의 동일한 방식으로 통신 세션 동안에 갱신된 파라미터 값을 얻기 위해 에코 소거 모듈(520)에 의해 사용된다. 그렇지만, 초기화 파라미터를 사용함으로써, 그렇지 않았으면 에코 효과가 존재할 래그(lag) 기간 없이 통신 세션의 시작에서 효과적인 에코 소거가 제공된다.
캡처된 오디오 신호가 필터링되면, 이는 변조 및 기타 필요한 데이터 변환을 하여 네트워크(518)를 거쳐 통신 세션에의 다른 참가자(들)로 전송하기 위해 인코더 모듈(512)로 전송된다. 이 프로세스는 통신 세션 동안에 계속된다. 따라서, 각각의 새로운 통신 세션이 개시될 때, 샘플 오디오 파일로 테스트 프로세스를 통해 구성된 초기화 파라미터는 효과적이고 즉각적인 에코 소거를 제공하기 위해 에코 소거 모듈에 의해 액세스될 수 있다. 초기화 파라미터는 구성 또는 환경을 변경하지 않는 컴퓨터 시스템에 가장 효과적이다. 컴퓨터 시스템이 종종 다양한 환경으로 이동하는 상황에서, 예를 들어 랩톱 컴퓨터 사용자가 종종 여행하거나 또는 컴퓨터 시스템이 다른 대안으로서 사용자에 의해 선택되는 다수의 주변 오디오 장치 옵션을 갖는 상황에서, 사용자는 즉각적인 에코 소거의 이점을 이용하기 위해 통신 세션을 개시하기 이전에 그 환경에 특유한 새로운 초기화 파라미터를 설정하기 위해 새로운 환경에서 테스트 프로그램을 실행할 수 있다.
도 6은 통신 세션의 개시 시에 컴퓨터 시스템에 의해 수행되는 일련의 동작들을 나타낸 것으로서, 여기서 에코 소거 프로그램에 대한 초기화 파라미터는 미리 계산되어 저장되어 있다. 인스턴스화 동작(602)에서, 컴퓨터 시스템 상에서 실시간 오디오 통신 세션을 수행하기 위해 오디오 애플리케이션이 활성화된다. 로딩 동작(604)에서, 이전에 저장된 에코 소거 파라미터가 데이터 저장 장소로부터 검색되어 에코 소거 모듈에 입력된다. 적용 동작(606)에서, 오디오 애플리케이션은 초기화 파라미터를 이용하여 에코 소거를 인에이블시켜 즉각 캡처된 오디오 신호에 적용한다. 통신 세션이 진행됨에 따라, 조정 동작(608)은 에코 소거 알고리즘의 유효성을 최대화하기 위해 캡처된 오디오 신호에 영향을 줄 수 있는 착신 오디오 신호의 변동 및 환경의 변화를 고려하여 회의 동안에 필요에 따라 에코 소거 파라미터를 조정한다.
도 7은 네트워크를 통해 실시간 통신 세션을 수행하는 데 사용될 수 있고 또 본 명세서에 기술된 검출 기술이 동작할 수 있는 예시적인 컴퓨터 시스템(700)을 나타낸 것이다. 한 구현에서, 컴퓨터 시스템(700)은 데스크톱 또는 랩톱 컴퓨터에 의해 구현될 수 있지만, 다른 구현들, 예를 들어, 비디오 게임 콘솔, 셋톱 박스, 휴대용 게임 시스템, PDA(personal digital assistant), 및 모바일 전화가 기재된 기술을 실시할 수 있다. 컴퓨터 시스템(700)은 일반적으로 적어도 하나의 처리 장치(702) 및 메모리(704)를 포함한다. 컴퓨터 시스템(700)의 정확한 구성 및 유형에 따라, 메모리(704)는 휘발성(예를 들어, RAM), 비휘발성(예를 들어, ROM 및 플래쉬 메모리) 또는 이 둘의 어떤 조합일 수 있다. 컴퓨터 시스템(700)의 가장 기본적인 구성은 파선(706)으로 나타낸 처리 장치(702) 및 메모리(704)만 포함하면 된다.
컴퓨터 시스템(700)은 메모리 저장 또는 검색을 위한 부가의 장치들을 더 포함할 수 있다. 이들 장치는 이동식 저장 장치(708) 또는 비이동식 저장 장치(710), 예를 들어, 자기 및 광 매체 상에 메모리 저장 및 검색을 하기 위한 자기 디스크 드라이브, 자기 테이프 드라이브 및 광 드라이브일 수 있다. 저장 매체는 휘발성 및 비휘발성 매체(이동식이기도 하고 비이동식이기도 함)를 포함할 수 있으며, 다수의 구성들 중 어느 구성으로도, 예를 들어, RAM, ROM, EEPROM, 플래쉬 메 모리, CD-ROM, DVD 또는 기타 광 저장 매체, 자기 카세트, 자기 테이프, 자기 디스크 또는 기타 자기 저장 장치, 또는 데이터를 저장하는 데 사용될 수 있고 처리 장치(702)에 의해 액세스될 수 있는 임의의 다른 메모리 기술 또는 매체로 제공될 수 있다. 정보, 예를 들어, 컴퓨터 판독가능 명령어, 데이터 구조, 및 프로그램 모듈이 임의의 데이터 저장 방법 또는 기술을 사용하여 저장 매체 상에 저장될 수 있다.
컴퓨터 시스템(700)은 또한 시스템(700)이 다른 장치들과 통신할 수 있게 해주는 하나 이상의 통신 인터페이스(712)를 가질 수 있다. 통신 인터페이스(712)는 근거리 통신망(LAN), 원거리 통신망(WAN), 전화 네트워크, 케이블 네트워크, 인터넷, 직접 배선 접속, 무선 네트워크, 예를 들어, 무선 주파수, 적외선, 마이크로파, 또는 음향, 또는 장치들 간의 데이터 전송을 가능하게 해주는 기타 네트워크에 연결될 수 있다. 데이터는 일반적으로 피변조 데이터 신호, 예를 들어, 반송파 또는 기타 전송 매체를 통해 네트워크를 거쳐 통신 인터페이스(712)로/로부터 전송된다. 피변조 데이터 신호는 신호 내에 데이터를 인코딩하도록 그 특성들이 설정 또는 변경될 수 있는 전자기 신호이다.
컴퓨터 시스템(700)은 다양한 입력 장치(714) 및 출력 장치(716)를 더 가질 수 있다. 예시적인 입력 장치(714)는 키보드, 마우스, 태블릿, 터치 스크린 장치, 스캐너, 시각 입력 장치(visual input device), 및 마이크 또는 기타 사운드 입력 장치를 포함할 수 있다. 예시적인 출력 장치(716)는 디스플레이 모니터, 프린터, 및 스피커를 포함할 수 있다. 이러한 입력 장치(714) 및 출력 장치(716)는 컴퓨터 시스템(700)에 일체화되어 있을 수 있거나, 유선 또는 무선으로, 예를 들어, 블루투스 프로토콜을 통해 컴퓨터 시스템(700)에 연결될 수 있다. 이들 일체화된 또는 주변 입력 및 출력 장치는 일반적으로 공지되어 있으며, 본 명세서에서 더 설명하지 않는다. 한 구현에서, 예를 들어, 샘플 오디오 파일을 비롯한, 에코 소거를 구성하는 방법 또는 모듈을 구현하는 프로그램 명령어는 메모리(704) 및 저장 장치(708, 710)에 구현되고 처리 장치(702)에 의해 실행된다. 예를 들어, 오디오 렌더링 모듈 및 오디오 캡처 모듈에 의해 수행되는 기타 기능들은 컴퓨터 시스템(700)의 비휘발성 메모리(704)에 있는 운영 체제에 의해 수행될 수 있다.
본 명세서에 설명된 기술은 하나 이상의 시스템에서 논리적 연산 및/또는 모듈로서 구현된다. 논리적 연산은 하나 이상의 컴퓨터 시스템에서 실행되는 일련의 프로세서-구현 단계들로서 또한 하나 이상의 컴퓨터 시스템 내의 상호 연결된 기계 또는 회로 모듈로서 구현될 수 있다. 이와 마찬가지로, 여러가지 컴포넌트 모듈의 설명이 모듈들에 의해 실행 또는 실시되는 동작들과 관련하여 제공될 수 있다. 그 결과의 구현은 설명된 기술을 구현하는 기반 시스템의 성능 요건에 따른 선택의 문제이다. 그에 따라, 본 명세서에 설명된 기술의 실시예들을 구성하는 논리적 동작은 동작, 단계, 객체 또는 모듈 등 여러가지로 말해진다. 게다가, 명시적으로 달리 청구되지 않는 한 또는 특정의 순서가 청구항에 의해 본질적으로 요구되지 않는 한, 논리적 동작이 임의의 순서로 수행될 수 있다는 것을 잘 알 것이다.
상기 명세서, 일례들 및 데이터는 본 발명의 실시예들의 구조 및 사용에 대 한 완전한 설명을 제공한다. 비록 본 발명의 여러가지 실시예들이 어느 정도 상세하게 또는 하나 이상의 개별 실시예를 참조하여 기술되어 있지만, 당업자라면 본 발명의 정신 또는 범위를 벗어나지 않고 개시된 실시예들에 많은 변경을 할 수 있다. 상세하게는, 설명된 기술이 퍼스널 컴퓨터와 별개로 이용될 수 있다는 것을 잘 알 것이다. 따라서, 다른 실시예들이 생각된다. 상기 설명에 포함되고 첨부 도면에 도시된 모든 내용이 제한하는 것이 아니라 특정의 실시예들을 예시하는 것에 불과한 것으로 해석되어야만 한다. 이하의 청구항에 정의된 본 발명의 기본적인 구성요소를 벗어나지 않고 상세 또는 구조의 변경이 행해질 수 있다.

Claims (20)

  1. 컴퓨터 시스템에서 에코 소거(echo cancellation)를 적용할지를 판정하는 방법으로서,
    상기 컴퓨터 시스템은 마이크 및 스피커에 연결되어 있고,
    상기 방법은 실시간 통신 세션(real-time communication session)에 앞서,
    샘플 오디오 신호로부터 발생된 샘플 사운드를 상기 스피커를 통해 출력하는 단계,
    캡처된 오디오 신호를 생성하기 위해 상기 샘플 사운드를 상기 마이크를 통해 캡처하는 단계,
    상기 캡처된 오디오 신호의 하나 이상의 특성(characteristics)을 상기 샘플 오디오 신호의 하나 이상의 해당 특성과 비교하여, 상기 캡처된 오디오 신호가 상기 샘플 오디오 신호로부터 발생되어 상기 스피커를 통해 출력된 상기 샘플 사운드로부터 비롯된 것인지를 판정하는 단계,
    상기 캡처된 오디오 신호가 상기 샘플 오디오 신호와 연관된 에코 효과(echo effect)를 포함하는지를 판정하기 위해 상기 캡처된 오디오 신호 및 상기 샘플 오디오 신호를 분석하는 단계,
    에코 소거 알고리즘(echo cancellation algorithm)을 활성화하도록 상기 컴퓨터 시스템을 자동적으로 구성하는 단계,
    상기 분석 단계의 결과를 기초로 상기 에코 소거 알고리즘에 대한 하나 이상의 초기화 파라미터를 계산하는 단계 - 상기 하나 이상의 초기화 파라미터는 상기 캡처된 오디오 신호의 상기 에코 효과를 소거하도록 상기 에코 소거 알고리즘을 위한 상기 샘플 오디오 신호와 상기 캡처된 오디오 신호 간의 슬라이딩 윈도우(sliding window)의 가변 크기를 동기화 하는데 사용되고, 상기 슬라이딩 윈도우의 크기는 에코의 수(number of echoes), 지연의 변동(variation in delay) 및 반사 경로(reflection path) 중의 적어도 하나에 기초하여 파라미터화됨 - , 및
    상기 컴퓨터 시스템 내의 메모리에 상기 하나 이상의 초기화 파라미터를 저장하는 단계를 포함하는 방법.
  2. 제1항에 있어서,
    상기 실시간 통신 세션 동안에,
    상기 메모리로부터 상기 저장된 초기화 파라미터에 액세스하는 단계,
    상기 저장된 초기화 파라미터를 이용하여 상기 에코 소거 알고리즘을 활성화시키는 단계, 및
    상기 에코 소거 알고리즘을 사용하여 상기 실시간 통신 세션 동안에 마이크를 통해 캡처된 실시간 오디오 신호를 필터링하는 단계를 더 포함하는 방법.
  3. 제2항에 있어서,
    상기 실시간 통신 세션 동안, 상기 필터링 동작 동안에 상기 에코 소거 알고리즘의 상기 저장된 초기화 파라미터를 상기 에코 소거 알고리즘에 의해 동적으로 발전된 부가의 파라미터로 대체하는 단계를 더 포함하는 방법.
  4. 제1항에 있어서,
    상기 샘플 오디오 신호와 상기 캡처된 오디오 신호를 공통의 형식(common format)으로 변환하는 단계를 더 포함하는 방법.
  5. 제1항의 방법을 구현하는 컴퓨터 프로세스를 수행하는 컴퓨터 실행가능 명령어들을 갖는 컴퓨터 판독가능 매체.
  6. 컴퓨터 시스템에서 에코 소거 알고리즘을 구성하는 방법으로서,
    상기 컴퓨터 시스템은 마이크 및 스피커에 연결되어 있고,
    상기 방법은 실시간 통신 세션에 앞서,
    샘플 오디오 신호로부터 발생된 샘플 사운드를 상기 스피커를 통해 출력하는 단계,
    캡처된 오디오 신호를 생성하기 위해 상기 마이크를 통해 상기 샘플 사운드를 캡처하는 단계,
    상기 캡처된 오디오 신호의 하나 이상의 특성을 상기 샘플 오디오 신호의 하나 이상의 해당 특성과 비교하여, 상기 캡처된 오디오 신호가 상기 샘플 오디오 신호로부터 발생되어 상기 스피커를 통해 출력된 상기 샘플 사운드로부터 비롯된 것인지를 판정하는 단계, 및
    상기 캡처된 오디오 신호에서 검출되고 상기 샘플 오디오 신호와 연관된 에코 효과를 소거하는 상기 에코 소거 알고리즘에 대한 하나 이상의 초기화 파라미터를 계산하는 단계를 포함하는 방법.
  7. 제6항에 있어서,
    상기 에코 효과의 검출 시에 상기 에코 소거 알고리즘을 활성화하도록 상기 컴퓨터 시스템을 자동적으로 구성하는 단계를 더 포함하는 방법.
  8. 제6항에 있어서,
    상기 샘플 오디오 신호와 상기 캡처된 오디오 신호를 공통의 형식으로 변환하는 단계를 더 포함하는 방법
  9. 제6항에 있어서,
    상기 초기화 파라미터를 이용하여 상기 에코 소거 알고리즘을 활성화시키는 단계, 및
    상기 에코 소거 알고리즘을 통해 부가의 캡처된 오디오 신호를 필터링하는 단계를 더 포함하는 방법.
  10. 제6항에 있어서,
    상기 컴퓨터 시스템 내의 메모리에 상기 초기화 파라미터를 저장하는 단계를 더 포함하는 방법.
  11. 제10항에 있어서,
    상기 메모리로부터의 상기 초기화 파라미터에 액세스하는 단계,
    상기 초기화 파라미터를 이용하여 상기 에코 소거 알고리즘을 활성화 시키는 단계, 및
    상기 에코 소거 알고리즘을 통해 부가의 캡처된 오디오 신호를 필터링하는 단계를 더 포함하는 방법.
  12. 제11항에 있어서,
    상기 필터링 동작 동안에 상기 에코 소거 알고리즘에서의 상기 초기화 파라미터를 상기 에코 소거 알고리즘에 의해 동적으로 발전된 부가의 파라미터로 대체하는 단계를 더 포함하는 방법.
  13. 제6항의 방법을 구현하는 컴퓨터 프로세스를 수행하는 컴퓨터 실행가능 명령어들을 갖는 컴퓨터 판독가능 매체.
  14. 에코 소거 알고리즘을 구성하는 컴퓨터 시스템으로서,
    상기 컴퓨터 시스템은,
    프로세서,
    상기 프로세서에 의해 액세스가능하고 샘플 오디오 신호를 구현하는 샘플 오디오 파일을 갖는 메모리,
    상기 프로세서의 제어 하에서 상기 샘플 오디오 신호에 대응하는 샘플 사운드를 출력할 수 있는 스피커,
    상기 프로세서의 제어 하에서 상기 샘플 사운드를 비롯한 캡처된 사운드를 수신하여 대응하는 캡처된 오디오 신호를 생성할 수 있는 마이크,
    상기 프로세서의 제어 하에서 상기 캡처된 오디오 신호의 하나 이상의 특성을 상기 샘플 오디오 신호의 하나 이상의 해당 특성과 비교하여, 상기 캡처된 오디오 신호가 상기 스피커에서 출력된 상기 샘플 오디오 신호에 해당하는 상기 샘플 사운드로부터 비롯된 것인지를 판정할 수 있는 신호 검출 모듈, 및
    상기 캡처된 오디오 신호에서 발견되고 상기 샘플 오디오 신호와 연관된 에코 효과를 소거하는 상기 에코 소거 알고리즘에 대한 하나 이상의 초기화 파라미터를 계산하는 에코 소거 모듈을 포함하는 컴퓨터 시스템.
  15. 제14항에 있어서,
    상기 신호 검출 모듈은 상기 샘플 오디오 신호 및 상기 캡처된 오디오 신호 둘다를 수신할 수 있고, 상기 캡처된 오디오 신호가 상기 샘플 오디오 신호와 연관된 에코 효과를 포함하는지를 판정하기 위해 상기 샘플 오디오 신호를 상기 캡처된 신호와 비교하도록 구성되어 있는 컴퓨터 시스템.
  16. 제14항에 있어서,
    상기 메모리는 또한 상기 초기화 파라미터를 저장하는 컴퓨터 시스템.
  17. 제16항에 있어서,
    상기 프로세서는 또한
    상기 메모리로부터의 상기 초기화 파라미터에 액세스하고,
    상기 초기화 파라미터를 이용하여 상기 에코 소거 알고리즘을 활성화시키며,
    상기 에코 소거 알고리즘을 통해 부가의 캡처된 오디오 신호를 필터링하는 컴퓨터 시스템.
  18. 삭제
  19. 삭제
  20. 삭제
KR1020087011728A 2005-11-17 2006-10-30 컴퓨터 시스템에서 에코 소거를 적용할지를 판정하는 방법,컴퓨터 시스템에서 에코 소거 알고리즘을 구성하는 방법및 에코 소거 알고리즘을 구성하는 컴퓨터 시스템 KR101255404B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/281,000 2005-11-17
US11/281,000 US7881460B2 (en) 2005-11-17 2005-11-17 Configuration of echo cancellation
PCT/US2006/042505 WO2007061583A1 (en) 2005-11-17 2006-10-30 Configuration of echo cancellation

Publications (2)

Publication Number Publication Date
KR20080077607A KR20080077607A (ko) 2008-08-25
KR101255404B1 true KR101255404B1 (ko) 2013-04-17

Family

ID=38053556

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087011728A KR101255404B1 (ko) 2005-11-17 2006-10-30 컴퓨터 시스템에서 에코 소거를 적용할지를 판정하는 방법,컴퓨터 시스템에서 에코 소거 알고리즘을 구성하는 방법및 에코 소거 알고리즘을 구성하는 컴퓨터 시스템

Country Status (7)

Country Link
US (1) US7881460B2 (ko)
EP (1) EP1949552B1 (ko)
JP (1) JP5085556B2 (ko)
KR (1) KR101255404B1 (ko)
CN (1) CN101313483B (ko)
DK (1) DK1949552T3 (ko)
WO (1) WO2007061583A1 (ko)

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070112563A1 (en) * 2005-11-17 2007-05-17 Microsoft Corporation Determination of audio device quality
US7876996B1 (en) 2005-12-15 2011-01-25 Nvidia Corporation Method and system for time-shifting video
US8738382B1 (en) * 2005-12-16 2014-05-27 Nvidia Corporation Audio feedback time shift filter system and method
US8565416B2 (en) * 2006-03-17 2013-10-22 Cisco Technology, Inc. Cache-based echo canceller
US10084627B2 (en) * 2006-07-10 2018-09-25 Qualcomm Incorporated Frequency hopping in an SC-FDMA environment
US8208516B2 (en) * 2006-07-14 2012-06-26 Qualcomm Incorporated Encoder initialization and communications
US7995745B1 (en) 2006-08-11 2011-08-09 Parry James H Structure and method for echo reduction without loss of information
WO2009105129A1 (en) * 2008-02-18 2009-08-27 Clear Channel Management Services, L.P. System and method for media stream monitoring
US20110211037A1 (en) * 2008-10-15 2011-09-01 Gygax Otto A Conferencing System With A Database Of Mode Definitions
US20130298040A1 (en) * 2010-04-30 2013-11-07 American Teleconferencing Services, Ltd. Systems, Methods, and Computer Programs for Providing Simultaneous Online Conferences
CN103636236B (zh) 2011-07-01 2016-11-09 杜比实验室特许公司 音频回放系统监视
US9084058B2 (en) 2011-12-29 2015-07-14 Sonos, Inc. Sound field calibration using listener localization
US9065895B2 (en) * 2012-02-22 2015-06-23 Broadcom Corporation Non-linear echo cancellation
US9690539B2 (en) 2012-06-28 2017-06-27 Sonos, Inc. Speaker calibration user interface
US9106192B2 (en) 2012-06-28 2015-08-11 Sonos, Inc. System and method for device playback calibration
US9706323B2 (en) 2014-09-09 2017-07-11 Sonos, Inc. Playback device calibration
US9219460B2 (en) 2014-03-17 2015-12-22 Sonos, Inc. Audio settings based on environment
US9497544B2 (en) 2012-07-02 2016-11-15 Qualcomm Incorporated Systems and methods for surround sound echo reduction
JP6036225B2 (ja) * 2012-11-29 2016-11-30 セイコーエプソン株式会社 書画カメラ、映像音声出力システムおよび映像音声出力方法
GB201308247D0 (en) * 2013-05-08 2013-06-12 Microsoft Corp Noise reduction
US9319532B2 (en) * 2013-08-15 2016-04-19 Cisco Technology, Inc. Acoustic echo cancellation for audio system with bring your own devices (BYOD)
US9264839B2 (en) 2014-03-17 2016-02-16 Sonos, Inc. Playback device configuration based on proximity detection
US10127006B2 (en) 2014-09-09 2018-11-13 Sonos, Inc. Facilitating calibration of an audio playback device
US9891881B2 (en) 2014-09-09 2018-02-13 Sonos, Inc. Audio processing algorithm database
US9952825B2 (en) 2014-09-09 2018-04-24 Sonos, Inc. Audio processing algorithms
US9910634B2 (en) 2014-09-09 2018-03-06 Sonos, Inc. Microphone calibration
US9191494B1 (en) 2015-04-06 2015-11-17 Captioncall, Llc Device, system, and method for performing echo cancellation in different modes of a communication device
US10664224B2 (en) 2015-04-24 2020-05-26 Sonos, Inc. Speaker calibration user interface
WO2016172593A1 (en) 2015-04-24 2016-10-27 Sonos, Inc. Playback device calibration user interfaces
CN105187594B (zh) * 2015-07-28 2018-09-04 小米科技有限责任公司 一种消除回声的方法和装置
US9538305B2 (en) 2015-07-28 2017-01-03 Sonos, Inc. Calibration error conditions
US9693165B2 (en) 2015-09-17 2017-06-27 Sonos, Inc. Validation of audio calibration using multi-dimensional motion check
JP6437695B2 (ja) 2015-09-17 2018-12-12 ソノズ インコーポレイテッド オーディオ再生デバイスのキャリブレーションを容易にする方法
US10032475B2 (en) * 2015-12-28 2018-07-24 Koninklijke Kpn N.V. Enhancing an audio recording
US9743207B1 (en) 2016-01-18 2017-08-22 Sonos, Inc. Calibration using multiple recording devices
US11106423B2 (en) 2016-01-25 2021-08-31 Sonos, Inc. Evaluating calibration of a playback device
US10003899B2 (en) 2016-01-25 2018-06-19 Sonos, Inc. Calibration with particular locations
JP6690309B2 (ja) * 2016-03-09 2020-04-28 ヤマハ株式会社 エコー低減装置、及び音声通信装置
US9864574B2 (en) 2016-04-01 2018-01-09 Sonos, Inc. Playback device calibration based on representation spectral characteristics
US9860662B2 (en) 2016-04-01 2018-01-02 Sonos, Inc. Updating playback device configuration information based on calibration data
US9763018B1 (en) 2016-04-12 2017-09-12 Sonos, Inc. Calibration of audio playback devices
US9794710B1 (en) 2016-07-15 2017-10-17 Sonos, Inc. Spatial audio correction
US9860670B1 (en) 2016-07-15 2018-01-02 Sonos, Inc. Spectral correction using spatial calibration
US10372406B2 (en) 2016-07-22 2019-08-06 Sonos, Inc. Calibration interface
US10459684B2 (en) * 2016-08-05 2019-10-29 Sonos, Inc. Calibration of a playback device based on an estimated frequency response
CN108134881B (zh) * 2018-03-06 2023-07-25 睿云联(厦门)网络通讯技术有限公司 一种回音消除测试工具、ip通讯终端回音消除自动化测试系统及其测试方法
US10299061B1 (en) 2018-08-28 2019-05-21 Sonos, Inc. Playback device calibration
US11206484B2 (en) 2018-08-28 2021-12-21 Sonos, Inc. Passive speaker authentication
US10943599B2 (en) 2018-10-26 2021-03-09 Spotify Ab Audio cancellation for voice recognition
US11126224B2 (en) 2018-10-31 2021-09-21 Snap Inc. Alternating sampling method for non-echo duplex conversations on a wearable device with multiple speakers and microphones
CN109788399A (zh) * 2019-01-30 2019-05-21 珠海迈科智能科技股份有限公司 一种音箱的回声消除方法及系统
CN110246513B (zh) * 2019-07-08 2021-08-24 维沃移动通信有限公司 语音信号的处理方法及移动终端
US10734965B1 (en) 2019-08-12 2020-08-04 Sonos, Inc. Audio calibration of a portable playback device
CN110792842B (zh) * 2019-10-21 2021-07-30 南京溧水高新产业股权投资有限公司 一种利用回音特性预防性维护调节阀的设备
CN111431772B (zh) * 2020-04-28 2021-11-19 上海众链科技有限公司 网络延迟测量方法、系统、可读存储介质及终端设备
JP2024018748A (ja) * 2022-07-29 2024-02-08 沖電気工業株式会社 情報処理装置、プログラム、情報処理方法、及び情報処理システム
CN117935829A (zh) * 2022-10-14 2024-04-26 微软技术许可有限责任公司 自动降低在线会议中的回声影响

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4578544A (en) * 1981-12-09 1986-03-25 Societe Anonyme De Telecommunications Initialization device for echo cancelling device and application thereof to remote echos
US6181753B1 (en) * 1997-04-30 2001-01-30 Oki Electric Industry Co., Ltd. Echo/noise canceler with delay compensation
US20030112887A1 (en) 2001-12-18 2003-06-19 Sang Tzu Hsien Method and system for implementing weighted vector error echo cancellers
US20040252826A1 (en) 2001-05-17 2004-12-16 Tian Wen Shun Echo canceller and a method of cancelling echo

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3601164B2 (ja) * 1996-03-01 2004-12-15 松下電器産業株式会社 エコーサプレス方法およびエコーサプレッサ装置
US7046795B2 (en) * 1997-06-25 2006-05-16 Intel Corporation Method and apparatus for active latency characterization
US6628780B2 (en) * 1997-10-31 2003-09-30 Lucent Technologies Inc. Echo cancellation in the network for data applications
JP2000324234A (ja) * 1999-05-13 2000-11-24 Matsushita Electric Ind Co Ltd 送受信装置
JP2001036625A (ja) * 1999-07-21 2001-02-09 Kenwood Corp 通話装置におけるエコー量調整方法
US6580793B1 (en) * 1999-08-31 2003-06-17 Lucent Technologies Inc. Method and apparatus for echo cancellation with self-deactivation
JP3693588B2 (ja) * 2000-11-01 2005-09-07 富士通株式会社 エコー抑制システム
US6771769B2 (en) * 2000-12-28 2004-08-03 Richard Henry Erving Method and apparatus for active reduction of speakerphone singing
US6598953B2 (en) * 2001-12-28 2003-07-29 Phogenix Imaging, Llc Method for judging image quality using human-readable defect-sensitive patterns
US6961423B2 (en) * 2002-06-24 2005-11-01 Freescale Semiconductor, Inc. Method and apparatus for performing adaptive filtering
US6952473B1 (en) * 2002-11-25 2005-10-04 Cisco Technology, Inc. System and method for echo assessment in a communication network
US7031461B2 (en) 2004-01-12 2006-04-18 Acoustic Technologies, Inc. Robust adaptive filter for echo cancellation

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4578544A (en) * 1981-12-09 1986-03-25 Societe Anonyme De Telecommunications Initialization device for echo cancelling device and application thereof to remote echos
US6181753B1 (en) * 1997-04-30 2001-01-30 Oki Electric Industry Co., Ltd. Echo/noise canceler with delay compensation
US20040252826A1 (en) 2001-05-17 2004-12-16 Tian Wen Shun Echo canceller and a method of cancelling echo
US20030112887A1 (en) 2001-12-18 2003-06-19 Sang Tzu Hsien Method and system for implementing weighted vector error echo cancellers

Also Published As

Publication number Publication date
CN101313483A (zh) 2008-11-26
EP1949552A1 (en) 2008-07-30
CN101313483B (zh) 2012-07-11
EP1949552B1 (en) 2013-01-16
WO2007061583A1 (en) 2007-05-31
DK1949552T3 (da) 2013-02-04
JP5085556B2 (ja) 2012-11-28
US7881460B2 (en) 2011-02-01
EP1949552A4 (en) 2011-10-26
JP2009518880A (ja) 2009-05-07
KR20080077607A (ko) 2008-08-25
US20070116254A1 (en) 2007-05-24

Similar Documents

Publication Publication Date Title
KR101255404B1 (ko) 컴퓨터 시스템에서 에코 소거를 적용할지를 판정하는 방법,컴퓨터 시스템에서 에코 소거 알고리즘을 구성하는 방법및 에코 소거 알고리즘을 구성하는 컴퓨터 시스템
EP1913708B1 (en) Determination of audio device quality
US10186276B2 (en) Adaptive noise suppression for super wideband music
US11297178B2 (en) Method, apparatus, and computer-readable media utilizing residual echo estimate information to derive secondary echo reduction parameters
EP2715725B1 (en) Processing audio signals
US7155018B1 (en) System and method facilitating acoustic echo cancellation convergence detection
US10085102B2 (en) Detection of device configuration
JP2008543194A (ja) オーディオ信号ゲイン制御装置及び方法
CN108141502A (zh) 音频信号处理
US11380312B1 (en) Residual echo suppression for keyword detection
US9491545B2 (en) Methods and devices for reverberation suppression
WO2013093172A1 (en) Audio conferencing
CN110956976B (zh) 一种回声消除方法、装置、设备及可读存储介质
JP2024507916A (ja) オーディオ信号の処理方法、装置、電子機器、及びコンピュータプログラム
CN108540680B (zh) 讲话状态的切换方法及装置、通话系统
US11488612B2 (en) Audio fingerprinting for meeting services
TWI790718B (zh) 會議終端及用於會議的回音消除方法
US11259117B1 (en) Dereverberation and noise reduction
JP2015220482A (ja) 送受話端末、エコー消去システム、エコー消去方法、プログラム
CN116547751A (zh) 针对遍布式聆听插入强制间隙

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160318

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170317

Year of fee payment: 5