public void fadeOut( FilenameURL filenameURL, long milis )
    {
        if( !toStream )
        {
            errorMessage( "Method 'fadeOut' may only be used for " +
                          "streaming and MIDI sources." );
            return;
        }
        if( milis < 0 )
        {
            errorMessage( "Miliseconds may not be negative in method " +
                          "'fadeOut'." );
            return;
        }

        fadeOutMilis = milis;
        fadeInMilis = 0;
        fadeOutGain = 1.0f;
        lastFadeCheck = System.currentTimeMillis();

        synchronized( soundSequenceLock )
        {
            if( soundSequenceQueue != null )
                soundSequenceQueue.clear();

            if( filenameURL != null )
            {
                if( soundSequenceQueue == null )
                    soundSequenceQueue = new LinkedList<FilenameURL>();
                soundSequenceQueue.add( filenameURL );
            }
        }
    }