public SyncedSamplePlayer(Channel speakerOutput, Channel monitorOutput)
        {
            _mixer = new MixerChannel(this);

            _mainPlayer = new AudioPlayer();
            _mixer.AddInputChannel(_mainPlayer.Output);

            _outputSplitter = new OutputSplitter(_mixer, speakerOutput, monitorOutput);
        }
        /// <summary>
        ///     Initialises the raw loop mixer.
        /// </summary>
        private void InitialiseRawLoopMixer()
        {
            // DebugHelper.WriteLine("InitialiseRawLoopMixer");

            _rawLoopMixer          = new MixerChannel(this, MixerChannelOutputType.MultipleOutputs);
            _rawLoopOutputSplitter = new OutputSplitter(_rawLoopMixer, SpeakerOutput, MonitorOutput);

            // DebugHelper.WriteLine("END InitialiseRawLoopMixer");
        }
        private void InitialiseSampler()
        {
            // DebugHelper.WriteLine("InitialiseSampler");

            // create mixer channel
            _samplerMixer = new MixerChannel(this);
            _samplerMixer.SetVolume((decimal)DefaultFadeOutStartVolume);
            _samplerMixer.CutBass();
            _samplerOutputSplitter = new OutputSplitter(_samplerMixer, SpeakerOutput, MonitorOutput);

            _samplePlayer = new TrackSamplePlayer(this);
            _samplerMixer.AddInputChannel(_samplePlayer.Output);

            _samplerMixer.SetVolume(50);

            // DebugHelper.WriteLine("END InitialiseSampler");
        }