@Override
	public void pause() {
		// TODO: Pausing and then unpausing sometimes causes the spectrum listener to feel 'laggy'
		//  - but the spectrum interval is still the same so its not like that is getting reset
		//  - happens more consistently with mp3 files, m4a is seemingly unaffected
		//  - and pausing/unpausing can sometimes also fix the 'laggy' feeling.
		if (player != null) {
			player.pause();
			player.setAudioSpectrumListener(null);
			playbackListeners.forEach(Runnable::run);
		}
	}
A media-player using JavaFX's {@link MediaPlayer} with the use of {@link RecafURLStreamHandlerProvider}
which allows pulling audio from 'memory' via the current {@link Workspace}.

@author Matt Coley
recaf-ui/src/main/java/software/coley/recaf/ui/media/FxPlayer.java