{
  "format": "forge.graph/0",
  "name": "Four-Stage Phaser",
  "author": "Chirp",
  "license": "CC-BY-4.0",
  "remixed_from": null,
  "description": "Four phaser stages swept together by an LFO and mixed with the dry sound, so two notches glide up and down the spectrum. Resonance feeds the last stage back to the first through a one-sample history.",
  "tags": ["phaser", "modulation"],
  "face": {
    "display": { "kind": "trace", "label": "Sweep", "source": "lfo:sine", "range": [-1, 1] },
    "knobs": [
      { "id": "rate", "label": "Rate", "default": 0.35,
        "controls": [ { "target": "lfo.rate", "from": 0.05, "to": 5, "curve": "exp" } ] },
      { "id": "depth", "label": "Depth", "default": 0.8,
        "controls": [ { "target": "mods.s1", "from": 0, "to": 600 }, { "target": "mods.s2", "from": 0, "to": 600 },
                      { "target": "mods.s3", "from": 0, "to": 600 }, { "target": "mods.s4", "from": 0, "to": 600 } ] },
      { "id": "resonance", "label": "Reso", "default": 0.4,
        "controls": [ { "target": "regen.amount", "from": 0, "to": 0.7 } ] },
      { "id": "mix", "label": "Mix", "default": 0.5,
        "controls": [ { "target": "mixer.mix", "from": 0, "to": 1 } ] }
    ]
  },
  "nodes": {
    "lfo": { "block": "lfo", "mono": true },
    "back": { "block": "history", "in": { "x": "regen" } },
    "s1": { "block": "phaser_stage", "set": { "freq": 700 }, "in": { "x": ["in", "back"] } },
    "s2": { "block": "phaser_stage", "set": { "freq": 700 }, "in": { "x": "s1" } },
    "s3": { "block": "phaser_stage", "set": { "freq": 700 }, "in": { "x": "s2" } },
    "s4": { "block": "phaser_stage", "set": { "freq": 700 }, "in": { "x": "s3" } },
    "regen": { "block": "gain", "in": { "x": "s4" } },
    "mixer": { "block": "blend", "in": { "dry": "in", "wet": "s4" } },
    "level": { "block": "gain", "set": { "amount": 0.75 }, "in": { "x": "mixer" } }
  },
  "mods": {
    "s1": { "from": "lfo:sine", "target": "s1.freq", "amount": 0 },
    "s2": { "from": "lfo:sine", "target": "s2.freq", "amount": 0 },
    "s3": { "from": "lfo:sine", "target": "s3.freq", "amount": 0 },
    "s4": { "from": "lfo:sine", "target": "s4.freq", "amount": 0 }
  },
  "out": "level"
}
