flowlang-cc/elm-audio-graph/1.0.0

NOTE: the latest version is 1.0.1

Renamed to flow-lang/elm-audio-graph. That is where the repository lives now. It has not been published as a package under the new name.

Versions published as flowlang-cc/elm-audio-graph still install under that name. 1 version of 2 come from the new location (see their notes).

Rerouted (renamed, verified). The GitHub user or repository was renamed. The tag is still there, at the new name. The Lamdera package server serves a copy recovered from https://github.com/flow-lang/elm-audio-graph.

What we checked: The repo moved to github.com/flow-lang/elm-audio-graph. Rebuilt with git archive from commit e754d93d951b of https://github.com/flow-lang/elm-audio-graph (zip prefix flowlang-cc-elm-audio-graph-c15fd28/, America/Los_Angeles times): the zip is byte-identical to the one package.elm-lang.org recorded, SHA-1 91ad7d84d6b006463368396bfd6d62e1cfc0d914.

The Lamdera compiler uses this copy and prints a one-line notice saying so. elm itself fails to download this version.

Details · package.elm-lang.org's zip: https://github.com/flowlang-cc/elm-audio-graph/zipball/1.0.0/

AudioGraph.Units

The value of an AudioParam or NodeProperty is highly context relevant. Something that is expecting frequency in hertz may produce very unexpected output if it receives a decibal value, even though they both represent Floats. To encode this context the Value union type defines all the possible contexts for primative types to exist in.

type Value
= Attribute Bool
| Buffer (List Float)
| Coefficients (List Float)
| Cents Float
| Decibels Float
| DistanceModelType DistanceModel
| FilterType Filter
| FFT_Size Int
| Hertz Float
| MIDI_Note Int
| MIDI_CC Int
| OversampleType Oversample
| PanningModelType PanningModel
| WaveformType Waveform
| WaveshaperCurve (List Float)
| Number Float

Union Types

Some values, such as WaveformType are better expressed as their own union type, rather than arbitrary string values.

= Linear
| Inverse
| Exponential
type Filter
= Lowpass
| Highpass
| Bandpass
| Lowshelf
| Highshelf
| Peaking
| Notch
| Allpass
= None
| TwoX
| FourX
= EqualPower
| HRTF
= Sine
| Triangle
| Sawtooth
| Square