Как извлечь данные, соответствующие определенным временным интервалам, из файла .wav?
Мне дали несколько файлов .wav и попросили разделить заголовок и данные. Исходя из полученных данных, образцы, соответствующие каждые 160 микросекунд, должны быть отделены и скопированы в буферы.
Теперь я отделил заголовок и получил следующую информацию:
Channels: 2,
Frames: 632956
Sample Rate: 44100,
Block Align: 4
Valid Bits: 16,
Bytes per sample: 2
Для разделения образцов, соответствующих каждые 160 микросекунд, я не могу рассчитать. Я попробовал следующий способ:
Total bits per 160-microsecond = ((sampling_rate * bit depth) / (time))
= ((44100 * 16) / (160 * 1000000)) = 0.00441 bits.
Я уверен, что в приведенном выше расчете есть ошибка, поскольку существует 44100 выборок в секунду и, следовательно, для 160 микросекунд должен существовать счетчик битов, который является положительным натуральным числом и не может быть десятичным значением.
Может кто-нибудь помочь с этим расчетом?
Спасибо.