Proc. of the 15th International Symposium on CMMR, Online, Nov. 15-19, 2021

The Matrix Profile for Motif Discovery in Audio - An
Example Application in Carnatic Music
Thomas Nuttall1 , Genı́s Plaja1 , Lara Pearson2 , and Xavier Serra121Music Technology Group, Universitat Pompeu Fabra, Barcelona, Spain
Max Planck Institute for Empirical Aesthetics, Frankfurt am Main, Germany
thomas.nuttall@upf.edu, genis.plaja@upf.edu
lara.pearson@ae.mpg.de, xavier.serra@upf.edu

Abstract. We present here a pipeline for the automated discovery of repeatedmotifs in audio. Our approach relies on state-of-the-art source separation, predominant pitch extraction and time series motif detection via the matrix profile.
Owing to the appropriateness of this approach for the task of motif recognitionin the Carnatic musical style of South India, and with access to the recently released Saraga Dataset of Indian Art Music, we provide an example application
on a recording of a performance in the Carnatic rāga, Rītigaul.a, finding 56 distinct patterns of varying lengths that occur at least 3 times in the recording. The
authors include a discussion of the potential musicological significance of thismotif finding approach in relation to the particular tradition and beyond.
Keywords: Musical Pattern Discovery, Motif Discovery, Matrix Profile, Predominant Pitch Extraction, Carnatic Music, Indian Art Music

1

Introduction and Related Work

Short, recurring melodic phrases, often referred to as “motifs”, are important building
blocks in the majority of musical styles across the globe. The automatic identification
and annotation of such motifs is a prominent and rapidly developing topic in music
information retrieval [1–4], playing a significant role in music analysis [5–7], segmentation [8–10] and development of musical theory [11–13]. No consensus exists on how
this is best achieved, and indeed difficulty and differences in evaluation make it hard tocontextualize the efficacy of a method outside of the task to which it is applied. A thorough review and comparison of approaches that handle symbolic music representations
can be found in [1] and [4] however in this paper we focus on the much more common
case of music without notation, extracting repeated motifs from audio.
Difficulty in working with raw audio for this task stems from the incredibly dense
amount of information contained in audio signals, simultaneously clouding that which
we might be interested in and providing a heavy workload for computational methods. A common method of reducing this complexity is to extract from the raw audio
an object or feature set that captures the aspect of the music most relevant to the typeof motif desired, and to subsequently compute some self-similarity metric between all
subsequence pairs to group or connect similar sections [14, 15]. This could take theform of audio features such as Mel-frequency cepstral coefficients (MFCC) [16, 17]109

Proc. of the 15th International Symposium on CMMR, Online, Nov. 15-19, 2021

or chroma [15, 18], rhythmic onsets [19, 20] or monophonic pitch [21, 22]. When performed successfully, it is the latter that provides an abstraction with the most information pertaining to the melody in audio. And with more recent advances in both predominant pitch extraction [23] and time series motif detection [24], we are afforded
the opportunity to revisit the approach of predominant pitch extraction/self-similarity
in computationally feasible time on relatively large time scales.
Certain musical styles are particularly suitable for this type of analysis: for example, those for which automated transcription is not yet possible, and where the symbolic
to sonic gap is such that musically salient units may sometimes be better characterisedby segments of continuous time series pitch data than by transcriptions. This is thecase in Indian Art Music (IAM), including Hindustani and Carnatic styles. Automatedmotif detection in these traditions is a limited but active area of research. In the caseof Carnatic music, svaras (notes) are coarticulated (merged) through gamakas (ornaments) [25]. This characteristic provides particular challenges for processes involving
automated segmentation, and can even mean that different Carnatic musicians’ annotations of the same phrase may vary subtly in places, with different degrees of symbolic
detail being possible. This leaves motif detection through time series pitch data as oneof the most viable and popular approaches to finding meaningful melodic units in thestyle [26–28].
In this paper we demonstrate an approach for the automated discovery of repeatedmotifs in audio: state-of-the-art source separation [31], predominant pitch extraction
using the Melodia algorithm [23] and ultra-fast means of time series motif detection
via the matrix profile [24]. Owing to the appropriateness of this approach for the taskof motif recognition in Carnatic music, and with access to the recently released Saraga
Dataset of IAM [32], we provide an example application, applying these existing methods in this tradition. All code is available on GitHub3 with a Jupyter notebook walkthrough of both the generalized and IAM-specific code.

