Под «самим определять громкость» вы подразумеваете: начать запись, а затем использовать отдельный поток, чтобы открыть записанный файл, настроить его и определить амплитуду? Потому что это звучит довольно сложно и слишком тяжело - и если вы не имеете в виду, как еще получить записанный звук?