Just wondering… what’s the status on this? No pressure, take your time. Just was curious how the development is coming along.
Also wondering… is there any other module right now that can play samples?
Just wondering… what’s the status on this? No pressure, take your time. Just was curious how the development is coming along.
Also wondering… is there any other module right now that can play samples?
Sickozell has a few modules that let you load your own samples to play: Sampler, Player, DrumPlayer… They are not 100% done (I have to add some right-click menu support) but close enough to be usable:
I de-prioritized the STSP a bit once I got the firmware to the point where it could run these modules. The main thing the STSP offers that can’t be done on any existing module is the ability to stream super long samples from disk (up to 4GB) since it has a fixed buffer size and loads from disk what it needs as it’s playing.
this ability will be most excellent to have on mm!
Thanks a lot of the info!
Looks like those need the 2.0.0 firmware… will try it out tomorrow!
Once 2.0 firmware is out the door, I’m hoping the STS may be at the top of the product backlog.
likewise! disc streaming longer samples will be a huge boon
Just checking on its availability, be it on VCV or MM itself.
whatever day it comes, it will automatically start snowing outside and turn into christmas day
I’m still working on it. This is maybe TMI but I went back and started over from scratch, as the old implementation was a mess. The STS was originally written in C, and then wrapped in a C++ wrapper when we did the Sampler module, and then wrapped again in the CoreModule layer when we ported it to the MetaModule, and it was getting pretty hairy (not to mention the original code was not very clean or well organized – I was still learning a lot about embedded programming!). A large portion of the STS is dedicated to the sample/bank management which is not relevant on the MetaModule since we have a screen to show the sample/folder name and a file chooser dialog box to pick the sample.
Anyways the new version is designed for the MetaModule from the ground-up, taking advantage of AsyncThreads and an understanding that disk access is a shared resource. I’m keeping it simple so that it can be a model for streaming sample playback modules.
not tmi at all imo! its good to know that when it arrives, it will be working solid with the mm. really looking forward to putting it through some paces!
Can’t wait to get the STS sampler for MM. I previously owned it - awesome, and intuitive sampler. I personally wouldn’t mind paying for a high quality 4MS sampler and a high quality Granular component module that processes live input even for use within VCV Rack. You would be able to roll your own sample mangling/granular devices - there wouldn’t be anything to compete with it IMO as I wasn’t that impressed with any of the granular VCV rack devices currently available. Currently I’m programming my own granular/sample mangling devices on the ER-301. I miss the high quality sonics of granular devices within VCV Rack and in that regard I was disappointed with the Path Set collection for example.
So there’s the simple player now. But what about the STS type of sampler?
Same, it will boost the MM value
Dan has abandoned porting the STS due to, IIRC, major technical issues, which is why he created the streaming sample player, see this post: https://forum.4ms.info/t/sts-does-not-seem-to-work/1571/3?u=bobh
Note also this comment from Dan on the Basic WAV Player:
So we should expect the STS features in MM at some point
kind of doubt we’ll see anything exactly like the sts. one of metamodule’s drawbacks imho is somewhat slow loading of samples into ram (having them in ram allows more funky business with sample playback) from usb/sdc, which i think the sts excels at?
regardless it’d be cool to see some kind of version of sts! was hoping to have a few of the features from sts in the basic wav player, such as cv’able play start/loop length offset option, v.oct pitch, etc… but then it wouldn’t be a ‘basic’ player. here’s hoping an ‘advanced wave player’ (or recorder!), with some of those cool features, could be in the works for mm down the road at some point.
Yes, to dump the STS for a basic wav player was kind of disappointing imo. Though I do appreciate and understand the more thorough approach of building something new up from the ground. A more advanced sampler 2025 version with high quality pitch shifting (Think assimil8or) and perhaps some inputs that would allow you to roll your own granular/samplemangler device would be amazing.
definitely would love to have a tape style ‘speed’ pitch shift option as well as a granular pitch shift option!
also could be cool to also ave an option in there for time stretching capability with cv’able stretch. the insanely powerful paulstretch library is open source. would be amazing to have something like the paulxstretch plugin, in mm form. not sure mm cpu could even handle that.
Just to expand on the mention of Assimil8or: as many of you probably know it has a unique quality when it comes to transposing samples up/and down. Probably the best quality I’ve heard so far - even better than my old Emulator III Keyboard. Sample a C3 synth, and play it two octaves down and it becomes a powerful bass with impact and punch in the low range. To be frank I really love old skool sampling where samples play faster the higher you play them and vice versa. Been through all of the VCV samplers, and I don’t think there’s one with a really high quality transposition algorithm. I owned the assimil8or and STS at the same time - and one thing I loved about the STS was its simplicity. How easy it was to cv control sample selecting, sample start point etc. Despite the simplicity you could still do advanced stuff with it. I always thought a STS with the assimil8or’s quality transposition would be mind-blowing. So like mentioned earlier: a high quality sampler - sort of a 2025 version of STS (or another name) - would be a dream
Actually the MetaModule loads samples at the same speed as the STS (the bottleneck is the SD card) . The difference is that the STS has a hard limit of only being able to handle two samples at a time. If you limit MetaModule patches to maximum of two Wav Players per patch, you’ll get similar loading times to the STS. It’s only when we try to load lots of samples at the same time from the same SD card that we see it take longer (vs. with the STS to play 6 samples you would need 3x hardware modules and 3x SD cards).
This is the essential obstacle with playing more than ~250MB of samples simultaneously – to best support quickly loading large amounts of data like a computer does it would need a connection to a fast drive like a computer has.
So, it’s not too hard to have the STS code run on the MetaModule (I already had it running at one point, minus the Edit+knob features), but the problem is that it only works well if you never have more than one STS in same patch because it’s not designed to share the SD card. Hence the reason we went back to the ground level and wrote a streaming sample playback engine designed to read from a shared SD card (or USB drive).
The next step is to do something with the same features as the STS