The QNX Sound Architecture supports a variety of data formats.
The <sys/asound.h> header file defines two sets of constants for the data formats. The two sets are related (and easily converted between) but serve different purposes:
Generally, the SND_PCM_FMT_* constants are used to convey information about raw potential, and the SND_PCM_SFMT_* constants are used to select and report a specific configuration.
You can build a format from its width and other attributes, by calling snd_pcm_build_linear_format().
You can use these functions to check the characteristics of a format: