Skip to content

Instantly share code, notes, and snippets.

@jazzido
Created April 12, 2019 19:55
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jazzido/c9a06f48a180ea1f889714d2fe1221f2 to your computer and use it in GitHub Desktop.
Save jazzido/c9a06f48a180ea1f889714d2fe1221f2 to your computer and use it in GitHub Desktop.
Playing with music21 (web.mit.edu/music21)
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Data-driven stylistic analysis of Charlie Parker solos"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"A quick exploration of the [`music21`](http://web.mit.edu/music21) toolkit for computational musicology using Charlie Parker's solos, as transcribed in [this MusicXML version](http://homepages.loria.fr/evincent/omnibook/) of the venerable [Omnibook](https://en.wikipedia.org/wiki/Charlie_Parker_Omnibook).\n",
"\n",
"No big findings here, just fooling around with the awesome `music21` library. If you want to read some serious computational and statistical analysis of jazz solos, head over to the [Jazzomat Project](https://jazzomat.hfm-weimar.de/)\n",
"\n",
"This code is perpetrated by [Manuel Aristarán](https://jazzido.com)"
]
},
{
"cell_type": "code",
"execution_count": 209,
"metadata": {},
"outputs": [],
"source": [
"import glob\n",
"import music21\n",
"import pandas as pd\n",
"import functools\n",
"import altair as alt"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Distribution of intervals from the chord root by chord quality\n",
"\n",
"What intervals from the chord root does Bird usually play, depending on the chord's quality?"
]
},
{
"cell_type": "code",
"execution_count": 210,
"metadata": {},
"outputs": [],
"source": [
"@functools.lru_cache(maxsize=4096)\n",
"def isChordTone(chord, tone_name):\n",
" \"\"\" True if note \"\"\"\n",
" return tone_name in [p.name for p in chord.pitches]\n",
"\n",
"notes = []\n",
"for fname in glob.glob('Omnibook/MusicXml/*.xml'):\n",
" piece = music21.converter.parse(fname)\n",
" for m in [m for m in piece.parts[0] if type(m) == music21.stream.Measure]:\n",
" currentChord = None\n",
" currentChordOffset = None\n",
" for thing in m.notesAndRests:\n",
" if type(thing) == music21.harmony.ChordSymbol:\n",
" currentChord = thing\n",
" currentChordOffset = thing.offset\n",
" elif type(thing) == music21.note.Note:\n",
" if currentChord is None:\n",
" continue\n",
" interval = music21.interval.Interval(thing.pitch, currentChord.root())\n",
" notes.append({\n",
" 'score': fname,\n",
" 'measure': m.measureNumber,\n",
" 'offset': thing.offset,\n",
" 'chord_kind': currentChord.chordKind,\n",
" 'figure': currentChord.figure,\n",
" 'note': thing.name,\n",
" 'interval': interval.simpleName,\n",
" 'interval_semitones': interval.chromatic.mod12,\n",
" 'is_chord_tone': isChordTone(currentChord, thing.name)\n",
" })\n",
"\n",
"notes = pd.DataFrame(notes)\n"
]
},
{
"cell_type": "code",
"execution_count": 211,
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.vegalite.v2+json": {
"$schema": "https://vega.github.io/schema/vega-lite/v2.6.0.json",
"config": {
"background": "#fafafa",
"view": {
"height": 300,
"width": 400
}
},
"data": {
"name": "data-6b5866bb7ba68cac016ae23c796c6323"
},
"datasets": {
"data-6b5866bb7ba68cac016ae23c796c6323": [
{
"chord_kind": "dominant",
"figure": 216,
"interval": "A1",
"interval_semitones": 216,
"is_chord_tone": 216,
"measure": 216,
"note": 216,
"offset": 216,
"score": 216
},
{
"chord_kind": "dominant",
"figure": 98,
"interval": "A2",
"interval_semitones": 98,
"is_chord_tone": 98,
"measure": 98,
"note": 98,
"offset": 98,
"score": 98
},
{
"chord_kind": "dominant",
"figure": 11,
"interval": "A3",
"interval_semitones": 11,
"is_chord_tone": 11,
"measure": 11,
"note": 11,
"offset": 11,
"score": 11
},
{
"chord_kind": "dominant",
"figure": 274,
"interval": "A4",
"interval_semitones": 274,
"is_chord_tone": 274,
"measure": 274,
"note": 274,
"offset": 274,
"score": 274
},
{
"chord_kind": "dominant",
"figure": 103,
"interval": "A5",
"interval_semitones": 103,
"is_chord_tone": 103,
"measure": 103,
"note": 103,
"offset": 103,
"score": 103
},
{
"chord_kind": "dominant",
"figure": 38,
"interval": "A6",
"interval_semitones": 38,
"is_chord_tone": 38,
"measure": 38,
"note": 38,
"offset": 38,
"score": 38
},
{
"chord_kind": "dominant",
"figure": 8,
"interval": "A7",
"interval_semitones": 8,
"is_chord_tone": 8,
"measure": 8,
"note": 8,
"offset": 8,
"score": 8
},
{
"chord_kind": "dominant",
"figure": 1187,
"interval": "M2",
"interval_semitones": 1187,
"is_chord_tone": 1187,
"measure": 1187,
"note": 1187,
"offset": 1187,
"score": 1187
},
{
"chord_kind": "dominant",
"figure": 1393,
"interval": "M3",
"interval_semitones": 1393,
"is_chord_tone": 1393,
"measure": 1393,
"note": 1393,
"offset": 1393,
"score": 1393
},
{
"chord_kind": "dominant",
"figure": 1119,
"interval": "M6",
"interval_semitones": 1119,
"is_chord_tone": 1119,
"measure": 1119,
"note": 1119,
"offset": 1119,
"score": 1119
},
{
"chord_kind": "dominant",
"figure": 477,
"interval": "M7",
"interval_semitones": 477,
"is_chord_tone": 477,
"measure": 477,
"note": 477,
"offset": 477,
"score": 477
},
{
"chord_kind": "dominant",
"figure": 1868,
"interval": "P1",
"interval_semitones": 1868,
"is_chord_tone": 1868,
"measure": 1868,
"note": 1868,
"offset": 1868,
"score": 1868
},
{
"chord_kind": "dominant",
"figure": 1180,
"interval": "P4",
"interval_semitones": 1180,
"is_chord_tone": 1180,
"measure": 1180,
"note": 1180,
"offset": 1180,
"score": 1180
},
{
"chord_kind": "dominant",
"figure": 2062,
"interval": "P5",
"interval_semitones": 2062,
"is_chord_tone": 2062,
"measure": 2062,
"note": 2062,
"offset": 2062,
"score": 2062
},
{
"chord_kind": "dominant",
"figure": 48,
"interval": "d1",
"interval_semitones": 48,
"is_chord_tone": 48,
"measure": 48,
"note": 48,
"offset": 48,
"score": 48
},
{
"chord_kind": "dominant",
"figure": 2,
"interval": "d3",
"interval_semitones": 2,
"is_chord_tone": 2,
"measure": 2,
"note": 2,
"offset": 2,
"score": 2
},
{
"chord_kind": "dominant",
"figure": 49,
"interval": "d4",
"interval_semitones": 49,
"is_chord_tone": 49,
"measure": 49,
"note": 49,
"offset": 49,
"score": 49
},
{
"chord_kind": "dominant",
"figure": 55,
"interval": "d5",
"interval_semitones": 55,
"is_chord_tone": 55,
"measure": 55,
"note": 55,
"offset": 55,
"score": 55
},
{
"chord_kind": "dominant",
"figure": 1,
"interval": "d6",
"interval_semitones": 1,
"is_chord_tone": 1,
"measure": 1,
"note": 1,
"offset": 1,
"score": 1
},
{
"chord_kind": "dominant",
"figure": 6,
"interval": "d7",
"interval_semitones": 6,
"is_chord_tone": 6,
"measure": 6,
"note": 6,
"offset": 6,
"score": 6
},
{
"chord_kind": "dominant",
"figure": 436,
"interval": "m2",
"interval_semitones": 436,
"is_chord_tone": 436,
"measure": 436,
"note": 436,
"offset": 436,
"score": 436
},
{
"chord_kind": "dominant",
"figure": 380,
"interval": "m3",
"interval_semitones": 380,
"is_chord_tone": 380,
"measure": 380,
"note": 380,
"offset": 380,
"score": 380
},
{
"chord_kind": "dominant",
"figure": 357,
"interval": "m6",
"interval_semitones": 357,
"is_chord_tone": 357,
"measure": 357,
"note": 357,
"offset": 357,
"score": 357
},
{
"chord_kind": "dominant",
"figure": 1356,
"interval": "m7",
"interval_semitones": 1356,
"is_chord_tone": 1356,
"measure": 1356,
"note": 1356,
"offset": 1356,
"score": 1356
},
{
"chord_kind": "major",
"figure": 46,
"interval": "A1",
"interval_semitones": 46,
"is_chord_tone": 46,
"measure": 46,
"note": 46,
"offset": 46,
"score": 46
},
{
"chord_kind": "major",
"figure": 66,
"interval": "A2",
"interval_semitones": 66,
"is_chord_tone": 66,
"measure": 66,
"note": 66,
"offset": 66,
"score": 66
},
{
"chord_kind": "major",
"figure": 10,
"interval": "A3",
"interval_semitones": 10,
"is_chord_tone": 10,
"measure": 10,
"note": 10,
"offset": 10,
"score": 10
},
{
"chord_kind": "major",
"figure": 67,
"interval": "A4",
"interval_semitones": 67,
"is_chord_tone": 67,
"measure": 67,
"note": 67,
"offset": 67,
"score": 67
},
{
"chord_kind": "major",
"figure": 46,
"interval": "A5",
"interval_semitones": 46,
"is_chord_tone": 46,
"measure": 46,
"note": 46,
"offset": 46,
"score": 46
},
{
"chord_kind": "major",
"figure": 11,
"interval": "A6",
"interval_semitones": 11,
"is_chord_tone": 11,
"measure": 11,
"note": 11,
"offset": 11,
"score": 11
},
{
"chord_kind": "major",
"figure": 9,
"interval": "A7",
"interval_semitones": 9,
"is_chord_tone": 9,
"measure": 9,
"note": 9,
"offset": 9,
"score": 9
},
{
"chord_kind": "major",
"figure": 489,
"interval": "M2",
"interval_semitones": 489,
"is_chord_tone": 489,
"measure": 489,
"note": 489,
"offset": 489,
"score": 489
},
{
"chord_kind": "major",
"figure": 593,
"interval": "M3",
"interval_semitones": 593,
"is_chord_tone": 593,
"measure": 593,
"note": 593,
"offset": 593,
"score": 593
},
{
"chord_kind": "major",
"figure": 346,
"interval": "M6",
"interval_semitones": 346,
"is_chord_tone": 346,
"measure": 346,
"note": 346,
"offset": 346,
"score": 346
},
{
"chord_kind": "major",
"figure": 444,
"interval": "M7",
"interval_semitones": 444,
"is_chord_tone": 444,
"measure": 444,
"note": 444,
"offset": 444,
"score": 444
},
{
"chord_kind": "major",
"figure": 689,
"interval": "P1",
"interval_semitones": 689,
"is_chord_tone": 689,
"measure": 689,
"note": 689,
"offset": 689,
"score": 689
},
{
"chord_kind": "major",
"figure": 284,
"interval": "P4",
"interval_semitones": 284,
"is_chord_tone": 284,
"measure": 284,
"note": 284,
"offset": 284,
"score": 284
},
{
"chord_kind": "major",
"figure": 722,
"interval": "P5",
"interval_semitones": 722,
"is_chord_tone": 722,
"measure": 722,
"note": 722,
"offset": 722,
"score": 722
},
{
"chord_kind": "major",
"figure": 5,
"interval": "d1",
"interval_semitones": 5,
"is_chord_tone": 5,
"measure": 5,
"note": 5,
"offset": 5,
"score": 5
},
{
"chord_kind": "major",
"figure": 7,
"interval": "d5",
"interval_semitones": 7,
"is_chord_tone": 7,
"measure": 7,
"note": 7,
"offset": 7,
"score": 7
},
{
"chord_kind": "major",
"figure": 12,
"interval": "m2",
"interval_semitones": 12,
"is_chord_tone": 12,
"measure": 12,
"note": 12,
"offset": 12,
"score": 12
},
{
"chord_kind": "major",
"figure": 61,
"interval": "m3",
"interval_semitones": 61,
"is_chord_tone": 61,
"measure": 61,
"note": 61,
"offset": 61,
"score": 61
},
{
"chord_kind": "major",
"figure": 42,
"interval": "m6",
"interval_semitones": 42,
"is_chord_tone": 42,
"measure": 42,
"note": 42,
"offset": 42,
"score": 42
},
{
"chord_kind": "major",
"figure": 62,
"interval": "m7",
"interval_semitones": 62,
"is_chord_tone": 62,
"measure": 62,
"note": 62,
"offset": 62,
"score": 62
},
{
"chord_kind": "minor",
"figure": 34,
"interval": "A1",
"interval_semitones": 34,
"is_chord_tone": 34,
"measure": 34,
"note": 34,
"offset": 34,
"score": 34
},
{
"chord_kind": "minor",
"figure": 44,
"interval": "A2",
"interval_semitones": 44,
"is_chord_tone": 44,
"measure": 44,
"note": 44,
"offset": 44,
"score": 44
},
{
"chord_kind": "minor",
"figure": 5,
"interval": "A3",
"interval_semitones": 5,
"is_chord_tone": 5,
"measure": 5,
"note": 5,
"offset": 5,
"score": 5
},
{
"chord_kind": "minor",
"figure": 80,
"interval": "A4",
"interval_semitones": 80,
"is_chord_tone": 80,
"measure": 80,
"note": 80,
"offset": 80,
"score": 80
},
{
"chord_kind": "minor",
"figure": 35,
"interval": "A5",
"interval_semitones": 35,
"is_chord_tone": 35,
"measure": 35,
"note": 35,
"offset": 35,
"score": 35
},
{
"chord_kind": "minor",
"figure": 17,
"interval": "A6",
"interval_semitones": 17,
"is_chord_tone": 17,
"measure": 17,
"note": 17,
"offset": 17,
"score": 17
},
{
"chord_kind": "minor",
"figure": 7,
"interval": "A7",
"interval_semitones": 7,
"is_chord_tone": 7,
"measure": 7,
"note": 7,
"offset": 7,
"score": 7
},
{
"chord_kind": "minor",
"figure": 2,
"interval": "AA1",
"interval_semitones": 2,
"is_chord_tone": 2,
"measure": 2,
"note": 2,
"offset": 2,
"score": 2
},
{
"chord_kind": "minor",
"figure": 4,
"interval": "AA4",
"interval_semitones": 4,
"is_chord_tone": 4,
"measure": 4,
"note": 4,
"offset": 4,
"score": 4
},
{
"chord_kind": "minor",
"figure": 600,
"interval": "M2",
"interval_semitones": 600,
"is_chord_tone": 600,
"measure": 600,
"note": 600,
"offset": 600,
"score": 600
},
{
"chord_kind": "minor",
"figure": 99,
"interval": "M3",
"interval_semitones": 99,
"is_chord_tone": 99,
"measure": 99,
"note": 99,
"offset": 99,
"score": 99
},
{
"chord_kind": "minor",
"figure": 342,
"interval": "M6",
"interval_semitones": 342,
"is_chord_tone": 342,
"measure": 342,
"note": 342,
"offset": 342,
"score": 342
},
{
"chord_kind": "minor",
"figure": 153,
"interval": "M7",
"interval_semitones": 153,
"is_chord_tone": 153,
"measure": 153,
"note": 153,
"offset": 153,
"score": 153
},
{
"chord_kind": "minor",
"figure": 892,
"interval": "P1",
"interval_semitones": 892,
"is_chord_tone": 892,
"measure": 892,
"note": 892,
"offset": 892,
"score": 892
},
{
"chord_kind": "minor",
"figure": 502,
"interval": "P4",
"interval_semitones": 502,
"is_chord_tone": 502,
"measure": 502,
"note": 502,
"offset": 502,
"score": 502
},
{
"chord_kind": "minor",
"figure": 885,
"interval": "P5",
"interval_semitones": 885,
"is_chord_tone": 885,
"measure": 885,
"note": 885,
"offset": 885,
"score": 885
},
{
"chord_kind": "minor",
"figure": 27,
"interval": "d1",
"interval_semitones": 27,
"is_chord_tone": 27,
"measure": 27,
"note": 27,
"offset": 27,
"score": 27
},
{
"chord_kind": "minor",
"figure": 8,
"interval": "d4",
"interval_semitones": 8,
"is_chord_tone": 8,
"measure": 8,
"note": 8,
"offset": 8,
"score": 8
},
{
"chord_kind": "minor",
"figure": 79,
"interval": "d5",
"interval_semitones": 79,
"is_chord_tone": 79,
"measure": 79,
"note": 79,
"offset": 79,
"score": 79
},
{
"chord_kind": "minor",
"figure": 5,
"interval": "d7",
"interval_semitones": 5,
"is_chord_tone": 5,
"measure": 5,
"note": 5,
"offset": 5,
"score": 5
},
{
"chord_kind": "minor",
"figure": 136,
"interval": "m2",
"interval_semitones": 136,
"is_chord_tone": 136,
"measure": 136,
"note": 136,
"offset": 136,
"score": 136
},
{
"chord_kind": "minor",
"figure": 852,
"interval": "m3",
"interval_semitones": 852,
"is_chord_tone": 852,
"measure": 852,
"note": 852,
"offset": 852,
"score": 852
},
{
"chord_kind": "minor",
"figure": 115,
"interval": "m6",
"interval_semitones": 115,
"is_chord_tone": 115,
"measure": 115,
"note": 115,
"offset": 115,
"score": 115
},
{
"chord_kind": "minor",
"figure": 684,
"interval": "m7",
"interval_semitones": 684,
"is_chord_tone": 684,
"measure": 684,
"note": 684,
"offset": 684,
"score": 684
}
]
},
"encoding": {
"row": {
"field": "chord_kind",
"type": "nominal"
},
"x": {
"field": "interval",
"type": "nominal"
},
"y": {
"field": "figure",
"type": "quantitative"
}
},
"mark": "bar",
"title": "Frequency of notes as intervals from the root by chord quality"
},
"image/png": "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CQAAbKr6O5b7+fTTTys/7n1QZmdn9bOf/eyRY/39/ZXffqzW7n3Q6+U3OglLAABg04GFZTwe149+9KMDXfzuppjd0FtZWVE0Gq1ZXL355ps6ffq0enp6Kk6fPn0oO96fBWEJAABsquuwNMbo7bfffuSK4ptvvmn9RbWFsAQAADbVZVhub29rcXFRW1tbunXrlmZmZjQxMaEbN27o1q1bunXrlv7yl79UPU9XVxcfhQMAAPyV6jIsb9++rY6ODt25c0eu6+q5557boxYB+Nprr+mll15Se3u72tvbK2HJR+EAAAB7HVhYzs/P66233jr0E7p79662t7f17rvv/lW//fh1zM3Nqampqebj1gphCQAAbHqmsCwWixoaGtKvfvWrxzp//rzy+fyBL75YLKq/v1/t7e06deqU2tvba/pRdSqVqny0vri4qOHhYTmOo0QiYf2NexzCEgAA2PTMP5Duuu6+P45+7NixQ/keYjwe1ze/+U393//7f/W3f/u3unLliiKRSE1+azIIAj3//PPPdEtHWwhLAABg0zN/FL68vKx79+6ppaVFx48f182bN5VOp/XjH/9YTU1NhxJfc3Nzeuutt1QqlXTy5EkZY/TKK6/o5s2bNRn/448/1tDQUMUHH3zw2FsuHhWEJQAAsKmq71gWCgX5vq9z585VjiWTSTmOoz/84Q8HvvjdzTuJRELHjx/XlStX1NzcrM8++6xmL87uR+EP+/zzzxUEgfU376sISwAAYFPVYRmNRuW6rt599119/PHH+i//5b/IcRzdvn37UE7gP/7jP3T37l1NT0/L8zy99dZbKpfLVY8bBEFlJ/jjtLS0qFAoWH8DH0ZYAgAAm6reFX7t2rU90fXTn/700E7g9u3bGh0d1ZUrV3TlyhX99re/1fb2dk3G/va3vy3XdTU4OKgPP/xQvu/LdV298cYbh3ZV9usgLAEAgE1VhWWxWNTk5KTi8bhu3Lih69ev6969e4e2+Dt37shxHP3d3/1dzW+5uHs19vz585Vjuz83tLW1pY6OjkceOwoISwAAYFNNvmP5P//n/7Sy+E8//VSvv/76gYydy+Xk+75eeOEFzc/P69atW/r7v/97NTU1aXZ2Vp7n6ZNPPrH+Bj6MsAQAADZV/VH497///crH3x988IE++OADvf/++4fyO5Zra2uKRCL6+OOP9ac//UnXr1/X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",
"text/plain": [
"<VegaLite 2 object>\n",
"\n",
"If you see this message, it means the renderer has not been properly enabled\n",
"for the frontend that you are using. For more information, see\n",
"https://altair-viz.github.io/user_guide/troubleshooting.html\n"
]
},
"execution_count": 211,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data = notes.groupby(['chord_kind', 'interval']).count().reset_index()\n",
"alt.Chart(data[data.chord_kind.isin(['dominant', 'major', 'minor'])]).mark_bar().encode(\n",
" x='interval:N',\n",
" y='figure:Q',\n",
" row='chord_kind'\n",
").configure(background='#fafafa') \\\n",
".properties(title=\"Frequency of notes as intervals from the root by chord quality\")"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.3"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment