DigiChain - web app for making sample chains

You said it happens more on bass frequencies, so I’ll do some testing with bass hits later this evening, see if I can get any clicks/pops to appear.

Are you by any chance doing sample-rate conversions? (e.g. going from 48k to 44.1k), it’s possibly rounding errors when that happens (which would also explain seeing it in Octachainer).

hey man…I was looking at the .WAVs in Audition, and tho I had normalize and peak off, the WAVs were pretty hot. so I just dialed down the volume in Audtion and chucked that into the OT, and it seems to be good so far. ill try the same with some other sample chains.

re: the second paragraph in your response, ya, the original samples were 48K
and now that you’d mentioned that, the set I JUST did that was successful was 44.1K initially. SO…with that im going to take the same samples that failed, and batch process them to change to 44.1K. super fast to do vs hand chopping 64 samples.

so ya, perhaps theres issues with 48 to 44.1

thanks for follow up :+1:t6:

1 Like

ya so after a quick runthru…I took that same sample set, batch converted to 44.1K 24bit and ran thru the digichain…much better :+1:t6:

no need to adjust volume

1 Like

I did some work on this last night, it looks like the native web audio decodeAudioData does a poor job going from 48 -> 44.1 on low frequencies, so I’ve made some changes to resolve that, and also added a declick on the end stage wav generation (configurable in the settings panel).

I have some more testing to do around this, as I still need to fire up my MacBook to test my work in Safari. But I should be able to get this fix out over the weekend.

2 Likes

MUCH appreciated :+1:t6:

1 Like

Just pushed up v.1.4.4 update to the main URL:

  • Minimizes reported click/pops on exported chains when importing wav files of differing sample rate to the target sample rate, or when using audio interfaces configured with small sample buffers. On by default at a 40% threshold, user configurable thresholds and can be disabled via settings panel.
  • Added fuzz selected actions action to add fuzz/noise into the selected samples.
  • Added fade-in fade-out selected actions to fade in/out the first/last 256 samples of each selected sample.
  • Blend panel to blend/interpolate between the selected samples (works best when the samples are similar in duration).

Which means a few more options in the settings panel for the de-clicking.

The ‘selected actions’ options got a move around to accommodate a few additions:

image

And I pushed up the new Blend panel that I had been noodling with for a while, this blends between the selected samples by the total number of steps chosen. Use this with single-cycle files to create wavetable-ish sounds, files generated by blend will (should, it is experimental!) loop, as the first also blends into the last - so you can select more than just two files to blend between, and they will blend in the order they are in the list.

e.g.








While this will work with any samples, it works best with smaller length files - and the buffers can get quite large as its the number of steps chosen * the length of the files.

Another example with three trimmed pitched vocal stabs.

8 Likes

This is such a nice app.
One wish: Is there any way to finetune individual samples in the list by cents? I’d like to make some microtonal multisampled synths to be played with the Slice machine.

2 Likes

Thanks!
At the moment, the editor only adjusts by semitone/octave. I’ll take a look at adjustment by cents and see where it would fit in on the panel.

2 Likes

That would be really cool.
Thank you so much for the immediate reply!

1 Like

One request: Please implement a select-all/deselect-all function unless this is already implemented. I potentially have thousands of one-shot samples I might need to select or deselect en masse and have not yet found this button. This would save a lot of time for the user.

Thank you, Brian. And thanks again for that randomize function. I finally got my laptop fixed and about to scramble-up my OT sample chains. Wish me luck.

And yes, I feel selfish as hell asking for something for free from a guy that lives a whole ocean away from me but, what the hell. Can’t hurt to ask.

1 Like

Sorry, I know some of the shortcuts aren’t obvious :slight_smile:

CTRL+Click the Selected row header to toggle the selection of all samples.

The OFF button will also deselect all the samples in the list, and the i key inverts the current selection, so that also selects all when there are no samples currently selected.

There’s a full list of supported keyboard shortcuts here.

The import is limited to 750 files, if you want to drop in more than that, there’s a setting in the settings panel to turn this limit off, but it may cause timeouts on computers with low available memory.

And when creating files for the OT, make sure you start off in a 44.1khz export option from the drop-down, and have the .ot file generation turned on in the settings panel :smile:

2 Likes

You are awesome before I realize it, always. You have a friend here in Chicago named Dicky. You’re welcome. (And thanks again, of course.)

1 Like

No problem, and thanks!

You say you live a whole ocean away? There’s no ocean between Illinois and Pennsylvania :upside_down_face:

Why did I think you were in England? Hm. I’m not sure exactly.

There probably should be

I’m from England, just haven’t lived there since 2020 :slight_smile: I must still be typing with an English accent!

1 Like

Currently Digichain has been processing for about 60 minutes to make 52 chains out of 3326 one-shot samples as I requested it to resample the chains back to the list using the shift+chain button. Maybe I need to start over but hoping not to. Any suggestions on that?

That’s quite a bit above the 750 safety limit!

Resampling back to the list means it’s going to need twice the memory to store the audio buffers.

I’d recommend not resampling if processing that much, and just get the chains out in a zip file.

And if you’re using Safari, that number of files is likely to cause problems as Apple limits how much of the systems memory a page can use by a greater degree than Chrome/Edge.

As an aside, I think I need to add a setting to remove the processed files from the list to help with memory pressure on large jobs.

Also, try pressing the Escape key to clear away the processing message, it might be out of memory, but still have where it got to on the resamples at the top of the list.

Ok. Will do.

Ok, now I’m just rude and see why that other guy said there ought to be an ocean between us BUT, regardless, one more last question swear to God - after randomizing with shift+reset-sort is there an easy way to randomize again or several times. I find it only works once.

Btw, How can I compensate you for your work.