AR Uploader for Windows - Sample Chains and Batch Uploads

Here’s an update.

Changelog:


 * 25Mar2016
   - Fix varichain algorithm
   - Change debug output to print Analog Rytm STA (start) positions of varichain slices
   - Add -minpad option (varichain only)
   - Add -indev and -outdev cmdline options (the default devices can be configured in "setenv.sh")
   - Pass extra cmdline args to SDS script (see "upload_dir.sh", "upload_chain.sh", "upload_varichain.sh")

Download: http://tkscript.de/files/other/ar_uploader-25Mar2016.7z

Note: The default in/out device names are “Elektron Analog Rytm”. If you’re using the Korg USB-MIDI driver, edit the “setenv.sh” script and uncomment the lines that read
#export SDS_INDEV=“Analog Rytm in 1”
#export SDS_OUTDEV=“Analog Rytm out 1”

Here are some example samplechains:
[ul]
[li]ST-01 Amiga 8bit sampledisk (from 1987): http://tkscript.de/files/tmp/sc-st-01.7z (120 slices)[/li]
[li]Korg Mini Pops drum machine (varichain): http://tkscript.de/files/tmp/sc-minipops.7z (13 slices, see .txt file for STA params)[/li]
[/ul]

1 Like

…and another update (the forum’s been offline the past few days, could not post this any earlier):

