From 5dd12afd3890ebf2820dc202fb2f9eedeb3da021 Mon Sep 17 00:00:00 2001 From: Hajime Hoshi Date: Thu, 2 May 2019 03:15:55 +0900 Subject: [PATCH] audio: Stop the loop when pausing This change reduces the necessity to fill zero bytes. --- audio/audio.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/audio/audio.go b/audio/audio.go index 1c1fe0a20..242179f10 100644 --- a/audio/audio.go +++ b/audio/audio.go @@ -447,12 +447,17 @@ func (p *playerImpl) read() ([]byte, bool) { return nil, false } + // playing can be false when pausing. + if !p.playing { + return nil, false + } + const bufSize = 2048 var buf []byte var err error var proceed int64 - if p.playing && p.context.playable() { + if p.context.playable() { newBuf := make([]byte, bufSize-len(p.buf)) n := 0 n, err = p.src.Read(newBuf)