Ejemplo n.º 1
0
        public void ShouldReadWaveFormatCorrectly()
        {
            var format = WaveFormat.FromFile(PathToWav);

            Assert.AreEqual(2, format.Channels);
            Assert.AreEqual(44100, format.SampleRate);
            Assert.AreEqual(16, format.BitsPerSample);
            Assert.AreEqual(10, format.LengthInSeconds, 0.01);
        }
Ejemplo n.º 2
0
        public async Task CheckFingerprintCreationAlgorithmTest()
        {
            var format = WaveFormat.FromFile(PathToWav);
            var list   = await FingerprintCommandBuilder.Instance
                         .BuildFingerprintCommand()
                         .From(PathToWav)
                         .WithFingerprintConfig(configuration =>
            {
                configuration.Stride = new StaticStride(0);
                return(configuration);
            })
                         .UsingServices(audioService)
                         .Hash();

            int  bytesPerSample             = format.Channels * format.BitsPerSample / 8;
            int  numberOfSamples            = (int)format.Length / bytesPerSample;
            int  numberOfDownsampledSamples = (int)(numberOfSamples / ((double)format.SampleRate / config.SampleRate));
            long numberOfFingerprints       = numberOfDownsampledSamples / config.SamplesPerFingerprint;

            Assert.AreEqual(numberOfFingerprints, list.Count);
        }