2

DatasetWe demonstrate our approach on an example recording from the Saraga dataset [32].
Developed within the framework of the CompMusic project4 and openly available forresearch, Saraga comprises two IAM collections, representing the Hindustani and Carnatic traditions. Both collections comprise several hours of music with accompanying
time-aligned expert annotations and relevant musical (e.g. rāga, tāla, form) and editorial (e.g. artist, work, concert) metadata. In this work we focus on a performance takenfrom the Carnatic collection, 168 of which contain separate microphone recordings of:lead vocal, background vocal (if present), violin, mridangam and ghatam (if present).
However, since these tracks are recorded from live performance, the multi-track audios
in the dataset contain considerable background leakage, i.e., are not completely isolated
from the other instruments.
We access and interact with the Saraga dataset through the mirdata library [33]. This
tool provides easy and secure access to the canonical version of the dataset, while load3
4

https://github.com/thomasgnuttall/carnatic-motifs-cmmr-2021/
https://compmusic.upf.edu/

110Proc. of the 15th International Symposium on CMMR, Online, Nov. 15-19, 2021

ing and managing the dataset contents (audio, annotations and metadata) to optimize
our research pipeline.

3

Methodology

The process consists of two stages (1) the extraction from audio of a vocal pitch track,
which consists of a one-dimensional time series representing the main melodic line ofthe performance and (2) the use of self-similarity euclidean distance to identify likely
candidates for repeated motifs in the main melodic line.
3.1

Predominant Pitch Extraction

The quality and consistency of the predominant pitch extraction is paramount. Given
the shortage of training data and algorithms to extract the vocal pitch from Carnatic
music signals, our raw audio recording is subject to three processing steps to arrive at a
one dimensional time series of pitch values representing the main melodic line.
Isolating the Vocal Source Where possible we use the vocal track recording for analysis (still containing leakage from other instruments). If this is not available, the mix
is used. For the isolation of voice from the background instruments (both in mixed andvocal tracks), we use Spleeter, which is a deep learning based source separation librarywhich achieves state-of-the-art results on automatically separating vocals from accompaniment [31].
Extracting the Predominant Pitch Curve We use one of the most popular signal processing based algorithms for predominant pitch estimation from polyphonic music signals, the Melodia algorithm [23], applying an equal-loudness filter to the signal beforehand to encourage a perceptually relevant extraction. In the majority of studies attempting this task in IAM, Melodia has achieved consistent and viable results [26,28–30,34].
We use a time-step of 2.9ms for the extraction.
Post-Processing Two post-processing steps are applied to the pitch track. (1) Gap interpolation, linearly interpolating gaps of 250ms or less [36], typically caused by glottal
sounds and sudden decrease of pitch salience in gamakas and (2) Gaussian smoothingwith a sigma of 7, softening the curve and providing a more natural, less noisy shape.
The final extracted pitch track is a time-series of n pitch values, P = p1 , p2 , ..., pn .
3.2

Repeated Motif Discovery

To search P for regions of similar structure we look for groups of subsequences thathave a low euclidean distance between them. The subsequence length to search for, mis a user-defined parameter of the process.

111Proc. of the 15th International Symposium on CMMR, Online, Nov. 15-19, 2021

