Subject: MAX Digest - 30 Apr 1999 to 1 May 1999 (#1999-132)
Date: Sun, 2 May 1999 00:00:03 -0400
From: Automatic digest processor 
Reply-To: MAX - Interactive Music/Multimedia Standard Environments
     
To: Recipients of MAX digests 

There are 8 messages totalling 334 lines in this issue.

Topics of the day:

  1. supersonics (3)
  2. Real-Time Sequencer
  3. MAX Digest - 29 Apr 1999 to 30 Apr 1999 (#1999-131)
  4. Reinventing the wheel?
  5. Max and PB145
  6. more supersonics

----------------------------------------------------------------------

Date:    Sat, 1 May 1999 07:29:07 +0200
From:    Jeffrey Burns 
Subject: supersonics

Thanks again for all the help on my supersonics question. Peter Castine's
advice of filtering the input to a ring modulator seems very practical. But
just one more question: Could it be that the MOTU 2408 hardware filters out
the supersonics anyway before it does d/a conversion? (I'll have to hire a
dog for tests, since my old ears are down to about 15000 Hz.)

Jeff Burns

http://www.snafu.de/~jeff

------------------------------

Date:    Sat, 1 May 1999 00:21:08 PDT
From:    Chris Tignor 
Subject: Re: Real-Time Sequencer

>
>Date:    Fri, 30 Apr 1999 02:28:38 -0700
>From:    Charles Lyons 
>Subject: Reinventing the wheel?
>
>I'm having some trouble with a live performance sequencer I'm building
>around the coll object. The basic idea is for the sequencer to store a
>looped pattern of notes which can be mangled in various ways as it plays
>back, or exchanged on the fly for a different pattern entirely. Where I've
>run into trouble is with the pattern-switching function.
>
>I'm using coll for a couple reasons: I want each note of a pattern (and its
>associated velocity and duration) to be independently controllable by a
>Peavey PC1600 (like an analog step sequencer), I want to be able to use
>patterns that cycle over several measures, and I want to be able to have
>several of these going at once, each on its own channel. The coll object
>fits my requirements in every respect except one: switching the data it
>contains to a different pattern.
>
>My plan was to include several "storage colls" in each subpatcher (one per
>channel) of the sequencer and use the "refer" command to point each
>channel's sequence coll to the appropriate storage coll. Changing patterns
>would be done by sending a "pattern change" number to all of the
>subpatchers, each of which would then prepend its own unique name in front
>of the number and pass that label on to the "refer" message which would
>point the sequence coll to the storage coll of that name (ie subpatcher "A"
>receives pattern change 9 and sends "refer A9" to its sequence coll).
>However, there doesn't seem to be any way to format the argument for the
>"refer" command, which means I'd have to embed a separate "refer [coll
>name]" message for each and every coll in each subpatcher. Considering the
>number of colls I'd be using this seems impractical. What I really need is
>something that works like a coll but responds to the preset object (or some
>equivalent).
>
>If it isn't obvious by now, I'm using an old version of Max. Is there an
>object or objects in 3.5 that would make my problem trivial, or is there
>some better way to do what I'm trying to do that I've completely
>overlooked?
>
>Thanks in advance for any advice,
>
>
>Charles.
>
>
I myself have been designing something of a live-performance sequencer for
quite some time.  After trying and discarding various means I decided on the
use of the "detonate" object which is new to MAX 3.5  By creating different
rhythms on different tracks within the object and selectively switching
between these tracks, the type of "pattern exchanging" you refer to can
easily be done.  Also, detonate can playback these patterns at virtually any
rate, allowing such interesting possibilities as switching easily between
patterns in 3/4 time and those in 5/4 time or whatever not to mention a
whole other slew of rhythmic phenomenon live-performance geared sequencers
remain oblivious of.  Each note can be programmed to be sent out on its own
channel as well as all the other standard midi parameters and an additional
two parameters (x1&x2) which can be used for whatever you creatively decide
to map them to.  All this data can, of course, be mainpulated in real-time
via your Peavey 1600 (as I do with my Peavey 1600).  I created "sequences"
of measures as you have suggested you'd like to do by creating several
arrays (funbuff) of these measures (all on saparate tracks in detonate) and
indexing through the tracks upon each one's completion.  I also created
arrays of sequences called "scores" to index through the sequences.  As each
of these three elements (measure, sequence, and score) can be as long as you
can think it through to design, one never need hear the same program
material twice if that be the goal.  As far as having multiple independent
sequencers, I have two completely independent sequencers with pre-programmed
measures, sequences, and scores of sequences and three more which I can
record (detonate does this nicely) patterns into on the fly which are
automatically synced up with one of the two main sequencers.
I have run into some difficulties with detonate such as loading/saving
multi-track midi files into other detonate objects.  Also switching between
midi tracks using the "mute" and "unmute" functions simultaneously  is
glitchy and I had to opt for sending out all my tracks at once (up to 32)
and screening out the ones I didn't want, a rather large run-time
compromise.  Good Luck.

