For context: I am building an SD card audio player using a Teensy 4.1, sending audio over I2S to a PCM5102. I have been using Frank B's fantastic Audio Codec library to play MP3 and M4A files.

Amazing as this library is, I am missing the ability to get the track length and position in milliseconds, as well as 'seek' through the track.
I understand that this functionality is much harder to implement with compressed formats, and probably requires analysing the whole file first before playing.

Is any of this theoretically feasible with the current Teensy 4.1 hardware spec? (I'm open to adding RAM if needed)

If so, where should I look for Arduino or other cpp libraries that might support this?

Many thanks in advance!