KR102109608B1 - 인터넷 프로토콜 기반 통화 서비스를 위한 단말 장치 및 그의 에코 제거 방법 - Google Patents

인터넷 프로토콜 기반 통화 서비스를 위한 단말 장치 및 그의 에코 제거 방법 Download PDF

Info

Publication number
KR102109608B1
KR102109608B1 KR1020130131793A KR20130131793A KR102109608B1 KR 102109608 B1 KR102109608 B1 KR 102109608B1 KR 1020130131793 A KR1020130131793 A KR 1020130131793A KR 20130131793 A KR20130131793 A KR 20130131793A KR 102109608 B1 KR102109608 B1 KR 102109608B1
Authority
KR
South Korea
Prior art keywords
echo cancellation
call
terminal device
cancellation function
hardware
Prior art date
Application number
KR1020130131793A
Other languages
English (en)
Other versions
KR20150050241A (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 에스케이플래닛 주식회사
Priority to KR1020130131793A priority Critical patent/KR102109608B1/ko
Publication of KR20150050241A publication Critical patent/KR20150050241A/ko
Application granted granted Critical
Publication of KR102109608B1 publication Critical patent/KR102109608B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/02Constructional features of telephone sets
    • H04M1/20Arrangements for preventing acoustic feed-back
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/253Telephone sets using digital voice transmission
    • H04M1/2535Telephone sets using digital voice transmission adapted for voice communication over an Internet Protocol [IP] network

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Telephone Function (AREA)

Abstract

본 발명은 인터넷 프로토콜 기반 통화 서비스를 제공하는데 있어서, 수신된 오디오 신호가 마이크로 되돌아가 발생하는 에코 제거 성능을 향상시킬 수 있는 인터넷 프로토콜 기반 통화 서비스를 위한 단말 장치 및 그의 에코 제거 방법에 관한 것으로서, 하드웨어 에코 제거 기능을 제공하는 디지털 신호 처리기(DSP: Digital Signal Processor) 별로 최적의 에코 성능을 제공하기 위한 하드웨어 에코 제거 기능의 구동 정보를 DB화하고, 발신 또는 착신이 발생하면, 현재 구동되는 프로세서 정보를 확인하고, 확인된 프로세서 정보에 대응하는 구동 정보를 적용하여 하드웨어 에코 제거 기능을 구동시킴으로써, 에코 제거 성능을 보장할 수 있다.

Description

인터넷 프로토콜 기반 통화 서비스를 위한 단말 장치 및 그의 에코 제거 방법{Terminal Equipment and echo cancellation method for mVoIP}
본 발명은 인터넷 프로토콜 기반 통화 서비스에 관한 것으로서, 더욱 상세하게는 인터넷 프로토콜 기반 통화 서비스를 제공하는데 있어서, 수신된 오디오 신호가 마이크로 되돌아가 발생하는 에코 성분의 제거 성능을 향상시킬 수 있는 인터넷 프로토콜 기반 통화 서비스를 위한 단말 장치 및 그의 에코 제거 방법에 관한 것이다.
VoIP(Voice over Internet Protocol)는 데이터 통신용으로 사용되는 인터넷과 같이 IP 주소를 사용하는 통신망을 통해 실시간으로 음성 및 영상을 디지털 패킷으로 변환하여 전송하는 기술로서, 통상 '인터넷 전화'라고 불린다. 이러한 인터넷 전화는, 인터넷망을 이용하여 통화자 간에 음성 및 통화 영상을 주고받음으로써, 인터넷과 연계된 다양한 서비스를 제공할 수 있다는 장점이 있다.
아울러, 최근 이동통신망 기술 및 이동통신 단말의 성능이 발전함에 따라서, 상기 VoIP 기술은 휴대폰, 스마트폰과 같은 이동 단말에까지 적용되기에 이르렀으며, 이렇게 이동 단말에 적용되는 VoIP 기술은 mVoIP(Mobile VoIP)라 한다.
mVoIP는 기존 이동통신표준에 따라서 통화를 위한 단말 장치 간을 연결하는 이동 전화와는 달리, Wi-Fi망, 3G 망과 같은 무선 모바일 인터넷을 이용하여 음성 및 영상을 패킷 형태로 전송하게 된다.
이러한 mVoIP는 IP 망을 통해 이루어지므로, 통상 TCP(Transmission Control Protocol)에 따라서 음성 또는 호 처리 메시지와 관련된 패킷을 전송하며, SIP(Session Initiation Protocol)을 기반으로 통화를 위한 멀티미디어 세션의 제어를 수행하게 된다.
아울러, 최근 PC와 같은 고급 기능을 제공하며, 응용 프로그램 개발자를 위한 표준화된 인터페이스와 플랫폼을 제공하는 스마트폰의 보급이 활성화됨에 따라서, 다양한 어플리케이션의 개발이 이루어지고 있다.
이러한 스마트폰은, 무선인터넷을 이용하여 인터넷에 직접 접속할 수 있을 뿐 아니라 여러 가지 브라우징 프로그램을 이용하여 다양한 방법으로 접속할 수 있으며, 사용자가 원하는 애플리케이션을 직접 제작하고, 다양한 애플리케이션을 통하여 자신에게 알맞은 인터페이스를 구현할 수 있으며, 같은 운영 체제를 가진 스마트폰 간에 애플리케이션을 공유할 수 있는 등 기존 피처 폰(feature phone)이 갖지 못한 다양한 장점을 갖는다.
이에, 인터넷 프로토콜 기반 통화 서비스도, 다양한 서비스 제공자에 의하여 다양한 어플리케이션 형태로 제공되어 있다.
이렇게 구현된 인터넷 프로토콜 기반 통화 서비스를 위한 어플리케이션(이하, 통화 어플리케이션이라 함)은, 사용자 간에 통화 중에 교환되는 음성 데이터에 대한 디코딩 및 엔코딩 처리, 이득 제어, 에코 제거, 노이즈 제거 등의 처리를 수행하는 미디어 엔진을 포함할 수 있다.
특히, 통화 서비스를 수행하는데 있어서 에코 현상은, 통상 수신된 상대방의 오디오 신호가 다시 마이크로 되돌아가 발생하는 것으로서, 에코 발생은 통화 품질을 저하시키기 때문에 통화 서비스에 있어서 에코 제거 성능은 통화 품질을 보장하기 위한 중요한 요소이다.
그런데, 기존의 단말 장치에 있어서, 수신된 오디오 신호가 마이크로 인입되는 시간이 단말 장치의 오디오 프레임워크 처리 성능 등에 영향을 받기 때문에, 소프트웨어 형태로 구현된 에코 제거 기능(Audio Echo Canceller)을 이용할 경우, 모든 단말 장치에 대해서 에코 제거 성능을 보장할 수 없다.
한국등록특허 제10-1169433호, 2012.07.23 등록 (명칭: VoIP 시스템의 라인 에코 방지 장치 및 그 방법)
이에 본 발명은 인터넷 프로토콜 기반 통화 서비스를 제공하는데 있어서, 수신된 오디오 신호가 마이크로 되돌아가 발생하는 에코 성분의 제거 성능을 향상시킬 수 있는 인터넷 프로토콜 기반 통화 서비스를 위한 단말 장치 및 그의 에코 제거 방법을 제공하고자 한다.
특히, 본 발명은 하드웨어 에코 제거 기능을 제공하는 프로세서 별로 최적의 에코 성능을 제공하기 위한 하드웨어 에코 제거 기능의 구동 정보를 DB화하고, 발신 또는 착신이 발생하면, 현재 구동되는 DSP의 프로세서 정보를 확인하고, 확인된 프로세서에 대응하는 구동 정보를 적용하여 하드웨어 에코 제거 기능을 구동시킴으로써, 안정된 에코 제거 성능을 보장할 수 있는 인터넷 프로토콜 기반 통화 서비스를 위한 단말 장치 및 그의 에코 제거 방법을 제공하고자 한다.
본 발명은 상술한 과제를 해결하기 위한 수단으로서, 통신망에 접속하여, 인터넷 프로토콜 기반의 통화를 위한 호 제어 메시지 및 통화 데이터를 송수신하는 통신부; DSP(Digital Signal Process)를 통해 구현된 하드웨어 에코 제거 기능의 프로세서 별 구동 정보를 저장하는 저장부; 및 인터넷 프로토콜 기반 통화 서비스를 수행하는 중에, 발신 또는 착신이 발생되면, 단말 장치내에 구비된 프로세서 정보를 확인하고, 확인된 프로세서 정보에 대응하는 구동 정보를 기반으로 하드웨어 에코 제거 기능을 구동시켜, 통화 중 발생하는 에코 성분을 제거하는 제어부를 포함하는 것을 특징으로 하는 인터넷 프로토콜 기반 통화 서비스를 위한 단말 장치를 제공한다.
본 발명에 따른 단말 장치에 있어서, DSP 기반의 하드웨어 에코 제거 기능을 구비하고, 입력된 오디오 신호를 스피커로 출력하고, 마이크로 입력된 오디오 신호를 상기 제어부로 제공하는 오디오 처리부를 더 포함할 수 있다.
또한, 본 발명에 따른 단말 장치에 있어서, 제어부는 소프트웨어 에코 제거 기능을 포함하는 미디어 처리 모듈을 구비하고, 확인된 프로세서 정보를 기반으로 단말 장치 내에 하드웨어 에코 제거 기능이 존재하는 지를 더 확인하여, 하드웨어 에코 제거 기능이 존재하지 않는 경우, 소프트웨어 에코 제거 기능을 구동시킬 수 있다.
더하여, 본 발명은 상술한 과제의 다른 해결 수단으로서, DSP(Digital Signal Process)를 통해 구현된 하드웨어 에코 제거 기능의 프로세서 별 구동 정보를 DB화하는 단계; 인터넷 프로토콜 기반 통화 서비스를 수행하는 중에, 발신 또는 착신이 발생되면, 단말 장치내에 구비된 프로세서 정보를 확인하는 단계; 확인된 프로세서 정보에 대응하는 하드웨어 에코 제거 기능의 구동 정보를 추출하는 단계; 및 추출한 구동 정보를 기반으로 하드웨어 에코 제거 기능을 구동시켜, 통화 중 발생하는 에코 성분을 제거하는 단계를 포함하는 것을 특징으로 하는 인터넷 프로토콜 기반 통화 서비스를 위한 에코 제거 방법을 제공한다.
본 발명에 따른 인터넷 프로토콜 기반 통화 서비스를 위한 에코 제거 방법은, 프로세서 정보를 기반으로 단말 장치내에 하드웨어 에코 제거 기능이 존재하는 지를 더 확인하는 단계; 및 하드웨어 에코 제거 기능이 존재하지 않으면, 소프트웨어 에코 제거 기능을 구동시키는 단계를 더 포함할 수 있다.
또한, 본 발명에 따른 인터넷 프로토콜 기반 통화 서비스를 위한 에코 제거 방법에 있어서, 구동 정보는, 오디오 프레임워크의 처리 성능별 스피커로 출력되는 오디오가 마이크로 유입되는 시간 차이를 고려한 에코 성분의 컷오프 시간 정보를 포함할 수 있다.
더하여, 본 발명은 상술한 인터넷 프로토콜 기반 통화 서비스를 위한 에코 제거 방법을 수행하는 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체를 더 제공할 수 있다.
본 발명은 인터넷 프로토콜 기반 통화 서비스를 제공하는데 있어서, 하드웨어 에코 제거 기능을 제공하는 디지털 신호 처리기(DSP: Digital Signal Processor) 별로 최적의 에코 성능을 제공하기 위한 하드웨어 에코 제거 기능의 구동 정보를 DB화하고, 발신 또는 착신이 발생하면, 현재 구동되는 단말 장치의 프로세서 정보를 확인하고, 확인된 프로세서에 대응하는 구동 정보를 적용하여 하드웨어 에코 제거 기능을 구동시키고, 하드웨어 에코 제거 기능이 구비되지 않은 경우, 통화 어플리케이션에 구비된 소프트웨어 에코 제거 기능을 동작시킴으로써, 통화 서비스 중 발생하는 에코 제거 성능을 최대한 보장할 수 있도록 한다.
특히, 본 발명은 오디오 프레임워크별 처리 성능에 영향을 받는, 수신된 오디오 신호가 마이크로 인입되는 시간 등을 고려하여, 프로세서 별로 다르게 하드웨어 에코 제거 기능을 구동함으로써, 단말 장치에 영향받지 않은 안정된 에코 제거 성능을 제공하고, 이를 통해 통화 중의 음성 품질을 개선할 수 있다.
도 1은 본 발명에 따른 인터넷 프로토콜 기반 통화 서비스 시스템을 나타낸 블럭도이다.
도 2는 본 발명에 따라서 인터넷 프로토콜 기반 통화 서비스를 위한 단말 장치의 구성을 나타낸 블럭도이다.
도 3은 본 발명에 따른 단말 장치에 있어서, 인터넷 프로토콜 기반 통화 서비스를 위한 소프트웨어 구성을 나타낸 블럭도이다.
도 4는 본 발명에 따른 단말 장치에 있어서, 미디어 처리 모듈의 상세 구성을 나타낸 블럭도이다.
도 5는 본 발명에 따른 단말 장치에 있어서, 에코 제거 기능의 구성을 설명하기 위한 도면이다.
도 6은 본 발명에 따른 인터넷 프로토콜 기반 통화 서비스에서의 에코 제거 방법을 나타낸 순서도이다.
이하 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.
아울러, 이하의 설명 및 첨부된 도면에서 예시적인 구성을 기술하고 있지만, 본 명세서에서 설명하는 기능적인 동작과 구성의 구현물들은 다른 유형의 디지털 전자 회로로 구현되거나, 본 명세서에서 개시하는 기능 및 그 등가물들을 포함하는 컴퓨터 소프트웨어, 펌웨어 혹은 하드웨어로 구현되거나, 이들 중 하나 이상의 결합으로 구현 가능하다. 본 명세서에서 설명하는 구성들은 하나 이상의 컴퓨터 프로그램 제품, 다시 말해 본 발명에 따른 장치의 동작을 제어하기 위하여 혹은 이것에 의한 실행을 위하여 유형의 프로그램 저장매체 상에 인코딩된 컴퓨터 프로그램 명령에 관한 하나 이상의 모듈로서 구현될 수 있다. 컴퓨터로 판독 가능한 매체는 기계로 판독 가능한 저장 장치, 기계로 판독 가능한 저장 기판, 메모리 장치, 기계로 판독 가능한 전파형 신호에 영향을 미치는 물질의 조성물 혹은 이들 중 하나 이상의 조합일 수 있다.
도 1은 본 발명에 따른 인터넷 프로토콜 기반 통화 서비스 시스템을 나타낸 블럭도이다.
도 1을 참조하면, 본 발명에 따른 인터넷 프로토콜 기반 통화 서비스 시스템은, 각 사용자(발신자 및 착신자)가 이용하는 다수의 단말 장치(100), 통화 제어 장치(200) 및 통신망(300)을 포함하여 이루어질 수 있다.
상기 단말 장치(100)는 인터넷 프로토콜 기반 통화 서비스를 위해 발신자 및 착신자를 포함하는 사용자가 이용하는 단말 장치로서, 통신망(300)에 접속되어 통화 제어 장치(200) 및 다른 단말 장치(100)와 통신할 수 있으며, 음성을 처리할 수 있는 기능을 갖는 정보 처리 장치라면 어떠한 것이라도 이용 가능하다. 예를 들어, 상기 다수의 단말 장치(100)는, 태블릿 PC(Tablet PC), 랩톱(Laptop), 개인용 컴퓨터(PC: Personal Computer), 스마트폰(Smart Phone), 개인휴대용 정보단말기(PDA: Personal Digital Assistant), 스마트 TV 및 이동통신 단말기(Mobile Communication Terminal) 등 중 어느 하나일 수 있다.
본 발명에 있어서 단말 장치(100)는 통화 제어 장치(200)를 통해서 다른 단말 장치와의 통화 연결을 위한 호 처리 및 미디어 세션 연결을 수행하고, 음성 신호를 처리하여 디지털 패킷으로 송수신하여 인터넷 프로토콜 기반 통화 서비스를 제공할 수 있다.
더 구체적으로, 단말 장치(100)는 통화 제어 장치(200)에 접속하여, IP 주소를 기반으로 자신의 위치를 등록한다. 그리고, 단말 장치(100)는 사용자의 발신 요청에 따라서, 통화 제어 장치(200)를 통해서 다른 단말 장치로의 발신 요청을 전송한다.
또한, 단말 장치(100)는 통화 제어 장치(200)를 통해서 다른 단말 장치로부터의 착신 요청을 수신할 수 있으며, 다른 단말 장치의 착신 요청을 수신하면, 시각적, 청각적, 또는 촉각 중 하나 이상을 포함하는 감각으로 인식 가능한 착신 알람 신호를 출력한다. 그리고, 상기 착신 알람 신호를 인식한 사용자의 조작에 따라서, 단말 장치(100)는 상기 통화 제어 장치(200)를 통해서 착신 요청을 수락 또는 거절한다.
아울러, 단말 장치(100)는 발신 요청을 전송하거나 착신 요청을 수신한 후, 다른 단말 장치와 음성의 전송을 위한 미디어 세션을 연결하고, 사용자의 음성을 디지털 패킷으로 변환하여 상기 미디어 세션으로 전송하고, 상기 미디어 세션을 통해 다른 단말 장치로부터 전송된 디지털 패킷을 수신하여, 상대방의 음성으로 복원하여 출력함으로써, 사용자와 상대방 간의 실시간 통화를 가능하게 한다.
이를 위하여, 본 발명에 따른 단말 장치(100)는 상술한 과정을 수행하도록 프로그램된 하나 이상의 어플리케이션을 구비할 수 있다. 예를 들어, 상기 하나 이상의 어플리케이션은, 호처리 및 미디어 세션 연결을 수행하기 위한 루틴, 음성을 디코딩하거나 엔코딩하기 위한 루틴, 음성에 대응하는 데이터를 실시간 멀티미디어 패킷으로 구성하여 전송하기 위한 루틴, 통신망(300)의 전송 프로토콜에 따라서 패킷을 송수신하는 루틴, 발/착신 및 통화 중 제어를 위한 사용자 인터페이스를 구현하는 루틴 중 하나 이상을 포함할 수 있다.
다음으로, 통화 제어 장치(200)는 인터넷 프로토콜 기반 통화 서비스를 이용할 다수의 단말 장치(100)의 관리와 함께, 호 처리 및 미디어 세션 제어를 지원한다.
구체적으로 다수의 통화 제어 장치(200)는 다수의 단말 장치(100)로부터의 요청에 따라서 등록 절차를 수행하며, 이러한 등록된 다수의 단말 장치(100) 간에 통화 연결 및 종료를 위한 호 제어 메시지를 중계하며, 그에 따른 다수의 단말 장치(100) 각각의 통화 서비스 상태를 관리한다.
이때, 통신망(300)은, 상기 다수의 단말 장치(100)와 통화 제어 장치(200) 및, 다수의 단말 장치(100) 간의 데이터 송수신을 지원하는 통신 매체로서, 유선망 또는 무선망 또는 이들의 결합으로 이루어질 수 있다. 특히, 통신망(300)은, Wi-Fi망, 2G 혹은 3G 이동통신망 등과 같은 무선망을 포함할 수 있으며, 이러한 무선망을 통해서 상기 다수의 단말 장치(100)와 연결될 수 있다.
상술한 단말 장치(100)와 통화 제어 장치(200)의 연동을 통해 인터넷 프로토콜 기반 통화 서비스 과정을 좀더 구체적으로 설명하면 다음과 같다.
본 발명에 따른 인터넷 프로토콜 기반 통화 서비스에 있어서, 단말 장치(100)는, 통화 제어 장치(200)와 통화 연결, 통화 중, 통화 연결 종료를 위해 호 제어 메시지를 송수신함으로써, 착신 및 발신에 대한 호 처리 및 미디어 세션 연결 및 해제를 수행한다. 이때, 호 처리는 SIP을 이용하여 이루어질 수 있다.
구체적으로 설명하면, 단말 장치(100)는 각각 통화 제어 장치(200)에 접속하여 등록 메시지(SIP Registration)를 전송함으로써, 위치를 등록하고, 통화 능력을 교환하게 되며, 통화 제어 장치(200)는 등록 정보를 기반으로 다수의 단말 장치(100) 간의 통화 서비스를 제어한다.
상기 상태에서, 임의의 단말 장치(100)의 사용자가 발신 요청 시, 단말 장치(100)는 착신자 정보(착신자 아이디, 착신자 식별 정보, 착신자 전화번호 등)와 함께 발신 요청(SIP INVITE)를 통화 제어 장치(200)로 전송하고, 상기 발신 요청에 대한 응답을 대기한다.
이와 같이, 임의의 단말 장치(100)로부터 발신 요청을 수신한 상기 통화 제어 장치(200)는, 등록 정보를 기반으로 착신측 단말 장치를 확인한 후, 착신측인 다른 단말 장치(100)로 착신 요청(SIP INVITE)을 전송한다.
이후 통화 제어 장치(200)는 착신측 사용자의 통화 수락에 따라서, 착신을 수락하는 응답 메시지를 단말 장치(100) 간에 전송하고, 음성에 대응하는 패킷을 송수신하기 위한 미디어 세션을 연결한다.
이에 단말 장치(100)는 각각 사용자의 음성을 패킷으로 변환하여 상기 미디어 세션을 통해서 상대 단말 장치로 전송하고, 상기 미디어 세션을 통해서 상대 단말 장치로부터 전송된 패킷을 음성으로 재생하여 출력함으로써, 사용자들 간의 실시간 통화를 제공한다.
아울러, 상기 단말 장치(100)는 통화 중에 발신자 혹은 착신자의 요청에 따라서, 통화 종료 요청(SIP BYE)을 상기 통화 제어 장치(200)를 통해 상대 단말 장치로 전송하며, 이후 통화 종료 요청에 대한 응답(SIP 200 OK)을 수신한 후, 상기 미디어 세션을 해제할 수 있다.
본 발명은 이러한 인터넷 프로토콜 기반 통화 서비스를 수행하는 단말 장치(100)에서, 마이크(MIC)로 인식된 사용자의 음성을 압축하여 전송하고, 수신된 상대방의 음성을 복원하여 스피커(SPK)로 출력하는 과정에서 발생하는 에코 성분을 제거하기 위한 것이다.
이러한 에코 제거를 위한 본 발명에 따른 단말 장치의 구성 및 동작을 도 2 내지 도 4를 참조하여 설명한다.
도 2는 본 발명에 따라서 인터넷 프로토콜 기반 통화 서비스를 위한 단말 장치(100)의 구성을 나타낸 블럭도이다.
도 2를 참조하면, 본 발명에 따른 단말 장치(100)는 통신부(110)와, 입력부(120)와, 표시부(130)와, 오디오 처리부(140) 및 저장부(150)를 포함할 수 있으며, 이들이 기능적으로 연동함으로써, 본 발명에 따른 인터넷 프로토콜 기반의 통화 서비스를 제공할 수 있다.
먼저, 통신부(110)는, 상기 통신망(300)을 통해서 데이터를 송수신하기 위한 구성이다. 이러한 통신부(110)는 통신망(300)의 구조 및 통신 프로토콜에 따라서 그 구성 및 동작이 달라진다. 예를 들어, 통신부(110)는 1G, 2G, 3G 방식 등 다양한 이동 통신 방식 또는 유선 통신 방식 또는 Wi-Fi와 같은 무선 통신 방식 중 어느 하나를 지원하는 통신 모듈 중 적어도 하나로 구성될 수 있다. 또한, 상기 통신망(300)이 이동통신망이나 Wi-Fi망과 같은 무선망을 포함하는 경우, 통신부(110)는 상기 통신망(300)으로부터 무선 채널을 할당 받고, 상기 할당 받은 무선 채널을 통해 통신망(300)에 접속하여 데이터 송수신을 수행한다. 특히, 상기 통신부(110)는 IP 기반의 통신망(300)을 통해서 임의의 IP 주소(고정 IP 혹은 사설 IP)를 할당 받고, 상기 할당 받은 IP 주소에 근거하여 데이터 송수신을 수행하게 된다.
아울러, 이렇게 통신망(300)에 접속된 상태에서 통신부(110)는, 접속된 통신망(300)을 통해 인터넷 프로토콜 기반의 통화 서비스를 위한 호 제어 메시지를 송수신하며, 아울러, 호 처리를 통해 연결된 미디어 세션을 통해서 사용자의 통화 데이터를 전송하거나, 상대방의 통화 데이터를 수신할 수 있다. 여기서 통화 데이터는, 음성 통화인 경우, 음성 데이터를 의미하며, 영상 통화인 경우, 음성 데이터 및 영상 데이터를 의미할 수 있다.
입력부(120)는 단말 장치(100)에 대한 혹은 단말 장치(100)에서 실행되는 특정 기능에 대한 사용자 입력 신호를 생성하는 수단으로서, 숫자 또는 다양한 문자 정보를 입력 받고, 각종 기능들의 설정 및 단말 장치(100)의 기능 제어를 위한 입력 키 및 기능 키들을 포함할 수 있다. 이러한 입력부(120)는 키보드, 키패드, 마우스, 모션 센서 등과 같은 다양한 종류의 입력 수단으로 형성될 수 있으며, 단말 장치(100)가 터치스크린으로 제작되는 경우, 터치스크린 상에 구현되는 소프트 키 및 사이드 키나 별도의 핫 키, 단축 키 등을 포함하여 구성될 수 있다. 본 발명에 있어서, 상기 입력부(120)는 사용자가 통화를 요청하거나, 요청된 통화를 수락하거나, 통화 종료를 요청하는 등 통화 서비스와 관련된 입력 수단을 포함한다. 사용자는 상기 입력부(120)를 통해서 발신을 지시하고 착신을 수락 또는 거절하고, 통화중 종료를 지시할 수 있다.
표시부(130)는 단말 장치(100)의 동작 상태 및 동작 결과를 표시하거나 소정의 정보를 사용자에게 제공하기 위한 출력 수단으로서, 각종 메뉴를 비롯하여 사용자가 입력한 정보 또는 사용자에게 제공하는 정보를 출력한다. 특히, 상기 표시부(130)는 단말 장치(100)의 동작 상태에 따른 다양한 사용자 인터페이스 화면을 출력한다. 예를 들어, 통화 기능 실행 시, 발신용 사용자 인터페이스 화면, 착신용 사용자 인터페이스 화면, 통화중 사용자 인터페이스 화면, 및 조회용 사용자 인터페이스 화면을 출력한다. 특히, 본 발명에 있어서, 표시부(130)는 착신 요청을 알리는 문자열을 출력할 수 있다.
이러한 표시부(130)는 액정 표시 장치(Liquid Crystal Display), OLED(Organic Light Emitted Diode) 등의 평판 표시 패널의 형태로 형성될 수 있다. 또한, 표시부(131)는 제조 형태에 따라 표시 패널과 터치 패널을 포함하는 구조로 제작될 수 있다.
그리고, 오디오 처리부(140)는 마이크(MIC) 및 스피커(SPK) 등의 가청음 인식 수단이나 가청음 출력 수단에 연결되어, 인식된 음성을 음성 데이터로 변환하여 제어부(160)로 제공하거나, 제어부(160)를 통해 입력된 음성 데이터가 가청음으로 출력되도록 처리한다. 특히, 상기 오디오 처리부(140)는 통화 서비스 중에 제어부(160)에 의해 처리된 상대방의 음성을 출력하거나, 사용자의 음성을 인식할 수 있다. 아울러, 상기 오디오 처리부(140)는 ALSA(Advanced Linux Sound Architecture)와 같은 오디오 드라이버를 포함할 수 있으며, 아울러, DSP(Digital Signal Processor)로 구현된 하드웨어 에코 제거 기능을 구비할 수 있다.
저장부(150)는 단말 장치(100)의 동작에 필요한 프로그램 및 데이터 및 동작 결과로서 발생되는 데이터를 저장하는 것으로서 크게 프로그램 영역과 데이터 영역을 포함할 수 있다. 이러한 저장부(150)는, 단말 장치(100)의 OS(Operating System) 프로그램을 비롯하여, 기타 다양한 어플리케이션을 저장할 수 있다. 특히, 본 발명에 있어서 OS 프로그램은 응용 프로그램 개발자를 위한 OPEN API와 플랫폼을 제공하는 개방형 OS 프로그램일 수 있으며, 예를 들어, 애플의 iOS, 구글의 안드로이드 등을 포함할 수 있다. 그리고, 상기 저장부(150)는 다양한 어플리케이션의 하나로서, 상기 OS의 운영 환경을 기반으로 동작하여 인터넷 프로토콜 기반 통화 서비스를 제공하기 위한 하나 이상의 어플리케이션을 저장할 수 있다.
마지막으로, 제어부(160)는 단말 장치(100)의 전반적인 동작을 제어한다. 기본적으로, 제어부(160)는 저장부(150)에 저장된 OS 프로그램을 실행하여, 다양한 어플리케이션이 구동할 수 있는 실행 환경을 구축하고, 구축된 실행 환경을 통해서 사용자의 요청 혹은 설정된 알고리즘에 따라 특정 어플리케이션 혹은 기능을 수행한다. 특히, 본 발명에 따른 제어부(160)는 인터넷 프로토콜 기반 통화 서비스를 제공하기 위한 하나 이상의 어플리케이션을 실행함으로써, 인터넷 프로토콜 기반 통화 서비스를 제공할 수 있다.
이러한 제어부(160)는 특히, DSP로 구현된 하드웨어 에코 제거 기능 및, 상기 인터넷 프로토콜 기반 통화 서비스를 제공하기 위한 하나 이상의 어플리케이션에 포함된 소프트웨어 에코 제거 기능 중 하나를 선택적으로 수행할 수 있다.
더 구체적으로, 상기 저장부(150)는 현재 이용되고 있거나 향후 적용 가능한 DSP를 포함하는 프로세서 정보 별로, 해당 DSP로 구현된 하드웨어 에코 제거 기능의 구동 방법을 DB화하여, 구동 정보 DB(151)에 저장한다. 여기서, 상기 하드웨어 에코 제거 기능의 구동 방법은, 스피커로 출력되는 오디오 신호가 마이크로 인입될 때까지 걸리는 시간에 기반한 컷 오프 시간 정보를 포함할 수 있다.
그리고, 제어부(160)는 인터넷 프로토콜 기반 통화 서비스를 제공하는 중에 발신 또는 착신이 발생하면, 현재 단말 장치(100)에 구비된 프로세서 정보를 추출하고, 추출한 프로세서 정보에 대응하는 에코 제거 기능의 구동 방법을 기준으로 DSP의 하드웨어 에코 제거 기능을 구동하여, 통화 중 발생하는 에코를 하드웨어적으로 제거한다.
아울러, 본 발명에 따른 제어부(160)는 프로세서 정보를 기반으로 확인한 결과, 단말 장치(100)에 하드웨어 에코 제거 기능이 구비되지 않은 경우에는, 상기 소프트웨어 에코 제거 기능을 구동시켜, 소프트웨어적으로 통화 중 발생하는 에코를 제거할 수 있다.
따라서, 본 발명에 따른 단말 장치(100)는 하드웨어 에코 제거 기능을 기반으로 안정적으로 에코 제거 성능을 보장하면서, 하드웨어 에코 제거 기능이 구비되지 않은 경우 소프트웨어 에코 제거 기능을 통해 최소한의 음성 품질을 보장할 수 있다.
이를 위하여, 상기 단말 장치(100)의 제어부(160)는 어플리케이션 레벨로 구현된 소프트웨어 처리 기능을 도 3 및 도 4와 같이 포함할 수 있다.
도 3은 본 발명에 따른 단말 장치(100)에 있어서, 인터넷 프로토콜 기반 통화 서비스를 위한 어플리케이션 구조를 나타낸 블록도로서, 도 3을 참조하면, 본 발명에 따른 단말 장치(100)에 있어서, 인터넷 프로토콜 기반 통화 서비스를 제공하기 위한 소프트웨어 구조는, 통신 처리 모듈(31)와, 시그널링 처리 모듈(32)와, 미디어 처리 모듈(33)와, 시그널 API 모듈(34)와, 미디어 API 모듈(35)와, 통화 어플리케이션(36)을 포함한다.
상기 통신 처리 모듈(31)는 통신망(300)을 통해서 데이터를 송수신하기 위한 구성이다. 상기 통신 처리 모듈(31)는 통신망을 통해서 데이터를 수신하여 시그널링 처리 모듈(32) 혹은 미디어 처리 모듈(33)로 전달하고, 역으로 상기 시그널링 처리 모듈(32) 혹은 미디어 처리 모듈(33)로부터 전달된 데이터를 소정의 통신망을 통해서 송신한다. 이러한 통신 처리 모듈(31)는 소정의 통신 표준에 따라서 데이터를 송수신할 수 있는데, 구체적으로, UDP/TCP 와 같은 통신 프로토콜에 따라서 데이터를 송수신할 수 있다. 여기서, 미디어 처리 모듈(33)에서 처리되는 통화 데이터는 미디어 세션을 통해서 UDP에 의해서 송수신될 수 있으며, 시그널링 처리 모듈(32)에서 처리되는 호 처리를 위한 시그널링 메시지는 TCP에 의하여 송수신될 수 있다.
시그널링 처리 모듈(32)는 영상 통화를 위한 호 처리를 수행하기 위한 구성이다. 구체적으로 시그널링 처리 모듈(32)는 상기 통신 처리 모듈(31)를 통해서 수신된 통화 연결 요청 메시지를 수신하여, 착신 요청이 왔음을 시그널 API 모듈(34)를 통해서 통화 어플리케이션(36)에 알리고, 역으로 시그널 API 모듈(34)를 통해서 통화 어플리케이션(36)으로부터 발신 요청이 전달되면, 지정된 상대 단말 장치로의 통화 연결 요청 메시지를 생성하여 통신 처리 모듈(31)를 통해 송신한다. 아울러, 통화 연결 요청에 대한 수락 여부에 따라서 단말 장치(100)와 상대 단말 장치와 통화 데이터를 전송하기 위한 미디어 세션을 연결한다. 더하여, 미디어 세션이 연결되면 미디어 처리 모듈(33)로 구동을 지시한다. 또한, 시그널링 처리 모듈(32)는 통화 수행 중에, 통화 어플리케이션(36)으로부터 혹은 통신 처리 모듈(31)를 통해 통화 종료가 요청되거나 미디어 세션이 끊어진 경우, 통화 종료 처리를 수행한다.
미디어 처리 모듈(33)는 상기 시그널링 처리 모듈(32)의 구동 지시에 따라서, 상기 시그널링 처리 모듈(32)에 의하여 연결된 미디어 세션을 통해 송수신된 통화 데이터를 대한 디코딩/엔코딩 및 보안 처리를 수행하여, 사용자와 상대방 간의 영상 및 음성을 송수신할 수 있도록 지원하기 위한 구성이다.
아울러, 시그널 API 모듈(34) 및 미디어 API 모듈(35)는 각각 시그널링 처리 모듈(32)와 미디어 처리 모듈(33)와 통화 어플리케이션(36) 간의 응용 프로그램 인터페이스로서, 시그널 API 모듈(34)는 시그널링 처리 모듈(32)로부터 확인된 통화 연결과 관련된 정보를 통화 어플리케이션(36)으로 제공하고, 통화 어플리케이션(36)으로부터 전송된 제어 명령(혹은 요청)을 시그널링 처리 모듈(32)로 전달하며, 미디어 API 모듈(35)는 통화 어플리케이션(36)로부터 전달된 제어 명령(혹은 요청)을 미디어 처리 모듈(33)로 전달한다.
통화 어플리케이션(36)은 영상 통화를 위한 사용자 인터페이스를 제공하는 어플리케이션으로서, 통화 연결 요청, 착신 요청에 대한 수락 혹은 거절, 통화 영상의 출력, 이외 통화 중 다양한 기능을 제어하기 위한 사용자 인터페이스 환경을 제공한다. 상기 통화 어플리케이션(36)은 사용자의 요청에 따라서 시그널 API 모듈(34) 및 미디어 API 모듈(35)를 통해서 시그널링 처리 모듈(32) 및 미디어 처리 모듈(33)를 제어한다.
앞서 설명한 바와 같이, 시그널링 처리 모듈(32), 미디어 처리 모듈(33) 및 통화 어플리케이션(36)은 각각 독립된 소프트웨어로 구현되고, API(Application Program Interface)를 통해서 연동할 수 있다.
이러한 구성에 있어서, 상기 미디어 처리 모듈(33)은 소프트웨어로 구현된 에코 제거 기능을 포함할 수 있다.
더 구체적으로, 도 4는 본 발명에 따른 미디어 처리 모듈(33)의 상세 구성 예를 나타낸 것으로서, 이를 참조하면, 미디어 처리 모듈(33)은, SRTP(Secured RTP)(41) 및 RTP(Real-Time Transport Protocol)(42)을 통해서, 통신 처리 모듈(31)에서 수신된 패킷 중, 상대방의 실시간 오디오 패킷을 추출하고, 이렇게 추출한 실시간 오디오 패킷은 지터 버퍼(43)에 일정 량이 버퍼링되며, 디코더(43)는 상기 지터 버퍼(43)에 저장된 상대방의 오디오 패킷을 디코딩하여 원래의 오디오 신호를 출력하며, 상기 디코딩된 오디오 신호은 PLC(Packet loss concealment)(45)를 통해서 전송 중 손실된 부분이 복원되고, AGC(Automatic gain Control)(47)를 통해 일정 이득으로 조절된 후 스피커(SPK)로 출력된다. 이때, 상기 AGC(47)와 PLC(45) 사이에 위치한 AEC(Audio Echo Cancellator)(40)는, 수신되어 스피커로 출력되는 상대방의 음성이 마이크(MIC)로 인입되는 것을 막아 에코 발생을 제거하기 위한 것으로서, 스피커로 출력된 상대방이 음성이 마이크로 유입되는 시간 차를 측정하여 오디오 신호의 유입의 차단(Cutoff)시킨다.
상기 AEC(40)는 어플리케이션 레벨로 구현되는 것으로서, 소프트웨어 에코 제거 기능을 나타낸다.
한편, 마이크(MIC)로 인식된 상대방의 음성은, HPF(High-pass-filter)(48)를 통과하면서, 사람의 음성 대역보다 높은 고주파 대역의 잡음이 감쇄된 후, NS(Noise Control)(49)를 통해서 단말 장치(100) 자체에서 발생하는 잡음 및 주변 잡음을 감소되고, 이후 AEC(50)를 통해 에코 성분이 제거되고, AGC(51)을 통해 일정 이득으로 조절되고, 엔코더(52)를 통해서 압축된 후, RTP(42) 및 SRTP(41)를 통해서 실시간 오디오 패킷으로 변환되어 출력된다. 상기 실시간 오디오 패킷은 도 3의 통신 처리 모듈(31)을 통해서 TCP/UDP의 전송 패킷으로 변환되어 통신망(300)으로 전송된다.
상기와 같이, 본 발명에 따른 단말 장치(100)는 인터넷 프로토콜 기반 통화 서비스를 위한 소프트웨어 구조 중, 음성 및 영상을 처리하는 미디어 처리 모듈(33)에 소프트웨어 에코 제거 기능을 구비할 수 있다.
아울러, 본 발명에 따른 단말 장치(100)는, 디지털 신호 프로세서(DSP)로 구현된 하드웨어 에코 제거 기능을 구비할 수 있으며, 이러한 하드웨어 에코 제거 기능은 도 2의 오디오 처리부(140), 특히, ALSA와 스피커(SPK) 사이에 위치할 수 있다.
따라서, 본 발명에 따른 단말 장치(100)의 경우, 오디오 신호는, 도 5에 도시된 바와 같이, 소프트웨어 에코 제거 기능(S/W AEC)(61), OS의 오디오 프레임 워크(62), 하드웨어 에코 제거 기능(H/W AEC)(63)을 거쳐 스피커(64)로 출력된다. 상기 도 5에 있어서, 소프트웨어 에코 제거 기능(61)은, 도 3과 같은 인터넷 프로토콜 기반 통화 서비스를 위한 어플리케이션 구조 중, 미디어 처리 모듈(33)에 구비된 어플리케이션 레벨의 에코 제거 기능을 나타내고, 하드웨어 에코 제거 기능(63)은, DSP로 구현된 하드웨어 에코 제거 기능을 나타낸다.
본 발명에 따른 단말 장치(100)는 상술한 소프트웨어 에코 제거 기능(61) 및 하드웨어 에코 제거 기능(63) 중 하나를 선택적으로 구동시켜, 에코 제거를 수행하게 되는데, 그 과정은 도 6의 순서도를 참조하여 설명한다.
도 6은 본 발명에 따른 인터넷 프로토콜 기반 통화 서비스에서의 에코 제거 방법을 나타낸 순서도이다.
이를 참조하면, 본 발명에 따른 단말 장치(100)는, 디지털 신호 처리기(DSP)를 통해 구현되는 각 프로세서별 하드웨어 에코 제거 기능의 최적의 구동 정보를 DB화하여 저장부(150)에 저장하여 둔다(S105). 이는 단말 장치(100)의 각 프로세서 별로 하드웨어 에코 제거 기능의 성능을 비교한 실험 데이터를 통해 얻어질 수 있으며, 구체적으로, 상기 구동 방법은, 각 하드웨어 에코 제거 기능에서 스피커로 출력되는 수신 오디오 신호가 다시 마이크로 유입되는 시간차에 근거하여 수신 오디오 신호의 컷오프 시점 정보를 포함할 수 있다. 상기 하드웨어 에코 제거 기능의 구동 방법은, 각각의 프로세서 정보와 매핑되어 저장될 수 있다.
그리고, 단말 장치(100)는 인터넷 프로토콜 기반 통화 서비스를 제공하는 중에, 다른 단말 장치로의 발신 요청이 전송되거나, 다른 단말 장치로부터의 착신 요청이 수신되면(S110), 단말 장치(100)에 구비된 프로세서 정보, 즉, DSP 정보를 확인한다(S115). 이는 발신 또는 착신 요청이 발생함에 따라서, 오디오 처리부(140)을 초기화하는 과정을 통해서 획득할 수 있다.
그리고, 상기 단말 장치(100)는 확인된 프로세서 정보를 기반으로 단말 장치(100)에 하드웨어 에코 제거 기능이 존재하는 지를 판단한다(S120).
상기 확인 결과, 하드웨어 에코 제거 기능이 존재하면, 단말 장치(100), 즉, 제어부(160)는 저장부(150)로부터 상기 확인된 프로세서 정보에 대응하는 하드웨어 에코 제거 기능의 구동 정보를 추출하고(S125), 추출한 구동 정보에 따라서, DSP로 구현된 하드웨어 에코 제거 기능을 구동한다(S130).
반면에, 상기 단말 장치(100)는 S120 단계에서의 확인 결과, 하드웨어 에코 제거 기능이 존재하지 않으면, 도 3과 같은 어플리케이션 중 미디어 처리 모듈(33)에 구비된 소프트웨어 에코 제거 기능을 구동한다(S135).
이와 같이 선택적으로 구동된 하드웨어 에코 제거 기능 또는 소프트웨어 에코 제거 기능은, 단말 장치(100)의 미디어 세션이 연결되어 있는 동안, 수신된 오디오 신호를 스피커로 출력하는 중에 발생되는 에코 성분을 제거할 수 있다.
특히, 본 발명에 따른 단말 장치(100)에서는 프로세서별로 서로 다른 오디오 프레임워크 처리 성능에 맞춰 하드웨어 에코 제거 기능을 구동함으로써, 안정된 에코 제거 성능을 보장할 수 있다.
본 발명에 따른 인터넷 프로토콜 기반 통화 서비스를 위한 에코 제거 방법은 다양한 컴퓨터 수단을 통하여 판독 가능한 소프트웨어 형태로 구현되어 컴퓨터로 판독 가능한 기록매체에 기록될 수 있다. 여기서, 기록매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM(Compact Disk Read Only Memory), DVD(Digital Video Disk)와 같은 광 기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-Optical Media), 및 롬(ROM), 램(RAM, Random Access Memory), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이, 본 명세서와 도면에는 본 발명의 바람직한 실시 예에 대하여 개시하였으나, 여기에 개시된 실시 예외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다. 또한, 본 명세서와 도면에서 특정 용어들이 사용되었으나, 이는 단지 본 발명의 기술 내용을 쉽게 설명하고 발명의 이해를 돕기 위한 일반적인 의미에서 사용된 것이지, 본 발명의 범위를 한정하고자 하는 것은 아니다.
또한, 본 발명에 따른 단말 장치(100)에 탑재되는 프로세서는 본 발명에 따른 방법을 실행하기 위한 프로그램 명령을 처리할 수 있다. 일 구현예에서, 이 프로세서는 싱글 쓰레드(Single-threaded) 프로세서일 수 있으며, 다른 구현예에서 본 프로세서는 멀티 쓰레드(Multithreaded) 프로세서일 수 있다. 나아가 본 프로세서는 메모리 혹은 저장 장치 상에 저장된 명령을 처리하는 것이 가능하다.
본 발명에 따른 단말 장치(100)는 하나 이상의 프로세서로 하여금 앞서 설명한 기능들과 프로세스를 수행하도록 하는 명령에 의하여 구동될 수 있다. 예를 들어 그러한 명령으로는, 예컨대 JavaScript나 ECMAScript 명령 등의 스크립트 명령과 같은 해석되는 명령이나 실행 가능한 코드 혹은 컴퓨터로 판독 가능한 매체에 저장되는 기타의 명령이 포함될 수 있다.
본 발명에 따른 단말 장치에 탑재되고 본 발명에 따른 방법을 실행하는 컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 어플리케이션, 스크립트 혹은 코드로도 알려져 있음)은 컴파일 되거나 해석된 언어나 선험적 혹은 절차적 언어를 포함하는 프로그래밍 언어의 어떠한 형태로도 작성될 수 있으며, 독립형 프로그램이나 모듈, 컴포넌트, 서브루틴 혹은 컴퓨터 환경에서 사용하기에 적합한 다른 유닛을 포함하여 어떠한 형태로도 전개될 수 있다. 컴퓨터 프로그램은 파일 시스템의 파일에 반드시 대응하는 것은 아니다. 프로그램은 요청된 프로그램에 제공되는 단일 파일 내에, 혹은 다중의 상호 작용하는 파일(예컨대, 하나 이상의 모듈, 하위 프로그램 혹은 코드의 일부를 저장하는 파일) 내에, 혹은 다른 프로그램이나 데이터를 보유하는 파일의 일부(예컨대, 마크업 언어 문서 내에 저장되는 하나 이상의 스크립트) 내에 저장될 수 있다. 컴퓨터 프로그램은 하나의 사이트에 위치하거나 복수의 사이트에 걸쳐서 분산되어 통신 네트워크에 의해 상호 접속된 다중 컴퓨터나 하나의 컴퓨터 상에서 실행되도록 전개될 수 있다.
컴퓨터 프로그램 명령어와 데이터를 저장하기에 적합한 컴퓨터로 판독 가능한 매체는, 예컨대 EPROM, EEPROM 및 플래시메모리 장치와 같은 반도체 메모리 장치, 예컨대 내부 하드디스크나 외장형 디스크와 같은 자기 디스크, 자기광학 디스크 및 CD-ROM과 DVD-ROM 디스크를 포함하여 모든 형태의 비휘발성 메모리, 매체 및 메모리 장치를 포함한다. 프로세서와 메모리는 특수 목적의 논리 회로에 의해 보충되거나, 그것에 통합될 수 있다.
본 명세서는 다수의 특정한 구현물의 세부사항들을 포함하지만, 이들은 어떠한 발명이나 청구 가능한 것의 범위에 대해서도 제한적인 것으로서 이해되어서는 안되며, 오히려 특정한 발명의 특정한 실시형태에 특유할 수 있는 특징들에 대한 설명으로서 이해되어야 한다. 개별적인 실시형태의 문맥에서 본 명세서에 기술된 특정한 특징들은 단일 실시형태에서 조합하여 구현될 수도 있다. 반대로, 단일 실시형태의 문맥에서 기술한 다양한 특징들 역시 개별적으로 혹은 어떠한 적절한 하위 조합으로도 복수의 실시형태에서 구현 가능하다. 나아가, 특징들이 특정한 조합으로 동작하고 초기에 그와 같이 청구된 바와 같이 묘사될 수 있지만, 청구된 조합으로부터의 하나 이상의 특징들은 일부 경우에 그 조합으로부터 배제될 수 있으며, 그 청구된 조합은 하위 조합이나 하위 조합의 변형물로 변경될 수 있다.
마찬가지로, 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다. 또한, 상술한 실시형태의 다양한 시스템 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 컴포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징될 수 있다는 점을 이해하여야 한다.
본 명세서에서 설명한 주제의 특정한 실시형태를 설명하였다. 기타의 실시형태들은 이하의 청구항의 범위 내에 속한다. 예컨대, 청구항에서 인용된 동작들은 상이한 순서로 수행되면서도 여전히 바람직한 결과를 성취할 수 있다. 일 예로서, 첨부도면에 도시한 프로세스는 바람직한 결과를 얻기 위하여 반드시 그 특정한 도시된 순서나 순차적인 순서를 요구하지 않는다. 특정한 구현예에서, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다.
본 기술한 설명은 본 발명의 최상의 모드를 제시하고 있으며, 본 발명을 설명하기 위하여, 그리고 당업자가 본 발명을 제작 및 이용할 수 있도록 하기 위한 예를 제공하고 있다. 이렇게 작성된 명세서는 그 제시된 구체적인 용어에 본 발명을 제한하는 것이 아니다. 따라서, 상술한 예를 참조하여 본 발명을 상세하게 설명하였지만, 당업자라면 본 발명의 범위를 벗어나지 않으면서도 본 예들에 대한 개조, 변경 및 변형을 가할 수 있다.
따라서 본 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구범위에 의해 정하여져야 한다.
본 발명은 인터넷 프로토콜 기반 통화 서비스를 제공하는데 있어서, 하드웨어 에코 제거 기능을 제공하는 디지털 신호 처리기(DSP: Digital Signal Processor) 별로 최적의 에코 성능을 제공하기 위한 에코 제거 방법을 DB화하고, 발신 또는 착신이 발생하면, 현재 구동되는 DSP의 프로세서 정보를 확인하고, 확인된 DSP에 대응하는 에코 제거 방법을 적용하여 하드웨어 에코 제거 기능을 구동시키고, 하드웨어 에코 제거 기능이 구비되지 않은 경우, 통화 어플리케이션에 구비된 소프트웨어 에코 제거 기능을 동작시킴으로써, 통화 서비스 중 발생하는 에코 제거 성능을 최대한 보장할 수 있도록 한다.
특히, 본 발명은 수신된 오디오 신호가 마이크로 인입되는 시간 등과 같은 오디오 프레임워크별 처리 성능을 고려하여, 각 DSP의 하드웨어 에코 제거 기능을 구동함으로써, 단말 장치에 영향받지 않은 안정된 에코 제거 성능을 제공하고, 이를 통해 통화 중의 음성 품질을 개선할 수 있다.
100: 단말 장치 110: 통신부
120: 입력부 130: 표시부
140: 오디오처리부 150: 저장부
160: 제어부 200: 통화 제어 장치
300: 통신망

