Overview | Package | Class | Tree | Deprecated | Index | Help
| Copyright 2012-04-26 Werner Randelshofer
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.monte.media.eightsvx
Class JDK13LongAudioClip

    java.lang.Object
      org.monte.media.eightsvx.JDK13LongAudioClip

All Implemented Interfaces:
  java.applet.AudioClip, java.lang.Runnable, LoopableAudioClip

    public class JDK13LongAudioClip

extends java.lang.Object
implements LoopableAudioClip, java.lang.Runnable

JDK13AudioClip.

Version:
  1.0 April 21, 2003 Created.
Author:
  Werner Randelshofer, Hausmatt 10, CH-6405 Immensee, Switzerland

Field Summary

Fields inherited from interface org.monte.media.eightsvx.LoopableAudioClip
`LOOP_CONTINUOUSLY`

Constructor Summary
`JDK13LongAudioClip(byte[] samples, int sampleRate, int volume, float pan)` Creates a new instance.

Method Summary
`long` | `getMicrosecondLength()` Obtains the media duration in microseconds
`long` | `getMicrosecondPosition()` Obtains the current position in the audio data, in microseconds.
`void` | `loop()` Starts playing this audio clip in a loop.
`void` | `loop(int count)` Starts looping playback from the current position.
`void` | `play()` Starts playing this audio clip.
`void` | `run()` When an object implementing interface `Runnable` is used to create a thread, starting the thread causes the object's `run` method to be called in that separately executing thread.
`void` | `setFramePosition(int param)` Sets the media position in sample frames.
`void` | `setLoopPoints(int start, int end)` Sets the first and last sample frames that will be played in the loop.
`void` | `start()` Starts the audio clip.
`void` | `stop()` Stops playing this audio clip.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### JDK13LongAudioClip

    public JDK13LongAudioClip(byte[] samples,
                              int sampleRate,
                              int volume,
                              float pan)

  Creates a new instance.

  Parameters:
    `samples` - Array of signed linear 8-bit encoded audio samples.
    `sampleRate` - sampleRate of the audio samples.
    `volume` - The volume setting controls the loudness of the sound. range 0 (mute) to 64 (maximal volume).
    `pan` - The relative pan of a stereo signal between two stereo speakers. The valid range of values is -1.0 (left channel only) to 1.0 (right channel only). The default is 0.0 (centered).

Method Detail

### loop

    public void loop()

  Starts playing this audio clip in a loop.

  Specified by:
    `loop` in interface `java.applet.AudioClip`

### loop

    public void loop(int count)

  Starts looping playback from the current position. Playback will continue to the loop's end point, then loop back to the loop start point `count` times, and finally continue playback to the end of the clip.

  If the current position when this method is invoked is greater than the loop end point, playback simply continues to the end of the clip without looping.

  A `count` value of 0 indicates that any current looping should cease and playback should continue to the end of the clip. The behavior is undefined when this method is invoked with any other value during a loop operation.

  If playback is stopped during looping, the current loop status is cleared; the behavior of subsequent loop and start requests is not affected by an interrupted loop operation.

  Specified by:
    `loop` in interface `LoopableAudioClip`
  Parameters:
    `count` - the number of times playback should loop back from the loop's end position to the loop's start position, or ``LoopableAudioClip.LOOP_CONTINUOUSLY`` to indicate that looping should continue until interrupted

### play

    public void play()

  Starts playing this audio clip. Each time this method is called, the clip is restarted from the beginning.

  Specified by:
    `play` in interface `java.applet.AudioClip`

### start

    public void start()

  Starts the audio clip.

### stop

    public void stop()

  Stops playing this audio clip.

  Specified by:
    `stop` in interface `java.applet.AudioClip`

### setFramePosition

    public void setFramePosition(int param)

  Sets the media position in sample frames. The position is zero-based; the first frame is frame number zero. When the clip begins playing the next time, it will start by playing the frame at this position.

  To obtain the current position in sample frames, use the ``getFramePosition`` method of `DataLine`.

  Parameters:
    `param` - the desired new media position, expressed in sample frames

### getMicrosecondLength

    public long getMicrosecondLength()

  Obtains the media duration in microseconds

  Returns:
    the media duration, expressed in microseconds, or `AudioSystem.NOT_SPECIFIED` if the line is not open.
  See Also:
    `AudioSystem.NOT_SPECIFIED`

### getMicrosecondPosition

    public long getMicrosecondPosition()

  Obtains the current position in the audio data, in microseconds. The microsecond position measures the time corresponding to the number of sample frames captured by, or rendered from, the line since it was opened. The level of precision is not guaranteed. For example, an implementation might calculate the microsecond position from the current frame position and the audio sample frame rate. The precision in microseconds would then be limited to the number of microseconds per sample frame.

  Returns:
    the number of microseconds of data processed since the line was opened

### setLoopPoints

    public void setLoopPoints(int start,
                              int end)

  Sets the first and last sample frames that will be played in the loop. The ending point must be greater than or equal to the starting point, and both must fall within the the size of the loaded media. A value of 0 for the starting point means the beginning of the loaded media. Similarly, a value of -1 for the ending point indicates the last frame of the media.

  Parameters:
    `start` - the loop's starting position, in sample frames (zero-based)
    `end` - the loop's ending position, in sample frames (zero-based), or -1 to indicate the final frame
  Throws:
    `java.lang.IllegalArgumentException` - if the requested loop points cannot be set, usually because one or both falls outside the media's duration or because the ending point is before the starting point

### run

    public void run()

  When an object implementing interface `Runnable` is used to create a thread, starting the thread causes the object's `run` method to be called in that separately executing thread.

  The general contract of the method `run` is that it may take any action whatsoever.

  Specified by:
    `run` in interface `java.lang.Runnable`
  See Also:
    `Thread.run()`

Overview | Package | Class | Tree | Deprecated | Index | Help
| Copyright 2012-04-26 Werner Randelshofer
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD