Realtime Chord Recognition of Musical Sound: a System Using Common Lisp Music Takuya FUJISHIMA * CCRMA, Stanford University Stanford CA 94305, USA fujishimOccrma.stanford.edu Abstract This paper describes a realtime software system which recognizes musical chords from input sound signals. I designed an algorithm and implemented it in Common Lisp Music/Realtime environment. The system runs on Silicon Graphics workstations and on the Intel PC platform. Experiments verified that the system succeeded in correctly identifying chords even on orchestral sounds. Keywords: music, sound, chord, machine, recognition, realtime, numerical, AI 1 Introduction Musical chord recognition is a process of identifying specific pitch simultaneities that combine to produce the functional harmonic palette of western music1. Traditionally, it is approached as a polyphonic transcription task to identify individual notes [1] (2] [3], which is then followed by a symbolic inference stage to determine the chord (Fig.1) [4]. This approach suffers from recognition errors at the first stage. The errors result from noises, and from overlapping harmonics of notes in the spectrum of the input audio signal. These inevitable errors makes the chord recognition task diffcult. Polyphonic Transcription Symbolic Inference (signal to notes)\ (rule-based reasoning) Input Signal Individual Notes Chords robustness than note names do. Based on the framework of SAM, I designed a chord recognition algorithm, which is described in the following section. 2 Algorithm The overview of my chord recognition algorithm is shown in Fig. 2. DFT Input Signal Figure 1: Traditional Approach Recently, Leman proposed an alternative approach [5]. His "Simple Auditory Model" (SAM for short) avoids the unreliable note identification process by adopting numerical representation and manipulation of information throughout the process, to realize a robust recognition system. The key of SAM is the use of an intensity map of twelve semitone pitch classes. Derived from a spectrum through straightforward numerical processing, the map preserves more information and achieves more *Currently at YAMAHA Corp. Electronic Musical Instruments Division, 10-1 Nakazawa, Hamamatsu 430 Japan 'Human listeners perceive chords even in a single melodic line. This aspect is beyond the scope or this research. Figure 2: Chord Recognition Algorithm Overview This algorithm first transforms an input sound to a Discrete Fourier Transform (DFT) spectrum, from which a Pitch Class Profile (PCP) is derived. Then it does pattern matching on the PCP to determine the chord type and root. Two major heuristics are introduced to improve the overall performance. Details follow. 2.1 DFT Spectrum First, this algorithm transforms a fragment of the input sound stream to a DFT spectrum. Let f, be the sampling frequency and xz(n) be a fragment - 464 - ICMC Proceedings 1999
Top of page Top of page