Computational Methods for the Analysis of Musical Structure
Total Page:16
File Type:pdf, Size:1020Kb
COMPUTATIONAL METHODS FOR THE ANALYSIS OF MUSICAL STRUCTURE A DISSERTATION SUBMITTED TO THE DEPARTMENT OF MUSIC AND THE COMMITTEE ON GRADUATE STUDIES OF STANFORD UNIVERSITY IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY Craig Stuart Sapp May 2011 © 2011 by Craig Stuart Sapp. All Rights Reserved. Re-distributed by Stanford University under license with the author. This work is licensed under a Creative Commons Attribution- Noncommercial 3.0 United States License. http://creativecommons.org/licenses/by-nc/3.0/us/ This dissertation is online at: http://purl.stanford.edu/br237mp4161 ii I certify that I have read this dissertation and that, in my opinion, it is fully adequate in scope and quality as a dissertation for the degree of Doctor of Philosophy. Julius Smith, III, Primary Adviser I certify that I have read this dissertation and that, in my opinion, it is fully adequate in scope and quality as a dissertation for the degree of Doctor of Philosophy. Christopher Chafe I certify that I have read this dissertation and that, in my opinion, it is fully adequate in scope and quality as a dissertation for the degree of Doctor of Philosophy. Eleanor Selfridge-Field Approved for the Stanford University Committee on Graduate Studies. Patricia J. Gumport, Vice Provost Graduate Education This signature page was generated electronically upon submission of this dissertation in electronic format. An original signed hard copy of the signature page is on file in University Archives. iii Contents 1 Overview 1 1.1 Computational analysis of musical keys . .... 2 1.1.1 Scale-degree weights for the KS algorithm . ... 3 1.1.2 Krumhansl-Schmuckler algorithm evaluation . ..... 4 1.1.3 Scale-degree prototype evaluations by keyscape . ....... 6 1.2 Keyscape applications in music analysis . ...... 14 1.2.1 Beethoven piano sonata no. 5 . 15 1.2.2 Beethoven piano sonata no. 8 . 18 1.2.3 Beethoven piano sonata no. 32 . 19 1.3 Performanceanalysis . 21 1.3.1 Dataentry............................... 22 1.3.2 Performance correlation . 25 1.3.3 Nearest-neighbor performance display . 27 1.3.4 Forensic applications . 29 1.3.5 Performance similarity . 33 1.3.6 Futurework.............................. 34 1.3.7 Performanceclustering. 34 1.3.8 Phraseanalysis ............................ 38 References 41 2 Harmonic Visualizations of Tonal Music 42 2.1 Motivation................................... 43 iv 2.2 Diagramtypes................................. 46 2.2.1 Key-to-color mappings . 46 2.2.2 Type 1: discrete time/discrete roots . 47 2.2.3 Type 2: continuous time/discrete roots . 50 2.2.4 Type 3: continuous time and roots . 51 2.3 Applications.................................. 56 2.3.1 Comparing key-finding algorithms . 56 2.4 Musicanalysis ................................ 58 2.5 Summary ................................... 60 References 62 3 Visual Hierarchical Key Analysis 63 3.1 Computational key identification . 64 3.2 Musicalkeymodulation. 70 3.3 Keyanalysisplots............................... 72 3.4 Tonalstructureinmusic. 78 3.5 Examples from various styles of music . 82 3.5.1 Analysis of the Prelude from J.S. Bach’s Cello Suite, BWV 1007 . 82 3.5.2 Analysis of Johann Pachelbel’s Canon in D major . 84 3.5.3 Analysis of Samuel Barber’s Adagio for Strings . 85 3.5.4 Analysis of Anton Webern’s Variations for Piano, op. 27, first move- ment ................................. 87 References 89 4 Key modulation identification in tonal music 90 4.1 Localizedkeyidentification. 91 4.1.1 Key prototype pitch-class weights . 93 4.2 Keyscapeplots ................................ 96 4.3 Post-processing of raw key estimates . ..... 98 4.3.1 Confusion boundaries . 99 v 4.3.2 Spurious region identification . 101 4.3.3 Spurious region filling . 102 4.3.4 Region trimming . 102 4.3.5 Tonalbiasing .............................103 4.3.6 Tunneling...............................104 4.4 Key-region discretization . 105 4.5 Conclusions..................................107 References 108 5 Comparative performance analysis 110 5.1 Introduction..................................111 5.2 RawData ...................................112 5.3 AnalysisTools.................................114 5.3.1 Correlation ..............................114 5.3.2 Scapeplot...............................115 5.4 ComparativePerformanceScapes . 116 5.4.1 Timescapes ..............................116 5.4.2 Dynascapes..............................117 5.4.3 Scape plots of parallel feature sequences . 119 5.5 Conclusions and Future Work . 121 References 122 6 Hybrid numeric/rank similarity metrics 123 6.1 Introduction..................................124 6.2 Derivations and Definitions . 126 6.2.1 Type-0Score .............................126 6.2.2 Type-1Score .............................127 6.2.3 Type-2Score .............................128 6.2.4 Type-3Score .............................130 6.2.5 Type-4Score .............................131 vi 6.3 Evaluation...................................134 6.3.1 Rubinstein performance matching . 134 6.3.2 Other performers . 136 6.4 Application ..................................138 6.5 FutureWork..................................140 References 141 vii List of Tables 1.1 KS algorithm results by weight-set for 120 compositions (using notes from entire composition in the analysis). Only errors are marked, with “dom” = dominant identified as the key; “rel” = relative key; “para” = parallel key. 5 1.2 Percent coverage of the tonic in the keyscape plots (colored green) in Fig- ures1.2through1.6. ............................. 14 1.3 Tonic-area test results based on Bach WTC Books I & II as well as Chopin preludes, op. 28 (120 compositions—60 in major keys and 60 in minor keys). ..................................... 15 2.1 KS algorithm results when applied to entire J.S. Bach Well-Tempered Clavier, Book I compositions compared to actual tonic keys of the music. Identifi- cationerrorsareunderlined. 44 2.2 Sample RGB color mappings for key tonics. 46 2.3 KS algorithm r-value scores of each possible key for the Mozart diverti- mento, sorted from most likely (highest r-value) to least likely key. 52 4.1 Key prototype weights for use in the KS algorithm. ....... 95 6.1 Collection of musical works used for analysis. .......124 6.2 Scores and rankings for sample targets to Horowitz’s 1949 performance of mazurka,op.63/3. ..............................133 6.3 Rankings for mazurka op. 17/4 Rubinstein performances. Shaded numbers indicate perfect performance of a similarity metric. ........134 6.4 Performer self-matching statistics. .......136 viii 6.5 Comparison of Cortot performances of mazurka op. 30/2 (m. 1–48). 139 ix List of Figures 1.1 Three possible evaluation tests for weights used in the KS algorithm shown in terms of the keyscape plotting domain defined in Chapter 2. ...... 7 1.2 Functional keyscapes for J.S. Bach: WTC, Book I preludes. ..... 9 1.3 Functional keyscapes for J.S. Bach: WTC, Book I fugues. 10 1.4 Functional keyscapes for J.S. Bach: WTC, Book II preludes. ...... 11 1.5 Functional keyscapes for J.S. Bach: WTC, Book II fugues. ..... 12 1.6 Functional keyscapes for F. Chopin’s 24 preludes, op. 28. ......... 13 1.7 L. van Beethoven. Piano sonata no. 5, op. 10/1, composed c.1795–97). 16 1.8 L. van Beethoven. Piano sonata no. 8, op. 13 (“Pathetique”),´ composed 1797–98. ................................... 18 1.9 L. van Beethoven. Piano sonata no. 32, op. 111, composed 1821–22. 19 1.10 Screen-shot in Sonic Visualiser of the analytic tools used for data extraction of the beat tempo, along with part of the musical score matching to the visible portion of the audio. 23 1.11 Beat-tempo correlation matrix for 10 performances of Chopin’s mazurka, op. 68/3. Top of figure shows the best and worst tempo-curve correlation matches to Biret’s tempo-curve. Red line in plots is the average tempo by beatforallperformances. 25 1.12 Nearest-neighbor plots for Yaroshinsky’s 2005 performance of Chopin’s mazurka in B minor, op. 30/2, with example correlation calculations to other performances at one point in plot. 27 x 1.13 Nearest-neighbor plots for Rachmaninoff’s 2005 performance of Chopin’s mazurka in C♯ minor, op. 63/3, for tempo and dynamic features, tempo and dynamic sub-features, and an equal mixture of tempo and dynamic features. ................................... 28 1.14 Example timescapes for Hatto/Indjic and Uninsky 1932/1971. 30 1.15 Three pianists “borrowed” for the Concert Artist label release of Chopin mazurkas performed by Sergio Fiorentino. 32 1.16 Beat-tempo similarity between student and teacher, comparing against 30 performances of Chopin mazurka, op. 24/2. 34 1.17 Tempo similarity network for performances of Chopin’s mazurka in C♯ minor,op.63/3. ............................... 36 1.18 Tempo similarity network for performances of Chopin mazurka in C♯ mi- nor,op.63/3. ................................. 37 1.19 Arch correlation plots for two tempo-curves extracted from two different performances of Chopin’s mazurka in B minor, op. 30/2. 39 2.1 Analysis window configuration which generates type-1 plots. ....... 48 2.2 Type-1 plot analysis window layout. Left: linear vertical scale; Right: log- arithmicverticalscale. 48 2.3 Mozart divertimento K. 439b, mvmt. 1: type-1 plot with logarithmic verti- calscale. ................................... 50 2.4 Type-2 analysis window arrangement. 51 2.5 Divertimento type-2 plot with linear vertical scale (comp. to Figure 2.3). 52 2.6 Mozart divertimento: type-2 plot with logarithmic vertical scale (com- pare with Figure 2.5.)