The USB audio device class
A special audio device class is represented by the USB audio device class, which describes devices capable of streaming audio. This class is really important due to the fact that it allows a single driver to work with various USB sound devices and interfaces on the market (however, many USB sound cards do not conform to the standard and require proprietary drivers from the manufacturer). The Linux kernel has a support for this device class and the driver. If not enabled into the running kernel, it can be enabled into the kernel configuration menu using the path Device Drivers | Sound card support | Advanced Linux Sound Architecture | USB sound devices | USB Audio/MIDI driver.
As an example, let's try to connect one of these devices to our BeagleBone Black. They can be found almost everywhere over the Internet, and here is an image of the one used in the upcoming examples:
Once the device is connected to our embedded kit, we should see...