KR102216881B1 - 전자장치에서 마이크의 감도에 따른 자동 이득 조절 방법 및 장치 - Google Patents

전자장치에서 마이크의 감도에 따른 자동 이득 조절 방법 및 장치 Download PDF

Info

Publication number
KR102216881B1
KR102216881B1 KR1020140020134A KR20140020134A KR102216881B1 KR 102216881 B1 KR102216881 B1 KR 102216881B1 KR 1020140020134 A KR1020140020134 A KR 1020140020134A KR 20140020134 A KR20140020134 A KR 20140020134A KR 102216881 B1 KR102216881 B1 KR 102216881B1
Authority
KR
South Korea
Prior art keywords
microphone
electronic device
gain
value
average
Prior art date
Application number
KR1020140020134A
Other languages
English (en)
Other versions
KR20150098809A (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 KR1020140020134A priority Critical patent/KR102216881B1/ko
Priority to US14/628,526 priority patent/US9819321B2/en
Publication of KR20150098809A publication Critical patent/KR20150098809A/ko
Application granted granted Critical
Publication of KR102216881B1 publication Critical patent/KR102216881B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03GCONTROL OF AMPLIFICATION
    • H03G3/00Gain control in amplifiers or frequency changers
    • H03G3/02Manually-operated control
    • H03G3/04Manually-operated control in untuned amplifiers
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03GCONTROL OF AMPLIFICATION
    • H03G3/00Gain control in amplifiers or frequency changers
    • H03G3/20Automatic control
    • H03G3/30Automatic control in amplifiers having semiconductor devices
    • H03G3/3005Automatic control in amplifiers having semiconductor devices in amplifiers suitable for low-frequencies, e.g. audio amplifiers
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03GCONTROL OF AMPLIFICATION
    • H03G3/00Gain control in amplifiers or frequency changers
    • H03G3/20Automatic control
    • H03G3/30Automatic control in amplifiers having semiconductor devices
    • H03G3/32Automatic control in amplifiers having semiconductor devices the control being dependent upon ambient noise level or sound level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R29/00Monitoring arrangements; Testing arrangements
    • H04R29/004Monitoring arrangements; Testing arrangements for microphones
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R2420/00Details of connection covered by H04R, not provided for in its groups
    • H04R2420/09Applications of special connectors, e.g. USB, XLR, in loudspeakers, microphones or headphones

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Otolaryngology (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Telephone Function (AREA)

Abstract

본 발명은 마이크의 감도에 따라 이득을 자동으로 조절하기 위한 방법 및 장치에 관한 것이다.
본 발명의 일 실시예에 따른 방법은, 전자장치에서 마이크의 이득 조절 방법으로, 기준 음원을 스피커로 출력하고, 상기 스피커에서 출력되는 음향 신호를 마이크를 통해 획득하는 단계; 상기 마이크에서 획득된 음향 신호의 파라미터와 저장된 기준 파라미터를 비교하는 단계; 및 상기 비교에 기반하여 상기 마이크의 이득을 조절하는 단계;를 포함할 수 있다.

Description

전자장치에서 마이크의 감도에 따른 자동 이득 조절 방법 및 장치{AUTOMATIC GAIN CONTROL METHOD AND APPARATUS BASED ON SENSITIVITY OF MICROPHONE IN A ELECTRONIC DEVICE}
본 발명은 마이크의 감도에 따라 이득을 자동으로 조절하기 위한 방법 및 장치에 관한 것이다.
전자장치의 기술이 발전하면서 다양한 형태의 전자장치에서 녹음 또는 통신을 수행할 수 있게 되었다. 이처럼 전자장치에서 음성 또는 음향을 처리하기 위한 기술이 발전하면서 전자장치 독자적으로 음성 또는 음향을 처리하기도 하지만, 별도의 외장형 마이크를 사용하기도 한다. 기술의 발전은 전자장치에서 사용할 수 있는 외장형 마이크의 발전을 이끌었으며, 이에 따라 다양한 형태의 외장형 마이크가 사용되고 있다.
현재 전자장치들은 여러 종류의 외장형 마이크의 특성을 고려하지 않고 있다. 즉, 전자장치들은 기본적으로 설정되어 있는 이득에 맞춰 처리된다. 전자장치에 사용자가 감도나 이득(gain)을 처리할 수 있는 기능을 갖춘 일부의 전자장치에서는 사용자가 별도로 설정한 이득에 맞춰 음향 또는 음성을 처리한다. 음성 또는 음향의 처리는 통신 시에 음성 또는 음향을 전송하거나, 녹음 등이 될 수 있다.
이처럼 현재 시중에 시판되고 있는 외장형 마이크는 다양한 종류만큼 다양한 감도 또는 이득(gain)을 가진다. 전자장치에 이처럼 서로 다른 감도를 갖는 외장형 마이크를 연결하여 사용하는 경우 감도를 조정하는 기능이 없는 전자장치의 경우 기본적으로 설정된 값으로만 음성 또는 음향이 처리되므로, 사용자가 원하는 품질을 획득할 수 없다. 또한 감도를 조정하는 기능이 있는 전자장치의 경우 사용자가 마이크의 특성을 정확히 인지하지 못하거나 조작하는 방법을 모르는 사용자는 원하는 품질을 획득할 수 없다. 그러므로 전자장치에서 처리된 음성 또는 음향이 너무 작거나 또는 너무 큰 경우가 종종 발생하기도 한다.
따라서 본 발명에서는 전자장치에서 마이크의 특성에 따라 적응적으로 음성 또는 음향을 처리하기 위한 방법 및 장치를 제공한다.
또한 본 발명에서는 전자장치에서 마이크의 특성을 자동으로 검출하여 음성 또는 음향의 이득을 조절하기 위한 방법 및 장치를 제공한다.
또한 본 발명에서는 전자장치에서 마이크의 특성을 파악하여 사용자가 원하는 음성 또는 음향을 제공할 수 있는 방법 및 장치를 제공한다.
또한 본 발명에서는 마이크를 사용할 수 있는 전자장치에서 음성 또는 음향의 품질을 개선할 수 있는 방법 및 장치를 제공한다.
본 발명의 일 실시예에 따른 방법은, 전자장치에서 마이크의 이득 조절 방법으로, 기준 음원을 스피커로 출력하고, 상기 스피커에서 출력되는 음향 신호를 마이크를 통해 획득하는 단계; 상기 마이크에서 획득된 음향 신호의 파라미터와 저장된 기준 파라미터를 비교하는 단계; 및 상기 비교에 기반하여 상기 마이크의 이득을 조절하는 단계;를 포함할 수 있다.
본 발명의 일 실시예에 따른 장치는, 음향을 출력하기 위한 스피커; 상기 스피커에서 출력되는 신호를 획득하는 마이크; 기준 음원 및 기준 파라미터를 저장하는 메모리; 및 상기 기준 음원이 상기 스피커로 출력되도록 제어하고, 상기 스피커에서 출력되는 신호를 상기 마이크를 통해 획득하여 상기 획득한 음향 신호의 파라미터와 상기 기준 파라미터를 비교하고, 상기 비교에 기반하여 상기 마이크의 이득을 조절하는 프로세서;를 포함할 수 있다.
본 발명에 따른 전자장치에서 외장형 마이크를 비롯한 각종 마이크의 특성에 따라 적응적으로 음성 또는 음향을 처리하여 음성 또는 음향의 이득을 조절할 수 있다. 또한 본 발명에 따른 전자장치는 외장형 마이크의 특성을 파악하여 사용자가 원하는 음성 또는 음향을 제공할 수 있으며, 음성 또는 음향의 품질을 개선할 수 있다.
도 1은 본 발명의 실시예에 따른 전자장치에 대한 블록도,
도 2는 본 발명의 일 실시예들에 따른 하드웨어 200의 블록도,
도 3은 본 발명의 일 실시예에 따른 프로그래밍 모듈 300의 블록도,
도 4는 본 발명의 일 실시예에 따라 개발자가 전자장치를 개발할 시 외장형 마이크로부터 획득되는 오디오 신호의 감도에 따른 처리를 위한 제어 흐름도,
도 5는 본 발명의 다른 실시예에 따라 개발자가 전자장치를 개발할 시 외장형 마이크로부터 획득되는 오디오 신호의 감도에 따른 처리를 위한 제어 흐름도,
도 6은 본 발명에 실시예에 따른 전자장치에서 외장형 마이크로부터 획득되는 오디오 신호의 감도에 따른 이득 조절 시의 일 실시예에 따른 제어 흐름도,
도 7은 본 발명에 따른 전자장치에서 외장형 마이크로부터 획득되는 오디오 신호의 감도에 따른 이득 조절 시의 다른 실시예에 따른 제어 흐름도,
도 8은 본 발명에 따른 전자장치에서 외장형 마이크로부터 획득되는 오디오 신호의 감도에 따른 이득 조절 시의 또 다른 실시예에 따른 제어 흐름도.
이하, 첨부된 도면을 참조하여 본 발명(present disclosure)를 설명한다. 본 발명은 특정 실시예들이 도면에 예시되고 관련된 상세한 설명이 기재되어 있으나, 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있다. 따라서, 본 발명은 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경 또는 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조부호가 사용되었다.
본 발명 가운데 사용될 수 있는"포함한다", "포함할 수 있다" 등의 표현은 발명된 해당 기능, 동작, 구성요소 등의 존재를 가리키며, 추가적인 하나 이상의 기능, 동작, 구성요소 등을 제한하지 않는다. 또한, 본 발명에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한 본 발명에서 "및/또는" 등의 표현은 함께 나열된 단어들의 어떠한, 그리고 모든 조합을 포함한다. 예를 들어, A 및/또는 B는, A를 포함할 수도, B를 포함할 수도, 또는 A 와 B 모두를 포함할 수도 있다.
또한 본 발명 가운데 "제1", "제2", "첫째", "둘째" 등의 표현들이 본 발명의 다양한 구성요소들을 수식할 수 있지만, 해당 구성요소들을 한정하지 않는다. 예를 들어, 표현들은 해당 구성요소들의 순서 및/또는 중요도 등을 한정하지 않는다. 위의 표현들은 한 구성요소를 다른 구성요소와 구분 짓기 위해 사용될 수 있다. 예를 들어, 제1사용자 기기와 제2사용자 기기는 모두 사용자 기기이며, 서로 다른 사용자 기기를 나타낸다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1구성요소는 제2구성요소로 명명될 수 있고, 유사하게 제2구성요소도 제1구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해될 수 있어야 할 것이다. 본 발명에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 발명에 따른 전자 장치는, 통신 기능이 포함되며, 외부 마이크를 가질 수있는 장치일 수 있다. 예를 들면, 스마트 폰(smartphone), 태블릿 PC(tablet personal computer), 이동전화기(mobile phone), 화상전화기, 전자북 리더기(e-book reader), 데스크탑 PC(desktop personal computer), 랩탑 PC(laptop personal computer), 넷북 컴퓨터(netbook computer), PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 전자 팔찌, 전자 목걸이, 전자 앱세서리(appcessory), 카메라(camera), 웨어러블 장치(wearable device), 전자 시계(electronic clock), 손목 시계(wrist watch), 가전 제품(home appliance)(예: 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기 등), 인공 지능 로봇, TV, DVD(digital video disk) 플레이어, 오디오, 각종 의료기기(예: MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 초음파기 등), 네비게이션(navigation) 장치, GPS 수신기(global positioning system receiver), EDR(event data recorder), FDR(flight data recorder), 셋톱 박스(set-top box), TV 박스(예를 들면, 삼성 HomeSyncTM, 애플TVTM, 또는 구글 TVTM), 전자 사전, 자동차 인포테인먼트(infotainment) 장치, 선박용 전자 장비(electronic equipment for ship, 예를 들면, 선박용 항법 장치, 자이로콤파스 등), 항공 전자기기(avionics), 보안 기기, 전자 의복, 전자 키, 캠코더(camcorder), 게임 콘솔(game consoles), HMD(head-mounted display), 평판표시장치(flat panel display device), 전자 액자, 전자 앨범, 통신 기능을 포함한 가구(furniture) 또는 건물/구조물의 일부, 전자 보드(electronic board), 전자 사인 입력장치(electronic signature receiving device) 또는 프로젝터(projector) 등의 다양한 장치들 중 하나 또는 그 이상의 조합일 수 있다. 본 발명에 따른 전자 장치는 전술한 기기들에 한정되지 않음은 당업자에게 자명하다.
도 1은 본 발명의 실시예에 따른 전자장치에 대한 블록도를 도시한다.
도 1을 참조하면, 전자장치 100은 버스 110, 프로세서 120, 메모리 130, 사용자 입력 모듈 140, 디스플레이 모듈 150, 또는 통신 모듈 160을 포함할 수 있다.
버스 110은, 전술한 구성요소들을 서로 연결하고, 전술한 구성요소들 간의 통신(예: 제어 메시지)을 전달하는 회로일 수 있다.
프로세서 120은, 예를 들면, 버스 110을 통해 전술한 다른 구성요소들(예: 메모리 130, 사용자 입력 모듈 140, 디스플레이 모듈 150, 통신 모듈 160 등)로부터 명령을 수신하여, 수신된 명령을 해독하고, 해독된 명령에 따른 연산이나 데이터 처리를 실행할 수 있다.
메모리 130은, 프로세서 120 또는 다른 구성요소들(예: 사용자 입력 모듈 140, 디스플레이 모듈 150, 통신 모듈 160 등)로부터 수신되거나 프로세서 120 또는 다른 구성요소들에 의해 생성된 명령 또는 데이터를 저장할 수 있다. 메모리 130은, 예를 들면, 커널 131, 미들웨어 132, 어플리케이션 프로그래밍 인터페이스(API: application programming interface) 133 또는 어플리케이션 134 등의 프로그래밍 모듈들을 포함할 수 있다. 전술한 각각의 프로그래밍 모듈들은 소프트웨어, 펌웨어, 하드웨어 또는 이들 중 적어도 둘 이상의 조합으로 구성될 수 있다. 또한 메모리 130은 본 발명에 따른 제어 동작을 처리하기 위한 제어 데이터를 저장할 수 있으며, 기준 오디오 신호 및 이득에 대한 정보들을 저장할 수 있다.
커널 131은 나머지 다른 프로그래밍 모듈들, 예를 들면, 미들웨어 132, API 133 또는 어플리케이션 134에 구현된 동작 또는 기능을 실행하는데 사용되는 시스템 리소스들(예: 버스 110, 프로세서 120 또는 메모리 130 등)을 제어 또는 관리할 수 있다. 또한, 커널 131은 미들웨어 132, API 133 또는 어플리케이션 134에서 전자 장치 100의 개별 구성요소에 접근하여 제어 또는 관리할 수 있는 인터페이스를 제공할 수 있다.
미들웨어 132는 API 133 또는 어플리케이션 134가 커널 131과 통신하여 데이터를 주고받을 수 있도록 중개 역할을 수행할 수 있다. 또한, 미들웨어 132는 (다수의) 어플리케이션들 134로부터 수신된 작업 요청들과 관련하여, 예를 들면, (다수의) 어플리케이션들 134들 중 적어도 하나의 어플리케이션에 전자 장치 100의 시스템 리소스(예: 버스 110, 프로세서 120 또는 메모리 130 등)를 사용할 수 있는 우선순위를 배정하는 등의 방법을 이용하여 작업 요청에 대한 로드 밸런싱을 수행할 수 있다.
API 133은 어플리케이션 134가 커널 131 또는 미들웨어 132에서 제공하는 기능을 제어할 수 있는 인터페이스로, 예를 들면, 파일 제어, 창 제어, 화상 처리 또는 문자 제어 등을 위한 적어도 하나의 인터페이스 또는 함수를 포함할 수 있다.
사용자 입력 모듈 140은, 예를 들면, 사용자로부터 명령 또는 데이터를 입력받아 버스 110을 통해 프로세서 120 또는 메모리 130에 전달할 수 있다. 디스플레이 모듈 150은 사용자에게 화상, 영상 또는 데이터 등을 표시할 수 있다.
통신 모듈 160은 다른 전자 장치 102와 전자 장치 100간의 통신을 연결할 수 있다. 통신 모듈 160은 소정의 근거리 통신 프로토콜(예: Wifi(wireless fidelity), BT(Bluetooth), NFC(near field communication) 또는 소정의 네트워크 통신(예: Internet, LAN(local area network), WAN(wire area network), telecommunication network, cellular network, satellite network 또는 POTS(plain old telephone service) 등) 162를 지원할 수 있다. 전자 장치 102, 104 각각은 전자 장치 100과 동일한(예: 같은 타입의) 장치이거나 또는 다른(예: 다른 타입의) 장치일 수 있다.
도 2는 본 발명의 일 실시예들에 따른 하드웨어 200의 블록도를 도시한다.
하드웨어 200은, 예를 들면, 도 1에 도시된 전자 장치 100일 수 있다. 도 2를 참조하면, 하드웨어 200은 하나 이상의 프로세서 210, SIM(subscriber identification module) 카드 214, 메모리 220, 통신 모듈 230, 센서 모듈 240, 사용자 입력 모듈 250, 디스플레이 모듈 260, 인터페이스 270, 오디오 코덱 280, 카메라 모듈 291, 전력관리 모듈 295, 배터리 296, 인디케이터 297 또는 모터 298을 포함할 수 있다.
프로세서 210(예: 프로세서 120)은 하나 이상의 어플리케이션 프로세서(AP: application processor) 211 또는 하나 이상의 커뮤니케이션 프로세서(CP: communication processor) 213을 포함할 수 있다. 프로세서 210은, 예를 들면, 도 1에 도시된 프로세서 120일 수 있다. 도 2에서는 AP 211 및 CP 213이 프로세서 210 내에 포함된 것으로 도시되었으나, AP 211과 CP 213은 서로 다른 IC 패키지들 내에 각각 포함될 수 있다. 한 실시예에서는 AP 211 및 CP 213은 하나의 IC 패키지 내에 포함될 수 있다.
AP 211은 운영체제 또는 응용 프로그램을 구동하여 AP 211에 연결된 다수의 하드웨어 또는 소프트웨어 구성요소들을 제어하고, 멀티미디어 데이터를 포함한 각종 데이터 처리 및 연산을 수행할 수 있다. AP 211은, 예를 들면, SoC(system on chip)로 구현될 수 있다. 한 실시예에 따르면, 프로세서 210은 GPU(graphic processing unit, 미도시)를 더 포함할 수 있다.
CP 213은 하드웨어 200을 포함하는 전자 장치(예: 전자 장치 100)와 네트워크로 연결된 다른 전자 장치들 간의 통신에서 데이터 링크를 관리하고 통신 프로토콜을 변환하는 기능을 수행할 수 있다. CP 213은, 예를 들면, SoC로 구현될 수 있다. 한 실시예에 따르면, CP 213은 멀티미디어 제어 기능의 적어도 일부를 수행할 수 있다. CP 213은, 예를 들면, 가입자 식별 모듈(예: SIM 카드 214)을 이용하여 통신 네트워크 내에서 단말의 구별 및 인증을 수행할 수 있다. 또한, CP 213은 사용자에게 음성 통화, 영상 통화, 문자 메시지 또는 패킷 데이터(packet data) 등의 서비스들을 제공할 수 있다.
또한, CP 213은 통신 모듈 230의 데이터 송수신을 제어할 수 있다. 도 2에서는, CP 213, 전력관리 모듈 295 또는 메모리 220 등의 구성요소들이 AP 211과 별개의 구성요소로 도시되어 있으나, 한 실시예에 따르면, AP 211이 전술한 구성요소들의 적어도 일부(예: CP 213)를 포함하도록 구현될 수 있다.
한 실시예에 따르면, AP 211 또는 CP 213은 각각에 연결된 비휘발성 메모리 또는 다른 구성요소 중 적어도 하나로부터 수신한 명령 또는 데이터를 휘발성 메모리에 로드(load)하여 처리할 수 있다. 또한, AP 211 또는 CP 213은 다른 구성요소 중 적어도 하나로부터 수신하거나 다른 구성요소 중 적어도 하나에 의해 생성된 데이터를 비휘발성 메모리에 저장(store)할 수 있다.
SIM 카드 214는 가입자 식별 모듈을 구현한 카드일 수 있으며, 전자 장치의 특정 위치에 형성된 슬롯에 삽입될 수 있다. SIM 카드 214는 고유한 식별 정보(예: ICCID(integrated circuit card identifier)) 또는 가입자 정보(예: IMSI(international mobile subscriber identity))를 포함할 수 있다.
메모리 220은 내장 메모리 222 또는 외장 메모리 224를 포함할 수 있다. 메모리 220은, 예를 들면, 도 1에 도시된 메모리 130일 수 있다. 내장 메모리 222는, 예를 들면, 휘발성 메모리(예를 들면, DRAM(dynamic RAM), SRAM(static RAM), SDRAM(synchronous dynamic RAM) 등) 또는 비휘발성 메모리(non-volatile Memory, 예를 들면, OTPROM(one time programmable ROM), PROM(programmable ROM), EPROM(erasable and programmable ROM), EEPROM(electrically erasable and programmable ROM), mask ROM, flash ROM, NAND flash memory, NOR flash memory 등) 중 적어도 하나를 포함할 수 있다. 한 실시예에 따르면, 내장 메모리 222는 Solid State Drive(SSD)의 형태를 취할 수도 있다. 외장 메모리 224는 flash drive, 예를 들면, CF(compact flash), SD(secure digital), Micro-SD(micro secure digital), Mini-SD(mini secure digital), xD(extreme digital) 또는 MemoryStick 등을 더 포함할 수 있다.
통신 모듈 230은 무선 통신 모듈 231 또는 RF 모듈 234를 포함할 수 있다. 통신 모듈 230은, 예를 들면, 도 1에 도시된 통신 모듈 160일 수 있다. 무선 통신 모듈 231은, 예를 들면, WiFi 233, BT(bluetooth) 235, GPS 237 또는 NFC(near field communication) 239를 포함할 수 있다. 예를 들면, 무선 통신 모듈 231은 무선 주파수를 이용하여 무선 통신 기능을 제공할 수 있다. 추가적으로 또는 대체적으로, 무선 통신 모듈 231은 하드웨어 200을 네트워크(예: Internet, LAN(local area network), WAN(wire area network), telecommunication network, cellular network, satellite network 또는 POTS(plain old telephone service) 등)와 연결시키기 위한 네트워크 인터페이스(예: LAN card) 또는 모뎀 등을 포함할 수 있다.
RF 모듈 234는 데이터의 송수신, 예를 들면, RF 신호 또는 호출된 전자신호의 송수신을 담당할 수 있다. RF 모듈 234는, 도시되지는 않았으나, 예를 들면, 트랜시버(transceiver), PAM(power amp module), 주파수 필터(frequency filter) 또는 LNA(low noise amplifier) 등을 포함할 수 있다. 또한, RF 모듈234는 무선통신에서 자유공간상의 전자파를 송수신하기 위한 부품, 예를 들면, 도체 또는 도선 등을 더 포함할 수 있다.
센서 모듈 240은, 예를 들면, 제스처 센서 240A, 자이로 센서 240B, 기압 센서 240C, 마그네틱 센서 240D, 가속도 센서 240E, 그립 센서 240F, 근접 센서 240G, RGB(red, green, blue) 센서 240H, 생체 센서 240I, 온/습도 센서 240J, 조도 센서 240K 또는 UV(ultra violet) 센서 240M 중의 적어도 하나를 포함할 수 있다. 센서 모듈 240은 물리량을 계측하거나 전자 장치의 작동 상태를 감지하여, 계측 또는 감지된 정보를 전기 신호로 변환할 수 있다. 추가적으로/대체적으로, 센서 모듈 240은, 예를 들면, 후각 센서(E-nose sensor, 미도시), EMG 센서(electromyography sensor, 미도시), EEG 센서(electroencephalogram sensor, 미도시), ECG 센서(electrocardiogram sensor, 미도시) 또는 지문 센서 등을 포함할 수 있다. 센서 모듈 240은 그 안에 속한 적어도 하나 이상의 센서들을 제어하기 위한 제어회로를 더 포함할 수 있다.
사용자 입력 모듈 250은 터치 패널(touch panel) 252, (디지털) 펜 센서(pen sensor) 254, 키(key) 256 또는 초음파 입력 장치 258을 포함할 수 있다. 사용자 입력 모듈 250은, 예를 들면, 도 1에 도시된 사용자 입력 모듈 140일수 있다. 터치 패널 252는, 예를 들면, 정전식, 감압식, 적외선 방식 또는 초음파 방식 중 적어도 하나의 방식으로 터치 입력을 인식할 수 있다. 또한, 터치 패널 252는 컨트롤러(미도시)를 더 포함할 수도 있다. 정전식의 경우, 직접 터치뿐만 아니라 근접 인식도 가능하다. 터치 패널 252는 택타일레이어(tactile layer)를 더 포함할 수도 있다. 이 경우, 터치 패널 252는 사용자에게 촉각 반응을 제공할 수 있다.
(디지털) 펜 센서 254는, 예를 들면, 사용자의 터치 입력을 받는 것과 동일 또는 유사한 방법 또는 별도의 인식용 쉬트(sheet)를 이용하여 구현될 수 있다. 키 256로서, 예를 들면, 키패드 또는 터치 키가 이용될 수 있다. 초음파 입력 장치 258은 초음파 신호를 발생하는 펜을 통해, 단말에서 마이크(예: 마이크 288)로 음파를 감지하여 데이터를 확인할 수 있는 장치로서, 무선 인식이 가능하다. 한 실시예에 따르면, 하드웨어 200은 통신 모듈 230을 이용하여 이와 연결된 외부 장치(예: 네트워크, 컴퓨터 또는 서버)로부터 사용자 입력을 수신할 수도 있다.
디스플레이 모듈 260은 패널 262 또는 홀로그램 264를 포함할 수 있다. 디스플레이 모듈 260은, 예를 들면, 도 1에 도시된 디스플레이 모듈 150일 수 있다. 패널 262는, 예를 들면, LCD(liquid-crystal display) 또는 AM-OLED(active-matrix organic light-emitting diode) 등일 수 있다. 패널262는, 예를 들면, 유연하게(flexible), 투명하게(transparent) 또는 착용할 수 있게(wearable) 구현될 수 있다. 패널 262는 터치 패널 252와 하나의 모듈로 구성될 수도 있다. 홀로그램 264는 빛의 간섭을 이용하여 입체 영상을 허공에 보여줄 수 있다. 한 실시예에 따르면, 디스플레이 모듈 260은 패널 262 또는 홀로그램 264를 제어하기 위한 제어회로를 더 포함할 수 있다.
인터페이스 270은, 예를 들면, HDMI(high-definition multimedia interface) 272, USB(universal serial bus) 274, 프로젝터 276 또는 D-sub(D-subminiature) 278을 포함할 수 있다. 추가적으로 또는 대체적으로, 인터페이스 270은, 예를 들면, SD(secure Digital)/MMC(multi-media card)(미도시) 또는 IrDA(infrared data association, 미도시)를 포함할 수 있다. 또한 인터페이스 270은 외부 마이크를 연결하기 위한 3.5파이 잭 단자(미도시)를 포함할 수 있다.
오디오 코덱 280은 음성과 전기신호를 쌍방향으로 변환시킬 수 있다. 오디오 코덱 280은, 예를 들면, 스피커 282, 리시버 284, 이어폰 연결부 286 또는 마이크 288 등을 통해 입력 또는 출력되는 음성 정보를 변환시킬 수 있다. 이때 이어폰 연결부 286은 리시버와 마이크가 함께 구동될 수 있는 연결단자일 수 있다. 가령, 이어폰 연결부 286은 3.5파이 잭으로 구성될 수도 있다. 이어폰 연결부 286은 외장형 스피커와 외장형 마이크를 동시에 연결할 수도 있고, 외장형 마이크만을 연결할 수도 있다. 또한 본 발명에서 마이크 288은 전자장치 200의 내장형 마이크일 수 있다.
카메라 모듈 291은 화상 및 동영상을 촬영할 수 있는 장치로서, 한 실시예에 따르면, 하나 이상의 이미지 센서(예: 전면 렌즈 또는 후면 렌즈), ISP(image signal processor, 미도시) 또는 플래쉬 LED(flash LED, 미도시)를 포함할 수 있다.
전력관리 모듈 295는 하드웨어 200의 전력을 관리할 수 있다. 도시하지는 않았으나, 전력관리 모듈 295는, 예를 들면, PMIC(power management integrated circuit), 충전 IC(charger integrated circuit) 또는 배터리 게이지(battery fuel gauge)를 포함할 수 있다.
PMIC는, 예를 들면, 집적회로 또는 SoC 반도체 내에 탑재될 수 있다. 충전 방식은 유선과 무선으로 구분될 수 있다. 충전 IC는 배터리를 충전시킬 수 있으며, 충전기로부터의 과전압 또는 과전류 유입을 방지할 수 있다. 한 실시예에 따르면, 충전 IC는 유선 충전 방식 또는 무선 충전 방식 중 적어도 하나를 위한 충전 IC를 포함할 수 있다. 무선 충전 방식으로는, 예를 들면, 자기공명 방식, 자기유도 방식 또는 전자기파 방식 등이 있으며, 무선 충전을 위한 부가적인 회로, 예를 들면, 코일 루프, 공진 회로, 정류기 등의 회로가 추가될 수 있다.
배터리 게이지는, 예를 들면, 배터리 296의 잔량, 충전 중 전압, 전류 또는 온도를 측정할 수 있다. 배터리 296은 전기를 생성하여 전원을 공급할 수 있고, 예를 들면, 충전식 전지(rechargeable battery)일 수 있다.
인디케이터 297은 하드웨어 200 혹은 그 일부(예: AP 211)의 특정 상태, 예를 들면, 부팅 상태, 메시지 상태 또는 충전 상태 등을 표시할 수 있다. 모터 298은 전기적 신호를 기계적 진동으로 변환할 수 있다. MCU 299는, 센서 모듈 240을 제어할 수 있다.
도시되지는 않았으나, 하드웨어 200은 모바일 TV 지원을 위한 처리 장치(예: GPU)를 포함할 수 있다. 모바일 TV지원을 위한 처리 장치는, 예를 들면, DMB(digital multimedia broadcasting), DVB(digital video broadcasting) 또는 미디어플로우(media flow) 등의 규격에 따른 미디어 데이터를 처리할 수 있다.본 발명에 따른 하드웨어의 전술한 구성요소들 각각은 하나 또는 그 이상의 부품(component)으로 구성될 수 있으며, 해당 구성 요소의 명칭은 전자장치의 종류에 따라서 달라질 수 있다. 본 발명에 따른 하드웨어는 전술한 구성요소 중 적어도 하나를 포함하여 구성될 수 있으며, 일부 구성요소가 생략되거나 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 또한, 본 발명에 따른 하드웨어의 구성 요소들 중 일부가 결합되어 하나의 개체(entity)로 구성됨으로써, 결합되기 이전의 해당 구성 요소들의 기능을 동일하게 수행할 수 있다.
본 발명에 사용된 용어"모듈"은, 예를 들어, 하드웨어, 소프트웨어 또는 펌웨어(firmware) 중 하나 또는 둘 이상의 조합을 포함하는 단위(unit)를 의미할 수 있다. "모듈"은 예를 들어, 유닛(unit), 로직(logic), 논리 블록(logical block), 부품(component) 또는 회로(circuit) 등의 용어와 바꾸어 사용(interchangeably use)될 수 있다. "모듈"은, 일체로 구성된 부품의 최소 단위 또는 그 일부가 될 수 있다. "모듈"은 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수도 있다. "모듈"은 기계적으로 또는 전자적으로 구현될 수 있다. 예를 들면, 본 발명에 따른 "모듈"은, 알려졌거나 앞으로 개발될, 어떤 동작들을 수행하는 ASIC(application-specific integrated circuit) 칩, FPGAs(field-programmable gate arrays) 또는 프로그램 가능 논리 장치(programmable-logic device) 중 적어도 하나를 포함할 수 있다.
도 3은 본 발명의 일 실시예에 따른 프로그래밍 모듈 300의 블록도를 도시한다.
프로그래밍 모듈 300은 도 1에 도시된 전자 장치 100(예: 메모리 130)에 포함(예: 저장)되거나 도 2에 도시한 전자장치 200(예 : 메모리 220)에 포함(예: 저장)될 수 있다. 프로그래밍 모듈 300의 적어도 일부는 소프트웨어, 펌웨어, 하드웨어 또는 이들 중 적어도 둘 이상의 조합으로 구성될 수 있다. 프로그래밍 모듈 300은 하드웨어(예: 하드웨어 200)에 구현되어 전자 장치(예: 전자 장치 100)에 관련된 자원을 제어하는 운영체제(OS: operation system) 또는 운영체제 상에서 구동되는 다양한 어플리케이션(예: 어플리케이션 370)을 포함할 수 있다. 예를 들면, 운영체제는 안드로이드(Android), iOS, 윈도우즈(Windows), 심비안(Symbian), 타이젠(Tizen) 또는 바다(Bada) 등이 될 수 있다. 도 3을 참조하면, 프로그래밍 모듈 300은 커널 310, 미들웨어 330, API(application programming interface) 360 또는 어플리케이션 370을 포함할 수 있다.
커널 310(예: 커널 131)은 시스템 리소스 매니저 311 또는 디바이스 드라이버 312를 포함할 수 있다. 시스템 리소스 매니저 311은, 예를 들면, 프로세스관리부(미도시), 메모리관리부(미도시) 또는 파일시스템관리부(미도시) 등을 포함할 수 있다. 시스템 리소스 매니저 311은 시스템 리소스의 제어, 할당 또는 회수 등을 수행할 수 있다. 디바이스 드라이버 312는, 예를 들면, 디스플레이 드라이버(미도시), 카메라 드라이버(미도시), 블루투스 드라이버(미도시), 공유 메모리 드라이버(미도시), USB 드라이버(미도시), 키패드 드라이버(미도시), WiFi 드라이버(미도시) 또는 오디오 드라이버(미도시)를 포함할 수 있다. 또한, 한 실시예에 따르면, 디바이스 드라이버 312는 IPC(inter-process communication, 미도시) 드라이버를 포함할 수 있다.
미들웨어 330은 어플리케이션 370이 공통적으로 필요로 하는 기능을 제공하기 위해 미리 구현해 놓은 복수의 모듈들을 포함할 수 있다. 또한, 미들웨어 330은 어플리케이션 370이 전자 장치 내부의 제한된 시스템 자원을 효율적으로 사용할 수 있도록 API 360을 통해 기능을 제공할 수 있다. 예를 들면, 도 3에 도시된 바와 같이, 미들웨어 330(예: 미들웨어 132)은 런타임 라이브러리 335, 어플리케이션 매니저(application manager) 341, 윈도우 매니저(window manager) 342, 멀티미디어 매니저(multimedia manager) 343, 리소스 매니저(resource manager) 344, 파워 매니저(power manager) 345, 데이터베이스 매니저(database manager) 346, 패키지 매니저 347, 연결 매니저(connectivity manager) 348, 통지 매니저(notification manager) 349, 위치 매니저(location manager) 350, 그래픽 매니저(graphic manager) 351 또는 보안 매니저(security manager) 352 중 적어도 하나를 포함할 수 있다.
런타임 라이브러리 335는, 예를 들면, 어플리케이션 370이 실행되는 동안에 프로그래밍 언어를 통해 새로운 기능을 추가하기 위해 컴파일러가 사용하는 라이브러리 모듈을 포함할 수 있다. 한 실시예에 따르면, 런타임 라이브러리 335는 입출력, 메모리 관리 또는 산술 함수에 대한 기능 등을 수행할 수 있다.
어플리케이션 매니저 341은, 예를 들면, 어플리케이션 370 중 적어도 하나의 어플리케이션의 생명주기(life cycle)를 관리할 수 있다. 윈도우 매니저 342는 화면에서 사용하는 GUI 자원을 관리할 수 있다. 멀티미디어 매니저 343은 다양한 미디어 파일들의 재생에 필요한 포맷을 파악하고, 해당 포맷에 맞는 코덱(codec)을 이용하여 미디어 파일의 인코딩(encoding) 또는 디코딩(decoding)을 수행할 수 있다. 리소스 매니저 344는 어플리케이션 370 중 적어도 어느 하나의 어플리케이션의 소스 코드, 메모리 또는 저장 공간 등의 자원을 관리할 수 있다.
파워 매니저 345는 바이오스(BIOS: basic input/output system) 등과 함께 동작하여 배터리(battery) 또는 전원을 관리하고, 동작에 필요한 전력 정보 등을 제공할 수 있다. 데이터베이스 매니저 346은 어플리케이션 370 중 적어도 하나의 어플리케이션에서 사용할 데이터베이스를 생성, 검색 또는 변경할 수 있도록 관리할 수 있다. 패키지 매니저 347은 패키지 파일의 형태로 배포되는 어플리케이션의 설치 또는 업데이트를 관리할 수 있다.
연결 매니저 348은, 예를 들면, WiFi 또는 블루투스 등의 무선 연결을 관리할 수 있다. 통지 매니저 349는 도착 메시지, 약속, 근접성 알림 등의 사건(event)을 사용자에게 방해되지 않는 방식으로 표시 또는 통지할 수 있다. 위치 매니저 350은 전자 장치의 위치 정보를 관리할 수 있다. 그래픽 매니저 351은 사용자에게 제공될 그래픽 효과 또는 이와 관련된 사용자 인터페이스를 관리할 수 있다. 보안 매니저 352는 시스템 보안 또는 사용자 인증 등에 필요한 제반 보안 기능을 제공할 수 있다. 한 실시예에 따르면, 전자 장치(예: 전자 장치 100)가 전화 기능을 구비한 경우에는, 미들웨어 330은 전자 장치의 음성 또는 영상 통화 기능을 관리하기 위한 통화 매니저(telephony manager, 미도시)를 더 포함할 수 있다.
미들웨어 330은 전술한 내부 구성요소 모듈들의 다양한 기능 조합을 통해 새로운 미들웨어 모듈을 생성하여 사용할 수 있다. 미들웨어 330은 차별화된 기능을 제공하기 위해 운영체제의 종류별로 특화된 모듈을 제공할 수 있다. 또한, 미들웨어 330은 동적으로 기존의 구성요소를 일부 삭제하거나 새로운 구성요소들을 추가할 수 있다. 따라서, 본 발명의 실시예에 기재된 구성요소를 일부 생략하거나 다른 구성요소를 더 구비하거나 또는 유사한 기능을 수행하는 다른 명칭을 갖는 구성요소로 대체할 수 있다.
API 360(예: API 133)은 API 프로그래밍 함수들의 집합으로, 운영체제에 따라 다른 구성으로 제공될 수 있다. 예를 들면, 안드로이드 또는 iOS의 경우, 예를 들면, 플랫폼별로 하나의 API 셋을 제공할 수 있으며, 타이젠(Tizen)의 경우, 예를 들면, 두 개 이상의 API 셋을 제공할 수 있다.
어플리케이션 370(예: 어플리케이션 134)은, 예를 들면, 프리로드 어플리케이션(preloaded Application) 또는 제 삼자 어플리케이션(third party application)을 포함할 수 있다.
프로그래밍 모듈 300의 적어도 일부는 컴퓨터로 읽을 수 있는 저장매체(computer-readable storage media)에 저장된 명령어로 구현될 수 있다. 명령어는, 하나 이상의 프로세서(예: 프로세서 210)에 의해 실행될 경우, 하나 이상의 프로세서가 명령어에 해당하는 기능을 수행할 수 있다. 컴퓨터로 읽을 수 있는 저장매체는, 예를 들면, 메모리 260이 될 수 있다. 프로그래밍 모듈 300의 적어도 일부는, 예를 들면, 프로세서 210에 의해 구현(implement)(예: 실행)될 수 있다. 프로그래밍 모듈 300의 적어도 일부는 하나 이상의 기능을 수행하기 위한, 예를 들면, 모듈, 프로그램, 루틴, 명령어 세트 (sets of instructions) 및/또는 프로세스 등을 포함할 수 있다.
본 발명에 따른 프로그래밍 모듈(예: 프로그래밍 모듈 300)의 구성요소들의 명칭은 운영체제의 종류에 따라서 달라질 수 있다. 본 발명에 따른 프로그래밍 모듈은 전술한 구성요소들 중 적어도 하나 이상을 포함하거나, 일부가 생략되거나, 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 본 발명에 따른 프로그래밍 모듈 또는 다른 구성요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱(heuristic)한 방법으로 처리될 수 있으며, 또한 일부 동작이 생략되거나, 다른 동작이 추가될 수 있다.
또한 이하의 설명에서는 설명의 편의를 위해 전자장치에 외장형 마이크가 연결되는 경우를 예로써 설명하지만, 외장형 마이크 뿐 아니라 내장형 마이크 또는 전자장치에 내장 형식으로 탑재될 수 있는 형태의 마이크를 포함할 수 있다. 또한 이하의 설명에서는 설명의 편의를 위해 음향 신호로부터 획득한 이득 평균값이 보상되는 경우를 예로써 설명할 것이다. 하지만, 이득 평균 뿐 아니라 음의 왜곡 현상을 포함한 다양한 형태의 파라미터들을 가질 수 있다. 예컨대, 주파수의 왜곡, 이득의 왜곡 또는/및 시간 지연의 왜곡 등에 대한 파라미터들을 포함할 수 있다.
도 4는 본 발명의 일 실시예에 따라 개발자가 전자장치를 개발할 시 외장형 마이크로부터 획득되는 오디오 신호의 감도에 따른 처리를 위한 제어 흐름도이다.
도 4를 설명함에 있어, 도 2의 블록 구성을 이용하여 설명하기로 한다. 하지만, 도 2의 블록 구성도는 본 발명의 일 실시예에 따른 구성이므로, 도 2에 도시한 모든 구성을 갖지 않을 수도 있고, 다른 구성을 더 가질 수도 있으며, 일부 구성은 포함하고 다른 일부 구성은 도 2에 도시하지 않은 또 다른 형태의 구성들로 대체될 수 있음은 이 분야의 통상의 지식을 가진 자에게 자명한 일이다. 또한 본 발명에 따른 전자장치는 하나의 외장형 마이크를 이용하는 경우 뿐 아니라 다수(멀티) 외장형 마이크를 갖는 경우에도 동일하게 적용할 수 있다. 뿐만 아니라 외장형 마이크는 일반적으로 사용되는 3.5파이 잭이나 USB 방식 등 어떠한 연결 방식을 사용하더라도 본 발명이 동일하게 적용될 수 있다.
프로세서 210은 400단계에서 개발자가 설정한 또는 개발자가 사용자 입력 모듈 또는 인터페이스 270을 통해 입력한 값에 대응하여 스피커 282의 출력 값 및 기준 마이크의 이득 값을 설정할 수 있다. 스피커 282의 출력 값은 전자장치의 기본(default) 출력 값일 수 있으며, 기준 마이크의 이득 값은 전자장치의 기본(default) 이득 값일 수 있다.
이후 프로세서 210은 402단계에서 메모리 220에 저장된 또는 인터페이스 270로부터 입력된 기준 음원(reference audio)을 읽어와 400단계에서 설정된 스피커 출력 값으로 출력하도록 제어할 수 있다. 이에 따라 오디오 코덱 280은 디지털 데이터를 아날로그 신호로 변환하여 스피커 282로 제공할 수 있다. 그러면 스피커 282는 400단계에서 설정된 스피커 282의 출력 값 예컨대, 볼륨 값으로 출력할 수 있다.
이처럼 스피커 282에서 출력된 오디오 신호는 기준 마이크(미도시)에서 아날로그 신호로 획득할 수 있다. 여기서 기준 마이크는 이어폰 연결부 286에 연결된 마이크일 수도 있고, 인터페이스 270의 USB 단자에 연결된 마이크일 수도 있다. 이하의 설명에서는 설명의 편의를 위해 기준 마이크를 외부에 연결되는 외부 마이크로 가정하며, 이어폰 연결부 286에 연결된 외부 마이크로 가정하여 설명하기로 한다. 또한 이어폰 연결부 286에 연결된 외부 마이크는 일반적으로 널리 사용되는 3.5파이 잭에 연결된 것으로 가정한다.
이어폰 연결부 286에 연결된 기준 마이크에서 획득된 아날로그 신호는 오디오 코덱 280에서 디지털 신호로 변환되어 프로세서 210으로 제공된다. 따라서 프로세서 210은 404단계에서 기준 마이크에서 획득한 신호에서 평균 실효값(root mean square, RMS)을 계산할 수 있다. 기준 마이크에서 획득한 신호는 오디오 코덱 280에서 디지털 신호로 변환된 값이므로, 프로세서 210은 디지털 신호로부터 평균 실효값을 계산할 수 있다.
프로세서 210은 406단계에서 계산된 평균 실효값을 단계별로 메모리 220에 저장할 수 있다. 여기서 단계별로 평균 실효값을 저장한다는 것은, 미리 설정된 거리 단위로 평균 실효값이 저장되는 경우가 될 수 있다. 가령, 이어폰 연결부 282로부터 이격된 거리가 될 수 있으며, 1cm, 2cm, 3cm, 5cm, 10cm, 15cm 등의 거리가 될 수 있다. 따라서 도 4의 제어 동작은 각 거리별로 여러 번 수행될 수 있다.
도 5는 본 발명의 다른 실시예에 따라 개발자가 전자장치를 개발할 시 외장형 마이크로부터 획득되는 오디오 신호의 감도에 따른 처리를 위한 제어 흐름도이다.
도 5를 설명함에 있어도, 도 2의 블록 구성을 이용하여 설명하기로 한다. 하지만, 도 2의 블록 구성도는 본 발명의 일 실시예에 따른 구성이므로, 도 2에 도시한 모든 구성을 갖지 않을 수도 있고, 다른 구성을 더 가질 수도 있으며, 일부 구성은 포함하고 다른 일부 구성은 도 2에 도시하지 않은 또 다른 형태의 구성들로 대체될 수 있음은 이 분야의 통상의 지식을 가진 자에게 자명한 일이다. 또한 본 발명에 따른 전자장치는 하나의 외장형 마이크를 이용하는 경우 뿐 아니라 다수(멀티) 외장형 마이크를 갖는 경우에도 동일하게 적용할 수 있다. 뿐만 아니라 외장형 마이크는 일반적으로 사용되는 3.5파이 잭이나 USB 방식 등 어떠한 연결 방식을 사용하더라도 본 발명이 동일하게 적용될 수 있다. 또한 도 2에 도시한 마이크 288은 내장 마이크로 가정하여 설명하기로 한다.
프로세서 210은 500단계에서 개발자가 설정한 또는 개발자가 사용자 입력 모듈 또는 인터페이스 270을 통해 입력한 값에 대응하여 스피커 282의 출력 값과 기준 마이크의 이득 값 및 내장 마이크 288의 이득 값을 설정할 수 있다. 스피커 282의 출력 값은 전자장치의 기본(default) 출력 값일 수 있으며, 기준 마이크의 이득 값과 내장 마이크 288의 이득 값은 전자장치의 기본(default) 이득 값일 수 있다.
이후 프로세서 210은 502단계에서 메모리 220에 저장된 또는 인터페이스 270로부터 입력된 기준 음원(reference audio)을 읽어와 500단계에서 설정된 스피커 출력 값으로 출력하도록 제어할 수 있다. 이에 따라 오디오 코덱 280은 디지털 데이터를 아날로그 신호로 변환하여 스피커 282로 제공할 수 있다. 그러면 스피커 282는 400단계에서 설정된 스피커 282의 출력 값 예컨대, 볼륨 값으로 출력할 수 있다.
이처럼 스피커 282에서 출력된 오디오 신호는 기준 마이크(미도시)에서 아날로그 신호로 획득할 수 있다. 여기서 기준 마이크는 이어폰 연결부 286에 연결된 마이크일 수도 있고, 인터페이스 270의 USB 단자에 연결된 마이크일 수도 있다. 이하의 설명에서는 설명의 편의를 위해 기준 마이크를 외부에 연결되는 외부 마이크로 가정하며, 이어폰 연결부 286에 연결된 외부 마이크로 가정하여 설명하기로 한다. 또한 이어폰 연결부 286에 연결된 외부 마이크는 일반적으로 널리 사용되는 3.5파이 잭에 연결된 것으로 가정한다.
이어폰 연결부 286에 연결된 기준 마이크에서 획득된 아날로그 신호는 오디오 코덱 280에서 디지털 신호로 변환되어 프로세서 210으로 제공할 수 있다. 또한 내장 마이크 288로부터 획득된 아날로그 신호 또한 오디오 코덱 280에서 디지털 신호로 변환되어 프로세서로 제공될 수 있다. 따라서 프로세서 210은 504단계에서 기준 마이크에서 획득한 신호에서 평균 실효값(root mean square, RMS)을 계산할 수 있으며, 내장 마이크 288에서 획득한 신호에서 평균 실효값(root mean square, RMS)을 계산할 수 있다. 기준 마이크 및 내장 마이크 288에서 획득한 각각의 신호는 오디오 코덱 280에서 각각 디지털 신호로 변환된 값이므로, 프로세서 210은 각각의 디지털 신호로부터 평균 실효값을 계산할 수 있다.
프로세서 210은 506단계에서 계산된 평균 실효값들을 단계별로 메모리 220에 저장할 수 있다. 여기서 단계별로 평균 실효값을 저장한다는 것은, 미리 설정된 거리 단위로 평균 실효값이 저장되는 경우가 될 수 있다. 가령, 이어폰 연결부 282로부터 이격된 거리가 될 수 있으며, 1cm, 2cm, 3cm, 5cm, 10cm, 15cm 등의 거리가 될 수 있다. 하지만, 내장 마이크 288의 경우 모두 동일한 거리 값을 가지므로, 하나의 평균 실효값만 저장될 수 있다. 따라서 도 5의 제어 동작은 각 거리별로 여러 번 수행될 수 있으며, 다른 거리에 따라 두 번째 이상 외장 마이크의 평균 실효값을 계산할 때에는 내장 마이크의 평균 실효값에 대한 계산은 수행하지 않을 수도 있다.
도 6은 본 발명에 실시예에 따른 전자장치에서 외장형 마이크로부터 획득되는 오디오 신호의 감도에 따른 이득 조절 시의 일 실시예에 따른 제어 흐름도이다.
도 6을 설명함에 있어도, 도 2의 블록 구성을 이용하여 설명하기로 한다. 하지만, 도 2의 블록 구성도는 본 발명의 일 실시예에 따른 구성이므로, 도 2에 도시한 모든 구성을 갖지 않을 수도 있고, 다른 구성을 더 가질 수도 있으며, 일부 구성은 포함하고 다른 일부 구성은 도 2에 도시하지 않은 또 다른 형태의 구성들로 대체될 수 있음은 이 분야의 통상의 지식을 가진 자에게 자명한 일이다. 또한 본 발명에 따른 전자장치는 하나의 외장형 마이크를 이용하는 경우 뿐 아니라 다수(멀티) 외장형 마이크를 갖는 경우에도 동일하게 적용할 수 있다. 뿐만 아니라 외장형 마이크는 일반적으로 사용되는 3.5파이 잭이나 USB 방식 등 어떠한 연결 방식을 사용하더라도 본 발명이 동일하게 적용될 수 있다. 또한 도 2에 도시한 마이크 288은 내장 마이크로 가정하여 설명하기로 한다.
프로세서 210은 마이크 이득 조절 모드로 진행하면 600단계에서 스피커의 출력 값 및 기준 마이크의 이득 값을 설정한다. 여기서 마이크의 이득 조절 모드로의 진행은 사용자가 녹음, 통화 또는/및 녹화 등의 음성 처리가 필요한 응용 프로그램이 구동될 시 자동으로 구동되도록 미리 설정할 수 있다. 이와 달리 마이크 이득 조절 모드로의 진행은 사용자가 녹음, 통화 또는/및 녹화 등의 음성 처리가 필요한 응용 프로그램이 구동될 때마다 사용자에게 문의하여 구동될 수도 있다. 또 다른 방법으로 마이크 이득 조절 모드로의 진행은 사용자가 해당하는 응용 프로그램 구동 전에 매번 설정하도록 구성할 수 있다. 또한 이때, 사용자가 녹음, 통화 또는/및 녹화 등에 사용할 기준 마이크의 크기, 전자장치와 기준 마이크의 이격 거리 등의 정보를 미리 설정할 수도 있다.
또한 600단계에서 스피커의 출력 값은 전자장치의 기본(default) 스피커 출력 값일 수 있으며, 기준 마이크의 이득 값은 전자장치의 기본(default) 이득 값일 수 있다.
이후 프로세서 210은 602단계에서 메모리 220에 저장된 기준 음원(reference audio)을 읽어와 600단계에서 설정된 스피커 출력 값으로 출력하도록 제어한다. 이에 따라 오디오 코덱 280은 디지털 데이터로 제공된 기준 음원을 아날로그 신호로 변환하여 스피커 282로 제공한다. 그러면 스피커 282는 600단계에서 설정된 스피커 282의 출력 값 예컨대, 볼륨 값으로 출력할 수 있다.
이처럼 스피커 282에서 출력된 오디오 신호는 기준 마이크(미도시)에서 아날로그 신호로 획득할 수 있다. 여기서 기준 마이크는 이어폰 연결부 286에 연결된 마이크일 수도 있고, 인터페이스 270의 USB 단자에 연결된 마이크일 수도 있다. 이하의 설명에서는 설명의 편의를 위해 기준 마이크를 이어폰 연결부 286에 연결된 외부 마이크로 가정하여 설명하기로 한다. 또한 이어폰 연결부 286에 연결된 외부 마이크는 일반적으로 널리 사용되는 3.5파이 잭에 연결된 것으로 가정한다.
이어폰 연결부 286에 연결된 기준 마이크에서 획득된 아날로그 신호는 오디오 코덱 280에서 디지털 신호로 변환되어 프로세서 210으로 제공될 수 있다. 이에 따라 프로세서 210은 604단계에서 기준 마이크에서 획득한 신호에서 평균 실효값(root mean square, RMS)을 계산할 수 있다. 기준 마이크에서 획득한 신호는 오디오 코덱 280에서 각각 디지털 신호로 변환된 값이므로, 프로세서 210은 각각의 디지털 신호로부터 평균 실효값을 계산할 수 있다.
프로세서 210은 606단계에서 메모리 220에 저장된 평균 실효값을 읽어와 메모리 220으로부터 읽어온 평균 실효값과 604단계에서 계산한 평균 실효값의 차를 계산할 수 있다. 이때, 만일 저장된 평균 실효값이 거리별 즉, 단계별로 저장된 경우 프로세서 210은 단계별로 저장된 평균 실효값을 읽어오며, 604단계에서 획득한 기준 마이크의 평균 실효값은 특정한 거리에 대응한 평균 실효값이 될 수 있다. 예컨대, 메모리 220으로부터 읽어온 데이터는 이어폰 연결부 282로부터 기준 마이크의 이격 거리별로 저장된 평균 실효값일 수 있다. 예를 들어, 연결부 282로부터 기준 마이크의 이격 거리는 1cm, 2cm, 3cm, 5cm, 10cm, 15cm 등이 될 수 있으며, 메모리 220에 저장된 실효값은 각각의 거리에 대응하여 저장된 평균 실효값일 수 있다. 이러한 경우 마이크 이득 조절 모드로 진행 전에 기준 마이크의 이격 거리가 미리 설정되어야 한다. 이때, 설정될 수 있는 거리 값들은 메모리 220에 저장된 거리 값들 중 하나가 될 수 있다. 따라서 거리에 따라 차등적인 평균 실효값을 갖는 경우 프로세서 210은 606단계에서 동일한 거리에 대응한 실효값들(메모리로부터 읽어온 실효값과 604단계에서 획득한 실효값)간 차이를 계산하게 할 수 있다.
반면에 거리에 따라 차등적인 평균 실효값을 갖지 않는 경우 프로세서 210은 606단계에서 메모리 220으로부터 읽어온 평균 실효값과 604단계에서 계산된 평균 실효값간의 차이를 계산할 수 있다.
프로세서 210은 608단계로 진행하면, 606단계에서 계산된 차이만큼 기준 마이크의 이득을 조절할 수 있다. 가령, 메모리 220에 저장된 평균 실효값보다 기준 마이크로부터 획득된 평균 실효값이 큰 경우 메모리 220에 저장된 평균 실효값이 되도록 기준 마이크의 이득을 낮추며, 반대로 메모리 220에 저장된 평균 실효값보다 기준 마이크로부터 획득된 평균 실효값이 작은 경우 메모리 220에 저장된 평균 실효값이 되도록 기준 마이크의 이득을 높일 수 있다. 이때 조정되는 이득(Gain)은 하기 <수학식 1>과 같이 계산될 수 있다.
Figure 112014017077483-pat00001
<수학식 1>에서 기준 마이크 폰 이득(y = Reference Microphone gain)은 메모리 220에 미리 저장된 이득일 수 있으며, 앞서 설명한 도 4 및 도 5의 제어 흐름도를 통해 획득한 값일 수 있다. 또한 <수학식 1>에서 외부 마이크폰 이득(x = External Microphone gain)은 604단계에서 획득한 평균 실효값일 수 있다.
또한 <수학식 1>의 값들은 앞서 설명한 바와 같이 전자장치로부터 기준 마이크의 이격 거리에 따라서 달라질 수도 있으나, 동일한 거리에 대한 평균 실효값을 이용하여 <수학식 1>을 그대로 적용할 수 있다.
이처럼 조정된 이득 값은 메모리 220에 저장될 수 있으며, 이후 녹음, 통화 또는/및 녹화 등이 이루어질 때, 외부 마이크의 이득을 조정하기 위한 값으로 사용될 수 있다.
또한 프로세스 210은 608단계를 수행한 후 610단계로 진행하여 추가 마이크 설정이 필요한가를 검사할 수 있다. 이처럼 추가 마이크 설정이 필요한가의 검사는 사용자의 요구에 의해 예컨대, 사용자 입력 모듈 250으로부터 추가 마이크 설정이 필요함을 알리는 신호가 입력되는가를 검사하여 확인할 수도 있다. 다른 예로, 프로세서 210에서 추가적인 외부 마이크가 연결되었는가를 검출함으로써 확인할 수도 있다. 가령, 3.5파이 잭에 또 다른 외부 마이크가 연결되거나 또는 USB 274에 외부 마이크가 연결된 경우 프로세서 210은 연결을 하드웨어적으로 검출할 수 있다. 이러한 경우 610단계는 추가 마이크가 연결되었는가를 판단함으로써 검사할 수도 있다.
도 7은 본 발명에 따른 전자장치에서 외장형 마이크로부터 획득되는 오디오 신호의 감도에 따른 이득 조절 시의 다른 실시예에 따른 제어 흐름도이다.
도 7을 설명함에 있어도, 도 2의 블록 구성을 이용하여 설명하기로 하며, 앞서 설명한 가정들을 그대로 채용하기로 한다. 또한 도 7이 수행되는 경우는 여러 가지 경우가 될 수 있다. 첫째 외장형 마이크로 음원의 녹음이 이루어지기 전, 둘째 통화가 이루어지기 전, 셋째 녹화 시 외장형 마이크로 음원의 녹음이 이루어지기 전, 넷째 외장형 마이크로 녹음, 녹화, 통화 시 미리 설정된 평균 실효값으로부터 허용 범위보다 낮은 평균 실효값을 갖거나 또는 미리 설정된 평균 실효값으로부터 허용 범위를 초과하는 평균 실효값을 갖는 경우일 수 있다. 또한 넷째 경우는 자동으로 이루어질 수 있다. 다른 실시예에 따르면, 넷째 경우는 디스플레이 모듈 260에 팝업 창 또는 상태 표시줄 등에 알람을 제공하여 사용자가 선택하도록 할 수도 있다. 이상에서 설명한 이러한 경우들은 앞서 설명한 도 5 및 도 6의 경우에도 동일하게 적용될 수 있다.
프로세서 210은 마이크 이득 조절 모드로 진행하면 700단계에서 스피커의 출력 값 및 기준 마이크의 이득 값을 설정한다. 여기서 마이크의 이득 조절 모드로의 진행은 사용자가 녹음, 통화 또는/및 녹화 등의 음성 처리가 필요한 응용 프로그램이 구동될 시 자동으로 구동되도록 미리 설정할 수 있다. 이와 달리 마이크 이득 조절 모드로의 진행은 사용자가 녹음, 통화 또는/및 녹화 등의 음성 처리가 필요한 응용 프로그램이 구동될 때마다 사용자에게 문의하여 구동될 수도 있다. 또 다른 방법으로 마이크 이득 조절 모드로의 진행은 사용자가 해당하는 응용 프로그램 구동 전에 매번 설정하도록 구성할 수 있다. 또한 이때, 사용자가 녹음, 통화 또는/및 녹화 등에 사용할 기준 마이크의 크기, 전자장치와 기준 마이크의 이격 거리 등의 정보를 미리 설정할 수도 있다.
또한 700단계에서 스피커의 출력 값은 전자장치의 기본(default) 스피커 출력 값일 수 있으며, 기준 마이크의 이득 값은 전자장치의 기본(default) 이득 값일 수 있다.
이후 프로세서 210은 702단계에서 메모리 220에 저장된 기준 음원(reference audio)을 읽어와 600단계에서 설정된 스피커 출력 값으로 출력하도록 제어할 수 있다. 이에 따라 오디오 코덱 280은 디지털 데이터로 제공된 기준 음원을 아날로그 신호로 변환하여 스피커 282로 제공할 수 있다. 그러면 스피커 282는 600단계에서 설정된 스피커 282의 출력 값 예컨대, 볼륨 값으로 출력할 수 있다.
이처럼 스피커 282에서 출력된 오디오 신호는 기준 마이크(미도시)에서 아날로그 신호로 획득할 수 있다. 이어폰 연결부 286에 연결된 기준 마이크에서 획득된 아날로그 신호는 오디오 코덱 280에서 디지털 신호로 변환되어 프로세서 210으로 제공될 수 있다. 이에 따라 프로세서 210은 704단계에서 기준 마이크에서 획득한 신호에서 평균 실효값(root mean square, RMS)을 계산할 수 있다. 기준 마이크에서 획득한 신호는 오디오 코덱 280에서 각각 디지털 신호로 변환된 값이므로, 프로세서 210은 각각의 디지털 신호로부터 평균 실효값을 계산할 수 있다.
이후 프로세서 210은 706단계에서 주변 잡음 교정이 필요한가를 검사할 수 있다. 706단계의 검사결과 주변 잡음 교정이 필요한 경우 프로세서 210은 708단계로 진행하고, 주변 잡음의 교정이 필요하지 않은 경우 716단계로 진행할 수 있다.
먼저 주변 잡음의 교정이 필요하여 708단계로 진행하는 경우를 살펴보기로 한다. 프로세서 210은 708단계로 진행하면, 내장 마이크 288을 이용하여 주변 잡음을 전기적 신호로 획득하도록 제어할 수 있다. 내장 마이크 288은 이처럼 획득된 전기적 신호를 오디오 코덱 280으로 제공할 수 있다. 그러면 오디오 코덱 280은 주변 잡음에 대한 전기적 신호를 디지털 신호로 변환하여 프로세서 210으로 제공할 수 있다. 이에 따라 프로세서 210은 708단계에서 내장 마이크 288에서 획득한 주변 잡음을 디지털 신호로 수신할 수 있고, 주변 잡음에 대한 디지털 신호로부터 평균 실효값을 계산할 수 있다.
주변 잡음에 대한 디지털 신호로부터 평균 실효값을 계산한 후 프로세서 210은 710단계에서 메모리 220에 저장된 내장 마이크 288의 평균 실효값을 읽어올 수 있다. 이후 프로세서 210은 712단계에서 메모리 220에 저장된 평균 실효값과 708단계에서 계산된 내장 마이크 288의 평균 실효값의 차이를 계산할 수 있다. 여기서 메모리 220에 저장된 내장 마이크 288의 평균 실효값은 일반적으로 무잡음 형태로 획득한 평균 실효값이 될 수 있다. 예컨대, 메모리 220에 저장된 내장 마이크 288의 평균 실효값은 잡음이 포함된 경우를 고려하지 않은 값이 될 수 있다. 그러므로 프로세서 210은 714단계로 진행하면, 712단계에서 계산된 차이 값을 기준 마이크의 평균 실효값에 가산할 수 있다. 기준 마이크로부터 획득한 신호의 평균 실효값을 이는 708단계에서 획득한 내장 마이크 288에서 획득한 평균 실효값과 메모리에 저장된 값의 차이만큼을 보상되도록 하는 것이다.
예를 들어, 잡음을 고려하는 경우 내장 마이크 288로부터 획득한 주변 잡음의 평균 실효값은 메모리 220에 저장된 무잡음인 경우에 획득한 평균 실효값과 차이를 가질 수 있다. 따라서 이러한 차이 값을 기준 마이크에서 획득한 평균 실효값에 가산함으로써 잡음에 대한 손실을 보상할 수 있다.
이후 프로세서 210은 716단계로 진행한다. 716단계로 진행하는 경우는 2가지 경우가 될 수 있다. 첫째로, 주변 잡음 교정을 하지 않는 경우이고, 둘째로 주변 잡음 교정을 완료한 경우가 될 수 있다.
주변 잡음을 교정하지 않는 경우 프로세서 210은 706단계에서 716단계로 진행할 수 있다. 이러한 경우 프로세서 210은 716단계에서 메모리 220에 저장된 평균 실효값을 읽어오며, 메모리 220으로부터 읽어온 평균 실효값과 704단계에서 계산한 평균 실효값의 차를 계산할 수 있다. 이때, 만일 저장된 평균 실효값이 거리별 즉, 단계별로 저장된 경우 프로세서 210은 단계별로 저장된 평균 실효값을 읽어오며, 704단계에서 획득한 기준 마이크의 평균 실효값은 특정한 거리에 대응한 평균 실효값이 될 수 있다. 예컨대, 메모리 220으로부터 읽어온 데이터는 이어폰 연결부 282로부터 기준 마이크의 이격 거리별로 저장된 평균 실효값일 수 있다. 예를 들어, 연결부 282로부터 기준 마이크의 이격 거리는 1cm, 2cm, 3cm, 5cm, 10cm, 15cm 등이 될 수 있으며, 메모리 220에 저장된 실효값은 각각의 거리에 대응하여 저장된 평균 실효값일 수 있다.
이러한 경우 마이크 이득 조절 모드로 진행 전에 기준 마이크의 이격 거리가 미리 설정되어야 한다. 이때, 설정될 수 있는 거리 값들은 메모리 220에 저장된 거리 값들 중 하나가 될 수 있다. 따라서 거리에 따라 차등적인 평균 실효값을 갖는 경우 프로세서 210은 706단계에서 동일한 거리에 대응한 실효값들(메모리로부터 읽어온 실효값과 704단계에서 획득한 실효값)간 차이를 계산하게 될 수 있다.
반면에 거리에 따라 차등적인 평균 실효값을 갖지 않는 경우 프로세서 210은 606단계에서 메모리 220으로부터 읽어온 평균 실효값과 704단계에서 계산된 평균 실효값간의 차이를 계산할 수 있다.
둘째, 주변 잡음을 고려한 경우 즉, 714단계에서 716단계로 진행하는 경우 프로세서 210은 메모리 220에 저장된 평균 실효값을 읽어오며, 메모리 220으로부터 읽어온 평균 실효값과 714단계에서 차이 값이 더해진 평균 실효값과의 차를 계산할 수 있다. 이를 좀 더 상술하면, 704단계에서 획득한 값을 평균 실효값을 A1이라 하고, 메모리에 저장된 내장 마이크의 평균 실효값을 B1이라 하자. 그러면 두 값의 차이는 "A1-B1"이 될 수 있으며, 이를 C1이라 가정하자. 이에 따라 714단계에서 출력되는 값은 "A1 + C1"의 값이 될 수 있다. 이때, 기준 마이크에 대응하여 저장된 평균 실효값을 D1이라 할 때, 두 번째 경우 716단계에서 계산은 "D1 - A1 -C1"으로 계산될 수 있다.
또한 716단계의 두 번째 경우에 대한 계산에서도 앞서 설명한 바와 같이 단계별 예컨대, 거리별로 계산이 이루어질 수 있다. 만일 저장된 평균 실효값이 거리별 즉, 단계별로 저장된 경우 프로세서 210은 단계별로 저장된 평균 실효값을 읽어오며, 704단계에서 획득한 기준 마이크의 평균 실효값은 특정한 거리에 대응한 평균 실효값이 될 수 있다.
예컨대, 메모리 220으로부터 읽어온 데이터는 이어폰 연결부 282로부터 기준 마이크의 이격 거리별로 저장된 평균 실효값일 수 있다. 예를 들어, 연결부 282로부터 기준 마이크의 이격 거리는 1cm, 2cm, 3cm, 5cm, 10cm, 15cm 등이 될 수 있으며, 메모리 220에 저장된 실효값은 각각의 거리에 대응하여 저장된 평균 실효값일 수 있다. 이러한 경우 마이크 이득 조절 모드로 진행 전에 기준 마이크의 이격 거리가 미리 설정될 수 있다. 이때, 설정될 수 있는 거리 값들은 메모리 220에 저장된 거리 값들 중 하나가 될 수 있다. 따라서 거리에 따라 차등적인 평균 실효값을 갖는 경우 프로세서 210은 714단계에서 동일한 거리에 대응한 실효값들(메모리로부터 읽어온 실효값과 714단계에서 획득한 실효값)간 차이를 계산할 수 있다.
이후 프로세서 210은 718단계로 진행하면, 716단계에서 계산된 차이만큼 기준 마이크의 이득을 조절할 수 있다. 가령, 메모리 220에 저장된 평균 실효값보다 기준 마이크로부터 획득된 평균 실효값이 큰 경우 메모리 220에 저장된 평균 실효값이 되도록 기준 마이크의 이득을 낮출 수 있다. 반대로 메모리 220에 저장된 평균 실효값보다 기준 마이크로부터 획득된 평균 실효값이 작은 경우 메모리 220에 저장된 평균 실효값이 되도록 기준 마이크의 이득을 높일 수 있다. 이때 조정되는 이득(Gain)은 앞서 설명한 <수학식 1>과 같이 계산될 수 있다.
이처럼 조정된 이득 값은 메모리 220에 저장될 수 있으며, 이후 녹음, 통화 또는/및 녹화 등이 이루어질 때, 외부 마이크의 이득을 조정하기 위한 값으로 사용될 수 있다.
또한 프로세스 210은 718단계를 수행한 후 720단계로 진행하여 추가 마이크 설정이 필요한가를 검사할 수 있다. 이처럼 추가 마이크 설정이 필요한가의 검사는 사용자의 요구에 의해 예컨대, 사용자 입력 모듈 250으로부터 추가 마이크 설정이 필요함을 알리는 신호가 입력되는가를 검사하여 확인할 수도 있다. 다른 예로, 프로세서 210에서 추가적인 외부 마이크가 연결되었는가를 검출함으로써 확인할 수도 있다. 가령, 3.5파이 잭에 또 다른 외부 마이크가 연결되거나 또는 USB 274에 외부 마이크가 연결된 경우 프로세서 210은 연결을 하드웨어적으로 검출할 수 있다. 이러한 경우 610단계는 추가 마이크가 연결되었는가를 판단함으로써 검사할 수도 있다.
도 8은 본 발명에 따른 전자장치에서 외장형 마이크로부터 획득되는 오디오 신호의 감도에 따른 이득 조절 시의 또 다른 실시예에 따른 제어 흐름도이다.
도 8을 설명함에 있어도, 도 2의 블록 구성을 이용하여 설명하기로 하며, 앞서 설명한 가정들을 그대로 채용하기로 한다. 또한 도 8이 수행되는 경우는 여러 가지 경우가 될 수 있다. 첫째 외장형 마이크로 음원의 녹음이 이루어지기 전, 둘째 통화가 이루어지기 전, 셋째 녹화 시 외장형 마이크로 음원의 녹음이 이루어지기 전, 넷째 외장형 마이크로 녹음, 녹화, 통화 시 미리 설정된 평균 실효값으로부터 허용 범위보다 낮은 평균 실효값을 갖거나 또는 미리 설정된 평균 실효값으로부터 허용 범위를 초과하는 평균 실효값을 갖는 경우일 수 있다. 또한 넷째 경우는 자동으로 이루어질 수 있다. 다른 실시예에 따르면, 넷째 경우는 디스플레이 모듈 260에 팝업 창 또는 상태 표시줄 등에 알람을 제공하여 사용자가 선택하도록 할 수도 있다.
프로세서 210은 자동 이득 조절 모드로 진행하면 800단계에서 내장 마이크 288의 이득 값을 설정할 수 있다. 여기서 자동 이득 조절 모드로의 진행은 사용자가 녹음, 통화 또는/및 녹화 등의 음성 처리가 필요한 응용 프로그램이 구동될 시 자동으로 구동되도록 미리 설정할 수 있다. 이와 달리 마이크 이득 조절 모드로의 진행은 사용자가 녹음, 통화 또는/및 녹화 등의 음성 처리가 필요한 응용 프로그램이 구동될 때마다 사용자에게 문의하여 구동될 수도 있다. 또 다른 방법으로 마이크 이득 조절 모드로의 진행은 사용자가 해당하는 응용 프로그램 구동 전에 매번 설정하도록 구성할 수 있다. 또한 이때, 사용자가 녹음, 통화 또는/및 녹화 등에 사용할 기준 마이크의 크기, 전자장치와 기준 마이크의 이격 거리 등의 정보를 미리 설정할 수도 있다.
또한 800단계에서 내장 마이크 288의 이득 값은 전자장치의 기본(default) 이득 값일 수 있다. 또한 전자장치의 기본 이득으로 내장 마이크 288의 이득을 설정하는 경우 외장형 마이크의 이득도 기본(default) 이득 값으로 설정할 수도 있다.
이후 프로세서 210은 802단계에서 내장 마이크 288 및 외장형 마이크로부터 각각의 오디오 신호를 수신할 수 있다. 이에 따라 오디오 코덱 280은 내장 마이크 288 및 외장형 마이크로부터 수신된 아날로그 오디오 신호들을 각각 디지털 오디오 신호로 변환하여 프로세서 210으로 제공할 수 있다. 여기서 외장형 마이크는 이어폰 연결부 286에 연결된 마이크일 수도 있고, 인터페이스 270의 USB 단자에 연결된 마이크일 수도 있다. 이하의 설명에서는 설명의 편의를 위해 기준 마이크를 이어폰 연결부 286에 연결된 외부 마이크로 가정하여 설명하기로 한다. 또한 이어폰 연결부 286에 연결된 외부 마이크는 일반적으로 널리 사용되는 3.5파이 잭에 연결된 것으로 가정한다.
프로세서 210은 804단계에서 내장 마이크 288로부터 획득한 신호와 외장형 마이크에서 획득한 신호 각각에 대하여 평균 실효값(root mean square, RMS)을 계산할 수 있다. 이후 프로세서 210은 806단계에서 내장 마이크 288로부터 획득한 신호에 대한 평균 실효값과 외장형 마이크에서 획득한 신호로부터 계산된 평균 실효값간의 차를 계산할 수 있다.
이처럼 802단계에서 내장 마이크 288과 외장형 마이크로부터 획득한 오디오 신호는 앞선 도 7에서 설명한 바와 같은 주변 잡음일 수도 있다. 하지만, 녹음, 통화 또는/및 녹화가 이루어지는 경우에도 사용될 수 있다.
프로세서 210은 이후 808단계에서 계산된 차이만큼 외장형 마이크의 이득을 조절할 수 있다. 이때, 외장형 마이크의 이득 조절은 앞서 설명한 <수학식 1>과 같은 형태로 이득을 조절할 수 있다. <수학식 1>을 적용하는 경우 기준 마이크 이득(y = Reference Microphone gain)은 내장 마이크 288의 이득이 될 수 있으며, 외장 마이크의 이득(x = External Microphone gain)은 외장형 마이크의 이득이 될 수 있다.
이처럼 조정된 이득 값은 메모리 220에 저장될 수 있으며, 녹음, 통화 또는/및 녹화 등이 이루어질 때, 외장형 마이크의 이득을 조정하기 위한 값으로 사용될 수도 있다.
또한 프로세스 210은 810단계에서 자동 이득 조절의 종료가 요구되는가를 검사할 수 있다. 자동 이득 조절의 종료는 사용자의 요구에 의해 자동 이득 조절이 종료되거나 또는 외장형 마이크가 분리되는 경우가 될 수 있다. 이처럼 자동 이득 조절의 종료는 사용자의 요구에 의해 예컨대, 사용자 입력 모듈 250으로부터 자동 이득 조절의 종료가 요구됨을 알리는 신호가 입력되는가를 검사하여 확인할 수도 있다. 다른 예로, 프로세서 210에서 추가적인 외장형 마이크의 연결이 해제되는가를 검출함으로써 확인할 수도 있다. 가령, 3.5파이 잭으로부터 외장형 마이크가 빠지거나 또는 USB 274에 연결된 외장형 마이크가 빠지는 경우 프로세서 210은 연결 해제를 하드웨어적으로 검출할 수 있다. 이러한 경우 810단계에서 자동 이득 조절의 종료로 검출할 수 있다.
100, 102, 104 : 전자 장치 110 : 버스
120 : 프로세서 130 : 메모리
131, 310 : 커널 132, 330 : 미들웨어
133, 360 : 어플리케이션 프로그래밍 인터페이스(API)
134, 370 : 어플리케이션 140 : 사용자 입력 모듈
150 : 디스플레이 모듈 160 : 통신 모듈
162 : 네트워크 164 : 서버
200 : 하드웨어 210 : 프로세서
211 : 어플리케이션 프로세서(AP)
213 : 커뮤니케이션 프로세서(CP)
214 : SIM 카드 220 : 메모리
222 : 내장메모리 224 : 외장메모리
230 : 통신 모듈 231 : 무선 통신 모듈
233 : Wi-Fi 234 : RF 모듈
235 : BT 237 : GPS
239 : NFC 240 : 센서 모듈
240A : 제스쳐 센서 240B : 자이로 센서
240C : 기압 센서 240D : 마그네틱 센서
240E : 가속도 센서 240F : 그립 센서
240G : 근접 센서 240H : RGB 센서
240I : 생체 센서 240J : 온/습도 센서
240K : 조도 센서 240M : UV 센서
250 : 사용자 모듈 252 : 터치 패널
254 : 펜 센서 256 : 키
258 : 울트라 소닉 260 : 디스플레이 모듈
262 : 패널 264 : 홀로그램
270 : 인터페이스 272 : HDMI
274 : USB 276 : 프로젝터
278 : D-SUB 280 : 오디오 코덱
282 : 스피커 284 : 리시버
286 : 이어폰 288 : 마이크
291 : 카메라 모듈 295 : 전력 관리 모듈
296 : 배터리 297 : 인디케이터
298 : 모터 300 : 프로그래밍 모듈
311 : 시스템 리소스 매니저 312 : 디바이스 드라이버
335 : 런타임 라이브러리 341 : 어플리케이션 매니저
342 : 윈도우 매니저 343 : 멀티미디어 매니저
344 : 리소스 매니저 345 : 파워 매니저
346 : 데이터베이스 매니저 347 : 패키지 매니저
348 : 연결 매니저 349 : 통지 매니저
350 : 위치 매니저 351 : 그래픽 매니저
352 : 보안 매니저 371 : 홈
372 : 다이얼러 373 : SMS/MMS
374 : IM 375 : 브라우저
376 : 카메라 377 : 알람
378 : 컨택트 379 : 음성다이얼
380 : 이메일 381 : 달력
382 : 미디어 플레이어 383 : 앨범
384 : 시계

Claims (20)

  1. 전자장치에서 마이크의 이득 조절 방법에 있어서,
    소정의 기준 마이크가 획득하는 기준 획득 신호가 가지는 적어도 하나의 특성과 관련된 복수의 기준 파라미터들을 상기 전자장치에 저장하는 단계로, 상기 기준 마이크가 상기 전자장치의 스피커에서 출력되는 기준 오디오 신호에 대하여 획득하는 기준 획득 신호를 상기 기준 마이크와 상기 전자장치의 스피커 간 이격 거리 별로 계산한 복수의 기준 획득 신호의 파라미터 값들을 포함하는 복수의 기준 파라미터들을 저장하는 단계;
    상기 전자장치의 스피커로 상기 기준 오디오 신호를 출력하는 단계;
    상기 기준 오디오 신호에 대하여 외부 마이크가 획득하는 비교용 획득 신호를 상기 외부 마이크로부터 수신하는 단계;
    상기 복수의 기준 획득 신호 파라미터들 가운데, 상기 외부 마이크와 상기 전자장치의 이격 거리와 대응되는 이격거리의 기준 획득 신호 파라미터 값과 상기 비교용 획득 신호의 파라미터 값을 비교하는 단계; 및
    상기 비교에 기반하여 상기 외부 마이크의 이득을 조절하는 단계;를 포함하는, 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 비교용 획득 신호의 파라미터 값은 상기 비교용 획득 신호의 이득 평균값을 포함하고, 상기 저장된 복수의 기준 파라미터들은 상기 기준 획득 신호의 이득 평균값을 포함하는, 방법.
  4. 제3항에 있어서,
    상기 비교하는 단계는, 상기 비교용 획득 신호와 상기 기준 획득 신호의 이득 평균값 간의 차를 계산하는 단계를 포함하는, 방법.
  5. 삭제
  6. 삭제
  7. 삭제
  8. 제1항에 있어서,
    상기 외부 마이크의 이득 조절은,
    상기 외부 마이크로 음원의 녹음이 이루어지기 전 또는 통화가 이루어지기 전 또는 녹화 시 상기 외부 마이크로 음원의 녹음이 이루어지기 전 또는 상기 외부 마이크로 녹음, 녹화, 통화 시 상기 전자장치의 제조 시 설정된 평균 실효값으로부터 미리 설정된 허용 범위보다 낮은 평균 실효값을 갖는 경우 또는 상기 전자장치의 제조 시 설정된 평균 실효값으로부터 미리 설정된 허용 범위를 초과하는 평균 실효값을 갖는 경우 중 어느 하나에 해당하는 경우에 수행하는, 방법.
  9. 제1항에 있어서,
    상기 외부 마이크의 이득 조절 시 알람을 제공하는 단계; 및
    사용자로부터 상기 제공된 알람에 응답하여 조정이 요구될 시 상기 이득을 조절하는 단계;를 더 포함하는, 방법.
  10. 제1항에 있어서,
    상기 전자장치의 내장 마이크를 통해 현재 잡음에 대한 파라미터를 계산하는 단계;
    상기 내장 마이크를 통해 미리 저장된 평균 잡음에 대한 파라미터와 상기 현재 잡음에 대한 파라미터를 비교하는 단계; 및
    상기 잡음에 대한 비교 결과를 상기 비교용 획득 신호의 파라미터 값에 보상하는 단계;를 더 포함하는, 방법.
  11. 마이크의 감도에 따른 이득을 자동으로 조절하는 전자장치에 있어서,
    음향을 출력하기 위한 스피커;
    기준 오디오 신호 및 소정의 기준 마이크가 획득하는 기준 획득 신호가 가지는 적어도 하나의 특성과 관련된 복수의 기준 파라미터들을 저장하고, 상기 복수의 기준 파라미터들은 상기 기준 마이크가 상기 전자장치의 스피커에서 출력되는 기준 오디오 신호에 대하여 획득하는 기준 획득 신호를 상기 기준 마이크와 상기 전자장치의 스피커 간 이격 거리 별로 계산한 복수의 기준 획득 신호의 파라미터 값들을 포함하는 는 메모리; 및
    프로세서를 포함하고,
    상기 프로세서는,
    상기 스피커로 상기 기준 오디오 신호를 출력하고, 상기 기준 오디오 신호에 대하여 외부 마이크가 획득하는 비교용 획득 신호를 상기 외부 마이크로부터 수신하고, 상기 복수의 기준 획득 신호 파라미터들 가운데 상기 외부 마이크와 상기 전자장치의 이격 거리와 대응되는 이격 거리의 기준 획득 신호 파라미터 값과 상기 비교용 획득 신호의 파라미터 값을 비교하고, 상기 비교에 기반하여 상기 외부 마이크의 이득을 조절하는, 전자장치.
  12. 삭제
  13. 제11항에 있어서,
    상기 비교용 획득 신호의 파라미터 값은 상기 비교용 획득 신호의 이득평균값을 포함하고, 상기 저장된 복수개의 기준 파라미터들은 상기 기준 획득 신호의 이득 평균값을 포함하는, 전자장치.
  14. 제13항에 있어서,
    상기 프로세서는,
    상기 비교 시 상기 비교용획득 신호와 상기 기준 획득 신호의 이득 평균값 간의 차를 계산하는, 전자장치.
  15. 삭제
  16. 삭제
  17. 삭제
  18. 제11항에 있어서,
    상기 외부 마이크의 이득 조절은,
    상기 외부 마이크로 음원의 녹음이 이루어지기 전 또는 통화가 이루어지기 전 또는 녹화 시 상기 외부 마이크로 음원의 녹음이 이루어지기 전 또는 상기 외부 마이크로 녹음, 녹화, 통화 시 상기 전자장치의 제조 시 설정된 평균 실효값으로부터 미리 설정된 허용 범위보다 낮은 평균 실효값을 갖는 경우 또는 상기 전자장치의 제조 시 설정된 평균 실효값으로부터 미리 설정된 허용 범위를 초과하는 평균 실효값을 갖는 경우 중 어느 하나에 해당하는 경우에 수행하는, 전자장치.
  19. 제11항에 있어서,
    알람을 제공하기 위한 알람 제공 장치; 및
    사용자의 입력에 대응한 입력 신호를 수신하기 위한 입력 장치를 더 포함하고,
    상기 프로세서는,
    상기 외부 마이크의 이득 조절이 시 상기 알람 제공 장치를 통해 알람의 출력을 제어하며, 상기 입력 장치로부터 상기 제공된 알람에 응답하여 상기 외부 마이크의 이득 조정이 요구될 시 상기 외부 마이크의 이득을 조절하도록 제어하는, 전자장치.
  20. 제11항에 있어서,
    상기 전자장치에 내장된 내장 마이크를 더 포함하고,
    상기 메모리는 평균 잡음에 대한 잡음 파라미터를 더 저장하며,
    상기 프로세서는,
    상기 내장 마이크를 통해 현재 잡음에 대한 파라미터를 더 획득하고, 미리 저장된 평균 잡음 파라미터와 비교하여 상기 잡음에 대한 비교 결과를 상기 비교용 획득 신호의 파라미터에 보상하는, 전자장치.
KR1020140020134A 2014-02-21 2014-02-21 전자장치에서 마이크의 감도에 따른 자동 이득 조절 방법 및 장치 KR102216881B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140020134A KR102216881B1 (ko) 2014-02-21 2014-02-21 전자장치에서 마이크의 감도에 따른 자동 이득 조절 방법 및 장치
US14/628,526 US9819321B2 (en) 2014-02-21 2015-02-23 Method and apparatus for automatically controlling gain based on sensitivity of microphone in electronic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140020134A KR102216881B1 (ko) 2014-02-21 2014-02-21 전자장치에서 마이크의 감도에 따른 자동 이득 조절 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20150098809A KR20150098809A (ko) 2015-08-31
KR102216881B1 true KR102216881B1 (ko) 2021-02-18

Family

ID=53883233

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140020134A KR102216881B1 (ko) 2014-02-21 2014-02-21 전자장치에서 마이크의 감도에 따른 자동 이득 조절 방법 및 장치

Country Status (2)

Country Link
US (1) US9819321B2 (ko)
KR (1) KR102216881B1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101985782B1 (ko) * 2018-11-07 2019-06-10 (주)바인테크 주변소리를 이용한 위험군 제어기기의 중요권한설정을 안내하는 시스템 및 방법
KR102602942B1 (ko) * 2019-01-07 2023-11-16 삼성전자 주식회사 오디오 정보 처리 장치의 위치에 기반하여 오디오 처리 알고리즘을 결정하는 전자 장치 및 방법
US11303994B2 (en) * 2019-07-14 2022-04-12 Peiker Acustic Gmbh Reduction of sensitivity to non-acoustic stimuli in a microphone array
CN110460921A (zh) * 2019-07-15 2019-11-15 中国第一汽车股份有限公司 一种拾音控制方法、装置、车辆和存储介质
EP4203502A4 (en) 2020-11-16 2024-03-06 Samsung Electronics Co., Ltd. ELECTRONIC DEVICE AND ITS CONTROL METHOD
KR20220066746A (ko) * 2020-11-16 2022-05-24 삼성전자주식회사 전자 장치 및 이의 제어 방법
WO2024029849A1 (ko) * 2022-08-05 2024-02-08 삼성전자주식회사 센서에 기반하여 오디오 신호를 제어하기 위한 장치 및 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020146136A1 (en) * 2001-04-05 2002-10-10 Carter Charles H. Method for acoustic transducer calibration
US20030083591A1 (en) * 2001-10-12 2003-05-01 Edwards Brent W. System and method for remotely administered, interactive hearing tests
US20050244014A1 (en) * 2004-04-30 2005-11-03 Avaya Technology Corp. Acoustic-based temperature sensing in telephones

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3727431B2 (ja) * 1995-12-08 2005-12-14 シャープ株式会社 送話器、それを用いた電話機
KR19990000084U (ko) 1997-06-03 1999-01-15 박병재 반자동식 수동 변속기의 변속 조작 장치
JP3225918B2 (ja) * 1998-03-30 2001-11-05 日本電気株式会社 携帯端末装置
CN1878427A (zh) * 2005-06-07 2006-12-13 日本电产鸽株式会社 扬声器
JP4440865B2 (ja) * 2005-10-14 2010-03-24 株式会社小野測器 計測装置
US8773257B2 (en) * 2008-09-05 2014-07-08 Roche Diagnostics Operations, Inc. Skin-patch type infusion pump comprising a resonant buzzer
JP5448771B2 (ja) * 2009-12-11 2014-03-19 キヤノン株式会社 音響処理装置及び方法
US20140003635A1 (en) * 2012-07-02 2014-01-02 Qualcomm Incorporated Audio signal processing device calibration

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020146136A1 (en) * 2001-04-05 2002-10-10 Carter Charles H. Method for acoustic transducer calibration
US20030083591A1 (en) * 2001-10-12 2003-05-01 Edwards Brent W. System and method for remotely administered, interactive hearing tests
US20050244014A1 (en) * 2004-04-30 2005-11-03 Avaya Technology Corp. Acoustic-based temperature sensing in telephones

Also Published As

Publication number Publication date
US9819321B2 (en) 2017-11-14
US20150244337A1 (en) 2015-08-27
KR20150098809A (ko) 2015-08-31

Similar Documents

Publication Publication Date Title
CN107852437B (zh) 用于在电子设备中输出音频的方法和装置
KR102147088B1 (ko) 전자장치에서 수신된 정보를 사용자에게 제공하기 위한 방법 및 장치
KR102216881B1 (ko) 전자장치에서 마이크의 감도에 따른 자동 이득 조절 방법 및 장치
US11012070B2 (en) Electronic device and method thereof for grip recognition
US10656279B2 (en) Electronic device and method for measuring position information of electronic device
US20180329675A1 (en) Electronic device and method for controlling audio output according to the type of earphone
US9927383B2 (en) Apparatus and method for preventing malfunction in an electronic device
US9998924B2 (en) Electronic device and method for acquiring biometric information thereof
KR102134420B1 (ko) 저전력으로 위치 변화를 측정하는 전자 장치 및 방법
US10432926B2 (en) Method for transmitting contents and electronic device thereof
KR102157858B1 (ko) 전력 소모를 줄일 수 있는 전자 장치 및 방법
EP3367646A1 (en) Method for detecting proximity of object and electronic device using the same
KR20150043894A (ko) 복수의 영상의 프리뷰 영역을 조정하는 전자 장치 및 방법
KR102157338B1 (ko) 복수의 센서 기능을 수행하는 전자 장치 및 방법
US10319341B2 (en) Electronic device and method for displaying content thereof
US10187506B2 (en) Dual subscriber identity module (SIM) card adapter for electronic device that allows for selection between SIM card(s) via GUI display
KR102240526B1 (ko) 전자 장치의 컨텐츠 다운로드 방법 및 그 전자 장치
KR102131626B1 (ko) 미디어 데이터 싱크 방법 및 장치
KR20150026257A (ko) 액세서리의 정보를 업 데이트하는 전자 장치 및 방법
KR102305117B1 (ko) 텍스트 입력 제어 방법 및 그 전자 장치
KR102213429B1 (ko) 사운드 제공 방법 및 이를 구현하는 전자 장치
EP3346732A1 (en) Electronic device and method for controlling operation thereof
US10483932B2 (en) Method for amplifying audio signal based on its amplitude and electronic device supporting the same
EP3328066A1 (en) Electronic device and method for autofocusing
KR102167646B1 (ko) 프레임 정보를 제공하는 전자 장치 및 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right