Difference between revisions of "256a-fall-2024/hw3"

From CCRMA Wiki
Jump to: navigation, search
((Part 2 of 3) Something Working (Due 10/30 Monday))
(Final Presentation "Playable Prototype" (Due: 11/11 Monday))
 
(24 intermediate revisions by the same user not shown)
Line 6: Line 6:
  
 
timeline:
 
timeline:
* HW3 milestone 1 (research + tutorial + on-paper design), create hw3 webpage with 3 design sketches. (Due: 10/25 Friday 11:59PM)
+
* HW3 milestone A (research + sketches), create hw3 webpage with 3 design sketches. (Due: 10/25 Friday 11:59PM)
* HW3 milestone 2 (demo/something working), be prepared to present in-class. (Due: 10/30 Wednesday 11:59PM)
+
* HW3 milestone B (demo/something working), be prepared to present in-class. (Due: 10/30 Wednesday 11:59PM)
* HW3 done (demo/polished playable prototype)), be prepared to present in-class (Due: 11/11 Monday 11:59PM)
+
* HW3 final presentation (demo/polished playable prototype), be prepared to present in-class (Due: 11/11 Monday 11:59PM)
  
Almost inevitably at some point in one's music software design journey, you'll be asked/tempted to make a step sequencer. In this assignment, we are going to get that off our chest/out of our system, and make a real-time, audio-visual software, driven by some kind of music sequencer!
+
Almost inevitably at some point in one's music software design journey, you'll be asked/tempted to make a step sequencer.  
 +
In this assignment, we are going to get that off our chest/out of our system, and make a real-time, audio-visual software, driven by some kind of music sequencer!
  
=== (Part 1 of 3): Research + Preliminary Design (Due: 10/25 Friday)===
+
=== Milestone A: Research + Preliminary Design (Due: 10/25 Friday)===
* '''deliverables: create webpage + comment on your sequencer research, tutorial + 3 different designs'''  
+
* '''deliverables: create webpage + comment on your sequencer research + sketch 3 different designs'''  
 
* do research on music sequencers!
 
* do research on music sequencers!
* compile a list of useful references on various types of step sequencers / designs (articles, papers, images, etc.)
+
* compile a list of useful references on various types of music sequencers / designs (articles, papers, images, etc.)
* sketch your own preliminary designs of a real-time audio-visual step sequencer! make '''3 different designs, maximally different from each other'''.
+
* sketch your own preliminary designs of a real-time audio-visual sequencer! make '''3 different designs, maximally different from each other'''.
 
* what features to include?
 
* what features to include?
 
** what does it look like? linear? circular? spherical? mobius?!? a game? a galaxy?? a ???
 
** what does it look like? linear? circular? spherical? mobius?!? a game? a galaxy?? a ???
 
** sequencing of pitch? dynamics (loundness)? envelopes (attack/decay/sustain/release)?
 
** sequencing of pitch? dynamics (loundness)? envelopes (attack/decay/sustain/release)?
 
** how many parallel tracks / layers / or different types of sound?  (e.g., track 1 synth, track 2 drum etc)
 
** how many parallel tracks / layers / or different types of sound?  (e.g., track 1 synth, track 2 drum etc)
** how input the sequence (in real-time)?
+
** how do we input the sequence (in real-time)?
 
** how does it sound? will it use synthesis? load audio samples?
 
** how does it sound? will it use synthesis? load audio samples?
 
** can you save/load sequences? what file format?
 
** can you save/load sequences? what file format?
 
** how to control/depict tempo?
 
** how to control/depict tempo?
 
* sketch as much as detail as possible, even if you don't end implementing most of them!
 
* sketch as much as detail as possible, even if you don't end implementing most of them!
* hand in '''scans of your paper designs''' and be ready to present on Monday (10/30)!  (scans of these design sketches can go onto your website for this project)
+
* hand in '''scans/images of your paper designs''' (scans/images of these design sketches can go onto your website for this project)
 +
* ChuGL examples: https://chuck.stanford.edu/chugl/examples/sequencers/
 +
