This CL changes the way that values are converted between fixed and floating point to -Avoid the former asymmetric conversion causing nonlinear distortions. -Reduce the complexity. In contrast to the initial CL, the DCHECKS on the incoming sample range was changed to limiting. Bug: webrtc:6594 Change-Id: I8218dfd5c45388ad5aac61be453d2f28725a2475 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/132783 Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org> Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org> Commit-Queue: Per Åhgren <peah@webrtc.org> Cr-Original-Commit-Position: refs/heads/master@{#28867} Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149169 Cr-Commit-Position: refs/heads/master@{#28897}