Liking cljdoc? Tell your friends :D

cljs-audio

CircleCI

Convenient Web Audio for ClojureScript

Rationale

It's tough to manage a complex audio graph with Web Audio API due to its imperative style. This library aims to provide a declarative wrapper around it, akin to some popular libraries providing wrappers around imperative DOM manipulations. The core of the library tries to be as minimal as possible and isolated from Web Audio intricacies. Hopefully, other backends would be possible in the future.

Principles

  • Declarative over imperative.
  • Convenience over purity.
  • Explicitness.
  • Unambiguity.

Code Example

;; Top-level audio environment
[
  ;; nodes and patches
  {:vca [:gain {}]}  ;; single gain node named :vca
  ;; connections
  #{[:>   :vca]      ;; input to :vca
    [:vca :>]        ;; :vca to output
  }
]

Can you improve this documentation?Edit on GitHub

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close