com.meapsoft
Class MEAPUtil

java.lang.Object
  extended bycom.meapsoft.MEAPUtil
All Implemented Interfaces:
java.lang.Runnable
Direct Known Subclasses:
Composer, FeatExtractor, MEAPsoftGUI, Segmenter, Synthesizer

public abstract class MEAPUtil
extends java.lang.Object
implements java.lang.Runnable

Abstract class that all MEAPsoft utilities must extend. Defines some global constants and useful static methods. Based on Mike Mandel's Meap.java


Field Summary
static boolean bigEndian
           
static int bitsPerSamp
           
protected static ExceptionHandler exceptionHandler
           
static int frameLatency
           
static int mixerToUse
           
static int numChannels
           
protected  javax.swing.BoundedRangeModel progress
           
static int samplingRate
           
static boolean signed
           
static java.lang.String slash
           
static javax.sound.sampled.AudioFormat stereo
           
protected  boolean verbose
           
static java.lang.String version
           
 boolean writeMEAPFile
           
 
Constructor Summary
MEAPUtil()
           
 
Method Summary
static void bytes2doubles(byte[] audioBytes, double[] audioData, javax.sound.sampled.AudioFormat format)
           
static void doubles2bytes(double[] audioData, byte[] audioBytes, javax.sound.sampled.AudioFormat format)
           
static java.lang.String[] getPaths()
           
 javax.swing.BoundedRangeModel getProgress()
          Get the BoundedRangeModel that is keeping track of this MEAPUtil's progress.
 AudioWriter openAudioWriter()
           
 AudioWriter openAudioWriter(java.lang.String filename)
           
 javax.sound.sampled.AudioInputStream openInputStream(java.lang.String filename)
           
static javax.sound.sampled.AudioInputStream openInputStream(java.lang.String filename, javax.sound.sampled.AudioFormat format)
           
static ChunkDist parseChunkDist(java.lang.String[] args, java.lang.String argString, int[] featdim)
          Parse arguments common to many MEAPUtils - Distance metrics
static int[] parseFeatDim(java.lang.String[] args, java.lang.String argString)
          Parse arguments common to many MEAPUtils - array of feature dimensions.
static java.util.Vector parseFeatureExtractor(java.lang.String[] args)
          Parse arguments common to many MEAPUtils - feature extractors
static java.util.Vector parseFeatureExtractor(java.lang.String[] args, java.lang.String argString)
          Parse arguments common to many MEAPUtils - feature extractors
static void printCommandLineOptions(char arg)
           
static void printCommandLineOptions(char[] args)
           
abstract  void run()
          Set everything up, process input, and write output.
 void setExceptionHandler(ExceptionHandler eh)
           
 void setup()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

version

public static final java.lang.String version
See Also:
Constant Field Values

slash

public static final java.lang.String slash

numChannels

public static final int numChannels
See Also:
Constant Field Values

bitsPerSamp

public static final int bitsPerSamp
See Also:
Constant Field Values

samplingRate

public static final int samplingRate
See Also:
Constant Field Values

signed

public static final boolean signed
See Also:
Constant Field Values

bigEndian

public static final boolean bigEndian
See Also:
Constant Field Values

stereo

public static final javax.sound.sampled.AudioFormat stereo

frameLatency

public static final int frameLatency
See Also:
Constant Field Values

mixerToUse

public static int mixerToUse

writeMEAPFile

public boolean writeMEAPFile

verbose

protected boolean verbose

progress

protected javax.swing.BoundedRangeModel progress

exceptionHandler

protected static ExceptionHandler exceptionHandler
Constructor Detail

MEAPUtil

public MEAPUtil()
Method Detail

setup

public void setup()
           throws java.io.IOException,
                  ParserException
Throws:
java.io.IOException
ParserException

run

public abstract void run()
Set everything up, process input, and write output.

Specified by:
run in interface java.lang.Runnable

printCommandLineOptions

public static void printCommandLineOptions(char arg)

printCommandLineOptions

public static void printCommandLineOptions(char[] args)

parseFeatDim

public static int[] parseFeatDim(java.lang.String[] args,
                                 java.lang.String argString)
Parse arguments common to many MEAPUtils - array of feature dimensions.


parseChunkDist

public static ChunkDist parseChunkDist(java.lang.String[] args,
                                       java.lang.String argString,
                                       int[] featdim)
Parse arguments common to many MEAPUtils - Distance metrics


parseFeatureExtractor

public static java.util.Vector parseFeatureExtractor(java.lang.String[] args)
Parse arguments common to many MEAPUtils - feature extractors


parseFeatureExtractor

public static java.util.Vector parseFeatureExtractor(java.lang.String[] args,
                                                     java.lang.String argString)
Parse arguments common to many MEAPUtils - feature extractors


openAudioWriter

public AudioWriter openAudioWriter()
                            throws javax.sound.sampled.LineUnavailableException
Throws:
javax.sound.sampled.LineUnavailableException

openAudioWriter

public AudioWriter openAudioWriter(java.lang.String filename)
                            throws javax.sound.sampled.LineUnavailableException,
                                   java.io.IOException
Throws:
javax.sound.sampled.LineUnavailableException
java.io.IOException

openInputStream

public javax.sound.sampled.AudioInputStream openInputStream(java.lang.String filename)
                                                     throws java.io.IOException,
                                                            javax.sound.sampled.UnsupportedAudioFileException
Throws:
java.io.IOException
javax.sound.sampled.UnsupportedAudioFileException

openInputStream

public static javax.sound.sampled.AudioInputStream openInputStream(java.lang.String filename,
                                                                   javax.sound.sampled.AudioFormat format)
                                                            throws java.io.IOException,
                                                                   javax.sound.sampled.UnsupportedAudioFileException
Throws:
java.io.IOException
javax.sound.sampled.UnsupportedAudioFileException

bytes2doubles

public static void bytes2doubles(byte[] audioBytes,
                                 double[] audioData,
                                 javax.sound.sampled.AudioFormat format)

doubles2bytes

public static void doubles2bytes(double[] audioData,
                                 byte[] audioBytes,
                                 javax.sound.sampled.AudioFormat format)

setExceptionHandler

public void setExceptionHandler(ExceptionHandler eh)

getProgress

public javax.swing.BoundedRangeModel getProgress()
Get the BoundedRangeModel that is keeping track of this MEAPUtil's progress.


getPaths

public static java.lang.String[] getPaths()