** This project is more open-ended than the visualizers (Examples above are less like boilerplates. Please start from a blank file).
  
=== (Part 2 of 3) Something Working (Due 10/30 Wednesday)===
+
=== Milestone B: Something Working (Due 10/30 Wednesday)===
 
* '''deliverable: update webpage, including a 1 minute video demo'''
 
* '''deliverable: update webpage, including a 1 minute video demo'''
 
* '''have something working in software, towards your core idea/aesthetics!'''
 
* '''have something working in software, towards your core idea/aesthetics!'''
* decide on a design + set of features for a real-time audio-visual step sequencer; the design decisions should account for the questions raised in part 1 above!
+
* decide on a design + set of features for a real-time audio-visual sequencer; the design decisions should account for the questions raised in part 1 above!
* using ChuGL, implement a working prototype of your step sequencer (NOTE real-time audio + graphics in the same language is where ChuGL offers its greatest advantage)
+
* using ChuGL, implement a working prototype of your music sequencer (NOTE real-time audio + graphics in the same language is where ChuGL offers its greatest advantage)
 
* potential things to sequence:
 
* potential things to sequence:
 
** pitch
 
** pitch
Line 50: Line 53:
 
** having a "grid" can be very useful (but not strictly necessary)!
 
** having a "grid" can be very useful (but not strictly necessary)!
  
=== (Part 3 of 3) "Playable Prototype" (Due: 11/11 Monday)===
+
=== Final Presentation "Playable Prototype" (Due: 11/11 Monday)===
 
'''deliverables:'''
 
'''deliverables:'''
 +
a polished HW3 website containing:
 
* aim for a (semi-)polished playable prototype
 
* aim for a (semi-)polished playable prototype
* Musical Statement + In-Class Presentation
 
** using your sequencer, create a short musical statement
 
** create a short but polished video of a "mini-performance" of your sequencer
 
** be prepared to present it in class
 
* as with HW2, update your webpage for your audiovisual sequencer, which must contain:
 
** name of your sequencer
 
** one or more screenshots
 
** your polished sequencer "mini-performance" video
 
** your initial design sketches + research, motivate and articulate how you made your design decisions
 
** system design: how is your software architected? we recommend a class diagram.
 
** code + assets for download
 
 
=== Note ===
 
* As always, have fun with it, make the user feel something, make it satisfying.
 
* you are welcome to work together, but you must do your own work
 
* comment your code!
 
 
 
=== Final Deliverables ===
 
a polished HW3 website containing:
 
 
* 1) a name and description of your sequencer
 
* 1) a name and description of your sequencer
 
* 2) a few screenshots that capture your sequencer in action
 
* 2) a few screenshots that capture your sequencer in action
* 3) a polished resolution video demo (2-3 minutes, with audio) of your sequencer, including a "mini-performance" of your musical statement
+
* 3) a polished resolution video demo (1-3 minutes, with audio) of your sequencer, including a "mini-performance" of your musical statement
 
** upload to YouTube or Vimeo (or CCRMA) and embed the video from your webpage
 
** upload to YouTube or Vimeo (or CCRMA) and embed the video from your webpage
 
* 4) instructions on using you sequencer
 
* 4) instructions on using you sequencer
Line 81: Line 65:
 
* 7) a final short text section that conveys:
 
* 7) a final short text section that conveys:
 
** your ideas/inspirations in designing your sequencer
 
** your ideas/inspirations in designing your sequencer
** any comments you want to share (difficulties and what you enjoyed) on this project
+
** any comments you want to share (difficulties and what you enjoyed) on this project (How did you feel as a designer?)
 +
** system design: how is your software architected? we recommend a class diagram.
 
** acknowledgements for collaboration/help received(and any assets/libraries you've used)
 
** acknowledgements for collaboration/help received(and any assets/libraries you've used)
 
* 8) upload the website URL to Canvas
 
* 8) upload the website URL to Canvas
 +
 +
=== Note ===
 +
* As always, have fun with it, make the user feel something, make it satisfying.
 +
* you are welcome to work together, but you must do your own work
 +
* comment your code!

Latest revision as of 21:18, 30 October 2024

