Beispiel #1
0
    def create_audio_controller(self):
        parser = cp.SafeConfigParser()
        parser.read(AUDIO_CONFIG)

        sampling_rate = parser.getint('AudioConfig', 'sampling_rate')
        chunk_size = parser.getint('AudioConfig', 'chunk_size')
        input_device = parser.getint('AudioConfig', 'input_device')
        output_device = parser.getint('AudioConfig', 'output_device')
        form = parser.get('AudioConfig', 'format')

        try:
            signal_dir = parser.get('AudioConfig', 'signal_dir')
        except cp.NoOptionError:
            signal_dir = None

        if form == 'float32':
            form = 1
        elif form == 'int8':
            form = 16
        elif form == 'int16':
            form = 8
        elif form == 'int24':
            form = 4
        elif form == 'int32':
            form = 2
        else:
            raise ValueError('Unknown format in audio.cfg')

        self.audio_controller = AudioController(chunk_size=chunk_size,
                                                sampling_rate=sampling_rate,
                                                sample_format=form,
                                                signal_dir=signal_dir)

        self.audio_controller.set_input_device(input_device)
        self.audio_controller.set_output_device(output_device)