Я пытаюсь создать систему распознавания музыки. Боюсь, я, возможно, не буду читать образцы wav, как и предполагалось, а также, что я могу использовать неправильные размеры окна, чтобы сделать БПФ и другие.Wav Reader и процессор в Java и основные вопросы wav для распознавания звука
Было бы здорово, если вы поможете мне.
Во-первых, у меня есть некоторые вопросы относительно обработки звука в Wavs.
1) У Wav есть заголовок вправо? Так будет ли следующий код правильно читать wav-файл?
private static byte[] getAudioBytes(String path_to_audio) throws IOException, UnsupportedAudioFileException{
File audio_file = new File(path_to_audio);
//
AudioInputStream audio_input_stream = AudioSystem
.getAudioInputStream(audio_file);
byte audio[] = new byte[(int) audio_file.length()];
audio_input_stream.read(audio);
return audio;
}
1.1) Если есть заголовок, как я могу его прочитать и каковы его поля? (Я смущен о разных заголовках, которые я видел в Интернете)
2) Еще один вопрос, я полагаю, запись wav-файла имеет размер кадра по умолчанию. Я прав?
2.1) Я должен отправить каждый кадр в БПФ. Если я использую другой размер кадра для отправки образцов в БПФ, это приведет к неправильным результатам, исправьте?
2.2) Если разные размеры кадра получают неверные результаты, как я могу использовать более крупные кадры, чтобы получить лучшую точность частоты? (например, скажем, исходный файл имеет 1024 кадра выборки, и я хочу использовать размер выборки 4096)
3) Было бы полезно использовать как на моем образце wav-файл, так и в моем исходном файле тот же бит глубина, правильно?
4) если это 16-битовая глубина, я должен использовать short в java справа?
В моем коде я читал кадры с образцами 4096 в нем, не касаясь размера кадра записи. Я видел несколько примеров распознавания песни, но они не объясняют большую часть этих деталей, и просто сказали, что они использовали 4096 как размер кадра, например. Я попытался найти такую информацию и получить небольшую информацию, поэтому я прошу помочь здесь.
Спасибо заранее
спасибо! Вы оказали огромную помощь! – anatp2015