120 likes | 130 Views
Discover the intricacies of real-time music generation: from storing instructions to dynamic data loading caveats. Learn its applications, differences from streamed audio, and scenarios of usage. Visual presentation with insightful content.
E N D
Real-Time Music generation A very greatly awesomely good presentation by Alex Zazzaro.
What is real-time music generation? • Music stored as instructions and commands. • Interpreted and played during runtime.
Streamed audio • Prerecorded music. • The waveform is sent straight to the speakers. • MP3 files (for example). • Anything can be recorded.
Caveats to streamed audio • Cannot read from disc while streaming from disc. • No dynamic data loading during game play. • Stream would need to reside in ram to do so. • Streams are large, ram is limited.
How real-time music generation is different • For decent quality, an uncompressed stream needs 44,100 bytes for each second of audio. • 88,200 bytes per second if you want 16-bit audio! • Real-time generated music stores only instructions, such as notes and note lengths.
Scenario • Trumpet playing 5 notes over 5 seconds.
Scenario – Streamed Audio • 215kB (220500 bytes) • 44,100 bytes per second, for 5 seconds.
Scenario – Real-Time • 10 bytes • One byte for note, one byte for note duration; for 5 notes.
How it works (1/2) • Recording of an instrument playing one note. • The recording is played at different pitches. • Multiple recordings of the same instrument can be used.
How it works (2/2) • 1 channel can play only play 1 note at a time. • To play N notes simultaneously, you need N channels. • Each channel needs its own set of instructions.
What uses real-time music generation? • Systems with limited memory. • Cartridge-based systems. • Systems that can only make beeping noises. • Games where the music is interactive. • Games that just simply feel like using it.
Credits • Songs used • Battle Theme – Mario Kart • Nell’s Theme – Advance Wars • Main Theme – Professor Layton and the Curious Village • Alma’s Moon Walk – Hanjuku Hero IV • Rocket Belt – PilotWings