Chris Tignor

_______________________________________________________________
Get Free Email and Do More On The Web. Visit http://www.msn.com

------------------------------

Date:    Sat, 1 May 1999 10:12:59 -0400
From:    Stonewall Ballard 
Subject: Re: supersonics

Jeff,

There are *no* supersonics in the digital realm, at least, not the
way you seem to mean. A D/A converter has to filter out the
reflections of the spectrum that occur above s/2, but it can't
eliminate the tones caused by aliasing (aka foldover).

   - Stoney

At 7:29 AM +0200 5/1/99, Jeffrey Burns wrote:
>Thanks again for all the help on my supersonics question. Peter Castine's
>advice of filtering the input to a ring modulator seems very practical. But
>just one more question: Could it be that the MOTU 2408 hardware filters out
>the supersonics anyway before it does d/a conversion? (I'll have to hire a
>dog for tests, since my old ears are down to about 15000 Hz.)
>
>Jeff Burns
>
>http://www.snafu.de/~jeff

  ----------------------------------------------------------------------
Stonewall Ballard                                       Stonetics, Inc.
Home: stoney@sb.org                              Work: sb@stonetics.com
http://stoney.sb.org/                         http://www.stonetics.com/

------------------------------

Date:    Sat, 1 May 1999 09:27:53 -0700
From:    Keay 
Subject: Re: MAX Digest - 29 Apr 1999 to 30 Apr 1999 (#1999-131)

Hello All,
  Have any of you had experience trying to run simple sequencing Max
Apps on older powerbooks?  Specifically PB145?  I have MAX 3.5.8 and
have built an application (using the 68k option) and it doesn't fly.  I
assume it is because the PB isn't a 68k machine?  But, I think I have
heard of people using this machine with MAx in the past.  Please advise
on any possible solutions/options.

Thanks,
keay@hooked.net

------------------------------

Date:    Sat, 1 May 1999 19:23:42 +0200
From:    Peter Castine 
Subject: Re: supersonics

On around 1-5-99 7:29, Jeffrey Burns said something like:

>               Could it be that the MOTU 2408 hardware filters out
>the supersonics anyway before it does d/a conversion? (I'll have to hire a
>dog for tests, since my old ears are down to about 15000 Hz.)

DACs include a low-pass filter set just a tad lower than the Nyquist
frequency. "Just a tad lower" because it's impossible to build a
"perfect" low pass (0dB damping for frequencies under the cut-off freq,
infinite damping for higher freqs); in the real world, filters can only
dampen a finite number of dB per octave.

But the lowpass comes after the DAC. Not that that makes a lot of
difference to any of our ears.

[
Apropos dogs: I once had a student bring her dog when I was giving a lab
course that included measuring the frequency response of a Neumann
amplifier. Poor dog wasn't happy when the oscilator went above 10 kHz.
But at about 21 kHz the amplifier wasn't very happy either--it just
wasn't amplifying any more. There are limits to what our audio equipment
will do.
]

Double-checking to make sure I'm not making any stupid mistakes in the
above, I am reminded of another reason why foldover once used to be such
a bogeyman in DSP. Back in the early days of digital recording, you might
be working with ADC/DAC systems where realistic sampling rates would be
in the area of 5 or 10 kHz or thereabouts. In these systems you might
well be recording an audio signal with audible components higher than the
Nyquist freq. Your recordings of the Paganini Caprices are going to sound
a bit wierd on playback.

The whole point of moving sampling rates up to 44.1 (and 48) kHz was to
get the Nyquist frequency so high that distortion from foldover would not
be an audible problem. This doesn't prevent foldover entirely, as you
discovered in your ring-modulator experiments. But if you're the sort of
person who would enjoy ring-modulating Maria Callas, you probably won't
be completely averse to foldover effects, either.-)

