Definitions, Meanings and Explanations


#1

Not sure the best category for this, but I thought to start this thread to be a collection of "Definitions, Meanings and Explanations" similar to threads like "Wishlist of Objects". The aim is to provide a thread where anyone can place a request for definition, meaning or explanation for any terms that they may come across within other discussions. It may also reduce questions within these threads not directly related. Yes sure people can refer to "Google" etc.. but if details were provided more in relation to the Axoloti, and kept within one thread, as it collects info, it can become a useful resource for all skill levels within your differing interests.
The idea is to encompass all topics, from hardware, software and anything in-between, Anyone can add, and Anyone can respond. :slight_smile:

So to start this off, in reference to Axoloti, "what is a Table", I have read through various topics, the use of various objects etc.. and still cannot connect with the understanding.
I know in a database, a table contains records and fields so I expect it is something like this, but not sure.
Thanks..


#2

Table: a segment of memory in which you can store data (samples, loops, wavetables, generic data, anything you can think of basically).

There are two "places" in which you can store tables: SRAM and SDRAM
SDRAM is bigger than SRAM, however is slightly slower to access.

You can have tables in different sizes (8bit, 16bit, 32bit), (32bit -> you can store less data, but with better precision; 8bit -> you can store more data, but with worse precision)
There is then a "size" attribute, which specifies how many samples are stored in a table.

You can see a table like a book: when you read from a table (but this applies also to writing), all you're doing is telling axoloti: go to page X, read what's written in it.

To use tables: place an object like table/alloc (8b/16b/32b/SDRAM, now you know what they mean)
and change its name to something more useful to you (like table1 or memory1 or happyhippo, or whatever you want basically)

You can load stuff from sdcard to tables with table/load (in the box you must write the name of the table)
You can save stuff to sdcard to tables with table/save (same thing)
You can write k-rate data to tables with table/write
You can record s-rate data to tables with table/save
You can read from a table with table/read objects


Long fadeout: how to?
#3

Excellent, !
so an 8 bit table with size 256 will hold 256 values between 1 and 256 (8 bit values) and I read it by saying go to page 131 and get the 8 bit value. :grinning: sounds just like an array of values. I've been wondering how to apply an array to an object.. Thanks.


#4

Under the hood there's an array, in fact. However with a table you can also read between values


#5

To do an array of defined values I use table/alloc and write this type of code:
array[0]=0;
array[1]=0;
array[2]=20;
array[3]=0;
array[4]=0;
array[5]=-20;
array[6]=20;
array[7]=0;
array[8]=0;
array[9]=-20;
array[10]=0;
array[11]=0;
array[12]=0;
array[13]=-20;
array[14]=0;
array[15]=20;

Is there a simpler way to define an array of defined values?
Reading from a list of comma separate values with table/load is not possible?


#6

I think this subject is going OT... shall I split it into using tables
by the way there are lots of topics on using tables in the forum, perhaps it would be better if someone wrote up a definitive post :wink:

as stated tables are just C arrays., if you want to initialise it - look up C Array initialisation

table/load loads a binary file....

whilst for an end-user typing in a CSV would be handy, it would be inefficient for axoloti to have to parse this, every time the patch started.
a much better way to handle this is to have the CSV converted to a binary file on your host computer (mac/pc/linux) and transfer the binary to the SDCard, so the conversion is done once, and axoloti can just read it off the sdcard.

generally, I think we have to remember that axoloti is a microcontroller... so its important to keep things efficient, even if this means 'more steps'.
(there is an argument here, for reducing the 'steps', by adding these to the Axoloti UI, which of course is running on your host computer anyway... but thats another discussion :wink:)


#7

Thanks @thetechnobear .. sorry for the OT.
Perhaps is better to split the thread.
For me is ok to convert to binary on my mac ... but I don't know how :blush:


#8

@akirasrebirth honestly I think its inevitable for this topic to go OT... if someone says what is an X, the follow up is bound to be , and how do you use it :slight_smile:

personally, I think focused topics, with focused titles (e.g. what is a table?) are much easier for users to search than topics which 'encompass all topics, from hardware, software and anything in-between'...
but hey, just my opinion.... carry on , dont want to go off topic :slight_smile:


#9

Thanks @thetechnobear for your assistance, I did suggest at the beginning of the thread that I wasn't sure about the category which could extend to all aspects of this thread, but how an we accommodate someone asking "how do you use it". I have found many topics raised are maybe not flexible enough to accommodate such questions, especially for newcomers and novices etc. And many posts refer to people needing to understand some basics understanding etc. I have no experience on the synth side, and I see a lot of comments that I am struggling to understand when searching the internet etc, and often reading through other posts is a little sparse with detail which is what I found about "Tables" and why I asked. I like to think I am not the only one that thinks this way, if I am, then maybe I chose the wrong path.. LOL :laughing: Participation to assist will be purely a choice as I suspect some will have absolutely no interest and this is ok. Is there a better way we could do this ? Maybe another category or something ?


#10

I suspect the issue is lack of curation.
What really you are after is information that is less haphazard, has been structured - forums are not great for that, as they are focused on discussion.

The user guide category is meant for this, it's open to users to collect new topics there, and it's wiki posts mean others can edit too.
I seeded it with the basics and it was hoped the community would help flesh it out, but seems little interest in this.
... I suspect it's because it takes time to collate info a useful format.

Currently I think @janvantomme book is the best source for authored information about axoloti. ( I've not read it but others here have said it's good)

For general synthesis there are quite a few good books out there, It's a huge field so which suits you depends on what your after , your background etc.

Anyway it's just my opinion that one thread can't sum up this vast amount of information, and it's likely just to turn into a bunch of random questions, that other users when later searching will not be able to find

i do sympathize though with your thoughts/intentions, even your table question I know has been asked before ( i remember it well :)) but i cannot find the post :slight_smile:

Perhaps i should be curating all the useful answers into the user guide, but I just don't have the time.
If someone else does in the community that's cool


#11

I would be more than happy to try giving this a go, however to start with I have no idea how this is done. Is there a guide I could follow. The other thing is I would be limited in my understanding of what is useful, and what is not. Is there a way a post could be tagged for adding or something ?
I guess maybe the trick is in the user guide category if we use this post as an example, once we start the topic "What is a table" it can be started off with the basic understanding, (if one exists) then anyone can add to it, or ask questions of it. Will the a user guide post act like any other post ? If I have a structure to work with, I am more than happy to give it a go managing it.


#12

anyone of user level 2 (and above) can create topics in the user-guide category.

when I see posts there, I will 'review' them (to check they are user guide 'material') and then mark them as a wiki post, this means that anyone can then edit the top post. to either add material, or edit existing material.... so the community can improve it.
(rather than it be spread over replies to the topic)

there are already a few topics in the user guide section, including the 'basic' one. the issue, if you read them, is they tend to just be populated with a little bit of info initially, and then are 'abandoned'...
but understandable, if its not where peoples interests lie .