public override bool Add(BassOutputStream stream)
 {
     if (this.Queue.Contains(stream.ChannelHandle))
     {
         Logger.Write(this, LogLevel.Debug, "Stream is already enqueued: {0}", stream.ChannelHandle);
         return(false);
     }
     Logger.Write(this, LogLevel.Debug, "Adding stream to the queue: {0}", stream.ChannelHandle);
     //If there's nothing in the queue then we're starting.
     if (this.Queue.Count() == 0)
     {
         var flags = default(BassCrossfadeFlags);
         if (this.Behaviour.Start)
         {
             flags = BassCrossfadeFlags.FadeIn;
         }
         else
         {
             flags = BassCrossfadeFlags.None;
         }
         BassUtils.OK(BassCrossfade.ChannelEnqueue(stream.ChannelHandle, flags));
         return(true);
     }
     BassUtils.OK(BassCrossfade.ChannelEnqueue(stream.ChannelHandle));
     return(true);
 }