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.

VIVIDSHAPER by Lars Forsberg | Walkthrough, Review, Demo & Giveaway (See PInned YT Comment!)

VIVIDSHAPER by Lars Forsberg | Walkthrough, Review, Demo & Giveaway (See PInned YT Comment!)

Giveaway details for 5 free copies of ANY Lars Forsberg app are in the pinned YT comment. This video is a walkthrough tutorial and review of VividShaper by Lars Forsberg. Unlike popular wavetable synths like Massive, Europa, Serum etc, the wavetables in this can be programmed and altered using the Lua programming language, a language that seems very accessible even to people with zero experience of coding. The app also comes with some really nice presets, and hopefully a patch storage will be started where people can share presets. See the pinned YouTube comment for more details, giveaway info, appstore links etc.

Likes, comments, and watching an ad or two all really help out the channel. Cheers! Gav

«1

Comments

  • @Gavinski said:
    VIVIDSHAPER by Lars Forsberg | Walkthrough, Review, Demo & Giveaway (See PInned YT Comment!)

    Giveaway details for 5 free copies of ANY Lars Forsberg app are in the pinned YT comment. This video is a walkthrough tutorial and review of VividShaper by Lars Forsberg. Unlike popular wavetable synths like Massive, Europa, Serum etc, the wavetables in this can be programmed and altered using the Lua programming language, a language that seems very accessible even to people with zero experience of coding. The app also comes with some really nice presets, and hopefully a patch storage will be started where people can share presets. See the pinned YouTube comment for more details, giveaway info, appstore links etc.

    Likes, comments, and watching an ad or two all really help out the channel. Cheers! Gav

    A very good job explaining as a self-professed not "in to code" person :smiley:
    It strikes me as really useful for education given that the presets show the code. I really think this is brilliant, and most coding pathways begin with hacking at other people's numbers and having lightbulb moments about what the changes end up doing.
    (Obviously) it won't be for everyone. Cue the incoming comments confirming said obvious.

  • @Bruques said:

    @Gavinski said:
    VIVIDSHAPER by Lars Forsberg | Walkthrough, Review, Demo & Giveaway (See PInned YT Comment!)

    Giveaway details for 5 free copies of ANY Lars Forsberg app are in the pinned YT comment. This video is a walkthrough tutorial and review of VividShaper by Lars Forsberg. Unlike popular wavetable synths like Massive, Europa, Serum etc, the wavetables in this can be programmed and altered using the Lua programming language, a language that seems very accessible even to people with zero experience of coding. The app also comes with some really nice presets, and hopefully a patch storage will be started where people can share presets. See the pinned YouTube comment for more details, giveaway info, appstore links etc.

    Likes, comments, and watching an ad or two all really help out the channel. Cheers! Gav

    A very good job explaining as a self-professed not "in to code" person :smiley:
    It strikes me as really useful for education given that the presets show the code. I really think this is brilliant, and most coding pathways begin with hacking at other people's numbers and having lightbulb moments about what the changes end up doing.
    (Obviously) it won't be for everyone. Cue the incoming comments confirming said obvious.

    Thanks! Glad you appreciate it... Yeah I think it is useful coming from a non coder in a way because ppl really into this stuff often have problems dumbing the explanations down

  • McDMcD
    edited July 2023

    @Gavinski said:
    VIVIDSHAPER by Lars Forsberg | Walkthrough, Review, Demo & Giveaway (See PInned YT Comment!)

    That really helped explain the merits of the app. Just using presets, not even looking at the code, I configured 2 instances, added 2 MIDI generators and put the output through FAC Alteza for extra ambience:

    It’s a useful synth and I expect a lot of creativity in store as people hack on the programming interface to make intriquing sounds.

  • @Gavinski I jumped around in your video so I'm not sure you fixed it but I saw you got some issues with the input keyboard: set it to floating when editing Lua, it's the only mode where the keyboard does not get in the way :) It get's a bit small 😬 , I use a pen so for me that's okay.

  • Sounds very clean and nice. I like the "Random Walk" preset; it reminds of BitWiz. I wonder if it would be possible to translate a preset from BitWiz. If VividShaper could randomly-generate presets, that would be the coolest thing ever.

  • @Pxlhg said:
    @Gavinski I jumped around in your video so I'm not sure you fixed it but I saw you got some issues with the input keyboard: set it to floating when editing Lua, it's the only mode where the keyboard does not get in the way :) It get's a bit small 😬 , I use a pen so for me that's okay.

    Later in the video the external keyboard started working, not sure what the issue was

  • @Skyblazer said:
    Sounds very clean and nice. I like the "Random Walk" preset; it reminds of BitWiz. I wonder if it would be possible to translate a preset from BitWiz. If VividShaper could randomly-generate presets, that would be the coolest thing ever.

    Yeah I did suggest to the dev he could add a randomise button maybe? Not sure how easy it would be, let's see what he says!

  • @McD said:

    @Gavinski said:
    VIVIDSHAPER by Lars Forsberg | Walkthrough, Review, Demo & Giveaway (See PInned YT Comment!)

    That really helped explain the merits of the app. Just using presets, not even looking at the code, I configured 2 instances, added 2 MIDI generators and put the output through FAC Alteza for extra ambience:

    It’s a useful synth and I expect a lot of creativity in store as people hack on the programming interface to make intriquing sounds.

    Yeah you'll be in your element with this I reckon!

  • An interesting idea... and something I will never use because of the text interface. But I can see how this might appeal to someone with a real coding background.

  • @Gavinski said:

    @Pxlhg said:
    @Gavinski I jumped around in your video so I'm not sure you fixed it but I saw you got some issues with the input keyboard: set it to floating when editing Lua, it's the only mode where the keyboard does not get in the way :) It get's a bit small 😬 , I use a pen so for me that's okay.

    Later in the video the external keyboard started working, not sure what the issue was

    It still will cover what you write when it pops up from the bottom, full size. It's very annoying and something Apple should have fixed many versions ago.😳😊

  • Yeah, I could not function on ipad generally without an external keyboard, the keyboard, text selection, especially in links etc, all pretty much suck on iOS. Android deals with this stuff better imo

    @Pxlhg said:

    @Gavinski said:

    @Pxlhg said:
    @Gavinski I jumped around in your video so I'm not sure you fixed it but I saw you got some issues with the input keyboard: set it to floating when editing Lua, it's the only mode where the keyboard does not get in the way :) It get's a bit small 😬 , I use a pen so for me that's okay.

    Later in the video the external keyboard started working, not sure what the issue was

    It still will cover what you write when it pops up from the bottom, full size. It's very annoying and something Apple should have fixed many versions ago.😳😊

    @Pxlhg said:

    @Gavinski said:

    @Pxlhg said:
    @Gavinski I jumped around in your video so I'm not sure you fixed it but I saw you got some issues with the input keyboard: set it to floating when editing Lua, it's the only mode where the keyboard does not get in the way :) It get's a bit small 😬 , I use a pen so for me that's okay.

    Later in the video the external keyboard started working, not sure what the issue was

    It still will cover what you write when it pops up from the bottom, full size. It's very annoying and something Apple should have fixed many versions ag

  • Just to mention that I finally got enough time to add timestamps to the vid

    Also - dev says he will improve the preset menu and expose the parameters in a coming update 🔥

  • @Gavinski said:
    Just to mention that I finally got enough time to add timestamps to the vid

    Also - dev says he will improve the preset menu and expose the parameters in a coming update 🔥

    How many presets come with the synth?

  • @HotStrange said:

    @Gavinski said:
    Just to mention that I finally got enough time to add timestamps to the vid

    Also - dev says he will improve the preset menu and expose the parameters in a coming update 🔥

    How many presets come with the synth?

    Not in front of my ipad, offhand, I'm thinking maybe 30? So, relatively few. As he said he will add proper import and export features, I can imagine ppl will be into sharing patches for this on patchstorage. Currently there is zero option for that. As I said in my vid, I just don't understand how few devs are clued up about the importance of a truly comprehensive preset manager.

  • VividShaper Winners:

    Threads: DoLifeDifferently
    Insta: wrrng (Andrea)
    Twitter: Said Van Hattum
    YouTube: oside nick / jack cimino

    🔥 🔥 🔥

  • @Gavinski said:

    @HotStrange said:

    @Gavinski said:
    Just to mention that I finally got enough time to add timestamps to the vid

    Also - dev says he will improve the preset menu and expose the parameters in a coming update 🔥

    How many presets come with the synth?

    Not in front of my ipad, offhand, I'm thinking maybe 30? So, relatively few. As he said he will add proper import and export features, I can imagine ppl will be into sharing patches for this on patchstorage. Currently there is zero option for that. As I said in my vid, I just don't understand how few devs are clued up about the importance of a truly comprehensive preset manager.

    Agreed. Hope that becomes standard issue at some point. Thanks! Haven’t had time to check the video yet but will try to tonight.

  • @HotStrange said:

    @Gavinski said:

    @HotStrange said:

    @Gavinski said:
    Just to mention that I finally got enough time to add timestamps to the vid

    Also - dev says he will improve the preset menu and expose the parameters in a coming update 🔥

    How many presets come with the synth?

    Not in front of my ipad, offhand, I'm thinking maybe 30? So, relatively few. As he said he will add proper import and export features, I can imagine ppl will be into sharing patches for this on patchstorage. Currently there is zero option for that. As I said in my vid, I just don't understand how few devs are clued up about the importance of a truly comprehensive preset manager.

    Agreed. Hope that becomes standard issue at some point. Thanks! Haven’t had time to check the video yet but will try to tonight.

    I think it might be even less than 30. I might encourage the dev to make more presets, I have a feeling he'll do that anyway. If he's using chat gpt he should be able to pump them out anyway!

  • Anyone know how to use the neural network functions in the app? The dev said it's cool but he needs to make a tutorial about it. That bit of the manual was slightly over my head

  • @Gavinski said:
    Anyone know how to use the neural network functions in the app? The dev said it's cool but he needs to make a tutorial about it. That bit of the manual was slightly over my head

    Yes. The Neural Network section is beyond, But I don’t think you need to understand the math behind the sounds to me tweak Presets that use VSAutodecoder.

    This is a provided Preset:

    -- Patch: Latent Explorer
    -- Set note value and panning
    note[1] = notein
    panning[1] = 0.5
    
    -- Circular movement in latent space
    local t = gatetimeon + gatetimeoff
    local radius = 1 -- Radius of circular motion
    local x = radius * math.cos(t/5) -- Divide time by a factor for slower movement
    local y = radius * math.sin(t/5)
    wave[1] = VSAutodecoder2({x,y}) -- Generate waveform from latent space
    wave[2] = wave[1]
    
    -- Apply a basic ADSR envelope to the volume
    vol[1] = VSADSRE(0.05, 0.2, 0.7, 3, 0, gatetimeon, gatetimeoff)*velocity
    vol[2] = vol[1]
    note[1] = notein+0.05
    note[2] = notein-0.05
    

    I started changing various numbers in the code and was happy with this result:

    -- Patch: My Latent Explorer
    -- Set note value and panning
    note[1] = notein
    — I tweaked the panning for the 2 subsequent oscilaltors. 0.5 is center so I go slightly left and right.
    panning[1] = 0.45
    panning[2] = 0.55
    
    -- Circular movement in latent space
    local t = gatetimeon + gatetimeoff
    local radius = 0.3 -- Radius of circular motion
    local x = radius * math.cos(t/4) -- Divide time by a factor for slower movement
    local y = radius * math.sin(t/7)
    wave[1] = VSAutodecoder2({x,y}) -- Generate waveform from latent space
    wave[2] = wave[1]
    
    -- Apply a basic ADSR envelope to the volume
    vol[1] = VSADSRE(0.05, 0.02, 0.7, 0.3, 0, gatetimeon, gatetimeoff)*velocity
    vol[2] = VSADSRE(0.1, 0.02, 0.7, 0.3, 0, gatetimeon, gatetimeoff)*velocity
    
    — the extra 0.05 détunes the oscialltors +/- to fatten the sound
    note[1] = notein+0.05
    note[2] = notein-0.05
    
    — This is a useful adjustment to lower the CPU consumption. The default is 512. So, this processes 4 times slower to lower my CPU use.
    
    updatefreq = 2048
    
  • @McD said:

    @Gavinski said:
    Anyone know how to use the neural network functions in the app? The dev said it's cool but he needs to make a tutorial about it. That bit of the manual was slightly over my head

    Yes. The Neural Network section is beyond, But I don’t think you need to understand the math behind the sounds to me tweak Presets that use VSAutodecoder.

    This is a provided Preset:

    -- Patch: Latent Explorer
    -- Set note value and panning
    note[1] = notein
    panning[1] = 0.5
    
    -- Circular movement in latent space
    local t = gatetimeon + gatetimeoff
    local radius = 1 -- Radius of circular motion
    local x = radius * math.cos(t/5) -- Divide time by a factor for slower movement
    local y = radius * math.sin(t/5)
    wave[1] = VSAutodecoder2({x,y}) -- Generate waveform from latent space
    wave[2] = wave[1]
    
    -- Apply a basic ADSR envelope to the volume
    vol[1] = VSADSRE(0.05, 0.2, 0.7, 3, 0, gatetimeon, gatetimeoff)*velocity
    vol[2] = vol[1]
    note[1] = notein+0.05
    note[2] = notein-0.05
    

    I started changing various numbers in the code and was happy with this result:

    -- Patch: My Latent Explorer
    -- Set note value and panning
    note[1] = notein
    — I tweaked the panning for the 2 subsequent oscilaltors. 0.5 is center so I go slightly left and right.
    panning[1] = 0.45
    panning[2] = 0.55
    
    -- Circular movement in latent space
    local t = gatetimeon + gatetimeoff
    local radius = 0.3 -- Radius of circular motion
    local x = radius * math.cos(t/4) -- Divide time by a factor for slower movement
    local y = radius * math.sin(t/7)
    wave[1] = VSAutodecoder2({x,y}) -- Generate waveform from latent space
    wave[2] = wave[1]
    
    -- Apply a basic ADSR envelope to the volume
    vol[1] = VSADSRE(0.05, 0.02, 0.7, 0.3, 0, gatetimeon, gatetimeoff)*velocity
    vol[2] = VSADSRE(0.1, 0.02, 0.7, 0.3, 0, gatetimeon, gatetimeoff)*velocity
    
    — the extra 0.05 détunes the oscialltors +/- to fatten the sound
    note[1] = notein+0.05
    note[2] = notein-0.05
    
    — This is a useful adjustment to lower the CPU consumption. The default is 512. So, this processes 4 times slower to lower my CPU use.
    
    updatefreq = 2048
    

    U love your coding! Will check that out later. In the meantime I'm gonna shoot the dev a message suggesting he open a patchstorage page

  • Oh yeah, I almost forgot there's no actual way to export presets yet 😂

  • edited July 2023

    I just paste the code into chatgpt and have it change all the numerical values and paste the result back into Vivid. You can also replace any value with math.random() to create some wacky oddball presets.

  • @hacked_to_pieces said:
    I just past the code into chatgpt and have it change all the numerical values and paste the result back into Vivid. You can also replace any value with math.random() to create some wacky oddball presets.

    Great idea!

  • @hacked_to_pieces said:
    I just paste the code into chatgpt and have it change all the numerical values and paste the result back into Vivid. You can also replace any value with math.random() to create some wacky oddball presets.

    That’s intriguing… can you share a CharGPT prompt example? Do you limit the range of allowed substitute values since many might exceed expected limits.

    Reading the “Getting started” I discovered that the app can output text using “text = string.format(…)”.

    My current understanding is that the Neural Network has been “trained” with waveforms. It can then be accessed using VSAutodecoder2({x,y}) with x and y being between 0 and 1. So, most Presets shared tend to sweep around in this “latent” space of waveforms pulling out a new waveform with each iteration and generating these cool morphing shapes. The app displays the shapes as they are rendered to audio.

    Most presets are a page of code and it’s easy to use “cut and paste” (Control-C and Control-V on a keyboard) to grab the “Preset” code and paste it into the VividShaper’s text box and hitting Parse. Remembering to save a local copy for re-use.

  • Change all values in lua script

    Understood! Here's an updated version of the Lua script with random values assigned to each variable:

    -- Patch: Morphing Sawtooth to Triangle
    local saw = VSSaw(math.random(), math.random())
    local triangle = VSTriangle(math.random(), math.random())
    local sawLatent = VSAutoencoder2(saw)
    local triangleLatent = VSAutoencoder2(triangle)
    local time = math.random()
    local t = (math.sin(time) + 1) / 2
    
    -- Now we interpolate between the sawtooth and triangle latent space coordinates
    local latentspace = {
      sawLatent[1] * (1 - t) + triangleLatent[1] * t,
      sawLatent[2] * (1 - t) + triangleLatent[2] * t
    }
    
    wave[1] = VSAutodecoder2(latentspace)
    vol[1] = math.random() * VSADSRE(math.random(), math.random(), math.random(), math.random(), math.random(), math.random(), math.random())
    gvol = math.random()
    

    In this updated version, random values are assigned to variables such as the parameters of VSSaw() and VSTriangle(), time, t, and the parameters of VSADSRE(). The math.random() function generates random values between 0 and 1.

    Please note that using random values may result in unexpected and potentially dissonant sounds. Feel free to adjust the range of random values or specific values to achieve the desired effect.

  • @Gavinski said:

    @HotStrange said:

    @Gavinski said:

    @HotStrange said:

    @Gavinski said:
    Just to mention that I finally got enough time to add timestamps to the vid

    Also - dev says he will improve the preset menu and expose the parameters in a coming update 🔥

    How many presets come with the synth?

    Not in front of my ipad, offhand, I'm thinking maybe 30? So, relatively few. As he said he will add proper import and export features, I can imagine ppl will be into sharing patches for this on patchstorage. Currently there is zero option for that. As I said in my vid, I just don't understand how few devs are clued up about the importance of a truly comprehensive preset manager.

    Agreed. Hope that becomes standard issue at some point. Thanks! Haven’t had time to check the video yet but will try to tonight.

    I think it might be even less than 30. I might encourage the dev to make more presets, I have a feeling he'll do that anyway. If he's using chat gpt he should be able to pump them out anyway!

    Oh wait so see people just getting chat gpt to script patches and then plugging them into the app? I can probably do that 😂

  • edited July 2023

    Also in the default patch it easy to change the wave form for the most impact use noise for example

    -- Patch: New
    wave[1] = VSNoise(55435)
    vol[1]=gate

    If you use VSSquare you need 3 values

    -- Patch: New
    wave[1] = VSSquare (1,0, .3)
    vol[1]=gate

  • @hacked_to_pieces said:
    Also in the default patch it easy to change the wave form for the most impact use noise for example

    -- Patch: New
    wave[1] = VSNoise(55435)
    vol[1]=gate

    That’s got a nice bite to it.

  • Definitely needs a BitWiz style random code generator for non programming types like me. I really like BitWiz, and have never typed a line of code into it myself.

  • @Svetlovska said:
    Definitely needs a BitWiz style random code generator for non programming types like me. I really like BitWiz, and have never typed a line of code into it myself.

    I would probably buy it right now if it had that. I’m going back to school soon for coding but I’m not sure I’d like to incorporate that into my music making.

Sign In or Register to comment.