A self-hosted backend stack for automated media downloading and Subsonic streaming. For integrating with YAMW
This repository contains the infrastructure configuration to deploy a personal media server. It acts as the backend companion for YAMW, providing seamless media ingestion and instant streaming capabilities.
The pipeline utilizes Docker Compose to orchestrate two main services:
- MeTube: A web GUI for
yt-dlp, configured to automatically download media, embed metadata, and save it to a shared volume. - Navidrome: A modern Music Server and Streamer compatible with the Subsonic API, which instantly indexes the downloaded files.
-
Clone this repository to your server:
git clone https://github.com/Arjuna-Ragil/YAMW-Subsonic-Pipeline.git cd YAMW-Subsonic-Pipeline -
Start the media pipeline:
docker compose up -d
-
Access the services via your server's IP address:
- http://<SERVER_IP>:8082
- http://<SERVER_IP>:4533
-
Add your media:
- Make sure that navidrome is using the correct file path. Adjustment maybe needed depending on your file path.
- Search your favorite song in youtube or youtube music.
- Copy and paste the link to metube. After download is completed, check Navidrome or relaunch YAMW to see the updated music list.
The services are connected via a shared local volume (./music). When a media file is downloaded via MeTube, it is directly piped into the shared directory, allowing Navidrome to detect, index, and serve the new media to the YAMW client immediately.
Disclaimer: This project is for educational purposes and personal archiving of royalty-free, creative-commons, or personally owned media. The developer is not responsible for any misuse of this tool that violates third-party Terms of Service. Thanks!