Skip to content

TalalEmara/TuneTrack

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

project

WTS | What The Song

Audio Signal Fingerprinting and Similarity Detection Tool

Status: In Progress

AboutFeaturesHow it worksTech StackDevelopers

About

WTS | What The Song is a Python and PyQt5-based desktop app that generates audio fingerprints to detect and rank song similarity using audio signal features. The tool processes songs by generating spectrograms, extracting features, and applying perceptual hash functions—a method of creating compact representations that preserve perceptual similarity in audio—to identify and compare audio tracks.


Features

  • Spectrogram Generation: Automatically generates spectrograms for the first 30 seconds of each song. Three types of spectrograms are created:

    • Full Song
    • Music Only
    • Vocals Only
  • Feature Extraction: The Extracted key audio features are the peaks of spectrogram which is the regions where the frequency is most dominant.

  • Perceptual Hashing: Uses perceptual hash functions to create compact representations of audio features for efficient similarity detection.

  • Similarity Detection: Compares input audio files against a database of songs and generates a ranked list of similar songs with a similarity index.

  • Weighted Average Combination: Allows users to combine two audio files using a slider to control the weighting percentage. The combined result is treated as a new input for similarity detection.

Similarity Detection Table

  • Interactive GUI: Provides a user-friendly interface with:
    • File selection for input songs
    • Real-time similarity results
    • Slider for weighted audio combination

Tech Stack

The following tools were used in the construction of the project:


How it Works

The application is built with Python and PyQt5. It iterates through a collection of songs to generate spectrograms and extract features, storing the results in a local database. When an input file is provided, the application computes its fingerprint and lists similar songs based on a similarity index.

Pre-requisites

Before running the application, make sure you have Python installed on your system. You will also need pip for installing dependencies.


How to Run the Project Locally

To run the project locally, follow these steps:

Steps:

  1. Navigate to the project folder:

    cd WTS
  2. Install the required dependencies:

    pip install pyqt5 numpy librosa matplotlib pandas
  3. Run the application:

    python main.py

This will start the WTS | What The Song application locally.


Developers

Talal Emara Meram Mahmoud Maya Mohammed Nouran Hani Nariman Ahmed

Learn More

To learn more about audio signal processing and PyQt5, check out the following resources:

About

WTS | What The Song is a desktop app that generates audio fingerprints to detect and rank song similarity using audio signal features.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 100.0%