From 238400db272eddcc8e00e063a6246edc0b3f84a2 Mon Sep 17 00:00:00 2001 From: faiface Date: Thu, 6 Jul 2017 23:36:18 +0200 Subject: [PATCH] fix edge sample value (-1 and +1) overflow --- audio/speaker/speaker.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/audio/speaker/speaker.go b/audio/speaker/speaker.go index d541b6a..667d1fc 100644 --- a/audio/speaker/speaker.go +++ b/audio/speaker/speaker.go @@ -84,7 +84,7 @@ func Update() error { if val > +1 { val = +1 } - valInt16 := int16(val * (1 << 15)) + valInt16 := int16(val * (1<<15 - 1)) low := byte(valInt16 % (1 << 8)) high := byte(valInt16 / (1 << 8)) buf[i*4+c*2+0] = low