diff --git a/src/recorder.cpp b/src/recorder.cpp index bae6592592f839feb6547b1d55eb3af62ab1e267..b16869b96443c6fc73db347c95655d96c2d5298c 100644 --- a/src/recorder.cpp +++ b/src/recorder.cpp @@ -176,8 +176,8 @@ void JasonRecorder::get_samples(std::vector<std::uint8_t> &samples, bool planar, else if ((((std::uint16_t) buffer[1] << 8 )|(buffer[2])) == DATA_ID) { // find the beginning and length of the samples in the buffer size_t start = this->addtional_data_size + 6; - size_t num_samples = (received - start) /this->depth; - num_samples = (num_samples / num_channels) * num_channels * this->depth; + size_t num_samples = (received - start); + num_samples = (num_samples / (num_channels * this->depth)) * num_channels * this->depth; // copy data to provided vector if (planar || (num_channels == 1)) { // copy out directly diff --git a/src/recorder.h b/src/recorder.h index a1654aa884430fac08cb8f82871fe1aeb7b4238f..0979cd10aa13ab7bc54487e347239e943923c3fa 100644 --- a/src/recorder.h +++ b/src/recorder.h @@ -65,7 +65,7 @@ private: size_t receive_message(uint8_t *buffer, size_t max_wait = 0); // device state, as far as known - size_t addtional_data_size = 1024; + size_t addtional_data_size = 730; std::uint8_t num_channels = 0; std::uint8_t depth = 0; std::uint8_t num_filter = 0;