JP6594879B2 - 電子デバイス上の音声をバッファリングする方法及びコンピューティングデバイス - Google Patents

電子デバイス上の音声をバッファリングする方法及びコンピューティングデバイス Download PDF

Info

Publication number
JP6594879B2
JP6594879B2 JP2016540281A JP2016540281A JP6594879B2 JP 6594879 B2 JP6594879 B2 JP 6594879B2 JP 2016540281 A JP2016540281 A JP 2016540281A JP 2016540281 A JP2016540281 A JP 2016540281A JP 6594879 B2 JP6594879 B2 JP 6594879B2
Authority
JP
Japan
Prior art keywords
audio
audio data
circular buffer
instructions
indication
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2016540281A
Other languages
English (en)
Other versions
JP2016535312A5 (ja
JP2016535312A (ja
Inventor
ウェイドナー サルヴァドール、スタン
シャーフ、トーマス
Original Assignee
アマゾン・テクノロジーズ、インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by アマゾン・テクノロジーズ、インコーポレイテッド filed Critical アマゾン・テクノロジーズ、インコーポレイテッド
Publication of JP2016535312A publication Critical patent/JP2016535312A/ja
Publication of JP2016535312A5 publication Critical patent/JP2016535312A5/ja
Application granted granted Critical
Publication of JP6594879B2 publication Critical patent/JP6594879B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • 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
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/55Rule-based translation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • H04L1/1874Buffer management
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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/78Detection of presence or absence of voice signals

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computational Linguistics (AREA)
  • Quality & Reliability (AREA)
  • Acoustics & Sound (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Artificial Intelligence (AREA)
  • User Interface Of Digital Computer (AREA)

Description

多くの電子デバイスは、音声を格納し処理することができる。いくつかのデバイスでは、デバイスが音声を格納または処理すべきときを指示するために使用することができるボタンと、タッチ感応表示画面が備えられている。ハードウェアとソフトウェアの支援は、多くの場合、音声認識とデジタル信号処理のために提供される。
電子デバイスでの音声処理と記録には、消費電力の度合いを変化させることが必要である。バッテリ駆動デバイスの消費を最小限に抑えるために、処理や記録を最小化することができるが、このようにするためのユーザ・コマンドは欠いている。残念なことに、特に音声が発話である場合は、ユーザが発話を開始するときと、ユーザ・コマンドに従っての処理や記録の開始時間にずれがあるかもしれない。この時間的なずれは、結果的に音声の開始にクリッピングを引き起こすことになる。クリッピングをもたらすこの時間的なずれは、ユーザが処理や記録を開始させる信号を実際に送るときだけでなく、ハードウェアの遅延にも起因している。また、録音を開始するボタンを完全に押す前に人々が話し始めるときのように、多くの場合、コマンドを実際に完了する前に少しだけ話し始める傾向がある。
従来、記憶やストリーミングのために音声をデジタル化する際、再生することができる最高周波数は少なくとも2倍の速度で「サンプリング」される(ナイキスト/シャノンの定理に従って)。例えば、毎秒20,000サイクル(正常な人間の聴覚の限界)までの周波数の音を再生したいのであれば、音声信号の振幅デジタル「サンプル」は、少なくとも毎秒40,000回採取することができる。各「サンプル」は、サンプルが採取された瞬間における音声波形の振幅の大きさのデジタル表現である。そして、デジタルサンプルは、元の音声波形の表現を再構築するために使用することができる。参考までに、コンパクトディスクの音声は、一般的に音声の各秒につき44,100サンプルでサンプリングされる。MP3(ムービング・ピクチャー・エキスパート・グループMPEG−1オーディオ・レイヤIII)のようなフォーマットを使用して記憶された音声やストリームは、同様のサンプリングレート(データの総量を削減する「不可逆」圧縮技術を追加する手法)を使用することができる。通常、毎秒3,400サイクルのような上限がある人間の音声をキャプチャすることに重きを置いているため、電話システムは毎秒8,000サンプルのような低サンプリングレートを使用することができる。前のサンプルに比較して振幅が大きくなったか或いは減少したかどうかを表すために(むしろサンプルが採取された時点での瞬時振幅をデジタル表現するために)、各サンプルが単一の「0」または「1」として記憶されるデルタ変調などの符号化技術は、非常に高いサンプリングレート(例えば、毎秒3千2百万サンプル)を必要とする。しかしながら、サンプリングレートを低下させる原理は、忠実に再生することができる最大周波数を低下させることにもなる。
デバイスに高性能オーディオバッファを追加することで、ユーザ・コマンドを予想して音声を選択的にキャプチャすることにより、このクリッピングを除去することができる。センサとプロセッサの動作は監視され、ユーザ・コマンドが今後あり得ることを示唆するインディシアを探しだすことができる。このようなインディシアを検出すると、循環バッファが起動する。循環バッファに格納された音声は、消費電力を低減するために、間引き等によってダウンサンプリングすることもできる。デバイスに音声を処理または記録させるユーザ・コマンドを受信した後、コマンドが発せられる前にバッファに格納されていた音声の少なくとも一部は、コマンドの後に受信された音声と組み合わされる。次いで、組み合わされた音声は、ユーザが記録したいと所望する音声の開始をクリッピングすることなく処理または格納することができる。
更に、音声認識をストリーミングするために音声が使用される場合、チャネル及び/または環境補償を可能にするために、ユーザ・コマンドの前に短い音声時間を含ませることによって精度を改善することができる。発話が始まる前の無音の短い時間は、オーディオチャネルを標準化することを可能にし、背景と周囲の騒音から話される言葉を区別するための音声認識システムの能力を向上させる。処理前に音声を標準化するべくバッチ処理がバッチのすべて(または大部分)をサンプリングできるので、ストリーム全体を受信した後のバッチ処理と比較して、音声が受信されるとストリーミング音声上で音声認識を実行するとき、これは特に有利であるが、一方でライブストリームを処理するに際して、標準化すべきところから既存のサンプルが存在しない可能性がある。ユーザが発話する前の音声は、ゲイン調整のようにユーザの発話に適用することができる他のチャネル/環境適応を実行するためにも使用することができる。
ユーザ・コマンド信号を受信したとき、前の音声サンプルがユーザ・コマンドの受信後に受信した音声にプリペンドすることができるように(音声と連結することができるように)、循環型音声バッファを音声キャプチャシステムに追加することによって、ユーザ・コマンドを受信する前に発生した発話と他の音を記録することができる。音声処理を開始する(及びバッファ音声をプリペンドする)信号は、ボタンを押すことを含むか、或いはデバイスと物理的に対話する(例えば、デバイスを振ることによって)、デバイスに対してジェスチャをする、デバイスに音声コマンドを発する、またはいくつかの他のコマンドを介して音声記録/処理を開始させることを含むことができる。また、デバイスに記録/処理を開始させる指示を明示的にせずユーザが会話を始める場合のように、信号はより微細な明示的指示を含むことも可能である。
バッファは常に稼働させることもできるが、ユーザ・コマンドを受信するかもしれない比較的高い可能性がある場合にのみバッファを活性化することには消費電力の利点が存在し得る。例えば、音声のキャプチャや記録または処理に関連するアプリケーションが最初に開かれたとき、或いはデバイスを取り上げたとき、またはデバイス前面の光強度に変化があった場合(デバイスの動き或いはデバイス近くの動きを示し、デバイスを潜在的なユーザの近くに配置する)、ユーザ・コマンドが間近に迫っている可能性がある。
バッテリ電力を節約するために、ボタン押しの前にバッファに記録された音声は、後続の音声よりも低いレートでサンプリングすることができ、或いはデシメーションなどの技術を用いてダウンサンプリングすることも可能である。デシメーションは、オリジナルの音声ストリームの各n番目のサンプルのみを記憶する(例えば、各10サンプル中の1が格納される)。
ユーザ・コマンドの後、バッファリングした音声がどのくらいを受信された音声に連結させるかを決定するために、いくつかのアプローチを使用することができる。例えば、バッファ音声の2分の1秒など一定の時間を使用することができる。別の例として、バッファ音声の最新の秒内における単語の先頭を探すように、長い時間(例えば、1秒)内に発生する「沈黙」の時間を決定することに基づいて、時間は適応的に選択することができる。発話の開始に先立つ周囲の背景雑音の開放時間も、音声処理を容易にするためにプリペンドされた音声に含ませることができる。
本発明のより完全な理解のために、ここでは添付の図面と併せてなされる以下の説明を参照する。
高性能バッファを備えるデバイスの動作を示す。 高性能バッファを備えるデバイスを概念的に示すブロック図である。 高性能バッファを備えるデバイスの動作のためのアルゴリズムの一例を示す。 高性能バッファがアクティブ化されるべきかどうかを決定するために使用することができるプロセスを示す。 バッファに格納されている音声と、音声を格納または処理せよとのユーザ・コマンドの後に受信された音声の双方を含む音声波形を示す。 高性能バッファを備えるデバイスを概念的に示す別のブロック図である。 高性能バッファを備えるデバイスの動作のための別のアルゴリズムを示す。 高性能バッファで使用するためのコンピュータネットワークの一例を示す。
図1は、音声をキャプチャするようデバイス100に指示するユーザを予想して、音声を理知的にバッファリングするためのシステムを示している。デバイス100は、差し迫った音声のキャプチャ動作を示唆するインディシアのためにセンサとプロセッサ動作を監視する(122)。監視することができるインディシアの種類の例としては、音声を記録または処理するアプリケーションの起動、デバイス上の入射光強度の変化、動きの視覚的検出、デバイスに近接したユーザの視覚的検出、顔の視覚認識、タッチ感応表示画面への指の近位検出、デバイスの向きの変化(例えば、特定の方向に装置の向きを変える)、デバイスの動き、周囲音の検出、会話の検出、及び特定の話者の検出が含まれる。このようなインディシアに加えて、デバイスはまた、ユーザの記憶された履歴が一日の特定の時間に、または特定の物理的位置で(例えば、位置を決定するためにデバイスで利用可能な全地球測位及びナビゲーションサービスに基づき)音声テキスト口述を用いたパターンを示すかどうかなど、キャプチャされた音声の利用に関連する過去の使用パターンを考察することができる。
音声をキャプチャせよとのコマンドが間近に迫っているとの決定がなされた場合、循環バッファは活性化される(124)。循環バッファは、絶えず自体の内容を上書きする先入れ先出し方式(FIFO)バッファである。バッファは、例えば2秒または3秒のような任意のサイズであってもよい。
音声を処理し記憶するためのユーザ・コマンドを伝える信号(126)を受信すると、ユーザ・コマンドに先立ってバッファに格納されている最新の音声の一部は、ユーザ・コマンドの後に受信された音声にプリペンドされる。次に、組み合わされた音声は、どのタイプのアプリケーションがキャプチャされた音声を利用しているかに応じて、処理または記録される(128)。
高性能バッファの制御及び操作は、音声をキャプチャするソフトウェアアプリケーションに統合されてもよい、或いはオペレーティング・システム・レベル・ライブラリ・コールのようなアプリケーション・プログラミング・インターフェース(API)を介してアプリケーションにアクセスすることができる。しかし、理知的なバッファリングは、アプリケーションよりもむしろデバイスの機能として実装することもでき、その場合はオーディオコーダ・デコーダ(コーデック)またはオーディオドライバがバッファとシームレスに対話することになり、キャプチャされた音声ストリームを利用するアプリケーションは、バッファリングされた音声が受信したストリームにプリペンドされたことを通知されないかも知れない。
図2は、デバイス100の動作に関連する特定の構成要素を概念的に示すブロック図である。図示のように、デバイス100は、様々なコンポーネントと通信接続するデータバス224を備えている。コンポーネントは、データバス224を介して接続されることに加えて(または接続される代わりに)、直接接続してもよい。更に後述するように、デバイス100内のモジュールは、ハードウェア、ソフトウェア、またはそれらの組み合わせとして実装することも可能である。
デバイス100は、データ及びコンピュータ可読命令を処理するために1つまたは複数の中央処理装置(CPU)を備えるコントローラ/プロセッサ204と、データ及び命令を格納するためのメモリ206を含み得る。メモリ206は、揮発性ランダムアクセスメモリ(RAM)、不揮発性読み出し専用メモリ(ROM)、及び/または他のタイプのメモリを含むことができる。デバイス100は、データ及び命令を格納するための不揮発性記憶装置208も含むことができる。データ・記憶装置208は、磁気記憶装置、光学記憶装置、ソリッドステート記憶装置などの1つまたは複数の蓄積型を含む。デバイス100は、入力/出力装置インターフェース202を介して取り外し可能な或いは外部のメモリ及び/または記憶装置(取り外し可能なメモリカード、メモリキードライブ、ネットワークストレージなど)に接続することもできる。デバイス100及びその様々なコンポーネントを動作させるためのコンピュータ命令は、コントローラ/プロセッサ204によって実行され、メモリ206、記憶装置208、外部デバイス、或いは以下に説明するアクティビティ監視モジュール240に含まれる記憶装置248に格納することができる。代替的に、実行可能命令のいくつかまたは全ては、ソフトウェアに加えて(または代わりに)、 アプリケーション固有のハードウェアに低減或いはファームウェアに埋め込まれてもよい。従って、本明細書に開示されたシステム、プロセス、及びアルゴリズムは、ソフトウェア、ファームウェア、及び/またはハードウェアの様々な組合せで実装することができる。
デバイス100は、入力/出力装置インターフェース202を備えている。様々な内部及び外部入力/出力インターフェースがデバイス100に含まれ得る。実施例の入力装置には、カメラ212、プッシュボタン214、タッチインターフェース216、マイクロフォン218、無線ヘッドセット806、及び全地球測位受信機(例えば、GPS、GLONASS)が含まれる。ローカル入力デバイスに加えて、データネットワーク802を介して他の入力デバイスを接続することもできる。出力デバイスは、ディスプレイ210及びスピーカ(図示せず)、並びにデータネットワーク802を介して接続されたデバイスを備えている。
また、入力/出力装置インターフェース202は、ユニバーサルシリアルバス(USB)、ファイヤーワイヤー、サンダーボルト、イーサネット(登録商標)などの外部周辺機器及びネットワークインターフェース、並びに無線周波数(RF)及び赤外線トランシーバ、ブルートゥースのような無線インターフェース、WiFiなどの無線ローカルエリア・ネットワーク(WLAN)、ロングタームエボリューション(LTE)、WiMAX、GSM(登録商標)、CDMAなどのプロトコルを支援する携帯通信トランシーバを備えることができる。ネットワーク802は、インターネット及び/またはプライベートネットワークであってもよく、分散コンピューティング環境(図8と共に以下で詳しく説明する)を含んでいてもよい。
慣性センサ266における加速度計は、軸に沿ってデバイス100の加速度を測定することが可能である。3軸加速度センサ(現在、一般的に多くの民生用電子機器で使用されている)は、デバイス100に対してx、y、z軸に沿った加速度を提供する。デバイスのx、y、z軸に沿った加速度は、デバイスの向きに依存している。換言すれば、もしデバイスが画面を上向きにしてテーブルの上に平らに置かれている場合、左側から右に移動するようにデバイスを押すと、x軸に沿った加速度が生成される。しかし、デバイスが90度反時計方向に回された場合には、左から右へデバイスを押すことによってy軸に沿った負の加速度が生成される。また、慣性センサ266にはジャイロスコープも備えることが可能であり、デバイスのx、y、z軸の周りにおける回転経時変化を測定することができる。上下判断する特殊な重力センサ、及び地球の磁場(例えば、コンパス方位)に対して相対的な向きを決定するための磁力計のような他のセンサを利用することも可能である。これらのセンサは、デバイスの動きを検出するために使用することができ、以下に説明するように差し迫ったデバイスアクティビティのインディシアとして用いることが可能である。
デバイス100は、オーディオデータを格納する循環バッファ232を更に備えることができる。図1について上述したように、バッファは2秒または3秒のような任意のサイズであってもよい。循環バッファは、絶えず自分自身の内容を上書きする先入れ先出し方式(FIFO)バッファである。実際には、循環バッファはメモリ206、記憶装置208、記憶装置248、または他のメモリの一部であってもよい。バッファは、短期記憶のために使用されるためRAMなどの揮発性メモリを使用することができる。また、いくつかのシステムでは、バッファリング中に行われる頻繁な「書き込み」を鑑みると、不揮発性メモリに比べて揮発性メモリは低消費電力の利点を享受することができる(例えば、ダイナミックRAMへの書き込みは、フラッシュストレージへの書き込みよりも少ないエネルギーしか使用しない)。プロセッサ204によって実行されるソフトウェアまたはファームウェア、或いは専用のハードウェアは、バッファに割り当てられたメモリ位置を通過してループし、循環ループ内のバッファへ書き込みを順次に行うことができる。
デバイス100はまた、アクティビティモニタモジュール240を備えていてもよい。モジュール240にはアクティビティモニタ242が備えられている。図1に戻って説明するが、アクティビティモニタ242は、差し迫ったデバイスのアクティビティ(122)のインディシアのためにセンサとプロセッサ204を監視し、循環バッファ(124)を活性化する。直接または介在エンジンを介して監視されているセンサは、カメラ212、ボタン214、タッチインターフェース216、マイク218のようなコンポーネント、ワイヤレスヘッドセット806(これにはまた、独自の「ボタン」が具備されていてもよい)、ネットワーク802を介して接続されたリモートデバイス、そして慣性センサ266などの外部コンポーネントを含んでいる。アクティビティモニタは、例えば、プロセッサ(例えば、プロセッサ204)に実装されるソフトウェアまたはファームウェアとして、或いは順序論理回路に実装される有限状態マシンのようなハードウェアとして実装することができる。アクティビティモニタ242の操作については、更に後述する。
アクティビティモニタ242を支援する介在エンジンは、センサからの複雑なデータを単純な形に変換する。これらの介在エンジンの例としては、音声認識エンジン244、話者認識エンジン246、及び画像処理エンジン250を含むことができる。これらのエンジンは、プロセッサ204によって実行されるコードによって実装することができ、或いは分散コンピューティング環境内のネットワーク802を介して遠隔プロセッサ上に実装してもよい。
音声認識エンジン244は音声をテキストに変換することができ、「コマンド」語のような特定の単語が認識されたときインディシアを提供し、及び/または受信された音声が音声成分を含んでいることを示すことができる。話者認識エンジン246は、特定のユーザが話している時に識別するため、受信した音声信号を保存された音響指紋と比較する。
音声認識エンジン244と話者認識エンジン246は、例えば、音声認識と音響指紋処理の両方を実行するように設定された分級機システムの一部として実装することができる。このような分級機システムは、例えば、サポートベクターマシン(SVM)であるが、代わりに、またはSVMを増強するために他の機械学習技術も使用され得る。分級機システムは、隠れマルコフモデル(HMM)、ガウス混合モデル(GMM)、メル周波数ケプストラム係数(MFCC)などを利用することができる。音声認識エンジン244で使用される音声認識技術と話者認識エンジン246で使用される音響指紋やモデルは、同一または類似のパターン認識システムを利用することができるが、異なるモデル(例えば、音声認識は音素モデルを使用することができるのに対して、話者認識は声紋モデルを使用することができる)を伴ってもよいし、或いは完全に異なる技術を使用することも可能である。
音声認識エンジン244は特定の「コマンド」語を聞き取るように設定されており、話者認識エンジン246が特定の声を聞き取るように設定されている場合、一致が認められると分級機システムは、アクティビティモニタ242に信号を送ることできる。例えば、この信号は状態マシンへの信号であるが、デバイス100のオペレーティングシステムまたはコントローラ/プロセッサ204上で実行されるアプリケーションのアプリケーション・プログラミング・インターフェース(API)のいずれかを介して送信されるAPIへの高レベルコマンドであってよく、または入力/出力装置インターフェース202によって提供されるネットワーク接続を介して送信されたメッセージであってもよい。信号は、コントローラ/プロセッサ204の予め規定された割込みをトリガすることが可能である。同様に、コントローラ/プロセッサ204上で実行されるコードは、一致が見出されたか否かを決定するために分級機システムを周期的にポーリングすることができる。
画像処理エンジン250は、カメラ212にアクセスし、運動解析や顔検出(または顔認識)を実行する分級機システムとして実装することもできる。
これらのエンジンで使用されるモデルは、記憶装置248に格納することができるが、この記憶装置は記憶装置208などの専用記憶装置または他の記憶装置の一部であってもよい。例えば、音声認識エンジン244は、受信された音声を、記憶装置248に記憶された音響、言語、及びその他のデータモデル並びに情報と比較することができる。音声認識のために記憶されたモデルは、更に、特定の単語に音素の発音で一致するデータ、及び単語または語彙の辞書、並びに特定のコンテキストで一緒に使用される可能性が高い単語を記述するデータを含むことができる。
話者認識エンジン246は、話者が既知の音声を述べているかどうかを判断するために、音声データを記憶装置248に格納された1つまたは複数のテキスト独立型声紋署名やモデルと比較することができる。記憶装置248に格納されている認識された音声署名は、トレーニングセッションを用いて生成することができるか、或いはユーザが音声関連のタスクのためにデバイスを使用する際にアセンブルすることができる。
画像処理エンジン250によって実行される顔検出は、ユーザ設定または非ユーザ設定であってもよい。このような顔検出はカメラ機能を提供する装置で急速に普及しており、この機能性はデバイス100上の他の常駐プログラムと共有することができる(また、他のエンジンに関しても同様である)。特定の顔を認識するために顔認識が使用される場合、顔モデルは、デバイスのトレーニングセッションの一部として生成することができるか、またはユーザが自分自身の写真を撮る時にアセンブルすることができる。
また、アクティビティ監視モジュール240にはパターン認識エンジン252を含めることが可能であり、このエンジンは、一連の動的モデル(例えば、ベイジアン)を適用してオーディオと音声の記録及び処理に関連したデバイスの使用におけるパターンを識別するために、フィルタ処理することができる。例えば、オーディオと音声を記録及び処理するために、ユーザがアプリケーションを利用する時刻及び/またはデバイスの位置に関連するパターンである。センサデータ及び/または他のエンジンによって提供されるインディシアが差し迫ったアクティビティを示唆している場合、記憶装置248に格納された過去の使用パターン基づいて、パターン認識エンジンは、インディシアがオーディオを記録及び処理するデバイスを用いているユーザに予示する確率を提供することができる。もし、確率が閾値(異なるインディシアについて異なり得る閾値)を超えた場合には十分な共通性を提供し、活動モニタ242が循環バッファ232を活性化することができる。ただし確率が閾値未満である場合、活動モニタ242は活性化を見送ることができる。確率は閾値を下回るがユーザが音声の記録または処理をアクティブにして開始する場合には、パターン認識エンジンは、対応する記憶パターンを変更する、及び/または将来のインディシアに基づいてバッファの活性化のために閾値を調整することができる。
図3は、デバイス100の動作のためのアルゴリズムの一例を示す。プロセスは300で開始され、320で音声活動が監視される。監視中に、音声データのストリーム310が受信される。音声ストリームは、特にマイクロフォン218、ヘッドセット806、またはネットワーク802を介して接続されたオーディオキャプチャデバイスなどからキャプチャされる音声とすることができる。
活動モニタ242は、音声を記録または処理せよとのユーザ・コマンドが間近に迫っている可能性があることのインディシアのためにアクティビティ320を監視している。この監視は、インディシアが検出される(322「はい」)まで継続的なループ(322「いいえ」)で行ってもよい。
図4は、アクティビティを監視する320のためのより詳細な実施例である。監視は、インディシアの存在によってバッファを活性化することができる様々なインディシアを確認する。図4は一連の連続したステップとしてアクティビティの監視320を示しているが、ステップは任意の方法にアレンジすることができ、また、インディシアのいずれか(または他のインディシア)は、それ自体でまたは他のインディシアとの組み合わせで、バッファの活性化をもたらすことが可能である。一つのインディシアは、オーディオキャプチャまたは処理アプリケーションがプロセッサ204で開始するか(490)を示している。アプリケーション自体は高性能バッファで動作するように設定されているか或いは設定されていないため、これは特定アプリケーションの起動を監視する、及び/またはI/Oデバイス・インターフェース202を介して接続された音声入力装置にバス224を経由して通信チャネルを開始するアプリケーションを監視するプロセッサ204上で実行中のバックグラウンド・プロセスを有するものを含むことができる。
別のインディシアは、光強度の変化を監視することである(491)。この機能性は、光の強度を調整するために、バックライトを使用する液晶表示装置またはフロントライトを使用する電子ペーパーディスプレイを有する電子機器に一般に組み込まれている。環境光の強度をどのようにして測定するかの例としては、ディスプレイ210に組み込まれた一つまたは複数の光電セルを使用すること、カメラ212を使用することが挙げられる。光強度の変化は、それ自体で、または他のインディシアとの組み合わせで差し迫ったアクティビティのインディシアとして用いることができる。光強度の変化は、ユーザ(492)の動きや存在または顔認識(493)を監視するように、消費電力が高いレベルの他のプロセスをアクティブ化するために使用することもできる。急激な光強度の変化は、それ自体がインディシアとして有用であり得る。何故なら、ユーザの手が強度変化を引き起こすことでユーザがデバイスに手を伸ばしかけていると指し示すことができるからである。
別のインディシアは、カメラ212のようなカメラを用いてユーザ(492)の動きや存在を監視することである。画像処理エンジン250は、動きがカメラの視野内で行われたかどうかを決定するために、カメラを介して取得された一連の画像を比較する。これは独立したプロセスとして実行してもよいし、電力消費を最小限に抑えるために光強度(491)の変化に応答して実施してもよい。
もう一つのインディシアは、顔や頭部(493)のために取得した画像を検索することである。顔認識は写真撮影のために使用することができるモバイルデバイスに広く含まれており、画像処理エンジン250と顔認識処理(493)は撮影ソフトウェアコンポーネントによって使用される共有プロセスであってもよい。顔認識処理は独立したプロセスであってもよいし、電力消費を最小限に抑えるために、光強度(491)の変化及び/または動き検出(492)に応答して実施することも可能である。会話するためにユーザが頭部の近くにデバイスを置いている(例えば、頭部の横や口に近い位置に)ことを判断するために、とりわけ顔と頭部検出を使用することができる。
別のインディシアは、表示画面210のインターフェース216上で指が検出された時(494)である。静電容量式タッチパネルとジェスチャベースのディスプレイインターフェースとによって、画面に指が接近すると接触する前に検出することができる。
もう一つのインディシアは、周囲の音(495)を監視することである。周囲の音は、例えばマイクロフォン218、ヘッドセット806、またはI/Oデバイス・インターフェース202を介して接続された他のオーディオ入力デバイスから受信される背景雑音に勝るオーディオ閾値量を超えた音声であってもよい。周囲の音(495)の検出は、インディシア自体として、他のインディシアとの組み合わせで用いることができ、及び/または会話を検出するために音声を処理する(496)及び/または特定の話者を検出する(497)ために音声を処理する場合のように、大きな電力を消費する他のオーディオ分析プロセスを活性化することができる。
別のインディシアは、会話を検出する(496)ことである。このプロセスは音声認識エンジン244によって実行することができ、プロセスとエンジンの双方は、音声テキスト処理のようにデバイスによって提供される他のプロセスと共有することができる。消費電力を減らすためにアクティビティ監視モジュール240によって実行されるので、会話の検出(496)には、音素を単語や文章に完全に変換するのではなく、一連の音素が検出されたことを検出するように、音声認識ツールのサブセットを使用することができる。このプロセス(496)は独立して行われてもよいし、消費電力を最小化するために周囲の音(495)の検出に応答して実施されることも可能である。
もう一つのインディシアは、特定の話者が認識されたかどうかである(497)。音声認識エンジン246は、受信した音声をデバイスの所有者のものとして記憶された音声署名と比較することができる。このプロセス(497)は独立して行われてもよいし、消費電力を最小化するために周囲の音(495)の検出及び/または音声検出(496)に応答して実施されることも可能である。
別のインディシアは、慣性センサ266を使用して検出されたデバイスの動きである(498)。インディシアはデバイスの動きの変化に基づいてもよいし(例えば、ユーザがデバイスを取り上げた場合のように)、直立状態に維持されているなどデバイスが特定の向きに置かれていることに基づいてもよい。
インディシアが検出されると、パターン認識エンジン252は、一つまたは複数のインディシアの発生と現在の条件(例えば、時間、場所など)、並びにインディシアの発生に先行するアクティビティを音声の記録及び/または処理に先行するユーザ・アクティビティの過去のパターンと比較することができる。もし、パターンが類似しており(424「はい」)共通性の閾値を超える場合、プロセスは続行する。
図3に戻って説明するが、もしインディシアが検出された場合、循環バッファ232がアクティブ化される(340)。バッファの起動に続いて、オーディオを記録または処理せよとの指令信号をユーザから受信したか否かを確認するためのチェックを行うことができる(330)。アクティビティを監視するプロセス(320)は直列に示されているが、アクティビティの監視(320)とユーザ・コマンド信号があったか否かの監視は、並列に或いは異なる配列で動作させることもできる(330)。
音声を処理または記録せよとデバイスに指示するユーザ・コマンド信号を監視する(330)例としては、物理的なボタンを押す行為(例えば、ボタン214)、デバイスのグラフィカル・ユーザ・インターフェースを介して提供される仮想ボタンの押下、発話されたコマンドワード、またはコマンドジェスチャが含まれる。
信号がまだ受信されていない場合(330「いいえ」)、ユーザ信号が受信されるまで(330「はい」)バッファリングが継続する。次に、バッファリングされた音声の少なくとも一部はバッファから取得され(350)、ユーザ・コマンドの後に受信した音声にプリペンドされる(360)。そして、組み合わされた音声ストリームは、音声をテキストに処理するように記録及び/または処理される(370)。音声ストリームが終了すると(例えば、人が話すことを停止すると)、或いは終了した(例えば、ボタン214を解除した)との信号を送ると、プロセスは再起動する(380「いいえ」)。
図5は、時間領域オーディオ信号502を示している。ライン504は、記録または処理する信号を受信した時点(すなわち、330)を表しており、この時点ではライン504の右側のオーディオサンプル516はコマンド後に受信された音声であり、ライン504の左側の音声はバッファリングされた音声である。直近にバッファリングされた音声の固定部分はプリペンドすることができ(360)(例えば、直前の0.5秒)、或いは使用した部分514は、どこで会話または直近の単語が始まったかを検出することによって決定することができる。「沈黙」は、背景周囲ノイズエンベロープ510に対して決定される。バッファリングされた沈黙512の一部は、処理(370)を容易にするためにサンプル514に含ませることができ、音声認識のようにプロセスの精度に恩恵をもたらすことが可能である。インディシアとしての音の検出(図4の495)は、この周囲エンベロープ510を基準にしてもよい。
図6は、デバイス100に含めることができる追加のコンポーネントを示すブロック図である。循環バッファ232はバッファモジュール630に組み込まれている。更に、バッファモジュール630は、標準化及び/または雑音補償モジュール634、アップ/ダウンオーディオサンプラ636、及びアンチエイリアシングフィルタ638を備えている。図7は、図3を補足するフローチャートであり、図6の追加コンポーネントの使用を示している。
図7に示した第1の追加機能は、もし受信した音声を記録または処理せよとの指示をユーザから受けずに一定の時間が経過した場合に(330)、循環バッファ232を遮断するために使用されるタイマーである。プロセスが開始されるとバッファは初期化され(704)、今後あり得るユーザ・コマンドが受信されることをインディシアが示唆した後にカウント728を開始する。所定の時間に到達するまでは(744「いいえ」)、音声のバッファリングが続行される。所定の時間が経過すると(744「はい」)、プロセスが再起動する。加えて、デバイス100上の電力レベルが低い場合には、インディシア320の監視プロセス及び循環バッファの使用は、電力を節約するために一時停止することができる。
別の更なる機能は、標準化及び/または受信した音声にノイズ補償を(634によって)適用することである。プロセスが開始されると、レベルが初期化される(704)。補正はバッファリングされた音声に適用され(732)、ポスト・ユーザ・コマンドストリーム上にプリペンドされた以上にバッファリングした音声の大部分(例えば、バッファ全体)を使用しながら補正が継続的に時間をかけて算出され(742)、更に補正を調整することができる。チャネルの標準化及びノイズ低減に加えて、受信した音声に印加されるゲインは調整することができる(例えば、音声「クリッピング」防止するために)。チャネルの標準化にはケプストラムを算出すること、すなわちオーディオフレームのための音声認識機能であるが、そして、ある期間にわたってケプストラムベクトルを平均化し、時間をかけてケプストラム分散を決定することが含まれ得る。ケプストラム分散と平均値は、オーディオチャネルを標準化するために、背景雑音の影響を低減するために使用することができる。他の雑音補償技術を適用することも可能である。
一態様では、デバイスまたは音声処理システムに複数の循環バッファを組み込むことができる。バッファは異なる長さであってもよいし、異なる目的のために使用されてもよい。例えば、長いバッファは、デバイスによって経験される音声状態のより大きな拡張サンプルを採取するために使用することができ、これによって長い状態サンプルに基づくオーディオ補正をもたらすことが可能となる(例えば、チャネル標準化など)。より短いバッファは、音声認識処理のためにユーザの会話にプリペンドされることになる音声を実際に格納するために使用することができる。一態様では、より長いレンジのバッファは、より長いレンジのバッファに対応する時間枠にわたってオーディオ性能に関連する統計を格納することができる。更に、より長いレンジのバッファは、枠/時間ベースの間引き(ここではマイクが一定の間隔の間オフ/オンされるが、正常速度で音声はサンプリングされる)及び/またはサンプルレートの間引きを行うことができる。
上述したこの調整と従来の音声レベル調整の違いは、音声を記録または処理せよとのユーザ・コマンドの前に計算された補正が、コマンドの後に受信した音声に適用され得ることであり、バッファリングされた音声とライブオーディオとの間の音声品質に継続性を提供し、ストリームの最初から補正された正しいレベルを提供することができるということである。
別のさらなる機能は、音声をバッファリングする時に、デシメーションを使用することである。これは、オーディオサンプルの一部だけを循環バッファ232内に格納するため、デシメーションユニット636を使用することによって達成することができる。例えば、デシメーションユニット636は、バッファ内に各N個(例えば、10の1)ユーザ・インターフェースだけのオーディオサンプルを記憶するのみとすることができる。
上述した高性能なバッファシステムのコンポーネントの大多数はデバイス100内に常駐しているが、コンポーネントを分散コンピューティング環境内に配置することもできる。例えば、バッファモジュール630及び/またはアクティビティ監視モジュール240を、ネットワーク802を介して接続された他のデバイスに常駐させることができる。更に、処理(360)の一部または全部を、ネットワーク802を介してデバイス100に接続されたプロセッサ上で実行することもできる。例えば、図8に示すように、無線デバイス804、無線ヘッドセット806、ラップトップ808、タブレットコンピュータ810、端末812、有線ヘッドセット814、及び/またはコンピュータ816がオーディオストリームを取得し、ユーザ・インターフェースを含み、そして慣性センサ266を備えていてもよく、一方でネットワーク802を介して接続されたサーバ818は、バッファモジュール630、アクティビティ監視モジュール240、及び/またはデータ記録と処理(360)の演算性を実行することができる。このような分散環境は、ネットワークに接続されて限られた演算能力と記憶容量しか持たないデバイスに、高性能バッファのメリットを享受させることを可能にする。
図2及び図6のシステムは、図1、3、4、及び7に示す処理を実行するためのコンピュータ読み取り可能な、及びコンピュータ実行可能な命令を含むことができる。このような命令は、不揮発性のコンピュータ読み取り可能な記憶装置208及び/または248に格納することができる。
図2及び6のコンポーネントはシステム100に含まれていてもよいが、図示しない他のコンポーネントを含めることもできる。また、図示したコンポーネントのいくつかは、高性能バッファシステムの一般的な概念を用いることが可能な全てのデバイスには存在しないかもしれない。更に、単一のコンポーネントとしてデバイス100内に示されているいくつかのコンポーネントは、単一のデバイス内で複数回にわたって現れることがある。例えば、デバイス100は、複数の入力/出力装置インターフェース202または複数のコントローラ/プロセッサ204を備えることがある。
複数の循環バッファ232、アクティブ監視モジュール240、及びバッファモジュール630は、図1、3、4、及び7に示す処理を実行するシステムで使用することができる。このようなマルチデバイスシステムにおいて、デバイス100は、これらのプロセスの様々な側面を実行するための種々のコンポーネントを備えることができる。複数のデバイスが重複するコンポーネントを備えていてもよい。図1、2、及び6に示されているデバイス100は例示的なものであり、デバイスはスタンドアローンのデバイスであってもよいし、全体的または部分的により大きなデバイスまたはシステムのコンポーネントとして備えられてもよい。
本明細書に開示した概念は、例えば、デジタルカメラ、携帯電話、携帯情報端末(PDA)、タブレットコンピュータ、ヘッドマウントカメラとディスプレイを備えたウェアラブルコンピュータ、その他のモバイルデバイスなどを含む多くの様々なデバイスやコンピュータシステムに適用することができる。デバイス100のコンポーネントは、汎用コンピューティング・システム、サーバ・クライアント・コンピューティング・システム、メインフレーム・コンピューティング・システム、電話コンピューティング・システム、ラップトップコンピューターなどを含む高性能バッファ機能を提供することができる他のデバイスまたはシステムのコンポーネントであってもよい。
様々なコンポーネントは、デバイス100と共に全体的に或いは部分的に使用することができる。例えば、カメラ212は、画像をキャプチャするために電荷結合素子(CCD)イメージセンサやアクティブピクセルセンサ(APS)を備えることができる。液晶表示ディスプレイのようなディスプレイ210、有機発光ダイオードディスプレイ、電子ペーパー、エレクトロクロミックディスプレイ、陰極線管ディスプレイ、フィールドエミッションディスプレイ、ピコプロジェクタや画像/またはビデオを表示するための他の適切なコンポーネント、並びに任意の適切な技術。デバイス218〜210は、それぞれがデバイス100内に一体化され得るか、または分離していてもよい。
本開示の上述した態様は、例示的なものであることを意図している。これらは、本発明の原理及び適用を説明するために選択されたものであり、網羅的とする或いは発明を限定する意図はない。開示された態様の多くの変更及び変形は、当業者には明らかであろう。コンピュータ、デジタルイメージング及び/またはコンテンツ変換の分野における通常の知識を有する者は、本明細書に記載の構成要素及びプロセス・ステップは、他の構成要素またはステップ、或いは構成要素またはステップの組み合わせと交換可能であり得ることを認識し、依然として本開示の利益及び利点を達成するであろう。また、本発明は、ここに開示された特定の詳細及びステップの一部または全てがなくても実施できることは、当業者には明らかなはずである。
本開示の態様は、コンピュータ方法、システム、或いはメモリデバイスまたは非一時的なコンピュータ可読記憶媒体などの製品として実装することができる。コンピュータ可読記憶媒体はコンピュータによって読み取り可能であり、本開示に記載のプロセスを実行するためにコンピュータまたは他のデバイスを指示する命令を含み得る。コンピュータ可読記憶媒体は、揮発性コンピュータメモリ、不揮発性コンピュータメモリ、ハードドライブ、ソリッドステートメモリ、フラッシュドライブ、リムーバブルディスク、及び/またはその他の媒体によって実行することができる。
本明細書で使用されるように、特に指定しない限り、用語「a」または「one」は、1つまたは複数の項目を含み得る。更に、「に基づいて」という語句は、特に記述しない限り、「に少なくとも部分的に基づいて」を意味することが意図させている。
(条項)
1.電子デバイス上の音声バッファリングする方法であって、
差し迫ったデバイスのアクティビティのインディシアを検出することを含み、前記インディシアは、音声を記録または処理するアプリケーションの1つまたは複数の起動と、入射光強度の変化と、動きの視覚的検出と、デバイスに近接するユーザの視覚的検出と、顔の視覚的認識と、タッチ感応表示画面への指の近位の検出と、デバイスの動きと、周囲音の検出と、発話の検出と、または特定の話者の検出とを含み、
前記方法は、前記インディシアを検出することに応答して、循環バッファをアクティブ化し、
受信した音声を前記循環バッファ内に格納し、
音声を処理または記録する指示を受信し、
前記指示に応答して、前記指示前に前記バッファに格納された前記音声の少なくとも一部を、前記指示後に受信した音声と組み合わせ、そして、
組み合わされた音声を送信または処理する、
こと含む前記方法。
2.前記受信された指示は、物理的なボタンの押下、グラフィカル・ユーザ・インターフェースを介して提供される仮想ボタンの押下、またはコマンドジェスチャである、条項1に記載の方法。
3.更に、前記インディシアを検出することに応答して、かつ前記指示を受信する前に、前記受信した音声に適用されるべきオーディオ補正を算出し、そして、
前記オーディオ補正を前記指示後に受信した音声に適用する、条項1に記載の方法。
4.前記オーディオ補正は、1つまたは複数のチャンネル標準化またはノイズ除去を含む、条項3に記載の方法。
5.コンピューティングデバイスであって、
少なくとも1つのプロセッサと、
一連の動作を実行するために前記少なくとも1つのプロセッサによって実行されるように動作可能な命令を含むメモリ装置を備え、前記少なくとも1つのプロセッサを、
差し迫ったデバイスのアクティビティのインディシアを検出し、
差し迫ったデバイスのアクティビティの前記インディシアを検出することに少なくとも部分的に基づいて循環バッファを活性化させ、
受信した音声を前記循環バッファ内に格納し、
音声を処理または記録するための信号を受信し、
前記信号を受信する前に前記循環バッファに格納された前記音声の少なくとも一部を、前記信号の後に受信した音声と組み合わせ、そして、
前記組み合わされた音声を送信または処理する、
ように設定することを含む前記コンピューティングデバイス。
6.差し迫ったデバイスのアクティビティの前記インディシアを前記検出することは、前記少なくとも1つのプロセッサに結合した監視センサに少なくとも部分的に基づいている、条項5に記載のコンピューティングデバイス。
7.前記インディシアは、音声を記録または処理するアプリケーションの1つまたは複数の起動と、入射光強度の変化と、動きの視覚的検出と、前記デバイスに近接するユーザの視覚的検出と、顔の視覚的認識と、タッチ感応表示画面への指の近位の検出と、デバイスの動きと、周囲音の検出と、発話の検出と、または特定の話者の検出とを含む、条項6に記載のコンピューティングデバイス。
8.音声を記録または処理する前記信号は、物理的なボタンの押下、前記デバイスのグラフィカル・ユーザ・インターフェースを介して提供される仮想ボタンの押下、またはジェスチャに応答して生成される、条項5に記載のコンピューティングデバイス。
9.更に、前記少なくとも1つのプロセッサを、
音声を記録または処理する前記信号を受信する前にオーディオ補正を算出し、そして、
前記オーディオ補正を前記信号の後に受信した前記音声に適用するように設定する命令を含む、条項5に記載のコンピューティングデバイス。
10.前記少なくとも1つのプロセッサは、
第一の循環バッファに格納された音声に少なくとも部分的に基づいてオーディオ補正を算出し、
前記オーディオ補正を第二の循環バッファに格納された音声に適用し、そして、
前記第二の循環バッファに格納された前記信号の一部を、前記信号の後に受信した音声と組み合わせるように設定される、条項9に記載のコンピューティングデバイス。
11.前記オーディオ補正は、1つまたは複数のチャンネル標準化またはノイズ除去を含む、条項9に記載のコンピューティングデバイス。
12.更に、前記少なくとも1つのプロセッサを、
ユーザ履歴に少なくとも部分的に基づいてキャプチャされた音声の利用に関連するデバイスのアクティビティのパターンを認識し、そして、
少なくとも差し迫ったデバイスのアクティビティの前記検出されたインディシア及び前記インディシアの発生に関連する他のデータを認識パターンと比較するように設定する命令を含み、
前記循環バッファを活性化させることは、更に、前記比較に少なくとも部分的に基づいている、条項5に記載のコンピューティングデバイス。
13.コンピューティングデバイスを制御するためのプロセッサ実行可能命令を格納する非一時的なコンピュータ可読記憶媒体であって、
差し迫ったデバイスのアクティビティのインディシアを検出するプログラムコードと、
差し迫ったデバイスのアクティビティの前記インディシア検出することに少なくとも部分的に基づいて循環バッファを活性化させるプログラムコードと、
受信した音声を前記循環バッファに格納するプログラムコードと、
音声を処理または記録する信号を受信するプログラムコードと、
前記信号を受信する前に前記循環バッファに格納された前記音声の少なくとも一部を、前記信号の後に受信した音声と組み合わせるプログラムコードと、そして、
前記組み合わされた音声を送信または処理するプログラムコードと、
を含む非一時的なコンピュータ可読記憶媒体。
14.差し迫ったデバイスのアクティビティの前記インディシアを検出する前記プログラムコードは、前記コンピューティングデバイスのセンサを監視することに少なくとも部分的に基づいている、条項13に記載の非一時的なコンピュータ可読記憶媒体。
15.前記インディシアは、音声を記録または処理するアプリケーションの1つまたは複数の起動と、入射光強度の変化と、動きの視覚的検出と、前記デバイスに近接するユーザの視覚的検出と、顔の視覚的認識と、タッチ感応表示画面への指の近位の検出と、前記デバイスの動きと、周囲音の検出と、発話の検出と、または特定の話者の検出とを含む、条項14に記載の非一時的なコンピュータ可読記憶媒体。
16.音声を記録または処理する前記信号は、物理的なボタンの押下、前記コンピューティングデバイスのグラフィカル・ユーザ・インターフェースを介して提供される仮想ボタンの押下、またはジェスチャに応答して生成される、条項13に記載の非一時的なコンピュータ可読記憶媒体。
17.更に、音声を記録または処理する前記信号を受信する前にオーディオ補正を算出するプログラムコードと、そして、
前記オーディオ補正を前記信号の後に受信した音声に適用するプログラムコードを含む、条項13に記載の非一時的なコンピュータ可読記憶媒体。
18.前記オーディオ補正を算出する前記プログラムコードは第一の循環バッファに格納された音声に少なくとも部分的に基づいており、
前記オーディオ補正を適用する前記プログラムコードは前記オーディオ補正を、第二の循環バッファに格納された音声に適用するプログラムコードを含み、そして、
前記第二の循環バッファに格納された前記音声の一部を、前記信号の後に受信した音声と組み合わせるプログラムコードを含む、条項17に記載の非一時的なコンピュータ可読記憶媒体。
19.前記オーディオ補正は、1つまたは複数のチャンネル標準化またはノイズ除去を含む、条項17に記載の非一時的なコンピュータ可読記憶媒体。
20.更に、ユーザ履歴に少なくとも部分的に基づいてキャプチャされた音声の利用に関連するデバイスのアクティビティのパターンを認識するプログラムコードと、そして、
少なくとも差し迫ったデバイスのアクティビティの前記検出されたインディシア及び前記インディシアの発生に関連する他のデータを認識パターンと比較するプログラムコードを含み、
前記循環バッファを活性化させる前記プログラムコードは、前記比較に少なくとも部分的に更に基づいている、条項13に記載の非一時的なコンピュータ可読記憶媒体。

Claims (13)

  1. 電子デバイス上の音声をバッファリングする方法であって、
    差し迫ったデバイスのアクティビティの第1の指示を検出することを含み、前記第1の指示は、
    音声を処理するアプリケーションの1つまたは複数の起動と、
    入射光強度の変化と、
    動きの視覚的認識と、
    顔の視覚的認識と、
    電子デバイスの動きと、
    周囲音と、
    発話と、
    特定の話者の認識と、
    の少なくともいずれかを含み、 前記方法は、
    音声の利用に関連するユーザ・アクティビティの過去のパターンと、前記第1の指示とを比較し、
    前記第1の指示を検出することに応答し、かつ前記比較に少なくとも部分的に基づいて、循環バッファをアクティブ化し、
    受信した音声に対応した音声データを前記循環バッファ内に格納し、
    音声を処理するための第2の指示を受信し、
    前記第2の指示の受信に応答して、
    前記第2の指示前に前記循環バッファに格納された前記音声データの少なくとも一部と前記第2の指示を受信した後に受信した更なる音声に対応した更なる音声データとを組み合わせして、組み合わされた音声データにし、そして、
    前記組み合わされた音声データを処理する、
    ことを含む前記方法。
  2. 物理的なボタンの押下、グラフィカル・ユーザ・インターフェースを介して提供される仮想ボタンの押下、またはコマンドジェスチャを検出することに応じて前記第2の指示を生成する、ことを更に含む、請求項1に記載の方法。
  3. 更に、前記第1の指示を検出することに応答して、かつ前記第2の指示を受信する前に、前記受信した音声に対応した音声データに適用されるべきオーディオ補正を算出し、そして、
    前記オーディオ補正を前記第2の指示後に受信した音声に対応した更なる音声データに適用する、請求項1に記載の方法。
  4. 前記オーディオ補正は、チャンネル標準化及びノイズ除去の少なくとも1つを含む、請求項3に記載の方法。
  5. コンピューティングデバイスであって、
    少なくとも1つのプロセッサと、
    一連の動作を実行するために前記少なくとも1つのプロセッサによって実行されるように動作可能な命令を含むメモリ装置を備え、前記命令は、前記少なくとも1つのプロセッサを、
    差し迫ったデバイスのアクティビティの指示を検出し、
    ここで、前記指示は、
    音声を処理するアプリケーションの1つまたは複数の起動と、
    入射光強度の変化と、
    動きの視覚的認識と、
    顔の視覚的認識と、
    コンピューティングデバイスの動きと、
    周囲音と、
    発話と、
    特定の話者の認識と、
    の少なくともいずれかを含み、さらに
    音声の利用に関連するユーザ・アクティビティの過去のパターンと、前記指示とを比較し、
    前記指示を検出することに少なくとも部分的にかつ前記指示と前記パターンに対応するデータとを比較することに少なくとも部分的に基づいて、第1の循環バッファを活性化させ、
    受信した音声に対応する音声データを前記第1の循環バッファ内に格納し、
    音声を処理するための信号を受信し、
    前記信号を受信する前に前記第1の循環バッファに格納された前記音声データの少なくとも一部と、前記信号の受信後に受信した更なる音声に対応した更なる音声データとを組み合わせして、組み合わせられた音声データにし、そして、
    前記組み合わされた音声データを処理する、
    ように設定することを含む前記コンピューティングデバイス。
  6. 前記命令は、前記少なくとも1つのプロセッサが差し迫ったデバイスのアクティビティの前記指示を検出し、かつ前記少なくとも1つのプロセッサに結合したセンサからの出力に少なくとも部分的に基づいて前記指示を検出する、ように設定する、請求項5に記載のコンピューティングデバイス。
  7. 更に、前記命令は、前記少なくとも1つのプロセッサ
    前記信号を受信する前にオーディオ補正を算出し、そして、
    前記オーディオ補正を前記更なる音声データに適用するように設定することを含む、請求項5に記載のコンピューティングデバイス。
  8. 更に、前記命令は、前記少なくとも1つのプロセッサ
    第2の循環バッファに格納された音声データに少なくとも部分的に基づいて前記オーディオ補正を算出し、
    前記オーディオ補正を前記第1の循環バッファに格納された音声データに適用するように設定することを含む、請求項7に記載のコンピューティングデバイス。
  9. 前記オーディオ補正は、チャンネル標準化及びノイズ除去の少なくとも1つを含む、請求項7に記載のコンピューティングデバイス。
  10. コンピューティングデバイスを制御するためのシステムであって、
    コンピュータ実行可能命令を格納するように設定された電子データ記憶装置と、そして、
    前記電子データ記憶装置と通信する1つまたは複数のプロセッサを備え、
    前記1つまたは複数のプロセッサは少なくとも、
    差し迫ったデバイスのアクティビティの指示を検出し、
    ここで、前記指示は、
    音声を処理するアプリケーションの1つまたは複数の起動と、
    入射光強度の変化と、
    動きの視覚的認識と、
    顔の視覚的認識と、
    コンピューティングデバイスの動きと、
    周囲音と、
    発話と、
    特定の話者の認識と、
    の少なくともいずれかを含み、さらに
    音声の利用に関連するユーザ・アクティビティの過去のパターンと、前記指示とを比較し、
    前記指示を検出することに少なくとも部分的にかつ前記指示と前記パターンに対応するデータとを比較することに少なくとも部分的に基づいて、第1の循環バッファを活性化し、
    前記第1の循環バッファに受信した音声に対応する音声データを格納し、
    音声を処理するための信号を受信し、
    前記信号を受信する前に前記第1の循環バッファに格納された音声データの少なくとも一部を、前記信号の後に受信した更なる音声に対応する更なる音声データとを組み合わせして、組み合わされた音声データにし、そして、
    前記組み合わされた音声データを処理する、
    ように設定させられることを特徴とするシステム。
  11. 更に、前記1つまたは複数のプロセッサは、物理的なボタンの押下、前記コンピューティングデバイスのグラフィカル・ユーザ・インターフェースを介して提供される仮想ボタンの押下、またはジェスチャを検出することに応じて前記信号を生成する、ように構成される、請求項10に記載のシステム。
  12. 更に、前記1つまたは複数のプロセッサは、
    前記信号を受信する前にオーディオ補正を算出し、そして、
    前記オーディオ補正を前記更なる音声データに適用するように構成される、請求項10に記載のシステム。
  13. 更に、前記1つまたは複数のプロセッサは、
    第2の循環バッファに格納された第2の音声データに少なくとも部分的に基づいて前記オーディオ補正を算出し、
    前記オーディオ補正を前記第1の循環バッファに格納された音声データに適用するように設定される、請求項12に記載のシステム。
JP2016540281A 2013-09-03 2014-08-27 電子デバイス上の音声をバッファリングする方法及びコンピューティングデバイス Active JP6594879B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/016,403 US9633669B2 (en) 2013-09-03 2013-09-03 Smart circular audio buffer
US14/016,403 2013-09-03
PCT/US2014/052925 WO2015034723A1 (en) 2013-09-03 2014-08-27 Smart circular audio buffer

Publications (3)

Publication Number Publication Date
JP2016535312A JP2016535312A (ja) 2016-11-10
JP2016535312A5 JP2016535312A5 (ja) 2017-09-07
JP6594879B2 true JP6594879B2 (ja) 2019-10-23

Family

ID=52584433

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016540281A Active JP6594879B2 (ja) 2013-09-03 2014-08-27 電子デバイス上の音声をバッファリングする方法及びコンピューティングデバイス

Country Status (5)

Country Link
US (1) US9633669B2 (ja)
EP (1) EP3028111B1 (ja)
JP (1) JP6594879B2 (ja)
CN (1) CN106030440B (ja)
WO (1) WO2015034723A1 (ja)

Families Citing this family (157)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US10002189B2 (en) 2007-12-20 2018-06-19 Apple Inc. Method and apparatus for searching using an active ontology
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US20120309363A1 (en) 2011-06-03 2012-12-06 Apple Inc. Triggering notifications associated with tasks items that represent tasks to perform
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
CN113470640B (zh) 2013-02-07 2022-04-26 苹果公司 数字助理的语音触发器
US9195432B2 (en) 2013-02-26 2015-11-24 Sonos, Inc. Pre-caching of audio content
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
WO2014197334A2 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for user-specified pronunciation of words for speech synthesis and recognition
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
WO2014200728A1 (en) 2013-06-09 2014-12-18 Apple Inc. Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
WO2015020942A1 (en) 2013-08-06 2015-02-12 Apple Inc. Auto-activating smart responses based on activities from remote devices
US20150074524A1 (en) * 2013-09-10 2015-03-12 Lenovo (Singapore) Pte. Ltd. Management of virtual assistant action items
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
WO2015094369A1 (en) * 2013-12-20 2015-06-25 Intel Corporation Transition from low power always listening mode to high power speech recognition mode
CN105900010B (zh) * 2014-01-17 2019-12-06 索尼公司 成像系统、报警生成设备和方法、成像设备和方法以及程序
US9338514B2 (en) 2014-03-28 2016-05-10 Sonos, Inc. Account aware media preferences
US9524338B2 (en) 2014-04-28 2016-12-20 Sonos, Inc. Playback of media content according to media preferences
US9478247B2 (en) 2014-04-28 2016-10-25 Sonos, Inc. Management of media content playback
US10129599B2 (en) 2014-04-28 2018-11-13 Sonos, Inc. Media preference database
EP3480811A1 (en) 2014-05-30 2019-05-08 Apple Inc. Multi-command single utterance input method
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9535986B2 (en) 2014-06-27 2017-01-03 Sonos, Inc. Application launch
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US20160224104A1 (en) * 2015-02-02 2016-08-04 Telenav, Inc. Electronic system with capture mechanism and method of operation thereof
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10452339B2 (en) * 2015-06-05 2019-10-22 Apple Inc. Mechanism for retrieval of previously captured audio
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10747498B2 (en) * 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
CN106560766A (zh) * 2015-10-04 2017-04-12 义明科技股份有限公司 非接触式手势判断方法及其装置
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10769189B2 (en) * 2015-11-13 2020-09-08 Microsoft Technology Licensing, Llc Computer speech recognition and semantic understanding from activity patterns
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en) * 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
CN106971730A (zh) * 2016-01-14 2017-07-21 芋头科技(杭州)有限公司 一种基于信道补偿的声纹识别方法
US10204637B2 (en) * 2016-05-21 2019-02-12 Stephen P Forte Noise reduction methodology for wearable devices employing multitude of sensors
KR102295161B1 (ko) * 2016-06-01 2021-08-27 메사추세츠 인스티튜트 오브 테크놀로지 저전력 자동 음성 인식 장치
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
US10621992B2 (en) * 2016-07-22 2020-04-14 Lenovo (Singapore) Pte. Ltd. Activating voice assistant based on at least one of user proximity and context
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
US10593346B2 (en) 2016-12-22 2020-03-17 Apple Inc. Rank-reduced token representation for automatic speech recognition
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
CN108288470B (zh) * 2017-01-10 2021-12-21 富士通株式会社 基于声纹的身份验证方法和装置
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
DK201770439A1 (en) 2017-05-11 2018-12-13 Apple Inc. Offline personal assistant
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK201770428A1 (en) 2017-05-12 2019-02-18 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770432A1 (en) 2017-05-15 2018-12-21 Apple Inc. Hierarchical belief states for digital assistants
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
DK201770411A1 (en) 2017-05-15 2018-12-20 Apple Inc. MULTI-MODAL INTERFACES
DK179560B1 (en) 2017-05-16 2019-02-18 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US20180336275A1 (en) 2017-05-16 2018-11-22 Apple Inc. Intelligent automated assistant for media exploration
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US10664533B2 (en) 2017-05-24 2020-05-26 Lenovo (Singapore) Pte. Ltd. Systems and methods to determine response cue for digital assistant based on context
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
CN107240396B (zh) * 2017-06-16 2023-01-17 百度在线网络技术(北京)有限公司 说话人自适应方法、装置、设备及存储介质
US10445429B2 (en) 2017-09-21 2019-10-15 Apple Inc. Natural language understanding using vocabularies with compressed serialized tries
US10755051B2 (en) 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
EP3698359A1 (en) * 2017-10-18 2020-08-26 Soapbox Labs Ltd. Methods and systems for speech detection
CN107808670B (zh) * 2017-10-25 2021-05-14 百度在线网络技术(北京)有限公司 语音数据处理方法、装置、设备及存储介质
GB201801875D0 (en) * 2017-11-14 2018-03-21 Cirrus Logic Int Semiconductor Ltd Audio processing
US10636424B2 (en) 2017-11-30 2020-04-28 Apple Inc. Multi-turn canned dialog
US11397077B2 (en) 2018-01-05 2022-07-26 Stmicroelectronics, Inc. Power and security adjustment for face identification with reflectivity detection by a ranging sensor
US10922395B2 (en) * 2018-01-05 2021-02-16 Stmicroelectronics, Inc. Facial authentication systems and methods utilizing time of flight sensing
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
US10726829B2 (en) * 2018-02-28 2020-07-28 Cirrus Logic, Inc. Performing speaker change detection and speaker recognition on a trigger phrase
US10789959B2 (en) 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
US10861462B2 (en) * 2018-03-12 2020-12-08 Cypress Semiconductor Corporation Dual pipeline architecture for wakeup phrase detection with speech onset detection
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10909331B2 (en) 2018-03-30 2021-02-02 Apple Inc. Implicit identification of translation payload with neural machine translation
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US10944859B2 (en) 2018-06-03 2021-03-09 Apple Inc. Accelerated task performance
US10665222B2 (en) * 2018-06-28 2020-05-26 Intel Corporation Method and system of temporal-domain feature extraction for automatic speech recognition
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US10996919B2 (en) * 2018-09-28 2021-05-04 Microsoft Technology Licensing, Llc Providing historical captured audio data to applications
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
CN109462796A (zh) * 2018-10-25 2019-03-12 歌尔股份有限公司 一种音频处理系统及音频设备
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
CN112216277A (zh) * 2019-07-12 2021-01-12 Oppo广东移动通信有限公司 通过耳机进行语音识别的方法、耳机、语音识别装置
WO2021056255A1 (en) 2019-09-25 2021-04-01 Apple Inc. Text detection using global geometry estimators
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11183193B1 (en) 2020-05-11 2021-11-23 Apple Inc. Digital assistant hardware abstraction
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
US11727719B2 (en) 2020-08-28 2023-08-15 Stmicroelectronics, Inc. System and method for detecting human presence based on depth sensing and inertial measurement
US12021806B1 (en) 2021-09-21 2024-06-25 Apple Inc. Intelligent message delivery

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2829014B2 (ja) 1989-01-12 1998-11-25 株式会社東芝 音声認識装置及び方法
FR2765715B1 (fr) * 1997-07-04 1999-09-17 Sextant Avionique Procede de recherche d'un modele de bruit dans des signaux sonores bruites
US6044434A (en) 1997-09-24 2000-03-28 Sony Corporation Circular buffer for processing audio samples
ES2397501T3 (es) * 1997-11-25 2013-03-07 Motorola Mobility, Llc Métodos, sistemas y elementos fabricados de reproducción de contenido audio
DE10030369A1 (de) 2000-06-21 2002-01-03 Volkswagen Ag Spracherkennungssystem
JP4577543B2 (ja) * 2000-11-21 2010-11-10 ソニー株式会社 モデル適応装置およびモデル適応方法、記録媒体、並びに音声認識装置
US20030004729A1 (en) 2001-06-28 2003-01-02 Allen Karl H. Handheld device with enhanced speech capability
JP3940895B2 (ja) * 2002-02-18 2007-07-04 日本電気株式会社 音声認識装置及び方法
US7177608B2 (en) * 2002-03-11 2007-02-13 Catch A Wave Technologies Personal spectrum recorder
JP2003345390A (ja) 2002-05-23 2003-12-03 Matsushita Electric Ind Co Ltd 音声処理装置及びリモートコントローラ装置
US20130138231A1 (en) * 2011-11-30 2013-05-30 Arbitron, Inc. Apparatus, system and method for activating functions in processing devices using encoded audio
JP2005182357A (ja) * 2003-12-18 2005-07-07 Matsushita Electric Ind Co Ltd 対話システム
US7610199B2 (en) 2004-09-01 2009-10-27 Sri International Method and apparatus for obtaining complete speech signals for speech recognition applications
ES2675734T3 (es) * 2005-04-07 2018-07-12 Orange Procedimiento de sincronización entre una operación de procesamiento de reconocimiento vocal y una acción de activación de dicho procesamiento
US7962340B2 (en) 2005-08-22 2011-06-14 Nuance Communications, Inc. Methods and apparatus for buffering data for use in accordance with a speech recognition system
JP4678773B2 (ja) * 2005-12-05 2011-04-27 Kddi株式会社 音声入力評価装置
US8886545B2 (en) * 2007-03-07 2014-11-11 Vlingo Corporation Dealing with switch latency in speech recognition
US8111839B2 (en) * 2007-04-09 2012-02-07 Personics Holdings Inc. Always on headwear recording system
JP5034787B2 (ja) * 2007-08-30 2012-09-26 ソニー株式会社 電子機器、電子機器の起動方法およびコンピュータプログラム
US8706172B2 (en) 2010-10-26 2014-04-22 Miscrosoft Corporation Energy efficient continuous sensing for communications devices
EP2801974A3 (en) 2013-05-09 2015-02-18 DSP Group Ltd. Low power activation of a voice activated device

Also Published As

Publication number Publication date
EP3028111A1 (en) 2016-06-08
EP3028111A4 (en) 2017-04-05
EP3028111B1 (en) 2020-03-04
CN106030440A (zh) 2016-10-12
WO2015034723A1 (en) 2015-03-12
CN106030440B (zh) 2019-06-11
US20150066494A1 (en) 2015-03-05
JP2016535312A (ja) 2016-11-10
US9633669B2 (en) 2017-04-25

Similar Documents

Publication Publication Date Title
JP6594879B2 (ja) 電子デバイス上の音声をバッファリングする方法及びコンピューティングデバイス
US20170243585A1 (en) System and method of analyzing audio data samples associated with speech recognition
JP7036943B2 (ja) 音声認識方法、音声区切り方法並びにその装置及びコンピュータプログラム
US10332524B2 (en) Speech recognition wake-up of a handheld portable electronic device
JP6751433B2 (ja) アプリケーションプログラムをウェイクアップする処理方法、装置及び記憶媒体
EP3179474B1 (en) User focus activated voice recognition
CN106233376B (zh) 用于通过话音输入激活应用程序的方法和设备
EP3078021B1 (en) Initiating actions based on partial hotwords
US11031005B2 (en) Continuous topic detection and adaption in audio environments
EP2973549B1 (en) Systems and methods for switching processing modes using gestures
US10089987B2 (en) Music detection and identification
US10628346B2 (en) Adaptive buffering of data received from a sensor
WO2021008458A1 (en) Method for voice recognition via earphone and earphone
US20180166073A1 (en) Speech Recognition Without Interrupting The Playback Audio
US11437031B2 (en) Activating speech recognition based on hand patterns detected using plurality of filters
CN110337030B (zh) 视频播放方法、装置、终端和计算机可读存储介质
JP7056020B2 (ja) 情報処理装置およびプログラム
US10169266B2 (en) Adaptive buffering of data received from a sensor
GB2553040A (en) Sensor input recognition
CN115527547B (zh) 噪声处理方法及电子设备
WO2024019759A1 (en) Controlling head-mounted devices by voiced nasal consonants

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170630

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170727

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180613

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180703

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20181003

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190219

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20190520

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20190719

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190816

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190912

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190925

R150 Certificate of patent or registration of utility model

Ref document number: 6594879

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250