How can audio be played on Linux using only Lazarus built-in functions?You don't. Same for every other platform unless the hardware contains the audio-device out of the box.
There seems to be an issue with the FFrame values which are not correctly signed (they should be declared as SmallInt rather than LongInt).