Claims (8)

  1. 통신망에 접속하여, 인터넷 프로토콜 기반의 통화를 위한 호 제어 메시지 및 통화 데이터를 송수신하는 통신부; 및
    DSP(Digital Signal Process)를 통해 구현된 하드웨어 에코 제거 기능의 프로세서 별 구동 정보를 저장하는 저장부;
    인터넷 프로토콜 기반 통화 서비스를 수행하는 중에, 발신 또는 착신이 발생되면, 단말 장치 내에 구비된 프로세서 정보를 확인하고, 확인된 프로세서 정보에 대응하는 상기 구동 정보를 기반으로 하드웨어 에코 제거 기능을 구동시켜, 통화 중 발생하는 에코 성분을 제거하는 제어부를 포함하고,
    상기 제어부는,
    소프트웨어 에코 제거 기능을 포함하는 미디어 처리 모듈을 구비하여, 상기 프로세서 정보를 기반으로 단말 장치 내에 하드웨어 에코 제거 기능이 존재하는 지를 더 확인하여, 하드웨어 에코 제거 기능이 존재하지 않는 경우, 상기 소프트웨어 에코 제거 기능을 구동시키는 것을 특징으로 하는 인터넷 프로토콜 기반 통화 서비스를 위한 단말 장치.
  2. 제1항에 있어서,
    상기 DSP 기반의 하드웨어 에코 제거 기능을 구비하고, 입력된 오디오 신호를 스피커로 출력하고, 마이크로 입력된 오디오 신호를 상기 제어부로 제공하는 오디오 처리부를 더 포함하는 것을 특징으로 하는 인터넷 프로토콜 기반 통화 서비스를 위한 단말 장치.
  3. 삭제
  4. 삭제
  5. DSP(Digital Signal Process)를 통해 구현된 하드웨어 에코 제거 기능의 프로세서 별 구동 정보를 DB화하는 단계;
    인터넷 프로토콜 기반 통화 서비스를 수행하는 중에, 발신 또는 착신이 발생되면, 단말 장치내에 구비된 프로세서 정보를 확인하는 단계;
    확인된 프로세서 정보에 대응하는 하드웨어 에코 제거 기능의 구동 정보를 추출하는 단계; 및
    상기 추출한 구동 정보를 기반으로 상기 하드웨어 에코 제거 기능을 구동시켜, 통화 중 발생하는 에코 성분을 제거하고, 상기 프로세서 정보를 기반으로 단말 장치 내에 하드웨어 에코 제거 기능이 존재하는 지를 더 확인하여, 하드웨어 에코 제거 기능이 존재하지 않는 경우, 소프트웨어 에코 제거 기능을 구동시키는 단계를 포함하는 것을 특징으로 하는 인터넷 프로토콜 기반 통화 서비스를 위한 에코 제거 방법.
  6. 삭제
  7. 삭제
  8. 삭제
