-
Notifications
You must be signed in to change notification settings - Fork 0
Homework John Henry 02
ICM Section 02 • Meeting Monday 3:20PM - 5:50PM EST in Room 409
- Week 8 Images
- Week 9 Video
- Week 10 Sound Analysis
- Week 11 Sound Synthesis
- Week 12 Text Data
- Week 13 prototype presentation
- Week 14 Final Project Presentation
Submit all assignments using our homework form
All assignments are due the night before class
Resources:
-
p5VideoKit live-tile-3x6-face-mesh
- designed for mobile and big screen
-
pixel-scope
- designed for mobile
-
images puzzle
- solve the image puzzle by clicking to swap bands
- designed for mobile
-
mo-pixel-grid
- will be linked up to firebase backend
- designed for mobile
- images in p5
- Red canvas, pixel-by-pixel
- Converting x,y to i
- Pixelated cat with get(x,y)
- Slow pixelated video mirror with get() | Faster version with pixels[] array
-
Complete the Practice questions in this Week 8 Exercises document
- start in class
-
CREATE • Create and/or manipulate an image or video at the pixel level to create an alternative of the reality depicted in the source image. Describe in 1-3 keywords how your image feels different from the source image. Create a blog post documenting your work.
- Submit your assignment on our homework form.
-
READ • Allison Parrish's Working with video
-
WATCH
-
WATCH OPTIONAL:
-
week 8:
-
week 9:
-
machine learning algorithms:
-
composing and re-mixing algorithms
-
DOM Kit
-
pixel algorithms
-
CREATE/EXPLORE • Create a sketch that manipulates a video in either time or color. Use the camera or a movie file. Create a blog post documenting your work.
-
Submit your assignment on our homework form.
Other Resources
from Ellen
- What Does Sound Look Like? | 1.1 What is Sound? | 1.2 Amplitude | 1.3 Frequency, Pitch and Intervals
- But what is the Fourier Transform? A visual introduction by 3Blue1Brown
- Supported media type and formats: MDN Web Docs
- p5 demos:
- p5.SoundFile Basics | Multiple Sound Files
- p5.AudioIn Mic Mic
- p5.Amplitude Sound Files + Mic
- p5.FFT Waveform | Analyze
- Media sources (credit the creators): Orchestral Sample Library | Another Orchestral Sample Library | Free Music Archive | Freesound | BBC Sound Effects | Sound of Picture | Routing computer sound with Blackhole | Record or generate your own!
- Tools: Audacity for audio editing | media.io for converting media files
- Possible inspiration: Visualizing Music with p5.js | Patatap | Typatone | Singing Swan Tutorial | Chrome Music Lab | Bloom: 10 Worlds app
-
CREATE/EXPLORE •
- Work in pairs.
- Work on one sketch together
- or work in parallel taking turns giving each other feedback
- Inspiration: Pair Programming
- Create an audio experience using sound analysis. Create a blog post documenting your work.
- Work in pairs.
-
Submit links to post and sketches in this form.
--
from Ellen p5 demos:
-
Making notes:
-
yourSoundFile.rate()
, note ratios - p5.Oscillator, note frequencies
- p5.Oscillator, note ratios
-
-
Sound effects:
- p5.Envelope (ADSR)
- p5 effects
-
Timing and patterns:
- frameCount and Modulo
- p5.SoundLoop
-
Other examples:
- jazz.computer
- Plink by DinahMoe
- Writing Music in Light
- Music Eclipticalis by Brian Foo
- Listen to Wikipedia by Hatnote, Stephen LaPorte, and Mahmoud Hashemi
- Troupe-like in p5.js by Cassie Tarakajian based on Trope app by Brian Eno and Peter Chilvers
- Chrome Music Lab
- PoseNet-related
- Coding Challenge 130.2: Drawing with Fourier Transform and Epicycles
- drawing-with-fourier-transform-and-epicycles
-
https://editor.p5js.org/jht1493/sketches/QWKytZi9v
- play 3 scales and graph amplitude using layers
-
https://editor.p5js.org/jht1493/sketches/IFght-gvV
- Play a series of notes and graph FFT
-
https://editor.p5js.org/jht1493/sketches/S47diDJcd
- keyPressed 1QAZ FFT
-
CREATE/EXPLORE • Create an audio experience using sound synthesis. Create a blog post documenting your work.
-
Submit links to post and sketches in this form.
- Homework review
- Data
- as Text
- as JSON
- from API
- Final project overview
from Ellen (mostly).
- Text Syllabus resources
- p5 examples
- text points perlin noise
- Array vs string
- Dancing characters
- Random story starters
- Draw with lines from a poem
- Book word and keyword count
- Carrie Wang's Scrolling Text and Drawing the Text Array
- Alllison Parrish's Interactive Type Examples
- Generative Design P.3. Type Examples
- Font resources
- Related projects
- Data Syllabus resources
- p5 examples
- JSON resources
- Working with JSON
- JSON Formatter Chrome Extension
- Formatting and Validating JSON
- Coding Train Intro to Data and APIs (includes working with Wordnik, NYTimes, Giphy, and Wikipedia APIs)
- Data sources
- Related projects
- Shirley Wu
- Jason Snell
- The Library of Missing Datasets by Mimi Onuoha
- Listen to Wikipedia by Stephen LaPorte and Mahmoud Hashemi
- See, also: A collection of our favorite visualizations built on Wikipedia data, curated by Hatnote
- Numbers Series: performance and sound installations by Mendi + Keith Obadike, related article: Reading the Numbers of Stop-and-Frisk
- We Need Us by Julie Freeman
- The True Colors of America’s Political Spectrum Are Gray and Green
- Dear Data by Giorgia Lupi and Stefanie Posavec
- Sleep Drawings by Laurie Frick
- Visual Essays by The Pudding
- Heartmonic (heart+harmonic) and Eunoia (Version 2) by Lisa Park
- Engaging the Data Science Community with Met Open Access API
- 45 Ways to Communicate Two Quantities
You have two weeks to complete your final project.
-
DESCRIPTION
- Your final project is an open-ended creative project that builds off or is inspired by the concepts in this class. It is also an opportunity to push your abilities to produce something that utilizes what you have learned.
- There is no requirement to use a particular aspect of programming. Focus on an idea that excites you and choose the best programming concepts and tools to help you realize it.
- You can take something you've already made and develop it further or create something entirely new.
- Final projects can be one part of a larger project integrated with a different class.
- Final projects can be collaborations with anyone in any class. Group projects are welcome and encouraged, and it is expected that everyone contribute their own code to the project.
- It’s okay to keep things simple and small in scope. If your project idea is a big one, consider documenting the larger idea but implementing just a small piece of it.
-
Begin your final project, submit work in progress for review in next class.
-
Submit links to post and sketches in this form.
- Final Project work in progress review
-
Prepare a 5 minute presentation to demonstrate what your project does that emphasizes its computational aspects. Ideas for what you can shape your presentation:
- Big Question to Think About: How did "coding" this project help you understand what you were doing in a different way?
- You don't have to explain the whole thing. Pick one algorithm you wrote and deconstruct it for us.
- If your project is interactive, be prepared to have someone else in the class interact with it to demo what it does. (This includes preparing clear instructions.)
- If your project is an interactive instrument intended for performance, be prepared to perform a composed piece.
- If your project can only be demo'd outside of class, please show a short video (< 2 minutes) of the experience.
- If your project was a collaboration, explain what part you did.
-
Post documentation in the form of a blog post. Ideally something visual, some written thoughts, and code. How do you feel about WHY you want to use code in your work now compared with the beginning of the semester? If you are struggling with your sketch and can't get things to work, you should feel free to put your energy into writing about what didn't work (and vent any frustrations!).
-
Submit links to post and sketches in this form.
-
Course evaluation