The Pattern Search interface allows for finding instances of melodic patterns within the solos encoded in the Weimar Jazz Database, in the Charlie Parker Omnibook as well as within the melodies contained in the Essen Folksong Database. By selecting the database in the select box on the top right the user is provided with two slightly different search interfaces. In the simplest case, one enters a search pattern and chooses a corresponding transformation in the primary search box. Search results can be constrained by using an optional secondary search or by selecting one or more metadata filters. Corresponding score and audio (only Weimar Jazz Database) snippets allow for visual and aural inspection of the found pattern instances.
The search pattern has to be specified as a list of space or comma separated elements together with a corresponding transformation. Exceptions are the transformations Chordal Diatonic Pitch Class, Extended Chordal Diatonic Pitch Class and Tonal Diatonic Pitch Class with the search pattern specified as a single string without separators. See Search pattern syntax and Suitable transformations for a detailed explanation. To aide with search pattern specification the pattern is validated instantly if it satisfies simple pattern syntax. Moving the mouse over the icon right to the input field hints are given
To generate audio and score files, the corresponding checkboxes have to be activated. Although they are turned on by default, there can be cases where the result set is very large and it is therefore helpful to disable both of them as generating audio and score files can take a considerable amount of time. With both checkboxes disabled the search results should be displayed after only a couple of seconds allowing for a first examination of the results. To start a new search by ignoring cached results, audio and score files included, you have to tick the 'Re-generate cached results' checkbox.
To get a more comprehensive picture, the generated scores and audio excerpts can be enhanced by up to 10 tone events before and after a pattern instance in both score and audio files.
By activating the 'Within single phrase' checkbox the search result can be restricted to pattern instances within a phrase only (no phrase borders are allowed between the first and last tone event). In fact, this is just a short-cut to fill in the correct secondary search pattern based on phrase boundary markers, see following paragraph.
The secondary search essentially acts as an optional filter for the results obtained from a primary search. By activating the secondary search checkbox you can specify a secondary search pattern and a secondary transformation. Additionally, an operation for how exactly to filter the primary result set has to be selected, see Secondary search specification for a detailed description of possible operations.
Depending on the database being chosen a metadata filter box can be activated in order to restrict the solos being searched for. In the case of the Weimar Jazz Database select boxes for performers, titles, instruments, styles, tempo classes, tonality types and recording years are provided. All boxes allow for the selection of multiple entries (except those for recording years). Previously selected entries can be deselected by ticking the cross symbol on a selected entry. To filter solos by recording year, you can either use a range of years or an exact year. To remove the restriction on recording years, click on the 'Reset'-Button. In order to remove all metadata restrictions and define a new set of metadata filters, simply click on the 'Reset metadata'-Button. Selectbox items can also be searched for by activating a select box and starting to type some text.
Selecting an item in a certain box has an impact on the selectable items of all other select boxes and can potentially delete already selected entries in other boxes. By holding down the keyboard's control key and selecting multiple items at once, the restriction on the selectable items of other select boxes can be weakened. More formally, the set resulting from a given selection is calculated disjunctively ('or') for all selected entries of a certain metadata type and conjunctively ('and') between metadata types.
Due to limited computing power, generation of audio and score files is currently prevented when more than 150 pattern instances are found. In this case, a warning is shown prompting the
user to search for a more specific pattern and/or to confine the search space (the set of solos) by using some combination of the various metadata filters.
Please note that in some cases the user is advised to untick the 'Within single phrase' checkbox and/or reduce the number of enclosing tone events in order to obtain all instances of the search pattern.
Search results are calculated in three stages:
The Search history page provides an overview of all distinct search requests you have submitted including the values of the metadata filters. In each row also a comment for the specific search can be added which can be useful in reconstruction of the search's context. By clicking on the 'Restore search' link, the result of the search will be redisplayed using cached data. Single searches can be deleted by clicking the 'Delete' link. To delete the complete search history, use the 'Delete all' button at the bottom of the search history table.
Frieler, K., Höger, F., Pfleiderer, M., & Dixon, S. (2018). Two web applications for exploring melodic patterns in jazz solos. To be published in: Proceedings of the 19th International Society for Music Information Retrieval Conference (ISMIR), 2018. (PDF)
Baker, D. J., Rosado, A., Shanahan, E., & Shanahan, D. (2016). The Role of Idiomaticism and Affordances in Bebop Improvisation. Proceedings of the 14th International Conference on Music Perception and Cognition, San Francisco, pp. 127-130.