@DebugLog
 void attachVisualizer(int id) {
   destroyVisualizer();
   if (id == AudioEffect.ERROR_BAD_VALUE) return;
   if (visualizerView == null) return;
   visualizerView.link(id);
   setVisualizerEnabled(presenter.isPlaying);
 }
 @Override
 public void run() {
   if (mVisualizer != null) {
     if (!mLinked) {
       mVisualizer.link(0);
       mLinked = true;
     }
   }
 }