swift – Seeking Guidance on Audio Development Libraries for Playing Various Music Formats on iOS


I am exploring audio development and am overwhelmed by the numerous libraries available:

  • AVFoundation
  • MediaPlayer
  • AVFAudio
  • Audio Engine
  • CoreAudio
  • AudioToolbox
  • Audio Unit

Which of these should I use to play both network or local music files (flac/wav/mp3/aac/wma/ogg)? What are their specific roles?

My understanding is that I should use ffmpeg for demuxing to unpackage, then decode the stream to get PCM samples, possibly using Audio Engine for playback. Is this a software decoding method? For Apple-supported formats like mp3, can I bypass ffmpeg for decoding? Which library would be most suitable in this case?

Additionally, how do I extract metadata (song name, artist, cover, lyrics, etc.) from music files? Apple’s own solutions seem to support only ID3 or iTunes tags. How should I handle other formats like wav/flac?

The two links below are the resources I’ve referenced, but they seem outdated. My search for newer, reliable explanations has been fruitless.

Latest articles

spot_imgspot_img

Related articles

Leave a reply

Please enter your comment!
Please enter your name here

spot_imgspot_img