应用程序程序员应该使用库API,而不是内核API。alsa库提供了内核API 100%的功能,但增加了可用性方面的主要改进,使应用程序代码更简单、更美观。未来的修复程序或兼容性代码可能会放在库代码中,而不是放在内核驱动程序中。
使用ALSA API和libasound进行简单的声音播放:
/*
Simple sound playback using ALSA API and libasound.
Dependencies: libasound, alsa
Build-Dependencies: liasound-dev
Compile: gcc -lasound -o play sound_playback.c
Usage: ./play <sample_rate> <channels> <seconds> < <file>
Examples:
./play 44100 2 5 < /dev/urandom
./play 22050 1 8 < /path/to/file.wav
Copyright (C) 2009 Alessandro Ghedini <al3xbio@gmail.com>
--------------------------------------------------------------
"THE BEER-WARE