๐ŸŽต Mood-Based Song Detector

๐Ÿš€ Inspiration

Music is deeply connected to emotions, and we often associate certain songs with specific moods. We wanted to build an AI-powered chatbot that could analyze the mood of any songโ€”whether from lyrics, audio, or metadataโ€”and provide meaningful insights. Inspired by music streaming services and AI-powered recommendation engines, we set out to create a chatbot that helps users understand the emotional essence of their favorite tracks.

๐Ÿ› ๏ธ How We Built It

  • Backend: Developed using Python (Flask/FastAPI) for API handling.
  • Mood Analysis:
    • Lyrics Processing: Used NLTK and TextBlob for sentiment analysis.
    • Audio Analysis: Utilized Librosa to extract tempo, pitch, and energy levels.
    • Metadata Processing: Fetched song details using the Spotify API / Last.fm API.
  • Chatbot Interface: Built using Dialogflow / Rasa for natural conversation.
  • Deployment: Hosted on Heroku with a simple front-end in React.js.

๐Ÿ’ก What We Learned

  • How to integrate AI with music data (text, audio, and metadata).
  • Improved our knowledge of NLP for sentiment analysis.
  • Learned audio feature extraction using machine learning.
  • Understood the importance of user-friendly chatbot design.

๐Ÿ”ฅ Challenges We Faced

  • Handling Instrumental Songs: Since they have no lyrics, we relied purely on audio features.
  • Varying Song Data: Some songs lacked metadata, requiring fallback strategies.
  • Real-Time Processing: Ensuring quick responses for chatbot interaction.

๐ŸŒŸ Conclusion

The Mood-Based Song Detector is an engaging AI chatbot that blends music and AI in a creative way. By detecting song emotions, it opens new possibilities for personalized music experiences. While there's room for improvement, weโ€™re excited about refining our model and expanding its features in the future!

Built With

Share this project:

Updates