diff --git a/madarrays/waveform.py b/madarrays/waveform.py
index 6fe6aced198f6b845e516d81e580fff5a1eaa217..c4b357ef76bc6f0d7394f1b4a0e4fe3b73331dee 100644
--- a/madarrays/waveform.py
+++ b/madarrays/waveform.py
@@ -751,7 +751,7 @@ class Waveform(MadArray):
             if np.issubdtype(dtype, np.floating):
                 int_range = src_iinfo.max - src_iinfo.min + 1
                 zero = src_iinfo.min + int_range // 2
-                y = (y - zero) / (int_range // 2)
+                y = (1.0 * y - zero) / (int_range // 2)
                 y.clip(min_value=-1, max_value=1-np.finfo(dtype).eps)
                 y = y.astype(dtype)