ALSA already does this. Its not trivial to set up but its not hardeither. Also, define "standard Linux application".