class Session: Scene = Rgb.GREEN SceneTriggered = Blink(Rgb.GREEN, Rgb.BLACK, 24) NoScene = Rgb.BLACK ClipStopped = Rgb.AMBER ClipStarted = Pulse(Rgb.GREEN.shade(1), Rgb.GREEN, 48) ClipRecording = Pulse(Rgb.BLACK, Rgb.RED, 48) ClipTriggeredPlay = Blink(Rgb.GREEN, Rgb.BLACK, 24) ClipTriggeredRecord = Blink(Rgb.RED, Rgb.BLACK, 24) ClipEmpty = Rgb.BLACK RecordButton = Rgb.BLACK
class Session: Scene = Rgb.GREEN SceneTriggered = FallbackColor(Blink(Rgb.GREEN, Rgb.BLACK, 24), 24) NoScene = Rgb.BLACK ClipStopped = Rgb.AMBER ClipTriggeredRecord = Blink(Rgb.RED, Rgb.BLACK, 24) ClipEmpty = Rgb.BLACK EmptySlotTriggeredPlay = Blink(Rgb.GREEN, Rgb.BLACK, 24) RecordButton = Rgb.RED_SHADE StopClip = Rgb.RED StopClipTriggered = Blink(Rgb.RED, Rgb.BLACK, 24) StoppedClip = Rgb.DARK_GREY
class Session: Scene = Rgb.GREEN SceneTriggered = FallbackColor(Blink(Rgb.GREEN, Rgb.BLACK, 24), 24) NoScene = Rgb.BLACK ClipStopped = Rgb.AMBER ClipStarted = Pulse(Rgb.GREEN_SHADE, Rgb.GREEN, 48) ClipRecording = Pulse(Rgb.BLACK, Rgb.RED, 48) ClipTriggeredPlay = Blink(Rgb.GREEN, Rgb.BLACK, 24) ClipTriggeredRecord = Blink(Rgb.RED, Rgb.BLACK, 24) ClipEmpty = Rgb.BLACK RecordButton = Rgb.RED_SHADE StopClip = Rgb.RED StopClipTriggered = Blink(Rgb.RED, Rgb.BLACK, 24) StoppedClip = Rgb.DARK_GREY
class Recording: On = RECORDING_COLOR Off = Rgb.WHITE Transition = Blink(RECORDING_COLOR, Rgb.BLACK, 48) ArrangementRecordingOn = Pulse(RECORDING_COLOR, Rgb.BLACK, 48) FixedLengthRecordingOn = Rgb.WHITE FixedLengthRecordingOff = Rgb.DARK_GREY
class Basic: HALF = FallbackColor(Rgb.DARK_GREY, HALFLIT_WHITE_MIDI) OFF = FallbackColor(Rgb.BLACK, 0) ON = FallbackColor(Rgb.WHITE, 127) FULL_BLINK_SLOW = Blink(FallbackColor(Rgb.WHITE, 127), FallbackColor(Rgb.BLACK, 0), 24) FULL_PULSE_SLOW = Pulse(FallbackColor(Rgb.DARK_GREY, HALFLIT_WHITE_MIDI), FallbackColor(Rgb.WHITE, 127), 48) FAST_PULSE = Pulse(FallbackColor(Rgb.DARK_GREY, HALFLIT_WHITE_MIDI), FallbackColor(Rgb.WHITE, 127), 24) TRANSPARENT = TransparentColor()
def _feedback_value(self, track, slot_or_clip): clip_color = self._color_value(slot_or_clip) if slot_or_clip.is_triggered and not slot_or_clip.will_record_on_start: if isinstance(slot_or_clip, Live.Clip.Clip): return Blink(color1=CLIP_PLAYING_COLOR, color2=IndexedColor(clip_color), speed=TRIGGERED_CLIP_BLINK_SPEED) return 'Session.EmptySlotTriggeredPlay' if slot_or_clip.is_playing: animate_to_color = RECORDING_COLOR if slot_or_clip.is_recording else IndexedColor(clip_color) return Pulse(color1=IndexedColor.from_push_index(clip_color, 2), color2=animate_to_color, speed=PLAYING_CLIP_PULSE_SPEED) return super(ClipSlotComponent, self)._feedback_value(track, slot_or_clip)
def make_blinking_track_color(track, blink_to_color): return Blink(blink_to_color, IndexedColor.from_live_index(track.color_index), 24)
def make_blinking_track_color(track, blink_to_color): return Blink(blink_to_color, IndexedColor(translate_color_index(track.color_index)), 24)