Class DJEngine

java.lang.Object
uno.anahata.ai.media.functions.spi.DJEngine
All Implemented Interfaces:
AutoCloseable, Runnable

public class DJEngine extends Object implements Runnable, AutoCloseable
The core engine for the DJ Tool, managing MIDI sequencing and synthesis. This class is UI-agnostic and runs in a background thread.
  • Constructor Details

    • DJEngine

      public DJEngine()
  • Method Details

    • ensureThreadIsAliveAndReady

      public void ensureThreadIsAliveAndReady()
    • setPulseListener

      public void setPulseListener(Consumer<Void> listener)
    • startMusic

      public void startMusic(String style)
    • stopMusic

      public void stopMusic()
    • submitCommand

      public void submitCommand(Runnable command)
    • close

      public void close()
      Specified by:
      close in interface AutoCloseable
    • run

      public void run()
      Specified by:
      run in interface Runnable
    • playPsytrance

      public void playPsytrance()
    • playTechno

      public void playTechno()
    • setTrackMute

      public void setTrackMute(String trackName, boolean mute)
    • isTrackMuted

      public boolean isTrackMuted(String trackName)
    • setTrackInstrument

      public void setTrackInstrument(String trackName, int instrumentId)
    • getTrackInstrument

      public int getTrackInstrument(String trackName)
    • setTempo

      public void setTempo(int bpm)
    • getTempo

      public int getTempo()
    • getLastStyle

      public String getLastStyle()
    • getTickPosition

      public long getTickPosition()
    • getTickLength

      public long getTickLength()