I'm not sure if you can find a full tutorial for your exact problem but as far as I can tell what you need is the following:
AudioFileStream
extracts MP3 frames from NSData
: https://stackoverflow.com/a/17332543/29516370
AudioConverter
converts the MP3 frames to PCM
: Unable to convert mp3 into PCM using AudioConverterFillComplexBuffer in AudioFileStreamOpen's AudioFileStream_PacketsProc callback
The PCM
data can be played using AudioUnit
: as you say you've already done it