Auto-Save Table Data


#1

Hi,

I'm working on a LaunchPad step-sequencer (taking a slightly different approach to @rbrt) , and I'd like to make sure that sequence data, stored in a 16bit table, isn't lost when I take the Axoloti Patcher out of Live mode, or turn the Axoloti power off.

I'm guessing I'll need the Table Save and Table Load objects, but I'm not sure how to set them up, exactly. Does anyone have any tips on howe I might achieve this?

a|x


#2

Hey @toneburst :slight_smile:

I am curious a ou tthe approach you are using? I have made a sequencer that loads and saves the patterns to sd-card, using tables... But it is really no good, cause it makes th dreaded bleeep when changing preset. FOr some reason I couldnt get it working with 8 bit table, I HAD to use 16 bit... If I could use the 8 bit it would be cool and no bleeep :slight_smile: Argh.......

I was then suggested to store MANY presets in one table using following method:
4 sequences takes up 4 samples in a table. So if you use a table of 16 samples you can save 4 presets, 32 sample 8 presets and so on...... This I just cant get a stable version of. It seems like it doesnt load the presets properly.. Anyway was a few weeks back I worked on it. Maybe it is time to revisit it and get it fixed. Willl look at t later today :slight_smile:


#3

Hi @jaffasplaffa,

I'll let you know how I do it, if I get it working.
I'm using a 16 bit table.

a|x


#4

Here is a short description on how I did it:

I can send my patch later on today too. This would be SOOOO awesome to get working.


#5

Cool, thank you @jaffasplaffa.

I'm not currently implementing a multi-preset system for my sequencer, but I might do that in future. I could use some of the top rows of LaunchPad buttons for that, maybe...

a|x


#6

@toneburst

Here is the version I have right now. It is VERY unstable and deosnt even play the sequences back in the right way. I dunno really where to go from here, so kind of stuck. But to me the best thing would be able to save many presets into the same table, like i described earlier, so you can recaal them with no clicks and bleeps.... Anyway, you are welcome to look into it and see what you can make of it :wink:

If you come up with something fantalastic let us know :slight_smile:

seqpreset.axo (7.1 KB)

VIDEO TIL COMMUNITY 1.axp (3.5 KB)


#7

Got this working. In the end, it was very simple. I just needed to add table load and save objects, and a string object connected to the name input of both. Works perfectly.

a|x


#8

presets as in the video?


#9

@jaffasplaffa I didn't get a chance to watch the video, in the end, I'm afraid.

I'm saving sequence data from my Launchpad sequencer thing. At the moment, the idea is to save 8 pages of data, with each page representing the state of the 64 pads.

I could easily expand this in the future so that I could save multiple sets of pages, essentially creating a preset system for the sequencer.

A table of length 4096 would give 8 presets, in my system, which would be quite neat.

a|x


#10

This was my very simple approach.

Except that instead of the momentary switch, I wired the save table trigger to my launchpad object, so that every time I modify a pattern by hitting a pad, the table is saved.

a|x


#11

Thanks. Yeah it is a little bit differnt than my approach and something different overall.

Anyway, thanks for the pic :slight_smile:


#12

That's OK. A table is really just a big array of values. The trick is in dividing that data up into chunks.

If you're just using on/off states for trigger sequences, it makes a lot of sense to pack values into each number in the table.

With a 32bit table, you can pack 32 on/off step states into the 32 bits of each value in the table.

It should be relatively easy to do using bit-shifting and boolean operations.

a|x


#13

Yes probably. I didnt get that far yet though. Gave it a break and started on something else. When I learned a little bit more I will get back to it.


#14

I can have a go at knocking together a simple example, if I get a chance.

Are you just looking to save the 4 channels of 16 step trigger sequences into a number of presets?

Rather than trying to roll the preset system into the object itself, you'd be better off just having the sequencer object reference a table, I think.

It makes sense to keep things modular, where there are existing objects that do what you need. You can always make a sub-patch or use a patch/patcher object to keep things tidy.

a|x


#15

Yes basically. So you can recall them on the go, in a live situation, making loads of variations available.

If you take a look at the video you see what I was trying to do. It is a very short one, just a short clip showing presets being recalled from sd-card. But this is really not good calling them from SD-card cause everytime I change preset there is a "drop out" of the sound, which makes it unusable in live situations. If you for exampe have 16 presets of 4 sequences in one table, you have lots of variation and only have to load a new table with further 16 presets very rarely.......

So I was trying to save many presets in one table. Each preset only consists of 4 parameters/sequences, so it should be possible to store large amounts of presets in small tables, as you describe. 4 presets would be 4 parameters * 4 presets = 16 samples table. But sounds like you way is a lot more efficient. And probably also "drop out" free.

If you feel like giving it a go, it would be appreciated :wink:

Yes probably better to have it externally, so it can be used on all the sequencers, with only a little modification. I allready made some different types of sequencers, where I would love to use presets, withouthaving to implement the preset system into all of them.

Jaf


#16

Cool. I will try to put something together. No promises, I'm afraid, as I have limited free time.

a|x


#17

No problem :wink:

If you get a round to it it would be super if not, it is also okay :wink:


#18

Try this.
There are still some slight glitches when changing presets. Note sure why.

a|x

Jaffa Preset Test.axp (11.5 KB)


#19

New version. The slight hiccup when changing presets was caused by the patcher updating the pattern display.

I've added a checkbox to turn updating on/off. Turn it on to edit the patterns, toggle it off for live playing.

Might be worth splitting the object into 2.
One for editing the patterns (with display) but no playback function, the other is for playing back, but has no editing functions.

enjoy!

a|x

Jaffa Preset Test.axp (11.7 KB)


#20

Hey @toneburst :slight_smile:

Wow! Thanks! I am off from work today, so I have time to test it. I wonder if the problem you had is the same that I had....

I'll keep you updated :wink: