Re: [linux-audio-dev] RE: disk-based real-time sampler prototype released ! please try it.

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: Re: [linux-audio-dev] RE: disk-based real-time sampler prototype released ! please try it.
From: David Olofson (david_AT_gardena.net)
Date: Mon Jul 17 2000 - 08:05:24 EEST


On Thu, 13 Jul 2000, Benno Senoner wrote:
> I fully agree on the need of the open format but when designing we need people
> which know the problematics of the realworld.
> Speaking of myself I have only used "toy" expanders like the
> Roland Sound Canvas. Although I played around with a sampler of a friend of
> mine (long time ago) , I have not a very clear picture how the layering works.
> ( at least from reading in magazines Roland's JV1080 series seem to have a nice
> voice structure, plus they sound really good)
> So someone which could enlighten us about what is exactly needed to satisfy the
> professional users, would be very useful.

Well, the JV1080 is not a sampler, just a sample player with four
internal ROM card expansion slots. (Still no flash modules
available, AFAIK. :-( ) Although it's been around for a while now, it
does have rather powerful voice structures, which to some extent
makes up for the lack of support for user waveforms. (That is, you
can program almost anything on it, but it's LOTS of work.)

It basically has 64 voices, 64 filters (LP/BP/HP/peak + resonance
nearly up to self induced oscillation), and then 32 units that may be
either 1) unused, 2) a booster with clipping or 3) a ring modulator.
The filters can be tuned to exactly track the pitch of the notes
played, which allows rather accurate addition/subtraction of certain
frequencies of a waveform, that persists over the full playable range.

Voices are used on their own, or in pairs. There are 10 different,
hardcoded structures:

1: WG---TVF---TVA--> (This is the only structure that can give
                          you 64 independent voices)

2: WG---TVA-+-TVF-\ (For very steep filters,
           / \ dual resonance freqs,
   WG-----/ +-TVF---TVA--> reso + "tweaking" etc.)

3: WG---TVA-\ +-TVF-\
             +-B-/ \
   WG-------/ +-TVF---TVA-->

4: WG---TVA---+-TVF-\ (This one can result
             / +-B-\ in very aggressive
   WG-------/ +-TVF---TVA--> sounds! :-)

5: WG---TVA-\ +-TVF-\
             +-R-/ \
   WG-------/ +-TVF---TVA-->

6: WG---TVA-\ +-TVF-\
             +-R-/ \
   WG-------/---/ +-TVF---TVA-->

7: WG---TVF---TVA-\
                   +-R-\
   WG-------------/ +-TVF---TVA-->

8: WG---TVF---TVA-\
                   +-R-\
   WG-------------/-----+-TVF---TVA-->

9: WG---TVF---TVA-\
                   +-R-\
   WG---TVF-------/ +-TVA-->

10:WG---TVF---TVA-\
                   +-R-\
   WG---TVF-------/-----+-TVA-->

WG = wave generator
TVF = time variant filter
TVA = time variant amplitude
B = booster (with clipping)
R = ring modulator

In addition to the voice structures, the patches use up to 4 voices
(two pairs). Each voice in a patch has it's own settings for velocity
range, key range, key -> velocity scaling, various MIDI CC routing
etc. Each voice also has two LFOs with multiple waveforms and various
sync sources (such as MIDI clock :-) that can modulate the TVFs and
TVAs in various ways.

Then there is the Performance Patch level. A Performance is basically
16 parts, each one with settings like MIDI channel, volume,
transpose, reverb and chorus send levels and so on. Patches can be
used in up to 16 layers (one for each part), or connected
part-by-part to to the MIDI channels, or anything in between. Thus, a
single MIDI NoteOn can trigger all 64 voices in parallel, if you like.

Performance sidenote:
You can trigger any number of voices with one NoteOn message, and
there are no phase errors whatsoever, as everything is done on one
single RISC CPU. (No sloppy MCU controlling a DSP, that is. There is
a "bug" however; the LFOs and envelope generators seem to be driven
by a timer interrupt, and thus emulate the bad timing of the old DSP
+ MCU synths to some extent... THAT is certainly a feature I don't
want to see again, as it makes it impossible to program fast and
accurate transients using the envelopes.)

As to master effects, the JV1080 has 3 FX units, two that get their
input from the reverb and chorus sends on each part respectively,
and one that can be used as an alternative to the normal dry out +
reverb send + chorus send output setting for a part. The last FX unit
has it's own set of dry, reverb and chorus send levels. IIRC, the
chorus unit can be set up to output into the reverb unit and some
other setups as well.

Uhm, well... What do I miss on this machine? Of course, if it was a
sampler, it would be next to perfect for most normal stuff! I would
like to see a very much better UI, though, as fiddling with a 40x2
display and some 20 buttons + a wheel is rather tiresome with the
amount of parameters we're dealing with here.

Even more flexibility WRT voice structures is wellcome of course,
but there may be performance/optimization issues here. Making the
entire voice structure a single plugin for each voice should be
viable, though, and that way, one can at least avoid the cost of a
"micro plugin" modular voice structure for all the voices that don't
really need it.

//David

.- M u C o S --------------------------------. .- David Olofson ------.
| A Free/Open Multimedia | | Audio Hacker |
| Plugin and Integration Standard | | Linux Advocate |
`------------> http://www.linuxdj.com/mucos -' | Open Source Advocate |
.- A u d i a l i t y ------------------------. | Singer |
| Rock Solid Low Latency Signal Processing | | Songwriter |
`---> http://www.angelfire.com/or/audiality -' `-> david_AT_linuxdj.com -'


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Mon Jul 17 2000 - 11:02:05 EEST