WaveRT Port Driver Direct Cyclic Buffer Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional audio port drivers introduce latency and synchronization errors in real-time audio streaming due to data copying and complex operations, which degrade audio rendering and capture performance.
Innovation Solution
The WaveRT port driver provides direct access to a cyclic buffer for audio devices, eliminating the need for data copying and synchronization, and leverages real-time scheduling and low-latency isochronous transfer modes to reduce latency and improve performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If conventional port drivers use data copying and miniport drivers to service audio streams, then buffer management and data transfer are achieved, but audio stream processing latency increases and real-time performance degrades
Solution Approach 1:
The patent extracts the data copying operation from the audio stream processing path by implementing direct access to the cyclic buffer. The audio device can read audio data directly from the cyclic buffer without requiring the port driver to copy data from one buffer to another, thereby eliminating the latency introduced by copying operations while maintaining proper buffer management.
Solution Approach 2:
The patent introduces a cyclic buffer as an intermediary data structure that mediates between the audio device and the port driver. This cyclic buffer allows direct access for audio data transfer, eliminating the need for intermediate copying operations and reducing processing latency while maintaining synchronization.
2Reliability
If conventional port drivers perform complex operations for buffer management and data transfer, then data transfer reliability is maintained, but synchronization errors and timing problems occur
Solution Approach 1:
The patent extracts the synchronization logic from complex driver operations by implementing a simplified direct access model. The cyclic buffer provides a straightforward mechanism for data transfer without requiring complex synchronization protocols, reducing the likelihood of synchronization errors while maintaining reliability through proper buffer management.
Solution Approach 2:
The patent implements a self-service model where the audio device directly accesses the cyclic buffer without requiring extensive driver intervention for synchronization. The port driver maintains minimal involvement in the actual data transfer process, allowing the audio device to service itself through direct buffer access while the driver handles only essential buffer management.
3Adaptability or versatility
If miniport drivers allocate and manage their own cyclic buffers, then buffer allocation flexibility is improved, but additional latency is introduced through buffer allocation and mapping operations
Solution Approach 1:
The patent implements preliminary buffer allocation where the cyclic buffer is allocated and prepared in advance before audio streaming begins. This allows the buffer to be ready for immediate direct access by the audio device, eliminating latency that would otherwise be introduced during runtime buffer allocation and mapping operations.
Data Source
AI summary
Systems and methods for audio streaming in a computing device are described. In one aspect an interface to an adapter driver is provided. The adapter driver is associated with an audio device. The adapter driver and a wave real-time (WaveRT) port driver associated with the computing device use the interface to configure direct access by a client of the computing device and by the audio device to a cyclic buffer. The direct access is for rendering and/or capturing an audio stream. The direct access is independent of any copying by a port driver on the computer system of the audio stream to any buffer.


