Software PCM mixing

In the case where the sound card has a playback PCM device with only one subchannel, the device driver writer can choose to include a PCM software mixing device.

This device simply appears as a new PCM playback device that supports many subchannels, but it has a few differences from a true hardware device:

The PCM software mixer is specifically attached to a single hardware PCM device. This one-to-one mapping allows for an API call to identify the PCM software-mixing device associated with its hardware device.