Subject: Re: [linux-audio-dev] using SB Live (emu 10K1) for realtime sample rate conversion?
From: Frank van de Pol (fvdpol_AT_home.nl)
Date: Wed Aug 07 2002 - 00:36:34 EEST
On Tue, Aug 06, 2002 at 02:54:44PM +0200, olaf_AT_expansions.nl wrote:
>
> yes they should be changed independently. The fact is that we want to use an
> embedded PC for the hardware, so the less CPU usage we have the better,
> that's why we prefer a hardware solution.
Hi Olaf,
most (if not all) soundcards that feature downloadable wavetable synths
feature a number of phase accumulators to perform the sample rate
conversion. As a bonus these voices typically also provide (resonant)
filters :-). Routing individual voices to different busses (to get your 4
distinct outputs) could be an interesting challenge. On the other hand the
emu10k driver supports reverb/chorus 'effect sends' per voice, so it can
address at least 4 busses (mix L/R + eff 1/2).
The voice should be set to loop; while your program replaces the
to-be-player portion of the buffer with the appropriate fresh data.
An example of the implementation of wavetable support can be found in the
alsa synth subsystem (in alsa-kernel). The Gravis Ultrasound Classic driver
could serve as an example where the synth is used to playback a pcm stream.
I know code exists to play audio files through the emu8k synth but have no
experience with it (http://www.maz-sound.com/archives/awewaveplayer-03f.tgz)
Of course all this hassle makes your mp3 box very hardware dependend and not
very portable. If CPU power is no objection I would opt for the software
solution (which could give you also the possibility to scrub/play the sample
backward like on a normal deck (turntable). (see alsaplayer / terminatorx).
Cheers,
Frank
-- +---- --- -- - - - - | Frank van de Pol -o) A-L-S-A | FvdPol_AT_home.nl /\\ Sounds good! | http://www.alsa-project.org _\_v | Linux - Why use Windows if we have doors available?
This archive was generated by hypermail 2b28 : Wed Aug 07 2002 - 00:39:56 EEST