private void SongInfoRetrieve(ResultFingerprintRecognition resultRecognitions) { if (RetrieveMetadataFromMuziekweb(resultRecognitions.FingerTracks[0].FingerTrackReference)) { detectTask.RetrieveMetaDataMuziekweb(resultRecognitions.FingerTracks[0].FingerTrackReference, resultRecognitions, REST_ResultMetaDataMuziekweb); } else { // No metadata just show what we got REST_ResultMetaDataMuziekweb(this, false, null, resultRecognitions); } }
private void PrintAnswer(Resultset result) { if (result != null) { Console.WriteLine("======================================================================"); Console.WriteLine("Algorithm: " + result.Algorithm.ToString()); Console.Write("Stats: "); Console.Write("Total=" + (result.QueryTime.TotalMilliseconds / 1000).ToString("#0.000") + "s"); Console.Write(" | FingerQry=" + (result.FingerQueryTime.TotalMilliseconds / 1000).ToString("#0.000") + "s"); Console.Write(" | FingerLD=" + (result.FingerLoadTime.TotalMilliseconds / 1000).ToString("#0.000") + "s"); Console.Write(" | Match=" + (result.MatchTime.TotalMilliseconds / 1000).ToString("#0.000") + "s"); Console.WriteLine(); Console.WriteLine(); foreach (ResultEntry item in result.ResultEntries) { Song song = new Song(); if (RetrieveMetadataFromMuziekweb(item.Reference.ToString())) { signalEvent.Reset(); WSRecognize detectTask = new WSRecognize(); string reference = item.Reference.ToString(); if (!retrieveMetadataFromMuziekweb && MapCRC32ToMuziekwebReference(reference).Length > 0) { reference = MapCRC32ToMuziekwebReference(reference); } detectTask.RetrieveMetaDataMuziekweb(reference, song, REST_ResultMetaDataMuziekweb); // wait until metadata is retrieved signalEvent.WaitOne(); } Console.WriteLine("SearchPlan : " + item.SearchStrategy.ToString()); Console.WriteLine("Reference : " + item.Reference.ToString()); // AcoustID is for complete track so position in track is pointless if (item.TimeIndex >= 0) { Console.WriteLine("Position : " + (item.Time.TotalMilliseconds / 1000).ToString("#0.000") + " sec"); } else { Console.WriteLine("Position : Match on complete track"); } if (result.Algorithm == FingerprintAlgorithm.AcoustIDFingerprint) { Console.WriteLine(string.Format("Match perc. : {0}%", item.Similarity)); } else { Console.WriteLine("BER : " + item.Similarity.ToString()); } if (!string.IsNullOrEmpty(song.AlbumTrackID)) { Console.WriteLine(string.Format("Album : {0} / {1}", song.Album.AlbumTitle, PerformerList(song.Album.Performers))); Console.WriteLine(string.Format("Song : {0} / {1}", song.SongTitle, PerformerList(song.Performers))); } Console.WriteLine(); } //foreach Console.WriteLine("======================================================================"); } }