electric

Electric Knicknacks // RISD DM7027

Workshop for Sound and Video Art


02.12.07. Final Project due 02.15.07

• Project ESSAY (1-3 pages)
This should include:
A detailed description of your project.
An examination of your motivations for making it.
An analysis of what you had trouble with in completing the project.
Your evaluation of how successful the project was.

• 3 or more images
(either screenshots or actual photo documentation of the final results of your project).

• Class ESSAY (1 page or more)
This should include:
How you feel about your participation and effort in the class.
What you think about the teaching and progression of the class.
How you think my teaching and progression of the class could be improved.

These things are due in email form by then end of 02.15.07. If you have any questions please feel free to email me.

February 12, 2007

+++++++++++++++++++++++++++++++++++++

02.05.07. Class #9

Final Project Guidelines

1. Scale - Choose a project that you can handle in the next week and a half.
2. Technical Difficulty - Choose something that is challenging but won't break your brain.
3. Conceptual Import - Choose something that is interesting to you and that maybe you don't quite understand. If you want to do something and you don't know why you want to do it, that's a good sign.

Other than that, It's an open field! Good Luck.

February 5, 2007

+++++++++++++++++++++++++++++++++++++

answering machine.zip added to the file section

January 25, 2007

+++++++++++++++++++++++++++++++++++++

01.23.07. Class #6

Homework: 3 things due.

1. The screensaver salon was awesome. seriously beautiful work. Please send me a nice screenshot of your screensaver in action, along with the zip file of your program. (you can take a screen shot of the mac screen by pressing apple+shift+3 / in PCland you can just press the printscreen button.)

2. Project: Make your own answering machine
build an answering machine that can record 4 messages and playback 4 messages. Each message may only be 60 seconds long. the user interface for the program must be separate from the guts of the program in a different patcher window.

suggested objects for use: buffer~, record~, groove~, sig~, ezadc~, ezdac~, gain~, message.

tip: check your inputs and outputs in the DSP STATUS window, which is under the OPTIONS menu.

tip2: one more cool object to look at is the waveform display object. it is the second to last object in the tool palette at the top of the max patch in edit mode. claro?

Alternative Project: Make your own delay / fuzz pedal
additional objects to look at: overdrive~, tapin~, tapout~, degrade~, lowres~.

NOTE: tapin~ and tapout~ are tricky just like buffer~. the tapin~ object is basically exactly like buffer and the tapout~ object allows you to delay the audio coming into the tapin~ object. Make sense? Good.

3. Bring in 3 program sketches for a final project. Each sketch should have some technical and conceptual challenge for you. You decide what this means. Looking forward to seeing them.

January 23, 2007

+++++++++++++++++++++++++++++++++++++

01.22.07. Three Artists

We are overdue to show the three artists we found that are doing interesting things with technology and computers.

In lieu of presenting, please post a comment to this entry with links to your 3 artists and a brief description in each case of what you think is interesting about their work. I'll start!

|| Comment (10)

January 22, 2007

+++++++++++++++++++++++++++++++++++++

01.22.07. Screensaver Project

Homework for 01.23.07

make an animated screen saver using jit.lcd. suggested objects for exploration: metro, random, table and more. bonus points for post processing the output of the jit.lcd object.

references:

Oskar Fischinger
John Whitney
Screen Savers

+++++++++++++++++++++++++++++++++++++

01.18.07. Class #4

class04.zip. In this zip file are the examples that we discussed in both make up classes. Also included are two different solutions to the homework, so if you are having trouble you can check what things *could* look like. I want to emphasize that there are always several solutions to any problem in max. I'm really looking forward to see what you guys bring in.

Good work in the make up classes too. I'm glad we split them over two days. I think more exposure to the material is good. 5 hour classes can get overwhelming, but i think things will be easier from about here on out.

I'm putting together another set of tutorials based around specific objects. I think this will help bring people that have questions or are confused about specific objects up to speed. We will go over them briefly monday if we have time.

January 20, 2007

+++++++++++++++++++++++++++++++++++++

01.16.07. Class #3

Homework: Due 01.22.07

Make a stop motion animation program that can play one image and one sound per step. Use one metro and counter combination to drive them both. The start and end points should be variable, and the sounds and the images should be re-orderable in realtime and independent from each other. (Hint: use a table object like we did in class). Use the ubumenu object to let the user select each frame of the animation and a sound for each step.

We will be working on this project Thursday and Friday, and I may have office hours over the weekend. Send me an email if you are having trouble. We will present our programs and our three artists on Monday the 22nd of January.

Parameters your program should have that you can control with a user interface made in max:
-start/stop
-playback speed
-playback starting number
-playback ending number
-frame order for images
-order for sounds
-menu to select which sound is in which buffer
-menu to select which image is in which jit.qt.movie object.

Objects you should use for this project: jit.qt.movie, buffer~, groove~, metro, counter, ubumenu, gain~, ezdac~, table, message, number box, select, dropfile, and more!

Extra credit: Add some sort of audio or video post processing to your program or both! Objects you could use for this: jit.wake, jit.blur, jit,traffic, onepole~, lowres~, degrade~, gizmo~, and more...

Extra EXTRA credit: Make some of the parameters of your system controllable by something outside the computer. for example, using mouse location to adjust the speed or pitch of something, or volume of one's voice. Objects you could use for this: vu~, snapshot~, mousestate, jit.qt.grab, cv.jit, and more...