KR1020130131793A 2013-10-31 2013-10-31 인터넷 프로토콜 기반 통화 서비스를 위한 단말 장치 및 그의 에코 제거 방법 KR102109608B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130131793A KR102109608B1 (ko) 2013-10-31 2013-10-31 인터넷 프로토콜 기반 통화 서비스를 위한 단말 장치 및 그의 에코 제거 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130131793A KR102109608B1 (ko) 2013-10-31 2013-10-31 인터넷 프로토콜 기반 통화 서비스를 위한 단말 장치 및 그의 에코 제거 방법

Publications (2)

Publication Number Publication Date
KR20150050241A KR20150050241A (ko) 2015-05-08
KR102109608B1 true KR102109608B1 (ko) 2020-05-28

Family

ID=53388157

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130131793A KR102109608B1 (ko) 2013-10-31 2013-10-31 인터넷 프로토콜 기반 통화 서비스를 위한 단말 장치 및 그의 에코 제거 방법

Country Status (1)

Country Link
KR (1) KR102109608B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102459687B1 (ko) * 2018-11-26 2022-10-28 에릭슨엘지엔터프라이즈 주식회사 VoIP 단말 제어를 위한 전자 장치 및 방법과, 그를 저장하는 컴퓨터 판독 가능한 기록매체

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006166203A (ja) * 2004-12-09 2006-06-22 Oki Electric Ind Co Ltd 通話制御装置及び通話制御方法
JP2008085429A (ja) * 2006-09-26 2008-04-10 Fujitsu Ltd 電子機器、そのエコーキャンセル方法、そのエコーキャンセルプログラム、記録媒体及び回路基板

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000025234A (ko) * 1998-10-09 2000-05-06 김영환 디지털 이동통신 시스템에서의 단말기측 반향제거 방법
KR101169433B1 (ko) 2006-01-19 2012-07-27 삼성전자주식회사 VoIP 시스템의 라인 에코 방지 장치 및 그 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006166203A (ja) * 2004-12-09 2006-06-22 Oki Electric Ind Co Ltd 通話制御装置及び通話制御方法
JP2008085429A (ja) * 2006-09-26 2008-04-10 Fujitsu Ltd 電子機器、そのエコーキャンセル方法、そのエコーキャンセルプログラム、記録媒体及び回路基板

