JTV: All-In-One karaoke System
Karoake is a music-focused karaoke system that lets you sing a song without the need for a microphone. It is a user-friendly and visually appealing interface that allows you to search for any song on YouTube, generate a karaoke version, and start singing in seconds.
Overview
This is a scalable, comprehensive karaoke system that allows you to search for any song on YouTube, generate a corresponding karaoke version, and start singing in seconds.
Architecture
The system is built with a decoupled microservices approach to handle heavy media processing without lagging the user interface.
Core Components
- Frontend UI (
ui/): A Next.js web application where users can search, select, and play karaoke tracks. - Web Server (
api/): The central hub that serves the frontend and handles backend API requests (user management, song metadata, and job triggering). - Scheduler & Worker (
karaoke/): Powered by Apache Airflow. This component manages the generation job queue, tracks job status (Processing/Finished/Failed), and distributes intensive tasks (like AI vocal separation) to available workers.
๐ Tech Stack
| Component | Technology |
|---|---|
| Frontend | Next.js, Tailwind CSS |
| API | Python / Flask |
| Orchestration | Apache Airflow |
| Containerization | Docker, Docker Compose |
| Processing | FFmpeg, AI Vocal Remover Models |
Conclusion
With JTV, you can easily find and sing karaoke versions of any song on YouTube. Whether youโre a music lover or just looking for a fun way to sing along, this system is the perfect solution for your karaoke needs.