Matrix Profile An efficient method of inspecting the euclidean distances between pairwise combinations of subsequences in a time series is the matrix profile [24]. Given atime series, T , and a subsequence length, m, the matrix profile returns for each subsequence in T , the distance to its most similar subsequence in T . The STAMP algorithm
computes the matrix profile in impressive time by exploiting the overlap between subsequences using the fast Fourier transform, requiring only one parameter, subsequencelength, m [24]. We use the non-z-normalized distance, since we are interested in matching subsequences identical in shape and y-location (i.e. pitch).
The matrix profile is therefore defined as M P = ed1 , ed2 , ..., edn−m where edi
is the regular euclidean distance between the subsequence of length m beginning atelement i and its nearest neighbour in P .
Exclusion Mask To ensure that only subsequences of interest are considered, a maskof subsequences in P to exclude is computed by applying a series of exclusion functions
to each subsequence. These exclusion functions are informed by expert understandingof what constitutes a relevant motif in the tradition. Explicitly, the exclusion mask,
EM = em1 , em0 , ..., emn where emi is either 1 or 0, yes or no, does the subsequencesatisfy any of the following:– Too silent - more than 5% percent of the subsequence is 0 (i.e. silence)– Minimum gap - subsequence contains a silence gap of 250ms or more
– Too stable - in more than 63% of cases for a rolling window of 100, the average
deviation of pitch from the average is more than 5 Hz. This step is designed to
exclude subsequences with too many long held notes - although musically relevant,not interesting from a motific perspective. A similar approach is taken in [26]Subsequences that correspond to a mask value of 1 are not considered valid and not
returned.
Identifying Motif Groups The search for groups of repeated motifs begins by looking
for a parent subsequence; those in P that have the lowest euclidean distance to anothersubsequence i.e. minimas in M P . The assumption being that if these subsequences
have one very near neighbour, i.e. they are repeated once, then they are more likely tooccur multiple times; a similar approach is used in [27].
For a candidate parent motif, we use the MASS similarity search algorithm [24] to
calculate the non-normalised euclidean distance to every other subsequence in the pitch
track, returning those that satisfy the requirements set by the parameters; topN, maxOcc,
minOcc and thresh. Algorithms 1 and 2 describe the process and parameters.
Output The returned motif groups are arrays of start indices in P . The number ofgroups and occurrences in each is influenced by the topN , minOcc and maxOcc parameters.

112

Proc. of the 15th International Symposium on CMMR, Online, Nov. 15-19, 2021
Algorithm 1 Identify groups of motifs with low inter-group euclidean distance
1: procedure G ET M OTIF G ROUPS
2:
MP ←matrix profile
array
MatrixAlgorithm
1 Identify
groupsof from
motifswith Profile
low inter-group euclidean distance3:
P ← pitch sequence array from Predominant Pitch Extraction
1:
procedureGET M OTIF G ROUPS
4:
EM ←exclusiongroups
mask arrayfrom Exclusion
Algorithm
1 Identify
of motifs
with low Mask
inter-group euclidean distance2:MP←←patternmatrixlength
profile array from Matrix Profile
5:
m1:
procedure
G
ET
M
OTIF
G
ROUPS
3:
P ← pitchsequencenumber
array from
Predominant
6:
topN← maximumof groups
to returnPitch Extraction
2:
MP ←← exclusion
matrix profile
array
from
MatrixProfile
4:
EM
mask
array
from
Exclusion
7:
maxOcc ← maximum number of occurrences Mask
per group
3:
P←
pitch
sequencearray from Predominant Pitch Extraction
5:m←patternlength8:
minOcc ← minimum number of occurrences per group4:EM ←exclusion maskarrayoffrom
Exclusion
6:
topN←
groupstodistance
returnMask
9:thresh←maximummaximumnumber
length-normalisedof occurrence to parent5:m ← patternlength number of occurrences per group7:
maxOcc←maximum
10:
6:
topN ← ←maximum
numberof groups to return8:
minOccminimum
number11:MP[where(EM== 1)]← ∞ of occurrences per group7:
maxOcc←maximum
number of occurrences
perofgroup
9:thresh←maximumlength-normalised
distance
occurrence to parent
12:
nGroups ← 0
8:
minOcc ← minimum number of occurrences per group
10:
13:
allMotifs ← array()9:
thresh← maximum
length-normalised
distance of occurrence to parent
11:
MP[where(EM
==
1)]
←∞
14:
while nGroups <
topN
10:
12:
nGroups
015:
ix ←←argmin(MP)
 get parent index
