public PlaybackState ChannelIsActive(IBassAudioChannel channel) { // The audio channel's state tells us whether it's stalled or stopped. var state = ManagedBass.Bass.ChannelIsActive(channel.Handle); // The channel is always in a playing state unless stopped or stalled as it's a decoding channel. Retrieve the true playing state from the mixer channel. if (state == PlaybackState.Playing) { state = BassMix.ChannelFlags(channel.Handle, BassFlags.Default, BassFlags.Default).HasFlagFast(BassFlags.MixerChanPause) ? PlaybackState.Paused : state; } return(state); }