NOTE: class 3 examples that we made in class are in the file section.

January 17, 2007

+++++++++++++++++++++++++++++++++++++

the lab is operational

We have 5 computers with max/msp licenses running in the mac lab now. they are the first 5 machines on the right hand side as you walk in the door. If you don't have a computer at home currently you have access the mac lab so use it! see you tuesday.

January 11, 2007

+++++++++++++++++++++++++++++++++++++

01.09.07. Class #2

Review. Tutorials 11-21 in class for clarification.

Lab. make a program with these 8 objects [message, bang, toggle, trigger, metro, print, select, random] that continuously prints message to the max window that is randomized somehow.

Sample sentence: "I was working the hole with the sailor and we did not do bad."
- The Soft Machine by William S. Burroughs.

Discussion.
What is in a computer? data. words and numbers. words are numbers types of numbers, floating point and whole numbers. watch for this when programming computers. when you use an integer or whole number and your program is looking for a float, problems could occur!

How can a computer connect with the world? we are interesting in media created with computers that relates to the world and not just to the computer world. Computers use:

screens and projections
machines to print things
robots to move things
speakers to say things
antenaes and cables to communicate things
sensors to sense things.
keyboards (triggers / switches)
mice
microphones
cameras
tempurature sensors
motion sensors
directional sensors
heat sensors
weight sensors
any combination of these things.

monome demo.

the dumbest sequencer in the world.
example starter files here. Primer for homework for the rest of the week.

Homework:
Build a sequencer that has 32 steps. Each step must be able to trigger an event. This event can be an image, a sound, or something that affects the behavior of the sequencer itself. Prepare some media for the sequencer and come in on tuesday with a sequence or loop composition of what you have made. // remember monday next is MLK jr day. no class.

Find three artists that you think deal with media and computers in interesting ways. Or if you can't find artists that you think deal with media in uninteresting ways. Prepare a short (5 minute ish) informal presentation on why you think their use of media is interesting or why it isn't.

In conjunction with this please review all tutorials to date (up to 30) and use these to assist the building of your sequencer.

January 9, 2007

+++++++++++++++++++++++++++++++++++++

01.08.07. Class #1

Logistics. Installing the program, making sure everything is setup correctly. understanding how the program behaves.

Intital introduction. Max is wierd. Brief history. What it has been used for in the past. What it can be used for now. A question for the students: What do you want to use max for? My answer? To play.

Basics. Navigating the program // distinctions between objects. getting help. left to right. maxobjects.com.

Note: Max is an idiosyncratic programming language. most programming languages strive for uniformity and consistency, while max can have wildly different protocols depending on what the programmer is trying to do. this is unfortunate because it fights against the "instant gratification" factor when programming in max. in short, you will be able to write programs very quickly, but this comes at the cost of learning some funny traits of the program. this is a pattern which develops naturally when you use a computer to make things, as the computer often has a really specific syntax and way of behaving that we have to engage and/or merely tolerate.

Question: what can a computer do? hold data, move data and manipulate data.
In programming languages these parts are referred to as data types and control structures.

thus if we open a jpg image in photoshop the data in the jpg is of a specific type. If we apply a filter to that image, we are processing the data, or sending it through a control structure.

examples of computer programs manipulating data?

break down // processor use and resources.
max - control structures / basic data types and logic / initial bulk of the program (control rate)
msp - audio component of the program / emulates much of max's behavior but has some different protocols. (audio rate)
jitter - video component of the environment. jitter strays further in syntax and data structures. (video rate)

first 5 tutorials in class. Write a program that prints something out over and over again. objects covered: message, bang, toggle, trigger, metro, print.

Break up for 10 minutes. come up with ideas for programs in groups and discuss them.

A word on object oriented programming. Make programs that you can use over and over again. Build your programs out of things you can use over and over again. Build the architecture of your program first so you understand how it will function before you have written it.

Homework. 3 things.
1. Tutorials 1 - 10. Bring in a working program and a broken program. if you understand why the broken program is broken good, if you don't also good. you should come to class understanding why the working program is working as well.
2. Come prepared with a very short (3 minute max) description of what your focus at RISD is, and what you are interested on focusing in the class.
3. Begin to think about what you would like to "play with" in developing project ideas in max/msp. Write these down somewhere so you will find them later.

+++++++++++++++++++++++++++++++++++++

Description:

This course aims to give students a fluency and literacy with digital audio and video media to augment their art practice in new ways. Using Max/MSP and Jitter students will learn to make unique tools to generate and manipulate media. Students will work independently and in small groups and be expected to complete a small work load outside of class. This is a studio course but conceptual foundations of digital production and the subtleties of working in the digital medium will be discussed.

Logistics:

the course meets on Mondays and Tuesdays from 12:30pm to 5:30pm from January 3rd 2007 to February 13th 2007.

Instructor: Peter Segerstrom. Email: psegerst @ risd.edu

+++++++++++++++++++++++++++++++++++++

Links!

Syllabus
Short Cuts and Tips

Class files
Cycling 74
Max Objects Database
UCSC Max/MSP resources
Awesome example sequencer
link supplied by Alvin.

external media resources


arduino hardware
vixy.net
keepvid.com
Wire Tap pro
Sound Flower