1.1.0 • Published 8 years ago

triolet.client v1.1.0

Weekly downloads
4
License
MIT
Repository
github
Last release
8 years ago

triolet.client

NPM Version License

DRIVER and API in the main thread; DSP in the worker thread. This architecture works on the browser.

triolet.client

Installation

$ npm install triolet.client

Example

in the main thread

const triolet = require("triolet.client/client")();
const Driver = require("pico.driver.webaudio");
const API = require("./api");

let audioContext = new AudioContext();

triolet.compose({ workerPath: "/path/to/worker", api: new API(), driver: new Driver() });
triolet.setup({ context: audioContext, bufferLength: 1024 });

triolet.start();

in the worker thread

const triolet = require("triolet.client/worker")(self);
const DSP = require("./dsp");

triolet.compose({ dsp: new DSP() });

API

client/Triolet

  • constructor()

Instance attributes

  • api: TrioletAPI
  • driver: TrioletDriver
  • sampleRate: number (implicit readonly)
  • bufferLength: number (implicit readonly)
  • state: string (implicit readonly)

Instance methods

  • compose(spec: object): self
  • setup(opts: object): self
  • start(): self
  • stop(): self
  • sendToDSP(data: any): void

worker/Triolet

  • constructor(self: DedicatedWorkerGlobalScope)

Instance attributes

  • dsp: TrioletDSP
  • sampleRate: number (implicit readonly)
  • bufferLength: number (implicit readonly)
  • state: string (implicit readonly)

Instance methods

  • compose(spec: object): self
  • setup(opts: object): self
  • start(): self
  • stop(): self
  • sendToAPI(data: any): void

Interfaces

interface TrioletAPI {
  optional setup(opts: object) => void;
  optional start() => void;
  optional stop() => void;
  process(inNumSamples: number) => void;
}
interface TrioletDSP {
  optional setup(opts: object) => void;
  optional start() => void;
  optional stop() => void;
  process(bufL: Float32Array, bufR: Float32Array) => void;
}

Audio Drivers

License

MIT

1.1.0

8 years ago

1.0.0

8 years ago

0.8.0

8 years ago

0.7.3

8 years ago

0.7.0

8 years ago

0.6.0

8 years ago

0.5.0

8 years ago

0.4.0

8 years ago