MediaPortal.MusicPlayer.BASS.BassAudioEngine.InitBass C# (CSharp) Méthode

InitBass() public méthode

Init BASS, when a Audio file is to be played
public InitBass ( ) : void
Résultat void
    public void InitBass()
    {
      try
      {
        Log.Info("BASS: Initializing BASS audio engine...");
        bool initOK = false;

        if (_bassFreed && Config.MusicPlayer != AudioPlayer.Bass)
        {
          Log.Debug("BASS: BASS audio engine was previously freed. Re-Init");
          if (!Bass.BASS_Init(0, 48000, 0, IntPtr.Zero, Guid.Empty))
          {
            if (Bass.BASS_ErrorGetCode() != BASSError.BASS_ERROR_ALREADY)
            {
              HandleBassError("Initialze");
            }
          }
        }

        switch (Config.MusicPlayer)
        {
          case AudioPlayer.Bass:
            initOK = InitDirectSoundDevice();
            break;

          case AudioPlayer.Asio:
            initOK = InitAsio();
            break;

          case AudioPlayer.WasApi:
            initOK = InitWasapi();
            break;
        }

        if (initOK)
        {
          if (Settings.Instance.WinAmpPlugins.Count > 0)
          {
            BassWaDsp.BASS_WADSP_Init(GUIGraphicsContext.ActiveForm);
          }

          Log.Info("BASS: Initialization done.");
          _initialized = true;
          _bassFreed = false;
        }
        else
        {
          BASSError error = Bass.BASS_ErrorGetCode();
          if (Config.MusicPlayer == AudioPlayer.Asio)
          {
            BASSError errorasio = BassAsio.BASS_ASIO_ErrorGetCode();
            Log.Error("BASS: Error initializing BASS audio engine {0} Asio: {1}",
                      Enum.GetName(typeof(BASSError), error), Enum.GetName(typeof(BASSError), errorasio));
          }
          else
            Log.Error("BASS: Error initializing BASS audio engine {0}", Enum.GetName(typeof(BASSError), error));
        }
      }
      catch (Exception ex)
      {
        Log.Error("BASS: Initialize failed. Reason: {0}", ex.Message);
      }
    }