the AudioFormatReaderSource class for reading and playing audio from AudioFormatReader objects; and the AudioTransportSource class for controlling the playback of an AudioFormatReaderSource object.
Why do we need AudioFormatReaderSource rather than just use AudioTransportSource to read what AudioFormatReader gets and control its playback?
The AudioTransportSource can play any AudioSource subclass. But AudioFormatReader is not an AudioSource.
An AudioFormatReaderSource is an AudioSource, that aggregates an AudioFormatReader.