how to make a device to play back digital samples

Started by Ashurbanipal, July 16, 2008, 10:07:46 PM

Previous topic - Next topic

Ashurbanipal

I've got some akai (can convert to wav) mellotron samples and maybe some other samples I want to play live. I don't want to use a disk based sampler because I hate dealing with disks and loading. I don't want to use a PC based sampler because every time I try that, it pops. I don't want to use and EMU vintage keys or something because it doesn't have the sounds I want. I don't want to use a mellotron for the obvious reasons. I don't want to use that MUSE computer thing because I don't have $3000.

So, can someone point me in the right direction toward making a discrete sound module that accepts midi and will play back my mellotron samples? I've found all kinds of message recording chips that don't lose what's in them, but all I can find is really lofi stuff. And the other piece I  have no clue about is how to get the samples in there. I wouldn't want to go through another DA conversion, I would want to burn them into the chip from my PC or something. I figure midi can't be that hard to rig up, once I've got something I can load samples into and play them back at decent quality. The samples by the way are at 16 bit 22khz.

I have a lot of experience building analog effects and tube gear, but nothing digital. And my real job is computer programming so I'm not afraid of any of that. Thanks.

Ashurbanipal

OK I saw in a post below basically how to load up audio:
http://www.diystompboxes.com/smfforum/index.php?topic=65555.0

I need an EPROM and to do what that article says. Are there EPROMs that do 16 bit 44khz and hold several seconds of audio?

Processaurus

Sorry, don't mean to discourage tinkering, but from a musician's perspective, why not use some kind of a rack sampler?

Mellotron is such a fantastic, old, "modern" sound.

pjwhite

This is an interesting idea.  Did you want one digital playback device per key (as a mellotron has one tape loop per key), or a limited number of voices that are assigned to keys as needed (like many polyphonic synths)?  Sharing voices would mean changing the playback rate to control the pitch.  One sample per key would allow all voices to use the same playback rate (44.1kHz) and would require that each key has a different correctly pitched sample.

Some EPROMs are available in sizes up to 2M x 16 bits, which would give you 47.5 seconds of recording on one chip at 44.1kHz, though smaller EPROMs are more likely to be widely available (64K x 8).  You can always use multiple EPROMs to extend the amount of time available.

A basic digital playback voice will require:
1. An EPROM or Flash memory to hold the sample data
2. An address generator to step through the EPROM addresses at a given clock rate
3. A DAC to convert the sample data into an analog voltage or current.
4. An analog filter to remove digital artifacts
5. Control logic to handle starting, stopping and looping the sound.

A small microcontroller would be a good way to handle address generation and control logic.  If you choose a microcontroller with a UART, you could use the incoming MIDI signal directly.

For a limited-voice/assign-as-needed system, you will also need a master controller that accepts MIDI commands and distributes control signals to the voices.