Я работаю над проектом, в котором мне нужно извлечь человеческий звук из аудиофайла .wav с помощью java.
Аудио файл .wav может содержать от 3 до 4 звуков, например, "собака", "кошка", "музыка" и "человек". Мне нужно будет идентифицировать человеческий звук, а затем извлечь эту часть из аудиофайла .wav.
Я использую FFT.java и Complex.java .
Теперь я написал класс AudioFileReader, который считывает файл audio.wav с жесткого диска, а затем преобразовать это в массив байтов. Затем использовали вышеупомянутые FFT.java и Complex.java для применения БПФ. fft (bytesArray), который возвращает мне сложный массив;
Теперь проблема в том, как извлечь байтовый образец человеческого звука из возвращенного сложного массива ... кто-нибудь знает, как я могу этого добиться?
Edit: Мы предполагаем очень простой файл audio.wav. Например, звук кошки, затем тишина, человеческий звук, затем тишина, звук собаки, затем тишина и т. Д. Никакого смешения голосов.