/// <summary>
        /// Creates and adds a new entry to the queue.
        /// </summary>
        /// <param name="playable"></param>
        /// <param name="preloaded"></param>
        private void Add([NotNull] IPlayableId playable,
                         bool preloaded,
                         int initialSeek)
        {
            var entry = new PlayerQueueEntry(sink, playable, preloaded, this, initialSeek);

            queue.Add(entry);
            if (queue.Next() == entry)
            {
                var head = queue.Head;
            }
        }