Skip to content

swahathi/sangeetham

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎤 Sangeetham – AI Vocal Analysis & Song Recommendation

Live App: voice-at-sangeetham.streamlit.app


📝 Overview

Sangeetham (Sanskrit for music/singing) is an AI-powered tool designed to bridge the gap between vocal capability and song selection. By analyzing the unique characteristics of a user's singing voice, the app provides data-driven song recommendations tailored to their specific vocal range and stability.

✨ Key Features

  • Precision Pitch Tracking: Utilizes the librosa.pyin (Probabilistic YIN) algorithm for robust fundamental frequency estimation.
  • Vocal Range Profiling: Automatically calculates the user's effective range using 5th and 95th percentile filtering to ensure outliers (background noise or vocal cracks) don't skew results.
  • Stability Analysis: Measures pitch variance to assess vocal steadiness during sustained notes.
  • Smart Match Engine: Ranks songs from a curated database based on how well their required tessitura overlaps with the user's comfortable singing zone.
  • Interactive UI: Built with Streamlit for a seamless, browser-based experience.

🛠 Tech Stack

  • Language: Python 3.9+
  • Audio Processing: Librosa, NumPy, SciPy
  • Web Framework: Streamlit
  • Data Handling: Pandas

⚙️ How It Works

  1. Input: The user uploads a recording of their singing (scales or a song snippet).
  2. Extraction: The system cleans the audio and extracts the pitch ($f_0$) contour.
  3. Analysis: The app identifies the lowest and highest stable notes to define the "Vocal Footprint."
  4. Recommendation: The engine compares this footprint against the frequency requirements of various songs to find the highest compatibility score.

🚀 Local Installation

To run Sangeetham on your local machine, follow these steps:

# 1. Clone the repository
git clone [https://github.com/swahathi/sangeetham.git](https://github.com/swahathi/sangeetham.git)
cd sangeetham

# 2. Install dependencies
pip install -r requirements.txt  

# 3. Launch the Streamlit app
streamlit run app/app.py

  

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors