protected virtual void OnInit(object sender, EventArgs e)
 {
     if (!this.Enabled)
     {
         return;
     }
     this.IsInitialized = true;
     BassUtils.OK(Bass.Configure(global::ManagedBass.Configuration.UpdateThreads, 0));
     BassUtils.OK(Bass.Configure(global::ManagedBass.Configuration.PlaybackBufferLength, this.Output.BufferLength));
     BassUtils.OK(Bass.Configure(global::ManagedBass.Configuration.SRCQuality, this.Output.ResamplingQuality));
     BassUtils.OK(Bass.Init(Bass.NoSoundDevice));
     //Always detect device for now.
     //if (BassWasapiDevice.Info != null && BassWasapiDevice.Info.Device != this.WasapiDevice)
     {
         BassWasapiDevice.Detect(this.WasapiDevice, this.Exclusive, this.AutoFormat, this.Buffer, this.EventDriven, this.Dither);
     }
     Logger.Write(this, LogLevel.Debug, "BASS (No Sound) Initialized.");
 }