Live Performance Hands-Fee/Eyes-Off-The-App Looping
Greetings Jack,<br />Up front, just let me say that GTL is a great concept for a new looper app... <br />Thanks much for your efforts!<br /><br />MY BACKGROUND:<br />I'm a retired engineer and have been a musician/guitar player for almost 50 yrs. I've been looping since I got my original Lexicon Jam Man in 1995 (still have it; still works great). I'm hoping GTL will become my new go-to "Hands-Free/Eyes-Free" Performance Looper. As a long time musician, I have a few insights into this type of capability that I'm hoping you will consider adding to your GTL. <br /><br />WHY CONSIDER THIS SUGGESTION:<br />As you know, there are many many other iOS apps that do looping... NONE of which I have found satisfy simple live practice/performance "Hands-Free" and "Eyes-Off the App" looping situations. I think there are quite a few people (More Customers?) whom, like me, would love an iOS app that can handle those needs as-good-or-better-than the best dedicated Hardware Foot Pedal Loopers can. I believe GTL could distinguish itself as that type of unique app. You have done all the "hard stuff", I think all you need to add are a few more MIDI/Control message Functions!<br /><br />THE GOAL:<br />Minimize the number of MIDI Control foot switches needed to effectively control GTL looping functionality in a live practice/performance "Hands-Free" and "Eyes-Off the App" situation.<br /><br />THE SUMMARY:<br />Given the Control Functions you have already defined/implemented, I think you would need to implement additional functionality driven by about 5 new types of Control messages.<br /><br />THE DETAILS:<br />I thought I would save you the effort, and use my personal experiences (and preferences) to define a set of additional GTL Controls and Functionality details that would satisfy the intended goal. So here are my suggested additions to the GTL MIDI/Control FUNCTIONS that would give it a...<br /><br />SIMPLE HANDS-FREE/EYES-OFF-THE-APP LIVE PERFORMANCE CAPABILITY:<br />//////<br />{GLOBAL: GROUP SELECT WITH AUTO-RECORD/PLAY}<br />1a. Perform Cueing* (* = or "Instantly-Selecting" if Cueing is OFF) any defined Group via a corresponding Control message. One message per defined Group.<br /><br />1b. When a Cued/Selected Group becomes active, automatically begin recording in its 1st Loop if the Group currently has no recorded loops, otherwise play the Group. Also, automatically mute the previously "Selected Group" if it was not the Master Group.<br /><br />1c. The newly activated Group becomes the currently "Selected Group", and by default, it's 1st Loop ALWAYS becomes the currently "Selected Loop".<br /><br />1d. If a new Control message is received before a currently Cued Group becomes active, abort the in-progress Cueing, and process the new Control message.<br /><br />{IN SELECTED GROUP: NEXT LOOP WITH LIMIT, PREVIOUS LOOP WITH LIMIT}<br />2. In the currently active Group, perform Select Next or Previous Loop WITHIN the Group (with NO roll-over/wrap-around), via two corresponding Control messages.<br />NOTE: Initially make Group-(Index_1) and its Loop-1 the DEFAULT "Selected" Group & Loop from a Control message initial conditions point-of-view.<br />IMPORTANT: The "NO roll-over/wrap-around" always ensures hands-free deterministic selection of a selected Group's 1st (or 4th) Loop with just 3-quick-taps of a single foot switch, without needing to look at GTL's display screen.<br /><br />{IN SELECTED LOOP: RECORD/OVERDUB, MUTE/UNMUTE, CLEAR/UNDO}<br />3. For whatever Loop is currently Selected, perform a Cued(*) or Instantaneous Record/Overdub, Mute/UnMute or Clear/Undo of the Loop, via three corresponding Control messages. <br />[Note: I think you already have most of this already implemented... Cool!]<br /><br />{GLOBAL: FADE WITH MUTE}<br />4a. Initiate a "Fade" process on any/all audio that GTL is playing (starting at the current audio play output level), via a corresponding Fade Control message. If the previously received Control message was NOT a Fade Control message, the initial duration of the fade process is set to a statically configurable Fade Settings value of: "Long" seconds. <br /><br />4b. If two consecutive Fade Control messages are received, a new "Fade" process is initiated (starting at the current partially faded audio play output level) with the duration set to a statically configurable Fade Settings value of: "Medium" seconds.<br /><br />4c. If three consecutive Fade Control messages are received, a new "Fade" process is initiated (starting at the current partially faded audio play output level) with the duration set to a statically configurable Fade Settings value of: "Short" seconds.<br /><br />4c. If four consecutive Fade Control messages are received, the current "Fade" process is aborted, and an immediate "Mute" is performed on the GTL audio play output level.<br /><br />4d. If a "Fade" process has been initiated, but not completed/aborted, and a Control message other then a "Fade" is received, then the current "Fade" process is aborted, and the GTL audio play output level is immediately set to the highest level it was at prior to the initiation of the previous, and potentially consecutive, "Fade" process(es).<br /><br />{GLOBAL: RESET GROUPS THEN MASTER}<br />5a. Perform a Reset (i.e., Clear all Loops) to all defined Groups except the Master Loop, via a corresponding Control message.<br />NOTE: Make Group-(Index_1) and its Loop-1 the DEFAULT "Selected" Group & Loop from a Control message initial conditions point-of-view.<br /><br />5b. If two consecutive Reset Control messages are received, perform a Reset (i.e., Clear all Loops) to the Master Group.<br />//////<br /><br />DISCLAIMER:<br />I can't guarantee I didn't miss something in the above, so it's possible it may need a tweak or two. If you are interested, please don't hesitate to email any questions to me at: iggster@msn.com<br />//////<br /><br />Hopefully... your extra efforts to implement this will be compensated by having those additional Customers that have been looking for that GREAT "HANDS-FREE/EYES-OFF-THE-APP" iOS LOOPER!<br /><br />With Best Regards,<br />-Duke<br />( iggster@msn.com )<br />
Comments