Changelog:


 * 26Mar2016
   - Use libsamplechain (see https://github.com/bsp2/libsamplechain )
   - Support pathname arguments with spaces in utility scripts
   - Add "-chainout" cmdline option
       (allows sample chain to be saved to a file other than "debug.wav")

D/L: http://tkscript.de/files/other/ar_uploader-26Mar2016.7z

1 Like

Just passing by to say that I am amazed at people like you @bsp or @void that just share their good work like this…
You guys keep it making this a better place !

Cheers, and keep up the good work gentlemen !

1 Like

^^ and thank you for the nice music!

void was right when he said that setting up the sample starts/ends for varichains in a kit is quite annoying.
This update adds at least some automatism for that.
You still need to load the sample manually (via C6 or this tool) but at least the kit .syx is auto-generated now.

If you have followed the instructions in the “readme.txt”, it’s as simple as this:


$ cd ar_uploader
$ . setenv.sh
$ ./upload_varichain.sh /d/samples/percussion/packs/minipops/ vc-minipops -kitsmpnr 46 -kitsyxout vc-minipops.syx -chainout vc-minipops.wav -noupload

(convert the minipops/ directory to 48Khz/16bit, create varichain .wav and matching kit .syx file)
(the generated “vc-minipops.syx” and “vc-minipops.wav” files can be found in the minipops/48k/ directory)
(remove the “-noupload” option to upload the generated .wav to the AR right away)

Changelog:


 * 29Mar2016
   - Use libanalogrytm for SysEx handling
       (see https://github.com/bsp2/libanalogrytm ) 
   - Add "-kitsyxout" cmdline option
       (use with -chain or -varichain option)
       (generate + save kit .syx file. sending it to the AR
        will update the RAM edit buffer)
       (sets STA, END, and sound name for each track)
       (sample starts can be finetuned via the
        LFO start phase ("SPH") parameter)
   - Add "-kitsmpnr" cmdline option
       (sets samplenr in generated kit .syx)

D/L: http://tkscript.de/files/other/ar_uploader-29Mar2016.7z

1 Like

Hi bsp,

Many thanks again for this tool. I finally had a chance to play with it. I noticed something weird, which I doubt is related to your tool, but I am still curious to know if you have experienced anything similar.

I tried to upload about 2700 samples. The tool completed successfully, but I was only left with about 512 samples in my upload directory. After some more testing, it seems like the max number of samples you can upload to a RYTM directory is about 512.

I then tried to upload in batches and copy each batch into a main directory, but after about 1024 samples, RYTM stopped allowing me to copy files into that directory. In fact, it would not even let me delete files (and other odd behavior). I ended up having to reformat my drive.

My +Drive was definitely not full. I formatted the drive and tried again with the same result.

I know you did a test above with about 700 samples. I am wondering if you were actually really able to get all 700 samples uploaded to your upload directory, or if you had the same behavior as me.

I am going to continue uploading, but I am going to keep my directories less than 512 samples.

Curious to know your thoughts.

Thanks!

1 Like

Hi jbone1313,

the “Modded 707” sample collection I mentioned in the first post has 804 wav files (I just took a look at the the 48k converted directory, hadn’t deleted that one, yet).

All files were uploaded into one directory (in one go / overnight) and I sorted the files into directories (on the AR) the next day.

I just counted them by going through all AR directories and using “select all” to show the file count.

The total count is 510 (!)

So you’re right!

Apparently there is a limitation of 512 (510?) files per directory.

Thanks a lot for noticing this !

In my case this did not cause any severe issues (e.g. file system corruption).

May I ask which firmware version your AR is running ?

I’m on 1.22b but it could very well be that I still had 1.21c installed when I did the upload – it’s already been 1.5 months since then.

By the way: If an upload did not finish b/c of this 510 files-per-directory limitation and you still have not deleted the “48k/” directory (and the filelist.txt):
Copy the “filelist.txt” to “leftovers.txt”, then edit it and remove all entries until line 511, then upload the remaining files using this cmdline:


$ cd my_sample_dir/48k
$ tks app:sds leftovers.txt -indev "$SDS_INDEV" -outdev "$SDS_OUTDEV"

Oh my, now I have to do this for all the sample packs I’ve uploaded since then… most of them have more than 510 files :wink:

Cheers!

1 Like

oh boy…
great that this didn’t seem to be interesting enough to be mentioned in the Rytm manual.
great that the uploads just fail silently.

:zonked:

edit: I’m wondering what actually happens if the 1GB are reached? Will the sample data write over project memory, or even the OS itself? Will it rotate around, overwriting the factory samples? Could be fun but do we want to find out? :stuck_out_tongue_winking_eye:

to be fair, 500+ files in one directory on that screen is a bit crazy, no? How do you even find samples?

1 Like

The file system sure is not a strong point of the AR :smiley:

Reminds me that it might be a good idea to filter “unusual” characters in filenames to avoid this “undeletable directory” situation
(unusual = all that are not listed on the AR name entry page ?!).

The only reason for wanting to have more than 510 files in a single directory is that you can start a batch upload and leave it running overnight, then sort the files the next day.

It would have been a lot more user-friendly if the upload directory could be changed programmatically but well…it is what it is…

1 Like

Yep - I think 510 was my exact number.

May I ask which firmware version your AR is running ?

1.22b

By the way: If an upload did not finish b/c of this 510 files-per-directory limitation…

Yeah - I figured out deleting the lines from the filelist.txt file.

BTW: FWIW, I am using your tool without those extra installs. I do not want to install anything on my machine that I don’t have to, especially since I just reformatted and reinstalled Windows.

Oh my, now I have to do this for all the sample packs I’ve uploaded since then… most of them have more than 510 files :wink:

Good luck!

The only reason for wanting to have more than 510 files in a single directory is that you can start a batch upload and leave it running overnight, then sort the files the next day.

Respectfully disagree. See post below. :slight_smile:

It would have been a lot more user-friendly if the upload directory could be changed programmatically but well…it is what it is…

Yep.

Would have been nice.

edit: I’m wondering what actually happens if the 1GB are reached? Will the sample data write over project memory, or even the OS itself? Will it rotate around, overwriting the factory samples? Could be fun but do we want to find out? :stuck_out_tongue_winking_eye:

Great question!

to be fair, 500+ files in one directory on that screen is a bit crazy, no? How do you even find samples?

On the contrary, it is not crazy. Pressing and turning the knob scrolls the samples very quickly. And, if good naming conventions are used (as bsp’s tool enables), it can work well. E.g., prefix snares with “snare.”

is there a good manual on using this tool? I see only txt file with different keys specified and only 1 example provided.
I need a comand to be able to convert all the files in specific folder to sample chain and upload it to AR - can you please let me know how to do that?
Thanks!

bsp, have you updated (internally) your libanalogrytm? I was wondering if you managed to decode a kit sysex request, just like you did for the patterns?

1 Like

This topic is dead and is not supported by developers. I don’t know why it is pinned in AR sub-forum. It’s a shame.

1 Like

Still hoping for a polished Windows file uploader for the RYTM. Might have to make a Hackintosh I guess.

My apologies for leaving you hanging there for almost a year.

But there’s a “Good news, everyone” – I finally created a (musician-friendly) UI for this tool.

(it’s not highly polished but way more easy to use than the commandline version!)

Here’s a demo video that shows how to create a “varichain” from an audio track: https://vimeo.com/222078031

The basic idea is that

  • you record your drum hits onto an audiotrack in your DAW
  • export that as a WAV
  • import it into the tool (drag’n’drop)
  • the tool will then:
  • extract the slices and convert them to 48kHz/mono (via SOX)
  • create a sample-/varichain wav along with an AR kit (.syx)
  • and upload the wav+syx to the AR.

You can download the software here: http://miditracker.org

@mekohler: yes I have. I’ll update my github page tomorrow (EDIT: it’s updated now).

1 Like

Thanks for the github update!

…almost forgot: since I am using Korg’s USB MIDI driver for the AR, the AR in / out device names in the default tool config differ from most people’s setups.

here’s a config that uses the device names you get with the (default) Microsoft USB MIDI driver (just overwrite the file): http://miditracker.org/files/other/ar_ms_usb_midi_cfg/synergy_config.tks

(you could also use the “Device Setup” UI page to change this but I guess it’s easier this way)

last but not least: it’s still possible to use the uploader from the cmdline: run “cmd”, change to the “synergy-miditracker-18Jun2017” directory, then run “synergy opt\sds\sds”.

The UI basically does the same thing, except that it also runs “synergy opt\sxt\sxt” to extract the slices, and “opt\sox-14-4-2\sox” to convert the slices to 48kHz.

p.s.: “SXT” is the suffix for Propellerhead Reason NN-XT patch files, by the way. I’ve reverse-engineered that file format last year and wrote a patch generator that can be used to extract slices and create a multisampled drum map from a single wav recording, for example.

Thanks for making this, after some fiddling I got it to work and it’s much nicer than c6.

I still loathe Elektron for not giving us the same sample uploading ability as the OT, what fucking year is it really? Oh well, still a lovely instrument and you could say the shitty sample management forces me to choose wisely…or never use samples.

Here’s an update for firmware V1.50: http://www.miditracker.org (64bit Windows + Linux).

The uploader tool is part of my free and open source MIDI sequencer (“Audio Tool” page).

The app’s “Analog Rytm” node can be used as a librarian for patterns and kits, and the new release also features an AR kit editor, which is (briefly) shown in this video @~1:20m:

(note by: that cascaded timeline sequencer feature is quite freaky and very useful for percussion sequencing)

5 Likes