Feature Requests

Stable MIDI Binding to Clips & Widgets (ID-Based, Not Index-Based)
Problem Currently, MIDI controls appear to be bound to clips or widgets by their index/name (e.g. Clip 15, Slider 7). This works only as long as the page structure remains unchanged. As soon as a clip or widget is added, removed, or reordered, indices shift and all existing MIDI bindings break or point to the wrong targets. Impact • MIDI mappings frequently become unreliable after minor layout edits • Requires rebuilding MIDI bindings from scratch • Discourages iterative page design and live set refinement • High risk of failure in performance contexts This has happened to me repeatedly and costs significant setup time. Proposed Solution Bind MIDI controls to a persistent internal ID for each clip or widget, rather than a positional index or name. Once a MIDI control is assigned to a specific clip or widget: • The binding should remain intact regardless of page reordering • Moving the target on the page should not affect MIDI behavior • Only explicit deletion of the target should invalidate the binding Why This Matters Loopy Pro strongly encourages experimentation and modular page design. Stable, object-based MIDI bindings would: • Make complex setups far more robust • Enable confident page iteration • Greatly improve reliability for live performance use Summary Please hard-bind MIDI controls to the actual clip/widget they are assigned to, not to their current index or label. This would eliminate a major source of broken mappings and improve workflow stability.
3
·
chatgpt-proof-read-done
Dedicated "Set Lists" Access in Main Menu (Optional Floating Button)
Description: Add a dedicated way to open "Set Lists" directly from the main UI, without having to navigate deeper through the browser hierarchy. This should be optimized for quick, reliable access during performance. Problem: Accessing set lists can currently require multiple taps and context switches, which is slow and error-prone on stage (especially on smaller screens or when moving quickly between songs). Set lists are a performance-critical feature, and burying them behind additional navigation increases the chance of mistakes and interrupts flow. Proposed Solution: Provide one (or more) of the following UI options: 1) Main menu entry Add a direct "Set Lists" entry in the main menu, alongside the existing top-level destinations, so it is always one tap away. 2) Dedicated button under the folder (browser) icon Under the current main menu folder icon, add a distinct "Set Lists" button that opens the set list view immediately. 3) Optional floating "Set Lists" button (best for performance) Add a preference: "Show Set Lists Button". When enabled, display a floating button that opens the set list view instantly. Allow positioning anywhere on the canvas (drag to place), so left- and right-handed users can optimize access. Allow toggling visibility (on/off) in preferences to keep the UI clean when not needed. Benefits: Faster navigation between songs/projects in live scenarios. Reduced tap count and cognitive load under performance pressure. Better accessibility and ergonomics (especially with a movable/floating option). Encourages set list usage for larger libraries (dozens/hundreds of songs). Examples: Live set with 60+ songs: Tap the floating "Set Lists" button -> tap next song -> load immediately. One-handed operation: Place the floating button near the dominant-hand area for consistent, muscle-memory access. Clean studio layout: Disable the floating button and rely on the main menu entry when needed. This summary was automatically generated by GPT-5.1 Thinking on 2025-12-09 . Original Post: Dedicated Set List Menu Option 1: Have a direct link to 'set lists' in the main menu Option 2 (Better): Have a separate button under the current main menu folder icon just for setlist Option 3: A floating 'set list' menu button (that you can turn on and off in preferences) that you can position anywhere on the screen, so left or right handed people have options.
2
·
chatgpt-proof-read-done
·
under review
Action to Dynamically Replace Text in Text Widgets
Description: Add an action that can directly replace the text content of a text widget on the canvas. A button (or other trigger) should be able to target a specific text box and set its text to a defined value, or potentially to a dynamically generated string. This enables text widgets to act as live information displays for controller profiles, signal chains, lyrics, notes and other performance-related messages. Problem: Currently, text widgets are mostly static labels. There is no simple way to: Press a button and have a text box update to show a different message. Use text widgets as dynamic status displays (e.g. current MIDI controller profile, which signal chain is active, which section of a set is playing). Integrate text changes with follow actions or other logic to step through lyrics, chord prompts, or performance notes. As a result: MIDI controller users cannot easily see which “mode/profile” they’re in from a big on-screen label. Live performers can’t quickly show large, clear messages on screen for themselves or the audience (“Chill Part”, “Solo Coming Up”, “Next Song: …”) triggered by buttons. Designers who create on-screen control layouts for midimapping can’t annotate or update these layouts with changing text states. Any kind of pseudo-teleprompter, chord progression steps, or random notes requires awkward workarounds instead of a straightforward text-replace action. This limits the potential of text widgets as flexible, performance-relevant UI elements. Proposed Solution: Introduce a “Replace Text in Text Box” action with clear targeting and configuration: Core action behavior: - Action: “Change / Replace Text” - Parameters: - Target: select a specific text widget. - New Text: user-specified content (literal string or dynamic expression in the future). - When the action is triggered, the target text widget’s content is immediately replaced with the specified text. Trigger sources: - Canvas buttons (on press). - MIDI controller inputs. - Follow actions (e.g. step through a sequence of messages). - Other Loopy actions/macros. Dynamic usage examples and extensions: - Use with dials and other widgets while a broader “dynamic text” system is still evolving: - For example, a button that updates a text box to show which control profile is active. - Support performance communication: - Show large text on screen indicating which signal chain is currently in use. - Display notes to the audience on an external screen (“Next piece”, “Short break”, etc.). - Integration with follow actions: - Cycle through chords, lyrics fragments, or other notations by chaining text-replace actions. - Build a “scrolling” or stepwise teleprompter-style system. Future-friendly design: - The same mechanism could later be expanded to accept variables or bindings (e.g. insert current tempo, section name, loop name). - Could integrate with a more advanced “dynamic text” concept, but this basic replace-text action is a powerful step on its own. Benefits: Dynamic information display: Turn text widgets into live status indicators for MIDI profiles, routing states, scenes, and more. Better feedback for controller users: MIDI controller setups can have clear on-screen labels showing which layout or profile is currently active. Performance messaging: Easy way to push big, legible messages to the screen for performer or audience, especially when Loopy is on a large display. Lightweight building block: A simple, generic action that unlocks many creative uses (teleprompter, chord prompts, random notes) without requiring complex new UI. Examples: A MIDI controller profile display: - Several buttons select different MIDI controller modes (e.g. “Drums”, “FX”, “Loop Control”). - Each button triggers a “Replace Text” action targeting a central text box: - “Current Profile: DRUMS” - “Current Profile: FX” - “Current Profile: LOOPS” Signal chain indicator: - Different buttons activate different signal chains or scenes. - The same button press updates a big text widget to show: - “Chain A: Clean Ambient” - “Chain B: Heavy FX” - “Chain C: Vocals + Delay” Lyrics / chords / notes: - A series of follow actions steps through a list of text replacements: - Each trigger replaces the text box content with the next lyric line or chord. - On the big screen, this becomes a simple scrolling notes system for the performer or audience. This summary was automatically generated by GPT-5.1 Thinking on 2025-11-20 .
3
·
chatgpt-proof-read-done
·
under review
Piano Roll MIDI Editor Enhancements (editing tools, CC/MPE lanes, navigation & grid)
Description: Upgrade the Piano Roll with pro-grade editing tools , navigation , and controller lanes : multi-clip/ghost editing, scale & drum maps, separate position vs. length quantize , CC/Per-Note lanes (MPE/MIDI 2.0), line/curve tools, fold/filter views, and performance-safe playback with chase. Problem: Complex MIDI editing currently takes too many steps: limited CC tooling, no per-note expression lanes, slow navigation on dense clips, and workarounds for drum maps, scale constraints, or ghost references. This slows arrangement, harms live reliability, and obscures key information (articulations, keyswitches, pedal splits). Proposed Solution: Navigation & Selection - Zoom to selection/loop ; Focus Playhead ; magnetic scroll; marquee + smart lasso. - Time Selection that spans tracks/clips for batch ops (copy/move/delete/ripple). - “Solo edit” focus per track/clip; Ghost Notes from other clips/tracks (dimmed, color-tagged). Grid, Snap & Quantize - Independent Position Quantize and Length Quantize ; Relative Snap; triplet/dotted sets; cycle-of-clip grid. - Scale overlays; bar emphasis; late-press guard for record and edit commits. Note Editing Tools - Draw/erase/paint; Split at Grid / Join / Glue ; Legato (min gap); Humanize (pos/vel/len). - Strum/Flam creator (direction, spread, curve). - Transform : transpose (±semitones/oct), scale-constrain (block or move to nearest), invert, retrograde, stretch (time). - Mute/Solo notes , color by channel/pitch/part. Drum & Scale Workflows - Drum Editor mode : per-row names (GM/custom), lane mutes/solos, fixed-length paint, velocity bars. - Fold to used notes, to Scale , or to Drum Map . User libraries for scales & maps. CC / Pedal / Automation Lanes - Multiple lanes for CC/AT/PB/NRPN/RPN with Line/Curve/Step/Freehand tools, smoothing & throttle . - Pedal-aware ops: Bake Sustain (CC64) → Note Lengths , Split at Pedal Lifts , repedal window, half-pedal curves (ties into Sostenuto/Soft). - Ramp shapes library; anchor points with bezier; copy/paste between lanes. Per-Note Expression (MPE / MIDI 2.0) - Per-Note PB/AT/CC lanes grouped by note; filter by selected notes; channel/zone aware. - MIDI 2.0 ready: high-resolution controllers, per-note profiles, 14-bit compatibility. Articulations & Keyswitches - Keyswitch lane with labels, latch/hold modes, and relocation tools; articulation mapping presets. Playback, Chase & Safety - Chase notes/CC when starting mid-clip; preview on edit; click-safe commit of drastic edits. - Loop-safe playback; drift meter for clocked rigs; undo groups for compound actions. Multi-Clip Editing - Edit several clips at once (layered or tabbed); per-clip color, quick target switch; Apply to all/selected toggles. Actions & Variables - Actions: Quantize (pos/len) , Legato , Humanize , Split/Join , Strum , Scale Constrain , Bake/Unbake Sustain , Add CC Lane , Draw Ramp (line/curve) , Toggle Ghost , Fold (Used/Scale/Map) , Transpose ± , Nudge ±ticks , Stretch Time , Mute/Solo Notes , Set Drum Map/Scale . - Vars: edit.grid , edit.snapMode , edit.scale.root/type , edit.foldMode , cc.lane[n].type , mpe.enabled , selection.count , quantize.pos/len , chase.enabled . Benefits: Faster, clearer MIDI editing with fewer workarounds and stronger musical intent. Deep control over controllers and per-note expression for modern instruments. Reliable drum and scale workflows; better readability on dense arrangements. Safer live revisions with chase, guard rails, and undo-grouped edits. Examples: Tighten a piano take: Bake Sustain to Lengths , Quantize Position 1/16 (50%) , Quantize Length 1/8 , then Humanize velocity ±6. Program drums: enable Drum Map , Fold to Used , paint fixed 1/16 hats, line-draw an open→closed CC4 curve, then strum tom rolls. MPE lead: edit per-note pitch curves for only the selected notes; clamp global PB to ±2 while keeping per-note at ±48. Orchestral keyswitches: use the Keyswitch lane to retime articulations to bar lines; lock them during further quantize passes. This summary was automatically generated by GPT-5.1 Thinking on 2025-11-24.
2
·
chatgpt-proof-read-done
·
under review
Support for Multi-Output AUv3 Plugins
Description: Enable Loopy Pro to access and route individual outputs from multi-output AUv3 plugins. This would allow users to handle complex signal routing within Loopy itself, without needing to rely on external hosts like AUM. Problem: Currently, Loopy Pro does not expose the individual outputs of multi-output AUv3 plugins. As a result, users cannot route separate channels (e.g., drum parts or stems) to different buses, apply individual effects, or send them to discrete hardware outputs. This makes advanced mixing setups cumbersome and forces users to rely on external apps. Proposed Solution: – Detect and expose multiple output channels from AUv3 plugins – Allow routing of each AUv3 output to a different Loopy Pro bus or track – Enable per-output effect chains (e.g., reverb on snare, delay on hi-hats) – Permit discrete outputs to be routed to specific physical outputs on an audio interface – Maintain compatibility with AUv3 instruments like Digistix, Hammerhead, FAC Drumkit, Loopy AU (backing tracks), etc. – Provide clear UI to manage output-channel mapping within Loopy Pro’s mixer or plugin settings Benefits: ✅ Gives users full control over plugin output routing inside Loopy Pro ✅ Eliminates the need to use AUM or other routing apps for multi-output AUv3s ✅ Supports pro-level mixing setups with buses, FX, and separate audio interface outputs ✅ Makes Loopy Pro a more complete AUv3 host, especially for beatmakers and live performers ✅ Enhances flexibility for handling multi-part instruments and complex backing tracks This summary was automatically generated by ChatGPT-4 on April 30, 2025.
9
·
chatgpt-proof-read-done
·
planned
Support Multi-Output AUv3 Effects (Route Each Output Bus Independently)
Description: Enable routing of AUv3 effects that expose multiple output buses (e.g. 4 outputs) so each output can be sent to different inputs/tracks for separate processing and mixing. Problem: Some AUv3 effects provide multiple discrete outputs (for example, separate taps, layers, or processing paths). Currently, these multi-output effects behave like single-output units, so their additional outputs cannot be routed independently. This prevents common workflows like splitting an effect's individual outputs to different tracks for separate EQ/comp/reverb, parallel chains, or distinct mixes. Proposed Solution: 1) Expose AUv3 output buses as routable nodes When an AUv3 effect reports multiple output buses, display each bus as a selectable output source (e.g. "Out 1", "Out 2", "Out 3", "Out 4"). Allow routing each bus to different inputs/tracks/mixers. 2) Add an output-bus selector per route (minimal UI option) In the routing UI, add a field like "Output Bus" for AUv3 effects. Default to the main/mixed output for compatibility, with manual selection for additional buses. 3) Clear channel/bus mapping and monitoring Show how each bus maps to channels (mono/stereo) to avoid confusion. Provide a safe fallback (downmix or "main out only") if a project is opened on a system where the AUv3 reports a different bus configuration. 4) Optional: per-bus level meters Lightweight metering for each exposed bus to confirm signal is present and routed correctly. Benefits: Unlocks advanced multi-chain workflows on iOS/iPadOS with AUv3 effects that are designed for multi-output operation. Enables separate processing per output (EQ/comp/reverb), parallel routing, and cleaner mixes. Makes complex performance setups more reliable and predictable (no hidden downmixing). Examples: Use Bram Bos Scatterbrain with its 4 outputs: - Route "Out 1" -> Track A (dry-ish) -> compressor - Route "Out 2" -> Track B -> shimmer reverb - Route "Out 3" -> Track C -> band-pass + delay - Route "Out 4" -> Track D -> distortion + limiter Sound design: Send different effect outputs to separate loopers/tracks to record and layer each output independently. Live mixing: Keep one output as the main mix, while routing another output to a dedicated track for sidechain or audience FX send. This summary was automatically generated by GPT-5.1 Thinking on 2025-12-09 . Original Post: Trying to use bram Bos Scatterbrain with its 4 ouputs in Loopy Pro but it seems that is not yet possible? Would be my main feature request to be able the route multiple outs from an fx to multiple inputs for seperate processing.
1
·
chatgpt-proof-read-done
·
under review
Upcoming LP macOS Version: Automatically Select USB Audio Interface
Description: Allow the macOS version of Loopy Pro to automatically select a USB audio interface when connected, with the ability to override the current interface and prevent unwanted channels (e.g., internal microphones) from being used. Problem: Currently, users must manually select the audio interface in Loopy Pro, which can be cumbersome when connecting and switching between multiple devices. Additionally, there is no easy way to prevent certain channels (such as internal microphones) from being selected, leading to potential issues during live performances or recordings. Proposed Solution: Automatically detect and select the connected USB audio interface upon launch or when a new device is plugged in Provide an option for users to specify which interface(s) should override the current one and automatically select them Allow users to blacklist specific audio channels (e.g., internal microphones) from ever being used, ensuring that only the desired inputs are selected Include a manual override option for users who want to select the interface or channel manually at any time Ensure seamless integration with macOS’s audio system and other compatible DAWs or applications Benefits: Simplifies the process of selecting the correct audio interface for users, particularly in live performance or multi-device setups Prevents accidental use of unwanted channels, such as internal microphones or system sounds Enhances workflow speed and reliability by automating device selection Improves the user experience for macOS users who rely on external USB audio interfaces This summary was automatically generated by ChatGPT-4 on April 30, 2025.
3
·
chatgpt-proof-read-done
·
under review
Channel Strip Presets – Save and Recall Full Channel Plugin Configurations
Description: Enable saving and recalling entire channel strips (including all plugins and optionally widgets) as presets. This allows fast loading of complex FX/instrument chains across different projects. Problem: Rebuilding plugin chains and settings for each project or channel type (input, color, bus, master) is time-consuming, especially in live setups or when consistent tone is needed across songs. Proposed Solution: – Add a feature to save a full channel (strip) as a reusable preset – Optionally include bound widgets and layout elements – Allow importing/exporting channel strip presets – Add "recall channel preset" and "save channel preset" actions – Allow presets for: – input channels – color channels – bus channels – master channel – Optional: grey out unloaded channels to free up RAM/CPU – Optional: preload (but inactive) channel strips for fast switching – Optional: include full widget configuration (position, behavior, etc.) – Add tags or labels to organize channel strip types (e.g. “Guitar FX”, “Vocal Bus”) Benefits: – Save time during project setup – Allows modular, reusable channel configurations – Supports consistent tone in live and studio workflows – Ideal for musicians switching instruments/effects between songs – Reduces CPU/memory load by offloading unused channels – Encourages structured and repeatable setups This summary was automatically generated by ChatGPT-4 on April 30, 2025.
12
·
chatgpt-proof-read-done
·
planned
Load More