def createKeyboardGraph():
    fg = filtergraph.FilterGraph(recordTimings=True)

    led_out = devices.LEDOutput()
    fg.addEffectNode(led_out)

    PKeyboard = generative.MidiKeyboard()
    fg.addEffectNode(PKeyboard)

    fg.addConnection(PKeyboard, 0, led_out, 0)
    return fg
def createKeyboardSpringGraph():
    fg = filtergraph.FilterGraph(recordTimings=True)

    led_out = devices.LEDOutput()
    fg.addEffectNode(led_out)

    PKeyboard = generative.MidiKeyboard()
    fg.addEffectNode(PKeyboard)

    color_wheel = colors.ColorWheel()
    fg.addEffectNode(color_wheel)

    springs = effects.SpringCombine()
    fg.addEffectNode(springs)

    fg.addConnection(PKeyboard, 0, springs, 0)
    fg.addConnection(springs, 0, led_out, 0)
    fg.addConnection(color_wheel, 0, springs, 1)
    fg.addConnection(color_wheel, 0, springs, 2)
    fg.addConnection(color_wheel, 0, springs, 3)
    return fg