CSCI-B582 - Semester Project Presentations
Virtual Concert
Ying Feng
-
Introduction to MIDI
The development of the MIDI
system has been a major catalyst in the recent precedented explosion of
music technology. MIDI has put powerful computer instrument networks and
software in the hands of less technically versed musicians and amateurs
and has provided new and time-saving tools for computer musicians. The
system first appeared in 1982 following an agreement among manufacturers
and developers of electronic musical instruments to include a common set
of hardware connectors and digital codes in their instrument design. The
original goal was to interface instruments of different manufacture to
control common functions, such as note events, timing events, pitch bends,
pedal information, etc. Though several classes of codes have been added
to the MIDI 1.0 Specification (International MIDI Association, 1989) and
MIDI applications have grown far beyond the original intent, the basic
protocol has remained unchanged. MIDI is a system very much like a player
piano roll in that it is used to specify the actions of a synthesizer or
other electronic devices, while the tone or effect is generated by the
instrument itself.
-
MIDI equipment:
-
MIDI Synthesizers: hardware, software
-
MIDI Controllers: keyboard, guitars, violins, and drums
-
MIDI Sequencers and MIDI files
-
MIDI Data Format
-
Channel Voice Messages
-
System messages
-
Goal
-
Virtual Concert is a CAVE application which presents a virtual scene of
a concert. There the user can act as the conductor and take control of
various aspects concerning the virtual life performance. The music is played
from pre-saved MIDI files through the SGI software synthesizer, while the
user can interactively change the parameters of the MIDI messages, and
the application provides the visual feedback of the changes.
-
Similar tools or packages:
-
SGI MIDI applications: synthpanel, midikeys
-
MIDI softwares on PC or MAC: Performer, Freestyle etc.
-
Design
-
Target user audience: anyone who is interested in music.
-
Interface design: intuitive and convenient.
-
Implementation: the program uses the following APIs:
-
CAVE libaray;
-
SGI MIDI library.
-
Major technical problems:
-
Limitations of CAVE interaction: which aspects of MIDI music are suitable
for control in CAVE?
-
Limitations of SGI MIDI libaraies and software synthesizer.
-
How to make the sound more immersive?
-
How make the virtual scene more realistic?
-
Demonstration
-
Control method:
-
Left button single-click: play/mute a specific track;
-
Left button double-click: set specific/all control values same as the ones
in the orriginal MIDI for the specific track/tracks, or rewind music; or
move a specific performer back to the initial location;
-
Left button hold/release: change pitch bend, volumn, panning etc for a
specific track, or the current playing postition in the music;
-
Middle button single-click: play/pause the music;
-
Middle button double-click: set all control values same as the ones in
the orriginal MIDI for the whole band;
-
Middle button hold/release: change tempo, volumn etc. for the whole band;
-
Right button click: pop up a specific menu;
-
Right button double-click: start/finish a scene;
-
Right button hold/release: select a performer or in a popped up menu;
-
Joy-stick forward/backward: navigate forward/backward;
-
Joy-stick left/right: navigate turning left/right.
-
Screen shots
-
Future Work
-
More control over the performance.
-
3D sound: VSS.
-
Better graphics: 3D modeling tool, texture mapping.
-
References