The Sample Map of The Future: Escaping the 20th Century Sample Mapping Paradigm
-
Very first impressions just taking a look at it:
-
@aaronventure said in The Sample Map of The Future: Escaping the 20th Century Sample Mapping Paradigm:
just taking a look at it:
Isn't that just the regular sampler table in your image?
-
@d-healey Is it? I can't remember. I just saw this under the Sample Editor in the new commits and thought it was new.
-
-
@d-healey well, damn
-
@aaronventure the table is updated to show the new logic layers that you define.
The real change is in the complex group manager tab (which is part of the updated UI layout once you reset your workspace).
-
@Christoph-Hart I'm not seeing it
Edit: Ah I think I need to build with some newer commits, but that webview stuff is still enabled and giving me build errors.
-
@Christoph-Hart I've just been attempting to open some of my older projects in the latest develop build of HISE.
Any projects that are using Group Xfade immediately segfault when I play a note. I believe this is probably related to the new sample mapping stuff.
Here's the stack trace.
Group index is -1, might be the issue
-
If I move
group += 1
from line 1551 to line 1558 it seems to solve the issue - not sure if this is correct though? -
This all sounds quite exciting, but I also don't really get it right now.
All I would say is, I find the system of disabling disabling RR's with enable.RoiundRobin(false) and then writing custom RR logic and using setActiveGroup(int) to be very intuitive.
I don't entirely agree that "improvements" are always better than backwards compatibility - especially if intuitiveness is affected.
-
@Orvillain you can still do that. It just adds another layer on top of that so that you can implement more complex layouts more easily plus there are a few new functions that only work with this new mode.
-
@d-healey I have to check this as this is not something that I would brute force fix, but it should be pretty easy.
Can you send me a samplemap that crashes?
-
@Christoph-Hart Sounds great. I'm looking forward to docs + Dave's video!
-
@Christoph-Hart said in The Sample Map of The Future: Escaping the 20th Century Sample Mapping Paradigm:
Can you send me a samplemap that crashes?
BellAndBone/SampleMaps/trumpet_sustain.xml at main
BellAndBone - Trumpet and trombone sample library
Codeberg.org (codeberg.org)
It looks to me like the
group += 1
is on the wrong side of the else. Because, from what I understand, it should happen when we're not using the complex group manager. -
@d-healey Alright that's fixed - that logic is a bit convoluted because as soon as something is not zero based (like the old RR group values were) it breaks my brain, but you can thank that deficiency of mine for not having to write Lua all day.
-
Hey - are there any good tutorials that can get a beginner into this complex group editing stuff???
-
@Orvillain it's not ready yet but we did get a mini tutorial in the last meet up, think it was in April. Video is on my YouTube channel
-
@d-healey Sorry, do you mean the feature isn't ready yet? I'll go and dig out the meet up video. I can join those in the future now I'm no longer at inMusic !!
-
@Orvillain Yeah the feature is in a kind of beta state - at least it was last time I checked.
-
Alright, let's continue the discussion here. I'll address a few points that David mentioned here
No apparent way to revert to the simple group editor after enabling the complex one.
yes, you somehow have to delete & recreate the sampler module, but this is just an intermediate state, ideally this will be stored with the samplemap at some point, but I haven't completely figured out the data model yet - there are up and downsides to storing the complex group information within the samplemap vs. as separate entity and this affects how to reset it obviously.
Workflow felt odd compared to the old system, as all samples appear in one big pool rather than in pre-defined groups.
Hmm, not sure how to "address" this, as this is the very core of the new system - have it all in one big fat list and add layers of organisation on top of it. You can click on any group button in a layer to only show the samples that match this group value (just like you can do with the old RR display in the top right), but maybe we need more fine-grained tools to control which samples to show / hide as I can imagine this gets tedious with large sample sets - maybe some kind of bookmark feature that allows you to quickly recall sample selections to show.
Exact purpose and use of the batch processor.
If you have multiple layers you can assign multiple tokens at once (this mimics the UX of the old file import dialog), also it gives you a console log of what happened. It's definitely a power user tool though and might not make it in the final version...
How to control crossfade via the GUI without scripting.
The inbuilt sources already offer quite some options for non-scriptable control:
-
MIDI CC
-
global modulators
-
event data (ok for this one you need at least one line of code that sends the value).
-
How multiple layers interact with each other in practice.
-
When or why to disable the cacheable or purgeable flags.
-
Purpose of the ignore flag beyond possibly scripting control.
These are covered in the doc section (after the nerdy bit stuff):
HISE | Glossary | Complex Group management
A indepth explanation of the new group management system for the HISE sampler module
(docs.hise.dev)
But it might not be explained in the Best Way Possible (tm). One thing I was working on was a example project that created artificial samples (sines, triangles, saws) that covered / showcased all features / combinations which might offer a more hands-on experience, but that's not finished yet.
Why crossfade layers affected articulations that weren’t meant to be crossfaded.
That's precisely what the ignore flag is for - if you have samples that shouldn't be affected by this, you enable the ignore flag for the xfade layer and then assign all samples that shouldn't be faded to the ignore group. I'll check that this works real quick, might be possible that there's a regression already.
-