Class IntJreOut

java.lang.Object
eu.bandm.sig.adlib2.lib.IntJreOut
All Implemented Interfaces:
AutoCloseable
Direct Known Subclasses:
IntJreOut_sgnPCM_16bit_BigEndian

public abstract class IntJreOut extends Object implements AutoCloseable
Output driver from the single-signal-pull sig world into the block-push java runtime system. (based on /sig/sub/organ/src/main/java/eu/bandm/sig/organ/Player.java and /sig/src/eu/bandm/sig/adlib/DataLineSink.java
  • Field Details

    • channels

      protected final int channels
    • bytesPerFrame

      protected final int bytesPerFrame
      "Frames" used in this class exclusively for "sample times channels".
    • bufferSize

      protected final int bufferSize
    • cooked

      protected final int[][] cooked
    • raw

      protected final byte[] raw
  • Constructor Details

    • IntJreOut

      protected IntJreOut(int minLatency, int maxLatency, int threadPriority, IntBufferedProducer sources)
      Only constructor. The subclasses of this class realize different output formats. The instances are subsequently open(javax.sound.sampled.SourceDataLine, int)ed with an argument of type SourceDataLine which realizes the (multi channel) "physical" output, and one particular sampling rate. The combination of all these format parameters must be checked in advance for feasibility---the negotiation and planning level is not contained in this code, because it can imply very different heuristics, interactions, configuration mechanisms, etc.
      Parameters:
      minLatency - in samples
      maxLatency - in samples
      sources - will be assigned to the output channels in this particular sequential order. (The encoding bytes of the single samples of multiple output channels simply follow each other in the written output block. Remarkably, this is totally undocumented in the Jre API doc.)
  • Method Details