jm.util

## Class Play

- java.lang.Object
- - jm.util.Play

- All Implemented Interfaces:
    Alignments, DrumMap, Durations, Dynamics, Frequencies, Noises, Panning, Pitches, ProgramChanges, RhythmValues, Scales, Tunings, Volumes, Waveforms, JMC

      public class Play
      extends java.lang.Object
      implements JMC

- - ### Field Summary

    - ### Fields inherited from interface jm.JMC

      `AMPLITUDE, DEBUG, DYNAMIC, EIGHT_BIT, FREQUENCY, KEY_SIG_EVT, MONO, NO_DENOMINATOR, NO_INSTRUMENT, NO_KEY_QUALITY, NO_KEY_SIGNATURE, NO_NUMERATOR, OCTAPHONIC, PAN, PITCH, PROG_EVT, QUADRAPHONIC, RHYTHM, SIXTEEN_BIT, STEREO, TEMP_EVT, THIRTY_TWO_BIT, TIME_SIG_EVT, VERBOSE`

    - ### Fields inherited from interface jm.constants.Durations

      `C, CD, CDD, CROTCHET, CROTCHET_TRIPLET, CT, DC, DDC, DDEN, DDHN, DDM, DDQ, DDQN, DEMI_SEMI_QUAVER, DEMI_SEMI_QUAVER_TRIPLET, DEN, DHN, DM, DOTTED_CROTCHET, DOTTED_EIGHTH_NOTE, DOTTED_HALF_NOTE, DOTTED_MINIM, DOTTED_QUARTER_NOTE, DOTTED_QUAVER, DOTTED_SEMI_QUAVER, DOTTED_SIXTEENTH_NOTE, DOUBLE_DOTTED_CROTCHET, DOUBLE_DOTTED_EIGHTH_NOTE, DOUBLE_DOTTED_HALF_NOTE, DOUBLE_DOTTED_MINIM, DOUBLE_DOTTED_QUARTER_NOTE, DOUBLE_DOTTED_QUAVER, DQ, DQN, DSN, DSQ, DSQT, EIGHTH_NOTE, EIGHTH_NOTE_TRIPLET, EN, ENT, HALF_NOTE, HALF_NOTE_TRIPLET, HN, HNT, M, MD, MDD, MINIM, MINIM_TRIPLET, MT, Q, QD, QDD, QN, QNT, QT, QUARTER_NOTE, QUARTER_NOTE_TRIPLET, QUAVER, QUAVER_TRIPLET, SB, SEMI_QUAVER, SEMI_QUAVER_TRIPLET, SEMIBREVE, SIXTEENTH_NOTE, SIXTEENTH_NOTE_TRIPLET, SN, SNT, SQ, SQD, SQT, THIRTYSECOND_NOTE, THIRTYSECOND_NOTE_TRIPLET, TN, TNT, TSN, TSNT, WHOLE_NOTE, WN`

    - ### Fields inherited from interface jm.constants.Pitches

      `a0, A0, a1, A1, a2, A2, a3, A3, a4, A4, a5, A5, a6, A6, a7, A7, a8, A8, af0, AF0, af1, AF1, af2, AF2, af3, AF3, af4, AF4, af5, AF5, af6, AF6, af7, AF7, af8, AF8, afn1, AFN1, an1, AN1, as0, AS0, as1, AS1, as2, AS2, as3, AS3, as4, AS4, as5, AS5, as6, AS6, as7, AS7, as8, AS8, asn1, ASN1, b0, B0, b1, B1, b2, B2, b3, B3, b4, B4, b5, B5, b6, B6, b7, B7, b8, B8, bf0, BF0, bf1, BF1, bf2, BF2, bf3, BF3, bf4, BF4, bf5, BF5, bf6, BF6, bf7, BF7, bf8, BF8, bfn1, BFN1, bn1, BN1, bs0, BS0, bs1, BS1, bs2, BS2, bs3, BS3, bs4, BS4, bs5, BS5, bs6, BS6, bs7, BS7, bs8, BS8, bsn1, BSN1, c0, C0, c1, C1, c2, C2, c3, C3, c4, C4, c5, C5, c6, C6, c7, C7, c8, C8, c9, C9, cf0, CF0, cf1, CF1, cf2, CF2, cf3, CF3, cf4, CF4, cf5, CF5, cf6, CF6, cf7, CF7, cf8, CF8, cf9, CF9, cn1, CN1, cs0, CS0, cs1, CS1, cs2, CS2, cs3, CS3, cs4, CS4, cs5, CS5, cs6, CS6, cs7, CS7, cs8, CS8, cs9, CS9, csn1, CSN1, d0, D0, d1, D1, d2, D2, d3, D3, d4, D4, d5, D5, d6, D6, d7, D7, d8, D8, d9, D9, df0, DF0, df1, DF1, df2, DF2, df3, DF3, df4, DF4, df5, DF5, df6, DF6, df7, DF7, df8, DF8, df9, DF9, dfn1, DFN1, dn1, DN1, ds0, DS0, ds1, DS1, ds2, DS2, ds3, DS3, ds4, DS4, ds5, DS5, ds6, DS6, ds7, DS7, ds8, DS8, ds9, DS9, dsn1, DSN1, e0, E0, e1, E1, e2, E2, e3, E3, e4, E4, e5, E5, e6, E6, e7, E7, e8, E8, e9, E9, ef0, EF0, ef1, EF1, ef2, EF2, ef3, EF3, ef4, EF4, ef5, EF5, ef6, EF6, ef7, EF7, ef8, EF8, ef9, EF9, efn1, EFN1, en1, EN1, es0, ES0, es1, ES1, es2, ES2, es3, ES3, es4, ES4, es5, ES5, es6, ES6, es7, ES7, es8, ES8, es9, ES9, esn1, ESN1, f0, F0, f1, F1, f2, F2, f3, F3, f4, F4, f5, F5, f6, F6, f7, F7, f8, F8, f9, F9, ff0, FF0, ff1, FF1, ff2, FF2, ff3, FF3, ff4, FF4, ff5, FF5, ff6, FF6, ff7, FF7, ff8, FF8, ff9, FF9, ffn1, FFN1, fn1, FN1, fs0, FS0, fs1, FS1, fs2, FS2, fs3, FS3, fs4, FS4, fs5, FS5, fs6, FS6, fs7, FS7, fs8, FS8, fs9, FS9, fsn1, FSN1, g0, G0, g1, G1, g2, G2, g3, G3, g4, G4, g5, G5, g6, G6, g7, G7, g8, G8, g9, G9, gf0, GF0, gf1, GF1, gf2, GF2, gf3, GF3, gf4, GF4, gf5, GF5, gf6, GF6, gf7, GF7, gf8, GF8, gf9, GF9, gfn1, GFN1, gn1, GN1, gs0, GS0, gs1, GS1, gs2, GS2, gs3, GS3, gs4, GS4, gs5, GS5, gs6, GS6, gs7, GS7, gs8, GS8, gsn1, GSN1, REST`

    - ### Fields inherited from interface jm.constants.Frequencies

      `FRQ`

    - ### Fields inherited from interface jm.constants.Tunings

      `EQUAL, JUST, MEAN, PYTHAGOREAN`

    - ### Fields inherited from interface jm.constants.Volumes

      `F, FF, FFF, FORTE, FORTISSIMO, MEZZO_FORTE, MEZZO_PIANO, MF, MP, P, PIANISSIMO, PP, PPP, SILENT`

    - ### Fields inherited from interface jm.constants.Panning

      `PAN_CENTER, PAN_CENTRE, PAN_LEFT, PAN_RIGHT`

    - ### Fields inherited from interface jm.constants.ProgramChanges

      `AAH, ABASS, AC_GUITAR, ACCORDION, ACOUSTIC_BASS, ACOUSTIC_GRAND, ACOUSTIC_GUITAR, AGOGO, AHHS, ALTO, ALTO_SAX, ALTO_SAXOPHONE, APPLAUSE, ATMOSPHERE, BAG_PIPES, BAGPIPE, BAGPIPES, BANDNEON, BANJO, BARI, BARI_SAX, BARITONE, BARITONE_SAX, BARITONE_SAXOPHONE, BASS, BASSOON, BELL, BELLS, BIRD, BOTTLE, BOTTLE_BLOW, BOWED_GLASS, BRASS, BREATH, BREATHNOISE, BRIGHT_ACOUSTIC, BRIGHTNESS, CALLOPE, CELESTA, CELESTE, CELLO, CGUITAR, CHARANG, CHIFFER, CHIFFER_LEAD, CHOIR, CHURCH_ORGAN, CLAR, CLARINET, CLAV, CLAVINET, CLEAN_GUITAR, CONCERTINA, CONTRA_BASS, CONTRABASS, CRYSTAL, CYMBAL, DGUITAR, DIST_GUITAR, DISTORTED_GUITAR, DOUBLE_BASS, DROPS, DRUM, DX_EPIANO, EBASS, ECHO, ECHO_DROP, ECHO_DROPS, ECHOS, EL_BASS, EL_GUITAR, ELECTRIC_BASS, ELECTRIC_GRAND, ELECTRIC_GUITAR, ELECTRIC_ORGAN, ELECTRIC_PIANO, ELPIANO, ENGLISH_HORN, EPIANO, EPIANO2, FANTASIA, FBASS, FIDDLE, FINGERED_BASS, FLUTE, FRENCH_HORN, FRET, FRET_NOISE, FRETLESS, FRETLESS_BASS, FRETNOISE, FRETS, GLOCK, GLOCKENSPIEL, GMSAW_WAVE, GMSQUARE_WAVE, GOBLIN, GT_HARMONICS, GUITAR, GUITAR_HARMONICS, GUNSHOT, HALO, HALO_PAD, HAMMOND_ORGAN, HARMONICA, HARMONICS, HARP, HARPSICHORD, HELICOPTER, HONKYTONK, HONKYTONK_PIANO, HORN, ICE_RAIN, ICERAIN, JAZZ_GUITAR, JAZZ_ORGAN, JGUITAR, KALIMBA, KOTO, MARIMBA, METAL_PAD, MGUITAR, MUSIC_BOX, MUTED_GUITAR, MUTED_TRUMPET, NGUITAR, NYLON_GUITAR, OBOE, OCARINA, OGUITAR, OOH, OOHS, ORCHESTRA_HIT, ORGAN, ORGAN2, ORGAN3, OVERDRIVE_GUITAR, PAD, PAN_FLUTE, PANFLUTE, PBASS, PHONE, PIANO, PIANO_ACCORDION, PIC, PICC, PICCOLO, PICKED_BASS, PIPE_ORGAN, PIPES, PITZ, PIZZ, PIZZICATO_STRINGS, POLY_SYNTH, POLYSYNTH, PSTRINGS, RAIN, RECORDER, REED_ORGAN, REVERSE_CYMBAL, RHODES, SAW, SAWTOOTH, SAX, SAXOPHONE, SBASS, SEA, SEASHORE, SFX, SGUITAR, SHAKUHACHI, SHAMISEN, SHANNAI, SITAR, SLAP, SLAP_BASS, SLAP_BASS_1, SLAP_BASS_2, SLOW_STRINGS, SOLO_VOX, SOP, SOPRANO, SOPRANO_SAX, SOPRANO_SAXOPHONE, SOUNDEFFECTS, SOUNDFX, SOUNDTRACK, SPACE_VOICE, SQUARE, STAR_THEME, STEEL_DRUM, STEEL_DRUMS, STEEL_GUITAR, STEELDRUM, STEELDRUMS, STR, STREAM, STRING_ENSEMBLE_1, STRING_ENSEMBLE_2, STRINGS, SWEEP, SWEEP_PAD, SYN_CALLIOPE, SYNTH_BASS, SYNTH_BASS_1, SYNTH_BASS_2, SYNTH_BRASS, SYNTH_BRASS_1, SYNTH_BRASS_2, SYNTH_CALLIOPE, SYNTH_DRUM, SYNTH_DRUMS, SYNTH_STRINGS, SYNTH_STRINGS_1, SYNTH_STRINGS_2, SYNVOX, TAIKO, TELEPHONE, TENOR, TENOR_SAX, TENOR_SAXOPHONE, THUMB_PIANO, THUNDER, TIMP, TIMPANI, TINKLE_BELL, TOM, TOM_TOM, TOM_TOMS, TOMS, TREMOLO, TREMOLO_STRINGS, TROMBONE, TRUMPET, TUBA, TUBULAR_BELL, TUBULAR_BELLS, VIBES, VIBRAPHONE, VIOLA, VIOLIN, VIOLIN_CELLO, VOICE, VOX, WARM_PAD, WHISTLE, WIND, WOODBLOCK, WOODBLOCKS, XYLOPHONE`

    - ### Fields inherited from interface jm.constants.DrumMap

      `ACOUSTIC_BASS_DRUM, ACOUSTIC_SNARE, BASS_DRUM_1, CABASA, CHINESE_CYMBAL, CLAVES, CLOSED_HI_HAT, COWBELL, CRASH_CYMBAL_1, CRASH_CYMBAL_2, ELECTRIC_SNARE, HAND_CLAP, HI_BONGO, HI_MID_TOM, HI_WOOD_BLOCK, HIGH_AGOGO, HIGH_FLOOR_TOM, HIGH_TIMBALE, HIGH_TOM, LONG_GUIRO, LONG_WHISTLE, LOW_AGOGO, LOW_BONGO, LOW_CONGA, LOW_FLOOR_TOM, LOW_MID_TOM, LOW_TIMBALE, LOW_TOM, LOW_WOOD_BLOCK, MARACAS, MUTE_CUICA, MUTE_HI_CONGA, MUTE_TRIANGLE, OPEN_CUICA, OPEN_HI_CONGA, OPEN_HI_HAT, OPEN_TRIANGLE, PEDAL_HI_HAT, RIDE_BELL, RIDE_CYMBAL_1, RIDE_CYMBAL_2, SHORT_GUIRO, SHORT_WHISTLE, SIDE_STICK, SPLASH_CYMBAL, TAMBOURINE, VIBRASLAP`

    - ### Fields inherited from interface jm.constants.Scales

      `AEOLIAN_SCALE, BLUES_SCALE, CHROMATIC_SCALE, DIATONIC_MINOR_SCALE, DORIAN_SCALE, HARMONIC_MINOR_SCALE, INDIAN_SCALE, LYDIAN_SCALE, MAJOR_SCALE, MELODIC_MINOR_SCALE, MINOR_SCALE, MIXOLYDIAN_SCALE, NATURAL_MINOR_SCALE, PENTATONIC_SCALE, TURKISH_SCALE`

    - ### Fields inherited from interface jm.constants.Waveforms

      `COSINE_WAVE, PULSE_WAVE, SABERSAW_WAVE, SAWDOWN_WAVE, SAWTOOTH_WAVE, SINE_WAVE, SQUARE_WAVE, TRIANGLE_WAVE`

    - ### Fields inherited from interface jm.constants.Noises

      `BROWN_NOISE, FRACTAL_NOISE, SMOOTH_NOISE, STEP_NOISE, WHITE_NOISE`

    - ### Fields inherited from interface jm.constants.Alignments

      `AFTER, BEFORE, CENTER_ALIGN, CENTER_ON_END, CENTER_ON_START, CENTRE_ALIGN, CENTRE_ON_END, CENTRE_ON_START, END_ON_CENTER, END_ON_CENTRE, END_TOGETHER, START_ON_CENTER, START_ON_CENTRE, START_TOGETHER`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Play()` Constructor

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static void` | `au(java.lang.String fileName)` Playback an audio file via javaSound.
    `static void` | `au(java.lang.String fileName, boolean autoClose)` Playback an audio file via javaSound.
    `static void` | `audio(Note note, Instrument inst)` Playback a note as real time audio.
    `static void` | `audio(Part part, Instrument[] insts)` Playback a part as real time audio.
    `static void` | `audio(Phrase phrase, Instrument inst)` Playback a phrase as real time audio.
    `static void` | `audio(Phrase phrase, Instrument[] insts)` Playback a phrase as real time audio.
    `static void` | `audio(Score score, Instrument[] insts)` Playback a score as real time audio.
    `static void` | `audioClip(java.lang.String fileName)` Playback an audio file using Java Applet audioclip playback.
    `static void` | `audioFile(java.lang.String fileName)` Playback a specified audio file using JavaSound.
    `static void` | `closeAll()` Close all open resources when finished playing altogether.
    `static boolean` | `cycleIsPlaying()` Used by infinite cycle player threads to check cyclePlaying status.
    `static boolean` | `cycleIsPlaying(int index)` Used by infinite cycle player threads to check cyclePlaying status.
    `static void` | `mid(java.lang.String fileName)` Playback a MIDI file from disk.
    `static void` | `midi(Note n)` Playback the jMusic score JavaSound MIDI
    `static void` | `midi(Note n, boolean exit)` Playback the jMusic score JavaSound MIDI
    `static void` | `midi(Part part)` Playback the jMusic score JavaSound MIDI
    `static void` | `midi(Part p, boolean exit)` Playback the jMusic score JavaSound MIDI
    `static void` | `midi(Phrase phr)` Playback the jMusic score JavaSound MIDI
    `static void` | `midi(Phrase phr, boolean exit)` Playback the jMusic score JavaSound MIDI
    `static void` | `midi(Score score)` Playback the jMusic score JavaSound MIDI using the default value of true for 'exit' - See Play.midi(Score,boolean)
    `static void` | `midi(Score score, boolean exit)` Playback the jMusic score JavaSound MIDI.
    `static void` | `midi(Score score, boolean exit, boolean wait, int synths, int decayAllowance)` Playback the jMusic score JavaSound MIDI.
    `static void` | `midiCycle(Note n)` Repeated playback the jMusic note via the JavaSound MIDI synthesizer
    `static void` | `midiCycle(Note n, int index)` Repeated playback the jMusic note via the JavaSound MIDI synthesizer
    `static void` | `midiCycle(Part part)` Repeated playback the jMusic part via the JavaSound MIDI synthesizer
    `static void` | `midiCycle(Part part, int index)` Repeated playback the jMusic part via the JavaSound MIDI synthesizer
    `static void` | `midiCycle(Phrase phr)` Repeated playback the jMusic phrase via the JavaSound MIDI synthesizer
    `static void` | `midiCycle(Phrase phr, int index)` Repeated playback the jMusic phrase via the JavaSound MIDI synthesizer
    `static void` | `midiCycle(Score score)` Continually repeat playback of a Score object (i.e., loop playback).
    `static void` | `midiCycle(Score score, int index)` Continually repeat playback of a Score object (i.e., loop playback).
    `static void` | `pauseAudio()` Halt real time audio playback.
    `static void` | `stopAudio()` End real time audio playback immediatly.
    `static void` | `stopMidi()` End JavaSound MIDI playback immediatly.
    `static void` | `stopMidi(int index)` End JavaSound MIDI playback immediatly.
    `static void` | `stopMidiCycle()` Halt the infinite midiCycle() at the end of the next cycle.
    `static void` | `stopMidiCycle(int index)` Halt the infinite midiCycle() at the end of the next cycle.
    `static void` | `unPauseAudio()` Restart real time audio playback after being paused.
    `static void` | `updateScore(Score s)` Refresh the default JavaSound MIDI playback with a new score.
    `static void` | `updateScore(Score s, int index)` Refresh the JavaSound MIDI playback with a new score.
    `static void` | `waitCycle(Score score, int decayAllowance)` Thread.sleeps for a period of 1 score play length (i.e.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### Play

          public Play()

      Constructor

  - ### Method Detail

    - #### cycleIsPlaying

          public static boolean cycleIsPlaying()

      Used by infinite cycle player threads to check cyclePlaying status.

    - #### cycleIsPlaying

          public static boolean cycleIsPlaying(int index)

      Used by infinite cycle player threads to check cyclePlaying status.

    - #### waitCycle

          public static void waitCycle(Score score,
                       int decayAllowance)

      Thread.sleeps for a period of 1 score play length (i.e. the time it would take for the specified score to play). Can be used in conjunction with midiCycle() if the score requires a re-compute just before being replayed. (i.e. sleeps for one loop) Should be placed immediately after the Play.midiCycle() command to ensure that the time waited is for the currently playing score, and not subject to any changes made to the score since.
      Parameters:
        `score` - The score used for timing the sleep.

    - #### mid

          public static void mid(java.lang.String fileName)

      Playback a MIDI file from disk.
      Parameters:
        `fileName` - The name of the file to play back.

    - #### midi

          public static void midi(Note n)

      Playback the jMusic score JavaSound MIDI
      Parameters:
        `Note` - The note to be played

    - #### midi

          public static void midi(Phrase phr)

      Playback the jMusic score JavaSound MIDI
      Parameters:
        `phr` - The Phrase to be played

    - #### midi

          public static void midi(Part part)

      Playback the jMusic score JavaSound MIDI
      Parameters:
        `part` - The Part to be played

    - #### midi

          public static void midi(Score score)

      Playback the jMusic score JavaSound MIDI using the default value of true for 'exit' - See Play.midi(Score,boolean)
      Parameters:
        `score` - The score to be played.

    - #### midi

          public static void midi(Note n,
                  boolean exit)

      Playback the jMusic score JavaSound MIDI
      Parameters:
        `n` - The note to be played
        `exit` - Hold program open for the duration of playback, then close ready to exit? true or false.

    - #### midi

          public static void midi(Phrase phr,
                  boolean exit)

      Playback the jMusic score JavaSound MIDI
      Parameters:
        `phr` - The Phrase to be played
        `exit` - Hold program open for the duration of playback, then close ready to exit? true or false.

    - #### midi

          public static void midi(Part p,
                  boolean exit)

      Playback the jMusic score JavaSound MIDI
      Parameters:
        `p` - The Part to be played
        `exit` - Hold program open for the duration of playback, then close ready to exit? true or false.

    - #### midi

          public static void midi(Score score,
                  boolean exit)

      Playback the jMusic score JavaSound MIDI. This method exits the application on completion. To avoid this exit call, pass false as the second argument.
      Parameters:
        `score` - The score to be played.
        `exit` - Hold program open for the duration of playback, then close ready to exit? true or false.

    - #### midi

          public static void midi(Score score,
                  boolean exit,
                  boolean wait,
                  int synths,
                  int decayAllowance)

      Playback the jMusic score JavaSound MIDI. This method can exit the application on completion id the exit argument is true. To avoid this exit call, pass false as the second argument. To have jMusic hold up the program while music plays set wait to true, otherwise if the program has persistence (for example a GUI is open) wait can be set to false.
      Parameters:
        `score` - The score to be played.
        `exit` - Close playback when done? true or false.
        `wait` - Hold program open for the duration of playback? True of false
        `synths` - The number of the MidiSynths to use - default is 1.

    - #### updateScore

          public static void updateScore(Score s)

      Refresh the default JavaSound MIDI playback with a new score. Only works when midiCycle() is operating and updates take effect at the start of the next cycle.
      Parameters:
        `s` - The score to be used as the update.

    - #### updateScore

          public static void updateScore(Score s,
                         int index)

      Refresh the JavaSound MIDI playback with a new score. Only works when midiCycle() is operating and updates take effect at the start of the next cycle.
      Parameters:
        `s` - The score to be used as the update.
        `index` - The id of the MidiSynth to update.

    - #### pauseAudio

          public static void pauseAudio()

      Halt real time audio playback.

    - #### unPauseAudio

          public static void unPauseAudio()

      Restart real time audio playback after being paused.

    - #### stopAudio

          public static void stopAudio()

      End real time audio playback immediatly.

    - #### stopMidi

          public static void stopMidi()

      End JavaSound MIDI playback immediatly. For Play.stopMidi() to be able to take effect you need to add a flag when calling Play.midi to tell it not to create a Thread that holds open the program for the duration of playback - so this assumes you have some other persistent activity in your program (such as a GUI). e.g., Play.midi(myScore, false); later... Play.midiStop(); Call closeAll() after stopping if ready to exit application.

    - #### stopMidi

          public static void stopMidi(int index)

      End JavaSound MIDI playback immediatly. For Play.stopMidi() to be able to take effect you need to add a flag when calling Play.midi to tell it not to create a Thread that holds open the program for the duration of playback - so this assumes you have some other persistent activity in your program (such as a GUI). e.g., Play.midi(myScore, false); later... Play.midiStop(); Call closeAll() after stopping if ready to exit application.
      Parameters:
        `index` - The id of the MidiSynth to stop.

    - #### stopMidiCycle

          public static void stopMidiCycle()

      Halt the infinite midiCycle() at the end of the next cycle. Call closeAll() after stopping if ready to exit application.

    - #### stopMidiCycle

          public static void stopMidiCycle(int index)

      Halt the infinite midiCycle() at the end of the next cycle. Call closeAll() after stopping if ready to exit application.
      Parameters:
        `index` - The midiCycle id to stop

    - #### midiCycle

          public static void midiCycle(Note n)

      Repeated playback the jMusic note via the JavaSound MIDI synthesizer
      Parameters:
        `n` - The note to be played. See midiCycle(Score s)

    - #### midiCycle

          public static void midiCycle(Note n,
                       int index)

      Repeated playback the jMusic note via the JavaSound MIDI synthesizer
      Parameters:
        `n` - The note to be played. See midiCycle(Score s)
        `index` - The midiCycle id to be used - default is 0.

    - #### midiCycle

          public static void midiCycle(Phrase phr)

      Repeated playback the jMusic phrase via the JavaSound MIDI synthesizer
      Parameters:
        `phr` - The Phrase to be played. See midiCycle(Score s)

    - #### midiCycle

          public static void midiCycle(Phrase phr,
                       int index)

      Repeated playback the jMusic phrase via the JavaSound MIDI synthesizer
      Parameters:
        `phr` - The Phrase to be played. See midiCycle(Score s)
        `index` - The midiCycle id to be used - default is 0.

    - #### midiCycle

          public static void midiCycle(Part part)

      Repeated playback the jMusic part via the JavaSound MIDI synthesizer
      Parameters:
        `part` - The Part to be played. See midiCycle(Score s)

    - #### midiCycle

          public static void midiCycle(Part part,
                       int index)

      Repeated playback the jMusic part via the JavaSound MIDI synthesizer
      Parameters:
        `part` - The Part to be played. See midiCycle(Score s)
        `index` - The midiCycle id to be used - default is 0.

    - #### midiCycle

          public static void midiCycle(Score score)

      Continually repeat playback of a Score object (i.e., loop playback).
      Parameters:
        `score` - The score to played back repeatedly.

    - #### midiCycle

          public static void midiCycle(Score score,
                       int index)

      Continually repeat playback of a Score object (i.e., loop playback).
      Parameters:
        `score` - The score to played back repeatedly.

    - #### au

          public static void au(java.lang.String fileName)

      Playback an audio file via javaSound. This method requires the javax.sound packages in Java 1.3 or higher.
      Parameters:
        `fileName` - The name of the file to be played.

    - #### au

          public static void au(java.lang.String fileName,
                boolean autoClose)

      Playback an audio file via javaSound. jMusic currently supports playback of .au, .wav and .aif file formats. This method requires the javax.sound packages in Java 1.3 or higher. By default this method, when complete, will continue the application. Careful that the application does not end, preventing the file from playing. To keep the application open during playback pass 'false' as the autoClose argument.
      Parameters:
        `filename` - The name of the file to be played.
        `autoClose` - A flag for exiting java after the file has played.

    - #### audioFile

          public static void audioFile(java.lang.String fileName)

      Playback a specified audio file using JavaSound. Audio files are presumed tobe in teh same folder as the program source.
      Parameters:
        `fileName` - Name of the audio file to play.

    - #### audio

          public static void audio(Note note,
                   Instrument inst)

      Playback a note as real time audio.
      Parameters:
        `note` - The phrase to be played.
        `inst` - An instrument to play the note with

    - #### audio

          public static void audio(Phrase phrase,
                   Instrument[] insts)

      Playback a phrase as real time audio.
      Parameters:
        `phrase` - The phrase to be played.
        `insts` - An array of instruments to play the phrase with

    - #### audio

          public static void audio(Phrase phrase,
                   Instrument inst)

      Playback a phrase as real time audio.
      Parameters:
        `phrase` - The phrase to be played.
        `inst` - An instrument to play the phrase with

    - #### audio

          public static void audio(Part part,
                   Instrument[] insts)

      Playback a part as real time audio.
      Parameters:
        `part` - The part to be played.
        `insts` - An array of instruments to play the part with

    - #### audio

          public static void audio(Score score,
                   Instrument[] insts)

      Playback a score as real time audio.
      Parameters:
        `score` - The score to be played.
        `insts` - An array of instrument to play the score with

    - #### audioClip

          public static void audioClip(java.lang.String fileName)

      Playback an audio file using Java Applet audioclip playback. A audioClip limitation is that the file must be small enough to fit into RAM. This method is compatibl with Java 1.1 and higher.
      Parameters:
        `fileName` - The name of the file to be played.

    - #### closeAll

          public static void closeAll()

      Close all open resources when finished playing altogether. Call before exiting app.