Ring Buffer Audio Retrieval for Voice Command Startup Delays

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Voice command applications on portable devices often experience startup delays, resulting in incomplete capture of user speech due to the time required to configure the device, leading to missed initial words or commands.

Innovation Solution

A system that allows client applications to consume past audio data from a ring buffer, enabling them to access and utilize audio data captured before they were ready to accept input, using a dedicated microphone path that continuously records and interfaces with a system-side audio handling I/O unit to provide this data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a voice command application waits for configuration completion before accepting input, then the application can be properly initialized, but the user's initial speech may be missed due to startup delay

Engineering Contradiction:
Improveapplication initializationVSAvoidstartup delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary audio recording through a dedicated microphone path that continuously captures audio data and stores it in a ring buffer before the voice command application is activated. This preliminary action ensures that when the application starts, the buffer already contains the user's speech that occurred during the initialization period, eliminating the startup delay problem

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If the application notifies the user it is ready to accept speech, then the user knows when to speak, but the notification itself takes time causing the user to speak before readiness

Engineering Contradiction:
Improveuser notificationVSAvoidnotification delay
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The dedicated microphone path continuously records audio data into the ring buffer before the application notifies the user it is ready. This preliminary recording action ensures that even if the user speaks immediately upon pressing the button (before the ready notification), the speech is already captured in the buffer and can be retrieved by the application

Inventive Principle:
Principle #10Preliminary action

3Device complexity

If the application consumes audio data in real-time only, then the audio processing is simple, but incomplete user commands are received due to startup delay

Engineering Contradiction:
Improveaudio processingVSAvoidmissed speech
Core Design Contradiction:
Device complexityVSLoss of information

Solution Approach 1:

The audio handling system is enhanced to provide multiple functions: it can provide audio data in real-time mode for normal operation, and switch to providing past audio data from the ring buffer when the application needs to catch up on missed speech. This multi-functionality allows the system to maintain simplicity while also capturing complete user commands

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS11662974B2Mechanism for retrieval of previously captured audio
Publication Date: 2023.05.30 APPLE INC
  • US11662974B2 patent drawing
  • US11662974B2 patent drawing
  • US11662974B2 patent drawing

AI summary

In one aspect a device-side audio handling input/output unit (DIO) of a hardware device writes audio data generated by the hardware device within a ring buffer. An input provided by a user for activation of a software program is received, and a notification that the software program is ready to accept the audio data is generated. A system-side audio handling input/output unit (SIO) additionally provides past audio data from the ring buffer to the software program. Other aspects also are described.