Вы, конечно, можете читать сигналы.То есть, для файла с частотой 44,1 кГц вы можете прочитать 44,100 различных значений выборки в секунду.Я не знаю, что Java Sound API будет рассчитывать звуковые частоты для вас, но если вы уже собираетесь выполнять манипуляции, вы, вероятно, можете рассчитать все, что вам нужно.
Несколько лет назад яиспользовал что-то в этом направлении для декодирования подозрительного сигнала временного кода SMPTE, распечатывая различные биты и поля.(По сути, мне просто нужно было отслеживать, когда значение пересекает 0 и как долго.)
Короче говоря, да, создание программы сжатия звука, безусловно, было бы возможно - хотя я знаю многих людей, которые были бы удивленына выбор сделать это в Java.