Subject: MAX Digest - 18 Apr 1999 to 19 Apr 1999 (#1999-120)
Date: Tue, 20 Apr 1999 00:00:17 -0400
From: Automatic digest processor 
Reply-To: MAX - Interactive Music/Multimedia Standard Environments
To: Recipients of MAX digests 

There are 9 messages totalling 351 lines in this issue.

Topics of the day:

  1. (Re:) scratching controll
  2. buffer~ question >
  3.  (2)
  4. MSP Standalones
  5. High-res pitch bend?
  6. Sensor question (2)
  7. floats in msp


Date:    Mon, 19 Apr 1999 10:17:01 +0200
From:    jvkr 
Subject: (Re:) scratching controll

Nathan Chase once wrote:

>The pitch wheel is the only real way to get the
>resolution of a "record" because of the 15-bit resolution.

( 2 ** 15 = 32768, 32768/44100 = 743 ms, and then most pitch wheels send
only 8-bit (6 ms))

Off course this is only true in a one-to-one relation; the controller
info coming from the wheel is translated directly into position info.
When real scratching, with real turntables and real records, you find
that you have to apply force (rather then position) to a more complex
system of mass and resistance. Building this type of inertia into a patch
results in a more true relation between the type of controll and the
audible result. The way to achieve this can be very simple: transforming
controll info to audio and feeding it into a low-pass filter with a
cutoff frequency between e.g. 0.01 and 1 Herz (very (s)low). The low-pass
filter provides a second order relation, rather then a one-to-one first
order. Like this it is also possible to enrich the lowlow resolution of
the midi-controller, basicaly by giving it a different meaning (force
instead of position).


PS. The same principle (of the low-pass filter) could be aplied to a
stream of numbers:

max v2;
#N vpatcher 295 87 510 362;
#P user multiSlider 6 108 184 149 0. 127. 1 3193 15;
#P toggle 6 8 15 0;
#P newex 6 25 50 196617 metro 20;
#P newex 6 44 69 196617 drunk 128 10;
#P user hslider 51 62 18 128 128 1 0 0;
#N vpatcher 194 139 443 290;
#P newex 90 35 124 196617 expr pow(1.037\\\,$i1)-1;
#N comlet f out;
#P outlet 20 104 15 0;
#N comlet cut-off;
#P inlet 90 18 15 0;
#N comlet i or f in;
#P inlet 20 18 15 0;
#P flonum 20 80 35 9 0 0 0 3;
#P newex 20 57 151 196617 expr (($f2*$f3)+$f1)/($f2+1);
#P connect 0 0 1 0;
#P connect 1 0 4 0;
#P fasten 1 0 0 2 25 99 175 99 175 54 165 54;
#P connect 2 0 0 0;
#P connect 3 0 5 0;
#P connect 5 0 0 1;
#P pop;
#P newobj 6 83 55 196617 p low-pass;
#P connect 0 0 5 0;
#P connect 1 0 0 1;
#P connect 2 0 0 0;
#P connect 3 0 2 0;
#P connect 4 0 3 0;
#P pop;


Date:    Mon, 19 Apr 1999 09:24:20 +0100
From:    david stevens 
Subject: Re: buffer~ question >

hi Philip.
> In the help file for buffer~, it shows that you can connect the output
> of buffer~ to a number box to see the time in ms when you click on or
> move the mouse over the waveform.  It even says, "This can be used for
> scrubbing."
i've not done this myself, but i would guess that you use the numbers coming
out of buffer~ to tell peek~ (or is it poke~?) where to read the buffer~. so
your audio output comes from peek~. (i've not actually had occassion to use
peek~ & poke~ yet, so i might have this totally wrong - and i'm not near to
manual right now!)
if it's not that, try using the numbers to drive the start point of play~ or
groove~.   in fact (thinking on my feet here) you might be able to use
[startloop] and a small fixed length loop in groove~ to hear a small loop of
sound you're scratching.

hope that helps



Date:    Mon, 19 Apr 1999 12:39:21 -0400
From:    James Lawrence Keepnews 


>I'm a student working on an interactive installation project in which I'd
>like to include projected video and still images. I'm sorry to ask such a
>broad question, but could some of you who have tried this give me some
>of what's involved in incorporate visual stuff into Max? I'm especially
>concerned about file size and compression issues.
>Thanks for your help.

Jeff Burns' recommendations re: video hardware/resolution considerations
are quite right. It's also worth noting that loading and playing
QuickTime movies leads to a nasty RAM leak -- play a loaded movie, open
the Max window, and watch your RAM amount drop continuously and
precipitously. Loading the movie into RAM directly was a solution
suggested by Jeff. The only implementation I've seen of this was the
"movieplus" object that I believe was in a beta state when I last used
it and, while it had many more features than movie/imovie (dynamic
placement on the screen, uses of loops, &c.) it was way buggy and not
very dependable; it might be moreso now. Are there other ways to plug
video into RAM directly within Max?

But the movie/imovie objects are not your only choices if your ambit is
as broad as seeking to "incorporate visual stuff" would suggest. There
are externals like bomb, which lists towards trippy, screen-saver fx,
IMnot-soHO, and pics, which allows for layering, tinting, transparency
and many other cool utilizations of the PICS file format (easily
constructed in Director).

Can I rant? Such a question...I've been very disappointed by the lack of
a unified graphics environment in Max. Yes, there's a graphics window
where you could place PICS, but you can't run movies therein or vice
versa, and that doesn't even bring things like the pict object into
consideration. As MSP encourages a wholly laudable momentum in the
direction of digital audio, I hope Max's real-time graphical modulation
capabilites won't be pushed too far onto the back-burner. My wish list
would include a Universal Graphical Environment, where
anything/everything imagistic could reside in a spirit of goodwill and
harmony (or their extreme opposites), a plug in the QT RAM leak and some
means of utilizing the vector graphics layer in QT 3 in the Max
environment. Looking ahead, I've been given to undertsand that QT 4 is
aiming towards the functionality of the pics object within its own codec
but with multiple layers of video. How cool would that be? Cooler still
if it could be dynamically triggered by anything outletting from

   ~      > --- James Keepnews --- <  "Don't quote anybody, Sir!"
 (.-.)    > -- Multimedia Yahoo -- <
    \                 *                           -- Krishnamurti
   -      > - - <


Date:    Mon, 19 Apr 1999 09:52:07 -0700
From:    David Zicarelli 
Subject: Re: MSP Standalones

dominic robson  writes:

>Just a quick query which i couldnt find when searching the list
>archives...Ive been having problems building MSP standalone apps that will
>run on machines without a MSP licence/authorisation. Im using
>MaxPlayFat3.5.9 and ApplicationInstaller1.1.1 to build the standalone. At
>loading the patch on a non max/msp authorised machine it asks for an MSP
>code. If you refuse it will only work in demo mode ie MSP can only be
>turned on once before it disables. Presumably im missing something
>relatively straightforward. Cheers for any help...

You need to use MaxMSPPlayPPC3.5.9 to build your standalone.
This contains the runtime version of MSP that doesn't ask for
a key disk.

David Z.


Date:    Mon, 19 Apr 1999 10:17:16 -0700
From:    Matt Wright 
Subject: High-res pitch bend?

Nathan Chase  wrote:

> The pitch wheel is the only real way to get the
> resolution of a "record" because of the 15-bit resolution.

What device are you using that outputs 14-bit MIDI pitch bend data?



Date:    Mon, 19 Apr 1999 13:49:03 +0000
From:    Bob Gluck 
Subject: Sensor question

I am working on a piece involving a Basic Stamp and various sensors with
Max. I am
seeking ideas about ways to capture vocal data by means other than
microphone. Does
anyone know if there exists any type of sensor (sonor?) that can read the
size of a
mouth cavity, for instance (e.g. as it changes by articulating different
sounds)? Any other ideas?

Bob Gluck


Date:    Mon, 19 Apr 1999 13:11:12 +0100
From:    Christopher Dobrian 

Philip  wrote:

>In the help file for buffer~, it shows that you can connect the output
>of buffer~ to a number box to see the time in ms when you click on or
>move the mouse over the waveform.  It even says, "This can be used for
>Is there a way to hear this?  Or is it just for viewing?

Sorry for the redundancy, but there have been enough questions about
scrubbing audio recently that I thought I'd repost this super-simple demo
of one way to use the mouse in a buffer~ window for scrubbing.

max v2;
#N vpatcher 50 49 421 223;
#P comment 66 25 72 1310730 Load in a sound.;
#P comment 153 90 185 1310730 Click or drag on the sound with the mouse.;
#P toggle 10 88 15 0;
#P message 32 24 32 1441802 read;
#P newex 32 113 32 1441802 dac~;
#P newex 114 64 50 1441802 sig~ 1.;
#P newex 32 87 98 1441802 groove~ scrubme;
#P flonum 32 64 78 10 0 0 0 22;
#P newex 32 43 98 1441802 buffer~ scrubme;
#P comment 132 45 151 1310730 Double-click to see sound in buffer.;
#P fasten 4 0 3 0 37 82;
#P fasten 7 0 5 0 15 108 37 108;
#P connect 6 0 1 0;
#P connect 1 0 2 0;
#P fasten 3 0 5 1 37 108 59 108;
#P connect 3 0 5 0;
#P connect 2 0 3 0;
#P pop;

Also, the patch described in another posting by Nathan Chase
 sounds very sensible (and much more "musical" than
dragging a mouse), so you might want to look at his patch, too.


  Christopher Dobrian / Department of Music / University of California,
  Phone: (949) 824-7288 / Fax: (949) 824-4914 /


Date:    Mon, 19 Apr 1999 17:11:59 -0400
From:    Michael McNicholas 
Subject: floats in msp

dear maxers,

I am working on a collection of MSP externs than perform bitwise
operations on signals after multiplying each signal by 2e-31 and casting
the result to an unsigned long. The result of the bitwise operation
(either |,&,^ or ~) is then multiplied by the reciprical of 2E-31 and cast
to a float again.

I am wondering how long a float is in MSP (been assuming it is  32 bits)
and (excuse my inexperience) how many bits are for the exponent (asumming
4). If people have any info on the floats in MSP or any suggestions, I
would appreciate any tips.

I have been masking each number by -1024 to remove the exponent bits and
high frequency noise. The affect of the operation is distorion for complex
tones and quasi ringmodulation for simple tones. I am certain their has
been talk along similar lines in the past, but could not find any
documentation. I have heard you recieve a quicker response if you
pretend to be a woman, so...I am a woman..and uh...and I am very hot.

Thanks in advance,
michael (uh... michelle)


Date:    Tue, 20 Apr 1999 08:37:40 +1000
From:    Garth Paine 
Subject: Re: Sensor question

Hi Bob

>I am working on a piece involving a Basic Stamp and various sensors with
>Max. I am
>seeking ideas about ways to capture vocal data by means other than
>microphone. Does
>anyone know if there exists any type of sensor (sonor?) that can read the
>size of a
>mouth cavity, for instance (e.g. as it changes by articulating different
>sounds)? Any other ideas?

This is a very tricky situation because of the fact that you can't stop the
singer moving their head.  I though that you could use the VNS and a video
camera with a zoom lense to focus just on the mouth, however movement of
the head would be registered as well.  The other difficulty is that the
lips will of course open and close and therefore travel accross the entire
sensing area.  The only Sonar sensor I have used is the Polaroid, but it is
not possible to callibrate it to such small measurements and certainly not
something you would want in your mouth.  There are lots of proximetry
sensors available for commercial industrial applications, but again they
are not particuarly small. although there may be some miniature ones
available - you could call a company that specialises in PLC's and
industrial automation, they may have some mini-ones.



See information about my immersive interactive sound installations

Activated Space
. Composer, Sound Designer
.. Interactives Designer
... Interactive Installation Artist
.... Exhibition Consultant


End of MAX Digest - 18 Apr 1999 to 19 Apr 1999 (#1999-120)