I am trying to self-study audio codecs and I am trying to understand the difference between CODECS that come under AMR-WB, SuperWB and EVS vs. AAC-LD (MPEG-4). When is the former used and when is the latter used. Can one be used instead of the other? Also where does LPC (Linear Predictive Coding) get used? Any guidance would help
Let me put in an unconnected form things about audio codecs.
Audio can be music or speech (discluding ultrasound, sonar etc). Music is wideband and requires high-fidelity. Speech has a lower bandwidth and does not require fidelity but intelligibility.
A Codec can be lossy or lossless, the choice depends on the source type, the purpose of application and the resources available.
Codecs are also divided into two as waveform coders (such as AC-3, AAC, MP3, OGG vorbis, (lossless) FLAC, ADPCM) and source coders (such as vocoder, LPC, CELP etc).
A waveform coder, compresses (transforms) the data trying to preserve the waveform shape. On the other hand, a source coder tries to compute parameters of a model that's assumed to produce the given data.
Waveform coders are preferred for high quality multimedia audio, broadcast audio and music compression. Source coders are/can be preferred for very low bitrate speech compression for communication systems such as GSM, military radio etc.
As technology advances, bandwidth limitations have disappeared for certain (but not all) applications. In addition, the compression efficiency of lossy waveform coders improved to the point that medium quality speech compression comparable to that of source coders can be achieved.
So, technically speaking, your VoIP (voice over internet protocol) application can select from a wide range of speech codecs available for different applications needs and available resources. However you must consult to your VoIP protocol standards to see whether it leaves you free to choose your speech codec or dictates a particular type for use. In short, it's more of a standards issue than a technical one.