Results files

So, if you were able to run the demo_all_features successfully, it should open Excel or Calc with the result file of this feature extraction. This should look something like this.

|MF| CSV result file

In the first row, all the feature labels appear. In the first column, as defined in the input selection part, the file name of the originating Sonic Visualiser project file is used as as an identifier for the solo. The feature values follow right away. The second column is labeled cdpc_density_1. Let’s have quick look at beginning of the sink section of FDF for CDPC_FEATURES.yml:


    type: sink
    input: HIST.histVec
    index: 0
    label: cdpc_density_1
      type: Real
      length: 1
      description: Relative frequency CDPC = '1'

The column is generated by a sink (a sink is the endpoint of a feature processing chain, the point where it all flows in) with the internal name F0 and the feature label cdpc_density_1. As it can be read of from the doc section of this sink (note the FDF are also YAML-files!), this feature is a Real of length 1, i.e., a single floating point number, and the meaning of it is “Relative frequency of CDPC=1”. CDPC means Chordal Diatonic Pitch Class and is a transformation that maps each pitch according the current chord context to certain values (s. Chordal Diatonic Pitch Class for a full description). In particular the root of the chord is mapped to the value 1, and this feature value is to interpreted as the the relative frequency of root tones used in a solo.

|MF| CSV result file (detail)

The first solo is Miles Davis’ solo on “Airegin”, the value of this feature is 0,14 (German convention, i.e, 0.14 or 14%). Compare this to 7% for Miles Davis’ solo on “Doloros” and the 22% of his “So What”. Interestingly, Miles has one very low and one very high value on this feature, the average for all 7 solos is about 14.4%.

Let’s use Excel to make a quick chart comparing all chordal diatonic pitch class densities for the seven solos of Miles Davis.

|MF| CDPC densities for Miles Davis

Well, one readily sees that there quite some differences between the sevens solos, particularly the modal structure of “So What” (orange) is clearly visible with a focus on the tonic, the dominant, the fourth and the minor seventh, as well as the absence of the leading tone (symbol “L”). Moreover, the heavy use of the tritone (symbol “T”) on the post-bop tune “Dolores” is striking.

All this might serve as starting point for a more in-depth analysis. For example, a statistical test might be appropiate to check if the visually detected differences are statistically significant and not just be random variation, which might be better done with the help of a proper statistical software such as R oder SPSS.

Wide and long format

As already discussed in the general settings page, with v1.4. of the MeloSpySuite we added a new output format, the long format, as a default. The old version, the wide format, is now optional. For purely scalar features, as in the example above, both formats are absolutely identical. They only differ for vector features, where each entry of a vector is now written into a single row (somewhat enlarging the file size). In the old format, vector features were compactly packed into a string of (comma or colon separated) values. Since the old format required specialised input routines, we decided to swith to the long format which enables much easier post-processing of the results files. Only for matrix features (e.g., self-similarity matrices), the old wide format is required since these can not easily be expanded into long format (and there are only a few of them).

Some Last Remarks

There are many more features, all trying to capture some aspect or another of melodies. We strongly encourage the reader to play along with the sample configuration files and also to check out the pre-defined features. You might even try to define your own features. In the meanwhile, the set of features will be growing continuously with further releases, more complex, cognitively-informed features are in the planning. At some time a central feature definition repository will be installed to allow easy and quick exchange between users. So, stay tuned and have feature fun!