Create a connection and handle to a specified mixer device
Synopsis:
#include <sys/asoundlib.h>
int snd_mixer_open( snd_mixer_t **handle, 
                    int card, 
                    int device );
Arguments:
- handle
- A pointer to a location where snd_mixer_open() stores a
  handle for the mixer device.
  
- card
- The card number.
- device
- The device number.
Library:
libasound.so
Use the -l asound option with
qcc
to link against this library.
Description:
The snd_mixer_open() function 
creates a connection and handle to the mixer device 
specified by the card and device number.
You'll use this handle when calling the other snd_mixer_*
functions.
Returns:
Zero on success, or a negative value on error.
Errors:
- -EACCES
- Search permission is denied on a component of the path prefix, or the
    device exists and the permissions specified are denied.
- -EINTR
- The open() operation was interrupted by a signal.
- -EMFILE
- Too many file descriptors are currently in use by this process.
- -ENFILE
- Too many files are currently open in the system.
- -ENOENT
- The named device doesn't exist.
- -ENOMEM
- No memory available for data structure.
- -SND_ERROR_INCOMPATIBLE_VERSION
- The audio driver version is incompatible with the client library that
    the application is using.
Classification:
QNX Neutrino
| Safety: |  | 
|---|
| Cancellation point | No | 
| Interrupt handler | No | 
| Signal handler | Yes | 
| Thread | Yes |