diff --git a/run.sh b/run.sh index 2f79507b..26e00389 100755 --- a/run.sh +++ b/run.sh @@ -5,8 +5,8 @@ set -euo pipefail cd "$(dirname "$0")" -HOST="${HOST:-127.0.0.1}" -PORT="${PORT:-8000}" +HOST="${HOST:-0.0.0.0}" +PORT="${PORT:-8080}" RELOAD="${RELOAD:-0}" FOREGROUND="${FOREGROUND:-0}" PID_FILE=".run/uvicorn.pid" diff --git a/static/mobile/app.js b/static/mobile/app.js index 3f22521f..75ddf3ab 100644 --- a/static/mobile/app.js +++ b/static/mobile/app.js @@ -4,8 +4,7 @@ // (GET /api/jobs, /api/jobs/{id}, the Web Audio engine, mixdown export). // Extract is still mock pending the SSE/upload wiring (next step). import { fetchJobs, jobToCard } from "../js/shared/jobs.js"; -import { createAudioEngine } from "../js/audioEngine.js"; - +import { createAudioEngine, estimateDecodedBytes } from "../js/audioEngine.js"; // Per-stem label + color, keyed by the backend stem name. Unknown names fall // back to a rotating palette so non-standard models still render sensibly. const STEM_META = { @@ -46,13 +45,12 @@ function ensureAudioCtx() { return audioCtx; } + const ICON = { chevron: '', dots: '', - clock: '', - prev: '', - next: '', - loop: '', + prev: '', + next: '', play: (sz, fill) => ``, pause: (sz, fill) => ``, download: '', @@ -259,11 +257,26 @@ async function openTrack(card, { autoplay = false } = {}) { return; } - engine = createAudioEngine(laneList.map((l) => ({ name: l.name, url: l.url })), { + // Streaming