Work-in-progress features. Share links, listen to outputs, evaluate quality before we promote anything to production.
For Suno-generated songs. Pulls 12 individual instrument stems (WAV) + the uncompressed master WAV directly from Suno. Runs on suno.epongo.com.
LIVE — API endpoint deployed on suno.epongo.com. Costs 13 Suno credits per song.
* MP3 (older pull, before WAV-per-stem was default)
Mixes all stems except the lead vocals into a single track. WAV lossless + MP3 for streaming. Keeps backing vocals as harmonies by default.
LIVE — API endpoint on suno.epongo.com. Runs ~30s once stems exist. No Suno credits burned.
Auto-generates a lead sheet with lyrics + chords + key + tempo. Runs on any audio (uploaded WAV/MP3 or Suno-generated).
QUALITY NOT ACCEPTABLE — chord jitter is unusable, lyrics ~50% word accuracy. Rebuild in progress: run Whisper-large on isolated vocals stem, run neural chord recognizer on isolated bass+other stems.
This v1 output is here so we can compare against v2 quality once the rebuild is done. Don't use for real work.
Works on any uploaded audio — MP3, WAV, M4A. Facebook's open-source source-separation model. Outputs 4 stems: vocals, drums, bass, other. This is what we need to make stems / karaoke / lead sheets on Sadie's actual recording (and any other uploaded track).
INSTALLING NOW — CPU-only PyTorch + demucs on Vultr. First test coming after install completes. Expected runtime per 3-min song: 15-30 min.
The suno.epongo.com API accepts triggered extractions. Auth via shared secret.
curl -X POST https://suno.epongo.com/extract \
-H "X-Extract-Token: $SUNO_TOOLS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"clip_id":"<suno-clip-uuid>","r2_prefix":"song/<track-uuid>","trigger":true,"wav_stems":true}'
# Poll:
curl -H "X-Extract-Token: $SUNO_TOOLS_TOKEN" \
https://suno.epongo.com/jobs/<job_id>
# Karaoke on existing stems:
curl -X POST https://suno.epongo.com/karaoke \
-H "X-Extract-Token: $SUNO_TOOLS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"r2_prefix":"song/<track-uuid>","stems_format":"wav"}'