msaf.algorithms.sf.Segmenter

class msaf.algorithms.sf.Segmenter(file_struct, in_bound_idxs=None, feature='pcp', annot_beats=False, framesync=False, features=None, **config)[source]

This script identifies the boundaries of a given track using the Serrà method:

Serrà, J., Müller, M., Grosche, P., & Arcos, J. L. (2012). Unsupervised Detection of Music Boundaries by Time Series Structure Features. In Proc. of the 26th AAAI Conference on Artificial Intelligence (pp. 1613–1619).Toronto, Canada.

__init__(file_struct, in_bound_idxs=None, feature='pcp', annot_beats=False, framesync=False, features=None, **config)

Inits the Segmenter.

Parameters:

file_struct: `msaf.io.FileStruct`

Object with the file paths.

in_bound_idxs: np.array

Array containing the frame indeces of the previously find boundaries. None for computing them.

feature: str

Identifier of the features (e.g., pcp, mfcc)

annot_beats: boolean

Whether to use annotated beats or estimated ones.

framesync: boolean

Whether to use frame-synchronous or beat-synchronous features.

features: dict

Previously computed features. None for reading them.

config: dict

Configuration for the given algorithm (see module’s __config.py__).

Methods

__init__(file_struct[, in_bound_idxs, ...]) Inits the Segmenter.
processFlat() Main process.
processHierarchical() Main process to obtian the hierarchical segmentation of a given track.