Interface PAPlayable

All Known Subinterfaces:
PASamplerPlayable
All Known Implementing Classes:
PASamplerInstrument, PASamplerInstrumentPool, PASamplerInstrumentPoolMulti

public interface PAPlayable
Generic interface for anything that can be "played." Provides a minimal playback API plus backward-compatible overloads for sampler instruments and other PAPlayable classes. Used for Sampler audio synthesis engine.
  • Method Summary

    Modifier and Type
    Method
    Description
    default int
    Simple play call using default amplitude, pitch, and pan.
    default int
    play(float amplitude)
    Play with amplitude only.
    default int
    play(float amplitude, float pitch)
    Play with amplitude and pitch.
    int
    play(float amplitude, float pitch, float pan)
    Minimal play signature for generic playables.
    default int
    play(float amplitude, float pitch, float pan, boolean unused)
    Play with amplitude, pitch, and pan.
    default int
    play(float amplitude, ADSRParams env, float pitch, float pan)
    Optional interface for playables that support envelopes.
    void
    Stop playback immediately (implementation-defined).
  • Method Details

    • play

      int play(float amplitude, float pitch, float pan)
      Minimal play signature for generic playables. Implementations may ignore parameters they don't need.
      Parameters:
      amplitude - gain multiplier (0..1+)
      pitch - playback rate or pitch factor (implementation-defined)
      pan - stereo pan (-1 left .. +1 right)
      Returns:
      non-zero if a voice/event was triggered
    • stop

      void stop()
      Stop playback immediately (implementation-defined).
    • play

      default int play()
      Simple play call using default amplitude, pitch, and pan.
      Returns:
      non-zero if a voice/event was triggered
    • play

      default int play(float amplitude)
      Play with amplitude only.
      Parameters:
      amplitude - gain multiplier
      Returns:
      non-zero if a voice/event was triggered
    • play

      default int play(float amplitude, float pitch)
      Play with amplitude and pitch.
      Parameters:
      amplitude - gain multiplier
      pitch - playback rate or pitch factor
      Returns:
      non-zero if a voice/event was triggered
    • play

      default int play(float amplitude, float pitch, float pan, boolean unused)
      Play with amplitude, pitch, and pan.
      Parameters:
      amplitude - gain multiplier
      pitch - playback rate or pitch factor
      pan - stereo pan
      unused - legacy compatibility parameter
      Returns:
      non-zero if a voice/event was triggered
    • play

      default int play(float amplitude, ADSRParams env, float pitch, float pan)
      Optional interface for playables that support envelopes. Implementations that don't use ADSR can ignore this overload.
      Parameters:
      amplitude - gain multiplier
      env - optional ADSR envelope
      pitch - playback rate or pitch factor
      pan - stereo pan
      Returns:
      non-zero if a voice/event was triggered