Difference between revisions of "Music 254/CS 275b Spring 2024 Syllabus"
(→Week 2) |
(→Week 9) |
||
(36 intermediate revisions by 2 users not shown) | |||
Line 125: | Line 125: | ||
* [https://docs.google.com/presentation/d/1DULWG7P81Qk8QpKXlisgPxRpxRSmujuzkLZrxkz2Kec/edit?usp=sharing%5D Verovio] | * [https://docs.google.com/presentation/d/1DULWG7P81Qk8QpKXlisgPxRpxRSmujuzkLZrxkz2Kec/edit?usp=sharing%5D Verovio] | ||
− | |||
* [https://docs.google.com/presentation/d/1D8dGfuqJK0x6eEYoirkExsP5XCgz7hszNo8IJ_kRTgs/edit#slide=id.g5577055ec0_2_75 Harmony I] | * [https://docs.google.com/presentation/d/1D8dGfuqJK0x6eEYoirkExsP5XCgz7hszNo8IJ_kRTgs/edit#slide=id.g5577055ec0_2_75 Harmony I] | ||
− | |||
* [https://docs.google.com/presentation/d/1jOJa7CTm8O5y-RxXDV9wboGFEgXJifG2O4QxJhtHe_o/edit#slide=id.gd04e8f1b0d_0_1308 Keyscapes ] | * [https://docs.google.com/presentation/d/1jOJa7CTm8O5y-RxXDV9wboGFEgXJifG2O4QxJhtHe_o/edit#slide=id.gd04e8f1b0d_0_1308 Keyscapes ] | ||
− | |||
− | |||
− | |||
<!-- | <!-- | ||
Line 190: | Line 185: | ||
! scope="col" width="500px" | Topics | ! scope="col" width="500px" | Topics | ||
|- | |- | ||
− | | | + | | 3<div id="week2"></div> || 16 & 18 April 2024 || |
− | + | ||
− | * [https://esf.ccarh.org/ | + | * [https://esf.ccarh.org/Mus254_2024/02b_Cope1-2023.pdf David Cope: Style Synthesis] |
− | * [https://esf.ccarh.org/ | + | * [https://esf.ccarh.org/Mus254_2024/03b_Emmy-Emily-2023.pdf From Emmy to Emily] |
*[https://docs.google.com/presentation/d/1PydXSxNBRelI8frIUGP9UwD7DoZ5r5QUiLZCEupjC2A/edit#slide=id.g5700a91e56_2_18 Performance similarity in Chopin mazurkas] | *[https://docs.google.com/presentation/d/1PydXSxNBRelI8frIUGP9UwD7DoZ5r5QUiLZCEupjC2A/edit#slide=id.g5700a91e56_2_18 Performance similarity in Chopin mazurkas] | ||
+ | <!-- | ||
* [https://docs.google.com/document/d/1KC8cJIHYe5WW9Tji_Heq5iYpmwCA_Nt59TIC1CKoiyA/edit# Class programming notes] | * [https://docs.google.com/document/d/1KC8cJIHYe5WW9Tji_Heq5iYpmwCA_Nt59TIC1CKoiyA/edit# Class programming notes] | ||
+ | --> | ||
|- | |- | ||
Line 220: | Line 217: | ||
<b> Audio Similarity</b> | <b> Audio Similarity</b> | ||
* [https://esf.ccarh.org/CS275B-Mus254/04b_Audio-similarity.pdf Audio similarity] | * [https://esf.ccarh.org/CS275B-Mus254/04b_Audio-similarity.pdf Audio similarity] | ||
− | *[https://docs.google.com/presentation/d/ | + | * [https://docs.google.com/presentation/d/1ZuPHnMlSMHHitmYtSvtMRLkVDvFkd1ob82sO5pdLrXs/edit#slide=id.p humlib: C++ parser for Humdrum files] |
+ | |||
+ | |||
|- | |- | ||
|} | |} | ||
Line 234: | Line 233: | ||
| 5<div id="week5"></div> || 20 April 2024 || | | 5<div id="week5"></div> || 20 April 2024 || | ||
<b>Audio similarity</b> | <b>Audio similarity</b> | ||
− | * [https://esf.ccarh.org/ | + | * [https://esf.ccarh.org/Mus254_2024/05a_AIMusGen-2024.pdf Music and AI: After Cope] |
* [https://docs.google.com/presentation/d/1D8dGfuqJK0x6eEYoirkExsP5XCgz7hszNo8IJ_kRTgs/edit#slide=id.gcc08b2512a_0_28 Harmony analysis tools] | * [https://docs.google.com/presentation/d/1D8dGfuqJK0x6eEYoirkExsP5XCgz7hszNo8IJ_kRTgs/edit#slide=id.gcc08b2512a_0_28 Harmony analysis tools] | ||
Line 242: | Line 241: | ||
| 5 || 2 May 2024 || | | 5 || 2 May 2024 || | ||
* [https://esf.ccarh.org/CS275B-Mus254/05b_Datasets-music-research23.pdf Datasets for music research] | * [https://esf.ccarh.org/CS275B-Mus254/05b_Datasets-music-research23.pdf Datasets for music research] | ||
+ | * [https://docs.google.com/presentation/d/13MO-frSYbk5eIcC8Vi-o6Gxv3g7n5ktNLuo1e2Xi4bE/edit?usp=sharing Melodic aspects of barbershop quartet music] | ||
− | |||
− | |||
− | |||
− | |||
Line 262: | Line 258: | ||
| 6<div id="week6"></div> || 7 May 2024 || | | 6<div id="week6"></div> || 7 May 2024 || | ||
<b>Compositional schemata</b> | <b>Compositional schemata</b> | ||
− | * [https://esf.ccarh.org/ | + | * [https://esf.ccarh.org/Mus254_2024/06a_CompositionalSchemata-2024.pdf Compositonal Schemata] |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<b> Programming for Humdrum files </b> | <b> Programming for Humdrum files </b> | ||
* [[Humdrum Extras]] — C++ library for processing Humdrum files | * [[Humdrum Extras]] — C++ library for processing Humdrum files | ||
− | * [https:// | + | * [https://docs.google.com/presentation/d/1lSY7ufxkjESOvs4bRnInXWAypBOKPxaGIqHlDi5AcTA/edit?usp=sharing Tasso in Music Project] |
|- | |- | ||
| 6 || 9 May 2024|| | | 6 || 9 May 2024|| | ||
− | * Project reports: | + | * Project reports |
+ | |||
+ | <b>Counterpoint</b> | ||
+ | |||
+ | * [https://esf.ccarh.org/Mus254_2024/06B_Artificial-Counterpoint_2024.pdf Artificial Counterpoint] | ||
<b> Sonority distributions by bass-line scale degrees </b> | <b> Sonority distributions by bass-line scale degrees </b> | ||
* [[Media:CorelliBassline.pdf | Corelli & Rule-of-the-octave data selection]] (PDF slides) | * [[Media:CorelliBassline.pdf | Corelli & Rule-of-the-octave data selection]] (PDF slides) | ||
+ | *[https://docs.google.com/presentation/d/10f3kKhbv1R5S07Dzh6NBNHpm85BWUzhJBEymqRe2qUA/edit#slide=id.gd0281746a5_2_404 Similarity with Normalized and Unnormalized Correlation] | ||
− | |||
|- | |- | ||
|} | |} | ||
Line 294: | Line 287: | ||
! scope="col" width="500px" | Topics | ! scope="col" width="500px" | Topics | ||
|- | |- | ||
− | + | ||
− | |||
− | |||
− | |||
− | |||
| 7 || 16 May 2024 || | | 7 || 16 May 2024 || | ||
<b>Recent developments in MIR</b> | <b>Recent developments in MIR</b> | ||
− | * [https://esf.ccarh.org/ | + | * [https://esf.ccarh.org/CS275B-Mus254/07A_RecentWork_SymbolicMIR_2021.ppt Recent Work in Symbolic MIR] |
− | 07A_RecentWork_SymbolicMIR_2021.ppt | + | |
<b>Recent Work in Harmonic Analysis</b> | <b>Recent Work in Harmonic Analysis</b> | ||
− | * [https://esf.ccarh.org/CS275B-Mus254/07B_HarmonicModels_2021.ppt 07B. Harmonic Models] | + | * [https://esf.ccarh.org/CS275B-Mus254/07B_HarmonicModels_2021.ppt 07B. Harmonic Models] |
+ | <!-- | ||
* [https://docs.google.com/presentation/d/1adjEeWXmypmti8HjjqUXBrgrV2RyDG-UP3T7Gcj_mEA/edit?usp=sharing Keyscapes] | * [https://docs.google.com/presentation/d/1adjEeWXmypmti8HjjqUXBrgrV2RyDG-UP3T7Gcj_mEA/edit?usp=sharing Keyscapes] | ||
+ | --> | ||
+ | * [https://ratioscore.humdrum.org Ratioscores: A text-based system for just intervals], Julie Zhu and Craig Sapp | ||
|- | |- | ||
|} | |} | ||
Line 321: | Line 313: | ||
<b>Recent Research (and Challenges) in MIR</b> | <b>Recent Research (and Challenges) in MIR</b> | ||
* [https://esf.ccarh.org/CS275B-Mus254/08A_SearchEngines-EncodedScores_2023.pdf Score search engines] | * [https://esf.ccarh.org/CS275B-Mus254/08A_SearchEngines-EncodedScores_2023.pdf Score search engines] | ||
− | |||
+ | * [https://docs.google.com/presentation/d/1KFSNGbIsaXhuVpuapms1eUUrhJU7XPDt2lXMvopMYrY/edit#slide=id.p Composite rhythm] | ||
<b> Project development</b> | <b> Project development</b> | ||
Line 328: | Line 320: | ||
| 8 || 23 May 2024 || | | 8 || 23 May 2024 || | ||
<b>Rhythm and Meter</b> | <b>Rhythm and Meter</b> | ||
− | * [https://esf.ccarh.org/ | + | * [https://esf.ccarh.org/Mus254_2024/08A_Rhythmic%20perception_2024.pdf Rhythm, Meter, and their Perception] |
<b> Project development</b> | <b> Project development</b> | ||
Line 345: | Line 337: | ||
| 9a || 28 May, 30 May 2024 || | | 9a || 28 May, 30 May 2024 || | ||
<b> Vocal clones</b> | <b> Vocal clones</b> | ||
− | * [https://esf.ccarh.org/ | + | * [https://esf.ccarh.org/Mus254_2024/09_Vocal-clones-2024.pdf Vocal clones] |
<b> MEI</b> | <b> MEI</b> |
Latest revision as of 01:15, 28 May 2024
Music 254/CS 275b "Computational Music Analysis "
Stanford University (Spring 2024).
This music information retrieval course (previously listed as "Music Query, Analysis, and Style Simulation") builds on the foundation of Music 253/CS 275A (Symbolic Musical Information). Using an open-source analysis platform (such as the Humdrum Toolkit (unix/bash shell), Humdrum Extras (C++), [https://humlib.humdrum.org humlib], VHV. HumdrumR, or Music21 (Python), or their preferred programming language/environment) students plan and design their own applications involving symbolic musical data. See Online Resources after syllabus.
The first four weeks cover basic areas of music analysis and retrieval and introduce basic principles of using the Humdrum Toolkit. Students may be assigned individual reading assignments pertinent to their research topic areas. The remaining six weeks are spent on individual project development, with weekly reports and discussions. Extensive help is available in the lab during hours allotted to class time. Students give verbal and written reports on their research at the end of the quarter. Some projects may be appropriate for continuation in independent-study modules.
For class Zoom link |
---|
Please contact esfield@stanford.edu or craig@ccrma.stanford.edu |
Meeting times: | Tuesdays & Thursdays 1:30–3:00 | ||
Location: | Online | ||
Instructors: | Eleanor Selfridge-Field (esfield@stanford.edu) Craig Sapp(craig@ccrma.stanford.edu) | ||
Office Hours: | after class and by appointment on Zoom/Skype/Google Hangouts | ||
Credits: | 2–4 | ||
Grading: |
25% class participation, 75% project
|
||
Website: | music254.stanford.edu wiki.ccarh.org/wiki/Music 254 Overview of topics presented in Music 254. |
||
Prerequisites: | Completion of Music 253/CS 275b, or demonstrated ability to use notation and sound software and associated requirements. | ||
Textbook: | E. Selfridge-Field, ed., Beyond MIDI: The Handbook of Musical Codes (MIT Press, 1997). Available online by permission of the publisher. |
Contents
Syllabus
Go to week: Harmony 1 | Melody 2 | Rhythm 3 | Harmony 4 | RegEx 5 | Programming 6 | 7 | 8
See also Music 253/CS 275a Syllabus
Week 1
Week | Dates | Topics |
---|---|---|
1 | 2 April, 4 April 2024 |
Lectures
|
Week 2
Week | Dates | Topics |
---|---|---|
2 | 9 April 2024 |
Lectures: Approaches to melodic and other musical-similarity assessment
|
2 | 11 April 2024 |
|
Week 3
Week | Dates | Topics |
---|---|---|
3 | 16 & 18 April 2024 |
|
Week 4
Week | Dates | Topics |
---|---|---|
4 | 23 April 2024 |
Lectures: Practical Realities of Research
|
4 | 25 April 2024 |
Audio Similarity
|
Week 5
Week | Dates | Topics |
---|---|---|
5 | 20 April 2024 |
Audio similarity
|
5 | 2 May 2024 |
|
Week 6
Week | Dates | Topics |
---|---|---|
6 | 7 May 2024 |
Compositional schemata Programming for Humdrum files
|
6 | 9 May 2024 |
Counterpoint Sonority distributions by bass-line scale degrees |
Week 7
Week | Dates | Topics |
---|---|---|
7 | 16 May 2024 |
Recent developments in MIR Recent Work in Harmonic Analysis
|
Week 8
Week | Dates | Topics |
---|---|---|
8 | 21 May 2024 |
Recent Research (and Challenges) in MIR Project development |
8 | 23 May 2024 |
Rhythm and Meter Project development |
Week 9
Week | Dates | Topics |
---|---|---|
9a | 28 May, 30 May 2024 |
Vocal clones MEI
|
Week 10
Week | Dates | Topics |
---|---|---|
10 | 4 June 2024 |
Project presentations in class. |
11 | 7 June 2024 |
Project write-ups for students taking a degree in June 2024. |
12 | 11 June 2024 |
Project write-ups for students continuing at Stanford. |
Online resources for this class
Data/Data entry
- Data/Data entry in Humdrum (PDF slides)
- KernScores: digital library of scores in the **kern format
- [4]: Josquin Research Project: digital library of early Renaissance polyphony
- xml2hum: MusicXML to Humdrum converter
- mid2hum: MIDI to Humdrum converter (works in many cases, but better to convert MIDI first to MusicXML then import).
Humdrum & MIDI
- Humdrum to MIDI (PDF slides)
Harmony II
- Harmony II Key analysis
Regular Expressions (Text-based searching)
Harmony-related Humdrum tools
- hint: Harmonic intervals.
- tntype: twelve-tone chord prototypes.
- key: Krumhansl-Schmuckler key-finding algorithm.
- keycor: generalization of key command.
- sonority: triadic chord descriptions of sonorities.
- prange and cint tools
Rhythm and score manipulation tools
- Rhythm Tools available in Humdrum
- timebase: create uniform duration for each Humdrum file data line.
- beat: label metric beats in Humdrum file.
- gettime: calculate performance time in seconds (according to tempo markings).
- thrux: expand repeats to performance sequence
- minrhy: identify minimum integral rhythmic unit in score
- assemble: merge parts into a single score
- partjoin: automation script to merge parts into a single score (preserves grace notes, uses minrhy and timebase)
- ditto/dittox: resolve null tokens
- hgrep: search for patterns in Humdrum file data.
Performance analysis tool
- Support tools:
- assemble: merge separate spines into single data stream.
- serialize: convert Humdrum data into single spine.
- humcat : concatenate multiple scores together (download data from web).
- ridx: remove various components of Humdrum file structure
- ditto: resolve meaning of null tokens.
- humsplit: split segmented Humdrum file streams into separate files.
- Unix tools:
- command line
- list of command-line programs
- sort: sort lines of data alphabetically or numerically.
- uniq: Remove/count successively repeated lines of text.
- Support tools:
- Pitchmix and Markov analysis of composite sonorities
Melody Lab
- Melody Tools available in Humdrum
- melody tools:
- support tools:
- unix:
- graphics (unix):
General Policies and University Rules
General policies and university rules:
- Delivery times:
- Assignments: by the start of the class for which they are due.
- Project writeup: by 11 p.m. 7 or 11 June 2022 by 11p.
- Honor code: We will act and expect you to act according to the Stanford Honor Code.
- Students with disabilities: Students who may need an academic accommodation based on the impact of a disability must initiate the request with the Student Disability Resource Center (SDRC) located within the Office of Accessible Education (OAE). SDRC staff will evaluate the request with required documentation, recommend reasonable accommodations, and prepare an Accommodation Letter for faculty dated in the current quarter in which the request is being made. Students should contact the SDRC as soon as possible since timely notice is needed to coordinate accommodations. The OAE is located at 563 Salvatierra Walk (phone 723-1066).
- Students in distress: Stanford offers an abundance of resources for students dealing with problems of a personal nature.
- Confidential support: (650) 736-6933
- Crisis hotline: (650) 725-9955
- Title IX questions: (650) 497-4955