Skip to content

Releases: psyb0t/docker-audiolla

v1.0.10

Choose a tag to compare

@github-actions github-actions released this 18 Jun 17:30
v1.0.10 — visualize/volume + metadata persist + catalog routes

Three real-world bugs fixed:

  - /v1/audio/visualize/video/volume: ffmpeg showvolume size arg
    style ("s=WxH" → "w=W:h=H").
  - /v1/audio/metadata write mode: now actually persists tagged
    audio to output_path / output_url (additive — old call shape
    still works, flagged persisted=false in the response).
  - /v1/catalog paths: /v1/audio/batch → /v1/batch and
    /v1/audio/diarize → /v1/audio/diarize/{engine}; new consistency
    test guards future drift.

v1.0.9

Choose a tag to compare

@github-actions github-actions released this 17 Jun 21:32
v1.0.9 — remix single-stem-solo

Soloing one stem in /v1/audio/remix (stem_mix={"vocals":1.0,
"drums":0.0,"bass":0.0,"other":0.0}) used to fail with
"mix_audio requires at least 2 inputs" — the post-separation mix
step couldn't handle a single surviving stem.

Fix: new audio.apply_gain_db() helper (single-stream ffmpeg
volume= pass); remix handler short-circuits to it when exactly
one stem survives gain filtering.

483/483 CUDA integration tests passing.

v1.0.8

Choose a tag to compare

@github-actions github-actions released this 17 Jun 21:01
v1.0.8 — UVR phantom-output root cause + remix stems arg

The "model produced no output files" failure that bit every
downstream consumer of /v1/audio/restore/uvr-* turned out to be a
3-layer config bug, not a model issue:

1. audio-separator snapshots output_dir at load_model() time;
   mutating sep.output_dir after load only updates the outer
   wrapper. Inner model_instance still writes to cwd (/app/,
   root-owned) → EACCES → library silently catches → audiolla sees
   "claimed but never written" files and drops them all.
2. output_single_stem filter matched the wrong stem-name namespace
   (model's own primary_stem_name vs engines.json's primary_stem).
3. Near-silent stem dropper masked layers 1 and 2 on synthetic
   fixtures.

Fix: drop output_single_stem= from the Separator() call (audiolla
picks the right stem post-hoc); propagate output_dir to
sep.model_instance.output_dir alongside sep.output_dir before each
separate() call. Plus a heavy-reverb test fixture + strict UVR
output assertions (>= 10 s real WAV, no graceful no-output skip).

Also: remix handler now passes stems to separate() (was failing
with TypeError, masked pre-v1.0.7 by FastAPI's plain-text 500).

482/482 CUDA integration tests passing.

v1.0.7

Choose a tag to compare

@github-actions github-actions released this 17 Jun 17:14
v1.0.7 — field aliases + master mode auto-detect + preset/pipeline JS…

v1.0.6

Choose a tag to compare

@github-actions github-actions released this 17 Jun 12:36
v1.0.6 — fix ffprobe error masking + trim end_sec optional + tests

Bug fixes:
  - /v1/audio/info now surfaces real ffprobe stderr instead of
    "unknown error" (was using -v quiet which muted everything).
  - /v1/audio/trim end_sec optional; omitting trims to source end.

Test harness: fixed container names — audiolla-pytest (CPU) /
audiolla-pytest-cuda (CUDA) — pre-killed by exact name at session
start. Same image reused, no rebuilds between tests.

New regression test for the MP3 info path. Trim test updated for
the new optional-end_sec contract.

Smoke: 395/395 CPU integration tests.

v1.0.5

Choose a tag to compare

@github-actions github-actions released this 09 Jun 07:39
v1.0.5 — pytest test infrastructure + engine logging coverage + bugfixes

No API changes. All additive or latent-bug fix.

Replaces 71 bash e2e_*.sh scripts with 83 pytest files (479 test
functions) under tests/integration/. Session-scoped container,
engine-union from markers, atexit + signal cleanup. Full CUDA
suite: 470 passed, 9 skipped, 0 failed.

25/25 engines now log inference start/done with size + duration_ms
and warn/exception at every raise. 7 framework modules got
module-level loggers + key state-transition + error-path logs.

Bug fixes:
  - UVR _STEM_RE regex (newer audio-separator filename format)
  - UVR phantom-output filter (model claims files it never wrote)
  - DeepFilterNet needs git on runtime PATH
  - Dockerfile.cuda was missing COPY presets
  - pyannote test accepts num_speakers == 0 on synthetic input

.gitignore + .dockerignore: extra ML weight + archive + HF/torch
cache patterns. Build context now 2.02 MB.

v1.0.4

Choose a tag to compare

@github-actions github-actions released this 08 Jun 23:17
v1.0.4 — fix enhance/deepfilter + JSON logging overhaul

Bug fix: /v1/audio/enhance/deepfilter no longer 400s before first
load. The predicate was checking a private attribute that only
exists post-lazy-load.

Logging: single centralised init path through audiolla.logging,
line-delimited JSON, LOG_LEVEL env var, file:line:func + service /
version / pid / host on every record, X-Request-Id correlation
honoured both ways (inbound + outbound), per-request summary log
level-scaled to status code (DEBUG /healthz, INFO 2xx/3xx, WARN 4xx,
ERROR 5xx) with method / path / status / duration_ms / client_ip /
user_agent / request+response byte sizes.

v1.0.3

Choose a tag to compare

@github-actions github-actions released this 08 Jun 22:22
v1.0.3 — entrypoint mirrors HUGGINGFACE_TOKEN ↔ HF_TOKEN

huggingface_hub reads HF_TOKEN as canonical; audiolla's older docs use
HUGGINGFACE_TOKEN. Setting one name now unlocks the other so gated
downloads (stable-audio-open, musicgen-small, musicgen-medium,
pyannote) work regardless of which env var the operator picked.

No code path changes — environment normalization only.

v1.0.2

Choose a tag to compare

@github-actions github-actions released this 08 Jun 22:11
v1.0.2 — HF_HUB_OFFLINE default flipped to 0

Image lazy-downloads HF weights on first call instead of refusing all
egress by default. Out-of-the-box usability fix for the five text-to-
audio engines, ast-tag, clap-embed, pyannote — all of which were
returning HTTP 500 on the first request with the previous offline
default.

Strict-offline deployments: prefetch with `huggingface-cli download
<model>` against a mounted `/data/hf` volume, then start the container
with `-e HF_HUB_OFFLINE=1`.

No API / engine behavior changes — only the env-var default moves.

v1.0.1

Choose a tag to compare

@github-actions github-actions released this 08 Jun 20:43
v1.0.1 — CI fix: free disk space on ubuntu-latest before CUDA build

No code or image changes; functionally identical to v1.0.0. CUDA build
in CI was OOMing the runner disk during torch 2.5.1+cu126 unpack
(~5 GB on top of the rest of the heavy-deps layer; ubuntu-latest only
has ~14 GB free).

Reusable workflow bumped to psyb0t/reusable-github-workflows v0.6.0
(SHA 59d43bac747f6bf66eeddb103a845b6dbf367c6b) with `free_disk_space:
true` enabled. Frees ~25-30 GB by stripping Android SDK, .NET, Haskell,
CodeQL, large apt packages, and preloaded docker images. Tool cache +
swap left intact.