Один из полупортативных * способов захвата всего звука из нескольких источников - это PulseAudio. (В данном случае под переносным подразумевается работа со многими звуковыми картами, а не с разными ОС, хотя существует версия PulseAudio для WinXP). Один из модулей PulseAudio обеспечивает приемник труб. Надеемся, что все ваши выходы будут совместимы с PulseAudio - почти все, что хорошо работает с ALSA, должно быть в порядке. После этого вы сможете просто читать из этого канала, чтобы получить ваш ввод.
Затем вы можете использовать библиотеку, например FFTW (впервые предложенную Томасом «для ответа») для быстрого преобразования Фурье, предполагая, что вы подразумеваете это под «получить значения частоты».
* В данном случае под полупортативным подразумевается работа со многими звуковыми картами, а не с разными ОС, хотя существует версия PulseAudio для WinXP (я не пробовал сам).