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