DIY Expander/Sampler???

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
Hello!

This question may be a little bit curious but in this forum... :cool:
Ok, is here anybody who is interested in building an expander based up on samples?
Programming that in software isn't a big problem (there are several solutions), but doing that in hardware?
I'm thinking about if it would be possible to build an hardware system that is acting like Hauptwerk or GigaStudio. With a Microcontroller, a DSP or at last a FPGA , I should be possible to interface an storage medium like a harddrive or a flash memory. There are enough examples how to do it. The only work to do is now how to loop an mixing down several samples based up on MIDI-Messages.
Regarding polyphony/multitimbre I have following idea:
If we look at a chruch organ, we can use one Microcontroller/Storage-System for one stop, so this reduces costs because smaller storage medium and microcontroller(or DSP, FPGA) can be used and the latency is reduced because of the parallel working process. And the system is scalable to increase the number of stops. Since every stop system is working apart the (digital) audio output has to be mixed down by an DSP or something like that.
Ok, thats my idea. Anyone how is interested is welcome to contact me.

Greetings,

AudioAngel
 
im not sure i follow, but you want to build a hardware expander for a software sampler?
Personally the software compressors/expanders available are far better than i could ever build with a dsp, surely you would spend a lot of time doing something people have slaved over before for little personal gain. dont get me wrong i love diy, but id say your time would be better spent on another project...
or perhaps i have missed the point entirely..
 
You do realize that all commercial samplers are essentially just custom (and usually DSP based) computers? Roland and Yamaha may use custom DSPs to build those thing CHEAPER, but when talking about a DIY project, you can probably skip that part (applies to both "cheaper" and "custom DSP").

The main reason these things are more stable and have lower latency (+ too many other benefits to list here) comparing to the software samplers running on your PC is THE SOFTWARE. Conventional computer operating systems have been designed for word processors and web browsers and, particularly, multiple simultaneous instances of them. They concentrate on providing reasonable response times for different applications while maintaining some level of security and high computing power throughput. The way the applications are using the CPU time given to them is fully unpredictable to the OS and tradeoffs have to be made. It's usually the response time (i.e., in our case, latency) that is traded. Also the very different needs of diffferent types of applications make it necessary to have very complicated system software. This leads to a set of issues of its own.

What samplers (and many digital synths, fx boxes, equalizers, etc.) run are custom real-time operating systems. They have been designed for the particular purpose, and thus have very little overhead and very low latencies.

Another thing that makes the hardware devices superior to the software samplers is the analog design. PC components (especially the PSUs) aren't really designed to handle analog audio signals. Actually, even the coaxial S/PDIF connections are often too bad to work properly (weird oscillations, bad ground, etc.)..

I'd say forget the FPGAs and design a custom board with a fast DSP (or even a general purpose microprocessor) and high quality audio DACs and ADCs. Then write system software that is optimized for the particular purpose and hardware. If you need help with the latter part, I'm in. I have wanted to build such thing for a while now, but I just don't have the electronic skills to design a fully featured computer.

PS. I think that both of the legendary late seventies samplers, the NED Synclavier and the Fairlight CMI, were built around Motorola 6800 (yes, with just two zeros) microprocessors. I'm not betting my life on that, though.
 
And just to clarify terminology, word "expander" is, for historical reasons, sometimes used to mean the things more commonly known as "sound modules." Word "expander" is rarely used nowdays because it can easily be confused with the completely different, dynamic processing related, concept (like Optical just did, apparently).
 
Sounds like an interesting project...

As far as interfacing to midi, MIOS may help. The topic of a diy sampler has been brought up a few times on this forum www.midibox.org/forum

for examples of what MIOS is capable of, visit www.ucapps.de for info on applications made by the MIOS master himself, Thorsten Klose.

MIOS is an open source operating system, designed to run on a PIC18F452 microcontroller, and is subject to a user agreement. It is not intended for commercial projects, BTW. (not that anyone here is probably interested in commercial projects.) MIOS will not be able to handle the sampling dsp within the microcontroller, but will require the sampling DSP, RAM and storage functions to be carried out on some other chips/devices.


good luck, from Steve:)
 
Sorry for my late answer, in the last days I was very busy.
By using a DSP programming the algorithm to play and mix the samples shouldn't be a big problem, but how to access a storage medium and stream the samples? I don't now, not yet...
Programming in a language like C or C++ it should be possible to test the main algorithms on a PC an then move them on a DSP or something like that, to build an stand alone system.
So, my suggestion is, first to programm some algorithms. What are your thoughts?
And what about using Linux Embedded? This OS can be very customized and powerful and routines to access a storage medium like a hard disk or compact flash are already onboard. Just an idea...

AudioAngel
 
I have had some experience in this area as I desigend an embedded control system for pipe organs several years ago (which is still being marketed BTW). Cancer ended my R&D (and business) before I was able to complete everything, including an "expander" much like what you describe. At the time, I was considering using a microcontroller to handle all the housekeeping functions and a DSP as the synthesis engine. There are several ways to approach sound synthesis and "additive synthesis" or "reverse fourier" seems to sound the best with pipe organ voices.

Embedded is the way to go. You don't need all the overhead of a CISC system designed to run apps, and you certainly don't need an OS eating up resources.

The problem I ran into was there weren't "off the shelf" DSP products which would do and custom stuff is too expensive on a small budget. That was several years ago and I know there are much better products available now.

I wish I were in better shape, younger and wealthier (and better looking while I'm wishing for things). It would be fun to do such a project.

Have you seen the Ahlborn modules? http://www.ahlborn-galanti.com/
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.