C# audio-fingerprintting in small wavs
<p>I need to find in a similar wav file in a small database of around 40 files with lengths from 5 and 7 seconds.</p>

<p>These wav files are the records that the telephone service provider gives your when you make a call.</p>

<p>Example:</p>

<p><a href="https://clyp.it/lnz1aybd" rel="nofollow">https://clyp.it/lnz1aybd</a></p>

<p>My needle is 1 or 2 seconds long.</p>

<p>all the wavs are <strong>pcm encoded 16 bits at 8000hz mono</strong>.</p>

<p>I tried using <strong>Aurio.AudioFingerPrint</strong> without success</p>

<p><a href="https://github.com/protyposis/Aurio" rel="nofollow">https://github.com/protyposis/Aurio</a></p>

<pre><code>// Setup the sources
var audioTrack1 = new AudioTrack(new FileInfo("Full5secs.wav"));
var audioTrack2 = new AudioTrack(new FileInfo("Part2Secs.wav"));

// Setup the fingerprint generator
var defaultProfile = FingerprintGenerator.GetProfiles()[0];
var generator = new FingerprintGenerator(defaultProfile);

// Create a fingerprint store
var store = new FingerprintStore(defaultProfile);

// Setup the generator event listener (a subfingerprint is a hash with its temporal index)
generator.SubFingerprintsGenerated += (sender, e) =&gt; {
    var progress = (double)e.Index / e.Indices;
    var hashes = e.SubFingerprints.Select(sfp =&gt; sfp.Hash);
    store.Add(e);
};

// Generate fingerprints for both tracks
generator.Generate(audioTrack1);
generator.Generate(audioTrack2);

// Check if tracks match
if (store.FindAllMatches().Count &gt; 0) {
   Console.WriteLine("overlap detected!");
}
</code></pre>

<p><strong>What's wrong with my approach?</strong><br/>
<strong>Anyone knows the configuration I'm missing for small wavs?</strong></p>