Tear,
Максимум качества - это вряд ли удастся, потери всё равно будут, учитывая что файл и так обрезанный до 22,5 kHz.
Но лучший способ для декодирования - это прогонка файла через raw-форматы, в этом случае потери всегда минимальны.
И в общем, думаю обычного ffmpeg тут вполне достаточно... ffmpeg -i file.mp2 -c:a pcm_s16le -y file_out.wav
И лучше делайте это в 24 Bit, а не в 16 Bit < pcm_s24le > - это даст вам некоторую фору для конечного перекодирования, но процент этой форы будет зависеть от качества источника, - не математического качества, в которое он был закодирован, а физического качества оригинал-носителя, с которого он был рипнут в MPEG-1 Layer II.
32 Bit float - не всегда хорошо справляется с задачей, ибо не все аудюхи корректно с ним работают, но хорошо понимают 24 Bit на аппаратном уровне.
Для заполнения "обрезок" дырок по частотам и битам, используется "белый шум" - или уровни и типы дизеринга, а в ffmpeg, на сколько я помню, нет инструментов для регулировки дизеринга по вкусу пользователя - такие реализации есть только в Sound Forge 6...
Часто сравнивают Фордж с Аудасити, по этому - поробуйте порыть там нечто подобное, если оно конечно же есть...