Half-Duplex DSR Client VOIP Barge-In via Timestamped Audio Buffering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Half-duplex DSR clients, which can only accept or deliver audio but not both simultaneously, face challenges in providing VOIP barge-in support due to the full-duplex nature of the network, leading to issues with audio input and output synchronization during speech recognition.

Innovation Solution

Buffering VOIP audio data from the full-duplex network, pausing playback during voice activity, sending speech for recognition, and resuming playback based on recognition notifications with timestamped audio data to ensure seamless interaction.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If a half-duplex DSR client plays audio continuously from the full-duplex network, then the user hears the VOIP audio data, but the user cannot interrupt the playback with speech input because the audio output blocks the audio input channel

Engineering Contradiction:
Improveaudio playback continuityVSAvoidbarge-in capability
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The system performs preliminary actions by detecting voice activity during audio playback and pre-buffering the speech input before the playback is paused. This allows the speech recognition to proceed without interruption while the audio playback is temporarily suspended, resolving the contradiction between continuous playback and barge-in capability.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If the half-duplex DSR client pauses audio playback to allow speech input, then the user can perform barge-in, but the audio output is interrupted and desynchronized from the network stream

Engineering Contradiction:
Improvebarge-in supportVSAvoidaudio playback synchronization
Core Design Contradiction:
Adaptability or versatilityVSStability of the object's composition

Solution Approach 1:

The system uses feedback mechanisms by monitoring voice activity detection during playback and using timestamp information from the network audio stream to determine when to resume playback. The playback is resumed at the correct position based on the timestamp of the last received audio packet, ensuring synchronization is maintained despite the temporary pause for speech input.

Inventive Principle:
Principle #23Feedback

3Measurement precision

If the system buffers all incoming audio data with timestamps, then the playback can be precisely controlled and synchronized, but the device complexity increases due to additional buffering and timestamp management

Engineering Contradiction:
Improveaudio timing accuracyVSAvoidbuffer management complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system applies partial buffering by only buffering audio data that is needed for the barge-in scenario rather than buffering all incoming audio indefinitely. The buffer is used selectively to hold audio packets with timestamps during voice activity periods, reducing the overall buffering complexity while maintaining sufficient timing accuracy for playback control.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS7848314B2VOIP barge-in support for half-duplex DSR client on a full-duplex network
Publication Date: 2010.12.07 MICROSOFT TECHNOLOGY LICENSING LLC
  • US7848314B2 patent drawing
  • US7848314B2 patent drawing
  • US7848314B2 patent drawing

AI summary

Providing VOIP barge-in support for a half-duplex DSR client on a full-duplex network by buffering, in a half-duplex DSR client, input audio from the full-duplex network; playing, through the half-duplex DSR client, the buffered input audio; pausing, during voice activity on the half-duplex DSR client, the playing of the buffered input audio; sending, during voice activity on the half-duplex DSR client, speech for recognition through the full-duplex network to a voice server; receiving in the half-duplex DSR client through the full-duplex network from the voice server notification of speech recognition, the notification bearing a time stamp; and, responsive to receiving the notification, resuming the playing of the buffered input audio, including playing only buffered VOIP audio data bearing time stamps later than the time stamp of the recognition notification.