JSPM

crossfade

1.0.0
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 6
  • Score
    100M100P100Q29789F
  • License MIT

Simple cross fader between two AudioNodes for WebAudio.

Package Exports

  • crossfade

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (crossfade) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

crossfade

Simple cross fader between two AudioNodes for WebAudio.

Usage

  • Example usage
npm install crossfader
var crossfader = require('crossfader');
var c = crossfader(context, node1, node2);
c.connect(context.destination);

document.getElementById('slider').addEventListener('input', function(){
    c.fade.value = parseFloat(this.value);
});

API

Constructor

eg : var c = crossfader(context, node1, node2);

  • context: AudioContext - The AudioContext within which the AudioNodes have been created.
  • node1 : AudioNode - Any AudioNode within the AudioContext. Will be assigned to the negative value of the fade property.
  • node2 : AudioNode - Any AudioNode within the AudioContext. Will be assigned to the negative value of the fade property.

Methods

  • connect : Connect the crossfade Node to other AudioNodes. eg :

    c.connect(context.destination);
    • arguments :
      • destination : AudioNode - The AudioNode to connect the output of the crossfader to.
  • disconnect : Disconnect the crossfade Node from other AudioNodes. eg :

    c.disconnect();

Properties

  • fade: AudioParam - A value in the range [-1,1] that defines how much to cross fade between node1 and node2.

    eg:

    c.fade.value = 0.5; //Cross fade position with equal volume from both AudioNodes
    c.fade.linearRampToValueAtTime(1, context.currentTime + 5); // Automation

    fade property is an AudioParam and supports all AudioParam automation methods.

    • A fade value of -1 implies 100% volume on node1, and 0% volume on node2, while a fade value of 1 implies 0% volume on node1, and 100% volume on node2.

    • The mapping between the value of fade and the volume follows the equal power curve.

Credits

Thanks to tambien for the his idea of using a generator + shaper to create a-rate, first class, custom AudioParams (like fade in this case).

License

MIT

See License file