Я прочитал данные из волнового файла, используя Java, в короткий массив, потому что волновые данные хранятся в виде 16-битных чисел, дополняющих друг друга.
Я использую fftw для извлечения информации о частоте из волновых данных, но он принимает только двойной массив.
Поэтому я думаю, что мне нужно добавить 32768 к отрицательным числам, прежде чем сохранять их вдвойной массив и добавьте 32768 к положительным числам после сохранения их в двойном массиве.Кажется, это потребует от меня много ресурсов процессора.
Прежде всего, это правильный способ сохранения волновых данных для fftw?
А затем, во-вторых, есть ли лучший способ преобразовать шорты в двойные, сохранив волновые данные?