Skip to content

Latest commit

 

History

History
27 lines (21 loc) · 1.62 KB

File metadata and controls

27 lines (21 loc) · 1.62 KB

• That response is exactly what our stub clients return. The engine uses fake metadata/analysis/feedback output unless you wire in real services, so every session comes back with the same dummy values (duration 210 s, LUFS −11, etc.) regardless of the audio.

To get real results you need to inject your own implementations of the three clients:

  1. AudioMetadataClient – plug this into your ffprobe/metadata service.
  2. AudioAnalysisClient – call whatever DSP or ML job computes loudness, dynamics, spectrum, stereo width.
  3. FeedbackClient – if you want live LLM feedback, give it an OpenAI-backed client (the package includes OpenAIFeedbackClient for this) or your own LLM service.

In @mixtapelabs/api, those clients are assembled in buildEngineDeps. Right now it falls back to createStubDeps() whenever METADATA_SERVICE_URL or ANALYSIS_SERVICE_URL is missing (or when USE_STUB_CLIENTS is true). Set the env vars to point at your real services and set USE_STUB_CLIENTS=false (or just remove it). For example:

METADATA_SERVICE_URL=https://metadata.yourdomain ANALYSIS_SERVICE_URL=https://analysis.yourdomain FEEDBACK_MODE=openai OPENAI_API_KEY=sk-...

After restarting the API, those URLs will be used instead of the stubs and you’ll see actual per-track metrics and feedback. If you want to test the engine directly outside the API, you can instantiate runMixtapelabsSession with your concrete clients rather than the stub ones.

Until you inject real dependencies, the stub output is expected — it’s meant as a deterministic placeholder so you can verify wiring without hitting real services.