Cheers,

Peter

Duke Ellington: If it sounds good, it *is* good!
Peter Castine:  If you can't hear it, don't worry about it. Let Fido
worry.

----------------- http://www.prz.tu-berlin.de/~pcastine/ -----------------
Dr. Peter Castine          | I am very pleased to announce that the
4-15 Music & Technology    | 26th International Computer Music Conference
                           | will take place in Berlin in the year 2000.
                           | We look forward to seeing you here!

------------------------------

Date:    Sat, 1 May 1999 21:27:50 +0100
From:    wolfgang heiniger 
Subject: Reinventing the wheel?

Charles Lyons wrote

>However, there doesn't seem to be any way to format the argument for
>the "refer" command

As far as I understand it : the object sprintf should exactly do things
like that.

wolf

------------------------------

Date:    Sat, 1 May 1999 22:32:37 +0200
From:    Peter Castine 
Subject: Re: Max and PB145

On around 1-5-99 18:27, Keay said something like:

>  Have any of you had experience trying to run simple sequencing Max
>Apps on older powerbooks?  Specifically PB145?  I have MAX 3.5.8 and
>have built an application (using the 68k option) and it doesn't fly.  I
>assume it is because the PB isn't a 68k machine?  But, I think I have
>heard of people using this machine with MAx in the past.  Please advise
>on any possible solutions/options.

But the PB145 _is_ a 68k machine. More specifically, a 68030 running at
25 MHz.

Yes, you can run Max on a machine like this. No, you can't run MSP on a
machine like this. According to GURU the max. memory configuration on a
PB145 is 8MB, which may not be enough for a big Max app. The 145 has only
2MB memory on the motherboard, and 2MB is not enough for Max under a late
7.x OS version.

In fact, Max 3.5.8 says it wants at least 3000 kB of RAM to run. You may
have more luck with an older Max version.

How much memory does your PB have. What exactly are the symptoms of "it
doesn't fly"? It crashes on launch? Says "I can't run on this machine"?

Hope this helps,

Peter

----------------- http://www.prz.tu-berlin.de/~pcastine/ -----------------
Dr. Peter Castine          | I am very pleased to announce that the
4-15 Music & Technology    | 26th International Computer Music Conference
                           | will take place in Berlin in the year 2000.
                           | We look forward to seeing you here!

------------------------------

Date:    Sat, 1 May 1999 18:19:53 -0400
From:    Michael McNicholas 
Subject: more supersonics

I believe supersonics can exist in a 44.1 environment, but sr/2 will act
as a mirror which reflects frequencies above the sr/2 as that distance
below it. ie a tone 10k above half the sampling rate will sound like a
tone 10k below the sampling rate. So a 44100 tone will be like a zero tone
as the wave is in the same place in its' phase every time the sampling
agent asks for its amplitute (if sr=44.1k).

 Additionally, frequencies above the sampling rate (not just sr/2) will be
relected back so far from nyquist that they act as if having negative
frequencies (until negative nyquist folders them back)

here is a patch that demonstrates this.

max v2;
#N vpatcher 185 74 585 374;
#P message 189 55 105 1441804 0 \, 88200 20000;
#P message 27 57 85 1441804 44100 10000;
#P newex 118 86 50 1441804 line 0;
#P user ezdac~ 108 193 152 226 0;
#P number 118 117 102 12 0 0 0 22;
#P newex 118 137 50 1441804 cycle~;
#P comment 16 84 100 1441804 go to 44.1K in 10 sec;
#P comment 192 76 100 1441804 0 to 88.199997 in 20 secs;
#P connect 2 0 4 0;
#P connect 2 0 4 1;
#P connect 3 0 2 0;
#P connect 5 0 3 0;
#P fasten 6 0 5 0 32 76 123 76;
#P fasten 7 0 5 0 194 76 123 76;
#P pop;

peace
michael

------------------------------

End of MAX Digest - 30 Apr 1999 to 1 May 1999 (#1999-132)
*********************************************************