KR20170034154A - 콘텐츠 제공 방법 및 이를 수행하는 전자 장치 - Google Patents

콘텐츠 제공 방법 및 이를 수행하는 전자 장치 Download PDF

Info

Publication number
KR20170034154A
KR20170034154A KR1020150132488A KR20150132488A KR20170034154A KR 20170034154 A KR20170034154 A KR 20170034154A KR 1020150132488 A KR1020150132488 A KR 1020150132488A KR 20150132488 A KR20150132488 A KR 20150132488A KR 20170034154 A KR20170034154 A KR 20170034154A
Authority
KR
South Korea
Prior art keywords
content
user
output
electronic device
processor
Prior art date
Application number
KR1020150132488A
Other languages
English (en)
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 KR1020150132488A priority Critical patent/KR20170034154A/ko
Priority to CN201680053640.6A priority patent/CN108027952B/zh
Priority to EP16846821.3A priority patent/EP3335188B1/en
Priority to PCT/KR2016/010196 priority patent/WO2017048000A1/en
Priority to US15/269,406 priority patent/US10062381B2/en
Publication of KR20170034154A publication Critical patent/KR20170034154A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/165Management of the audio stream, e.g. setting of volume, audio stream path
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/02Methods for producing synthetic speech; Speech synthesisers
    • G10L13/033Voice editing, e.g. manipulating the voice of the synthesiser
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
    • G10L25/63Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination for estimating an emotional state
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters

Abstract

전자 장치가 개시된다. 일 실시 예에 따른 전자 장치는, 사용자의 발화를 음성 입력으로 수신하는 오디오 입력 모듈, 상기 음성 입력에 대응되는 콘텐츠를 출력하는 오디오 출력 모듈, 및 상기 음성 입력의 분석을 통해 획득되는 상기 발화의 속도, 상기 발화의 성량, 및 상기 발화에 포함된 키워드 중 적어도 하나에 기초하여, 상기 콘텐츠의 출력 방식을 결정하도록 설정된 프로세서를 포함할 수 있다. 이 외에도 명세서를 통해 파악되는 다양한 실시 예가 가능하다.

Description

