Difference between revisions of "256-fall-2008/hw1"
From CCRMA Wiki
Line 8: | Line 8: | ||
* create a minimally compilable program (e.g., HelloWorld): | * create a minimally compilable program (e.g., HelloWorld): | ||
** if you'd like, you can use this very basic [http://ccrma.stanford.edu/courses/256/hw/1/makefile makefile] | ** if you'd like, you can use this very basic [http://ccrma.stanford.edu/courses/256/hw/1/makefile makefile] | ||
− | * next add real-time, using the | + | * next add real-time, using the RtAudio Library (version 4.0.4) |
** download it from [http://www.music.mcgill.ca/~gary/rtaudio/ here] | ** download it from [http://www.music.mcgill.ca/~gary/rtaudio/ here] | ||
** even though it's useful to briefly look through the package, the only files you'll need are: | ** even though it's useful to briefly look through the package, the only files you'll need are: |
Revision as of 20:58, 28 September 2008
Contents
Homework #1: Real-time Audio, Buffers, and Waveforms
Due date: 2008.10.8 11:59:59pm (or thereabout), Wednesday.
Specification (part 1 of 2): Real-time Audio
- create a program that is capable of real-time audio input/output
- start with a blank C++ program
- create a minimally compilable program (e.g., HelloWorld):
- if you'd like, you can use this very basic makefile
- next add real-time, using the RtAudio Library (version 4.0.4)
- download it from here
- even though it's useful to briefly look through the package, the only files you'll need are:
- RtAudio.h (the header file for RtAudio, it contains the class definitions)
- RtAudio.cpp (the implementation)
- RtError.h (header containing various error handling constructs for RtAudio)
Specification (part 2 of 2): Waveforms
Note
- Have fun with it!!!
Deliverables
turn in all files by putting them in your Library/Web/154/hw1/ directory, and concise online documentation + readme
- 1) source code to the project (*.h, *.cpp, *.c makefile, etc.)
- 2) online page for your project (should be viewable at http://ccrma.stanford.edu/~YOURID/154/hw1/). It should include:
- links to your files of various kinds
- instructions on building the project
- a short README that
- conveys your ideas/comments in constructing each program
- describes any difficulties you encountered in the process