Я пытаюсь прочитать WAV-файл в массив байтов для отправки через сокет-соединение и воспроизведения на другой стороне. У меня возникла проблема, как только данные заголовка файла будут прочитаны, остальная часть файла просто заполняет байтовый массив 0. Вот пример кода. Я попробовал несколько других подходов, но все дают тот же результат.
File audioIn = new File("assets/file.wav");
byte [] byteArray = new byte[filesize];
FileInputStream fileInStream = new FileInputStream(audioIn);
fileInStream.read(byteArray);
Вот данные отладки, взятые из отдельных байтов. Информация заголовка соответствует тому, что методы Java извлекли ранее. Из того, что я прочитал, звуковые данные должны начинаться с байта [44], однако я получаю результаты ниже. Остальная часть массива заполнена нулями.
Byte 0: 82
Byte 1: 73
Byte 2: 70
Byte 3: 70
...
Byte 41: 97
Byte 42: 0
Byte 43: -68
Byte 44: -1
Byte 45: 1
Byte 46: 0
Byte 47: 0
...
Следует также отметить, что данные заголовка здесь будут отброшены, так как информация WAVE будет отправлена заранее. Заранее спасибо за помощь.