docs: def start(self, driver=None):
          """Start audio output driver in separate background thread.
  
          Call this function any time after creating the Synth object.
          If you don't call this function, use get_samples() to generate
          samples.
  
          Optional keyword argument:
            driver: which audio driver to use for output
                    Possible choices:
                      'alsa', 'oss', 'jack', 'portaudio'
                      'sndmgr', 'coreaudio', 'Direct Sound',
                      'dsound', 'pulseaudio'
  
          Not all drivers will be available for every platform, it depends on
          which drivers were compiled into FluidSynth for your platform.
          """
          if driver is not None:
              assert driver in [
                      'alsa',
                      'oss',
                      'jack',
                      'portaudio',
                      'sndmgr',
                      'coreaudio',
                      'Direct Sound',
                      'dsound',
                      'pulseaudio'
                      ]
              fluid_settings_setstr(self.settings, 'audio.driver', driver)
          self.audio_driver = new_fluid_audio_driver(self.settings, self.synth)