protected void restartStream() throws UnsupportedAudioFileException,IOException,LineUnavailableException {
		if (ctrFile == null && ctrURL == null) return;
		
		if (sdl != null && sdl.isOpen()) {
			sdl.stop();
			sdl.flush();
			sdl.removeLineListener(this);
			sdl.close();
		}
		
		if (ctrFile != null) ais = AudioSystem.getAudioInputStream(ctrFile);
		else if (ctrURL != null) ais = AudioSystem.getAudioInputStream(ctrURL);
		
		sdl = AudioSystem.getSourceDataLine(ais.getFormat(),mixer.getMixerInfo());
		sdl.open(ais.getFormat());
		sdl.addLineListener(this);
		
		frequency = sdl.getFormat().getSampleRate();
		setPitch(getPitch());
	}