콘텐츠 제공 방법 및 이를 수행하는 전자 장치{METHOD AND ELECTRONIC DEVICE FOR PROVIDING CONTENTS}
본 문서에서 개시되는 실시 예들은, 음성 입력에 응답하여 콘텐츠를 제공하는 방법 및 이를 수행하는 전자 장치에 관련된다.
최근 전자 장치에 적용된 사용자 입력 인터페이스는, 사용자의 물리적인 조작에 기반한 사용자 입력(예: 버튼식 키패드, 키보드, 마우스, 터치 패널 등을 통한 입력)뿐만 아니라, 음성 입력에 기반한 사용자 입력을 지원할 수 있는 형태로 구현되고 있다
상기 음성 입력 인터페이스가 적용된 전자 장치는, 사용자가 발화한 음성을 입력으로 수신하여 전기 신호로 변환할 수 있고, 상기 전기 신호를 기초로 유용한 콘텐츠를 사용자에게 제공할 수 있다.
상기 음성 입력 인터페이스가 적용된 전자 장치는, 예를 들어, 콘텐츠를 사용자에게 음성을 통해 제공할 수 있다. 그러나, 상기 전자 장치는 사용자가 처한 상황을 고려하지 않고, 균일한 속도, 단조로운 톤(tone), 및 미리 설정된 볼륨으로 콘텐츠를 제공할 뿐이므로, 사용자는 상기 전자 장치와 정서적인 공감을 느낄 수 없었다. 나아가, 사용자의 발화 형태에 따른 뉘앙스가 고려되지 않으므로, 사용자가 처한 상황에 적합한 콘텐츠가 적절한 방식으로 제공되기 곤란하였다.
본 문서에서 개시되는 실시 예들은, 전술한 문제 및 본 문서에서 제기되는 과제들을 해결하기 위한 것으로서, 사용자의 발화(發話)에 의한 음성 입력을 분석하고, 상기 분석 결과를 통해 얻어지는 다양한 발화 요소에 기초하여 콘텐츠의 출력 방식을 결정할 수 있는 콘텐츠 제공 방법 및 이를 수행하는 전자 장치를 제공할 수 있다.
본 문서에 개시되는 일 실시 예에 따른 전자 장치는, 사용자의 발화를 음성 입력으로 수신하는 오디오 입력 모듈, 상기 음성 입력에 대응되는 콘텐츠를 출력하는 오디오 출력 모듈, 및 상기 음성 입력의 분석을 통해 획득되는 상기 발화의 속도, 상기 발화의 성량, 및 상기 발화에 포함된 키워드 중 적어도 하나에 기초하여, 상기 콘텐츠의 출력 방식을 결정하도록 설정된 프로세서를 포함할 수 있다.
또한, 본 문서에 개시되는 일 실시 예에 따른 콘텐츠 제공 방법은, 사용자의 발화를 음성 입력으로 수신하는 동작, 상기 음성 입력의 분석을 통해 획득되는 상기 발화의 속도, 성량, 및 상기 발화에 포함된 키워드 중 적어도 하나에 기초하여, 상기 콘텐츠의 출력 방식을 결정하는 동작, 및 상기 결정된 출력 방식에 따라서, 상기 음성 입력에 대응되는 콘텐츠를 출력하는 동작을 포함할 수 있다.
또한, 본 문서에 개시되는 일 실시 예에 따른 컴퓨터 기록 매체에 있어서, 상기 컴퓨터 기록 매체에 저장된 명령어는, 사용자의 발화를 음성 입력으로 획득하는 동작, 상기 음성 입력의 분석을 통해 획득되는 상기 발화의 속도, 성량, 및 상기 발화에 포함된 키워드 중 적어도 하나에 기초하여, 상기 콘텐츠의 출력 방식을 결정하는 동작, 및 상기 결정된 출력 방식에 따라서, 상기 음성 입력에 대응되는 콘텐츠를 출력하는 동작을 수행하도록 설정될 수 있다.
본 문서에 개시되는 실시 예들에 따르면, 사용자의 발화에 의한 음성 입력 등을 분석하여, 상기 음성 입력에 대응하는 콘텐츠를 보다 효과적으로 제공할 수 있다. 이 외에, 본 문서를 통해 직접적 또는 간접적으로 파악되는 다양한 효과들이 제공될 수 있다.
도 1a 및 도 1b는 본 발명의 다양한 실시 예에 따른 전자 장치가 동작하는 환경을 나타낸다.
도 2는 본 발명의 다양한 실시 예에 따른 전자 장치의 구현 형태를 나타낸다.
도 3은 본 발명의 다양한 실시 예에 따른 전자 장치의 블록도를 나타낸다.
도 4는 본 발명의 일 실시 예에 따른 콘텐츠 제공 방법을 나타낸다.
도 5는 본 발명의 일 실시 예에 따른, 거리에 기반한 콘텐츠 제공 방법을 나타낸다.
도 5b는 본 발명의 일 실시 예에 따른, 사용자의 이동 속도에 기반한 콘텐츠 제공 방법을 나타낸다.
도 6은 본 발명의 일 실시 예에 따른, 사용자의 발화 속도에 기반한 콘텐츠 제공 방법을 나타낸다.
도 7은 본 발명의 일 실시 예에 따른, 키워드에 따른 콘텐츠 제공 방법을 나타낸다.
도 8은 본 발명의 일 실시 예에 따른, 사용자의 감정 상태에 따른 콘텐츠 제공 방법을 나타낸다.
도 9는 다양한 실시 예에 따른 전자 장치의 블록도를 나타낸다.
도 10은 다양한 실시 예에 따른 프로그램 모듈의 블록도를 나타낸다.
이하, 본 발명의 다양한 실시 예가 첨부된 도면을 참조하여 기재된다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 실시 예의 다양한 변경(modification), 균등물(equivalent), 및/또는 대체물(alternative)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다.
본 문서에서, "가진다", "가질 수 있다", "포함한다", 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.
본 문서에서, "A 또는 B", "A 또는/및 B 중 적어도 하나", 또는 "A 또는/및 B 중 하나 또는 그 이상" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. 예를 들면, "A 또는 B", "A 및 B 중 적어도 하나", 또는 "A 또는 B 중 적어도 하나"는, (1) 적어도 하나의 A를 포함, (2) 적어도 하나의 B를 포함, 또는 (3) 적어도 하나의 A 및 적어도 하나의 B 모두를 포함하는 경우를 모두 지칭할 수 있다.
본 문서에서 사용된 "제1", "제2", "첫째", 또는 "둘째" 등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 예를 들면, 제1 사용자 기기와 제2 사용자 기기는, 순서 또는 중요도와 무관하게, 서로 다른 사용자 기기를 나타낼 수 있다. 예를 들면, 본 문서에 기재된 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 바꾸어 명명될 수 있다.
어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 다른 구성요소(예: 제3 구성요소)가 존재하지 않는 것으로 이해될 수 있다.
본 문서에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)", "~하는 능력을 가지는(having the capacity to)", "~하도록 설계된(designed to)", "~하도록 변경된(adapted to)", "~하도록 만들어진(made to)", 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성(또는 설정)된"은 하드웨어적으로 "특별히 설계된(specifically designed to)"것만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성(또는 설정)된 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다.
본 문서에서 사용된 용어들은 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 다른 실시 예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 문서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 본 문서에 사용된 용어들 중 일반적인 사전에 정의된 용어들은 관련 기술의 문맥 상 가지는 의미와 동일 또는 유사한 의미로 해석될 수 있으며, 본 문서에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 문서에서 정의된 용어일지라도 본 문서의 실시 예들을 배제하도록 해석될 수 없다.
본 문서의 다양한 실시 예들에 따른 전자 장치는, 예를 들면, 스마트폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 영상 전화기, 전자책 리더기(e-book reader), 데스크탑 PC (desktop PC), 랩탑 PC(laptop PC), 넷북 컴퓨터(netbook computer), 워크스테이션(workstation), 서버, PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 카메라, 또는 웨어러블 장치(wearable device) 중 적어도 하나를 포함할 수 있다. 다양한 실시 예에 따르면 웨어러블 장치는 엑세서리 형(예: 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(head-mounted-device(HMD)), 직물 또는 의류 일체 형(예: 전자 의복), 신체 부착 형(예: 스킨 패드(skin pad) 또는 문신), 또는 생체 이식 형(예: implantable circuit) 중 적어도 하나를 포함할 수 있다.
어떤 실시 예들에서, 전자 장치는 가전 제품(home appliance)일 수 있다. 가전 제품은, 예를 들면, 텔레비전, DVD 플레이어(Digital Video Disk player), 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스(set-top box), 홈 오토매이션 컨트롤 패널(home automation control panel), 보안 컨트롤 패널(security control panel), TV 박스(예: 삼성 HomeSync™, 애플TV™, 또는 구글 TV™), 게임 콘솔(예: Xbox™, PlayStation™), 전자 사전, 전자 키, 캠코더, 또는 전자 액자 중 적어도 하나를 포함할 수 있다.
다른 실시 예에서, 전자 장치는, 각종 의료기기(예: 각종 휴대용 의료측정기기(혈당 측정기, 심박 측정기, 혈압 측정기, 또는 체온 측정기 등), MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 또는 초음파기 등), 네비게이션(navigation) 장치, 위성 항법 시스템(GNSS(Global Navigation Satellite System)), EDR(event data recorder), FDR(flight data recorder), 자동차 인포테인먼트(infotainment) 장치, 선박용 전자 장비(예: 선박용 항법 장치, 자이로 콤파스 등), 항공 전자기기(avionics), 보안 기기, 차량용 헤드 유닛(head unit), 산업용 또는 가정용 로봇, 금융 기관의 ATM(automatic teller's machine), 상점의 POS(point of sales), 또는 사물 인터넷 장치(internet of things)(예: 전구, 각종 센서, 전기 또는 가스 미터기, 스프링클러 장치, 화재경보기, 온도조절기(thermostat), 가로등, 토스터(toaster), 운동기구, 온수탱크, 히터, 보일러 등) 중 적어도 하나를 포함할 수 있다.
어떤 실시 예에 따르면, 전자 장치는 가구(furniture) 또는 건물/구조물의 일부, 전자 보드(electronic board), 전자 사인 수신 장치(electronic signature receiving device), 프로젝터(projector), 또는 각종 계측 기기(예: 수도, 전기, 가스, 또는 전파 계측 기기 등) 중 적어도 하나를 포함할 수 있다. 다양한 실시 예에서, 전자 장치는 전술한 다양한 장치들 중 하나 또는 그 이상의 조합일 수 있다. 어떤 실시 예에 따른 전자 장치는 플렉서블 전자 장치일 수 있다. 또한, 본 문서의 실시 예에 따른 전자 장치는 전술한 기기들에 한정되지 않으며, 기술 발전에 따른 새로운 전자 장치를 포함할 수 있다.
이하, 첨부 도면을 참조하여, 다양한 실시 예에 따른 전자 장치가 설명된다. 본 문서에서, 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치 (예: 인공지능 전자 장치)를 지칭할 수 있다.
도 1a 및 도 1b는 본 발명의 다양한 실시 예에 따른 전자 장치가 동작하는 환경을 나타낸다.
도 1a를 참조하면, 전자 장치 100과 일정한 거리만큼 떨어져서 정지하고 있는 사용자 10은 전자 장치 100에 대하여 발화(speech)할 수 있다. 상기 사용자 10의 발화는 음성 입력으로서 전자 장치 100에 제공될 수 있다. 예를 들면, 사용자 10은 보통의 성량과 보통의 속도로 "지금 몇 시인지 알려줘"라고 발화할 수 있고, 상기 발화는 음성 입력으로 전자 장치 100에 제공될 수 있다.
전자 장치 100은 내장한 오디오 입력 모듈(예: 마이크)을 통해 상기 음성 입력을 수신하고, 상기 음성 입력을 분석함으로써 대응되는 콘텐츠를 생성할 수 있다. 예를 들면, 전자 장치 100은 "지금 몇 시인지 알려줘"라는 음성 입력에 응답하여, "현재 시각은 오전 9시 10분입니다."라는 대응 콘텐츠를 생성할 수 있다. 전자 장치 100은 상기 생성된 대응 콘텐츠를 내장된 오디오 출력 모듈(예: 스피커)을 통해 음성으로 제공할 수 있다. 이때, 전자 장치 100은 사용자 10이 정지한 상태로 보통의 성량과 보통의 속도로 음성 입력을 제공하였는바, 보통의 출력 크기, 보통의 출력 속도로 상기 대응 콘텐츠를 음성으로 제공할 수 있다. 이로써 사용자 10은 음성 입력에 대응되는 콘텐츠를 제공받을 수 있다.
도 1b를 참조하면, 전자 장치 100로부터 멀어지고 있는 사용자 10은 전자 장치 100에 대하여 발화할 수 있다. 예를 들면, 사용자 10은 매우 바삐 출근 준비를 하고 있을 수 있다. 따라서, 예컨대, 상기 사용자 10은 평상시 보다 큰 성량과 평상시 보다 빠른 속도로 "지금 몇 시야"라고 발화할 수 있다. 상기 발화는 음성 입력으로 전자 장치 100에 제공될 수 있다.
전자 장치 100은 내장한 오디오 입력 모듈을 통해 상기 음성 입력을 수신하고, 상기 음성 입력을 분석함으로써 대응되는 콘텐츠를 생성할 수 있다. 예를 들면, 전자 장치 100은 상기 "지금 몇 시야?"라는 음성 입력에 응답하여, "9시 10분입니다."라는 대응 콘텐츠를 생성할 수 있다. 전자 장치 100은 상기 생성된 대응 콘텐츠를 내장된 오디오 출력 모듈을 통해 음성으로 제공할 수 있다. 이때, 사용자 10이 전자 장치 100로부터 멀어지고 있는 상태에서, 평상시 보다 큰 성량과 평상시 보다 빠른 속도로 음성 입력을 제공하였는바, 전자 장치 100은 상대적으로 큰 출력 크기, 및 상대적으로 빠른 출력 속도로 상기 대응 콘텐츠를 음성으로 제공할 수 있다. 이로써, 사용자 10은 음성 입력에 대응되는 콘텐츠를 적절한 방식으로 제공받을 수 있다.
도 2는 본 발명의 다양한 실시 예에 따른 전자 장치의 구현 형태를 나타낸다.
도 2를 참조하면, 본 발명의 다양한 실시 예에 따른 전자 장치는, 댁내에서 동작할 수 있는 전용(專用)의 전자 장치 100으로 구현될 수 있다. 도 2에는 구체적으로 도시하지는 않았으나 상기 전용의 전자 장치 100는, 상기 전자 장치 100에 이동성을 제공할 수 있는 구동 시스템(예: 구동 모터, 각종 로봇 관절 구조(2족, 4족), 휠, 프로펠러 등), 사용자를 인식할 수 있는 카메라, 음성 입력을 수신할 수 있는 오디오 입력 모듈 등 본 발명의 다양한 실시 예를 구현하기 위한 다양한 모듈(예: 후술하는 도 3의 각 구성들)을 포함할 수 있다.
또한, 본 발명의 다양한 실시 예에 따른 전자 장치는, 스마트폰 201과 도킹 스테이션 202가 결합된 형태로 구현될 수 있다. 예를 들어, 스마트폰 201은 내장한 다양한 모듈(예: 프로세서, 카메라, 센서 등)을 구비함으로써 본 발명의 다양한 실시 예를 수행하기 위한 기능을 제공할 수 있다. 또한, 예를 들어, 도킹 스테이션 202는, 스마트폰 201에 전력을 공급할 수 있는 충전 모듈(및 전원 공급 단자), 이동성을 제공할 수 있는 구동 시스템(구동 모터, 각종 로봇 관절 구조(2족, 4족), 휠(wheel), 프로펠러 등), 고출력 스피커 등을 포함할 수 있다.
전술한 바와 같이 다양하게 구현될 수 있는 전자 장치의 구성은, 이하 도 3을 참조하여 설명된다. 도 3에서 설명되는 구성들은, 예를 들어 도 2의 전자 장치 100에 포함되거나, 또는 스마트폰 201 및/또는 도킹 스테이션 202에 포함될 수 있다. 상기 전자 장치에 의한 콘텐츠 제공 방법은 도 4 내지 도 8을 참조하여 설명된다.
도 3은 본 발명의 다양한 실시 예에 따른 전자 장치의 블록도를 나타낸다.
도 3을 참조하면, 다양한 실시 예에 따른 전자 장치 101는, 버스 110, 프로세서 120, 메모리 130, 오디오 모듈 150, 디스플레이 160, 통신 인터페이스 170, 거리 검출 모듈 180을 포함할 수 있다. 어떤 실시 예에서는, 전자 장치 101은, 구성요소들 중 적어도 하나를 생략하거나 다른 구성 요소를 추가적으로 구비할 수 있다. 예컨대, 전자 장치 101은 사용자 또는 다른 외부 기기로부터 입력된 명령 또는 데이터를 전자 장치 101의 다른 구성요소(들)에 전달할 수 있는 인터페이스의 역할을 수행하는 입출력 인터페이스를 포함할 수 있다.
버스 110은, 예를 들면, 구성요소들 110-180을 서로 연결하고, 구성요소들 간의 통신(예: 제어 메시지 및/또는 데이터)을 전달하는 회로를 포함할 수 있다.
프로세서 120은, 중앙처리장치(Central Processing Unit (CPU)), 어플리케이션 프로세서(Application Processor (AP)), 또는 커뮤니케이션 프로세서(Communication Processor (CP)) 중 하나 또는 그 이상을 포함할 수 있다. 프로세서 120은, 예를 들면, 전자 장치 101의 적어도 하나의 다른 구성요소들의 제어 및/또는 통신에 관한 연산이나 데이터 처리를 실행할 수 있다. 예를 들면, 상기 프로세서 120은 음성 인식 어플리케이션(예: S-Voice)을 실행하여 본 발명의 다양한 실시 예에 따른 콘텐츠 제공 방법을 수행할 수 있다.
다양한 실시 예에 따르면, 프로세서 120은, 음성 입력 모듈 151을 통해 수신되는 음성 입력을 분석하여, 상기 음성 입력에 대응되는 콘텐츠를 다양한 출력 방식으로 음성 출력 모듈 152를 통해 출력할 수 있다. 예컨대, 상기 대응 콘텐츠는 TTS(text to speech) 기술을 기반으로 음성으로 사용자에게 제공될 수 있다.
일 실시 예에 따르면, 프로세서 120은, 상기 음성 입력의 분석을 통해 획득되는 사용자의 발화 속도, 사용자의 성량(聲量), 및 사용자의 발화에 포함된 키워드 중 적어도 하나에 기초하여, 상기 대응 콘텐츠의 출력 방식을 결정할 수 있다. 상기 출력 방식은, 예를 들어, 음성으로 제공되는 콘텐츠의 출력 크기(volume), 출력 속도, 출력 정보량을 포함할 수 있다.
상기 콘텐츠의 출력 크기는, 예를 들어, 상기 대응 콘텐츠가 오디오 출력 모듈 152에 의해 음성으로 제공될 때의 음량에 해당할 수 있다. 상기 콘텐츠의 출력 속도는, 예를 들어, 상기 대응 콘텐츠가 오디오 출력 모듈 152에 의해 음성으로 재생되는 속도에 대응할 수 있다. 상기 콘텐츠의 출력 정보량은, 예를 들어, 음성 입력에 대응하는 콘텐츠가 사용자에게 음성으로 제공될 때의 정보량에 해당할 수 있다.
예컨대, 상기 출력 정보량과 관련하여, 상기 콘텐츠는, 자세하고 풍부한 정보를 포함하는 상세 콘텐츠와, 상기 음성 입력에 대응하는 응답의 핵심만을 포함하는 요약 콘텐츠로 구별될 수 있다(관련된 예시는 후술). 상기 상세 콘텐츠 및 요약 콘텐츠는 이분적으로 구별될 수도 있으나, 이에 제한되지 않는다. 예를 들어, 상기 콘텐츠는, 상기 콘텐츠를 가장 자세하게 묘사하는 형태(출력 정보량이 가장 높은 형태)로부터 가장 간략히 묘사하는 형태(출력 정보량이 가장 낮은 형태)까지 수 개 단계로 구분될 수 있다. 예컨대, 프로세서 120은 상기 콘텐츠를 가장 자세하게 묘사하는 콘텐츠의 일부를 추출하고 재구성함으로써, 출력 정보량을 변화 또는 조절할 수 있다. 이를 통해 프로세서 120은, 다양한 정보량을 가진 콘텐츠를 생성할 수 있다.
또한, 다양한 실시 예에 따르면, 프로세서 120은 콘텐츠의 출력량에 기초하여 콘텐츠의 출력 속도를 조절할 수도 있다. 예를 들어, 프로세서 120은 오디오 출력 모듈 152를 통해 출력해야 할 콘텐츠의 출력량이 많을수록 콘텐츠의 출력 속도를 높일 수 있다. 예컨대, 콘텐츠의 출력 속도는 전술한 콘텐츠 축약 수준의 변화에 수반하여 조절될 수도 있다.
다양한 실시 예에 따르면, 프로세서 120은, 사용자와 전자 장치 101 사이의 거리에 따라서 대응 콘텐츠의 출력 방식을 결정할 수 있다. 예를 들면, 프로세서 120은, 음성 입력의 분석을 통해 획득된 사용자의 발화 성량, 또는 거리 검출 모듈 180에 의해 산출된 거리 중 적어도 하나에 기반하여, 상기 사용자와 상기 전자 장치 사이의 거리를 판단할 수 있다. 상기 프로세서 120은 상기 판단된 사용자와 상기 전자 장치 사이의 거리에 따라서 콘텐츠의 출력 크기, 콘텐츠의 출력 속도, 콘텐츠의 출력 정보량 중 적어도 하나를 변화시킬 수 있다.
또한, 다양한 실시 예에 따르면, 프로세서 120은, 사용자의 이동 속도에 따라서, 대응 콘텐츠의 출력 방식을 결정할 수 있다. 예를 들면, 프로세서 120은, 음성 입력의 분석을 통해 획득된 발화의 성량, 상기 음성 입력의 주파수 변화(예: 도플러 효과를 이용하는 경우), 또는 거리 검출 모듈 180에 의해 산출된 거리의 시간 변화량 중 적어도 하나에 기반하여, 상기 사용자의 이동 속도를 판단할 수 있다. 상기 사용자의 이동 속도를 판단하는 방법은 상술한 예에 제한되지 않으며, 사용자의 이동 속도를 판단하기 위한 다양한 음성 처리 기술이 이용될 수도 있다. 상기 프로세서 120은 상기 판단된 사용자의 이동 속도에 따라서, 콘텐츠의 출력 크기, 콘텐츠의 출력 속도, 콘텐츠의 출력 정보량 중 적어도 하나를 변화시킬 수 있다.
또한, 다양한 실시 예에 따르면, 프로세서 120은, 사용자의 발화의 속도에 따라서, 대응 콘텐츠의 출력 방식을 결정할 수 있다. 예를 들면, 프로세서 120은, 음성 입력의 분석을 통해 획득된 사용자의 발화 속도에 따라서, 콘텐츠의 출력 속도 또는 콘텐츠의 출력 정보량 중 적어도 하나를 변화시킬 수 있다.
또한, 다양한 실시 예에 따르면, 프로세서 120은, 사용자의 발화에 포함된 키워드에 따라서, 대응 콘텐츠의 출력 방식을 결정할 수 있다. 예를 들면, 프로세서 120은, 음성 입력의 분석을 통해 사용자의 발화에 미리 지정된 키워드가 포함되면, 콘텐츠의 출력 속도, 콘텐츠의 출력 크기, 또는 콘텐츠의 출력 정보량 중 적어도 하나를 변화시킬 수 있다.
또한, 다양한 실시 예에 따르면, 프로세서 120은, 사용자의 발화로부터 판단되는 감정 상태에 따라서, 대응 콘텐츠의 출력 방식을 결정할 수도 있다.
또한, 다양한 실시예에 따르면, 프로세서 120은 사용자가 일정한 콘텐츠에 대하여 관심을 가지고 있는지 여부에 따라서, 대응 콘텐츠의 출력 정보량을 조절할 수 있다. 예를 들어, 프로세서 120은 음성 입력에 대응하는 콘텐츠를 출력할 때, 이후 상기 콘텐츠와 관련된 추가적인 질문(음성 입력)이 수신되는지 여부, 또는 상기 추가적인 질문에 포함된 키워드의 사용 빈도(term frequency) 등에 기반하여, 사용자가 일정한 콘텐츠에 대해 관심을 가지는지 여부를 판단할 수 있다.
예를 들면, 프로세서 120은, 사용자가 상기 일정한 콘텐츠에 대해 관심을 가지고 있다고 판단한 경우, 상기 사용자가 관심을 가진 콘텐츠에 대한 출력 정보량을 증가시킴으로써, 보다 상세한 정보를 제공할 수 있다. 반면, 예를 들어, 프로세서 120은 사용자가 관심을 가지지 않는다고 판단한 콘텐츠에 대해 출력 정보량을 감소시킬 수 있다. 즉, 전자 장치 101의 프로세서 120은 사용자의 관심도, 상황, 또는 맥락 등에 따라서 콘텐츠의 정보 출력량을 조절할 수 있다.
메모리 130은, 휘발성 및/또는 비휘발성 메모리를 포함할 수 있다. 메모리 130은, 예를 들면, 전자 장치 101의 적어도 하나의 다른 구성요소에 관계된 명령 또는 데이터를 저장할 수 있다. 한 실시 예에 따르면, 메모리 130은 소프트웨어 및/또는 프로그램 140을 저장할 수 있다. 프로그램 140은, 예를 들면, 커널 141, 미들웨어 143, 어플리케이션 프로그래밍 인터페이스(Application Programming Interface (API)) 145, 및/또는 어플리케이션 프로그램(또는 "어플리케이션") 147 등을 포함할 수 있다. 상기 커널 141, 미들웨어 143, 또는 API 145의 적어도 일부는, 운영 시스템(Operating System (OS))으로 지칭될 수 있다. 일 실시 예에 따르면, 어플리케이션 147은, 음성 입력을 분석하고 상기 음성 입력에 대응하는 콘텐츠를 생성 및/또는 제공할 수 있는 음성 인식 어플리케이션(예: S-Voice)을 포함할 수 있다.
오디오 모듈 150은, 예를 들면, 오디오 입력 모듈 151 및 오디오 출력 모듈 152를 포함할 수 있다. 도시하지는 않았으나, 상기 오디오 모듈 150은 오디오 입력 모듈 151 및 오디오 출력 모듈 152을 구동하기 위한 드라이버, 및/또는 외부 오디오 장치와 연결될 수 있는 인터페이스 모듈을 포함할 수 있다.
상기 오디오 입력 모듈 151은, 예를 들면, 마이크 등으로 구현되어, 사용자의 발화를 음성 입력으로 획득할 수 있다. 상기 오디오 출력 모듈 152는, 예를 들면, 스피커 등으로 구현되어, 상기 음성 입력에 대응되는 콘텐츠를 음성으로 출력할 수 있다.
디스플레이 160은, 예를 들면, 액정 디스플레이(Liquid Crystal Display (LCD)), 발광 다이오드(Light-Emitting Diode (LED)) 디스플레이, 유기 발광 다이오드(Organic LED (OLED)) 디스플레이, 또는 마이크로 전자기계 시스템(micro-electromechanical systems, MEMS) 디스플레이, 또는 전자 종이(electronic paper) 디스플레이를 포함할 수 있다. 디스플레이 160은, 예를 들면, 사용자에게 각종 컨텐츠(예: 텍스트, 이미지, 비디오, 아이콘, 또는 심볼 등)을 표시할 수 있다. 디스플레이 160은, 터치 스크린을 포함할 수 있으며, 예를 들면, 전자 펜 또는 사용자의 신체의 일부를 이용한 터치, 제스처, 근접, 또는 호버링(hovering) 입력을 수신할 수 있다.
통신 인터페이스 170은, 예를 들면, 전자 장치 101과 외부 장치(예: 제1 외부 전자 장치 102, 제2 외부 전자 장치 104, 또는 서버 106) 간의 통신을 설정할 수 있다. 예를 들면, 통신 인터페이스 170은 무선 통신 또는 유선 통신을 통해서 네트워크 162에 연결되어 상기 외부 장치 (예: 제2 외부 전자 장치 104 또는 서버 106)와 통신할 수 있다.
무선 통신은, 예를 들면 셀룰러 통신 프로토콜로서, 예를 들면 LTE(Long-Term Evolution), LTE-A(LTE-Advanced), CDMA(Code Division Multiple Access), WCDMA(Wideband CDMA), UMTS(Universal Mobile Telecommunications System), WiBro(Wireless Broadband), 또는 GSM(Global System for Mobile Communications) 중 적어도 하나를 사용할 수 있다. 또한 무선 통신은, 예를 들면, 근거리 통신 164를 포함할 수 있다. 근거리 통신 164는, 예를 들면, Wi-Fi(Wireless Fidelity), Bluetooth, NFC(Near Field Communication), 또는 GNSS 중 적어도 하나를 포함할 수 있다. GNSS는 사용 지역 또는 대역폭 등에 따라, 예를 들면, GPS(Global Positioning System), Glonass(Global Navigation Satellite System), Beidou Navigation Satellite System(이하 "Beidou") 또는 Galileo(the European global satellite-based navigation system) 중 적어도 하나를 포함할 수 있다. 이하, 본 문서에서는, "GPS"는 "GNSS"와 혼용되어 사용(interchangeably used)될 수 있다. 유선 통신은, 예를 들면, USB(universal serial bus), HDMI(high definition multimedia interface), RS-232(recommended standard 232), 또는 POTS(plain old telephone service) 등 중 적어도 하나를 포함할 수 있다. 네트워크 162는 통신 네트워크(telecommunications network), 예를 들면, 컴퓨터 네트워크(computer network)(예: LAN 또는 WAN), 인터넷, 또는 전화 망(telephone network) 중 적어도 하나를 포함할 수 있다.
거리 검출 모듈 180은 다양한 방식으로 사용자와의 거리를 산출할 수 있다. 예를 들어, 상기 거리 검출 모듈 180은 TOF(time-of-flight) 카메라와 같은 깊이 카메라(depth camera), 삼각측량법으로 깊이 정보를 산출하는 스테레오 카메라(stereo camera), 또는 이미지 프로세싱을 통해 거리를 산출하는 일반적인 CCD(charge coupled device) 카메라 등을 포함할 수 있다. 거리 검출 모듈 180은 전술한 다양한 유형의 카메라에 제한되지 않는다. 예를 들어, 상기 거리 검출 모듈 180은 적외선(infra-red) 센서, RF센서, 초음파 센서 등 다양한 센서를 포함할 수 있다.
제1 및 제2 외부 전자 장치 102, 104 각각은 전자 장치 101과 동일한 또는 다른 종류의 장치일 수 있다. 한 실시 예에 따르면, 서버 106은 하나 또는 그 이상의 서버들의 그룹을 포함할 수 있다. 다양한 실시 예에 따르면, 전자 장치 101에서 실행되는 동작들의 전부 또는 일부는 다른 하나 또는 복수의 전자 장치(예: 전자 장치 102, 104, 또는 서버 106)에서 실행될 수 있다. 한 실시 예에 따르면, 전자 장치 101이 어떤 기능이나 서비스를 자동으로 또는 요청에 의하여 수행해야 할 경우에, 전자 장치 101은 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 그와 연관된 적어도 일부 기능을 다른 장치(예: 전자 장치 102, 104, 또는 서버 106)에게 요청할 수 있다. 다른 전자 장치(예: 전자 장치 102, 104, 또는 서버 106)는 요청된 기능 또는 추가 기능을 실행하고, 그 결과를 전자 장치 101로 전달할 수 있다. 전자 장치 101은 수신된 결과를 그대로 또는 추가적으로 처리하여 요청된 기능이나 서비스를 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다.
도 4는 본 발명의 일 실시 예에 따른 콘텐츠 제공 방법을 나타낸다.
도 4를 참조하면, 본 발명의 일 실시 예에 따른 콘텐츠 제공 방법은, 동작 401 내지 405를 포함할 수 있다. 예를 들어, 상기 동작 401 내지 동작 405는 도 3의 전자 장치 101에 의해 수행될 수 있다.
동작 401에서, 전자 장치 101은 오디오 입력 모듈 151을 통해 사용자의 발화를 음성 입력으로 수신할 수 있다.
동작 403에서, 전자 장치 101은 동작 401에서 수신된 음성 입력을 분석하여 상기 사용자에 의한 발화의 속도, 성량, 및 상기 발화에 포함된 키워드 중 적어도 하나를 획득할 수 있다. 전자 장치 101은 상기 사용자에 의한 발화의 속도, 성량, 및 상기 발화에 포함된 키워드 중 적어도 하나에 기초하여, 상기 콘텐츠의 출력 방식을 결정할 수 있다. 예를 들어, 상기 콘텐츠의 출력 방식은, 콘텐츠의 출력 크기, 출력 속도, 출력 정보량을 조절하는 것을 포함할 수 있다.
동작 405에서, 전자 장치 101은 동작 403에서 결정된 출력 방식에 따라서, 오디오 출력 모듈 152를 통해 상기 수신된 음성 입력에 대응되는 콘텐츠를 음성으로 출력할 수 있다.
도 5a는 본 발명의 일 실시 예에 따른 콘텐츠 제공 방법을 나타낸다.
도 5a를 참조하면, 본 발명의 일 실시 예에 따른 콘텐츠 제공 방법은, 동작 501 내지 507을 포함할 수 있다. 예를 들어, 상기 동작 501 내지 동작 507는 도 3의 전자 장치 101에 의해 수행될 수 있으며, 도 4와 관련하여 중복되는 설명은 생략될 수 있다.
동작 501에서, 전자 장치 101은 오디오 입력 모듈 151을 통해 사용자의 발화를 음성 입력으로 수신할 수 있다. 다양한 실시 예에 따르면, 상기 동작 501에서 전자 장치 101은 거리 검출 모듈 180을 통해 사용자와 전자 장치 101의 거리를 측정할 수 있다
동작 503에서, 전자 장치 101의 프로세서 120은, 동작 501에서 수신한 음성 입력을 분석하여, 사용자에 의한 발화의 성량을 획득할 수 있고, 상기 획득된 발화의 성량에 기반하여 사용자와 전자 장치 101 사이의 거리를 판단할 수 있다. 예를 들어, 전자 장치 101의 프로세서 120은, 메모리 130에 저장된, 사용자에 의한 발화의 성량과 사용자와 전자 장치 101 사이의 거리를 대응시킨 데이터베이스를 이용하여 상기 거리를 판단할 수 있다.
다양한 실시 예에 따르면, 전자 장치 101의 프로세서 120은, 발화의 성량으로부터 도출되는 거리와, 거리 검출 모듈 180에 의해 산출된 거리를 고려하여, 상기 사용자와 상기 전자 장치 사이의 거리를 판단할 수도 있다. 전자 장치 101은, 발화의 성량으로부터 도출되는 거리와 거리 검출 모듈 180에 의해 산출된 거리를 모두 고려하므로, 거리 측정의 정확도가 향상될 수 있다.
동작 505에서, 전자 장치 101의 프로세서 120은, 동작 503에서 판단된 사용자와 전자 장치 101 사이의 거리에 따라서 콘텐츠의 출력 방식을 결정할 수 있다.
일 실시 예에 따르면, 전자 장치 101의 프로세서 120은, 사용자와 전자 장치 101 사이의 거리가 멀어짐에 따라 대응 콘텐츠의 출력 크기를 높이고, 사용자와 전자 장치 101 사이의 거리가 가까워짐에 따라, 대응 콘텐츠의 출력 크기를 낮추도록 콘텐츠의 출력 방식을 결정할 수 있다.
사용자와 전자 장치 사이의 거리 콘텐츠의 출력 크기
1m 미만 40dB
1m 이상 2m 미만 45dB
··· ···
5m 이상 65dB
예를 들면, 상기 [표 1]과 같이, 전자 장치 101은 사용자와 전자 장치 101 사이의 거리가 1m 미만일 때 상기 콘텐츠의 출력 크기를 40dB로 설정하고, 매 1m만큼 멀어질 때마다 5dB만큼 출력 크기를 높일 수 있다. 예를 들어, 전자 장치 101로부터 멀리 떨어진 사용자는 적절한 출력 크기로 대응 콘텐츠를 음성으로 제공받을 수 있다.
한편, [표 1]과 같은 대응 테이블은 일례로서 이에 제한되지 않는다. 예를 들어, 사용자와 전자 장치 101 사이의 거리 및 상기 거리에 따른 콘텐츠의 출력 크기는 더욱 세부화되어 설정될 수 있으며, 구간 별 출력 크기의 차이도 다양하게 설정될 수 있다.
일 실시 예에 따르면, 전자 장치 101의 프로세서 120은, 사용자와 전자 장치 101 사이의 거리가 멀어짐에 따라 콘텐츠의 출력 속도를 높이고, 사용자와 전자 장치 101 사이의 거리가 가까워짐에 따라, 상기 콘텐츠의 출력 속도를 낮추도록 상기 콘텐츠의 출력 방식을 결정할 수 있다.
사용자와 전자 장치 사이의 거리 콘텐츠의 출력 속도
1m 미만 150WPM
1m 이상 2m 미만 160WPM
2m 이상 3m 미만 170WPM
··· ···
5m 이상 200WPM
예를 들면, 상기 [표 2]과 같이, 전자 장치 101은, 사용자와 전자 장치 101 사이의 거리가 1m미만일 때 상기 콘텐츠의 출력 속도를 표준 속도(예: 150 WPM(word per minute))로 설정하고, 매 1m만큼 멀어질 때마다 10WPM만큼 출력 속도를 높일 수 있다. 다만, 사용자와 전자 장치 101 사이의 거리가 5m 이상이 되는 경우, 사용자와 전자 장치 101 사이의 거리가 더욱 멀어지더라도, 지정된 속도(예: 200WPM) 이상으로는 상기 콘텐츠의 출력 속도가 증가하지 않을 수 있다.
예를 들어, 전자 장치 101로부터 멀리 떨어진 상태에서, 상기 전자 장치 101에 대해 콘텐츠를 음성 입력으로 요청하는 사용자는, 일반적으로 조속한 응답을 원하는 경우가 많으므로, 적절한 출력 속도로 대응 콘텐츠를 음성으로 제공받을 수 있다.
한편, [표 1]의 경우와 마찬가지로, [표 2]의 대응 테이블은 일례로서 이에 제한되지 않는다. 예를 들어, 사용자와 전자 장치 101 사이의 거리 및 상기 거리에 따른 콘텐츠의 출력 속도는 더욱 세부적으로 설정될 수 있다.
또한, 일 실시 예에 따르면, 전자 장치 101의 프로세서 120은, 사용자와 전자 장치 101 사이의 거리가 멀어짐에 따라 콘텐츠의 출력 정보량을 낮추고, 상기 사용자와 상기 전자 장치 사이의 거리가 가까워짐에 따라, 상기 콘텐츠의 출력 정보량을 높이도록 상기 콘텐츠의 출력 방식을 결정할 수 있다.
사용자와 전자 장치 사이의 거리 콘텐츠의 출력 정보량
1m 미만 오리지널 콘텐츠의 정보량
1m 이상 2m 미만 제1 수준 축약 콘텐츠
2m 이상 3m 미만 제2 수준 축약 콘텐츠
3m 이상 4m 미만 제3 수준 축약 콘텐츠
5m 이상 제4 수준 축약 콘텐츠(요약 콘텐츠)
예를 들면, 상기 [표 3]과 같이, 상기 콘텐츠의 출력 정보량은 사용자와 전자 장치 101 사이의 거리가 1m미만일 때 가장 높게 설정될 수 있다. 예컨대, 상기 가장 높은 출력 정보량을 가진 콘텐츠는 음성 입력에 대응하는 가장 상세한 오리지널 콘텐츠에 해당할 수 있다. 상기 전자 장치 101은 매 1m만큼 멀어질 때마다 상기 오리지널 콘텐츠의 축약 수준을 높여, 출력 정보량을 낮출 수 있다.
예를 들면, "오늘 날씨를 알려줘"라는 음성 입력에 대응하는 오리지널 콘텐츠는 "①2015년 7월 1일 날씨는 ②흐린 후 비가오겠습니다. ③최고 기온은 28˚C 최저 기온은 18˚C 이며, ④강수량은 10mm입니다. ⑤외출시 우산을 준비하세요."에 해당할 수 있다. 이때, 제1 수준 축약 콘텐츠는 상기 오리지널 콘텐츠 중 ⑤번 정보를 제외한 ①번 내지 ④번의 정보를 포함할 수 있고, 제2 수준 축약 콘텐츠는 ③, ⑤번 정보를 제외한 ①, ②, 및 ④번의 정보를 포함할 수 있다. 또한, 제3 수준 축약 콘텐츠는 ①, 및 ②번의 정보만을 포함할 수 있으며, 제4 수준 축약 콘텐츠(요약 콘텐츠)는 ②번의 정보만을 포함할 수 있다. 이와 같이, 콘텐츠의 출력 정보량은, 해당 콘텐츠를 가장 자세하게 묘사하는 오리지널 콘텐츠의 일부가 재구성됨으로써 변화 또는 조절될 수 있다.
예를 들어, 전자 장치 101로부터 멀리 떨어진 상태에서 음성 입력으로 전자 장치 101에 대해 콘텐츠를 요청하는 사용자는, 일반적으로 상세한 콘텐츠보다 상기 음성 입력에 대응되는 핵심 콘텐츠을 원하는 경우가 많으므로, 전자 장치 101와의 거리에 따라서 적절한 출력 정보량을 가진 대응 콘텐츠를 제공받을 수 있다.
한편, [표 1] 및 [표 2]의 경우와 마찬가지로, [표 3]의 대응 테이블은 일례로서 이에 제한되지 않는다. 예를 들어, 사용자와 전자 장치 101 사이의 거리는 더욱 세부적으로 설정될 수 있으며, 각 거리 구간별 축약 수준도 다양하게 설정될 수 있다.
동작 507에서, 전자 장치 101은 동작 505에서 결정된 출력 방식에 따라서, 오디오 출력 모듈 152를 통해 상기 수신된 음성 입력에 대응되는 콘텐츠를 음성으로 출력할 수 있다.
도 5b는 본 발명의 일 실시 예에 따른 콘텐츠 제공 방법을 나타낸다.
도 5b를 참조하면, 본 발명의 일 실시 예에 따른 콘텐츠 제공 방법은, 동작 502 내지 508을 포함할 수 있다. 예를 들어, 상기 동작 502 내지 동작 508은 도 3의 전자 장치 101에 의해 수행될 수 있으며, 도 4 및 도 5a와 관련하여 중복되는 설명은 생략될 수 있다.
동작 502에서, 전자 장치 101은 오디오 입력 모듈 151을 통해 사용자의 발화를 음성 입력으로 수신할 수 있다. 다양한 실시 예에 따르면, 상기 동작 502에서 전자 장치 101은 거리 검출 모듈 180을 통해 상기 전자 장치 101과 사용자 사이의 거리를 측정할 수 있다. 예를 들어 상기 전자 장치 101과 사용자 사이의 거리는 지정된 주기에 따라 실시간으로 측정될 수 있다.
동작 504에서, 전자 장치 101의 프로세서 120은, 동작 501에서 수신한 음성 입력을 분석하여, 사용자의 이동 속도(단위 시간당 거리 변화량)를 판단할 수 있다. 예를 들어, 상기 프로세서 120은 상기 음성 입력의 주파수 변화, 발화 성량 변화 등을 기반으로 이동 속도를 산출하거나, 기 공지된 다양한 음성 처리를 통해 사용자의 이동 속도를 판단할 수 있다.
다양한 실시 예에 따르면, 전자 장치 101의 프로세서 120은, 상기 거리 검출 모듈 180을 통해 측정되는 거리의 변화량을 분석하여(예: 측정된 거리의 시간 미분 등) 상기 사용자의 이동 속도를 판단할 수 있다. 또한, 상기 프로세서 120은 상기 음성 입력의 분석으로부터 도출되는 이동 속도와, 측정 거리에 기반한 이동 속도를 고려하여, 상기 사용자의 이동 속도를 판단할 수도 있다. 전자 장치 101은, 음성 입력으로부터 도출되는 이동 속도와 측정 거리에 기반한 이동 속도를 모두 고려하므로, 이동 속도 측정의 정확도를 향상시킬 수 있다.
동작 506에서, 프로세서 120은, 동작 504에서 판단된 사용자의 이동 속도에 따라서, 대응 콘텐츠의 출력 방식을 결정할 수 있다. 예를 들면, 프로세서 120은, 상기 판단된 사용자의 이동 속도에 따라서, 콘텐츠의 출력 크기, 콘텐츠의 출력 속도, 콘텐츠의 출력 정보량 중 적어도 하나를 변화시킬 수 있다.
일 실시 예에 따르면, 전자 장치 101의 프로세서 120은, 사용자의 이동 속도의 방향(예: 사용자가 전자 장치 101로부터 멀어지는 방향 또는 가까워지는 방향), 및/또는 상기 이동 속도의 크기에 따라서 대응 콘텐츠의 출력 크기를 변화시킬 수 있다. 예를 들어, 사용자의 이동 속도에 따른 콘텐츠 출력 크기는 [표 4]와 같이 대응될 수 있다.
사용자의 이동 속도 콘텐츠의 출력 크기
5km/h 이상으로 접근 35dB
2km/h 이상 5km/h 미만으로 접근 40dB
2km/h 미만으로 접근 45dB
0km/h (정지 상태) 50dB
2km/h 미만으로 멀어짐 55dB
2km/h 이상 5km/h 미만으로 멀어짐 60dB
5km/h 이상 8km/h 미만으로 멀어짐 65dB
8km/h 이상으로 멀어짐 70dB
상기 [표 4]를 참조하면, 전자 장치 101은 사용자의 정지 상태에 있을 때(이동속도 = 0) 콘텐츠의 출력 크기를 50dB로 설정하고, 사용자가 전자 장치 101에 접근하는 속도가 빨라질 수록 출력 크기를 낮출 수 있다. 또한, 사용자가 전자 장치 101에 멀어지는 속도가 빨라질 수록 출력 크기를 높일 수 있다. 예를 들어, 사용자는 이동 속도에 따라서 적절한 출력 크기로 대응 콘텐츠를 음성으로 제공받을 수 있다.
상기 [표 4]과 같은 대응 테이블은 일례로서 이에 제한되지 않는다. 예를 들어, 사용자의 이동 속도 및 상기 이동 속도에 따른 콘텐츠의 출력 크기는 더욱 세부화되어 설정될 수 있으며, 이동 속도 구간 별 출력 크기의 차이도 다양하게 설정될 수 있다.
또한, 일 실시 예에 따르면, 전자 장치 101의 프로세서 120은, 사용자의 이동 속도의 방향(예: 사용자가 전자 장치 101로부터 멀어지는 방향 또는 가까워지는 방향), 및/또는 상기 이동 속도의 크기에 따라서 대응 콘텐츠의 출력 크기를 변화시킬 수 있다.예를 들어, 사용자의 이동 속도에 따른 콘텐츠 출력 속도는 [표 5]와 같이 대응될 수 있다.
사용자의 이동 속도 콘텐츠의 출력 속도
5km/h 이상으로 접근 135WPM
2km/h 이상 5km/h 미만으로 접근 140WPM
2km/h 미만으로 접근 145WPM
0km/h (정지 상태) 150WPM
2km/h 미만으로 멀어짐 160WPM
2km/h 이상 5km/h 미만으로 멀어짐 170WPM
5km/h 이상 8km/h 미만으로 멀어짐 180WPM
8km/h 이상으로 멀어짐 190WPM
예를 들면, 상기 [표 5]와 같이, 전자 장치 101은, 사용자의 정지 상태에 있을 때(이동속도 = 0) 상기 콘텐츠의 출력 속도를 표준 속도(예: 150 WPM)로 설정하고, 사용자가 전자 장치 101에 접근하는 속도가 빨라질 수록 출력 속도를 낮출 수 있다. 또한, 사용자가 전자 장치 101에 멀어지는 속도가 빨라질 수록 출력 속도를 높일 수 있다. 다만, 사용자가 전자 장치 101에 접근하는 속도가 5km/h 이상이 되는 경우, 또는 사용자가 전자 장치 101로부터 멀어지는 속도가 8km/h 이상이 되는 경우에는 기 감소/증가시킨 출력 속도를 유지할 수 있다.
예를 들어, 전자 장치 101로부터 빠르게 멀어지면서 상기 전자 장치 101에 대해 콘텐츠를 음성 입력으로 요청하는 사용자는, 일반적으로 조속한 응답을 원하는 경우가 많다. 이 경우 사용자는, 자신의 이동 상황에 적합한 출력 속도로 대응 콘텐츠를 음성으로 제공받을 수 있다.
한편, [표 4]의 경우와 마찬가지로, [표 5]의 대응 테이블은 일례로서 이에 제한되지 않는다. 예를 들어, 사용자의 출력 속도 및 상기 거리에 따른 콘텐츠의 출력 속도는 더욱 세부적으로 설정될 수 있다.
또한, 일 실시 예에 따르면, 전자 장치 101의 프로세서 120은, 사용자의 이동 속도의 방향(예: 사용자가 전자 장치 101로부터 멀어지는 방향 또는 가까워지는 방향), 및/또는 상기 이동 속도의 크기에 따라서 대응 콘텐츠의 출력 크기를 변화시킬 수 있다. 예를 들어, 사용자의 이동 속도에 따른 콘텐츠 출력 정보량은 [표 6]과 같이 대응될 수 있다.
사용자의 이동 속도 콘텐츠의 출력 정보량
5km/h 이상으로 접근 오리지널 콘텐츠의 정보량
2km/h 이상 5km/h 미만으로 접근 오리지널 콘텐츠의 정보량
2km/h 미만으로 접근 오리지널 콘텐츠의 정보량
0km/h (정지 상태) 오리지널 콘텐츠의 정보량
2km/h 미만으로 멀어짐 제1 수준 축약 콘텐츠
2km/h 이상 5km/h 미만으로 멀어짐 제2 수준 축약 콘텐츠
5km/h 이상 8km/h 미만으로 멀어짐 제3 수준 축약 콘텐츠
8km/h 이상으로 멀어짐 제4 수준 축약 콘텐츠(요약 콘텐츠)
상기 [표 6]을 참조하면, 출력 정보량의 축약 수준은, 사용자의 이동 속도가 전자 장치 101로부터 멀어지는 방향으로 빨라질수록 높아질 수 있다. 즉, 빠르게 이동할수록 사용자는 축약 수준이 높은 콘텐츠를 제공받을 수 있다. 반면, 사용자가 정지 상태에 있거나, 전자 장치 101에 접근하는 경우, 상기 사용자는 가장 축약되지 않은 (가장 상세한) 오리지널 콘텐츠를 제공받을 수 있다. 전술한 바와 같이 콘텐츠의 출력 정보량은, 해당 콘텐츠를 가장 자세하게 묘사하는 오리지널 콘텐츠의 일부가 재구성됨으로써 변화 또는 조절될 수 있다.
예를 들어, 전자 장치 101로부터 빠르게 멀어지면서 상기 전자 장치 101에 대해 콘텐츠를 음성 입력으로 요청하는 사용자는, 일반적으로 상세한 콘텐츠보다 핵심 콘텐츠를 원하는 경우가 많다. 상기 실시예에 따르면, 전자 장치 101은, 사용자의 이동 상황에 적합한 출력 정보량을 가진 콘텐츠를 상기 사용자에게 제공할 수 있다.
한편, [표 4] 및 [표 5]의 경우와 마찬가지로, [표 6]의 대응 테이블은 일례로서 이에 제한되지 않는다. 예를 들어, 사용자의 이동 속도는 더욱 세부적으로 설정될 수 있으며, 각 속도 구간별 축약 수준도 다양하게 설정될 수 있다.
동작 508에서, 전자 장치 101은 동작 505에서 결정된 출력 방식에 따라서, 오디오 출력 모듈 152를 통해 상기 수신된 음성 입력에 대응되는 콘텐츠를 음성으로 출력할 수 있다.
도 6은 본 발명의 일 실시 예에 따른 콘텐츠 제공 방법을 나타낸다.
도 6을 참조하면, 본 발명의 일 실시 예에 따른 콘텐츠 제공 방법은, 동작 601 내지 607을 포함할 수 있다. 예를 들어, 상기 동작 601 내지 동작 607는 도 3의 전자 장치 101에 의해 수행될 수 있으며, 도 4 및 도 5와 관련하여 중복되는 설명은 생략될 수 있다.
동작 601에서, 전자 장치 101은 오디오 입력 모듈 151을 통해 사용자의 발화를 음성 입력으로 수신할 수 있다.
동작 603에서, 전자 장치 101의 프로세서 120은, 동작 601에서 수신한 음성 입력을 분석하여, 사용자에 의한 발화의 속도를 획득할 수 있다. 상기 발화의 속도는, 예를 들면, 음성 입력에 STT(speech to text) 기술을 적용하여, 인식되는 단어의 인식 속도에 대응할 수 있다.
동작 605에서, 전자 장치 101의 프로세서 120은, 동작 603에서 판단된 사용자의 발화 속도에 따라서, 콘텐츠의 출력 방식을 결정할 수 있다.
일 실시 예에 따르면, 전자 장치 101의 프로세서 120은, 사용자에 의한 발화의 속도가 높아짐에 따라서 대응 콘텐츠의 출력 속도를 높이고, 상기 발화의 속도가 낮아짐에 따라서 대응 콘텐츠의 출력 속도를 낮추도록 상기 콘텐츠의 출력 방식을 결정할 수 있다.
사용자 발화 속도 콘텐츠의 출력 속도
150WPM 미만 150WPM
150WPM 이상 160WPM 미만 160WPM
160WPM 이상 170WPM 미만 170WPM
··· ···
240WPM 이상 250WPM 미만 250WPM
250WPM 이상 250WPM
예를 들면, 상기 [표 7]과 같이, 전자 장치 101은 사용자에 의한 발화 속도가 150WPM 미만일 때 콘텐츠의 출력 속도는 150WPM로 설정될 수 있다. 상기 전자 장치 101은 상기 사용자에 의한 발화 속도가 증가함에 따라서 매 10WPM 구간마다 상기 콘텐츠의 출력 속도를 10WPM만큼 증가시킬 수 있다. 다만, 전자 장치 101은 사용자에 의한 발화 속도가 지정된 속도(250WPM) 이상으로 빨라지면, 상기 사용자에 의한 발화 속도가 더욱 증가 하더라도 상기 콘텐츠의 출력 속도를 비례하여 증가시키지 아니할 수 있다. 상기를 통해, 전자 장치 101에 대하여 음성 입력을 제공하는 사용자는 적절한 출력 속도로 대응 콘텐츠를 음성으로 제공받을 수 있다.
상기 사용자 발화 속도의 구간 및 이에 대응하는 콘텐츠 출력 속도는 예시로서, [표 7]의 대응 테이블에 제한되지 않는다. 예를 들면, 상기 콘텐츠 출력 속도는 상기 사용자 발화 속도에 연속적으로 비례하게 증가할 수 있도록 설정될 수도 있다. 또한, 예를 들어, 사용자의 발화 속도 구간 및 이에 대응하는 콘텐츠의 출력 속도는 더욱 세부화되어 설정될 수 있으며, 구간 별 출력 속도도 다양하게 설정될 수 있다.
또한, 일 실시 예에 따르면, 전자 장치 101의 프로세서 120은, 사용자에 의한 발화의 속도가 높아짐에 따라 상기 콘텐츠의 출력 정보량을 낮추고, 상기 발화의 속도가 낮아짐에 따라 상기 콘텐츠의 출력 정보량을 높이도록 설정할 수 있다.
사용자 발화 속도 콘텐츠의 출력 정보량
170WPM 미만 오리지널 콘텐츠의 정보량
170WPM 이상 190WPM 미만 제1 수준 축약 콘텐츠의 정보량
190WPM 이상 210WPM 미만 제2 수준 축약 콘텐츠의 정보량
210WPM 이상 230WPM 미만 제3 수준 축약 콘텐츠의 정보량
230WPM 이상 제4 수준 축약 콘텐츠의 정보량
예를 들면, 상기 [표 8]과 같이, 상기 콘텐츠의 출력 정보량은 사용자의 발화 속도가 170WPM 미만일 때 가장 높게 설정될 수 있다. 예컨대, 상기 가장 높은 출력 정보량을 가진 콘텐츠는 음성 입력에 대응하는 가장 상세한 오리지널 콘텐츠에 해당할 수 있다. 상기 전자 장치 101은 발화 속도가 매 20WPM만큼 증가할 때마다 상기 오리지널 콘텐츠의 축약 수준을 높여, 출력 정보량을 낮출 수 있다.
전자 장치 101에 대해 빠른 속도로 발화하여 콘텐츠를 요청하는 사용자는, 핵심되는 콘텐츠를 빠르게 제공받기 원하는 사용자에 해당할 수 있다. 이러한 경우 전자 장치 101는 상기 사용자의 의도에 부응하여 적절한 출력 정보량을 가진 대응 콘텐츠를 제공할 수 있다.
상기 [표 8]의 대응 테이블은 일례로서 이에 제한되지 않는다. 예를 들어, 사용자와 전자 장치 101 사이의 거리는 더욱 세부적으로 설정될 수 있으며, 각 구간별 축약 수준도 다양하게 설정될 수 있다.
동작 607에서, 전자 장치 101은 동작 605에서 결정된 출력 방식에 따라서, 오디오 출력 모듈 152를 통해 상기 수신된 음성 입력에 대응되는 콘텐츠를 음성으로 출력할 수 있다.
도 7은 본 발명의 일 실시 예에 따른 콘텐츠 제공 방법을 나타낸다.
도 7을 참조하면, 본 발명의 일 실시 예에 따른 콘텐츠 제공 방법은, 동작 701 내지 707을 포함할 수 있다. 예를 들어, 상기 동작 701 내지 동작 707는 도 3의 전자 장치 101에 의해 수행될 수 있으며, 도 4 내지 도 6과 관련하여 중복되는 설명은 생략될 수 있다.
동작 701에서, 전자 장치 101은 오디오 입력 모듈 151을 통해 사용자의 발화를 음성 입력으로 수신할 수 있다.
동작 703에서, 전자 장치 101의 프로세서 120은, 동작 701에서 수신한 음성 입력을 분석하여, 사용자에 의한 발화 중에서 미리 지정된 키워드를 검출할 수 있다. 상기 발화의 속도는, 예를 들면, 음성 입력의 분석을 통해 인식한 단어의 인식 속도에 대응할 수 있다.
동작 705에서, 전자 장치 101의 프로세서 120은, 동작 703에서 검출한 키워드에 따라서, 콘텐츠의 출력 방식을 결정할 수 있다.
예컨대, 프로세서 120은, 사용자의 발화에 미리 지정된 제1 키워드가 포함되어 있으면 상기 콘텐츠의 출력 속도를 높일 수 있고, 제2 키워드가 포함되어 있으면 상기 콘텐츠의 출력 속도를 줄일 수 있다. 또한, 예컨대, 프로세서 120은, 상기 사용자의 발화에 미리 지정된 제3 키워드가 포함되어 있으면 상기 콘텐츠의 출력 크기를 높일 수 있고, 제4 키워드가 포함되어 있으면 상기 콘텐츠의 출력 크기를 낮출 수 있다. 또한, 또한, 예컨대, 프로세서 120은, 상기 사용자의 발화에 미리 지정된 제5 키워드가 포함되어 있으면, 상기 콘텐츠의 출력 정보량을 늘릴 수 있고, 미리 지정된 제6 키워드가 포함되어 있으면, 상기 콘텐츠의 출력 정보량을 줄일 수 있다.
지정된 키워드 콘텐츠의 출력 방식
제1 키워드: "빨리", "어서", "얼른", 등 콘텐츠의 출력 속도를 높임
제2 키워드: "천천히", "느리게", 등 콘텐츠의 출력 속도를 낮춤
제3 키워드: "잘 들리게", "큰 소리로", 등 콘텐츠의 출력 크기를 높임
제4 키워드: "조용하게", "작은 소리로", 등 콘텐츠의 출력 크기를 낮춤
제5 키워드: "자세히", "깊이 있게", 등 콘텐츠의 출력 정보량을 늘림
제6 키워드: "간략하게", "요약해서", 등 콘텐츠의 출력 정보량을 줄임
상기 [표 9]는 상기 제1 키워드 내지 제6 키워드와 다양한 콘텐츠 출력 방식들의 대응 예시이다. 상기와 같은 키워드를 통해, 전자 장치 101에 대하여 음성 입력을 제공하는 사용자는, 그 의사에 부합하는 출력 방식으로 대응 콘텐츠를 음성으로 제공받을 수 있다.
상기 [표 9]에서 설명된, 제1 키워드 내지 제6 키워드와 콘텐츠 출력 방식의 대응은 예시로서, 이에 제한되지 않는다. 예를 들면, 상기 제1 키워드 내지 제6 키워드는 상기 제시된 것 이외에도 다양한 유사어를 포함할 수 있으며, 상기 출력 방식 역시 다양하게 설정될 수 있다. 일부 실시 예에 따르면, 상기 제1 키워드 내지 제6 키워드는 사용자에 의해 미리 지정되거나, 또는 패턴 인식을 이용한 기계 학습(machine learning)을 통해 자동적으로 설정될 수도 있다. 또한, 상기 제1 키워드 내지 제6 키워드는 '단어(word)'에 제한되지 않으며, 구(句), 문장으로도 구현될 수 있다.
동작 707에서, 전자 장치 101은 동작 705에서 결정된 출력 방식에 따라서, 오디오 출력 모듈 152를 통해 상기 수신된 음성 입력에 대응되는 콘텐츠를 음성으로 출력할 수 있다.
도 8은 본 발명의 일 실시 예에 따른 콘텐츠 제공 방법을 나타낸다.
도 8을 참조하면, 본 발명의 일 실시 예에 따른 콘텐츠 제공 방법은, 동작 801 내지 807을 포함할 수 있다. 예를 들어, 상기 동작 801 내지 동작 807는 도 3의 전자 장치 101에 의해 수행될 수 있으며, 도 4 내지 도 7과 관련하여 중복되는 설명은 생략될 수 있다.
동작 801에서, 전자 장치 101은 오디오 입력 모듈 151을 통해 사용자의 발화를 음성 입력으로 수신할 수 있다.
동작 803에서, 전자 장치 101의 프로세서 120은, 동작 801에서 수신한 음성 입력을 분석하여, 사용자의 감정 상태를 판단할 수 있다. 상기 음성 입력을 분석하여 감정 상태를 판단하는 방법으로는 다양한 방법이 있을 수 있다.
예를 들면, 사용자의 감정 상태는, 음성 입력 신호로부터 추출된 특징(예: 에너지, 포만트, 템포, 지속시간, 주파수 변이(jitter), 진폭 변이(shimmer) 등)에 기반한 특징 벡터에, SVM(support vector machine) 패턴 분류기를 적용함으로써 판단될 수 있다. 일반적으로 상기 감정 상태는 6가지의 감정, 즉, 화남(angry), 지루함(bored), 기쁨(happy), 중립(neutral), 슬픔(sad) 및 놀람(surprised)으로 분류될 수 있다.
상기 이 외에도, 예를 들면, 사용자의 감정 상태는 사용자의 발화의 속도, 발화의 성량, 또는 발화에 포함된 키워드 중 적어도 하나에 기초하여 판단될 수 있다. 예를 들어, 프로세서 120은, 사용자에 의한 발화의 속도가 지정된 속도 이상으로 높아지고, 상기 발화의 성량이 지정된 성량 이상으로 높아지면, 사용자의 감정 상태를 "흥분" 상태에 있는 것으로 판단할 수 있다. 상기 감정 상태는 패턴 인식을 이용한 기계 학습을 통해 자동적으로 설정될 수도 있다. 예를 들어, "흥분" 또는 "비흥분(정상)"상태를 판단함에 있어서, 상기 지정된 발화 속도, 및/또는 지정된 발화 성량은 일정 기간 동안 누적된 데이터 이력을 통해 자동적으로 설정될 수 있다.
동작 805에서, 전자 장치 101의 프로세서 120은, 동작 803에서 판단된 사용자의 감정 상태에 따라서, 콘텐츠의 출력 방식을 결정할 수 있다. 예를 들어, 동작 803에서 판단된 사용자의 감정 상태에 대응하여, 가장 적합한 콘텐츠의 출력 속도, 출력 크기, 또는 출력 정보량을 조절할 수 있다.
동작 807에서, 전자 장치 101은 동작 805에서 결정된 출력 방식에 따라서, 오디오 출력 모듈 152를 통해 상기 수신된 음성 입력에 대응되는 콘텐츠를 음성으로 출력할 수 있다.
상기 도 4 내지 도 8에 기재된 각 동작들은 각각 독립적으로 설명되었으나, 다양한 실시예에 따르면, 상기 각 동작의 일부 또는 전부는 다양하게 조합되어 동시 또는 이시(異時)에 수행될 수 있다. 이를 통해, 전자 장치 101은 음성 입력을 수행하는 사용자가 처한 상황에 가장 적합한 출력 방식으로, 대응 콘텐츠를 제공할 수 있다.
도 9는 다양한 실시 예에 따른 전자 장치의 블록도를 나타낸다.
도 9를 참조하면, 전자 장치 901은, 예를 들면, 도 1a, 도 1b, 또는 도 2에 도시된 전자 장치 100에 포함될 수 있으며, 도 3에 도시된 전자 장치 101의 전체 또는 일부에 포함될 수도 있다. 전자 장치 901은 하나 이상의 프로세서(예: AP) 910, 통신 모듈 920, 가입자 식별 모듈 924, 메모리 930, 센서 모듈 940, 입력 장치 950, 디스플레이 960, 인터페이스 970, 오디오 모듈 980, 카메라 모듈 991, 전력 관리 모듈 995, 배터리 996, 인디케이터 997, 및 모터 998을 포함할 수 있다.
프로세서 910(예: 도 3의 프로세서 130)은, 예를 들면, 운영 체제 또는 응용 프로그램을 구동하여 프로세서 910에 연결된 다수의 하드웨어 또는 소프트웨어 구성요소들을 제어할 수 있고, 각종 데이터 처리 및 연산을 수행할 수 있다. 프로세서 910은, 예를 들면, SoC(system on chip)로 구현될 수 있다. 한 실시 예에 따르면, 프로세서 910은 GPU(graphic processing unit) 및/또는 이미지 신호 프로세서(image signal processor)를 더 포함할 수 있다. 프로세서 910은 도 9에 도시된 구성요소들 중 적어도 일부(예: 셀룰러 모듈 921)를 포함할 수도 있다. 프로세서 910은 다른 구성요소들(예: 비휘발성 메모리) 중 적어도 하나로부터 수신된 명령 또는 데이터를 휘발성 메모리에 로드(load)하여 처리하고, 다양한 데이터를 비휘발성 메모리에 저장(store)할 수 있다.
통신 모듈 920은, 도 3의 상기 통신 인터페이스 170과 동일 또는 유사한 구성을 가질 수 있다. 통신 모듈 920은, 예를 들면, 셀룰러 모듈 921, Wi-Fi 모듈 923, 블루투스 모듈 925, GNSS 모듈 927(예: GPS 모듈, Glonass 모듈, Beidou 모듈, 또는 Galileo 모듈), NFC 모듈 928 및 RF(radio frequency) 모듈 929를 포함할 수 있다.
셀룰러 모듈 921은, 예를 들면, 통신망을 통해서 음성 통화, 영상 통화, 문자 서비스, 또는 인터넷 서비스 등을 제공할 수 있다. 한 실시 예에 따르면, 셀룰러 모듈 921은 가입자 식별 모듈(예: SIM 카드) 924을 이용하여 통신 네트워크 내에서 전자 장치 901의 구별 및 인증을 수행할 수 있다. 한 실시 예에 따르면, 셀룰러 모듈 921은 프로세서 910이 제공할 수 있는 기능 중 적어도 일부 기능을 수행할 수 있다. 한 실시 예에 따르면, 셀룰러 모듈 921은 커뮤니케이션 프로세서(CP)를 포함할 수 있다.
Wi-Fi 모듈 923, 블루투스 모듈 925, GNSS 모듈 927, 또는 NFC 모듈 928 각각은, 예를 들면, 해당하는 모듈을 통해서 송수신되는 데이터를 처리하기 위한 프로세서를 포함할 수 있다. 어떤 실시 예에 따르면, 셀룰러 모듈 921, Wi-Fi 모듈 923, 블루투스 모듈 925, GNSS 모듈 927 또는 NFC 모듈 928 중 적어도 일부(예: 두 개 이상)는 하나의 IC(integrated chip) 또는 IC 패키지 내에 포함될 수 있다.
RF 모듈 929는, 예를 들면, 통신 신호(예: RF 신호)를 송수신할 수 있다. RF 모듈 929는, 예를 들면, 트랜시버(transceiver), PAM(power amp module), 주파수 필터(frequency filter), LNA(low noise amplifier), 또는 안테나 등을 포함할 수 있다. 다른 실시 예에 따르면, 셀룰러 모듈 921, Wi-Fi 모듈 923, 블루투스 모듈 925, GNSS 모듈 927 또는 NFC 모듈 928 중 적어도 하나는 별개의 RF 모듈을 통하여 RF 신호를 송수신할 수 있다.
가입자 식별 모듈 924는, 예를 들면, 가입자 식별 모듈을 포함하는 카드 및/또는 내장 SIM(embedded SIM)을 포함할 수 있으며, 고유한 식별 정보(예: ICCID (integrated circuit card identifier)) 또는 가입자 정보(예: IMSI (international mobile subscriber identity))를 포함할 수 있다.
메모리 930(예: 도 3의 메모리 130)는, 예를 들면, 내장 메모리 932 또는 외장 메모리 934를 포함할 수 있다. 내장 메모리 932는, 예를 들면, 휘발성 메모리(예: DRAM(dynamic RAM), SRAM(static RAM), 또는 SDRAM(synchronous dynamic RAM) 등), 비-휘발성(non-volatile) 메모리 (예: 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) 또는 노아플래시(NOR flash) 등), 하드 드라이브, 또는 SSD(solid state drive) 중 적어도 하나를 포함할 수 있다.
외장 메모리 934는 플래시 드라이브(flash drive), 예를 들면, CF(compact flash), SD(secure digital), Micro-SD, Mini-SD, xD(extreme digital), MMC(MultiMediaCard), 또는 메모리 스틱(memory stick) 등을 더 포함할 수 있다. 외장 메모리 934는 다양한 인터페이스를 통하여 전자 장치 901과 기능적으로 및/또는 물리적으로 연결될 수 있다.
센서 모듈 940은, 예를 들면, 물리량을 계측하거나 전자 장치 901의 작동 상태를 감지하여, 계측 또는 감지된 정보를 전기 신호로 변환할 수 있다. 센서 모듈 940은, 예를 들면, 제스처 센서 940A, 자이로 센서 940B, 기압 센서 940C, 마그네틱 센서 940D, 가속도 센서 940E, 그립 센서 940F, 근접 센서 940G, 컬러 센서 940H(예: RGB 센서), 생체 센서 940I, 온/습도 센서 940J, 조도 센서 940K, 또는 UV(ultra violet) 센서 940M 중의 적어도 하나를 포함할 수 있다. 추가적으로 또는 대체적으로, 센서 모듈 940은, 예를 들면, 후각 센서(E-nose sensor), EMG(electromyography) 센서, EEG(electroencephalogram) 센서, ECG(electrocardiogram) 센서, IR(infrared) 센서, 홍채 센서 및/또는 지문 센서를 포함할 수 있다. 센서 모듈 940은 그 안에 속한 적어도 하나 이상의 센서들을 제어하기 위한 제어 회로를 더 포함할 수 있다. 어떤 실시 예에서는, 전자 장치 901은 프로세서 910의 일부로서 또는 별도로, 센서 모듈 940을 제어하도록 구성된 프로세서를 더 포함하여, 프로세서 910이 슬립(sleep) 상태에 있는 동안, 센서 모듈 940을 제어할 수 있다.
입력 장치 950은, 예를 들면, 터치 패널(touch panel) 952, (디지털) 펜 센서(pen sensor) 954, 키(key) 956, 또는 초음파(ultrasonic) 입력 장치 958을 포함할 수 있다. 터치 패널 952는, 예를 들면, 정전식, 감압식, 적외선 방식, 또는 초음파 방식 중 적어도 하나의 방식을 사용할 수 있다. 또한, 터치 패널 952는 제어 회로를 더 포함할 수도 있다. 터치 패널 952는 택타일 레이어(tactile layer)를 더 포함하여, 사용자에게 촉각 반응을 제공할 수 있다.
(디지털) 펜 센서 954는, 예를 들면, 터치 패널의 일부이거나, 별도의 인식용 시트(sheet)를 포함할 수 있다. 키 956은, 예를 들면, 물리적인 버튼, 광학식 키, 또는 키패드를 포함할 수 있다. 초음파 입력 장치 958은 마이크(예: 마이크 988)를 통해, 입력 도구에서 발생된 초음파를 감지하여, 상기 감지된 초음파에 대응하는 데이터를 확인할 수 있다.
디스플레이 960(예: 디스플레이 160)은 패널 962, 홀로그램 장치 964, 또는 프로젝터 966을 포함할 수 있다. 패널 962는, 도 1의 디스플레이 160과 동일 또는 유사한 구성을 포함할 수 있다. 패널 962는, 예를 들면, 유연하게(flexible), 투명하게(transparent), 또는 착용할 수 있게(wearable) 구현될 수 있다. 패널 962는 터치 패널 952와 하나의 모듈로 구성될 수도 있다. 홀로그램 장치 964는 빛의 간섭을 이용하여 입체 영상을 허공에 보여줄 수 있다. 프로젝터 966은 스크린에 빛을 투사하여 영상을 표시할 수 있다. 스크린은, 예를 들면, 전자 장치 901의 내부 또는 외부에 위치할 수 있다. 한 실시 예에 따르면, 디스플레이 960은 상기 패널 962, 상기 홀로그램 장치 964, 또는 프로젝터 966를 제어하기 위한 제어 회로를 더 포함할 수 있다.
인터페이스 970은, 예를 들면, HDMI 972, USB 974, 광 인터페이스(optical interface) 976, 또는 D-sub(D-subminiature) 978을 포함할 수 있다. 추가적으로 또는 대체적으로, 인터페이스 970은, 예를 들면, MHL(mobile high-definition link) 인터페이스, SD 카드/MMC 인터페이스, 또는 IrDA(infrared data association) 규격 인터페이스를 포함할 수 있다.
오디오 모듈 980은, 예를 들면, 소리(sound)와 전기 신호를 쌍방향으로 변환시킬 수 있다. 오디오 모듈 980의 적어도 일부 구성요소는, 예를 들면, 도 3에 도시된 오디오 모듈 150에 포함될 수 있다. 오디오 모듈 980은, 예를 들면, 스피커 982, 리시버 984, 이어폰 986, 또는 마이크 988 등을 통해 입력 또는 출력되는 소리 정보를 처리할 수 있다.
카메라 모듈 991은, 예를 들면, 정지 영상 및 동영상을 촬영할 수 있는 장치로서, 한 실시 예에 따르면, 하나 이상의 이미지 센서(예: 전면 센서 또는 후면 센서), 렌즈, ISP(image signal processor), 또는 플래시(flash)(예: LED 또는 제논 램프(xenon lamp))를 포함할 수 있다. 예를 들면, 카메라 모듈 991은, 도 3의 거리 검출 모듈 180을 포함할 수 있다.
전력 관리 모듈 995는, 예를 들면, 전자 장치 901의 전력을 관리할 수 있다. 한 실시 예에 따르면, 전력 관리 모듈 995는 PMIC(power management integrated circuit), 충전 IC(charger integrated circuit), 또는 배터리 또는 연료 게이지(battery or fuel gauge)를 포함할 수 있다. PMIC는, 유선 및/또는 무선 충전 방식을 가질 수 있다. 무선 충전 방식은, 예를 들면, 자기공명 방식, 자기유도 방식 또는 전자기파 방식 등을 포함하며, 무선 충전을 위한 부가적인 회로, 예를 들면, 코일 루프, 공진 회로, 또는 정류기 등을 더 포함할 수 있다. 배터리 게이지는, 예를 들면, 배터리 996의 잔량, 충전 중 전압, 전류, 또는 온도를 측정할 수 있다. 배터리 996은, 예를 들면, 충전식 전지(rechargeable battery) 및/또는 태양 전지(solar battery)를 포함할 수 있다.
인디케이터 997은 전자 장치 901 혹은 그 일부(예: 프로세서 910)의 특정 상태, 예를 들면, 부팅 상태, 메시지 상태 또는 충전 상태 등을 표시할 수 있다. 모터 998은 전기적 신호를 기계적 진동으로 변환할 수 있고, 진동(vibration), 또는 햅틱(haptic) 효과 등을 발생시킬 수 있다. 도시되지는 않았으나, 전자 장치 901은 모바일 TV 지원을 위한 처리 장치(예: GPU)를 포함할 수 있다. 모바일 TV 지원을 위한 처리 장치는, 예를 들면, DMB(Digital Multimedia Broadcasting), DVB(Digital Video Broadcasting), 또는 미디어플로(MediaFLOTM) 등의 규격에 따른 미디어 데이터를 처리할 수 있다.
본 문서에서 기술된 구성요소들 각각은 하나 또는 그 이상의 부품(component)으로 구성될 수 있으며, 해당 구성 요소의 명칭은 전자 장치의 종류에 따라서 달라질 수 있다. 다양한 실시 예에서, 전자 장치는 본 문서에서 기술된 구성요소 중 적어도 하나를 포함하여 구성될 수 있으며, 일부 구성요소가 생략되거나 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 또한, 다양한 실시 예에 따른 전자 장치의 구성 요소들 중 일부가 결합되어 하나의 개체(entity)로 구성됨으로써, 결합되기 이전의 해당 구성 요소들의 기능을 동일하게 수행할 수 있다.
도 10은 다양한 실시 예에 따른 프로그램 모듈의 블록도를 나타낸다.
도 10을 참조하면, 한 실시 예에 따르면, 프로그램 모듈 1010(예: 프로그램 140)은 전자 장치(예: 전자 장치 101)에 관련된 자원을 제어하는 운영 체제(operating system, OS) 및/또는 운영 체제 상에서 구동되는 다양한 어플리케이션(예: 어플리케이션 프로그램 147)을 포함할 수 있다. 운영 체제는, 예를 들면, 안드로이드(android), iOS, 윈도우즈(windows), 심비안(symbian), 타이젠(tizen), 또는 바다(bada) 등이 될 수 있다.
프로그램 모듈 1010은 커널 1020, 미들웨어 1030, API 1060, 및/또는 어플리케이션 1070을 포함할 수 있다. 프로그램 모듈 1010의 적어도 일부는 전자 장치 상에 프리로드(preload) 되거나, 외부 전자 장치(예: 도 3의 전자 장치 102, 104, 서버 106 등)로부터 다운로드 가능하다.
커널 1020(예: 도 3의 커널 141)은, 예를 들면, 시스템 리소스 매니저 1021 또는 디바이스 드라이버 1023를 포함할 수 있다. 시스템 리소스 매니저 1021은 시스템 리소스의 제어, 할당, 또는 회수 등을 수행할 수 있다. 한 실시 예에 따르면, 시스템 리소스 매니저 1021은 프로세스 관리부, 메모리 관리부, 또는 파일 시스템 관리부 등을 포함할 수 있다. 디바이스 드라이버 1023은, 예를 들면, 디스플레이 드라이버, 카메라 드라이버, 블루투스 드라이버, 공유 메모리 드라이버, USB 드라이버, 키패드 드라이버, Wi-Fi 드라이버, 오디오 드라이버, 또는 IPC(inter-process communication) 드라이버를 포함할 수 있다.
미들웨어 1030은, 예를 들면, 어플리케이션 1070이 공통적으로 필요로 하는 기능을 제공하거나, 어플리케이션 1070이 전자 장치 내부의 제한된 시스템 자원을 효율적으로 사용할 수 있도록 API 1060을 통해 다양한 기능들을 어플리케이션 1070으로 제공할 수 있다. 한 실시 예에 따르면, 미들웨어 1030(예: 도 3의 미들웨어 143)은 런타임 라이브러리 1035, 어플리케이션 매니저(application manager) 1041, 윈도우 매니저(window manager) 1042, 멀티미디어 매니저(multimedia manager) 1043, 리소스 매니저(resource manager) 1044, 파워 매니저(power manager) 1045, 데이터베이스 매니저(database manager) 1046, 패키지 매니저(package manager) 1047, 연결 매니저(connectivity manager) 1048, 통지 매니저(notification manager) 1049, 위치 매니저(location manager) 1050, 그래픽 매니저(graphic manager) 1051, 또는 보안 매니저(security manager) 1052 중 적어도 하나를 포함할 수 있다.
런타임 라이브러리 1035는, 예를 들면, 어플리케이션 1070이 실행되는 동안에 프로그래밍 언어를 통해 새로운 기능을 추가하기 위해 컴파일러가 사용하는 라이브러리 모듈을 포함할 수 있다. 런타임 라이브러리 1035는 입출력 관리, 메모리 관리, 또는 산술 함수에 대한 기능 등을 수행할 수 있다.
어플리케이션 매니저 1041은, 예를 들면, 어플리케이션 1070 중 적어도 하나의 어플리케이션의 생명 주기(life cycle)를 관리할 수 있다. 윈도우 매니저 1042는 화면에서 사용하는 GUI 자원을 관리할 수 있다. 멀티미디어 매니저 1043은 다양한 미디어 파일들의 재생에 필요한 포맷을 파악하고, 해당 포맷에 맞는 코덱(codec)을 이용하여 미디어 파일의 인코딩(encoding) 또는 디코딩(decoding)을 수행할 수 있다. 리소스 매니저 1044는 어플리케이션 1070 중 적어도 어느 하나의 어플리케이션의 소스 코드, 메모리 또는 저장 공간 등의 자원을 관리할 수 있다.
파워 매니저 1045는, 예를 들면, 바이오스(BIOS: basic input/output system) 등과 함께 동작하여 배터리 또는 전원을 관리하고, 전자 장치의 동작에 필요한 전력 정보 등을 제공할 수 있다. 데이터베이스 매니저 1046은 어플리케이션 1070 중 적어도 하나의 어플리케이션에서 사용할 데이터베이스를 생성, 검색, 또는 변경할 수 있다. 패키지 매니저 1047은 패키지 파일의 형태로 배포되는 어플리케이션의 설치 또는 업데이트를 관리할 수 있다.
연결 매니저 1048은, 예를 들면, Wi-Fi 또는 블루투스 등의 무선 연결을 관리할 수 있다. 통지 매니저 1049는 도착 메시지, 약속, 근접성 알림 등의 사건(event)을 사용자에게 방해되지 않는 방식으로 표시 또는 통지할 수 있다. 위치 매니저 1050은 전자 장치의 위치 정보를 관리할 수 있다. 그래픽 매니저 1051은 사용자에게 제공될 그래픽 효과 또는 이와 관련된 사용자 인터페이스를 관리할 수 있다. 보안 매니저 1052는 시스템 보안 또는 사용자 인증 등에 필요한 제반 보안 기능을 제공할 수 있다. 한 실시 예에 따르면, 전자 장치(예: 도 3의 전자 장치 101)가 전화 기능을 포함한 경우, 미들웨어 1030은 전자 장치의 음성 또는 영상 통화 기능을 관리하기 위한 통화 매니저(telephony manager)를 더 포함할 수 있다.
미들웨어 1030은 전술한 구성요소들의 다양한 기능의 조합을 형성하는 미들웨어 모듈을 포함할 수 있다. 미들웨어 1030은 차별화된 기능을 제공하기 위해 운영 체제의 종류 별로 특화된 모듈을 제공할 수 있다. 또한, 미들웨어 1030은 동적으로 기존의 구성요소를 일부 삭제하거나 새로운 구성요소들을 추가할 수 있다.
API 1060(예: 도 3의 API 145)은, 예를 들면, API 프로그래밍 함수들의 집합으로, 운영 체제에 따라 다른 구성으로 제공될 수 있다. 예를 들면, 안드로이드 또는 iOS의 경우, 플랫폼 별로 하나의 API 셋을 제공할 수 있으며, 타이젠(tizen)의 경우, 플랫폼 별로 두 개 이상의 API 셋을 제공할 수 있다.
어플리케이션 1070(예: 도 3의 어플리케이션 프로그램 147)은, 예를 들면, 홈 1071, 다이얼러 1072, SMS/MMS 1073, IM(instant message) 1074, 브라우저 1075, 카메라 1076, 알람 1077, 컨택트 1078, 음성 다이얼 1079, 이메일 1080, 달력 1081, 미디어 플레이어 1082, 앨범 1083, 또는 시계 1084, 건강 관리(health care)(예: 운동량 또는 혈당 등을 측정), 또는 환경 정보 제공(예: 기압, 습도, 또는 온도 정보 등을 제공) 등의 기능을 수행할 수 있는 하나 이상의 어플리케이션을 포함할 수 있다.
한 실시 예에 따르면, 어플리케이션 1070은 전자 장치(예: 도 3의 전자 장치 101)와 외부 전자 장치(예: 도 3의 전자 장치 102, 104) 사이의 정보 교환을 지원하는 어플리케이션(이하, 설명의 편의상, "정보 교환 어플리케이션")을 포함할 수 있다. 정보 교환 어플리케이션은, 예를 들면, 외부 전자 장치에 특정 정보를 전달하기 위한 알림 전달(notification relay) 어플리케이션, 또는 외부 전자 장치를 관리하기 위한 장치 관리(device management) 어플리케이션을 포함할 수 있다.
예를 들면, 알림 전달 어플리케이션은 전자 장치의 다른 어플리케이션(예: SMS/MMS 어플리케이션, 이메일 어플리케이션, 건강 관리 어플리케이션, 또는 환경 정보 어플리케이션 등)에서 발생된 알림 정보를 외부 전자 장치(예: 도 3의 전자 장치 102, 104)로 전달하는 기능을 포함할 수 있다. 또한, 알림 전달 어플리케이션은, 예를 들면, 외부 전자 장치로부터 알림 정보를 수신하여 사용자에게 제공할 수 있다.
장치 관리 어플리케이션은, 예를 들면, 전자 장치와 통신하는 외부 전자 장치(예: 도 3의 전자 장치 102, 104)의 적어도 하나의 기능(예: 외부 전자 장치 자체(또는 일부 구성 부품)의 턴-온/턴-오프 또는 디스플레이의 밝기(또는 해상도) 조절), 외부 전자 장치에서 동작하는 어플리케이션 또는 외부 전자 장치에서 제공되는 서비스(예: 통화 서비스 또는 메시지 서비스 등)를 관리(예: 설치, 삭제, 또는 업데이트)할 수 있다.
한 실시 예에 따르면, 어플리케이션 1070은 외부 전자 장치(예: 도 3의 전자 장치 102, 104)의 속성에 따라 지정된 어플리케이션(예: 모바일 의료 기기의 건강 관리 어플리케이션)을 포함할 수 있다. 한 실시 예에 따르면, 어플리케이션 1070은 외부 전자 장치(예: 도 3의 서버 106 또는 전자 장치 102, 104)로부터 수신된 어플리케이션을 포함할 수 있다. 한 실시 예에 따르면, 어플리케이션 1070은 프리로드 어플리케이션(preloaded application) 또는 서버로부터 다운로드 가능한 제3자 어플리케이션(third party application)을 포함할 수 있다. 도시된 실시 예에 따른 프로그램 모듈 1010의 구성요소들의 명칭은 운영 체제의 종류에 따라서 달라질 수 있다.
다양한 실시 예에 따르면, 프로그램 모듈 1010의 적어도 일부는 소프트웨어, 펌웨어, 하드웨어, 또는 이들 중 적어도 둘 이상의 조합으로 구현될 수 있다. 프로그램 모듈 1010의 적어도 일부는, 예를 들면, 프로세서(예: 프로세서 910)에 의해 구현(implement)(예: 실행)될 수 있다. 프로그램 모듈 1010의 적어도 일부는 하나 이상의 기능을 수행하기 위한, 예를 들면, 모듈, 프로그램, 루틴, 명령어 세트(sets of instructions) 또는 프로세스 등을 포함할 수 있다.
본 문서에서 사용된 용어 "모듈"은, 예를 들면, 하드웨어, 소프트웨어 또는 펌웨어(firmware) 중 하나 또는 둘 이상의 조합을 포함하는 단위(unit)를 의미할 수 있다. "모듈"은, 예를 들면, 유닛(unit), 로직(logic), 논리 블록(logical block), 부품(component), 또는 회로(circuit) 등의 용어와 바꾸어 사용(interchangeably use)될 수 있다. "모듈"은, 일체로 구성된 부품의 최소 단위 또는 그 일부가 될 수 있다. "모듈"은 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수도 있다. "모듈"은 기계적으로 또는 전자적으로 구현될 수 있다. 예를 들면, "모듈"은, 알려졌거나 앞으로 개발될, 어떤 동작들을 수행하는 ASIC(application-specific integrated circuit) 칩, FPGAs(field-programmable gate arrays) 또는 프로그램 가능 논리 장치(programmable-logic device) 중 적어도 하나를 포함할 수 있다.
다양한 실시 예에 따른 장치(예: 모듈들 또는 그 기능들) 또는 방법(예: 동작들)의 적어도 일부는, 예컨대, 프로그램 모듈의 형태로 컴퓨터로 읽을 수 있는 저장매체(computer-readable storage media)에 저장된 명령어로 구현될 수 있다. 상기 명령어가 프로세서(예: 도 3의 프로세서 120)에 의해 실행될 경우, 상기 하나 이상의 프로세서가 상기 명령어에 해당하는 기능을 수행할 수 있다. 컴퓨터로 읽을 수 있는 저장매체는, 예를 들면, 메모리 130이 될 수 있다.
컴퓨터로 판독 가능한 기록 매체는, 하드디스크, 플로피디스크, 마그네틱 매체(magnetic media)(예: 자기테이프), 광기록 매체(optical media)(예: CD-ROM, DVD(Digital Versatile Disc), 자기-광 매체(magneto-optical media)(예: 플롭티컬 디스크(floptical disk)), 하드웨어 장치(예: ROM, RAM, 또는 플래시 메모리 등) 등을 포함할 수 있다. 또한, 프로그램 명령에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상술한 하드웨어 장치는 다양한 실시 예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지다.
다양한 실시 예에 따른 모듈 또는 프로그램 모듈은 전술한 구성요소들 중 적어도 하나 이상을 포함하거나, 일부가 생략되거나, 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 다양한 실시 예에 따른 모듈, 프로그램 모듈 또는 다른 구성요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱(heuristic)한 방법으로 실행될 수 있다. 또한, 일부 동작은 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
그리고 본 문서에 개시된 실시 예는 개시된, 기술 내용의 설명 및 이해를 위해 제시된 것이며, 본 발명의 범위를 한정하는 것은 아니다. 따라서, 본 문서의 범위는, 본 발명의 기술적 사상에 근거한 모든 변경 또는 다양한 다른 실시 예를 포함하는 것으로 해석되어야 한다.

Claims (20)

  1. 전자 장치에 있어서,
    사용자의 발화를 음성 입력으로 수신하는 오디오 입력 모듈;
    상기 음성 입력에 대응되는 콘텐츠를 출력하는 오디오 출력 모듈; 및
    상기 음성 입력의 분석을 통해 획득되는 상기 발화의 속도, 상기 발화의 성량(聲量), 및 상기 발화에 포함된 키워드 중 적어도 하나에 기초하여, 상기 콘텐츠의 출력 방식을 결정하도록 설정된 프로세서;를 포함하는 전자 장치.
  2. 청구항 1에 있어서,
    상기 프로세서는, 상기 발화의 성량에 기반하여 상기 사용자의 이동 속도를 판단하고, 상기 사용자의 이동 속도에 따라서 상기 콘텐츠의 출력 크기(volume)를 변화시키도록 설정된, 전자 장치.
  3. 청구항 1에 있어서,
    상기 프로세서는, 상기 발화의 성량에 기반하여 상기 사용자의 이동 속도를 판단하고, 상기 사용자의 이동 속도에 따라서 상기 콘텐츠의 출력 속도를 변화시키도록 설정된, 전자 장치.
  4. 청구항 1에 있어서,
    상기 프로세서는, 상기 발화의 성량에 기반하여 상기 사용자의 이동 속도를 판단하고, 상기 사용자의 이동 속도에 따라서 상기 콘텐츠의 출력 정보량을 변화시키도록 설정된, 전자 장치.
  5. 청구항 2에 있어서,
    상기 사용자와의 거리를 산출하는 거리 검출 모듈을 더 포함하고,
    상기 프로세서는, 상기 발화의 성량 및 상기 산출된 거리의 시간 변화량에 기반하여, 상기 사용자의 이동 속도를 판단하도록 설정된, 전자 장치.
  6. 청구항 1에 있어서,
    상기 프로세서는, 상기 발화의 성량에 기반하여 상기 사용자와 상기 전자 장치 사이의 거리를 판단하고, 상기 사용자와 상기 전자 장치 사이의 거리에 따라서 상기 콘텐츠의 출력 크기를 변화시키도록 설정된, 전자 장치.
  7. 청구항 1에 있어서,
    상기 프로세서는, 상기 발화의 성량에 기반하여 상기 사용자와 상기 전자 장치 사이의 거리를 판단하고, 상기 사용자와 상기 전자 장치 사이의 거리에 따라서 상기 콘텐츠의 출력 속도를 변화시키도록 설정된, 전자 장치.
  8. 청구항 1에 있어서,
    상기 프로세서는, 상기 발화의 성량에 기반하여 상기 사용자와 상기 전자 장치 사이의 거리를 판단하고, 상기 사용자와 상기 전자 장치 사이의 거리에 따라서 상기 콘텐츠의 출력 정보량를 변화시키도록 설정된, 전자 장치.
  9. 청구항 6에 있어서,
    상기 사용자와의 거리를 산출하는 거리 검출 모듈을 더 포함하고,
    상기 프로세서는, 상기 발화의 성량 및 상기 산출된 거리에 기반하여, 상기 사용자와 상기 전자 장치 사이의 거리를 판단하도록 설정된, 전자 장치.
  10. 청구항 1에 있어서,
    상기 프로세서는, 상기 발화의 속도에 따라서, 상기 콘텐츠의 출력 속도를 변화시키도록 설정된, 전자 장치.
  11. 청구항 1에 있어서,
    상기 프로세서는, 상기 발화의 속도에 따라서, 상기 콘텐츠의 출력 정보량를 변화시키도록 설정된, 전자 장치.
  12. 청구항 11에 있어서,
    상기 프로세서는, 상기 콘텐츠의 일부를 추출하고 재구성함으로써 출력 정보량을 변화시키도록 설정된, 전자 장치.
  13. 청구항 1에 있어서,
    상기 프로세서는, 상기 발화에 미리 지정된 키워드가 포함되면 상기 콘텐츠의 출력 속도를 변화시키거나, 상기 콘텐츠의 출력 크기를 변화시키거나, 상기 콘텐츠의 출력 정보량을 변화시키도록 설정된, 전자 장치.
  14. 청구항 1에 있어서,
    상기 프로세서는, 상기 음성 입력의 분석을 통해 상기 사용자의 감정 상태를 더 판단하고, 상기 사용자의 감정 상태에 따라서 상기 콘텐츠의 출력 방식을 결정하도록 설정된, 전자 장치.
  15. 전자 장치의 콘텐츠 제공 방법에 있어서,
    사용자의 발화를 음성 입력으로 수신하는 동작;
    상기 음성 입력의 분석을 통해 획득되는 상기 발화의 속도, 성량(聲量), 및 상기 발화에 포함된 키워드 중 적어도 하나에 기초하여, 상기 콘텐츠의 출력 방식을 결정하는 동작; 및
    상기 결정된 출력 방식에 따라서, 상기 음성 입력에 대응되는 콘텐츠를 출력하는 동작;을 포함하는 콘텐츠 제공 방법.
  16. 청구항 15에 있어서,
    상기 출력 방식을 결정하는 동작은,
    상기 발화의 성량에 기반하여 상기 사용자의 이동 속도를 판단하는 동작; 및
    상기 사용자의 이동 속도에 따라서 상기 콘텐츠의 출력 크기, 출력 속도, 출력 정보량 중 적어도 하나를 변화시키는 동작을 포함하는, 콘텐츠 제공 방법.
  17. 청구항 15에 있어서,
    상기 출력 방식을 결정하는 동작은,
    상기 발화의 성량에 기반하여 상기 사용자와 상기 전자 장치 사이의 거리를 판단하는 동작; 및
    상기 사용자와 상기 전자 장치 사이의 거리에 따라서 상기 콘텐츠의 출력 크기, 출력 속도, 출력 정보량 중 적어도 하나를 변화시키는 동작을 포함하는, 콘텐츠 제공 방법.
  18. 청구항 15에 있어서,
    상기 출력 방식을 결정하는 동작은, 상기 발화의 속도에 따라서, 상기 콘텐츠의 출력 속도 또는 상기 콘텐츠의 출력 정보량을 변화시키는 동작을 포함하는, 콘텐츠 제공 방법.
  19. 청구항 15에 있어서,
    상기 출력 방식을 결정하는 동작은, 상기 발화에 미리 지정된 키워드가 포함되면 상기 콘텐츠의 출력 속도를 변화시키거나, 상기 콘텐츠의 출력 크기를 변화시키거나, 상기 콘텐츠의 출력 정보량을 변화시키는 동작을 포함하는, 콘텐츠 제공 방법.
  20. 적어도 하나의 프로세서에 의해 실행되며 컴퓨터로 읽을 수 있는 명령어가 저장된 컴퓨터 기록 매체에 있어서,
    상기 명령어는,
    사용자의 발화를 음성 입력으로 획득하는 동작;
    상기 음성 입력의 분석을 통해 획득되는 상기 발화의 속도, 성량, 및 상기 발화에 포함된 키워드 중 적어도 하나에 기초하여, 콘텐츠의 출력 방식을 결정하는 동작; 및
    상기 결정된 출력 방식에 따라서, 상기 음성 입력에 대응되는 콘텐츠를 출력하는 동작을 수행하도록 설정된 컴퓨터 기록 매체.
KR1020150132488A 2015-09-18 2015-09-18 콘텐츠 제공 방법 및 이를 수행하는 전자 장치 KR20170034154A (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020150132488A KR20170034154A (ko) 2015-09-18 2015-09-18 콘텐츠 제공 방법 및 이를 수행하는 전자 장치
CN201680053640.6A CN108027952B (zh) 2015-09-18 2016-09-09 用于提供内容的方法和电子设备
EP16846821.3A EP3335188B1 (en) 2015-09-18 2016-09-09 Method and electronic device for providing content
PCT/KR2016/010196 WO2017048000A1 (en) 2015-09-18 2016-09-09 Method and electronic device for providing content
US15/269,406 US10062381B2 (en) 2015-09-18 2016-09-19 Method and electronic device for providing content

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150132488A KR20170034154A (ko) 2015-09-18 2015-09-18 콘텐츠 제공 방법 및 이를 수행하는 전자 장치

Publications (1)

Publication Number Publication Date
KR20170034154A true KR20170034154A (ko) 2017-03-28

Family

ID=58282766

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150132488A KR20170034154A (ko) 2015-09-18 2015-09-18 콘텐츠 제공 방법 및 이를 수행하는 전자 장치

Country Status (5)

Country Link
US (1) US10062381B2 (ko)
EP (1) EP3335188B1 (ko)
KR (1) KR20170034154A (ko)
CN (1) CN108027952B (ko)
WO (1) WO2017048000A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220000565A (ko) 2020-06-26 2022-01-04 카티어스 주식회사 음성 기반 대화 서비스 제공 방법 및 장치

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6807031B2 (ja) * 2015-06-10 2021-01-06 ソニー株式会社 信号処理装置、信号処理方法、およびプログラム
US20190019512A1 (en) * 2016-01-28 2019-01-17 Sony Corporation Information processing device, method of information processing, and program
US20190115021A1 (en) * 2016-04-01 2019-04-18 Intel Corporation Control and modification of language system output
US10276149B1 (en) * 2016-12-21 2019-04-30 Amazon Technologies, Inc. Dynamic text-to-speech output
US20180182375A1 (en) * 2016-12-22 2018-06-28 Essential Products, Inc. Method, system, and apparatus for voice and video digital travel companion
US10861450B2 (en) * 2017-02-10 2020-12-08 Samsung Electronics Co., Ltd. Method and apparatus for managing voice-based interaction in internet of things network system
CN110998626B (zh) * 2017-05-31 2023-12-01 谷歌有限责任公司 提供免提数据用于交互
US10614794B2 (en) * 2017-06-15 2020-04-07 Lenovo (Singapore) Pte. Ltd. Adjust output characteristic
JP7000924B2 (ja) * 2018-03-06 2022-01-19 株式会社Jvcケンウッド 音声内容制御装置、音声内容制御方法、及び音声内容制御プログラム
US11276396B2 (en) * 2018-05-01 2022-03-15 Dell Products, L.P. Handling responses from voice services
CN109215679A (zh) * 2018-08-06 2019-01-15 百度在线网络技术(北京)有限公司 基于用户情绪的对话方法和装置
NO20181210A1 (en) * 2018-08-31 2020-03-02 Elliptic Laboratories As Voice assistant
CN109299318A (zh) * 2018-11-13 2019-02-01 百度在线网络技术(北京)有限公司 音乐推荐的方法、装置、存储介质和终端设备
CN111724774A (zh) * 2019-03-22 2020-09-29 阿里巴巴集团控股有限公司 语音交互及车载语音交互方法、装置、设备及存储介质
FR3099844B1 (fr) * 2019-08-09 2021-07-16 Do You Dream Up Procédé de traitement automatisé d’un dispositif automatisé conversationnel par échange vocal en langage naturel, en particulier procédé d’adaptation du débit audio
KR20210020656A (ko) * 2019-08-16 2021-02-24 엘지전자 주식회사 인공 지능을 이용한 음성 인식 방법 및 그 장치
JP7348027B2 (ja) * 2019-10-28 2023-09-20 株式会社日立製作所 対話システム、対話プログラムおよび対話システムの制御方法
CN111610947B (zh) * 2020-05-09 2022-03-29 东风汽车集团有限公司 车载端通话音量自动调节系统

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030167167A1 (en) * 2002-02-26 2003-09-04 Li Gong Intelligent personal assistants
US7881934B2 (en) * 2003-09-12 2011-02-01 Toyota Infotechnology Center Co., Ltd. Method and system for adjusting the voice prompt of an interactive system based upon the user's state
JP2005128884A (ja) * 2003-10-24 2005-05-19 Sony Corp 情報コンテンツの編集装置及び編集方法
JP2005202076A (ja) 2004-01-14 2005-07-28 Sony Corp 発話制御装置及び方並びにロボット装置
WO2005076258A1 (ja) * 2004-02-03 2005-08-18 Matsushita Electric Industrial Co., Ltd. ユーザ適応型装置およびその制御方法
US7412378B2 (en) 2004-04-01 2008-08-12 International Business Machines Corporation Method and system of dynamically adjusting a speech output rate to match a speech input rate
US20060085183A1 (en) * 2004-10-19 2006-04-20 Yogendra Jain System and method for increasing recognition accuracy and modifying the behavior of a device in response to the detection of different levels of speech
JP2008216735A (ja) 2007-03-06 2008-09-18 Fujitsu Ltd 受付ロボット及び受付ロボットの会話適応方法
KR100855563B1 (ko) 2007-03-27 2008-09-02 안희달 대화식 로봇을 이용한 영어 학습시스템 및 그 방법
KR101731346B1 (ko) * 2010-11-12 2017-04-28 엘지전자 주식회사 멀티미디어 장치의 디스플레이화면 제공 방법 및 그에 따른 멀티미디어 장치
US9431980B2 (en) * 2012-01-30 2016-08-30 Echostar Ukraine Llc Apparatus, systems and methods for adjusting output audio volume based on user location
KR101917685B1 (ko) * 2012-03-21 2018-11-13 엘지전자 주식회사 이동 단말기 및 그것의 제어 방법
KR101385316B1 (ko) 2012-04-03 2014-04-30 주식회사 로보플래닛 로봇을 이용한 광고 및 콘텐츠 연계형 대화 서비스 제공 시스템 및 그 방법
CN102710838B (zh) * 2012-04-25 2015-01-21 华为技术有限公司 一种音量调节方法及装置、电子设备
US9047054B1 (en) * 2012-12-20 2015-06-02 Audible, Inc. User location-based management of content presentation
KR102050897B1 (ko) * 2013-02-07 2019-12-02 삼성전자주식회사 음성 대화 기능을 구비한 휴대 단말기 및 이의 음성 대화 방법
US20140278395A1 (en) * 2013-03-12 2014-09-18 Motorola Mobility Llc Method and Apparatus for Determining a Motion Environment Profile to Adapt Voice Recognition Processing
US9134952B2 (en) * 2013-04-03 2015-09-15 Lg Electronics Inc. Terminal and control method thereof
CN104010147B (zh) * 2014-04-29 2017-11-07 京东方科技集团股份有限公司 自动调节音频播放系统音量的方法和音频播放装置
CN104299622A (zh) * 2014-09-23 2015-01-21 深圳市金立通信设备有限公司 一种音频处理方法
US9424841B2 (en) * 2014-10-09 2016-08-23 Google Inc. Hotword detection on multiple devices
CN104618796B (zh) * 2015-02-13 2019-07-05 京东方科技集团股份有限公司 一种调节音量的方法及显示设备
US20160379638A1 (en) * 2015-06-26 2016-12-29 Amazon Technologies, Inc. Input speech quality matching

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220000565A (ko) 2020-06-26 2022-01-04 카티어스 주식회사 음성 기반 대화 서비스 제공 방법 및 장치
KR20220066228A (ko) 2020-06-26 2022-05-24 카티어스 주식회사 음성 기반 대화 서비스 제공 방법 및 장치

Also Published As

Publication number Publication date
EP3335188A1 (en) 2018-06-20
CN108027952B (zh) 2021-11-05
US10062381B2 (en) 2018-08-28
CN108027952A (zh) 2018-05-11
US20170083281A1 (en) 2017-03-23
WO2017048000A1 (en) 2017-03-23
EP3335188B1 (en) 2019-11-06
EP3335188A4 (en) 2018-10-17

Similar Documents

Publication Publication Date Title
CN110199350B (zh) 用于感测语音结束的方法和实现该方法的电子设备
KR20170034154A (ko) 콘텐츠 제공 방법 및 이를 수행하는 전자 장치
CN108121490B (zh) 用于处理多模式输入的电子装置、方法和服务器
CN110192248B (zh) 语音输入处理方法和用于支持该方法的电子设备
CN109243432B (zh) 话音处理方法以及支持该话音处理方法的电子设备
KR102405793B1 (ko) 음성 신호 인식 방법 및 이를 제공하는 전자 장치
KR102495517B1 (ko) 전자 장치, 전자 장치의 음성 인식 방법
EP3531416A1 (en) System for processing user utterance and controlling method thereof
US10217349B2 (en) Electronic device and method for controlling the electronic device
KR20180083587A (ko) 전자 장치 및 그의 동작 방법
KR20180058476A (ko) 다양한 입력 처리를 위한 방법, 이를 위한 전자 장치 및 서버
KR20180101063A (ko) 사용자 입력을 처리하는 전자 장치 및 그 방법
KR20170086814A (ko) 음성 인식 기능을 제공하는 전자 장치 및 그 동작 방법
KR20170093027A (ko) 음성 명령을 처리하는 방법 및 이를 제공하는 전자 장치
US20180286400A1 (en) Method for operating speech recognition service and electronic device supporting the same
US20170147919A1 (en) Electronic device and operating method thereof
KR20170087207A (ko) 전자 장치 및 전자 장치의 음성 명령 처리 방법
KR20180022021A (ko) 음성 인식 방법 및 이를 수행하는 전자 장치
KR20160071732A (ko) 음성 입력을 처리하는 방법 및 장치
KR102468148B1 (ko) 전자 장치 및 전자 장치의 음성 및 잡음 분류 방법
KR20160141595A (ko) 메시지를 출력하는 전자 장치 및 그 제어 방법
KR20180047801A (ko) 전자 장치 및 전자 장치 제어 방법
KR102653450B1 (ko) 전자 장치의 입력 음성에 대한 응답 방법 및 그 전자 장치
KR102356889B1 (ko) 음성 인식을 수행하는 방법 및 이를 사용하는 전자 장치
KR20170017407A (ko) 전자 장치 및 전자 장치의 알림 제공 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal