Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Screenshots

Here is a preview of the Mini-Shazam application:

Home Page

Home Page

Database View

Database Management

Info & About

Information Page


Database Setup

This application uses Microsoft SQL Server to store audio fingerprints and track metadata.

Requirements

  • Microsoft SQL Server (LocalDB / Express is sufficient)
  • SQL Server Management Studio (SSMS)

Database Creation

To create the required database and tables:

  1. Open SQL Server Management Studio (SSMS).
  2. Connect to your local SQL Server instance.
  3. Open the SQL script located at: /Database Script/DBScript.sql
  4. Execute the script.
  5. The database FingerprintsDb and all required tables will be created automatically.

Audio File Format Requirement

⚠️ Important: When adding or analyzing songs, only WAV format audio files are supported.

  • Supported format: .wav
  • Unsupported formats: .mp3, .flac, .aac, etc.

Using other formats may cause errors or incorrect fingerprint generation. Please ensure that all audio files are converted to WAV format before using them in the application.


⚠️ Version Compatibility

This project is built using specific versions of the SoundFingerprinting libraries to ensure full compatibility with the MS SQL Server implementation.

Required Versions:

  • SoundFingerprinting v5.2.2
  • SoundFingerprinting.Audio.NAudio v5.2.2
  • SoundFingerprinting.SQL v5.2.2

Warning: Please do not update these NuGet packages to newer versions. Updating may cause breaking changes and database connectivity errors due to architectural differences in newer releases.


Connection String

Make sure the connection string in App.config matches your local SQL Server configuration. Note: If your SQL Server instance name is different (e.g., (local), localhost or (localdb)\MSSQLLocalDB), please update the Data Source=.\SQLEXPRESS value to match your specific server name found in SSMS. It should look like this:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
	<connectionStrings>
		<add name="FingerprintConnectionString" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=FingerprintsDb;Integrated Security=True; Connection Timeout=15;" providerName="System.Data.SqlClient"/>
	</connectionStrings>
</configuration>

Credits & Acknowledgments

This project relies on the amazing work provided by the open-source community. Special thanks to:

These libraries are used for the core audio analysis and database operations.

Releases

Packages

Contributors

Languages