11:MP[where(EM== 1)] ← ∞13:
allMotifs← array()16:
if MP[ix]== ∞ entire sequence searched
12:
nGroups
←0
14:
while
nGroups17:
break < topN
13:
allMotifs← array() P )15:ix← get parent index
18:
motifsargmin(M← G ET O CCURRENCES(ix, P, m, maxOcc, thresh, EM)
14:
while
nGroups< topN
16:if
MP[ix]==∞

entiresequence19:
if Length(motifs) < minOcc
 discard, not enough significantsearched
matches15:ix ←breakargmin(M P ) get parent index
17:20:continue16:if
MP[ix]==∞

entiresequence
searched18:
motifsET O CCURRENCES (ix, P, m, maxOcc, thresh, EM)21:
for mtf←in G
motifs motifs is an array of indices
17:
break
19:
if
Length(motifs)< minOcc
 discard,enoughsignificant
matches22:
MP[mtf - m : mtf+ m] ← ∞ clearpart of notarray
to avoid
future discovery
18:
motifs← G ET O CCURRENCES(ix, P, m, maxOcc, thresh, EM)20:continue
23:
nGroups← nGroups + 1
19:
if
Length(motifs)< minOcc
 discard, notenoughissignificant
21:
for
mtf in ←motifs motifs
an array ofmatches
indices24:
allMotifs
append motifs
20:
continue- m : mtf + m] ← ∞22:
MP[mtf

clear
part
of
array
to
avoid
futurediscovery25:
return allMotifs
 array of motif groups, each motif group an array of start indices21:
for
mtf in←motifs motifs is an array of indices23:
nGroupsnGroups + 1
26: end procedure
22:
MP[mtfm : mtf motifs+ m] ← ∞ clear part of array to avoid future discovery
24:
allMotifs← -append
23:
nGroups← nGroups+ 1 of motif groups, each motif group an array of start indices25:
returnallMotifs
 array
24: end procedure
allMotifs ← append motifs
26:
25:
return allMotifs
 array of motif groups, each motif group an array of start indices26: end procedure

Algorithm 2 Identify other occurrences of parent motif in P using MASS
1: procedure G ET O CCURRENCES

2:
ix ←2index
of parent
to query
Algorithm
Identify
othersequenceoccurrencesof parent motif in P using MASS3:
P ← pitch sequence array from Predominant Pitch Extraction
1: procedure G ET O CCURRENCES
2:ix ← index
parent sequence
to query5:
maxOcc← ofmaximum
number ofoccurrences to return
1: procedure
G ETsequence
O CCURRENCES
3:
P
←
pitch
array
from
Predominant
Extraction
6:
thresh ← maximum length-normalised
distancePitchof occurrence
to parent
2:ix ←← pattern
index oflengthparent sequence to query
4:
m
7:
EM
← exclusionmask array from Exclusion Mask
3:
P
←
pitch
sequencearray
fromPredominant
Pitch
Extraction
5:
maxOcc ← maximum number of occurrences to return8:4:m ← patternlength6:
threshdistance of occurrence to parent
9:
parent ←← maximumP[ix : ix + length-normalisedm]5:
maxOcc← maximumof occurrences
to return7:
EM←
exclusionmasknumber
array
Exclusion
Mask
10:
stmass ← MASS(parent,P) from arrayof distances
between parent and all subsequences
6:
thresh ← maximum length-normalised distance of occurrence to parent
8:
11:
stmass[where(EM == 1)] ← ∞7:
EM ← ←
exclusionmask array from Exclusion Mask
9:parent12:
nOccs ← P[ix0 : ix + m]
8:10:
stmassP)  array of distances between parent and all subsequences
13:
allOccs←←MASS(parent,
array()
9:parent← P[ix : ix ==+ m]1)] ← ∞11:stmass[where(EM14:while nOccs < maxOcc
10:stmass← 0MASS(parent, P)  array of distances between parent and all subsequences
12:
nOccs
←
15:
ix ←
argmin(stmass)
11:
stmass[where(EM== 1)] ← ∞13:
allOccs← array()16:
if stmass[ix]/m> thresh length normalised distance
12:
nOccs
←
0
14:
while nOccs< maxOcc
17:
break cease search, no significant patterns remain
13:
allOccsarray()
15:ix←←argmin(stmass)
18:
stmass[ix- m : ix + m] ← ∞
14:
while
nOccs
< maxOcc
16:
ifstmass[ix]/m> thresh length normalised distance19:
allOccs ← append ix
15:ix ←breakargmin(stmass)
17:

cease
search,nosignificant
20:
return allOccs
 array of occurrence start
indicespatterns
for thisremain
parent16:
ifstmass[ix]/m>+thresh length normalised distance18:
stmass[ix
m
:
ix
m]
←
∞
21: end procedure
17:
break
 cease search, no significant patterns remain
19:
allOccs ←append ix
18:stmass[ix20:returnallOccs- m : ix + m] ← ∞ array of occurrence start indices for this parent
19: endallOccs← append ix
21:
procedure
113  array of occurrence start indices for this parent
20:
return allOccs
21: end procedure4:m ←2patternlengthAlgorithm
Identify
other occurrences of parent motif in P using MASS

Proc. of the 15th International Symposium on CMMR, Online, Nov. 15-19, 2021(a) Motif 7 - 2 seconds(b) Motif 9 - 4 seconds(c) Motif 9 - 5 seconds

Fig. 1: Overlaid pitch contour plots of three returned motif groups. The y-axis of eachfigure represents cents above the tonic (S) of 196Hz, divided into the discrete pitch
positions defined in Carnatic music theory for this rāga - S, R2, G2, M1, P, D2, N2 [35].
R2 is two semitones (200 cents) above the tonic, S, and G2 is one semitone (100 cents)
above R2, and so on. The oscillatory melodic movement that can be seen cutting acrossthese theoretical pitch positions is typical of the style, illustrating the challenges oflocating individual ’notes’, either through expert annotations or automatically.

4

Results

We include the results of our process applied to a performance by the Akkarai Sisters ofa composition titled Koti Janmani5 , by the composer Oottukkadu Venkata Kavi, which
5

https://musicbrainz.org/recording/5fa0bcfd-c71e-4d6f-940e0cef6fbc2a32

114

Proc. of the 15th International Symposium on CMMR, Online, Nov. 15-19, 2021

is set in the Carnatic rāga, Rītigaul.a. The process is run for pattern lengths of 2,3,4,
5 and 6 seconds using parameters; topN = 15, minOcc = 3, maxOcc = 20. The
parameter thresh is selected by subjective evaluation of the patterns returned in one
motif group, choosing a value beyond which consistency is lost.
The number of significant motif groups found for 2, 3, 4, 5 and 6 second runs is 15,
15, 11, 11 and 4 respectively. For the code and full results we refer the reader to the
GitHub repository. Fig. 1a, 1b and 1c present the pitch plots associated with the top 5
occurrences of an example pattern in the 2, 4 and 5 seconds groups respectively.

5

Discussion

Due to the current lack of complete (i.e., saturated) ground truth annotations in the
Saraga dataset, it is difficult to evaluate our application systematically. Creation of suchannotations are ongoing as part of this project. In the meantime, however, the nature of
the task and size of the results allow us to reflect on the coherency between patterns andtheir significance within the tradition.
The high degree of similarity between patterns returned within groups is obvious
even to listeners who have no experience of the style, and can be appreciated fromboth the audio and pitch plots. This similarity is unsurprising, we choose a modest
euclidean distance threshold and the process returns motifs that correspond to areas ofpitch that are very similar by this measure. It is however a testament to the quality andconsistency of the pitch extraction process and audio in the Saraga dataset [32], bothresources not yet available in previous works. And more impressive still, also unseen
in other works, is that these results can be achieved relatively quickly on a personalmachine requiring little user input: pattern length, m and euclidean distance threshold,thresh (easily tuned in negligible time). This is due to the efficiency of the STAMP and
MASS algorithms in computing the all pairs self-similarity [24].
Of course, we are more interested in whether the consistent results identified by aprocess like ours have the potential to contribute to ongoing musicological endeavoursof pattern recognition, documentation and music analysis in the Carnatic tradition. Initial evaluation by the third author, who has expertise in the tradition [25], suggests thatthat there is a high degree of musical similarity across the returned patterns in eachgroup. At least the first few matches, and often all of the patterns, in each group would
be considered by experts in the style to consist of the same motifs, or motif fragments.
Some of the returned groups contain whole motifs that are particularly important forthis rāga; Rītigaul.a is one of the Carnatic rāgas that is expressed through a number ofcharacteristic motifs, sometimes referred to as pidi (catch-phrases), sañcāras or prayogas [35].
Two examples of particularly musically significant motifs returned can be seen in
Fig. 1a and Fig. 1b. Fig. 1a shows a frequently recurring phrase in this composition
that includes the motif “npnn” (expressed here in sargam notation, which is used bypractitioners to represent Carnatic svaras). The fact that 11 results are returned for thispattern (only five of these are illustrated for the sake of visual clarity) points to boththe significance of the phrase in this composition, and also the importance of the motif “npnn” in the rāga [35]. Fig. 1b consists of another recurring characteristic phrase

115Proc. of the 15th International Symposium on CMMR, Online, Nov. 15-19, 2021

“ssndmmnns”, which is amongst the annotations of characteristic phrases identified by
Carnatic musicians for the Saraga dataset [32].
The musicological applications of this process as it stands are limited to some extent
by the fact that some of the matches returned are not full motifs, but rather are partial:
for example, including part of one motif and then part of another (e.g., 5-second motif0) or not returning the full motif (e.g., 5-second motif 1).6 Segmentation at musicallymeaningful junctures such as silences or articulation of consonants should improve this.
Another problem is that the process currently often returns multiples of the same motif,
but with different top matches (e.g., 5-second motif groups 9 and 10). Lastly, it is clearthat we need to evaluate the results against comprehensive annotations of all motifs in
the performance,7 to discover whether the process returns a good number of the total
number of occurrences.
One interesting feature is that the process, in addition to returning precise matchesof motifs, also identifies those that are similar but not identical. This could be particularly useful in a style such as Carnatic music which often employs a theme and variation
structure, where phrases are repeated many times but with various elaborations. We cansee an example of this returning of non-identical, but musically closely-related motifs
in Fig. 1c where 4 motifs are returned, with two of them including a variation in the
period between 0.5-1.5 seconds. Any process used to identify motifs in Carnatic music for musicological purposes would ideally show this degree of flexibility, in order toprovide useful and meaningful results. Finally, considering the significance of recurring
motifs in the vast majority of musical styles, it seems likely that this process would bemusically relevant beyond the specific case of Carnatic music.

6

Further Work

Close scrutiny of the results offers potential lines of improvements; variable length
motif detection could help capture full motifs rather than partial motifs, so too could
more tradition-specific exclusion rules such as consonant onset detection, which should
aid in further constraining the search to whole motifs due to the fact that the style ismelismatic, with several svaras often sung to one syllable. An essential next step for thecontinuation of this work is the development of a more empirical evaluation frameworkof comprehensive ground truth motifs created in collaboration with expert performersof the tradition. We also recognize that to facilitate inter-recording discovery, a dynamic
time warping distance measure or tempo normalisation might be necessary.

7

Conclusion

We hope to have demonstrated the effectiveness of predominant pitch extraction andmatrix profile/self-similarity for the task of repeated motif identification and annotation
in audio. We highlight its potential for these tasks in Carnatic music, a tradition where
6
7

Please refer to the Github repository for results not plotted here.
Although some motifs are annotated in the Saraga dataset, these annotations are not complete.
Such annotating is extremely time consuming and must be done by practitioners of the style.

116

Proc. of the 15th International Symposium on CMMR, Online, Nov. 15-19, 2021

transcriptions into symbolic representation can show variance, and so where working
directly with time series pitch data from audio is a more promising approach to motif
identification. Alongside this document we provide the code and full results for theapplication to this tradition as well as to example audio from other musical styles.
Acknowledgments. This research was funded by the MUSICAL AI project (PID2019111403GB-I00) granted by the Ministry of Science and Innovation of the Spanish Government. We also thank Rafael Caro Repetto for his continued guidance and input.

References
1. Ren, I. Y., Volk, A., Swierstra, W., Veltkamp, R. C.: A Computational Evaluation of Musical
Pattern Discovery Algorithms. In: CoRR (2020)
2. 2017:Discovery of Repeated Themes & Sections - MIREX Wiki, https://www.musicir.org/mirex/wiki/2017:\%20Discovery_of_Repeated_Themes_\%26_
Sections
3. Ren, I. Y., Volk, A., Swierstra, W., Veltkamp, R. C.: In Search Of The Consensus Among
Musical Pattern Discovery Algorithms. In: Proceedings of the 18th International Society forMusic Information Retrieval ISMIR, pp. 671–680 (2017)
4. Janssen, B., Bas de Haas, W., Volk, A., van Kranenburg, P.: Finding repeated patterns in music:
State of knowledge, challenges, perspectives. In: Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
8905, pp. 277–297 (2014)
5. Forth, J.: Cognitively-motivated geometric methods of pattern discovery and models of similarity in music. PhD thesis. Goldsmiths, University of London (2012)
6. Volk, A., van Kranenburg, P.: Melodic similarity among folk songs: An annotation study on
similarity based categorization in music. In: Musicae Scientiae 16.3, pp. 317–339 (2012)
7. Ren, I. Y.: Closed Patterns in Folk Music and Other Genres. In: Proceedings of the 6th International Workshop on Folk Music Analysis, FMA, pp. 56–58 (2016)
8. Cambouropoulos, E.: Musical parallelism and melodic segmentation:: A computational approach. In: Music Perception 23.3, pp. 249–268 (2006)
9. Conklin, D., Anagnostopoulou, C.: Segmental pattern discovery in music. In: INFORMS Journal on computing 18.3, pp. 285–293 (2006)
10. Boot, P., Volk, A., Bas de Haas, W.: Evaluating the Role of Repeated Patterns in Folk SongClassification and Compression. In: Journal of New Music Research 45.3, pp. 223–238 (2016)
11. Nuttall, T., Casado, M., C., Ferraro, A., Conklin, D., Caro Repetto, R.: A computational
exploration of melodic patterns in Arab-Andalusian music. In: Journal of Mathematics andMusic, pp. 1-13 (2021)
12. Gjerdingen, R.: Music in the galant style. OUP USA (2007)
13. Rao, P., Ross, J. C., Ganguli, K. K.: Distinguishing raga-specific intonation of phrases withaudio analysis. Ninaad, pp. 26–27(1), pp. 59–68 (2013)
14. Klapuri, A.: Pattern induction and matching in music signals. In: Exploring Music Contents.
7th International Symposium, CMMR, Málaga, Spain. pp. 188–204 (2010)
15. Dannenberg, R., B.: Pattern Discovery Techniques for Music Audio. In: Journal of New
Music Research, 32 (2003)
16. Thomas, M., Murthy, Y., V., S., Koolagudi, S., G.: Detection of largest possible repeatedpatterns in Indian audio songs using spectral features, 2016 IEEE Canadian Conference on
Electrical and Computer Engineering (CCECE), pp. 1-5 (2016)117

Proc. of the 15th International Symposium on CMMR, Online, Nov. 15-19, 2021

17. Lie, L., Wang, M., Zhang, H.: Repeating pattern discovery and structure analysis from acoustic music data. In: Proceedings of the 6th ACM SIGMM International Workshop on Multimedia Information Retrieval, MIR, pp 275-282 (2004)
18. Wang, C., Hsu, J., Dubnov, S.: Music Pattern Discovery with Variable Markov Oracle: A
Unified Approach to Symbolic and Audio Representations. In: Proceedings of the 16th International Society for Music Information Retrieval Conference, pp 176-182 (2015)
19. Krebs, F., Böck, S. Widmer, G.: Rhythmic Pattern Modeling for Beat and Downbeat Tracking
in Musical Audio. In: Proceedings of the 14th International Society for Music Information
Retrieval Conferences (2013)
20. Foote, J., Cooper, M., Nam, U.: Audio Retrieval by Rhythmic Similarity. In: Proceedings ofthe 3rd International Society for Music Information Retrieval Conference (2002)
21. Dannenberg, R., Ning, H.: Discovering Musical Structure in Audio Recordings. In: Lecture
Notes in Artificial Intelligence (Subseries of Lecture Notes in Computer Science) (2003)
22. Gulati, S.: Computational Approaches for Melodic Description in Indian Art Music Corpora.
PhD Thesis, Universitat Pompeu Fabra, Barcelona (2016)23. Salamon, J., & Gomez, E.: Melody extraction from polyphonic music signals using pitch
contour characteristics. In: IEEE Transactions on Audio, Speech and Language Processing,pp. 1759–1770 (2012)
24. Yeh, C., M. et al.: Matrix Profile I: All Pairs Similarity Joins for Time Series: A Unifying
View That Includes Motifs, Discords and Shapelets. In: IEEE 16th International Conferenceon Data Mining (ICDM), pp. 1317-1322 ( 2016)25. Pearson, L.: Coarticulation and gesture: an analysis of melodic movement in South Indianraga performance. In: Music Analysis, 35(3), pp. 280-313 (2016)
26. Gulati, S., Serrà, J., Ishwar, V., Serra, X.: Mining melodic patterns in large audio collectionsof Indian art music. In: International Conference on Signal Image Technology and Internet
Based Systems (SITIS-MIRA), pp. 264–271. Morocco. 9, 87, 124, 148 (2014c)
27. Murthy, H., Bellur, A.: Motif Spotting in an Alapana in Carnatic Music. In: Proceedings ofthe 14th International Society for Music Information Retrieval Conferences (2013)
28. . Rao, P., Ross, J., Ganguli, K., Pandit, V., Ishwar, V., Bellur, A., & Murthy, H.: Classification of Melodic Motifs in Raga Music with Time-series Matching. In: Journal of New Music
Research, 43, 115 - 131 (2014)
29. Ganguli, K., Gulati, S., Serra, X., Rao, P.: Data-Driven Exploration of Melodic Structure in
Hindustani Music. In: Proceedings of the 17th International Society for Music Information
Retrieval Conference (2016)30. S. Gulati, J. Serra, K. K. Ganguli, X. Serra.: Landmark detection in hindustani music
melodies. In: International Computer Music Conference Proceeedings (2014)31. Hennequin, R., Khlif, A., Voituret, F., Moussallam, M.: Spleeter: A fast and state-of-the-art
music source separation tool with pre-trained models (2019)32. Srinivasamurthy, A., & Gulati, S., & Caro Repetto, R., & Serra, X.: Saraga: Open dataset
for research on Indian Art Music. Empirical Musicology Review. https://compmusic.
upf.edu/ [Preprint] (2020)
33. Fuentes, M. et al.: mirdata v.0.3.0. Zenodo. http://doi.org/10.5281/zenodo.
4355859 (2021)
34. Gulati, S., Serrà, J., Serra, X.: Improving Melodic Similarity in Indian Art Music Using
Culture-Specific Melodic Characteristics. In: Proceedings of the 16th International Society
for Music Information Retrieval Conference (2015)35. Bhagyalekshmy, S.: Ragas in Carnatic Music. Trivandrum: CBHH Publications (1990)
36. Gulati, S., Serrà, J., and Ganguli, K., Sertan, Ş., and Serra, X.: Time-delayed melody surfaces
for Raga recognition. In: Proceedings of the 17th International Society for Music Information
Retrieval Conference, pp. 751–757 (2016)

118