Недопустимая ошибка аргумента 'n' в readBin() при попытке загрузить большой файл (4 ГБ + аудиофайл)
Я пытаюсь загрузить сэмпл из моно-файла WAV 4 ГБ + (общая продолжительность файла 24 часа, загружаю срез 15 минут).
library(tuneR)
so <-
readWave(
"file.wav", from = 1, to = 15, units = "minutes"
)
Это трассировка
Error in readBin(con, int, n = N, size = bytes, signed = (bytes != 1), :
invalid 'n' argument
2 readBin(con, int, n = N, size = bytes, signed = (bytes != 1), endian = "little")
1 readWave(filePath, from = 1, to = 15, units = "minutes")
Это происходит для каждого параметра "от" и "до" (5,10,15 и т. Д.).
Сначала я хочу сказать, что я переполняю тип данных n, который, как я полагаю, является длинным, но в действительности это не имеет смысла, потому что ошибка появляется, даже когда я пытаюсь загрузить 1-минутную выборку.
Любые идеи о том, что может быть причиной этого?
Примечание: оригинальный файл был в формате mp3 стерео. Он был разделен на 2 канала с помощью WavePad, и один из каналов был сохранен как WAV. Может быть проблема в конвертации?
1 ответ
Волновые файлы ограничены 4 ГБ аудиоданных, поскольку все поля размера в заголовке волны являются 32-разрядными. Смотрите http://en.wikipedia.org/wiki/WAV
Возможно, что WavePad использует формат W64, упомянутый в статье Википедии, но это readWave
не.