Also Published As

Publication number Publication date
KR20150050241A (ko) 2015-05-08

Similar Documents

Publication Publication Date Title
US10142578B2 (en) Method and system for communication
KR102265931B1 (ko) 음성 인식을 이용하는 통화 수행 방법 및 사용자 단말
KR100985612B1 (ko) 동적 다중 파티의 다중 매체 통신 세션의 자동 조정의 컴퓨터 구현 방법, 동적 다중 파티의 다중 매체 통신 세션을 자동 조정하는 장치 및 컴퓨터 판독가능 매체
US9680883B1 (en) Techniques for integrating voice control into an active telephony call
JP7353497B2 (ja) 能動的に対話の開始を提起するためのサーバ側処理方法及びサーバ、並びに能動的に対話の開始が提起できる音声インタラクションシステム
US20130170361A1 (en) System and Method of Interactive call control for calls and connections created in different communication networks
US20180013869A1 (en) Integration of voip phone services with intelligent cloud voice recognition
CN105743862B (zh) 用于声音数据的双向镜像系统
KR102109608B1 (ko) 인터넷 프로토콜 기반 통화 서비스를 위한 단말 장치 및 그의 에코 제거 방법
KR102109609B1 (ko) 인터넷 프로토콜 기반 통화 서비스를 위한 단말 장치 및 그의 착신 알람 제공 방법, 그리고 그의 인터넷 프로토콜 기반 통화 서비스 시스템
KR20150047150A (ko) 음성을 텍스트로 변환하는 채팅 서비스 장치 및 방법과, 채팅 서비스 시스템
KR102109610B1 (ko) 인터넷 프로토콜 기반 통화 서비스 시스템 및 그의 단말 장치
CN102231734A (zh) 实现从文本到语音tts的音频转码方法、装置及系统
KR102067657B1 (ko) m-VoIP 시스템, 그 시스템에서의 m-VoIP의 호 처리를 위한 장치 및 방법
JP2016514380A (ja) 音声/ビデオ電話を強化するためのスマートtv機能の使用
CN108848116A (zh) 通话录音方法、装置及存储介质
JP4723676B2 (ja) セッション状態の通知に係る通信方法、サーバ、およびプログラム
KR102515476B1 (ko) 영상 통화를 위한 코덱 장치 및 이를 적용한 단말 장치
CN113660451B (zh) 多平台视频会议方法、视频会议装置及可读存储介质
KR102044746B1 (ko) 모바일 인터넷 전화 기반의 서비스 시스템 및 그 시스템에서의 공유 서비스 오류 방지를 위한 장치와 방법, 이를 위한 프로그램을 기록한 기록 매체
US10951771B2 (en) Method and apparatus for call handling control
US9742891B2 (en) Personal computer and mobile phone communications through peer-to-peer connection
KR101649641B1 (ko) 영상 통화 시스템의 통화 제어 장치 및 그 방법
US20160065638A1 (en) Controller and voice transmission system using the same
KR102067658B1 (ko) m-VoIP 시스템, 그 시스템에서의 m-VoIP 호 처리를 위한 장치 및 방법

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