KR102331793B1 - 구조화된 오디오 출력을 사용하여 재생 감지 및/또는 무선 스피커에서 비정렬된 재생에 적응 - Google Patents

구조화된 오디오 출력을 사용하여 재생 감지 및/또는 무선 스피커에서 비정렬된 재생에 적응 Download PDF

Info

Publication number
KR102331793B1
KR102331793B1 KR1020217023438A KR20217023438A KR102331793B1 KR 102331793 B1 KR102331793 B1 KR 102331793B1 KR 1020217023438 A KR1020217023438 A KR 1020217023438A KR 20217023438 A KR20217023438 A KR 20217023438A KR 102331793 B1 KR102331793 B1 KR 102331793B1
Authority
KR
South Korea
Prior art keywords
audio data
vehicle
computing device
data stream
audio
Prior art date
Application number
KR1020217023438A
Other languages
English (en)
Other versions
KR20210102443A (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 KR1020217038000A priority Critical patent/KR102652892B1/ko
Publication of KR20210102443A publication Critical patent/KR20210102443A/ko
Application granted granted Critical
Publication of KR102331793B1 publication Critical patent/KR102331793B1/ko

Links

Images

Classifications

    • 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/037Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for occupant comfort, e.g. for automatic adjustment of appliances according to personal settings, e.g. seats, mirrors, steering wheel
    • B60R16/0373Voice control
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/60Substation equipment, e.g. for use by subscribers including speech amplifiers
    • H04M1/6033Substation equipment, e.g. for use by subscribers including speech amplifiers for providing handsfree use or a loudspeaker mode in telephone sets
    • H04M1/6041Portable telephones adapted for handsfree use
    • H04M1/6075Portable telephones adapted for handsfree use adapted for handsfree use in a vehicle
    • H04M1/6083Portable telephones adapted for handsfree use adapted for handsfree use in a vehicle by interfacing with the vehicle audio system
    • H04M1/6091Portable telephones adapted for handsfree use adapted for handsfree use in a vehicle by interfacing with the vehicle audio system including a wireless interface
    • 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/001Monitoring arrangements; Testing arrangements for loudspeakers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S7/00Indicating arrangements; Control arrangements, e.g. balance control
    • H04S7/30Control circuits for electronic adaptation of the sound field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • 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/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • G10L2021/02087Noise filtering the noise being separate speech, e.g. cocktail party
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R2499/00Aspects covered by H04R or H04S not otherwise provided for in their subgroups
    • H04R2499/10General applications
    • H04R2499/13Acoustic transducers and sound field adaptation in vehicles

Abstract

구현은 오디오 데이터 스트림이 무선 통신 채널을 통해 컴퓨팅 장치로 전송되게 함으로써 컴퓨팅 장치의 오디오 지연을 결정하는 것에 관한 것이다. 컴퓨팅 장치는 오디오 데이터 스트림을 사용하여 생성된 오디오 출력이 스피커(들)를 통해 렌더링되도록 한다. 렌더링된 오디오 출력은 마이크로폰을 통해 캡처되고 오디오 지연은 캡처된 오디오 출력을 오디오 데이터 스트림과 비교하여 결정된다. 지연 오디오 세그먼트는 컴퓨팅 장치로 전송되는 추가 오디오 데이터 스트림에 추가될 수 있으며, 여기서 지연 오디오 세그먼트의 길이는 오디오 지연을 사용하여 결정된다. 노이즈 감소 기술은 오디오 지연을 기반으로 추가로 또는 대안으로 적용될 수 있다. 구현은 부가적으로 또는 대안적으로 컴퓨팅 장치에 의해 구동되는 스피커를 통해 렌더링하기 위해 컴퓨팅 장치에 전송된 오디오 데이터 스트림이 실제로 렌더링되고 있는지를 결정하는 것에 관한것이다.

Description

구조화된 오디오 출력을 사용하여 재생 감지 및/또는 무선 스피커에서 비정렬된 재생에 적응
본 명세서는 구조화된 오디오 출력을 사용하여 재생 감지 및/또는 무선 스피커에서 비정렬된 재생에 적응하는 것에 관한 것이다.
인간은 여기에서 "자동화된 어시스턴트"("디지털 에이전트", "챗봇", "대화형 개인 어시스턴트", "지능형 개인 어시스턴트", "어시스턴트 애플리케이션", "대화 에이전트"등으로도 불림)라고 하는 대화형 소프트웨어 애플리케이션을 사용하여 인간 대 컴퓨터 대화에 참여할 수 있다. 예를 들어, 인간(자동 어시스턴트와 상호 작용할 때 "사용자"라고 할 수 있음)은 음성 자연어 입력(즉, 발화)을 사용하여 자동화된 어시스턴트에게 명령 및/또는 요청을 제공할 수 있다. 어떤 경우에는 텍스트로 변환된 다음 처리되거나 텍스트(예: 타이핑된) 자연어 입력을 제공할 수 있다. 자동화된 어시스턴트는 청각 및/또는 시각적 인터페이스 출력을 포함할 수 있는 응답형 사용자 인터페이스 출력을 제공하여 요청에 응답한다.
위에서 언급했듯이 많은 자동화된 어시스턴트가 음성 발화를 통해 상호 작용하도록 구성되어 있다. 사용자 개인 정보 보호 및/또는 리소스 보존을 위해 사용자는 자동화된 어시스턴트가 음성 발화를 완전히 처리하기 전에 종종 명시적으로 자동화된 어시스턴트를 호출해야한다. 자동화된 어시스턴트의 명시적 호출은 일반적으로 클라이언트 장치에서 수신되는 특정 사용자 인터페이스 입력에 대한 응답으로 발생한다. 클라이언트 장치는 클라이언트 장치의 사용자에게 자동화된 어시스턴트(예: 사용자로부터 음성 및/또는 타이핑된 입력을 수신하고 청각 및/또는 그래픽 응답을 제공함)와 인터페이스하기 위한 인터페이스를 제공하고 자동화된 어시스턴트(예: 사용자 입력을 처리하고 적절한 응답을 생성하는 원격 서버 장치)를 구현하는 하나 이상의 추가 컴포넌트와 인터페이스하는 어시스턴트 인터페이스를 포함한다.
클라이언트 장치를 통해 자동화된 어시스턴트를 호출할 수 있는 일부 사용자 인터페이스 입력에는 자동화된 어시스턴트를 호출하기 위한 클라이언트 장치의 하드웨어 및/또는 가상 버튼이 포함된다(예: 하드웨어 버튼 탭, 클라이언트 장치에 의해 표시되는 그래픽 인터페이스 요소 선택). 많은 자동화된 어시스턴트는 "핫 단어/구" 또는 "트리거 단어/구"라고도 하는 하나 이상의 음성 호출 구문에 응답하여 추가로 또는 대안적으로 호출될 수 있다. 예를 들어, "Hey Assistant(헤이, 어시스턴트)", "OK Assistant(오케이, 어시스턴트)" 및/또는 "Assistant"와 같은 음성 호출 문구를 말하여 자동화된 어시스턴트를 호출할 수 있다.
사용자는 차량에 있는 동안 자동화된 어시스턴트와 상호 작용하기를 원할 수 있다. 예를 들어, 사용자는 모바일 스마트 폰의 자동화된 어시스턴트를 호출하여 운전 경로를 요청할 수 있다. 또한, 클라이언트 장치(예: 모바일 스마트 폰)는 클라이언트 장치에 의해 제공되는 오디오 데이터가 하나 이상의 차량 스피커를 통해 렌더링될 수 있도록 차량과 통신 가능하게 결합될 수 있다. 예를 들어, 모바일 스마트 폰은 블루투스를 통해 차량과 통신 가능하게 결합될 수 있으며, 모바일 스마트 폰으로부터의 오디오 데이터는 블루투스를 통해 차량 컴퓨팅 장치로 전송되고 차량 스피커(들)를 통해 차량 컴퓨팅 장치에 의해 렌더링될 수 있다. 이 오디오 데이터에는 자동화된 어시스턴트가 모바일 스마트 폰에 제공한 자연어 응답이 포함될 수 있다.
그러나, 하나 이상의 조건 하에서 많은 차량 컴퓨팅 장치는 차량 스피커(들)를 통해 모바일 스마트 폰에 의해 전송되는 전체 오디오 데이터를 렌더링하지 못할 것이다. 예를 들어, 일부 차량 컴퓨팅 장치(들)는 전체 오디오 데이터를 수신할 수 있지만, 예를 들어 오디오 데이터의 렌더링을 위한 시작하는 컴포넌트(들)의 지연으로 인해 스피커를 통해 오디오 데이터의 초기 부분을 렌더링하지 않는다. 따라서 오디오 데이터의 초기 부분은 차량 스피커를 통해 렌더링되지 않는다. 예를 들어, 오디오 데이터에는 "Turn left onto Main Street(메인 도로에서 좌회전)"라는 합성 음성이 포함될 수 있지만 차량 컴퓨팅 장치는 "onto Main Street"만 렌더링한다. 이는 관련 'Turn left'이 렌더링되지 않아 사용자가 방향을 확인하기 위해 모바일 스마트 폰의 디스플레이를 활성화하도록 강요하거나 사용자가 실수로 'Main Street(메인 도로)'로 잘못된 방향으로 전환하게 하므로 문제가 된다. 이 두 시나리오 모두 계산 리소스 낭비로 이어진다. 추가적으로 또는 대안적으로, 많은 차량 컴퓨팅 장치는 차량 컴퓨팅 장치가 적절한 모드(예를 들어, 블루투스 모드)에 있지 않을 때 모바일 스마트 폰에 의해 전송되는 임의의 오디오 데이터를 차량 스피커(들)를 통해 렌더링하지 못할 것이다. 이는 실제로 차량 스피커를 통해 렌더링되지 않기 때문에 오디오 데이터의 낭비적인 전송을 초래하고 사용자가 적절한 모드로 수동 전환한 후 오디오 데이터를 재전송하도록 요청할 수 있다.
여기에 설명된 구현은 컴퓨팅 장치와 추가 컴퓨팅 장치(예를 들어, 차량 컴퓨팅 장치)에 의해 구동되는 하나 이상의 추가 스피커(예를 들어, 차량 스피커) 사이의 오디오 지연을 결정하는 것과 관련된다. 여기서 컴퓨팅 장치 및 추가 컴퓨팅 장치는 무선 통신 채널을 통해 통신적으로 결합된다. 이러한 구현의 일부 버전에서, 오디오 지연을 사용하여 결정된 지속 시간을 갖는 해당 지연 오디오 세그먼트가 추가 컴퓨팅 장치로 전송되는 추가 오디오 스트림에 추가된다. 지연 오디오 세그먼트를 추가 오디오 스트림에 추가하면 지연 오디오 세그먼트의 적어도 일부가 추가 스피커(들)에 의해 렌더링되지 않지만 추가 오디오 스트림이 추가 스피커(들)에 의해 렌더링되도록 한다. 이러한 구현의 일부 버전에서, 오디오 지연은 컴퓨팅 장치 및/또는 추가 컴퓨팅 장치의 노이즈 감소를 적응(적용)시키기 위해 추가적으로 또는 대안적으로 사용된다. 예를 들면, 적용되는 노이즈 감소는 캡처된 오디오 데이터(마이크로폰을 통해 캡처됨)에서 추가 스피커를 통해 렌더링을 위해 제공되고 있음을 알고있는 오디오 데이터를 필터링하는 노이즈 제거 필터일 수 있으며, 오디오 지연을 활용하여 추가 스피커(들)를 통해 오디오 데이터의 실제 렌더링에 대한 예상 타이밍을 정확하게 결정한다.
본 명세서에 설명된 구현은 추가 컴퓨팅 장치에 의해 구동되는 하나 이상의 추가 스피커(예: 차량 스피커)를 통해 렌더링하기 위해 추가 컴퓨팅 장치(예: 차량 컴퓨팅 장치)로 전송된 오디오 데이터 스트림이 실제로 추가 스피커(들)를 통해 렌더링되는지를 결정하는 것에 추가적으로 및/또는 대안적으로 관련된다. 그렇다면, 추가 스피커(들)를 통해 렌더링하기 위해 추가 오디오 데이터가 추가 컴퓨팅 장치로 전송될 수 있다(추가 스피커를 통해 마찬가지로 렌더링된다는 가정하에). 그렇지 않은 경우, 추가 컴퓨팅 장치에 의해 구동되지 않는 대체 스피커를 사용하여 추가 오디오 데이터를 대신 렌더링할 수 있다. 이러한 방식 및 다른 방식에서, 이전에 전송된 오디오 데이터가 실제로 차량 스피커(들)를 통해 렌더링된 것으로 결정될 때, 추가 오디오 데이터가 차량 스피커(들)를 통해 렌더링을 위해 전송될 수 있다. 그러나, 추가 오디오 데이터는 이전에 전송된 오디오 데이터가 실제로 차량 스피커를 통해 렌더링되지 않았다고 결정될 때 대체 스피커를 통해 대신 렌더링될 수 있다. 이는 오디오 데이터가 실제로 렌더링되고 사용자가 인식할 수 있도록 보장할 수 있으며, 이는 사용자가 오디오 데이터의 재전송 및/또는 다른 시도된 렌더링을 요청할 필요가 없도록 한다. 또한, 이는 추가 컴퓨팅 장치에 의해 청각적으로 렌더링될 것으로 결정될 때만 추가 컴퓨팅 장치로의 오디오 데이터 전송이 발생하도록 선택적으로 보장할 수 있다.
일례로, 스마트 폰은 블루투스를 통해 차량 컴퓨팅 장치와 통신 가능하게 결합될 수 있으며, 스마트 폰은 차량의 스피커(들)를 통해 렌더링하기 위해 차량 컴퓨팅 장치로 오디오 데이터를 전송할 수 있다. 예를 들어, 스마트 폰의 자동화된 어시스턴트 클라이언트는 사용자의 요청에 응답하여 오디오 데이터를 생성할 수 있고, 요청에 응답하여 오디오 데이터가 차량 컴퓨팅 장치로 전송되도록할 수 있다.
많은 구현에서, 차량 스피커(들)를 사용하여 차량 컴퓨팅 장치에 의해 렌더링하기 위해 컴퓨팅 장치로부터 전송된 오디오 데이터는 오디오 데이터가 차량 스피커를 통해 렌더링되기 전에 최대 수초의 지연을 경험할 수 있다. 예를 들어, 차량 컴퓨팅 장치가 블루투스 모드로 전환될 때 차량 컴퓨팅 장치로 전송되는 오디오 데이터의 일부(예: 1 초, 1.5 초 등)가 차량 스피커(들)에서 렌더링되지 않을 수 있다. 많은 구현에서, 오디오 데이터의 이 부분은 차량 컴퓨팅 장치에 의해 수신되지만 차량 컴퓨팅 장치에 의해 폐기된다(즉, 차량 컴퓨팅 장치는 차량 컴퓨팅 장치가 블루투스 모드가 될 때까지 오디오 데이터 스트림의 수신된 부분을 폐기한다). 그 결과, 오디오 데이터의 관련 부분(들)은 차량 스피커를 통해 렌더링되도록 의도 되었음에도 불구하고 차량 스피커를 통해 전혀 렌더링되지 않는다. 이는 자동화된 어시스턴트 클라이언트를 사용하여 생성된 자연어 응답을 캡처하는 오디오 데이터와 같은 다양한 오디오 데이터에 문제가 될 수 있다. 이러한 자연어 응답은 종종 짧으며 자연어 응답의 관련 부분(또는 전체)이 차량 스피커(들)를 통해 렌더링되지 않을 수 있다.
많은 구현에서, 컴퓨팅 장치와 차량 컴퓨팅 장치 사이의 오디오 지연은 자동으로 결정될 수 있고, 지연의 길이에 기초하여 크기가 결정되는 지연 오디오 세그먼트는 미래의 오디오 데이터에 추가될 수 있다. 예를 들면, 클라이언트 장치는 차량 컴퓨팅 장치로 전송되는 오디오 데이터에서 0.5 초 지연을 결정할 수 있으므로 0.5 초의 지연 오디오를 포함하는 지연 오디오 세그먼트를 차량 컴퓨팅 장치로 전송되는 향후 오디오 데이터 스트림의 시작 부분에 추가할 수 있다. 이러한 방식으로 지연 오디오 세그먼트가 렌더링되지는 않지만(적어도 전체가 아님) 지연 오디오 세그먼트를 향후 오디오 데이터 스트림에 추가하면 향후 오디오 스트림 전체가 렌더링된다. 오디오 지연은 오디오 데이터 스트림의 시작, 오디오 데이터 스트림의 끝 또는 오디오 데이터 스트림의 시작과 끝 모두에서 발생할 수 있다. 따라서, 지연 오디오 세그먼트(들)는 오디오 데이터 스트림의 시작과 끝 또는 시작과 끝 모두에 추가될 수 있다.
차량 오디오 지연을 결정하기 위해, 컴퓨팅 장치는 알려진 오디오 데이터 시퀀스를 차량 컴퓨팅 장치로 전송할 수 있다. 차량 컴퓨팅 장치는 하나 이상의 차량 스피커를 사용하여 오디오 데이터를 렌더링할 수 있고, 컴퓨팅 장치는 오디오 데이터의 렌더링을 캡처할 수 있다. 예를 들어, 모바일 스마트 폰은 오디오 데이터 스트림을 차량 컴퓨팅 장치로 전송할 수 있고 차량 스피커(들)를 사용하여 생성된 오디오 출력을 캡처할 수 있다. 캡처된 오디오 데이터를 알려진 오디오 데이터 스트림과 비교함으로써 컴퓨팅 장치는 차량 오디오 지연을 결정할 수 있다. 이 일련의 오디오 데이터(오디오 데이터 시퀀스)는 사용자가 들을 수 있고(가청), 사용자가 들을 수 없고(비가청)(예를 들어, 고주파 오디오), 그리고/또는 가청 및 비가청 오디오 데이터의 조합일 수 있다. 예를 들어, 오디오 데이터 스트림은 알려진 길이의 단일 주파수에서 오디오 데이터의 세그먼트를 포함할 수 있다. 클라이언트 장치는 캡처된 오디오 데이터의 길이를 알려진 오디오 데이터 스트림의 길이와 비교하여 지연을 결정할 수 있다. 추가적으로 및/또는 대안적으로, 오디오 데이터 스트림은 일련의 주파수 세그먼트(주파수 세그먼트 시퀀스)를 포함할 수 있다. 캡처된 주파수 세그먼트의 시퀀스는 지연을 결정하기 위해 전송된 주파수 세그먼트의 시퀀스와 비교될 수 있다. 다양한 구현에서 배경 노이즈은 차량 스피커를 사용하여 렌더링된 오디오 출력 캡처를 방해할 수 있다(즉, 차량 외부의 교통 상황, 차량 내에서 말하는 사람 등이 오디오 출력 캡처를 방해할 수 있음). 오디오 데이터 스트림은 동시 발생 주파수 세그먼트의 시퀀스를 포함할 수 있다(예: 이중 톤 주파수 세그먼트, 삼중 톤 주파수 세그먼트, 쿼드 톤 주파수 세그먼트 등). 많은 경우에, 컴퓨팅 장치는 배경 노이즈에도 불구하고 동시 발생 주파수 세그먼트에서 적어도 하나의 주파수를 캡처할 수 있다. 다양한 구현에서, 차량 오디오 지연을 결정하는 데 사용되는 오디오 데이터는 DTMF(Dual Tone Multi Frequency) 오디오 시퀀스이다.
다양한 구현에서, 차량 인터페이스 장치는 컴퓨팅 장치와 추가적으로 통신 가능하게 결합될 수 있다. 차량 인터페이스 장치는 추가 및/또는 대체 사용자 인터페이스 입력(들) 및/또는 추가 마이크(들) 및/또는 추가 스피커(들)와 같은 사용자 인터페이스 출력(들)을 제공할 수 있다. 예를 들어, 차량 인터페이스 장치는 블루투스를 통해 컴퓨팅 장치와 통신 가능하게 결합될 수 있으며, 차량 스피커(들)의 오디오 출력 및 사용자가 말한 발화를 캡처하기 위한 하나 이상의 추가 마이크(들)를 포함할 수 있다. 여러 구현에서, 차량 인터페이스 장치의 마이크로폰(들)은 컴퓨팅 장치의 마이크로폰(들)보다 오디오 출력을 캡처하는 데 더 나은 위치 및/또는 더 적합할 수 있다. 예를 들어, 사용자는 운전 중에 모바일 스마트 폰을 배낭에 넣고 배낭이 모바일 스마트 폰의 마이크로폰이 차량 인터페이스 장치의 마이크로폰만큼 오디오 출력을 캡처하는 것을 방지할 수 있다(백팩에 방해되지 않음). 다른 예로서, 차량 인터페이스 장치는 차량에서 다양한 발화를 캡처하도록 더 잘 장착될 수 있는 원거리 마이크로폰(들)을 포함할 수 있는 반면, 스마트 폰에는 원거리 마이크(마이크로폰)(들)가 없을 수 있다. 추가적으로 또는 대안적으로, 차량 인터페이스 장치는 호출 문구의 음성 호출을 검출할 수 있고, 호출 문구의 검출 후에 오디오 데이터를 컴퓨팅 장치에 전송할 수 있다.
많은 구현에서, 클라이언트 장치는 오디오 데이터 스트림이 하나 이상의 차량 스피커를 사용하여 실제로 렌더링되는지를 결정하기 위해 차량 컴퓨팅 장치로 오디오 데이터 스트림을 전송할 수 있다. 클라이언트 장치(또는 클라이언트 장치와 통신 가능하게 연결된 차량 인터페이스 장치)가 오디오 데이터 스트림에 해당하는 오디오 데이터 출력을 (마이크로폰을 통해) 캡처하지 않는 경우 클라이언트 장치는 대체 스피커(예: 클라이언트 장치 스피커, 차량 인터페이스 장치 스피커 등)를 사용하여 향후 오디오 데이터 스트림을 렌더링할 수 있다. 반면에, 오디오 데이터 스트림에 대응하는 오디오 데이터 출력이 캡처되면, 클라이언트 장치는 차량 스피커(들)를 통해 렌더링하기 위해 미래의 오디오 데이터 스트림을 차량 컴퓨팅 장치로 전송할 수 있다. 많은 구현에서, 클라이언트 장치는 주기적으로 또는 다른 규칙적 또는 비정규적 간격으로 오디오 데이터 스트림을 전송할 수 있다(예: 1 분, 2 분, 5 분마다 오디오 데이터 스트림 전송). 추가적으로 또는 대안적으로, 클라이언트 장치는 오디오 데이터 스트림을 마지막으로 전송한 이후의 경과 시간에 기초하여 오디오 데이터 스트림을 전송할지 여부를 결정할 수 있다. 예를 들면, 클라이언트 장치는 마지막 전송 이후 시간 임계 값이 경과한 경우 오디오 데이터 스트림을 전송한다(예: 클라이언트 장치는 마지막 전송 이후 10 초 이상, 마지막 전송 이후 30 초 이상, 마지막 전송 이후 1 분 이상 경과한 경우 등 오디오 데이터 스트림을 전송한다). 많은 구현에서, 클라이언트 장치는 자동화된 어시스턴트 클라이언트가 사용자 제공 입력에 대한 응답을 결정하는 동안 "busy(바쁨)"인 동안 자동화된 어시스턴트의 호출을 검출하는 것에 응답하여(예: 핫 워드 감지 또는 호출 버튼 작동 감지에 응답하여) 오디오 데이터 스트림을 전송할 수 있다. 이러한 방식과 다른 방식에서, 클라이언트 장치는 오디오 데이터 스트림이 차량 스피커(들)를 통한 렌더링을 위해 제공되어야 하는지 또는 대신 대체 스피커(들)를 통해 렌더링을 위해 제공되어야 하는지에 대한 결정을 동적으로 업데이트할 수 있다.
일부 구현에서, 결정된 오디오 지연은 추가적으로 또는 대안적으로 다양한 노이즈 감소 기술과 함께 사용될 수 있다. 예를 들어, 사용자는 자동 어시스턴트 클라이언트에게 "OK Assistant, what time is it(오케이 어시스턴트, 몇시입니까)"라고 음성 입력을 제공할 수 있고, 자동 어시스턴트 클라이언트는 응답으로 "It is 3:05 pm(오후 3시 5 분)"을 공식화(formulate)할 수 있다. 클라이언트 장치는 "It is 3:05 pm"의 텍스트 음성 변환을 포함하는 오디오 데이터 스트림을 차량 컴퓨팅 장치로 전송할 수 있으며, 차량 컴퓨팅 장치는 차량 스피커를 통해 오디오 데이터 스트림을 렌더링할 수 있다. 클라이언트 장치 및/또는 별도의 차량 인터페이스 장치는 전송된 오디오 데이터 스트림을 이용할 수 있으며, 캡처된 오디오 데이터(마이크로폰을 통해 캡처됨)로부터 "It is 3:05 pm"의 텍스트 음성 변환을 취소할 때 결정된 오디오 지연을 활용할 수 있다. 즉, 렌더링되는 오디오 데이터 스트림에 대한 지식은 캡처된 오디오 데이터에서 해당 오디오 데이터 스트림을 제거하는 데 사용될 수 있으며, 이에 따라 사용자의 공동(동시) 발생(co-occurring) 음성 발화를 더 잘 인식할 수 있다. 오디오 데이터 스트림에 대한 지식은 결정된 오디오 지연과 함께 활용되어 노이즈 제거가 적시에 오디오 데이터 스트림을 취소할 수 있도록 한다(예: "It is 3:05 pm"이 실제로 1.2 초 지연(또는 기타 지연)으로 렌더링된다는 것을 알기 위해). 예를 들어, 클라이언트 장치는 차량 인터페이스 장치가 노이즈 감소에 사용하기 위해 "It is 3:05 pm" 오디오 스트림을 차량 인터페이스 장치로 전송할 수 있다. 오디오 스트림 및 차량 오디오 지연을 사용하는 차량 인터페이스 장치는 오디오 출력이 차량 스피커를 사용하여 렌더링될 때를 알고 클라이언트 장치로 전송된 캡처된 오디오 출력에서 적절한 시간에 "It is 3:05 pm"를 필터링할 수 있다.
본 명세서에서보다 상세히 설명된 전술한 개념 및 추가 개념의 모든 조합은 본 명세서에 개시된 요지의 일부인 것으로 고려된다는 것을 이해해야 한다. 예를 들어, 본 개시의 끝에 나타나는 청구된 요지의 모든 조합은 여기에 개시된 요지의 일부인 것으로 고려된다.
도 1은 본 명세서에 개시된 다양한 구현이 구현될 수 있는 예시적인 환경을 도시한다.
도 2는 본 명세서에 개시된 다양한 구현이 구현될 수 있는 다른 예시적인 환경을 도시한다.
도 3은 본 명세서에 개시된 다양한 구현이 구현될 수 있는 다른 예시적인 환경을 도시한다.
도 4는 본 명세서에 개시된 다양한 구현에 따른 예시적인 오디오 데이터 스트림 및 캡처된 오디오 데이터의 다양한 예를 도시한다.
도 5는 본 명세서에 개시된 다양한 구현에 따른 예시적인 프로세스를 예시하는 흐름도이다.
도 6은 본 명세서에 개시된 다양한 구현에 따른 다른 예시적인 프로세스를 예시하는 흐름도를 예시한다.
도 7은 본 명세서에 개시된 다양한 구현이 구현될 수 있는 예시적인 환경을 예시하는 블록도이다.
도 8은 컴퓨팅 장치의 예시적인 아키텍처를 도시한다.
도 1, 도 2 및 도 3은 본 명세서에 설명된 많은 구현에 따라 차량 컴퓨팅 장치에 통신 가능하게 결합된 컴퓨팅 장치를 도시한다. 비록 도 1 내지 도 3은 단순화를 위해 차량 외부의 컴퓨팅 장치 및 차량 인터페이스 장치(도 2 및 3)를 도시하지만, 컴퓨팅 장치 및/또는 차량 인터페이스 장치는 여기에 설명된 다양한 기술을 수행하는 동안 차량 내에 위치할 것이다.
도 1은 무선 통신 채널(104)을 통해 차량 컴퓨팅 장치(102)에 통신적으로 연결된 컴퓨팅 장치(106)를 도시한다. 컴퓨팅 장치(102)는 예를 들어, 랩톱 컴퓨팅 장치, 태블릿 컴퓨팅 장치, 모바일 스마트 폰 컴퓨팅 장치 및/또는 컴퓨팅 장치를 포함하는 사용자의 웨어러블 장치(예: 컴퓨팅 장치가 있는 시계, 컴퓨팅 장치가 있는 안경, 가상 또는 증강 현실 컴퓨팅 장치 등)일 수 있다. 추가 및/또는 대체 클라이언트 장치가 제공될 수 있다. 다양한 구현에서, 컴퓨팅 장치(106)는 마이크로폰(들), 스피커(들) 및/또는 추가 사용자 인터페이스 장치와 같은 다양한 사용자 인터페이스 입력 및/또는 출력 장치를 포함한다. 컴퓨팅 장치(106)는 차량 내에 장착될 수 있고(예: 자동차 마운트에서 창문으로 셕션(suctioned)) 및/또는 어시스턴트 전력(예: 12V 차량 콘센트, USB 포트 또는 미국의 "Type A" 플러그와 같은 어시스턴트 표준 플러그)을 제공하는 차량에 의해 전력을 공급 및/또는 충전할 수 있다. 그러나, 컴퓨팅 장치(106)는 차량과 통합되지 않고 차량에서 쉽게 제거될 수 있고, 다른 차량에 쉽게 배치될 수 있으며, 다양한 환경에서 사용자에 의해 활용되는 스마트 폰 또는 기타 장치일 수 있다.
차량의 차량 컴퓨팅 장치(102)는 예를 들어 차량 내 통신 시스템, 차량 내 엔터테인먼트 시스템 및 차량 내 내비게이션 시스템 등일 수 있다. 추가 및/또는 대체 차량 컴퓨팅 장치가 제공될 수 있다. 다양한 구현에서, 차량 컴퓨팅 장치(102)는 차량과 통합되고 차량과 통합된 차량 스피커(들)를 직접 구동한다. 차량 컴퓨팅 장치(102)는 차량의 원래 장비일 수 있거나 애프터 마켓 설치 액세서리 일 수 있다. 차량 컴퓨팅 장치(102)는 차량 스피커(들)를 직접 구동하고 및/또는 특별한 도구의 사용 및/또는 상당한 시간 및/또는 전문 지식을 요구하지 않고 차량에서 제거될 수 없다는 점에서 통합된다. 예를 들어, 차량 컴퓨팅 장치(102)는 차량의 CAN(controller area network) 버스에 연결될 수 있고 및/또는 차량 고유의 커넥터(예: 12V 차량 콘센트 및 쉽게 접근할 수 있는 보조 표준 플러그가 아님)를 통해 전력이 공급될 수 있다. 많은 구현에서, 차량 컴퓨팅 장치(102)는 마이크로폰(들), 스피커(들) 및/또는 추가 사용자 인터페이스 장치를 포함하는 다양한 사용자 인터페이스 장치를 포함할 수 있다. 예를 들어, 오디오 출력은 차량 컴퓨팅 장치에 의해 구동되는 하나 이상의 차량 스피커를 통해 렌더링될 수 있다.
무선 통신 채널(104)은 하나 이상의 표준 통신 기술, 프로토콜 및/또는 프로세스 간 통신 기술을 선택적으로 이용할 수 있는 다양한 무선 통신 네트워크를 포함할 수 있다. 예를 들어, 무선 통신 채널(104)은 블루투스 채널(104)일 수 있고, 모바일 스마트 폰 컴퓨팅 장치(106)는 블루투스 채널(104)을 통해 차량 컴퓨팅 장치(102)와 통신적으로 결합될 수 있다. 추가 예로서, 클라이언트 장치(106)는 블루투스 채널(104)을 통해 차량 컴퓨팅 장치(102)로 오디오 데이터 스트림을 전송할 수 있으며, 이는 차량 컴퓨팅 장치(102)가 차량 내의 마이크로폰에 의해 캡처될 수 있는 해당 오디오 출력을 렌더링하게 할 수 있으며, 이 캡처된 데이터는 차량 오디오 지연을 결정하는 데 사용될 수 있다.
도 2는 무선 통신 네트워크(204)를 통해 차량 컴퓨팅 장치(202)와 통신 가능하게 결합된 컴퓨팅 장치(206)를 도시한다. 추가로, 컴퓨팅 장치(206)는 무선 통신 네트워크(208)를 통해 차량 인터페이스 장치(210)에 통신 가능하게 결합된다. 도 1에 대해 상술한 바와 같이, 컴퓨팅 장치(206)는 다양한 컴퓨팅 장치를 포함할 수 있고, 차량 컴퓨팅 장치(202)는 차량의 다양한 컴퓨팅 장치를 포함할 수 있으며, 및/또는 무선 통신 채널(204 및 208)은 다양한 통신 채널을 포함할 수 있다.
다양한 구현에서, 컴퓨팅 장치(206)는 추가적으로 및/또는 대안적으로 무선 통신 채널(208)을 통해 차량 인터페이스 장치(210)와 결합될 수 있다. 차량 인터페이스 장치(210)는 하나 이상의 추가 마이크로폰, 하나 이상의 추가 스피커, 하나 이상의 추가 버튼 등과 같은 추가 및/또는 대체 사용자 인터페이스 입력 및/또는 출력을 제공할 수 있다. 다양한 구현에서, 차량 인터페이스 장치(210)는 12V 차량 리셉터클(본 명세서에서 시가 라이터 리셉터클(cigarette lighter receptacle)이라고도 함), 차량 USB 포트, 배터리 등을 사용하여 전력을 공급받을 수 있다. 예를 들어, 차량 인터페이스 장치(210)는 차량의 12V 리셉터클에 의해 전력을 공급받을 수 있고 차량의 센터 콘솔 위 또는 주변에 위치할 수 있다(즉, 차량 인터페이스 장치(210)의 하나 이상의 마이크로폰(들)이 운전자 및/또는 추가 차량 승객에 의해 제공되는 음성을 캡처할 수 있도록 차량의 운전자 근처에 위치함). 모바일 스마트 폰과 같은 컴퓨팅 장치(206)는 무선 통신 채널(210)을 통해 차량 인터페이스 장치(210)와 통신 가능하게 결합될 수 있다. 추가 예로서, 모바일 스마트 폰 컴퓨팅 장치(206)는 제1 블루투스 채널(204)을 통해 차량 컴퓨팅 장치(202)와 통신적으로 결합될 수 있고, 컴퓨팅 장치(206)는 제2 블루투스 채널(208)을 통해 차량 인터페이스 장치(210)와 통신적으로 결합될 수 있다.
도 3은 차량 인터페이스 장치뿐만 아니라 차량 컴퓨팅 장치와 통신 가능하게 결합된 컴퓨팅 장치의 대안적인 구성을 도시한다. 컴퓨팅 장치(304), 차량 인터페이스 장치(302), 및/또는 차량 인터페이스 장치(308)는 도 1 및 도 2에서 설명된다. 다양한 구현에서, 차량은 무선 통신 채널을 통해 컴퓨팅 장치와 통신 가능하게 결합되지 않는다(예: 차량이 무선 통신 채널을 통해 컴퓨팅 장치와 연결하는 기능이 부족할 수 있음). 이러한 일부 구현에서, 컴퓨팅 장치(304)는 무선 통신 채널(306)을 통해 차량 인터페이스 장치(308)와 통신 가능하게 결합될 수 있다. 추가적으로, 차량 인터페이스 장치(308)는 통신 채널(310)을 통해 차량 컴퓨팅 장치와 통신 가능하게 결합될 수 있다. 예를 들어, 모바일 스마트 폰(즉, 컴퓨팅 장치(304))은 블루투스 채널(즉, 무선 통신 채널(306))을 통해 차량 인터페이스 장치(308)와 통신 가능하게 결합될 수 있다. 차량 인터페이스 장치(308)는 추가적으로 또는 대안적으로 보조 케이블(즉, 통신 채널(310))을 통해 차량 컴퓨팅 장치(302)와 통신적으로 결합될 수 있다.
다양한 구현에서, 컴퓨팅 장치(예:도 1의 106,도 2의 206 및/또는 도 3의 304)는 오디오 데이터 스트림을 차량 컴퓨팅 장치(예:도 1의 102, 도 2의 202 및/또는 도 3의 302)로 전송하고 캡처된 오디오 출력(하나 이상의 차량 스피커를 사용하여 렌더링됨)을 오디오 데이터 스트림과 비교함으로써 차량 장치 지연을 자동으로 결정할 수 있다. 많은 구현에 따른 오디오 데이터 스트림이 도 4와 관련하여 여기에서 설명된다. 많은 구현에서, 차량 스피커에 의해 렌더링된 캡처된 오디오 출력은 컴퓨팅 장치의 하나 이상의 마이크로폰 및/또는 차량 인터페이스 장치의 하나 이상의 마이크로폰을 사용하여 캡처될 수 있다.
다양한 구현에서, 지연이 결정되면, 지연 오디오 데이터가 미래의 오디오 데이터 스트림에 추가될 수 있으며, 여기서 지연 오디오 데이터의 길이는 결정된 지연을 사용하여 결정된다. 추가적으로 또는 대안적으로, 결정된 지연은 노이즈 감소 프로세스의 일부로서 이용될 수 있다.
많은 구현에서, 하나 이상의 차량 스피커를 통해 렌더링된 오디오 출력이 캡처될 수 있는지 여부를 결정하기 위해 오디오 데이터 스트림이 전송될 수 있다. 다시 말해, 테스트 오디오 신호는 차량 컴퓨팅 장치로 전송될 수 있다. 컴퓨팅 장치 및/또는 차량 인터페이스 장치가 차량 스피커를 통해 렌더링된 오디오 출력을 캡처할 수 없는 경우, 미래의 오디오 데이터 스트림은 컴퓨팅 장치의 스피커(들) 및/또는 차량 인터페이스 장치의 스피커(들)를 사용하여 렌더링될 수 있다.
본 명세서에 설명된 구현은 차량 컴퓨팅 장치와 통신 가능하게 결합된 컴퓨팅 장치에 관한 것이지만, 추가 또는 대안적인 컴퓨팅 장치가 컴퓨팅 장치와 결합될 수 있음을 이해해야한다. 예를 들어, 컴퓨팅 장치는 독립형 무선 스피커(예를 들어, 블루투스 무선 스피커와 통신적으로 연결된 모바일 스마트 폰)의 컴퓨팅 장치와 통신 가능하게 결합될 수 있다. 컴퓨팅 장치는 추가 및/또는 대안적인 추가 컴퓨팅 장치와 결합될 수 있다.
도 4에는 다양한 구현에 따른 예시적인 오디오 데이터 스트림 및 다양한 캡처된 오디오 데이터가 도시되어있다. 오디오 데이터 스트림(402)은 주파수 세그먼트 '1'(404), 주파수 세그먼트 '2'(406), 주파수 세그먼트 '3'(408), 주파수 세그먼트 '4'(410) 및 주파수 세그먼트 '5'(412)의 5 개 주파수 세그먼트의 시퀀스를 포함한다. 많은 구현에서, 컴퓨팅 장치는 차량 스피커(들)를 사용하여 렌더링하기 위해 오디오 데이터 스트림(402)을 차량 컴퓨팅 장치로 전송한다. 차례로, 차량 스피커(들)를 사용하여 렌더링된 대응하는 오디오 출력이 캡처되고 오디오 데이터(402)와 비교되어 임의의 차량 오디오 지연을 결정할 수 있다.
예를 들면, 차량 오디오 지연은 제1(첫 번째) 주파수 세그먼트보다 짧을 수 있다. 캡처된 오디오 데이터(414)는 제1 주파수 세그먼트(404) 길이의 대략 절반 길이의 지연을 나타내고, 시퀀스 주파수 세그먼트 '1'(416), 주파수 세그먼트 '2'(418), 주파수 세그먼트 '3'(420), 주파수 세그먼트 '4'(422), 및 주파수 세그먼트 '5'(424)를 캡처한다. 오디오 장치 지연으로 인해 캡처된 오디오 데이터(414)의 주파수 세그먼트 '1'(416)은 오디오 데이터 스트림(402)의 주파수 세그먼트 '1'(404)보다 짧다. 많은 구현에서, 지연 오디오 세그먼트는 주파수 세그먼트 '1'(416)의 끝과 주파수 세그먼트 '1'(404) 사이의 차이를 사용하여 결정될 수 있다. 추가 주파수 세그먼트‘2’,‘3’,‘4’및/또는‘5’는 유사한 지연을 가지며 컴퓨팅 장치는 추가 캡처된 주파수 세그먼트를 사용하여 추가적으로 및/또는 대안으로 지연을 결정할 수 있다. 예를 들어, 오디오 데이터 스트림의 길이는 2.5 초이고 5 개의 0.5 초 길이의 주파수 세그먼트를 포함할 수 있다. 캡처된 오디오 데이터는 0.3 초의 주파수 세그먼트 '1'을 캡처할 수 있다(즉, 캡처된 오디오 데이터는 2.3 초의 주파수 세그먼트를 캡처할 수 있음). 컴퓨팅 장치는 주파수 세그먼트 '1'(404)을 주파수 세그먼트 '1'(416)과 비교하여 0.2 초의 지연을 결정할 수 있다. 유사하게, 주파수 세그먼트 '2'(406)는 0.25 초의 지연을 결정하기 위해 주파수 세그먼트 '2'(418)와 비교될 수 있고, 주파수 세그먼트 '3'(408)은 0.2 초의 지연을 결정하기 위해 주파수 세그먼트 '3'(420)과 비교될 수 있고, 주파수 세그먼트 '4'(410)는 0.3 초의 지연을 결정하기 위해 주파수 세그먼트 '4'(422)와 비교될 수 있고, 주파수 세그먼트 '5'(412)는 0.2 초의 지연을 결정하기 위해 주파수 세그먼트 '5'(424)와 비교될 수 있다. 컴퓨팅 장치는 0.3 초를 지연으로 선택할 수 있다(즉, 0.3 초는 0.2 초, 0.25 초, 0.2 초, 0.3 초 및 0.2 초의 결정된 지연에서 가장 큰 지연이다).
많은 구현에서 캡처된 오디오 데이터에서 전체 주파수 세그먼트가 누락될 수 있다. 시스템은 오디오 데이터 스트림(402)의 주파수 세그먼트를 주파수 세그먼트 '2'(428), 주파수 세그먼트 '3'(430), 주파수 세그먼트 '4'(432) 및 주파수 세그먼트 '5'(434)의 시퀀스를 캡처하는 캡처된 오디오 데이터와 비교할 수 있다. 즉, 오디오 데이터 스트림(402)의 주파수 세그먼트 '1'(404)은 캡처된 오디오 데이터 스트림(426)에서 대응하는 표현을 갖지 않는다. 예를 들어, 오디오 데이터 스트림(402)은 5 초 길이 일 수 있고, 5 개의 1 초 주파수 세그먼트를 포함할 수 있다. 컴퓨팅 장치는 캡처된 오디오 데이터 스트림(426)이 주파수 세그먼트 '1'(404)을 포함하지 않는다고 결정할 수 있다. 누락된 주파수 세그먼트(들)의 수는 1 초 지연을 결정하기 위해 오디오 데이터 스트림(402) 내의 주파수 세그먼트의 1 초 길이에 곱해질 수 있다.
많은 구현에서 전체 주파수 세그먼트가 누락(missing)될 수 있을뿐만 아니라 주파수 세그먼트의 일부가 누락될 수 있다. 캡처된 오디오 데이터(436)는 주파수 세그먼트 '1' 및 주파수 세그먼트 '2'가 완전히 누락되고 주파수 세그먼트 '3'의 일부가 누락된 캡처된 오디오를 예시한다. 즉, 캡처된 오디오 데이터(436)는 주파수 세그먼트 '3'(438), 주파수 세그먼트 '4'(440) 및 주파수 세그먼트 '5'(442)를 포함하고, 여기서 캡처된 오디오 데이터(436)의 주파수 세그먼트 '3'(438)은 오디오 데이터 스트림(402)의 주파수 세그먼트 '3'(408)보다 짧다. 장치 지연은 전술한 바와 같이 누락된 주파수 세그먼트(들)의 길이 및 제1 캡처된 주파수 세그먼트의 누락 부분의 조합을 사용하여 결정될 수 있다. 예를 들어, 오디오 데이터 스트림(402)은 5 개의 0.3 초 긴 주파수 세그먼트를 포함할 수 있다(즉, 오디오 데이터 스트림(402)은 1.5 초 길이이다). 캡처된 오디오 데이터 스트림은 단지 0.7 초의 오디오 데이터 스트림(402)을 캡처할 수 있다. 0.7 초의 지연은 캡처된 오디오 데이터 스트림(436)과 오디오 데이터 스트림(402)을 비교하여 주파수 세그먼트 '1'(404)에 대응하는 주파수 세그먼트를 결정하고 주파수 세그먼트 '2'(406)가 캡처된 오디오 데이터 스트림(436)에서 캡처되지 않음을 결정함으로써 결정될 수 있다. 또한, 주파수 세그먼트‘3’(408)을 캡처된 주파수 세그먼트‘3’(438)과 비교하여 0.1 초의 주파수 세그먼트‘3’(438)만 캡처한 것으로 결정할 수 있다. 컴퓨팅 장치는 누락된 주파수 세그먼트의 지연(누락된 주파수 세그먼트‘1’에서의 0.3 초 + 누락된 주파수 세그먼트‘2’에서의 0.3 초)을 제1(첫 번째) 캡처된 주파수 세그먼트 '3'438(0.2 초)의 지연과 결합하여 0.8 초 지연(0.3 + 0.3 + 0.2)을 결정함으로써 지연을 결정할 수 있다.
추가적으로 또는 대안적으로, 캡처된 오디오 데이터는 오디오 데이터 스트림의 시작과 끝 모두의 일부가 누락될 수 있다. 예를 들어, 캡처된 오디오 데이터(444)는 주파수 세그먼트 '2'(446) 및 주파수 세그먼트 '3'(448)을 포함하며, 여기서 주파수 세그먼트 '2'(446)는 오디오 데이터 스트림(402)의 주파수 세그먼트 '2'(406)보다 짧다. 즉, 주파수 세그먼트‘1’,‘4’및‘5’가 완전히 누락되고 주파수 세그먼트‘2’의 일부가 캡처된 오디오 데이터(444)에서 누락되었다. 제1 차량 지연은 누락된 주파수 세그먼트 '1'과 누락된 주파수 세그먼트 '2'의 일부를 기반으로 결정될 수 있다. 추가적으로 또는 대안적으로, 제2(두 번째) 차량 지연은 누락된 주파수 세그먼트 '4'및 '5'를 기반으로 결정될 수 있다. 예를 들어, 오디오 데이터 스트림(402)은 각각 1 초 길이의 5 개의 주파수 세그먼트를 포함할 수 있다(즉, 오디오 데이터 스트림은 5 초 길이 임). 오디오 데이터 스트림(402)은 캡처된 오디오 데이터 스트림(444)과 비교되어 캡처된 오디오 데이터 스트림(444)이 주파수 세그먼트 '1'(404), 주파수 세그먼트 '4'(410) 및 주파수 세그먼트 '5'(412)에 대응하는 주파수 세그먼트를 캡처하지 않는다고 결정할 수 있다. 또한, 캡처된 주파수 세그먼트 '2'(446)를 주파수 세그먼트 '2'(406)와 비교하고 캡처된 주파수 세그먼트 '3'(448)을 주파수 세그먼트 '3'(408)과 비교함으로써 추가 0.4 초 지연이 결정될 수 있다. 캡처된 오디오 데이터 스트림의 시작 부분에서 발생하는 제1(첫 번째) 오디오 지연은 캡처된 주파수 세그먼트 '2'(0.4 초)의 지연과 누락된 주파수 세그먼트 '1'(1 초)의 길이를 결합하여 1.4 초로 결정할 수 있다. 추가적으로 또는 대안적으로, 2 초의 캡처된 오디오 데이터 스트림의 끝에서 발생하는 제2(두 번째) 오디오 지연은 누락된 주파수 세그먼트 '4'(1 초)와 누락된 주파수 세그먼트 '5'(1 초)의 길이를 결합하여 결정될 수 있다.
주파수 세그먼트의 특정 시퀀스가 도 4와 관련하여 설명되고, 도 4에 도시 된 바와 같이, 다양한 오디오 데이터 스트림(및 대응하는 캡처된 오디오 데이터)이 많은 구현에 따라 활용될 수 있다. 예를 들어, 오디오 데이터 스트림은 단일 주파수의 세그먼트일 수 있다. 예를 들어, 오디오 데이터 스트림은 단일 주파수의 8 초 길이 세그먼트 일 수 있고, 캡처된 오디오 데이터는 단일 주파수의 6.5 초만 캡처할 수 있고, 1.5 초의 차량 오디오 지연은 세그먼트의 예상 지속 시간(8 초)을 캡처된 오디오 데이터의 실제 지속 시간(6.5 초)과 비교하여 결정될 수 있다. 또 다른 예로서, 각 주파수 세그먼트는 여러 동시 발생 주파수(예를 들어, 이중 톤 동시 발생 주파수, 3 음 동시 발생 주파수 등)일 수 있다. 많은 구현에서, 주파수 세그먼트의 시퀀스는 주파수 세그먼트의 반복되지 않는 시퀀스를 포함한다. 많은 구현에서, 주파수 세그먼트의 시퀀스는 누락된 주파수 세그먼트를 고유하게 식별할 수 있는 반복 주파수 세그먼트를 포함한다. 예를 들어 시퀀스는‘1’,‘2’,‘3’,‘4’,‘5’,‘4’,‘3’,‘2’,‘1’의 주파수 세그먼트 표현일 수 있다. 오디오 데이터 스트림은 0.5 초, 1 초, 1.5 초, 2 초 등과 같은 다양한 길이일 수 있다.
도 5를 참조하면, 본 명세서에 개시된 구현들에 따라 차량 오디오 지연을 결정하는 예시적인 프로세스(500)가 예시된다. 편의상, 도 5의 흐름도의 특정 양태의 동작은 동작을 수행하는 시스템을 참조하여 설명된다. 이 시스템은 다양한 컴퓨터 시스템의 다양한 컴포넌트 및/또는 GPU(들), CPU(들) 및/또는 TPU(들) 중 하나 이상을 포함할 수 있다. 예를 들어, 시스템은 스마트 폰 또는 다른 컴퓨팅 장치 및/또는 차량 인터페이스 장치를 포함할 수 있다. 더욱이, 프로세스(500)의 동작이 특정 순서로 도시되지만, 이것은 제한하는 것을 의미하지 않는다. 하나 이상의 동작을 재정렬, 생략 및/또는 추가할 수 있다.
블록 502에서, 시스템은 컴퓨팅 장치가 무선 통신 채널을 통해 차량 컴퓨팅 장치로 오디오 데이터 스트림을 전송하게 한다. 예를 들어, 모바일 스마트 폰은 블루투스를 통해 차량 컴퓨팅 장치로 오디오 데이터 스트림을 전송할 수 있다. 다른 예로서, 모바일 스마트 폰은 블루투스를 통해 차량 인터페이스 장치로 오디오 데이터 스트림을 전송할 수 있고, 차량 인터페이스 장치는 차량 컴퓨팅 장치로 오디오 데이터 스트림을 전송할 수 있다. 또 다른 예로서, 차량 인터페이스 장치는 블루투스 및/또는 유선 통신 채널을 통해 차량 컴퓨팅 장치에 오디오 데이터 스트림을 전송할 수 있다.
블록 504에서, 시스템은 차량 컴퓨팅 장치가 차량의 하나 이상의 스피커를 통해 오디오 데이터 스트림을 사용하여 생성된 가청 출력을 렌더링하도록 하고, 여기서 차량의 하나 이상의 스피커는 차량 컴퓨팅 장치에 의해 구동된다. 예를 들어, 차량 컴퓨팅 장치는 오디오 데이터 스트림의 전부 또는 일부에 기초하여 차량과 통합된 차량 스피커를 구동할 수 있으며, 이에 따라 차량 스피커가 대응하는 가청 출력을 렌더링하게 할 수 있다. 본 명세서에 설명된 바와 같이, 차량 컴퓨팅 장치가 지연을 가지지 않는다면, 대응하는 가청 출력은 전체 오디오 데이터 스트림을 포함 할 것이다. 그러나 차량 컴퓨팅 장치에 지연이 있는 경우 해당 가청 출력은 오디오 데이터 스트림의 하나 이상의 부분을 생략할 수 있다.
블록 506에서, 시스템은 차량의 하나 이상의 스피커를 통해 렌더링된 가청 출력을 캡처하는 캡처된 오디오 데이터를 수신한다. 캡처된 오디오 데이터는 차량 내 최소 하나의 마이크로폰에 의해 캡처된다. 일부 구현에서, 차량 내의 적어도 하나의 마이크로폰은 블록 502에서 오디오 데이터 스트림을 전송한 컴퓨팅 장치와 같은 컴퓨팅 장치의 마이크로폰을 포함한다. 일부 구현에서, 차량 내의 적어도 하나의 마이크로폰은 추가적으로 또는 대안적으로 차량 인터페이스 장치의 마이크로폰을 포함하고, 차량 인터페이스 장치는 블록 502에서 오디오 데이터 스트림을 전송한 컴퓨팅 장치와 분리될 수 있다. 추가적으로 또는 대안적으로, 가청 출력은 컴퓨팅 장치의 적어도 하나의 마이크로폰뿐만 아니라 차량 인터페이스 장치의 적어도 하나의 마이크로폰에 의해 캡처될 수 있다.
블록 508에서, 시스템은 캡처된 오디오 데이터를 오디오 데이터 스트림과 비교함으로써 차량 오디오 지연을 결정한다. 차량 오디오 지연을 결정하는 일부 비 제한적인 예가 여기에 설명되어 있다(예를 들어,도 4와 관련하여 위에서).
블록 510에서, 시스템은 차량 컴퓨팅 장치로 전송할 추가 오디오 데이터 스트림이 있는지 여부를 결정한다. 많은 구현에서, 컴퓨팅 장치의 자동화된 어시스턴트 클라이언트는 추가 오디오 데이터 스트림을 생성한다. 많은 구현에서, 차량 인터페이스 장치의 자동화된 어시스턴트 클라이언트는 추가 오디오 데이터 스트림을 생성한다. 그렇다면, 시스템은 블록 512로 진행하고, 시스템은 지연 오디오 세그먼트를 추가 오디오 데이터 스트림에 추가하며, 여기서 지연 오디오 세그먼트의 지속 시간은 차량 오디오 지연을 사용하여 결정된다. 다양한 구현에서, 지연 오디오 세그먼트는 백색 노이즈, 사람이 들을 수 없는 고주파수 세그먼트 및 추가 기타 사운드를 포함하는 다양한 오디오를 포함할 수 있다. 지연 오디오 세그먼트는 필요에 따라 반복되는 단일 길이일 수 있다(즉, 0.2 지연 오디오 세그먼트는 0.1 초 지연 및 0.2 초 지연에 대해 한 번 추가될 수 있으며, 0.2 지연 오디오 데이터 세그먼트는 0.3 초 지연 및 0.4 초 지연에 대해 두 번 추가될 수 있다). 추가적으로 또는 대안적으로, 지연 오디오 세그먼트의 길이는 결정된 오디오 지연에 맞춤화될 수 있다(즉, 0.5 초 지연이 결정되면 0.5 초 지연 오디오 세그먼트가 추가될 수 있고, 0.75 지연이 결정되면 0.75 초 지연 오디오 세그먼트가 추가될 수 있다). 또한 결정된 오디오 지연보다 약간 더 긴 지연 오디오 세그먼트를 추가할 수 있다(즉, 0.25 초 오디오 지연이 결정되면 0.3 초 지연 오디오 세그먼트가 추가될 수 있고, 0.5 초 오디오 지연이 결정될 때 0.75 초 지연 오디오 세그먼트가 추가될 수 있다).
블록 514에서, 시스템은 컴퓨팅 장치로 하여금 추가된 지연 오디오 세그먼트를 갖는 추가 오디오 스트림을 무선 통신 채널을 통해 차량 컴퓨팅 장치로 전송하게 한다. 시스템이 추가 오디오 데이터 스트림을 전송하면 프로세스가 종료된다.
블록 510에서 시스템이 차량 컴퓨팅 장치로 전송할 추가 오디오 데이터 스트림이 없다고 결정하면, 시스템은 블록 516으로 진행하고, 여기서 시스템은 노이즈 제거 필터가 있는지 여부를 결정한다. 시스템에서 노이즈 제거(캔슬링) 필터가 없다고 결정하면 프로세스가 종료된다. 블록 516에서 시스템이 노이즈 제거 필터가 있다고 결정하면, 시스템은 프로세스가 종료되기 전에 차량 오디오 지연에 기초하여 컴퓨팅 장치로 하여금 노이즈 제거 필터를 적응시키도록 하는 블록(518)으로 진행한다. 많은 구현에서, 노이즈 제거 필터는 컴퓨팅 장치에 국부적으로 저장된다. 많은 구현에서, 노이즈 제거 필터는 별도의 컴퓨팅 장치(예를 들어, 별도의 차량 인터페이스 장치)에 저장된다. 노이즈 제거 필터를 별도의 전산 장치에 보관하면, 블록(512)은 차량 오디오 지연에 기초하고 별도의 컴퓨팅 장치가 차량 오디오 지연에 기초하여 그 로컬 노이즈 제거 필터를 적응하게 하는 데이터를 별도의 컴퓨팅 장치로 전송하는 것을 포함할 수 있다.
도 5는 결정된 차량 오디오 지연에 기초하여 지연 오디오 세그먼트를 추가하는 것 및 결정된 차량 오디오 지연에 기초하여 노이즈 제거 필터를 적응(adaptation)시키는 것을 모두 포함하는 프로세스를 예시한다. 그러나, 본 명세서에 설명된 바와 같이, 다양한 구현에서 지연 오디오 세그먼트는 노이즈 제거 필터의 임의의 적응없이 추가될 수 있거나, 노이즈 제거 필터의 적응이 지연 오디오 세그먼트의 추가없이 발생할 수 있다.
도 6을 참조하면, 차량 컴퓨팅 장치에 의해 구동되는 하나 이상의 스피커가 여기에 개시된 구현에 따라 오디오 데이터 스트림을 사용하여 생성된 가청 출력을 렌더링하는지 여부를 결정하는 예시적인 프로세스(600)가 도시되어있다. 편의상, 도 6의 흐름도의 특정 양태의 동작은 동작을 수행하는 시스템을 참조하여 설명된다. 이 시스템은 다양한 컴퓨터 시스템의 다양한 컴포넌트 및/또는 GPU(들), CPU(들) 및/또는 TPU(들) 중 하나 이상을 포함할 수 있다. 예를 들어, 시스템은 스마트 폰 또는 다른 컴퓨팅 장치 및/또는 차량 인터페이스 장치를 포함할 수 있다. 더욱이, 프로세스(600)의 동작이 특정 순서로 도시되지만, 이것은 제한하는 것을 의미하지 않는다. 하나 이상의 작업을 재정렬, 생략 및/또는 추가할 수 있다.
블록 602에서, 시스템은 통신 채널을 통해 컴퓨팅 장치로부터 차량 컴퓨팅 장치로 오디오 데이터 스트림을 전송할지 여부를 결정한다. 많은 구현에서 시스템은 차량이 통신 채널 모드인지 여부를 결정한다(즉, 차량이 블루투스 모드인지 여부, 차량이 블루투스 모드로 자동 전환을 지원하는지 여부 등). 많은 구현에서, 시스템은 차량 컴퓨팅 장치에 의해 구동되는 하나 이상의 스피커의 볼륨이 차량 내의 하나 이상의 마이크로폰을 통해 캡처되는 렌더링된 오디오 출력에 너무 낮은지 여부를 결정한다. 시스템이, 차량이 통신 채널 모드에 있고(또는 통신 채널 모드로의 자동 전환 지원) 차량 컴퓨팅 장치에 의해 구동되는 스피커(들)의 볼륨이 너무 낮지 않다고 결정하면, 시스템은 블록 604로 진행한다.
차량이 통신 채널 모드에 있지 않다고 시스템이 결정하거나 시스템이 차량 컴퓨팅 장치에 의해 구동되는 스피커(들)의 볼륨이 너무 낮다고 결정하면, 시스템은 블록 612로 진행한다.
블록 604에서, 시스템은 컴퓨팅 장치로 하여금 통신 채널을 통해 차량 컴퓨팅 장치로 오디오 데이터 스트림을 전송하게 한다. 일부 구현에서, 통신 채널은 무선 통신 채널(예를 들어, 블루투스 채널)이다. 다른 구현에서, 통신 채널은 유선 통신 채널(예를 들어, 보조 케이블)이다.
블록 606에서, 시스템은 차량 컴퓨팅 장치로 하여금 차량 컴퓨팅 장치에 의해 구동되는 하나 이상의 스피커를 통해 오디오 데이터 스트림에 기초하여 생성된 가청 출력을 렌더링하게 한다.
블록 608에서, 시스템은 가청 출력이 차량 내의 적어도 하나의 마이크로폰에 의해 캡처되는지 여부를 결정한다. 시스템이 가청 출력이 적어도 하나의 마이크로폰에 의해 캡처된 것으로 결정하면, 시스템은 블록 610으로 진행한다. 시스템이 가청 출력이 적어도 하나의 마이크로폰에 의해 캡처되지 않는다고 결정하면, 시스템은 블록 612로 진행한다. 많은 구현에서, 가청 출력은 컴퓨팅 장치의 적어도 하나의 마이크로폰에 의해 캡처된다. 많은 구현에서, 가청 출력은 차량 인터페이스 장치의 적어도 하나의 마이크로폰에 의해 캡처된다. 많은 구현에서, 가청 출력은 컴퓨팅 장치의 적어도 하나의 마이크로폰 및 차량 인터페이스 장치의 적어도 하나의 마이크로폰에 의해 캡처된다.
블록 610에서, 시스템은 컴퓨팅 장치로 하여금 차량 컴퓨팅 장치에 의해 구동되는 하나 이상의 스피커를 통해 렌더링하기 위해 차량 컴퓨팅 장치에 추가 오디오 데이터 스트림을 전송하게 한다.
블록(612)에서, 시스템은 추가 오디오 데이터 스트림이 차량 내의 하나 이상의 대체 스피커에서 렌더링되도록 하고, 여기서 하나 이상의 대체 스피커는 차량 컴퓨팅 장치에 의해 구동되지 않는다. 많은 구현에서, 하나 이상의 대체 스피커는 컴퓨팅 장치의 스피커(들)이다. 많은 구현에서, 하나 이상의 대체 스피커는 차량 인터페이스 장치의 스피커(들)이다.
도 7은 본 명세서에 개시된 구현이 구현될 수 있는 예시적인 환경이다. 도 7은 자동화된 어시스턴트 클라이언트(704)의 인스턴스를 실행하는 클라이언트 컴퓨팅 장치(클라이언트 장치)(702)를 포함한다. 하나 이상의 클라우드 기반 자동화된 어시스턴트 컴포넌트(712)는 일반적으로 710으로 표시된 하나 이상의 로컬 및/또는 광역 네트워크(예: 인터넷)를 통해 클라이언트 장치(702)에 통신적으로 결합되는 하나 이상의 컴퓨팅 시스템(통칭 "클라우드" 컴퓨팅 시스템이라고 함)에서 구현될 수 있다.
하나 이상의 클라우드 기반 자동 어시스턴트 컴포넌트(712)와의 상호 작용을 통한 자동화된 어시스턴트 클라이언트(704)의 인스턴스는 사용자의 관점에서 사용자가 인간 대 컴퓨터 대화에 참여할 수 있는 자동화된 어시스턴트(700)의 논리적 인스턴스인 것처럼 보이는 것을 형성할 수 있다. 따라서, 일부 구현에서, 클라이언트 장치(702)에서 실행하는 자동화된 어시스턴트 클라이언트(704)와 참여하는 사용자는 사실상 자신의 자동화된 어시스턴트(700)의 논리적 인스턴스와 참여할 수 있다는 것을 이해해야 한다. 간결함과 단순함을 위해, 특정 사용자에게 "서비스를 제공하는" 것으로 본 명세서에서 사용되는 "자동화된 어시스턴트"라는 용어는 종종 사용자에 의해 작동되는 클라이언트 장치(702)에서 실행되는 자동 어시스턴트 클라이언트(704)와 하나 이상의 클라우드 기반 자동 어시스턴트 컴포넌트(712)(여러 클라이언트 컴퓨팅 장치의 여러 자동화된 어시스턴트 클라이언트간에 공유될 수 있음)의 조합을 지칭할 것이다. 또한, 일부 구현에서, 자동화된 어시스턴트(700)는 사용자가 자동화된 어시스턴트(700)의 특정 인스턴스에 의해 실제로 "서비스"를 받는지 여부에 관계없이 임의의 사용자로부터의 요청에 응답할 수 있다는 것을 이해해야한다.
클라이언트 컴퓨팅 장치(702)는 예를 들어 데스크탑 컴퓨팅 장치, 랩톱 컴퓨팅 장치, 태블릿 컴퓨팅 장치, 모바일 스마트 폰 컴퓨팅 장치, 독립형 대화형 스피커, 스마트 기기 및/또는 컴퓨팅 장치를 포함하는 사용자의 웨어러블 장치(예: 컴퓨팅 장치가 있는 사용자의 시계, 컴퓨팅 장치가 있는 사용자의 안경, 가상 또는 증강 현실 컴퓨팅 장치)일 수 있다. 추가 및/또는 대체 클라이언트 컴퓨팅 장치가 제공될 수 있다. 추가적으로 또는 대안적으로, 클라이언트 컴퓨팅 장치(702)의 동작은 다수의 컴퓨팅 장치간에 분산될 수 있다. 예를 들어, 클라이언트 컴퓨팅 장치(702)의 하나 이상의 동작이 모바일 스마트 폰과 차량 컴퓨팅 장치 사이에 분산될 수 있다. 더욱이, 클라이언트 컴퓨팅 장치(702)의 동작은 다수의 컴퓨팅 장치 사이에서 반복될 수 있다(일부 경우에는 통신적으로 결합될 수 있음). 추가 예로서, 모바일 스마트 폰 및 차량 인터페이스 장치는 각각 호출 엔진(후술됨)을 포함하는 모바일 스마트 폰 및 차량 인터페이스 장치와 같은 자동 어시스턴트(700)의 동작을 구현할 수 있다. 다양한 구현에서, 클라이언트 컴퓨팅 장치(702)는 메시지 교환 클라이언트(예를 들어, SMS, MMS, 온라인 채팅), 브라우저 등과 같이 자동화된 어시스턴트 클라이언트(704)에 추가되는 하나 이상의 다른 애플리케이션을 선택적으로 동작시킬 수 있다. 이러한 다양한 구현 중 일부에서, 다른 애플리케이션 중 하나 이상은 선택적으로 자동화된 어시스턴트(704)와 (예: 애플리케이션 프로그래밍 인터페이스를 통해) 인터페이싱하거나 자동화된 어시스턴트 애플리케이션(클라우드 기반 자동 어시스턴트 컴포넌트(들)(712)와 인터페이스할 수도 있음) 의 자체 인스턴스를 포함할 수 있다.
자동화된 어시스턴트(700)는 클라이언트 장치(702)의 사용자 인터페이스 입력 및 출력 장치를 통해 사용자와 인간 대 컴퓨터 대화 세션에 참여한다. 사용자 프라이버시를 보존하고 및/또는 자원(리소스)을 보존하기 위해, 많은 상황에서 사용자는 자동화된 어시스턴트가 음성 발화를 완전히 처리하기 전에 종종 명시적으로 자동화된 어시스턴트(700)를 호출해야한다. 자동화된 어시스턴트(700)의 명시적 호출은 클라이언트 장치(702)에서 수신된 특정 사용자 인터페이스 입력에 응답하여 발생할 수 있다. 예를 들어, 클라이언트 장치(702)를 통해 자동화된 어시스턴트(700)를 호출할 수 있는 사용자 인터페이스 입력은 선택적으로 클라이언트 장치(702)의 하드웨어 및/또는 가상 버튼의 작동을 포함할 수 있다. 더욱이, 자동화된 어시스턴트 클라이언트는 하나 이상의 음성 호출 문구의 존재를 검출하도록 동작할 수 있는 호출 엔진과 같은 하나 이상의 로컬 엔진(708)을 포함할 수 있다. 호출 엔진은 음성 호출 문구 중 하나 이상의 검출에 응답하여 자동화된 어시스턴트(700)를 호출할 수 있다. 예를 들어, 호출 엔진은 "Hey Assistant", "OK Assistant" 및/또는 "Assistant"와 같은 음성 호출 문구를 검출하는 것에 응답하여 자동화된 어시스턴트(700)를 호출할 수 있다. 호출 엔진은 음성 호출 문구의 발생을 모니터링하기 위해 클라이언트 장치(702)의 하나 이상의 마이크로폰으로부터의 출력에 기초한 오디오 데이터 프레임의 스트림을 (예: "비활성"모드가 아닌 경우)연속적으로 처리할 수 있다. 음성 호출 문구의 발생을 모니터링하는 동안 호출 엔진은 음성 호출 문구를 포함하지 않는 오디오 데이터 프레임을 (예: 버퍼에 임시 저장 후) 폐기한다. 그러나, 호출 엔진이 처리된 오디오 데이터 프레임에서 음성 호출 문구의 발생을 검출할 때, 호출 엔진은 자동화된 어시스턴트(700)를 호출할 수 있다. 본 명세서에서 사용되는 바와 같이, 자동화된 어시스턴트(700)를 "호출"하는 것은 자동화된 어시스턴트(700)의 하나 이상의 이전에 비활성화된 기능을 활성화시키는 것을 포함할 수 있다. 예를 들면, 자동화된 어시스턴트(700)를 호출하는 것은 하나 이상의 로컬 엔진(708) 및/또는 클라우드 기반 자동화된 어시스턴트 컴포넌트(712)로 하여금 호출 문구가 검출된 것에 기초하여 오디오 데이터 프레임 및/또는 하나 이상의 후속 오디오 데이터 프레임을 추가로 처리하게 하는 것을 포함할 수 있다(반면을 호출하기 전에는 오디오 데이터 프레임에 대한 추가 처리가 발생하지 않았음).
자동화된 어시스턴트(704)의 하나 이상의 로컬 엔진(들)(708)은 선택적이며, 예를 들어, 위에서 설명한 호출 엔진, 로컬 STT(speech-to-text) 엔진(캡처된 오디오를 텍스트로 변환), 로컬 TTS(text-to-speech) 엔진(텍스트를 음성으로 변환), 로컬 자연 언어 프로세서(오디오 및/또는 오디오에서 변환된 텍스트의 의미론적 의미를 결정함) 및/또는 기타 로컬 컴포넌트를 포함 할 수 있다. 클라이언트 장치(702)는 컴퓨팅 리소스(예를 들어, 프로세서 사이클, 메모리, 배터리 등) 측면에서 상대적으로 제한되기 때문에, 로컬 엔진(108)은 클라우드 기반 자동 어시스턴트 컴포넌트(712)에 포함된 임의의 카우터파트(counterparts)에 비해 제한된 기능을 가질 수 있다.
자동화된 어시스턴트 클라이언트(704)는 지연(딜레이) 엔진(706) 및 오디오 데이터(720)를 추가로 포함할 수 있다. 지연 엔진(706)은, 오디오 데이터 스트림을 차량 컴퓨팅 장치로 전송하고, 오디오 데이터 스트림을 차량 인터페이스 장치로 전송하고, 차량 장치 지연을 결정하고, 오디오 데이터 스트림에 오디오 지연 세그먼트를 추가하고, 차량 장치 지연을 차량 인터페이스 장치로 전송하고, 차량 스피커 등을 사용하여 렌더링된 오디오 데이터 캡처하는 것을 포함하는 다양한 구현에 따라 자동화된 어시스턴트 클라이언트(704)에 의해 이용될 수 있다. 많은 구현에서, 지연 엔진(706)은 오디오 데이터 데이터베이스(720)로부터 오디오 데이터 스트림을 선택할 수 있다.
클라우드 기반 자동 어시스턴트 컴포넌트(712)는 로컬 엔진(들)(708)의 임의의 카운트파트에 비해, 오디오 데이터 및/또는 다른 사용자 인터페이스 입력의 더 로버스트(robust)하고 및/또는 더 정확한 처리를 수행하기 위해 클라우드의 사실상 무한한 리소스를 활용한다. 다시 말하지만, 다양한 구현에서, 클라이언트 장치(702)는 음성 호출 문구를 검출하거나 자동화 어시스턴트(700)의 일부 다른 명시적 호출을 검출하는 호출 엔진에 응답하여 클라우드 기반 자동 어시스턴트 컴포넌트(712)에 오디오 데이터 및/또는 다른 데이터를 제공할 수 있다.
도시된 클라우드 기반 자동 어시스턴트 컴포넌트(712)는 클라우드 기반 TTS 모듈(714), 클라우드 기반 STT 모듈(716) 및 자연어 프로세서(718)를 포함한다. 일부 구현에서, 자동화된 어시스턴트(700)의 엔진 및/또는 모듈 중 하나 이상이 생략, 결합 및/또는 자동화된 어시스턴트(700)와 별개인 컴포넌트에서 구현될 수 있다. 또한, 일부 구현에서 자동화된 어시스턴트(700)는 추가 및/또는 대안 엔진 및/또는 모듈을 포함할 수 있다.
클라우드 기반 STT 모듈(716)은 오디오 데이터를 텍스트로 변환할 수 있으며, 이는 자연어 처리기(718)에 제공될 수 있다. 다양한 구현에서, 클라우드 기반 STT 모듈(716)은 할당 엔진(도시되지 않음)에 의해 제공되는 화자 라벨 및 할당의 표시에 적어도 부분적으로 기초하여 오디오 데이터를 텍스트로 변환할 수 있다.
클라우드 기반 TTS 모듈(714)은 텍스트 데이터(예를 들어, 자동화된 어시스턴트(700)에 의해 공식화된 자연어 응답)를 컴퓨터 생성 음성 출력으로 변환할 수 있다. 일부 구현에서, TTS 모듈(714)은 예를 들어 하나 이상의 스피커를 사용하여 직접 출력되도록 컴퓨터 생성 음성 출력을 클라이언트 장치(702)에 제공할 수 있다. 다른 구현들에서, 자동화된 어시스턴트(700)에 의해 생성된 텍스트 데이터(예를 들어, 자연어 응답)는 로컬 엔진(들)(708) 중 하나에 제공될 수 있으며, 이는 텍스트 데이터를 로컬로 출력되는 컴퓨터 생성 음성으로 변환할 수 있다.
자동화된 어시스턴트(700)의 자연어 프로세서(718)는 자유 형식의 자연어 입력을 처리하고 자연어 입력에 기초하여 자동화된 어시스턴트(700)의 하나 이상의 다른 컴포넌트에 의해 사용하기 위한 주석이 달린 출력을 생성한다. 예를 들어, 자연어 프로세서(718)는 클라이언트 장치(702)를 통해 사용자에 의해 제공되는 오디오 데이터의 STT 모듈(716)에 의한 변환인 텍스트 입력인 자연어 자유 형식 입력을 처리할 수 있다. 생성된 주석이 달린 출력은 자연어 입력의 하나 이상의 주석 및 선택적으로 자연어 입력의 용어 중 하나 이상(예를 들어, 모두)을 포함할 수 있다. 일부 구현에서, 자연어 프로세서(718)는 자연어 입력에서 다양한 유형의 문법 정보를 식별하고 주석을 달도록 구성된다. 예를 들어, 자연어 처리기(718)는 문법적 역할과 함께 용어에 주석을 달도록 구성된 음성 태거(도시되지 않음)의 일부를 포함할 수 있다. 또한 예를 들어 일부 구현에서, 자연어 프로세서(718)는 추가적으로 및/또는 대안적으로 자연어 입력에서 용어들 간의 구문 관계를 결정하도록 구성된 종속성 파서(dependency parser)(도시되지 않음)를 포함할 수 있다.
일부 구현에서, 자연어 프로세서(718)는 추가적으로 및/또는 대안적으로 사람(예를 들어 문학 인물, 유명인, 유명인 등을 포함), 조직, 위치(실제 및 가상) 등에 대한 참조와 같은 하나 이상의 세그먼트에서 엔티티 참조에 주석을 달도록 구성된 엔티티 태거(도시되지 않음)를 포함할 수 있다. 자연어 프로세서(718)의 엔티티 태거는 (예: 사람과 같은 엔티티 클래스에 대한 모든 참조를 식별할 수 있도록 하기 위해) 높은 레벨의 입도(granularity) 및/또는 (예: 특정 사람과 같은 특정 엔티티에 대한 모든 참조를 식별할 수 있도록 하기 위해) 더 낮은 레벨의 입도에서 엔티티에 대한 참조에 주석을 달 수 있다. 엔티티 태거는 특정 엔티티를 해결하기 위해 자연어 입력의 콘텐츠에 의존할 수 있고 및/또는 특정 엔티티를 해결하기 위해 지식 그래프 또는 다른 엔티티 데이터베이스와 선택적으로 통신할 수 있다.
일부 구현에서, 자연어 프로세서(718)는 추가적으로 및/또는 대안적으로 하나 이상의 컨텍스트 단서에 기초하여 동일한 엔티티에 대한 참조를 그룹화하거나 "클러스터" 하도록 구성된 상호 참조 리졸버(도시되지 않음)를 포함할 수 있다. 예를 들어, 상호 참조 리졸버는 자연어 입력 "I liked Hypothetical Cafe last time we ate there(나는 지난번에 우리가 거기서 먹었던 Hypothetical 카페를 좋아해)"에서 "there(거기서)"라는 용어를 "Hypothetical 카페"로 해석하는 데 활용될 수 있다.
일부 구현에서, 자연어 프로세서(718)의 하나 이상의 컴포넌트는 자연어 프로세서(718)의 하나 이상의 다른 컴포넌트로부터의 주석에 의존할 수 있다. 예를 들어, 일부 구현에서 명명된 엔터티 태거는 특정 엔터티에 대한 모든 멘션에 주석을 달 때 상호 참조 해석기 및/또는 종속성 파서의 주석에 의존할 수 있다. 또한, 예를 들어 일부 구현에서 상호 참조 해석기는 동일한 엔티티에 대한 참조 클러스터링에서 종속성 파서의 주석에 의존할 수 있다. 일부 구현에서, 특정 자연어 입력을 처리할 때, 자연어 프로세서(718)의 하나 이상의 컴포넌트는 하나 이상의 주석을 결정하기 위해 특정 자연어 입력 외부의 관련 이전 입력 및/또는 다른 관련 데이터를 사용할 수 있다.
도 8는 본 명세서에 설명된 기술의 하나 이상의 양태를 수행하기 위해 선택적으로 사용될 수 있는 예시적인 컴퓨팅 장치(810)의 블록도이다. 일부 구현에서, 클라이언트 컴퓨팅 장치, 및/또는 다른 컴포넌트(들) 중 하나 이상은 예시적인 컴퓨팅 장치(810)의 하나 이상의 컴포넌트를 포함할 수 있다.
컴퓨팅 장치(810)는 전형적으로 버스 서브시스템(812)을 통해 다수의 주변 장치와 통신하는 적어도 하나의 프로세서(814)를 포함한다. 이러한 주변 장치는, 예를 들어, 메모리 서브시스템(825) 및 파일 저장(스토리지) 서브시스템(826), 사용자 인터페이스 출력 장치(820), 사용자 인터페이스 입력 장치(822) 및 네트워크 인터페이스 서브시스템(816)을 포함하는 저장 서브시스템(824)을 포함할 수 있다. 입력 및 출력 장치는 컴퓨팅 장치(810)와의 사용자 상호작용을 허용한다. 네트워크 인터페이스 서브시스템(816)은 외부 네트워크에 인터페이스를 제공하고 다른 컴퓨팅 장치에서 대응하는 인터페이스 장치에 연결된다.
사용자 인터페이스 입력 장치(822)는 키보드, 마우스, 트랙볼, 터치 패드 또는 그래픽 태블릿과 같은 포인팅 장치, 스캐너, 디스플레이에 통합된 터치스크린, 음성 인식 시스템과 같은 오디오 입력 장치, 마이크로폰 및/또는 다른 유형의 입력 장치를 포함할 수 있다. 일반적으로, "입력 장치"라는 용어의 사용은 모든 가능한 유형의 장치 및 정보를 컴퓨팅 장치(810) 또는 통신 네트워크에 입력하는 방법을 포함하도록 의도된다.
사용자 인터페이스 출력 장치(820)는 디스플레이 서브시스템, 프린터, 팩스기, 또는 오디오 출력 장치와 같은 비 시각적 디스플레이를 포함할 수 있다. 디스플레이 서브시스템은 음극선 관(CRT), 액정 디스플레이(LCD)와 같은 평판 장치, 투영 장치, 또는 가시 이미지를 생성하기 위한 다른 메커니즘을 포함할 수 있다. 디스플레이 서브시스템은 또한 오디오 출력 장치를 통한 것과 같은 비 시각적 디스플레이를 제공할 수 있다. 일반적으로, "출력 장치"라는 용어의 사용은 모든 가능한 유형의 장치 및 컴퓨팅 장치(810)로부터 사용자 또는 다른 기계 또는 컴퓨팅 장치로 정보를 출력하는 방법을 포함하도록 의도된다.
저장(스토리지) 서브시스템(824)은 본 명세서에 설명된 일부 또는 모든 모듈의 기능을 제공하는 프로그래밍 및 데이터 구성을 저장한다. 예를 들어, 저장 서브시스템(824)은 도 7에 도시된 다양한 컴포넌트를 구현하기 위해 뿐만 아니라 도 5 및/또는 6의 하나 이상의 프로세서의 선택된 양태를 수행하는 로직을 포함할 수 있다.
이들 소프트웨어 모듈은 일반적으로 프로세서(814)에 의해 단독으로 또는 다른 프로세서와의 조합으로 실행된다. 저장 서브시스템(824)에 사용되는 메모리(825)는 프로그램 실행 동안 명령 및 데이터의 저장을 위한 메인 랜덤 액세스 메모리(RAM)(830) 및 고정 명령이 저장된 판독 전용 메모리(ROM)(832)를 포함하는 다수의 메모리를 포함할 수 있다. 파일 저장 서브시스템(826)은 프로그램 및 데이터 파일을 위한 영구 저장을 제공할 수 있으며, 하드 디스크 드라이브, 플로피 디스크 드라이브 및 관련 이동식 매체, CD-ROM 드라이브, 광학 드라이브 또는 이동식 매체 카트리지를 포함할 수 있다. 특정 구현의 기능을 구현하는 모듈은 파일 저장 서브시스템(826)에 의해 저장 서브시스템(824) 또는 프로세서(들)(814)에 의해 액세스 가능한 다른 머신에 저장될 수 있다.
버스 서브시스템(812)은 컴퓨팅 장치(810)의 다양한 컴포넌트 및 서브시스템이 의도된대로 서로 통신하도록 하는 메커니즘을 제공한다. 버스 서브시스템(812)이 단일 버스로서 개략적으로 도시되어 있지만, 버스 서브시스템의 대안적인 구현은 다중 버스를 사용할 수 있다.
컴퓨팅 장치(810)는 워크스테이션, 서버, 컴퓨팅 클러스터, 블레이드 서버, 서버 팜, 또는 임의의 다른 데이터 처리 시스템 또는 컴퓨팅 장치를 포함하는 다양한 유형일 수 있다. 컴퓨터 및 네트워크의 끊임없이 변화하는 특성으로 인해, 도 8에 도시된 컴퓨팅 장치(810)의 설명은 일부 구현 예를 설명하기 위한 특정 예로서 만 의도된다. 컴퓨팅 장치(810)의 많은 다른 구성은 도 8에 도시된 컴퓨팅 장치보다 더 많거나 적은 컴포넌트를 가질 수 있다.
일부 구현에서, 컴퓨팅 장치로 하여금 무선 통신 채널을 통해 오디오 데이터 스트림을 차량의 차량 컴퓨팅 장치로 전송하게 하는 단계를 포함하는 하나 이상의 프로세서에 의해 구현되는 방법이 제공되며, 오디오 데이터 스트림을 전송하면 차량 컴퓨팅 장치가 차량의 하나 이상의 차량 스피커를 통해 가청 출력을 렌더링하게 하며, 가청 출력은 오디오 데이터 스트림의 적어도 일부에 기초하여 차량 컴퓨팅 장치에 의해 생성된다. 방법은 차량 내 적어도 하나의 마이크로폰에 의해 캡처된 오디오 데이터를 수신하는 단계를 더 포함하고, 캡처된 오디오 데이터는 적어도 하나의 차량 스피커에 의해 렌더링된 가청 출력을 캡처한다. 방법은 캡처된 오디오 데이터를 오디오 데이터 스트림과 비교하는 것에 기초하여 차량 오디오 지연을 결정하는 단계를 더 포함한다. 방법은, 차량 오디오 지연을 결정하는 것에 응답하여, 무선 통신 채널을 통해 차량 컴퓨팅 장치에 추가 오디오 데이터 스트림을 전송하기 전에 컴퓨팅 장치가 해당 지연 오디오 세그먼트를 추가 오디오 데이터 스트림에 추가하게 하는 단계를 더 포함하며, 상기 지연 오디오 세그먼트의 지속 시간은 차량 오디오 지연을 사용하여 결정된다.
본 명세서에 개시된 기술의 이들 및 다른 구현은 다음 특징 중 하나 이상을 포함할 수 있다.
일부 구현에서, 캡처된 오디오 데이터를 오디오 데이터 스트림과 비교하는 것에 기초하여 차량 오디오 지연을 결정하는 것은 캡처된 오디오 데이터에서 특정 특징의 시간적 표시를 결정하는 것을 포함한다. 이러한 구현 중 일부에서, 방법은 오디오 데이터 스트림에서 특정 특징의 추가 시간적 표시를 결정하는 단계를 더 포함한다. 이들 구현 중 일부에서, 방법은 캡처된 오디오 데이터에서 특정 특징의 시간적 표시와 오디오 데이터 스트림에서 특정 특징의 추가 시간적 표시 사이의 차이에 기초하여 차량 오디오 지연을 결정하는 단계를 더 포함한다. 이러한 구현의 일부 버전에서, 오디오 데이터 스트림은 정의된 주파수 세그먼트 시퀀스를 포함하며, 여기서 특정 특징은 정의된 주파수 세그먼트 시퀀스의 특정 주파수 세그먼트이다. 이러한 구현의 일부 버전에서, 주파수 세그먼트 시퀀스의 각각의 주파수 세그먼트는 적어도 2개의 대응하는 동시 발생(co-occurring) 주파수를 포함한다.
일부 구현에서, 캡처된 오디오 데이터에서 특정 특징의 시간적 표시를 결정하는 것은 캡처된 오디오 데이터에서 특정 주파수 세그먼트의 캡처된 위치를 결정하는 것을 포함하며, 오디오 데이터 스트림에서 특정 특징의 추가 시간적 표시를 결정하는 것은 오디오 데이터 스트림에서 특정 주파수 세그먼트의 스트림 위치를 결정하는 것을 포함한다. 이러한 구현의 일부 버전에서, 방법은 오디오 데이터 스트림에서 특정 주파수 세그먼트의 스트림 위치를 결정하는 것을 더 포함한다. 이들 버전의 일부 버전에서, 캡처된 오디오 데이터 내의 특정 특징의 시간적 표시와 오디오 데이터 스트림 내의 특정 특징의 추가적인 시간적 표시 간의 차이에 기초하여 차량 오디오 지연을 결정하는 것은, 특정 주파수 세그먼트의 캡처된 위치가 캡처된 오디오 데이터에서 초기에 발생하는 주파수 세그먼트임을 나타내고 그리고 오디오 데이터 스트림에서 특정 주파수 세그먼트의 스트림 위치가 오디오 데이터 스트림에서 초기에 발생하는 주파수 세그먼트가 아님을 나타내는 것으로 결정하는 것; 그리고 캡처된 오디오 데이터에서 특정 특징의 시간적 표시와 오디오 데이터 스트림에서 특정 특징의 추가 시간적 표시 간의 차이를 결정하는 것은 캡처된 위치와 스트림 위치 사이의 위치 오프셋을 결정하는 것을 포함한다.
일부 구현에서, 캡처된 오디오 데이터를 오디오 데이터 스트림과 비교하는 것에 기초하여 차량 오디오 지연을 결정하는 것은, 주파수 세그먼트 시퀀스의 다수의 주파수 세그먼트 각각에 대해, 캡처된 오디오 데이터의 주파수 세그먼트와 오디오 데이터 스트림의 주파수 세그먼트 사이의 해당 시간적 오프셋을 결정하는 것; 그리고 해당 시간적 오프셋의 가장 큰 오프셋에 기초하여 차량 오디오 지연을 결정하는 것을 포함한다.
일부 구현에서, 상기 컴퓨팅 장치로 하여금 상기 무선 통신 채널을 통해 상기 차량 컴퓨팅 장치로 상기 추가 데이터 스트림을 전송하기 전에 상기 해당 지연 오디오 세그먼트를 추가 데이터 스트림에 추가하게 하는 것은, 컴퓨팅 장치가 해당 지연 오디오 세그먼트를 추가 데이터 스트림의 시작 부분에 추가하도록 하는 것을 포함한다.
일부 구현에서, 무선 통신 채널은 블루투스 채널이다.
일부 구현에서, 컴퓨팅 장치는 자동화된 어시스턴트 클라이언트를 포함한다. 이러한 구현의 일부 버전에서, 상기 추가 오디오 데이터 스트림은 하나 이상의 마이크로폰을 통해 음성 입력을 수신하는 자동화된 어시스턴트 클라이언트에 응답하여 차량 컴퓨팅 장치로 전송되고, 추가 오디오 데이터 스트림은 음성 입력에 응답하여 생성되는 자동화된 어시스턴트 응답이다. 이러한 구현의 일부 버전에서, 캡처된 오디오 데이터를 캡처하는 적어도 하나의 마이크로폰은 컴퓨팅 장치의 적어도 하나의 컴퓨팅 장치 마이크로폰을 포함한다. 이러한 구현의 일부 버전에서, 캡처된 오디오 데이터를 캡처하는 적어도 하나의 마이크로폰은 제2 무선 통신 채널을 통해 컴퓨팅 장치와 통신하는 차량 인터페이스 장치의 적어도 하나의 인터페이스 마이크로폰을 포함하고, 캡처된 오디오 데이터를 수신하는 것은 제2 통신 채널을 통해 차량 인터페이스 장치로부터 캡처된 오디오 데이터를 수신하는 것을 포함한다.
일부 구현에서, 차량 인터페이스 장치는 추가 무선 통신 채널을 통해 차량 컴퓨팅 장치에 통신 가능하게 결합된다.
일부 구현에서, 차량 인터페이스 장치는 유선 통신 채널을 통해 차량 컴퓨팅 장치에 통신 가능하게 결합된다.
일부 구현에서, 방법은 차량 인터페이스 장치로 하여금 차량 오디오 지연에 기초하여 로컬 노이즈 제거 필터를 적응 시키도록하는 것을 더 포함한다.
일부 구현에서, 하나 이상의 프로세서에 의해 구현되는 방법은, 컴퓨팅 장치가 통신 채널을 통해 차량의 차량 컴퓨팅 장치로 오디오 데이터 스트림을 전송하게 하는 것을 포함하며, 오디오 데이터 스트림을 전송하면 차량 컴퓨팅 장치가 통신 채널 모드에 있을 때 차량 컴퓨팅 장치에 의해 구동되는 하나 이상의 차량 스피커를 통해 차량 컴퓨팅 장치가 가청 출력을 렌더링하게 하고, 가청 출력은 오디오 데이터 스트림의 적어도 일부에 기초하여 차량 컴퓨팅 장치에 의해 생성된다. 방법은 가청 출력이 차량 내 적어도 하나의 마이크로폰에 의해 캡처되는지 여부를 결정하는 것을 더 포함한다. 방법은 가청 출력이 차량 내 적어도 하나의 마이크로폰에 의해 캡처된다는 결정에 응답하여, 차량 컴퓨팅 장치에 의해, 하나 이상의 차량 스피커를 통해 추가 오디오 데이터 스트림의 렌더링을 위해 컴퓨팅 장치로 하여금 통신 채널을 통해 차량 컴퓨팅 장치에 추가 오디오 데이터 스트림을 전송하게 하는 것을 더 포함한다. 방법은 가청 출력이 차량 내 적어도 하나의 마이크로폰에 의해 캡처되지 않는 결정에 응답하여, 추가 오디오 데이터 스트림이 대신 하나 이상의 대체 스피커에서 렌더링되도록 하는 것을 포함하며, 하나 이상의 대체 스피커는 차량 내부에 있지만 차량 컴퓨팅 장치에 의해 구동되는 하나 이상의 차량 스피커가 아니다.
본 명세서에 개시된 기술의 이들 및 다른 구현은 다음 특징 중 하나 이상을 포함할 수 있다.
일부 구현에서, 상기 하나 이상의 대체 스피커는 상기 컴퓨팅 장치의 하나 이상의 대체 스피커이다. 이러한 구현의 일부 버전에서, 방법은 컴퓨팅 장치의 자동화된 어시스턴트 클라이언트의 호출을 검출하는 것을 더 포함하며, 상기 호출은 자동화된 어시스턴트 클라이언트가 제1 상태에서 제2 상태로 천이하게 하며, 컴퓨팅 장치가 차량의 차량 컴퓨팅 장치에 오디오 데이터 스트림을 전송하게하는 것은 상기 호출을 검출하는 것에 응답한다.
일부 구현에서, 호출을 검출하는 것은 컴퓨팅 장치의 적어도 하나의 마이크로폰을 통해 캡처된 오디오 데이터에서 호출 문구의 발생을 검출하는 것을 포함한다.
일부 구현에서, 상기 호출을 검출하는 것은 추가 통신 채널을 통해 차량 인터페이스 장치로부터 호출의 표시를 수신하는 것에 기초하여 호출을 검출하는 것을 포함하고, 차량 인터페이스 장치는 하드웨어 인터페이스 요소와의 사용자 상호 작용에 응답하거나 차량 인터페이스 장치의 적어도 하나의 마이크로폰을 통해 캡처된 오디오 데이터에서 호출 문구의 발생을 검출하는 것에 응답하여 호출의 표시를 전송하는 것을 포함한다.
일부 구현에서, 컴퓨팅 장치가 오디오 데이터 스트림을 차량 컴퓨팅 장치로 전송하게 하는 것은 컴퓨팅 장치의 자동화된 어시스턴트 클라이언트로 향하는 사용자 인터페이스 입력에 응답하고, 상기 방법은, 사용자 인터페이스 입력 및/또는 사용자 인터페이스 입력에 기초한 추가 데이터를 포함하는 요청을 원격 서버 장치로 전송하는 것을 포함한다. 이러한 구현의 일부 버전에서, 방법은 상기 요청을 전송하는 것에 응답하여 원격 서버 장치로부터 추가 오디오 데이터 스트림을 수신하는 것을 더 포함하며, 상기 오디오 데이터 스트림을 차량 컴퓨팅 장치로 전송하는 것은 원격 서버 장치로부터 추가 오디오 데이터 스트림 전체를 수신하기 전에 발생한다.
일부 구현에서, 차량의 적어도 하나의 마이크로폰은 컴퓨팅 장치의 적어도 하나의 마이크로폰을 포함한다.
일부 구현들에서, 방법은 자동화된 어시스턴트 클라이언트가 컴퓨팅 장치로 하여금 통신 채널을 통해 차량의 차량 컴퓨팅 장치로 오디오 데이터 스트림을 전송하게 한 시간을 나타내는 시간적 표시를 결정하는 것을 더 포함한다. 이들 구현의 일부 버전에서, 방법은 현재 시간을 나타내는 현재 시간적 표시를 결정하는 것을 더 포함한다. 이러한 구현의 일부 버전에서, 방법은 현재 시간적 표시와 시간적 표시 사이의 차이를 결정하는 것을 더 포함한다. 일부 구현에서, 방법은, 현재 시간적 표시와 시간적 표시 사이의 차이가 임계 값을 초과한다는 결정에 응답하여, 컴퓨팅 장치의 자동화된 어시스턴트 클라이언트가 통신 채널을 통해 차량의 차량 컴퓨팅 장치로 제2 오디오 데이터 스트림을 전송하게 하는 것을 포함하며, 제2 오디오 데이터 스트림을 전송하면 차량 컴퓨팅 장치가 통신 채널 모드에 있을 때 차량 컴퓨팅 장치가 차량 컴퓨팅 장치의 하나 이상의 스피커를 통해 추가 가청 출력을 렌더링하게 하고, 그리고 추가 가청 출력은 제2 오디오 데이터 스트림의 적어도 일부에 기초하여 차량 컴퓨팅 장치에 의해 생성된다. 일부 구현에서, 방법은, 추가 가청 출력이 차량 내의 적어도 하나의 마이크로폰에 의해 캡처되는지 여부를 결정하는 것을 더 포함한다. 이러한 구현의 일부 버전에서, 방법은, 추가 가청 출력이 차량 내의 적어도 하나의 마이크로폰에 의해 캡처된다는 결정에 응답하여, 컴퓨팅 장치가 통신 채널을 통해 차량 컴퓨팅 장치로 제3 오디오 데이터 스트림을 전송하게 하는 것을 포함한다. 이들 구현의 일부 버전에서, 방법은 컴퓨팅 장치가 통신 채널을 통해 차량 컴퓨팅 장치에 제3 오디오 데이터 스트림을 전송하게 하는 것을 더 포함한다. 이러한 구현의 일부 버전에서, 방법은 추가 가청 출력이 차량 내의 적어도 하나의 마이크로폰에 의해 캡처되지 않는다는 결정에 응답하여, 제3 가청 출력이 하나 이상의 대체 스피커에서 렌더링되도록 하는 것을 더 포함한다.
일부 구현에서, 하나 이상의 프로세서에 의해 구현되는 방법은 오디오 데이터 스트림이 무선 통신 채널을 통해 차량의 차량 컴퓨팅 장치로 전송되도록 하는 것을 포함하며, 오디오 데이터 스트림을 전송하면 차량 컴퓨팅 장치가 차량의 하나 이상의 차량 스피커를 통해 가청 출력을 렌더링하게 하고, 그리고 가청 출력은 오디오 데이터 스트림의 적어도 일부에 기초하여 차량 컴퓨팅 장치에 의해 생성된다. 이러한 구현 중 일부에서, 방법은 차량 내 컴퓨팅 장치의 적어도 하나의 마이크로폰에 의해 캡처된 오디오 데이터를 수신하는 것을 더 포함하며, 캡처된 오디오 데이터는 상기 적어도 하나의 차량 스피커에 의해 렌더링된 가청 출력을 캡처한다. 이들 구현 중 일부에서, 방법은 캡처된 오디오 데이터를 오디오 데이터 스트림과 비교하는 것에 기초하여 차량 오디오 지연을 결정하는 것을 더 포함한다. 이러한 구현의 일부 버전에서, 차량 오디오 지연을 결정하는 것에 응답하여, 컴퓨팅 장치가 차량 오디오 지연에 기초하여 로컬 노이즈 제거를 적용하도록 하는 것을 더 포함한다.
본 명세서에 개시된 기술의 이들 및 다른 구현은 다음 특징 중 하나 이상을 포함할 수 있다.
일부 구현에서, 로컬 노이즈 제거는, 후속으로 캡처된 오디오 데이터로부터, 하나 이상의 차량 스피커를 통해 차량 컴퓨팅 장치에 의해 렌더링하기 위해 무선 통신 채널을 통해 전송되는 알려진 소스 오디오 데이터 스트림을 완화(mitigate)하고; 그리고 로컬 노이즈 제거를 적용시키는 것은 차량 오디오 지연에 기초하여, 알려진 소스 오디오 데이터 스트림을 검출하는 예상 시간을 적용시키는 것을 포함한다.
일부 구현에서, 컴퓨팅 장치는 차량의 시가 라이터 리셉터클에 의해 전원이 공급되는 차량 인터페이스 장치이다. 이러한 구현의 일부 버전에서, 차량 오디오 지연을 결정하는 것은 차량 인터페이스 장치에 의해 이루어진다. 이러한 구현의 일부 버전에서, 차량 오디오 지연을 결정하는 것은 통신 채널을 통해 차량 인터페이스 장치와 통신하는 스마트폰에 의해 이루어지며, 컴퓨팅 장치가 차량 오디오 지연에 기초하여 로컬 노이즈 제거를 적용하도록 하는 것은 차량 인터페이스 장치에, 차량 오디오 지연 및/또는 차량 오디오 지연에 기초하여 결정된 추가 데이터를 전송하는 것을 포함한다.
일부 구현에서, 하나 이상의 프로세서에 의해 구현되는 방법은 컴퓨팅 장치가 무선 통신 채널을 통해 오디오 데이터 스트림을 추가 컴퓨팅 장치로 전송하게 하는 단계를 포함하며, 오디오 데이터 스트림을 전송하면 추가 컴퓨팅 장치가 추가 컴퓨팅 장치에 의해 구동되는 하나 이상의 추가 스피커를 통해 가청 출력을 렌더링하게 하고, 가청 출력은 오디오 데이터 스트림의 적어도 일부에 기초하여 추가 컴퓨팅 장치에 의해 생성된다. 방법은 적어도 하나의 마이크로폰에 의해 캡처된 오디오 데이터를 수신하는 단계를 더 포함하고, 캡처된 오디오 데이터는 적어도 하나의 추가 스피커에 의해 렌더링된 가청 출력을 캡처한다. 방법은 캡처된 오디오 데이터를 오디오 데이터 스트림과 비교하는 것에 기초하여 오디오 지연을 결정하는 단계를 더 포함한다. 방법은 오디오 지연을 결정하는 것에 응답하여, 추가 오디오 데이터 스트림을 무선 통신 채널을 통해 추가 컴퓨팅 장치로 전송하기 전에 컴퓨팅 장치가 대응하는 지연 오디오 세그먼트를 추가 오디오 데이터 스트림에 추가하게 하는 단계를 더 포함하고, 여기서 지연 오디오 세그먼트의 기간은 오디오 지연을 사용하여 결정하고 및/또는 오디오 지연을 기반으로 로컬 노이즈 제거를 적용한다.
본 명세서에 개시된 기술의 이들 및 다른 구현은 다음 특징 중 하나 이상을 포함할 수 있다.
추가 컴퓨팅 장치는 차량 컴퓨팅 장치일 수 있고, 하나 이상의 스피커는 하나 이상의 차량 스피커일 수 있다. 추가 컴퓨팅 장치는 하나 이상의 추가 스피커를 통합하거나 오디오 케이블을 통해 하나 이상의 추가 스피커에 직접 연결된 블루투스 지원 장치일 수 있다.
일부 구현에서, 컴퓨팅 장치가 통신 채널을 통해 오디오 데이터 스트림을 추가 컴퓨팅 장치로 전송하게 하는 단계를 포함하는 하나 이상의 프로세서에 의해 구현되는 방법이 제공되며, 오디오 데이터 스트림을 전송하면 차량 컴퓨팅 장치가 추가 컴퓨팅 장치가 통신 채널 모드에 있을 때 추가 컴퓨팅 장치에 의해 구동되는 하나 이상의 추가 스피커를 통해 가청 출력을 렌더링하고, 가청 출력은 오디오 데이터 스트림의 적어도 일부에 기초하여 추가 컴퓨팅 장치에 의해 생성된다. 방법은 가청 출력이 적어도 하나의 마이크로폰에 의해 캡처되는지 여부를 결정하는 단계를 더 포함한다. 가청 출력이 적어도 하나의 마이크로폰에 의해 캡처된다는 결정에 응답하여, 방법은 캡처된 오디오 데이터를 오디오 데이터 스트림과 비교하는 것에 기초하여 오디오 지연을 결정하는 단계를 더 포함한다. 상기 방법은, 적어도 하나의 마이크로폰에 의해 캡처된 것으로 결정하는 것에 응답하여, 차량 컴퓨팅 장치에 의해, 하나 이상의 추가 스피커를 통해, 추가 오디오 데이터 스트림을 렌더링하기 위한 통신 채널을 통해 컴퓨팅 장치로 하여금 추가 오디오 데이터 스트림을 추가 컴퓨팅 장치로 전송하게 하는 단계를 포함한다. 가청 출력이 적어도 하나의 마이크로폰에 의해 캡처되지 않는다는 결정에 응답하여, 방법은 추가 오디오 데이터 스트림이 대신에 하나 이상의 대체 스피커에서 렌더링되게 하는 단계를 더 포함하고, 여기서 하나 이상의 대체 스피커는 추가 컴퓨팅 장치에 의해 구동되는 하나 이상의 차량 스피커가 아니다.
본 명세서에 개시된 기술의 이들 및 다른 구현은 다음 특징 중 하나 이상을 포함할 수 있다.
추가 컴퓨팅 장치는 차량 컴퓨팅 장치일 수 있고, 하나 이상의 스피커는 하나 이상의 차량 스피커일 수 있다.
추가 컴퓨팅 장치는 하나 이상의 추가 스피커를 통합하거나 오디오 케이블을 통해 하나 이상의 추가 스피커에 직접 연결된 블루투스 지원 장치일 수 있다.
또한, 일부 구현은 하나 이상의 프로세서(예를 들어, 중앙 처리 장치(들)(CPU(들)), 그래픽 처리 장치(들)(GPU(s)), 및/또는 하나 이상의 컴퓨팅 장치의 텐서 처리 장치(들)(TPU( s))를 포함하며, 하나 이상의 프로세서는 연관된 메모리에 저장된 명령어를 실행하도록 동작할 수 있으며, 여기서 명령어는 여기에 설명된 방법 중 임의의 것을 수행하도록 구성된다. 일부 구현은 또한 여기에 설명된 방법 중 임의의 것을 수행하기 위해 하나 이상의 프로세서에 의해 실행 가능한 컴퓨터 명령어를 저장하는 하나 이상의 비-일시적 컴퓨터 판독 가능 저장 매체를 포함한다.

Claims (30)

  1. 하나 이상의 프로세서에 의해 구현되는 방법으로서,
    컴퓨팅 장치로 하여금 무선 통신 채널을 통해 오디오 데이터 스트림을 차량의 차량 컴퓨팅 장치로 전송하게 하는 단계 -오디오 데이터 스트림을 전송하면 차량 컴퓨팅 장치가 차량의 하나 이상의 차량 스피커를 통해 가청 출력을 렌더링하게 하며, 가청 출력은 오디오 데이터 스트림의 적어도 일부에 기초하여 차량 컴퓨팅 장치에 의해 생성됨-;
    차량 내 적어도 하나의 마이크로폰에 의해 캡처된 오디오 데이터를 수신하는 단계 -캡처된 오디오 데이터는 적어도 하나의 차량 스피커에 의해 렌더링된 가청 출력을 캡처함-;
    캡처된 오디오 데이터를 오디오 데이터 스트림과 비교하는 것에 기초하여 오디오 데이터 스트림의 지연 부분이 하나 이상의 차량 스피커에 의해 렌더링되지 않는 차량 오디오 지연을 결정하는 단계 -오디오 데이터 스트림의 지연 부분은 가청 출력을 생성하는데 사용되는 오디오 데이터 스트림의 적어도 일부에 바로 선행(immediately precede)함-; 그리고
    차량 오디오 지연을 결정하는 것에 응답하여:
    무선 통신 채널을 통해 차량 컴퓨팅 장치에 추가 오디오 데이터 스트림을 전송하기 전에 컴퓨팅 장치가 해당 지연 오디오 세그먼트를 추가 오디오 데이터 스트림에 추가하게 하는 단계를 포함하며, 상기 지연 오디오 세그먼트의 지속 시간은 차량 오디오 지연을 사용하여 결정되는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  2. 제1항에 있어서, 캡처된 오디오 데이터를 오디오 데이터 스트림과 비교하는 것에 기초하여 차량 오디오 지연을 결정하는 단계는,
    캡처된 오디오 데이터에서 특정 특징의 시간적 표시(temporal indication)를 결정하는 단계;
    오디오 데이터 스트림에서 특정 특징의 추가 시간적 표시를 결정하는 단계; 그리고
    캡처된 오디오 데이터 내의 특정 특징의 시간적 표시와 오디오 데이터 스트림 내의 특정 특징의 추가 시간적 표시 간의 차이에 기초하여 차량 오디오 지연을 결정하는 단계를 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  3. 제2항에 있어서, 상기 오디오 데이터 스트림은 정의된 주파수 세그먼트 시퀀스를 포함하고, 상기 특정 특징은 정의된 주파수 세그먼트 시퀀스의 특정 주파수 세그먼트인 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  4. 제3항에 있어서, 상기 주파수 세그먼트 시퀀스의 주파수 세그먼트 각각은 적어도 2개의 해당 동시 발생(co-occurring) 주파수를 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  5. 제3항에 있어서, 캡처된 오디오 데이터에서 특정 특징의 시간적 표시를 결정하는 단계는 캡처된 오디오 데이터에서 특정 주파수 세그먼트의 캡처된 위치를 결정하는 단계를 포함하며, 그리고
    오디오 데이터 스트림에서 특정 특징의 추가 시간적 표시를 결정하는 단계는 오디오 데이터 스트림에서 특정 주파수 세그먼트의 스트림 위치를 결정하는 단계를 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  6. 제5항에 있어서,
    캡처된 오디오 데이터 내의 특정 특징의 시간적 표시와 오디오 데이터 스트림 내의 특정 특징의 추가적인 시간적 표시 간의 차이에 기초하여 차량 오디오 지연을 결정하는 단계는,
    특정 주파수 세그먼트의 캡처된 위치가 캡처된 오디오 데이터에서 초기에 발생하는 주파수 세그먼트임을 나타내고 그리고 오디오 데이터 스트림에서 특정 주파수 세그먼트의 스트림 위치가 오디오 데이터 스트림에서 초기에 발생하는 주파수 세그먼트가 아님을 나타내는 것으로 결정하는 단계; 그리고
    캡처된 오디오 데이터에서 특정 특징의 시간적 표시와 오디오 데이터 스트림에서 특정 특징의 추가 시간적 표시 간의 차이를 결정하는 단계는 캡처된 위치와 스트림 위치 사이의 위치 오프셋을 결정하는 단계를 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  7. 제3항에 있어서, 캡처된 오디오 데이터를 오디오 데이터 스트림과 비교하는 것에 기초하여 차량 오디오 지연을 결정하는 단계는,
    주파수 세그먼트 시퀀스의 다수의 주파수 세그먼트 각각에 대해, 캡처된 오디오 데이터의 주파수 세그먼트와 오디오 데이터 스트림의 주파수 세그먼트 사이의 해당 시간적 오프셋을 결정하는 단계; 그리고
    해당 시간적 오프셋의 가장 큰 오프셋에 기초하여 차량 오디오 지연을 결정하는 단계를 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  8. 제1항에 있어서, 컴퓨팅 장치로 하여금 상기 무선 통신 채널을 통해 상기 차량 컴퓨팅 장치로 상기 추가 데이터 스트림을 전송하기 전에 상기 해당 지연 오디오 세그먼트를 추가 데이터 스트림에 추가하게 하는 단계는,
    컴퓨팅 장치가 해당 지연 오디오 세그먼트를 추가 데이터 스트림의 시작 부분에 추가하도록 하는 단계를 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  9. 제1항에 있어서,
    상기 컴퓨팅 장치로 하여금 상기 무선 통신 채널을 통해 상기 차량 컴퓨팅 장치로 상기 추가 데이터 스트림을 전송하기 전에 상기 해당 지연 오디오 세그먼트를 추가 데이터 스트림에 추가하게 하는 단계는,
    컴퓨팅 장치가 해당 지연 오디오 세그먼트를 추가 데이터 스트림의 끝에 추가하도록 하는 단계를 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  10. 제1항에 있어서, 상기 무선 통신 채널은 블루투스 채널인 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  11. 제1항에 있어서, 상기 컴퓨팅 장치는 자동화된 어시스턴트 클라이언트를 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  12. 제11항에 있어서, 상기 추가 오디오 데이터 스트림은 하나 이상의 마이크로폰을 통해 음성 입력을 수신하는 자동화된 어시스턴트 클라이언트에 응답하여 차량 컴퓨팅 장치로 전송되고, 추가 오디오 데이터 스트림은 음성 입력에 응답하여 생성되는 자동화된 어시스턴트 응답인 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  13. 제12항에 있어서, 상기 캡처된 오디오 데이터를 캡처하는 상기 적어도 하나의 마이크로폰은 상기 컴퓨팅 장치의 적어도 하나의 컴퓨팅 장치 마이크로폰을 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  14. 제12항에 있어서,
    캡처된 오디오 데이터를 캡처하는 적어도 하나의 마이크로폰은 제2 무선 통신 채널을 통해 컴퓨팅 장치와 통신하는 차량 인터페이스 장치의 적어도 하나의 인터페이스 마이크로폰을 포함하고,
    캡처된 오디오 데이터를 수신하는 단계는 제2 통신 채널을 통해 차량 인터페이스 장치로부터 캡처된 오디오 데이터를 수신하는 단계를 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  15. 제14항에 있어서, 상기 차량 인터페이스 장치는 추가 무선 통신 채널을 통해 상기 차량 컴퓨팅 장치에 통신 가능하게 결합되는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  16. 제14항에 있어서, 상기 차량 인터페이스 장치는 유선 통신 채널을 통해 상기 차량 컴퓨팅 장치에 통신 가능하게 결합되는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  17. 제14항에 있어서, 상기 방법은,
    차량 인터페이스 장치가 차량 오디오 지연에 기초하여 로컬 노이즈 제거 필터를 적용하도록 하는 단계를 더 포함하는 것을 특징으로 하는 하나 이상의 프로세서에 의해 구현되는 방법.
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
  29. 삭제
  30. 삭제
KR1020217023438A 2019-01-29 2019-02-12 구조화된 오디오 출력을 사용하여 재생 감지 및/또는 무선 스피커에서 비정렬된 재생에 적응 KR102331793B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020217038000A KR102652892B1 (ko) 2019-01-29 2019-02-12 구조화된 오디오 출력을 사용하여 재생 감지 및/또는 무선 스피커에서 비정렬된 재생에 적응

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962798252P 2019-01-29 2019-01-29
US62/798,252 2019-01-29
PCT/US2019/017647 WO2020159556A1 (en) 2019-01-29 2019-02-12 Using structured audio output to detect playback and/or to adapt to misaligned playback in wireless speakers

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020217038000A Division KR102652892B1 (ko) 2019-01-29 2019-02-12 구조화된 오디오 출력을 사용하여 재생 감지 및/또는 무선 스피커에서 비정렬된 재생에 적응

Publications (2)

Publication Number Publication Date
KR20210102443A KR20210102443A (ko) 2021-08-19
KR102331793B1 true KR102331793B1 (ko) 2021-12-01

Family

ID=65529840

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020217038000A KR102652892B1 (ko) 2019-01-29 2019-02-12 구조화된 오디오 출력을 사용하여 재생 감지 및/또는 무선 스피커에서 비정렬된 재생에 적응
KR1020217023438A KR102331793B1 (ko) 2019-01-29 2019-02-12 구조화된 오디오 출력을 사용하여 재생 감지 및/또는 무선 스피커에서 비정렬된 재생에 적응

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020217038000A KR102652892B1 (ko) 2019-01-29 2019-02-12 구조화된 오디오 출력을 사용하여 재생 감지 및/또는 무선 스피커에서 비정렬된 재생에 적응

Country Status (6)

Country Link
US (3) US11100931B2 (ko)
EP (2) EP3916722A1 (ko)
JP (3) JP7110496B2 (ko)
KR (2) KR102652892B1 (ko)
CN (1) CN113348503A (ko)
WO (1) WO2020159556A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3622390B1 (en) * 2017-10-03 2023-12-06 Google LLC Multiple digital assistant coordination in vehicular environments
WO2020076288A1 (en) 2018-10-08 2020-04-16 Google Llc Operating modes that designate an interface modality for interacting with an automated assistant
US11157169B2 (en) 2018-10-08 2021-10-26 Google Llc Operating modes that designate an interface modality for interacting with an automated assistant
KR102652892B1 (ko) 2019-01-29 2024-03-28 구글 엘엘씨 구조화된 오디오 출력을 사용하여 재생 감지 및/또는 무선 스피커에서 비정렬된 재생에 적응

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3210980B2 (ja) 1992-03-17 2001-09-25 イビデン株式会社 建物における部屋間開口の枠組に使用する枠材

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5546468A (en) * 1994-05-04 1996-08-13 Beard; Michael H. Portable speaker and amplifier unit
US6850512B1 (en) * 1999-08-26 2005-02-01 Ipr Licensing, Inc. Two tier hi-speed wireless communication link
US7026957B2 (en) * 2001-10-01 2006-04-11 Advanced Public Safety, Inc. Apparatus for communicating with a vehicle during remote vehicle operations, program product, and associated methods
JP2005079614A (ja) * 2003-08-29 2005-03-24 Toshiba Corp 移動型音声出力装置、コンテンツ再生装置、無線チャネル制御方法及び同期制御方法
JP2006180011A (ja) 2004-12-21 2006-07-06 Beat Sonic:Kk 車載用ワイヤレスハンズフリー装置
US8472633B2 (en) * 2005-11-15 2013-06-25 Microsoft Corporation Detection of device configuration
US7676250B2 (en) * 2006-06-02 2010-03-09 Motorola, Inc. Method for controlling audio signals to an FM transmitter and a loudspeaker of a hands-free adapter
JP4656022B2 (ja) 2006-08-11 2011-03-23 株式会社デンソー 緊急通報車載機
JP5058699B2 (ja) 2007-07-24 2012-10-24 クラリオン株式会社 ハンズフリー通話装置
US8126435B2 (en) * 2008-05-30 2012-02-28 Hewlett-Packard Development Company, L.P. Techniques to manage vehicle communications
JP5188902B2 (ja) 2008-07-30 2013-04-24 クラリオン株式会社 音声再生装置および音声再生装置の制御方法
US20110251705A1 (en) * 2008-12-19 2011-10-13 Panasonic Corporation Wireless communication control method, wireless communication control device, and in-vehicle acoustic device
US20110099507A1 (en) * 2009-10-28 2011-04-28 Google Inc. Displaying a collection of interactive elements that trigger actions directed to an item
EP2561508A1 (en) 2010-04-22 2013-02-27 Qualcomm Incorporated Voice activity detection
GB2496249B (en) * 2011-10-24 2014-04-16 Ibm Distributing licensed content across multiple devices
US9167296B2 (en) * 2012-02-28 2015-10-20 Qualcomm Incorporated Customized playback at sink device in wireless display system
CN102883239B (zh) * 2012-09-24 2014-09-03 惠州华阳通用电子有限公司 车内声场重现方法
CN105210389B (zh) * 2013-03-19 2017-07-25 皇家飞利浦有限公司 用于确定麦克风的位置的方法和装置
JP6357745B2 (ja) * 2013-09-20 2018-07-18 株式会社デンソー 車載システム及び端末機器
US9706299B2 (en) * 2014-03-13 2017-07-11 GM Global Technology Operations LLC Processing of audio received at a plurality of microphones within a vehicle
JP2016078729A (ja) 2014-10-20 2016-05-16 トヨタ車体株式会社 車両の情報処理装置及びオーディオ装置
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US10747498B2 (en) * 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
JP2017117371A (ja) 2015-12-25 2017-06-29 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 制御方法、制御装置およびプログラム
US9921800B2 (en) * 2016-05-25 2018-03-20 Google Llc Methods, systems and media for controlling audio output
JP6753698B2 (ja) * 2016-05-27 2020-09-09 クラリオン株式会社 伝搬遅延時間計算装置、再生装置、伝搬遅延時間計算システム及び伝搬遅延時間計算プログラム
US20180166073A1 (en) * 2016-12-13 2018-06-14 Ford Global Technologies, Llc Speech Recognition Without Interrupting The Playback Audio
TWM547789U (zh) * 2017-01-20 2017-08-21 惠貿電子股份有限公司 無線廣播喇叭系統以及廣播主機裝置
US10009862B1 (en) 2017-09-06 2018-06-26 Texas Instruments Incorporated Bluetooth media device time synchronization
US11252522B2 (en) * 2018-08-01 2022-02-15 Google Llc Detecting audio paths between mobile devices and external devices
CN109087660A (zh) * 2018-09-29 2018-12-25 百度在线网络技术(北京)有限公司 用于回声消除的方法、装置、设备以及计算机可读存储介质
KR102652892B1 (ko) 2019-01-29 2024-03-28 구글 엘엘씨 구조화된 오디오 출력을 사용하여 재생 감지 및/또는 무선 스피커에서 비정렬된 재생에 적응

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3210980B2 (ja) 1992-03-17 2001-09-25 イビデン株式会社 建物における部屋間開口の枠組に使用する枠材

Also Published As

Publication number Publication date
US20230386466A1 (en) 2023-11-30
JP7110496B2 (ja) 2022-08-01
US20210056964A1 (en) 2021-02-25
EP3743915A1 (en) 2020-12-02
JP2024001277A (ja) 2024-01-09
JP2022515291A (ja) 2022-02-17
KR20210146428A (ko) 2021-12-03
EP3916722A1 (en) 2021-12-01
KR20210102443A (ko) 2021-08-19
EP3743915B1 (en) 2021-07-07
CN113348503A (zh) 2021-09-03
US11100931B2 (en) 2021-08-24
JP7442583B2 (ja) 2024-03-04
US11741958B2 (en) 2023-08-29
WO2020159556A1 (en) 2020-08-06
US20210375287A1 (en) 2021-12-02
JP2022137187A (ja) 2022-09-21
KR102652892B1 (ko) 2024-03-28

Similar Documents

Publication Publication Date Title
KR102331793B1 (ko) 구조화된 오디오 출력을 사용하여 재생 감지 및/또는 무선 스피커에서 비정렬된 재생에 적응
EP3519936B1 (en) Isolating a device, from multiple devices in an environment, for being responsive to spoken assistant invocation(s)
WO2021051506A1 (zh) 语音交互方法、装置、计算机设备及存储介质
KR20190075800A (ko) 지능형 개인 보조 인터페이스 시스템
KR102193629B1 (ko) 호출 구문 검출에서 노이즈 감소 기술의 선택적 적응 및 활용
KR102414159B1 (ko) 보류 상태를 관리하기 위한 방법 및 장치
US11074912B2 (en) Identifying a valid wake input
KR20230117239A (ko) 자동화된 어시스턴트 상호작용에서 레이턴시를 줄이기위한 방법 및 시스템
CN110970017A (zh) 人机交互方法及系统、计算机系统
US11798533B2 (en) Context aware beamforming of audio data
US20230230578A1 (en) Personalized speech query endpointing based on prior interaction(s)
JP2024505788A (ja) 自動音声認識のローカル実行のためのデバイス調停
KR20230118940A (ko) 초기 호출형 자동화 어시스턴트로부터 후속 호출형자동화 어시스턴트로 대화 데이터 전송
CN116259304A (zh) 语音的连续交互法及相关产品

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant