Skip to content

Commit a4e5f77

Browse files
authored
Use the midpoint for unsigned 8-bit playback silence (#645)
1 parent 626fcb0 commit a4e5f77

1 file changed

Lines changed: 3 additions & 2 deletions

File tree

‎src/sounddevice.py‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2634,17 +2634,18 @@ def read_indata(self, indata):
26342634
indata[:self.blocksize, source]
26352635

26362636
def write_outdata(self, outdata):
2637+
silence = 128 if self.output_dtype == 'uint8' else 0
26372638
# 'float64' data is cast to 'float32' here:
26382639
outdata[:self.blocksize, self.output_mapping] = \
26392640
self.data[self.frame:self.frame + self.blocksize]
2640-
outdata[:self.blocksize, self.silent_channels] = 0
2641+
outdata[:self.blocksize, self.silent_channels] = silence
26412642
if self.loop and self.blocksize < len(outdata):
26422643
self.frame = 0
26432644
outdata = outdata[self.blocksize:]
26442645
self.blocksize = min(self.frames, len(outdata))
26452646
self.write_outdata(outdata)
26462647
else:
2647-
outdata[self.blocksize:] = 0
2648+
outdata[self.blocksize:] = silence
26482649

26492650
def callback_exit(self):
26502651
if not self.blocksize:

0 commit comments

Comments
 (0)