Class PitchClassHistogramStrategy

java.lang.Object
be.panako.strategy.Strategy
be.panako.strategy.pch.PitchClassHistogramStrategy

public class PitchClassHistogramStrategy
extends Strategy
Implementation of the strategy described in (2012) A Robust Audio Fingerprinter Based on Pitch Class Histograms: Applications for Ethnic Music Archives, by Joren Six and Olmo Cornelis in Proceedings of the International Workshop of Folk Music Analysis (FMA 2012)
Author:
joren
  • Constructor Summary

    Constructors
    Constructor Description
    PitchClassHistogramStrategy()  
  • Method Summary

    Modifier and Type Method Description
    void clear()
    Clear al information from the key value store
    boolean hasResource​(java.lang.String resource)
    Are there fingerprints for this resource already stored in the database?
    boolean isStorageAvailable()  
    void monitor​(java.lang.String query, int maxNumberOfReqults, java.util.Set<java.lang.Integer> avoid, QueryResultHandler handler)  
    java.lang.String name()  
    void printStorageStatistics()
    Print some storage statistics.
    void query​(java.lang.String query, int maxNumberOfResults, java.util.Set<java.lang.Integer> avoid, QueryResultHandler handler)  
    java.lang.String resolve​(java.lang.String filename)
    Returns an internal identifier, probably an integer, for a given filename.
    double store​(java.lang.String resource, java.lang.String description)
    Store an audio file in the data store.

    Methods inherited from class be.panako.strategy.Strategy

    classToName, getInstance, print

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • PitchClassHistogramStrategy

      public PitchClassHistogramStrategy()
  • Method Details

    • store

      public double store​(java.lang.String resource, java.lang.String description)
      Description copied from class: Strategy
      Store an audio file in the data store. The name of the resource is used to extract a numerical identifier. The description is arbitrary.
      Specified by:
      store in class Strategy
      Parameters:
      resource - The audio resource.
      description - An arbitrary description.
      Returns:
      The number of seconds of processed audio.
    • query

      public void query​(java.lang.String query, int maxNumberOfResults, java.util.Set<java.lang.Integer> avoid, QueryResultHandler handler)
      Specified by:
      query in class Strategy
    • monitor

      public void monitor​(java.lang.String query, int maxNumberOfReqults, java.util.Set<java.lang.Integer> avoid, QueryResultHandler handler)
      Specified by:
      monitor in class Strategy
    • hasResource

      public boolean hasResource​(java.lang.String resource)
      Description copied from class: Strategy
      Are there fingerprints for this resource already stored in the database?
      Specified by:
      hasResource in class Strategy
      Parameters:
      resource - The name of the resource.
      Returns:
      True if the resource is already treated. False otherwise.
    • isStorageAvailable

      public boolean isStorageAvailable()
      Specified by:
      isStorageAvailable in class Strategy
      Returns:
      True if the storage is available, false otherwise.
    • printStorageStatistics

      public void printStorageStatistics()
      Description copied from class: Strategy
      Print some storage statistics.
      Specified by:
      printStorageStatistics in class Strategy
    • resolve

      public java.lang.String resolve​(java.lang.String filename)
      Description copied from class: Strategy
      Returns an internal identifier, probably an integer, for a given filename.
      Specified by:
      resolve in class Strategy
      Parameters:
      filename - the name of the file to resolve.
      Returns:
      An internal identifier, probably an integer, for a given filename.
    • name

      public java.lang.String name()
    • clear

      public void clear()
      Description copied from class: Strategy
      Clear al information from the key value store
      Specified by:
      clear in class Strategy