我们从Python开源项目中,提取了以下20个代码示例,用于说明如何使用audioop.tostereo()。
def test_issue7673(self): state = None for data, size in INVALID_DATA: size2 = size self.assertRaises(audioop.error, audioop.getsample, data, size, 0) self.assertRaises(audioop.error, audioop.max, data, size) self.assertRaises(audioop.error, audioop.minmax, data, size) self.assertRaises(audioop.error, audioop.avg, data, size) self.assertRaises(audioop.error, audioop.rms, data, size) self.assertRaises(audioop.error, audioop.avgpp, data, size) self.assertRaises(audioop.error, audioop.maxpp, data, size) self.assertRaises(audioop.error, audioop.cross, data, size) self.assertRaises(audioop.error, audioop.mul, data, size, 1.0) self.assertRaises(audioop.error, audioop.tomono, data, size, 0.5, 0.5) self.assertRaises(audioop.error, audioop.tostereo, data, size, 0.5, 0.5) self.assertRaises(audioop.error, audioop.add, data, data, size) self.assertRaises(audioop.error, audioop.bias, data, size, 0) self.assertRaises(audioop.error, audioop.reverse, data, size) self.assertRaises(audioop.error, audioop.lin2lin, data, size, size2) self.assertRaises(audioop.error, audioop.ratecv, data, size, 1, 1, 1, state) self.assertRaises(audioop.error, audioop.lin2ulaw, data, size) self.assertRaises(audioop.error, audioop.lin2alaw, data, size) self.assertRaises(audioop.error, audioop.lin2adpcm, data, size, state)
def test_string(self): data = 'abcd' size = 2 self.assertRaises(TypeError, audioop.getsample, data, size, 0) self.assertRaises(TypeError, audioop.max, data, size) self.assertRaises(TypeError, audioop.minmax, data, size) self.assertRaises(TypeError, audioop.avg, data, size) self.assertRaises(TypeError, audioop.rms, data, size) self.assertRaises(TypeError, audioop.avgpp, data, size) self.assertRaises(TypeError, audioop.maxpp, data, size) self.assertRaises(TypeError, audioop.cross, data, size) self.assertRaises(TypeError, audioop.mul, data, size, 1.0) self.assertRaises(TypeError, audioop.tomono, data, size, 0.5, 0.5) self.assertRaises(TypeError, audioop.tostereo, data, size, 0.5, 0.5) self.assertRaises(TypeError, audioop.add, data, data, size) self.assertRaises(TypeError, audioop.bias, data, size, 0) self.assertRaises(TypeError, audioop.reverse, data, size) self.assertRaises(TypeError, audioop.lin2lin, data, size, size) self.assertRaises(TypeError, audioop.ratecv, data, size, 1, 1, 1, None) self.assertRaises(TypeError, audioop.lin2ulaw, data, size) self.assertRaises(TypeError, audioop.lin2alaw, data, size) self.assertRaises(TypeError, audioop.lin2adpcm, data, size, None)
def normalize(self): """ Normalize the sample, meaning: convert it to the default samplerate, sample width and number of channels. When mixing samples, they should all have the same properties, and this method is ideal to make sure of that. """ assert not self.__locked self.resample(self.norm_samplerate) if self.samplewidth != self.norm_samplewidth: # Convert to 16 bit sample size. self.__frames = audioop.lin2lin(self.__frames, self.samplewidth, self.norm_samplewidth) self.__samplewidth = self.norm_samplewidth if self.nchannels == 1: # convert to stereo self.__frames = audioop.tostereo(self.__frames, self.samplewidth, 1, 1) self.__nchannels = 2 return self
def stereo(self, left_factor=1.0, right_factor=1.0): """ Turn a mono sample into a stereo one with given factors/amplitudes for left and right channels. Note that it is a fast but simplistic conversion; the waveform in both channels is identical so you may suffer from phase cancellation when playing the resulting stereo sample. If the sample is already stereo, the left/right channel separation is changed instead. """ assert not self.__locked if self.__nchannels == 2: # first split the left and right channels and then remix them right = self.copy().right() self.left().amplify(left_factor) return self.stereo_mix(right, 'R', right_factor) if self.__nchannels == 1: self.__frames = audioop.tostereo(self.__frames, self.__samplewidth, left_factor, right_factor) self.__nchannels = 2 return self raise ValueError("sample must be mono or stereo already")
def test_tostereo(self): data2 = bytearray() for d in data[0]: data2.append(d) data2.append(d) self.assertEqual(audioop.tostereo(data[0], 1, 1, 1), data2)
def test_tostereo(self): for w in 1, 2, 4: data1 = datas[w] data2 = bytearray(2 * len(data1)) for k in range(w): data2[k::2*w] = data1[k::w] self.assertEqual(audioop.tostereo(data1, w, 1, 0), data2) self.assertEqual(audioop.tostereo(data1, w, 0, 0), b'\0' * len(data2)) for k in range(w): data2[k+w::2*w] = data1[k::w] self.assertEqual(audioop.tostereo(data1, w, 1, 1), data2)
def test_tostereo(self): for w in 1, 2, 3, 4: data1 = datas[w] data2 = bytearray(2 * len(data1)) for k in range(w): data2[k::2*w] = data1[k::w] self.assertEqual(audioop.tostereo(data1, w, 1, 0), data2) self.assertEqual(audioop.tostereo(data1, w, 0, 0), b'\0' * len(data2)) for k in range(w): data2[k+w::2*w] = data1[k::w] self.assertEqual(audioop.tostereo(data1, w, 1, 1), data2) self.assertEqual(audioop.tostereo(bytearray(data1), w, 1, 1), data2) self.assertEqual(audioop.tostereo(memoryview(data1), w, 1, 1), data2)