Skip to content

Conversation

@TERMSTRAANGE
Copy link

Convert data to int16 type during operation. As an alternative, data could be initially loaded as int16 as opposed to default uint8 as defined by np.memmap which is used to load the samples.

Convert data to int16 type during operation. As an alternative, data could be initially loaded as `int16` as opposed to default `uint8` as defined by `np.memmap` which is used to load the samples.
Copilot AI review requested due to automatic review settings December 23, 2025 16:21
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR fixes an integer out of bounds issue when processing SDR (Software Defined Radio) data by explicitly converting uint8 data to int16 before performing arithmetic operations with a negative ADC offset.

Key Changes:

  • Explicit type conversion to int16 added before arithmetic operations with the ADC offset (-127)
  • Prevents potential integer underflow when adding negative offset to unsigned uint8 data
  • Applied consistently to both IQ (in-phase and quadrature) components in complex data construction

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
calibratesdr/utils.py Added astype(np.int16) conversion in get_fft function for both real and imaginary data slices before adding adc_offset
calibratesdr/dabplus/dab.py Added astype(np.int16) conversion in get_ppm function for IQ data components before adding adc_offset

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant