Minim 2.0.2 Released!

I am happy to announce the release of Minim 2.0.2! Download and installation instructions are available on the project page. Here’s what’s fixed and new, which you will also find in the changelog.txt file included with the distribution:

Fixed Bugs:

  • filenames were being parsed incorrectly by createRecorder.
  • fixed audio processing routines for AudioPlayer and AudioSnippet so that they don’t spend cycles doing nothing while not in the “play” state.
  • fixed the zombie thread bug, which kept audio processing Threads from exiting when close() was called.
  • fixed out-of-memory problems that could occur when large files were played. this does come at the cost of slower seek times.
  • fixed the isEnabled(AudioEffect) function, which, uh, wasn’t working.
  • fixed the pan() function, which was returning the BALANCE control.

New Features:

  • added functions to FFT for doing forward transforms with an offset: forward(float[] samples, offset) and forward(AudioBuffer samples, offset)
  • added a freqToIndex(float freq) method to FFT for finding out the index of the spectrum band that contains the passed in frequency.
  • added a stop() method to AudioSample, so that playing samples can be immediately silenced.
  • added setPanNoGlide(float pan) to Controller, which will snap the panning setting of a sound to the provided value.
  • added setInputMixer(Mixer) and setOutputMixer(Mixer), which allow you to specify which Java Mixer object should be used when obtaining inputs (AudioInput) and outputs (AudioOuput, AudioPlayer, AudioSnippet, AudioSample).