Loopy Pro: Create music, your way.

What is Loopy Pro?Loopy Pro is a powerful, flexible, and intuitive live looper, sampler, clip launcher and DAW for iPhone and iPad. At its core, it allows you to record and layer sounds in real-time to create complex musical arrangements. But it doesn’t stop there—Loopy Pro offers advanced tools to customize your workflow, build dynamic performance setups, and create a seamless connection between instruments, effects, and external gear.

Use it for live looping, sequencing, arranging, mixing, and much more. Whether you're a live performer, a producer, or just experimenting with sound, Loopy Pro helps you take control of your creative process.

Download on the App Store

Loopy Pro is your all-in-one musical toolkit. Try it for free today.

Is there an AUV3 compatible app that will let me add chords by name and play midi out

2»

Comments

  • wimwim
    edited June 2022

    @Jorge said:
    Here's a video that demonstrates the very basics of the idea:

    Are you aware of ABC Notation? It's a well established and documented standard for text based music notation. I wonder if you could use a subset of that for this purpose rather than inventing your own? A real-time ABC Notation visualizer and player would probably be a popular app.

    There are a ton of free interpreters, and I think some of them are open source. I've played around the Craic on iOS and a few desktop apps meant mainly for staff notation, but also with playback.

  • @wim said:

    @Jorge said:
    Here's a video that demonstrates the very basics of the idea:

    Are you aware of ABC Notation? It's a well established and documented standard for text based music notation. I wonder if you could use a subset of that for this purpose rather than inventing your own? A real-time ABC Notation visualizer and player would probably be a popular app.

    There are a ton of free interpreters, and I think some of them are open source. I've played around the Craic on iOS and a few desktop apps meant mainly for staff notation, but also with playback.

    I haven't looked at existing interpreters ( I looked at your links now ), I like the idea of creating a new language with complete freedom. The focus would be on creating your own MIDI tracks quickly with minimal typing.

  • edited June 2022

    I've worked a bit more on the prototype to experiment with this idea.
    Each line is now a track connected to a different AUv3 instrument.
    When you move the cursor from one line to another the piano roll updates to the corresponding track.
    The bottom half is a simple text editor where you can type, copy, paste etc.:
    The text gets parsed and syntax colored as you type so you see and hear changes immediately. The piano roll also updates as you type.
    For example, if you paste or type the following text:

    [C D C E Cs F Cs G Cs A Cb D5 C E5 C F5 Cb G5 Cb A5][CMB5G5][DmG5C6 Am][FME5G5]

    [C5M D5m Bo FM][CDEF5G]

    You get the following result:

    I think next step will be to add 7th, 9th and 13th and also a way of voicing the chords.
    I'm also thinking of adding notation like II V VI etc and having a way of changing the current key.
    At the moment this is a MacOS prototype but very easy to convert to iPadOS.

    Some ideas that I'm considering:

    1) An 'm' at the beginning of a line would mute the whole track, for example 'm[CM][Gm][Dm]'

    2) An 'm' as the end of a bar after the ']' would mute that bar only, for example: '[C][D]m[E]' would mute only the second bar.

    3) A whole track could be transposed by starting with u, for example: u1[C D E F][] would transpose the track up by 1 semitone, 'u1o' would transpose up by 1 octave, 'd2o' would transpose down by 2 octaves etc. The same could be done at the end of a bar to affect only that bar.

  • @Jorge said:
    I've worked a bit more on the prototype to experiment with this idea.
    Each line is now a track connected to a different AUv3 instrument.
    When you move the cursor from one line to another the piano roll updates to the corresponding track.
    The bottom half is a simple text editor where you can type, copy, paste etc.:
    The text gets parsed and syntax colored as you type so you see and hear changes immediately. The piano roll also updates as you type.
    For example, if you paste or type the following text:

    [C D C E Cs F Cs G Cs A Cb D5 C E5 C F5 Cb G5 Cb A5][CMB5G5][DmG5C6 Am][FME5G5]

    [C5M D5m Bo FM][CDEF5G]

    You get the following result:

    I think next step will be to add 7th, 9th and 13th and also a way of voicing the chords.
    I'm also thinking of adding notation like II V VI etc and having a way of changing the current key.
    At the moment this is a MacOS prototype but very easy to convert to iPadOS.

    Some ideas that I'm considering:

    1) An 'm' at the beginning of a line would mute the whole track, for example 'm[CM][Gm][Dm]'

    2) An 'm' as the end of a bar after the ']' would mute that bar only, for example: '[C][D]m[E]' would mute only the second bar.

    3) A whole track could be transposed by starting with u, for example: u1[C D E F][] would transpose the track up by 1 semitone, 'u1o' would transpose up by 1 octave, 'd2o' would transpose down by 2 octaves etc. The same could be done at the end of a bar to affect only that bar.

    Looks very interesting! Have you thought of a syntax to handle per-note velocity and multi-bar (or beat) rests?

  • edited June 2022

    @MisplacedDevelopment said:

    @Jorge said:
    I've worked a bit more on the prototype to experiment with this idea.
    Each line is now a track connected to a different AUv3 instrument.
    When you move the cursor from one line to another the piano roll updates to the corresponding track.
    The bottom half is a simple text editor where you can type, copy, paste etc.:
    The text gets parsed and syntax colored as you type so you see and hear changes immediately. The piano roll also updates as you type.
    For example, if you paste or type the following text:

    [C D C E Cs F Cs G Cs A Cb D5 C E5 C F5 Cb G5 Cb A5][CMB5G5][DmG5C6 Am][FME5G5]

    [C5M D5m Bo FM][CDEF5G]

    You get the following result:

    I think next step will be to add 7th, 9th and 13th and also a way of voicing the chords.
    I'm also thinking of adding notation like II V VI etc and having a way of changing the current key.
    At the moment this is a MacOS prototype but very easy to convert to iPadOS.

    Some ideas that I'm considering:

    1) An 'm' at the beginning of a line would mute the whole track, for example 'm[CM][Gm][Dm]'

    2) An 'm' as the end of a bar after the ']' would mute that bar only, for example: '[C][D]m[E]' would mute only the second bar.

    3) A whole track could be transposed by starting with u, for example: u1[C D E F][] would transpose the track up by 1 semitone, 'u1o' would transpose up by 1 octave, 'd2o' would transpose down by 2 octaves etc. The same could be done at the end of a bar to affect only that bar.

    Looks very interesting! Have you thought of a syntax to handle per-note velocity and multi-bar (or beat) rests?

    I have but nothing is set in stone, here's how you do velocity and rests by typing [Cv50 D E F][C F] :

    There are 3 spaces between the C and F in the second bar.

    This is very initial and the language syntax will probably take time to settle, suggestions are welcome.

  • Here's the next iteration after today's improvements:

    And with sound:

  • McDMcD
    edited June 2022

    @Jorge I like your interest in exposing a programable AUv3 tool for musicians.

    Historically Streambyter and the MIDIfire apps were like an assembly language take on this idea. Most of the data types were Hex midi byte codes. Overtime more user friendly ideas were added.

    Then @brambos created a Basic like approach and Streambyter went free.

    A DSL (Domain Specific Language) is the right next step. I hope you add this into your excellent promgrmmers DAW “Visual Swift” along with the TX and RV AUv3 modules.

    Mozaic avoids character based data types like C am F G7 so offering text based import in these standard formats would get a lot of use… but you won’t get huge sales so bundling into your DAW helps get something from the effort. A free player and a creators app might work. The player as AUv3 and the creator just coded in a Swift GUI. I hope to see a lot of competition for this idea to get something for every type of user.

  • edited June 2022

    Scaler 2 does what you’re asking. Tonality let’s you define your own chords, and then trigger with the controller, but would still require something like Atom/LK/Helium/Xequence/Midi Tape Rec to sequence/loop the chord progression. Not sure if it’s been mentioned, but Suggester comes to mind as well.

  • edited June 2022

    deleted, wrong topic..... :-(

  • @McD said:
    @Jorge I like your interest in exposing a programable AUv3 tool for musicians.

    Historically Streambyter and the MIDIfire apps were like an assembly language take on this idea. Most of the data types were Hex midi byte codes. Overtime more user friendly ideas were added.

    Then @brambos created a Basic like approach and Streambyter went free.

    A DSL (Domain Specific Language) is the right next step. I hope you add this into your excellent promgrmmers DAW “Visual Swift” along with the TX and RV AUv3 modules.

    Mozaic avoids character based data types like C am F G7 so offering text based import in these standard formats would get a lot of use… but you won’t get huge sales so bundling into your DAW helps get something from the effort. A free player and a creators app might work. The player as AUv3 and the creator just coded in a Swift GUI. I hope to see a lot of competition for this idea to get something for every type of user.

    Thanks for your interesting brief history of the AUv3 MIDI music making scripting languages.
    I didn't look into it.

    My intention is to bundle this with VisualSwift like the current host-to-host audio TX/RX plugins, the only issue is that I want to be able to evolve the language's grammar over time and it would be complicated to manage backward compatibility so it might need to settle a bit first.

  • @Jorge said:
    Thanks for your interesting brief history of the AUv3 MIDI music making scripting languages.
    I didn't look into it.

    I hope you can see your spot in history…

    My intention is to bundle this with VisualSwift like the current host-to-host audio TX/RX plugins, the only issue is that I want to be able to evolve the language's grammar over time and it would be complicated to manage backward compatibility so it might need to settle a bit first.

    Please share versions and label them as experimental so people understand that newer versions might not run older scripts and that the older version plugin needs to be used. That way you can get feedback along the way
    And we can get something to play with… and more people will see extra value in the application/DAW.

  • Evolved a little more, now as a component inside VisualSwift:

  • @Jorge said:
    Evolved a little more, now as a component inside VisualSwift:

    You have made some great progress with this Jorge. I can see this having multiple uses, one of which may be a quick way of orchestrating the triggering of other apps. Is is possible to insert rest beats/bars between [ note ] sections?

    Being able to build a song from a smaller modular set of 'phrases' that could be referred to by label and repeated would also be useful, silly example:

    Window A contains notes for VERSE
    Window B contains notes for CHORUS
    Window C is labelled VERSE_CHORUS, defined as something like:
    VERSE CHORUS
    Window D is SONG, which contains:
    INTRO (VERSE_CHORUS)x2 BRIDGE etc

    Even within a window, it would save typing to be able to repeat a group of phrases, e.g.
    ( [ A, C ] [ C, E ] )x2
    Not really sure whether labelling inline within a window would work, such as:
    ( [ A, C ] [ C, E ] )phr1 [ A, E] phr1 [ E, G ]
    Feels like these 'phrases' would be better defined elsewhere, either in separate windows as discussed above, or from a 'palette' within the same window.

    Also, unless you are doing this for the fun of it then do consider including a tip jar or some other way of rewarding you as you have done a lot of good work with this and the recent send/receive plugins that I think people would want to see you rewarded for.

  • @MisplacedDevelopment said:

    @Jorge said:
    Evolved a little more, now as a component inside VisualSwift:

    You have made some great progress with this Jorge. I can see this having multiple uses, one of which may be a quick way of orchestrating the triggering of other apps. Is is possible to insert rest beats/bars between [ note ] sections?

    Being able to build a song from a smaller modular set of 'phrases' that could be referred to by label and repeated would also be useful, silly example:

    Window A contains notes for VERSE
    Window B contains notes for CHORUS
    Window C is labelled VERSE_CHORUS, defined as something like:
    VERSE CHORUS
    Window D is SONG, which contains:
    INTRO (VERSE_CHORUS)x2 BRIDGE etc

    Even within a window, it would save typing to be able to repeat a group of phrases, e.g.
    ( [ A, C ] [ C, E ] )x2
    Not really sure whether labelling inline within a window would work, such as:
    ( [ A, C ] [ C, E ] )phr1 [ A, E] phr1 [ E, G ]
    Feels like these 'phrases' would be better defined elsewhere, either in separate windows as discussed above, or from a 'palette' within the same window.

    Also, unless you are doing this for the fun of it then do consider including a tip jar or some other way of rewarding you as you have done a lot of good work with this and the recent send/receive plugins that I think people would want to see you rewarded for.

    Thanks, some of your suggestions are exactly what I have in mind which is a very good sign. For example using round brackets to create groups of bars that can be repeated and named.

    I'm thinking of creating different types of Track components, one would be a FloatTrack where you could type parameter values like:
    [.5,.7][.2,.3,.2,.3] etc.:
    These float events would flow out of the component and could control for example instrument and effect parameters.

    Could be good to have one dedicated for drums too where a different letter would be used for each drum sound. Maybe also with a way to assign each alphabet letter to a MIDI note number.

    Another track component would be like what you suggest, a higher level for triggering the current TrackDSL component, a TriggerTrack. It would have several outputs for triggering each of the tracks and another very simple DSL language to program it. In this case it might actually be better to have a graphical interface rather than a DSL language, or have both.

    The point of VisualSwift is to split complexity into smaller units but one disadvantage here is that you lose the ability of simply copying and pasting a full song with multiple tracks from one place, might be a small price to pay.

    Other ideas that come to mind:
    KCm[I,II,VI,V7]KGm[II,VI] -> set Cm as default key and play a progression in that key, then change key to Gm and play two chords in that key
    Cm7d24 -> play Cm7 chord with 2nd and 4th notes from the top dropped 1 octave.

    I am doing this for fun ( it wouldn't go well otherwise ) but my dream is to create a source of income for the future while doing something that I enjoy. Having some purchases in the App Store would be great motivation even if it represents almost nothing financially. Better than that would be to get feedback, to tell others, to get the beginning of a VisualSwift community started even if with just a couple of people, this could be in the VisualSwift forum, Slack, YouTube etc. I think that's what would motivate me the most.

Sign In or Register to comment.