High Definition Audio for the Digital Home: Proven Techniques for Getting It Right the First Time

BRIAN RUSSELL'S LAWS OF SOFTWARE RELATIVITY
As a software project approaches release, its mass increases.
The energy required to release a software project is inversely proportional to the time before a scheduled release.
It takes infinite energy to release a finished product on time; therefore, all software projects are both incomplete and late.
Time is relative to the observer of a software project. The last month of development appears to an outside observer to take a year.
If a software project becomes too large, it will collapse into a black hole. Time and money are absorbed but nothing ever comes out.
Usenet post
The interface between audio software and system hardware has three different areas of connectivity. The first is Direct Memory Access (DMA). The DMA controller is located in the Intel HD Audio controller, which is usually part of the input/output controller, also known as the Southbridge chip. The DMA circuitry in the controller gets the audio data from RAM and puts it on the Intel HD Audio bus. If the codec is properly configured, the controller can start and stop the DMA without any notification to the codec by other means than that the stream is starting and stopping. The audio codec receives no advance notice that the DMA stream is going to start or stop. The driver stack communicates only with the Intel HD Audio controller to manage DMA.
In fact, all communication from the driver to the audio...