Title: Toronto 2000: Musical Intersections
1Toronto 2000 Musical Intersections
- ATMI Program
- Saturday, November 4, 2000
2Creating Web-based Applications for Post-Tonal
Theory
- Reginald Bain
- University of South Carolina
- School of Music
3Abstract
- This presentation discusses issues
surrounding the design and implementation of two
Web-based Dynamic HTML applications,
AtonalAssistant and MatrixMaker, that aid in the
analysis and composition of post-tonal music.
The former is a tool for musical set theory, the
latter a tool for generating pitch-class matrices
and performing serial operations.
4Presentation Web Site http//www.music.sc.edu/fac
ultystaff/bain/atmi00/
- Presentation handout
- PowerPoint Presentation
- List of References
- Links
- Code examples
5History of the Project
6Program Development History
- The original algorithms were coded in symbolic
programming languages - LISP
- ObjectLogo
- The current generation of code modules will use
Dynamic HTML
7What tool should I use this time?
- C?
- Java?
- DHTML (HTML/JavaScript/CSS)?
8Tool Requirements
- Run fast
- Cross-platform (Win/Mac)
- Cross-browser implementation (Navigator/IE)
- Code must be modular and easy to maintain and
upgrade - Interactive MIDI Playback
- Allow for the integration of interactive
definitions, exercises, and calculation tools
within a single human interface
9Dynamic HTML
- Dynamic HTML (DHTML) is an abstract term that
refers to animating, hiding, showing, stacking,
and formatting HTML content on the screen using
JavaScript. Dynamic HTML first became possible
within Navigator 4 and Internet Explorer 4
through proprietary features and DOM extensions
of each browser. - From Netscapes Dynamic HTML Developer Central
- http//developer.netscape.com/tech/dynhtml/dynhtml
.html
10Could DHTML do the job?
-
- Dr. Stephen Taylors (Illinois State
University) 1997 ATMI Presentation -
- SetFinder A JavaScript Pitch-Class Set
Calculator for the Internet.
Web-site http//www.arts.ilstu.edu/staylor/setfi
nder/
11Adding Interactive MIDI Audio
- Headspaces Beatnik
- Beatnik Web Authoring Doc
- Music Object API
12Advantages of a Web-based Approach
- Potentially available to a huge Web audience
- Easy to integrate DHTML applications within HTML
pages - Open architecture of JavaScript makes code
potentially extensible by the user who can script
13Other Factors
- I had already created a large number of HTML
pages including - JavaScript calculation tools with with hyperlinks
to glossary definitions - Interactive analytical diagrams
14Calculation Tools within a HyperText Environment
-
- Due to the technical nature of much
post-tonal theory, it is imperative for students
to have convenient access to precise definitions
of set theoretical and serial terminology at all
levels of study
15Interactive Analytical Diagrams
- I have found that analytical diagrams with
interactive MIDI playback not only provide
helpful and immediate aural feedback, but also
allow the student to explore the compositional
potential of an abstract musical structure
16Disadvantages of a Web-based Approach
- The programmer loses a great deal of control over
the programs human interface design elements - The programmer cannot write a data file to the
users hard drive without special permission - DHTML program development is significantly
different than traditional program development
17Software Design Implementation
18Forte Rahn
- Previous versions of this software were based on
the terminology and algorithms established in - Forte, Allen. The Structure of Atonal Music. New
Haven Yale University Press, 1973. - Rahn, John. Basic Atonal Theory. New York
Longman, 1980.
19Straus Lester
- The present generation of this software is
compatible with the following two generally
available texts - Straus, Joseph. Introduction to Post-Tonal
Theory, 2nd edition. Upper Saddle River, NJ
Prentice , 2000. - Lester, Joel. Analytic Approaches to
Twentieth-Century Music. New York W. W. Norton,
1989.
20Advantages of Compatibility with Available Texts
- Software can be used to check answers to
end-of-chapter exercises - Software converts between the system used in one
book to the system used by another e.g.,
fixed-zero (Straus 2000) to movable-zero (Lester
1989) pitch-class notation - Can be used in place of the appendices in the
back of these books - Allows you to see all of the steps in a
relatively complex algorithm for any pitch-class
set
21Castine
- Castine, Peter. Set Theory Objects Abstractions
for Computer-Aided Analysis and Composition of
Serial and Atonal Music. Frankfurt am Main Peter
Lang, 1994. - Presents a brief historical survey of theoretical
developments in the field - Covers issues surrounding the creation of
computer tools for atonal and serial music - User-oriented software design issues
- Software implementation issues
22Presently Two Types of Web-based Software
- 1. Interactive HTML Pages
- 2. DHTML Applications
- A. Frames
- B. No frames
23Interactive HTML Pages
- HTML pages enhanced with interactive MIDI
playback...
24Interactive HTML Pages (cont.)
- or video animations that integrate score,
analytical symbols and audio examples into a
single HTML presentation
25DHTML Applications
-
- Stand-alone DHTML applications allow the
programmer to conveniently develop and test code
modules
26To frame or not to frame?
-
- MatrixMaker presently does not employ frames,
AtonalAssistant does
27640x480 or 800x600?
28Ultimate Project Goal
- To integrate this collection of HTML pages,
DHTML applications, and interactive analytical
aids into an e-book on the topic of post-tonal
theory that will be distributed via CD-ROM and/or
the Web
29Technical Requirements
30Content Creation Distribution Tools
- Netscape Navigator 4 or Microsoft Internet
Explorer 4 - Barebones BBEdit for Macintosh
- Headspace Beatnik Music Object API Beatnik
Player Plug-in - Macromedia Flash
- Apple QuickTime Pro Plug-in
- Macromedia Dreamweaver with Beatnik ActionSet
(optional)
31Headspace Beatnik
- Beatnik Player (Plug-in)
- Beatnik Music Object API
- Basic EZ Sonifier
- Beatnik ActionSet for Dreamweaver
- Beatnik Xtra for Director
- More info. at http//www.beatnik.com/software/
32Program Features
33AtonalAssistantFeatures to include
- Pitch-class (pc) set entry/display
- Keyboard
- PC Integer
- PC Letter Name
- Interactive playback via Beatnik
- Interval operations and relations
- Set operations and relations
- Set membership and cardinality
- Twelve Tone Operations
- Other Operations (M, order, combinations, etc.)
- Invariance
- Combinatoriality
- Normal form
- Prime form
- Set class enumeration
- Degree of symmetry
- Fortes interval class vector
- Chrismans adjacent interval vector
- Lewins Interval Function
- Fortes Set Complex
- And more
- As defined in Castine 1994
34MatrixMakerFeatures to include
- Series entry/display
- Keyboard
- PC Integer
- PC Letter Name
- Fixed-zero and movable zero pc notation
- Database of series by Schoenberg, Webern, Berg,
Stravinsky, et al. - Interactive playback via Beatnik
- Integration with AtonalAssistant
- Twelve Tone Operations
- Series relations
- Matrices
- Babbitt Square (12x12)
- Stravinsky Rotational Arrays
- And so on...
- Combinatoriality
- Series derivation
- Wuorinen Time Point Translation
- And more
- As defined in Straus 2000
35Examples