def test_Mix(self): self._sample_1.extract_channel(0) self._sample_2.extract_channel(0) formatter1 = ChannelFormatter(self._sample_1.get_channel(0)) formatter1.set_framerate(16000) formatter1.set_sampwidth(2) formatter1.convert() formatter2 = ChannelFormatter(self._sample_2.get_channel(0)) formatter2.set_framerate(16000) formatter2.set_sampwidth(2) formatter2.convert() mixer = ChannelsMixer() mixer.append_channel(formatter1.get_channel()) mixer.append_channel(formatter2.get_channel()) mixer.norm_length() self.assertEqual(mixer.get_channel(0).get_nframes(), mixer.get_channel(1).get_nframes()) newchannel = mixer.mix() self.assertEqual(newchannel.get_nframes(), mixer.get_channel(0).get_nframes()) self.assertEqual(newchannel.get_nframes(), mixer.get_channel(1).get_nframes())
parser.add_argument("-w", metavar="file", nargs='+', required=True, help='Audio Input file name') parser.add_argument("-o", metavar="file", required=True, help='Audio Output file name') # ---------------------------------------------------------------------------- if len(sys.argv) <= 1: sys.argv.append('-h') args = parser.parse_args() # ---------------------------------------------------------------------------- mixer = ChannelsMixer() for inputFile in args.w: audio = audiodata.open(inputFile) idx = audio.extract_channel(0) mixer.append_channel(audio.get_channel(idx)) newchannel = mixer.mix() # Save the converted channel audio_out = AudioPCM() audio_out.append_channel( newchannel ) audiodata.save( args.o, audio_out ) # ----------------------------------------------------------------------------