Skip to content

Yash-Bharvada/Orpheus-Engine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌌 Orpheus Engine

The Galactic Interface for Intelligent Audio Discovery

Orpheus Engine Version Stack License: MIT

Orpheus Engine is a next-generation music analysis platform that reimagines your music library as a living, breathing galaxy. Instead of lists and spreadsheets, we use 3D semantic clustering to visualize relationships between songs, turning data exploration into an interstellar journey.


🪐 The Concept: Planets as Clusters

In traditional systems, a "Genre" is just a text tag. In Orpheus Engine N, specific genres are massive celestial bodies with their own gravity.

  • The Solar System: Represents your entire musical universe.
  • The Sun (Source): The central upload point. New raw audio data originates here, burning with potential until analyzed.
  • Planets (Clusters): Each planet represents a distinct musical cluster (Genre).
    • Orbits: Determine the relationship to the "mainstream" or center.
    • Gravity: Songs with similar features (BPM, Energy, mood) are pulled towards their respective planetary clusters.
  • Asteroids (Transfers): When you upload a song, it doesn't just "appear." It travels as a glowing asteroid from the Sun to its destination planet, visually representing the classification pipeline.

🎨 Visual Logic

Planet / Genre Color Code Representation Avg BPM
Classical 🟡 Gold The Foundations / Core ~50
Jazz 🔵 Blue Complexity & Soul ~70
Rock 🟠 Orange Energy & Drive ~100
Electronic 🟢 Green Pulse & Rhythm ~128

🏗️ System Architecture

Orpheus Engine operates on a decoupled Microservice Architecture, separating the immersive Frontend from the heavy-lifting computational Backend.

graph TD
    User([👤 User])
    subgraph "Frontend (Next.js)"
        UI[🖥️ Music Galaxy UI]
        ThreeJS[🪐 Three.js Canvas]
        Proxy[⚡ API Proxy]
    end
    
    subgraph "Backend (FastAPI)"
        API[🐍 Main API]
        Librosa[🎼 Librosa DSP]
        VectorDB[(🧠 Pinecone Vector DB)]
        MetaDB[(💾 MongoDB Metadata)]
    end

    User -->|Uploads MP3| UI
    UI -->|Visual Feedback| ThreeJS
    UI -->|FormData| Proxy
    Proxy -->|Forward Request| API
    
    API -->|Process Audio| Librosa
    Librosa -->|Extract BPM/Energy| API
    
    API -->|Generate Embedding| VectorDB
    API -->|Store Metadata| MetaDB
    
    API -->|Return Analysis| UI
    UI -->|Animate Asteroid| ThreeJS
Loading

🧠 The "Brain" Flow

How does a raw MP3 file become a data point on a 3D planet?

sequenceDiagram
    participant U as 👤 User
    participant F as ⚛️ Frontend
    participant B as 🐍 Backend
    participant A as 🎼 Analyzer

    U->>F: Uploads "song.mp3"
    F->>F: Check File Size (<10MB)
    F->>B: POST /upload
    Note over B: Streaming Upload
    B->>A: Load Audio (48kHz)
    A->>A: Detect Onsets & Beats
    A->>B: Return BPM (e.g., 128)
    B-->>F: JSON { status: "success", bpm: 128 }
    
    Note over F: Visualization Phase
    F->>F: Determine Genre (BPM Logic)
    F->>F: Spawn Asteroid ☄️
    F->>F: Animate Sun -> Planet
    F->>F: Update Hub Overlay
    F->>U: Show "Match %" vs Top Picks
Loading

🛠️ Technology Stack

Frontend (The Beauty)

Backend (The Brains)

  • Runtime: Python 3.10+
  • API: FastAPI (High performance async).
  • Audio DSP: Librosa (The gold standard for music analysis).
  • Database: Pinecone (Vector Search) & MongoDB (Persistence).

🚀 Getting Started

1. The Backend

Power up the sophisticated analysis engine.

cd orpheus-engine-backend
pip install -r requirements.txt
python main.py

Runs on http://localhost:8000

2. The Frontend

Launch the galactic interface.

cd my-app
npm install
npm run dev

Runs on http://localhost:3000


✨ Key Features

  • Dynamic Similarity Matching: Real-time calculation of "Match %" based on BPM analysis.
  • Visual Classification: Watch your music physically travel to its correct genre cluster.
  • Smart Sorting: Playlists automatically reorder to show the best matches first.
  • Holographic HUD: Glassmorphic overlay for detailed song statistics.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.


Built with ❤️ by the Orpheus Team.

About

Tag-free music categorization engine using feature vectors, clustering, and deep learning for content-based audio recommendation.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors