Try connecting the dials to a Midi controller
basic synthesizer in Max
- sine wave oscillator
- low pass filter
- LFO
- ADSR
- Midi keyboard control
download
https://github.com/tkzic/max-projects
folder: synth-basics
patch: synth-341.maxpat
basic Midi drum machine in Max
Generating Midi notes
download
https://github.com/tkzic/max-projects
folder: midi-basics
patch: midi-madness.maxpat
Osc synth in Max
Simple synthesizer controlled by touchOsc
download
https://github.com/tkzic/max-projects
folder: osc-synth
patch: tz-synth-4-touchOSC.maxpat
notes
Shows how to use an ipod or iphone as a controller
components:
- Max/MSP
- ipod touch
- touchOSC
instructions
- setup touchOSC on the ipod to send to the host ip address that Max is running on – using port 8000 to send data.
- In the Max patch, try one of the last presets for a reasonable synth sound.
- In touchOSC, use the top (horizontal ) slider in the ‘simple’ layout.
green screen in Max
Live chroma-key example using the built-in camera.
Hacked from jitter help files…
download
https://github.com/tkzic/max-projects
folder: chroma-key
patch: greenScreen1.maxpat
instructions
- click open (screen grab)
- click read – to open a movie file
- click start/stop toggle
- in the grab viewer, select the background color to chromakey, by clicking with mouse
notes
This really works best with an external camera and a large monochromatic background.
components:
- Max/MSP – Jitter
- builtin camera
Max Wii remote examples
A collection of Wiimote patches
download
https://github.com/tkzic/max-projects
folder: wii
patches:
- wiimote_read.maxpat
- wii_vizzie_rotate.maxpat
- ir5.maxpat
- wiimote_ir_xy_synth2.maxpat
- wiimote_pry_synth4.maxpat
- bicycle speed sensor folder (under construction)
installation (Osculator)
- Download and install Osculator: http://www.osculator.net
- Run the Osculator config file: wii3.oscd
- Pair a Wiimote with Osculator (by pressing the red button)
- Set Wiimote Osc output port to 9000
- Use a real Wii remote, not the Nyko. If you do get the Nyko, get the one with motion-plus.
- update Osculator to the latest version
- Under parameters (in osculator) press + to add the little pacman symbol labeled “same address”, and set the the OSC URL to whatever you’ll be using like 9000 for Max
- remember to add the Event type (OSC routing) and value (pacman thing) for every wiimote event you’ll be using
- remember to enter checkbox on the wiimote window for every type of data you want to send
Wiimote read patch
The patch: wiimote_read.maxpat is a common patch for reading data from Osculator into Max.
Load this patch and keep it running in the background for all of the other patches. You will know if the wiimote is working, if the data in the number boxes responds to movement of the Wiimote.
projects:
vizzie rotation effect
Rotates the video input from built in camera.
patch: wii_vizzie_rotate.maxpat
infra-red (IR) musical light painting
Paint using an IR transmitter.
patch: ir5.maxpat
helpful suggestions:
- Make sure wii is transmitting raw IR data in Osculator
- Turn on audio and turn up volume
- Turn on [qmetro] for jitter
IR xy synth
A synthesizer that responds to IR xy data
patch: wiimote_ir_xy_synth2.maxpat
helpful suggestions:
- turn on audio
- turn up volume
- make an audible adsr envelope by turning up the adsr dials
- increase lfo rate
- check the wii-mode updreceive port (should match Osculator output)
- experiment with the ‘gate’ toggle in the middle of the patch
Pitch, roll, yaw (PRY) synth
A synth that responds to pitch, roll, and yaw data
patch: wiimote_pry_synth4.maxpat
bicycle engine simulation
synthesizes engine sounds based on RPM of bicycle wheel with Wiimote in the spokes
5/2014 : under construction – note – this patch not compatible with wiimote_read
- waveguide_engine2c-bike.maxpat
- wheelspeed.maxpat
- bicycle2.maxpat
need to be running Osculator and tracking PRY stuff from Wii – need to adjust scale in engine patch. Also, select 3rd preset for engine sound.
So basically this setup needs to get standardized – use metro to send a steady stream of wheel data. Use the up to date car engine patch, etc., etc.,
A few problems with this concept – for example when the wheel is stopped the signal rate revs up to over 300 – I think because it rotates backwards for a second. Also when the wheel gets really fast, the pulses just stop! – its like the wii-mote is overloaded or something? 4/3/2013 – I have it running so it tracks speed when the bicycle is upside down, as long as you don’t crank it too fast. but as mentioned above – the patch could be cleaned up and simplified.
Max data stream switch
Converting continuous data to binary data.
A sub patch generates a sine wave.
The main patch converts the wave to a switch.
download
https://github.com/tkzic/max-projects
folder: data-stream-switch
patch: data-stream-switch.maxpat
Four ways to build a sampler in Max
- groove~
- sfplay~
- phasor~
- 2d.phasor~
download
https://github.com/tkzic/max-projects
folder: sampler
patch: sampler-341a.maxpat
- sampler-2d.phasor-mod.maxpat
- sampler-file-waveform-mod.maxpat
- sampler-groove-mod.maxpat
- sample-phasor-mod.maxpat
- sampler-record-mod.maxpat
- sampler-selector.maxpat
- sampler-sfplay-mod.maxpat
Google Maps in Max
Draw points in Max by sending latitude and longitude to a Web client via Osc and web sockets.
Uses Ruby, WebSockets, Chrome, Google Maps API, Osc, Max, Jquery, and Node.js… But the Max patch is actually quite simple.
Based on this geocoding tutorial: http://www.sitepoint.com/google-maps-api-jquery/
download
https://github.com/tkzic/internet-sensors
folder: google-maps
files
main Max patch
- googlemaptest.maxpat
html and javascript for Google API
- js/ (folder containing javascript code for map client)
- markers.html (web client)
- mapserver.rb (Osc and Websockets server)
node.js (optional)
- nodeserver.js (local node.js webserver)
running node.js local web server (optional)
To run the project locally, you will either need to install node.js or have a local web server. The instructions assume that you have installed node, as well as the http package.
If you don’t want to bother with node, there is also an online version of the web client running at http://zerokidz.com/gmap/markers/markers.html
intalling ruby gems
Running Ruby 2.0 as well as the following gems:
- osc-ruby
- em-websocket
- json
instructions
1. If you are using the online Web client, go to this URL in a Google Chrome browser: http://zerokidz.com/gmap/markers/markers.html then skip to step 4.
2. In a terminal window start the node webserver
node nodeserver
3. Launch a Google Chrome web browser and type in this URL
127.0.0.1:8081/markers.html
4. In another terminal window start the ruby server for Osc and websockets
ruby mapserver.rb
5. Now in the Web Client (Chrome) press the “OSC” button underneath the map – to open the web sockets connection with the ruby server.
6. Open the Max patch:
googlemaptest.maxpat
7. Now you should be able to click on the message boxes for Bethel and Rumford in the Max patch to add location markers to the map in the browser.
destroying information in Max
[degrader~] eliminates audio data by reducing sample rate and word size.
download
https://github.com/tkzic/max-projects
folder: downsampling
patch: nothingness.maxpat