Homework #3: Interactive AudioVisual Music Sequencer

Sequencer-thing.jpg

NOTE: this image is here mostly for its colors, PLEASE DON'T (NECESSARILY) MAKE IT LOOK LIKE THIS!

timeline:

  • HW3 milestone A (research + sketches), create hw3 webpage with 3 design sketches. (Due: 10/25 Friday 11:59PM)
  • HW3 milestone B (demo/something working), be prepared to present in-class. (Due: 10/30 Wednesday 11:59PM)
  • HW3 final presentation (demo/polished playable prototype), be prepared to present in-class (Due: 11/11 Monday 11:59PM)

Almost inevitably at some point in one's music software design journey, you'll be asked/tempted to make a step sequencer. In this assignment, we are going to get that off our chest/out of our system, and make a real-time, audio-visual software, driven by some kind of music sequencer!

Milestone A: Research + Preliminary Design (Due: 10/25 Friday)

  • deliverables: create webpage + comment on your sequencer research + sketch 3 different designs
  • do research on music sequencers!
  • compile a list of useful references on various types of music sequencers / designs (articles, papers, images, etc.)
  • sketch your own preliminary designs of a real-time audio-visual sequencer! make 3 different designs, maximally different from each other.
  • what features to include?
    • what does it look like? linear? circular? spherical? mobius?!? a game? a galaxy?? a ???
    • sequencing of pitch? dynamics (loundness)? envelopes (attack/decay/sustain/release)?
    • how many parallel tracks / layers / or different types of sound? (e.g., track 1 synth, track 2 drum etc)
    • how do we input the sequence (in real-time)?
    • how does it sound? will it use synthesis? load audio samples?
    • can you save/load sequences? what file format?
    • how to control/depict tempo?
  • sketch as much as detail as possible, even if you don't end implementing most of them!
  • hand in scans/images of your paper designs (scans/images of these design sketches can go onto your website for this project)
  • ChuGL examples: https://chuck.stanford.edu/chugl/examples/sequencers/
    • This project is more open-ended than the visualizers (Examples above are less like boilerplates. Please start from a blank file).

Milestone B: Something Working (Due 10/30 Wednesday)

  • deliverable: update webpage, including a 1 minute video demo
  • have something working in software, towards your core idea/aesthetics!
  • decide on a design + set of features for a real-time audio-visual sequencer; the design decisions should account for the questions raised in part 1 above!
  • using ChuGL, implement a working prototype of your music sequencer (NOTE real-time audio + graphics in the same language is where ChuGL offers its greatest advantage)
  • potential things to sequence:
    • pitch
    • dynamics
    • different timbres / instruments
    • envelopes
  • requirements / high-level functional aesthetic goals
    • must be graphical
    • must be interactive
    • must be musical
    • should be flexible in usability
    • should support some narrative complexity
    • should feel satisfying to use
  • "hints"
    • think of user/interaction design **and** software/system design
    • create an audio engine, as well as a graphics engine; how do they interact?
    • having a "grid" can be very useful (but not strictly necessary)!

Final Presentation "Playable Prototype" (Due: 11/11 Monday)

deliverables: a polished HW3 website containing:

  • aim for a (semi-)polished playable prototype
  • 1) a name and description of your sequencer
  • 2) a few screenshots that capture your sequencer in action
  • 3) a polished resolution video demo (1-3 minutes, with audio) of your sequencer, including a "mini-performance" of your musical statement
    • upload to YouTube or Vimeo (or CCRMA) and embed the video from your webpage
  • 4) instructions on using you sequencer
  • 5) you code and all necessary assets
  • 7) a final short text section that conveys:
    • your ideas/inspirations in designing your sequencer
    • any comments you want to share (difficulties and what you enjoyed) on this project (How did you feel as a designer?)
    • system design: how is your software architected? we recommend a class diagram.
    • acknowledgements for collaboration/help received(and any assets/libraries you've used)
  • 8) upload the website URL to Canvas

Note

  • As always, have fun with it, make the user feel something, make it satisfying.
  • you are welcome to work together, but you must do your own work
  • comment your code!